delphi llPDFLib 常用功能

llPDFLib 常用功能

属性和方法

TPDFDocument.Create

constructor Create(AOwner: TComponent); override;

创建并初始化 TPDFDocument 的一个实例。

参数

AOwner 建立组件与其所有者的关系。

TPDFDocument.BeginDoc

procedure BeginDoc;

开始一个新的PDF文档。在创建的文档中添加第一页。

TPDFDocument.EndDoc

procedure EndDoc;

结束PDF文档的创建工作。将所有未保存的数据重置到输出流。

TPDFDocument.NewPage

procedure NewPage;

在PDF文档中添加新页面,并将 Canvas 传输到此页面。

TPDFDocument.FileName

property FileName: string;

创建的PDF文档的名称。

如果指定了OutputStream,该值将被忽略。

TPDFDocument.AutoLaunch

property AutoLaunch: Boolean;

指定在默认PDF查看器中创建后是否打开生成的PDF文件。

TPDFDocument.Canvas

property Canvas: TCanvas;

标准TCanvas,可以作为标准HDC操作。

TPDFDocument.CurrentPage

property CurrentPage: TPDFPage;

文档中的当前页,可以用绘图操作。

TPDFDocument.DocumentInfo

property DocumentInfo: TPDFDocInfo;

属性定义有关PDF文档的信息。

TPDFDocInfo.Author

property Author: string;

指定生成文档中的作者。

TPDFDocInfo.Creator

property Creator: string;

指定生成文档中的生成器。

TPDFDocInfo.Keywords

property Keywords: string;

指定生成文档中的关键字。

TPDFDocInfo.Subject

property Subject: string;

指定生成文档的主题。

TPDFDocInfo.Title

property Title: string;

指定生成文档的标题。

TPDFPage.Size

property Size: TPDFPageSize;

页面大小。

TPDFCanvas.Height

property Height: Integer;

Canvas 的高度。

TPDFCanvas.Width

property Width: Integer;

Canvas 的宽度。

TPDFPageSize

确定页面的大小。

unit

llPDFTypes

TPDFPageSize = (
  psLetter,
  psA4,
  psA3,
  psLegal,
  psB5,
  psC5,
  ps8x11,
  psB4,
  psA5,
  psFolio,
  psExecutive,
  psEnvB4,
  psEnvB5,
  psEnvC6,
  psEnvDL,
  psEnvMonarch,
  psEnv9,
  psEnv10,
  psEnv11
);
  • psLetter 216 x 279 mm/8.5 x 11 英寸
  • psA4 210 x 297 mm/8.3 x 11.7 英寸
  • psA3 297 x 420 mm/11.7 x 16.5 英寸
  • psLegal 216 x 356 mm/8.5 x 14 英寸
  • psB5 176 x 250 mm/6.9 x 9.8 英寸
  • psC5 162 x 229 mm/6.4 x 9.0 英寸
  • ps8x11 8 x 11 英寸
  • psB4 250 x 353 mm/9.8 x 13.9 英寸
  • psA5 148 x 210 mm/5.8 x 8.3 英寸
  • psFolio 210 x 330 mm/8.27 x 13 英寸
  • psExecutive 184 x 267 mm/7.25 x 10.5 英寸
  • psEnvB4 250 x 353 mm/9.8 x 13.9 英寸
  • psEnvB5 176 x 250 mm/6.9 x 9.8 英寸
  • psEnvC6 114 x 162 mm/4.5 x 6.4 英寸
  • psEnvDL 110 x 220 mm/4.4 x 8.8 英寸
  • psEnvMonarch 190.5 x 98.4 mm/7.5 x 3.875 英寸
  • psEnv9 225.4 x 98.4 mm/8.875 x 3.875 英寸
  • psEnv10 241.3 x 104.8 mm/9.5 x 4.125 英寸
  • psEnv11 263.5 x 114.3 mm/10.375 x 4.5 英寸

例子

创建文档

uses llPDFDocument;

procedure TForm1.Button1Click(Sender: TObject);
var
  Pdf: TPDFDocument;
begin
  Pdf := TPDFDocument.Create(nil);
  try
    //设置生成PDF文件后打开该文件
    Pdf.AutoLaunch := True;
    //设置生成的文件名
    Pdf.FileName := 'C:\Users\Administrator\Desktop\ceshi.pdf';
    //开始创建新PDF文档,并添加第一页
    Pdf.BeginDoc;
    //结束PDF文档的创建
    Pdf.EndDoc;
  finally
    Pdf.Free;
  end;
end;

操作Canvas

uses llPDFDocument;

procedure TForm1.Button2Click(Sender: TObject);
var
  Pdf: TPDFDocument;
begin
  Pdf := TPDFDocument.Create(nil);
  try
    //创建PDF文档
    Pdf.AutoLaunch := True;
    Pdf.FileName := 'C:\Users\Administrator\Desktop\ceshi.pdf';
    Pdf.BeginDoc;
    //通过Canvas输出内容
    with Pdf.Canvas do
    begin
      Pen.Color := clRed;
      Pen.Width := 2;
      Brush.Color := clInfoBk;
      Rectangle(100, 100, 400, 200);
      Font.Name := '宋体';
      Font.Size := 20;
      TextOut(200, 120, '测试内容');
      Pen.Color := clYellow;
      Pen.Width := 5;
      MoveTo(100, 250);
      LineTo(400, 250);
    end;
    //添加新页面,Canvas指向新增页面
    Pdf.NewPage;
    with Pdf.Canvas do
    begin
      Font.Name := '宋体';
      Font.Size := 20;
      TextOut(200, 120, '新增页面');
    end;
    Pdf.EndDoc;
  finally
    Pdf.Free;
  end;
end;

添加页面

uses llPDFDocument, llPDFTypes;

procedure TForm1.Button3Click(Sender: TObject);
var
  Pdf: TPDFDocument;
begin
  Pdf := TPDFDocument.Create(nil);
  try
    //创建PDF文档
    Pdf.AutoLaunch := True;
    Pdf.FileName := 'C:\Users\Administrator\Desktop\ceshi.pdf';
    //开始创建新PDF文档,添加第一页
    Pdf.BeginDoc;
    //设置页面纸张
    Pdf.CurrentPage.Size := psA4;
    //添加新页面,当前页指向新增页面
    Pdf.NewPage;
    //设置页面自定义纸张
    Pdf.CurrentPage.Width := 300;
    Pdf.CurrentPage.Height := 400;
    //结束PDF文档的创建。
    Pdf.EndDoc;
  finally
    Pdf.Free;
  end;
end;

添加文档信息

uses llPDFDocument;

procedure TForm1.Button4Click(Sender: TObject);
var
  Pdf: TPDFDocument;
begin
  Pdf := TPDFDocument.Create(nil);
  try
    //创建PDF文档
    Pdf.AutoLaunch := True;
    Pdf.FileName := 'C:\Users\Administrator\Desktop\ceshi.pdf';
    //设置文档的信息
    with Pdf.DocumentInfo do
    begin
      Title := '文档标题';
      Subject := '文档主题';
      Author := '文档作者';
      Creator := '文档生成器';
      Keywords := '文档关键字';
    end;
    Pdf.BeginDoc;
    Pdf.EndDoc;
  finally
    Pdf.Free;
  end;
end;
上一篇:Delphi XE UniGUI 错误:Neither DSN nor SERVER keyword supplied


下一篇:centos7.9中安装和卸载VNCServer