llPDFLib,TPDFDocument

2016开始开源。

procedure TForm2.Button1Click(Sender: TObject);
var
lPdf : TPdfDocument;
lPage : TPdfPage;
begin
lPdf := TPdfDocument.Create;
try
lPdf.Info.Author := 'Tester';
lPdf.Info.CreationDate := Now;
lPdf.Info.Creator := 'Tester';
lPdf.DefaultPaperSize := psA4;
lPage := lPDF.AddPage;
lPDF.Canvas.SetFont('宋体',10.0,[]);
lPDF.Canvas.SetLeading(lPDF.Canvas.Page.FontSize);
lPDF.Canvas.SetLineWidth(0.1); lPdf.Canvas.BeginText;
lPdf.Canvas.TextOut( , , 'This is some text.');
lpdf.Canvas.TextOut(,,'你好');
lpdf.Canvas.TextOutW(,,'你好');
lPdf.Canvas.EndText;
lPdf.SaveToFile('test.pdf');
finally
lPdf.Free;
end; end;

llPDFlib3.6

llPDFlib5.2

V6.4.0.1389

http://www.sybrex.com/products/development/

http://www.sybrex.com/products/development/llpdflib/download.php

合作伙伴有trichview

SynPdf

1.18

http://blog.synopse.info/category/Open-Source-Projects/Synopse-PDF-engine

HotPDF,VisPDFLib

10.1,收费的

http://www.loslab.com/HotPDF.html

10/19/2015
llPDFLib Releases Its Version 6.0
Delphi library for creating PDF documents on the fly was released.
Whats new:
JBIG2 Compression for b/w images
Digital signatures
Some changes in engine

 

PDFCreator

http://www.pdfforge.org/

eDocEngine(gtPDFEngine)

gtPDFEngine,eDocEngine VCL 5.0.0.81,2016.8.3

PDFtoolkit VCL  打印和阅读

TgtPDFDocument, TgtPDFOutlineViewer, TgtPDFPrinter, TgtPDFSearchPanel, TgtPDFViewer

http://www.gnostice.com/eDocEngine%5FVCL.asp

http://www.gnostice.com/nl_article.asp?id=83&t=How_To_Convert_Image_Files_To_PDF_Using_eDocEngine_VCL

http://www.gnostice.com/nl_article.asp?id=213&t=How_To_Convert_XML_To_PDF_Using_Delphi

https://www.gnostice.com/nl_article.asp?id=244&t=Export_From_TRichView_and_ScaleRichView_To_PDF_And_Other_Formats

https://www.gnostice.com/nl_article.asp?id=126&t=Exporting_TRichView_(_RVF)_Files_to_PDF_Using_eDocEngine_VCL

印度Gnostice制造

procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute() then begin
Edit1.Text := OpenDialog1.FileName;
SRichViewEdit1.Clear;
SRichViewEdit1.RichViewEdit.LoadRTF(Edit1.Text);
SRichViewEdit1.Format;
end;
end; procedure TForm1.Button2Click(Sender: TObject);
begin
gtPDFEngine1.FileName := OpenDialog1.FileName + '.pdf';
gtScaleRichViewInterface1.RenderDocument(SRichViewEdit1);
end;

html转pdf

HtmlViewer1,gtHtmlViewInterface1,gtPDFEngine1;3个控件

  HtmlViewer1.LoadFromFile('test.html');
gtHtmlViewInterface1.Engine := gtPDFEngine1;
gtPDFEngine1.Preferences.ShowSetupDialog := False;
gtPDFEngine1.Preferences.OpenAfterCreate := False;
gtPDFEngine1.FileName := 'test.pdf';
gtHtmlViewInterface1.RenderDocument(HtmlViewer1);

ThtmlViewer

http://www.pbear.com/

Delphi PDF的更多相关文章

  1. Delphi Pdf的使用方法

    此方法安装了llPDFLib.v3.6 控件.对pdf左侧.右侧正文进行了操作. procedure TForm1.Button1Click(Sender: TObject); var node,nd ...

  2. Delphi提取PDF文本

    生成PDF的控件很多,但解析的不是太多,pdf Toolkit可以,但测试的第一个复杂的pdf就报告错误,并且汉字乱码,可能使用的版本或使用方法不对. 想起之前使用java调用的Apache名下的pd ...

  3. delphi使用Foxit Quick PDF Library读写pdf文本和图片

    简介: Debenu Quick PDF Library(PDF编程开发工具)提供一套全方位的 PDF API 函数,帮助您快速简便地处理 PDF 文件.从文档属性的基本操作到创建您自己的 PDF 查 ...

  4. delphi模拟按键精灵自动控制PDF页面自动扩边的源代码

    需要的环境:Adobe Acrobat 7.0 Professional  和   Quite Imposing Plus 1.5d Acrobat plugin  (qi160.exe) 程序界面: ...

  5. Coding in Delphi(前4章翻译版本) (PDF)

      第四章翻译完成有一段时间了 写在前面的话       本次翻译纯属爱好,目的是提高对英文文档的理解和阅读能力,本文档大部分采用直 译的方式,而且保留了原来的英文.目的只是辅助大家理解,不喜勿喷.翻 ...

  6. Delphi系列书籍pdf 118本 网友吐血整理

    第一步:进入官网首页http://bulo.hujiang.com/home/ 第二部:home/替换u/779988/diary/627936/ 来自沪江部落

  7. Delphi使用AcroPDF ActiveX显示PDF文件

    效果展示 调用方式 放入窗体即可使用,不想安装太多组件,可使用纯代码方式调用 interface ..... var AcroPDF: TAcroPDF; .... implementation .. ...

  8. ArcEngine地图窗口指定区域导出指定DPI多格式---delphi/C#实现

    delphi/C#实现,其他语言稍微改下就行了.AE的编码各个语言都差不多,这里也没用到某一语言的特性. 函数特点: 1.可以精确导出指定范围的图形要素 2.支持多格式.TIF, .EMF,.GIF, ...

  9. delphi 10 seattle 安卓服务开发(三)

    delphi 10 里面的安卓服务有四种,上面的一篇文章里面的图有介绍. 今天做一个remote service 的例子.(里面一部分代码是抄别人的,如果不太清楚,自行恶补) remote servi ...

随机推荐

  1. 006——VUE中的内容与属性中使用javascript表达式的方法

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. window.location.href无法跳转

    onclick事件存在事件冒泡 所以要阻止它冒泡 解决:在onclick事件里添加return false阻止冒泡:onclick="window.location.href='XXXXX. ...

  3. 假如数组接收到一个null,那么应该怎么循环输出。百度结果,都需要提前判断。否则出现空指针异常。。我还是想在数组中实现保存和输出null。

    假如数组接收到一个null,那么应该怎么循环输出.因为foreach与obj.length都会报错.null不是对象,foreach中不能赋值? sp页面forEach一个存放对象的集合,怎么判断其中 ...

  4. http keep - alive 与 长连接

    http1.0 2.0 1.1区别 你可以把 WebSocket 看成是 HTTP 协议为了支持长连接所打的一个大补丁,它和 HTTP 有一些共性,是为了解决 HTTP 本身无法解决的某些问题而做出的 ...

  5. android源码下载以及编译自己的ROM

    android源码下载以及编译自己的ROM 最近发现kernel.org被墙了,为什么这种网站也能被墙了? 要想下载源码的话,只能绕过去了.下面是我从网上搜索到的一些下载方法: =========== ...

  6. FFmpeg再学习 -- 视音频基础知识

    最近一直在看雷霄骅 FFmpeg 系列视频,然后将自己的理解总结一下. 参看:<基于 FFmpeg + SDL 的视频播放器的制作>课程的视频 一.视频播放器原理 自己理解: 比如一个 M ...

  7. 使用BloomFilter布隆过滤器解决缓存击穿、垃圾邮件识别、集合判重

    Bloom Filter是一个占用空间很小.效率很高的随机数据结构,它由一个bit数组和一组Hash算法构成.可用于判断一个元素是否在一个集合中,查询效率很高(1-N,最优能逼近于1). 在很多场景下 ...

  8. js 扩展实例

    //扩展实例1 字符串中首字符转大写 var test=' this is '; String.prototype.mytrim=function(){ var re=/^\s+(.*?)\s+$/; ...

  9. HTTP 方法:GET与 POST

    什么是 HTTP? 超文本传输协议(HTTP)的设计目的是保证客户机与服务器之间的通信. HTTP 的工作方式是客户机与服务器之间的请求-应答协议. web 浏览器可能是客户端,而计算机上的网络应用程 ...

  10. 模仿Masonry链式编程思想

    使用masonry 也将近一年多了,它的链式编程方式一直是很吸引我的. 之前一直没空好好思考它是如何实现,直到现在正好自己有空,因此写下链式编程的基本思路. 链式基本的编程形式如 a.property ...