Getting Started

安装, Delphi 设置, 第一个程序

PDF Library for Delphi 是一个 Delphi PDF 库。通过将库单元添加到项目中,并在需要构建或修改 PDF 文档时创建 TPDFlib 实例,即可在代码中使用它

路径设置

告知 Delphi 在何处查找 PDF Library for Delphi 源文件或已编译 DCU 文件。可一次设置全局 Library Path,也可为每个使用该库的项目设置 Search Path

设置全局 Library Path 时,使用以下 Delphi 菜单路径

Tools -> Options -> Language -> Delphi -> Library -> Library path

在较旧的 Delphi 版本中,此设置可能位于

Tools -> Environment Options -> Library -> Library path

添加已安装的源代码路径或匹配的编译后二进制路径。例如

%UserProfile%\Documents\losLab\PDFlibPas\Lib
%UserProfile%\Documents\losLab\PDFlibPas\Lib\37.0\Win32\Release
%UserProfile%\Documents\losLab\PDFlibPas\Lib\37.0\Win64\Release

第一个路径是默认源码版路径。带版本号的路径是 RAD Studio 13 Florence 编译 DCU 的示例。请使用与已安装 Delphi 或 C++Builder 版本匹配的 BDS 版本文件夹

只为当前项目设置 Search Path 时,使用

Project -> Options -> Building -> Delphi Compiler -> Search path

在较旧的 Delphi 版本中,此设置可能位于

Project -> Options -> Directories/Conditionals -> Search path

Windows 上的 Free Pascal 与 Lazarus

同时支持 i386-win32 和 x86_64-win64,包括带 Win64 交叉编译器的 Win32 编译器安装

build-Lazarus-Lib.cmd win32
build-Lazarus-Tests.cmd win32
build-Lazarus-Demo.cmd win32
build-Lazarus-Lib.cmd win64

调试构建使用 debug,构建控制台测试但不运行使用 norun;使用自定义编译器安装时,把 FPC 设为 fpc.exe 的完整路径

编译出的单元写入 Lib\FPC\i386-win32 或 Lib\FPC\x86_64-win64;把对应目录和 Lib\FPC\compat 加入项目的单元搜索路径,使用 Delphi 语法模式,并保持捆绑的 Lib\thirdparty 对象可供链接器使用;Lazarus 运行时包为 Lib\FPC\PDFlibPasLaz.lpk

测试可执行文件使用 Tests\Lazarus\bin\<target>,演示可执行文件使用各演示的 bin\<target> 目录;Win32 的 AES 与 JPEG 2000 使用 Lib\thirdparty\Win32f 提供的静态 COFF 对象,无需编解码 DLL;Win32 使用内置 Pascal JBIG2 编码器(即使请求了外部编码器选项),外部 PDFlibJBIG2EncC 后端在 Win64 上可用

试用版安装包含预编译单元;要构建与编译器版本和目标匹配的演示,请运行 build-Lazarus-Demo-TRIAL.cmd win32 或选择 win64;从源码树准备试用二进制时,先用 build-Lazarus-Lib-TRIAL.cmd win32 或 win64 构建单元

类和单元名称

主库单元是 PDFlibrary.pas(二进制包中为 PDFlibrary.dcu)。主类是 TPDFlib

声明类

PDF Library for Delphi 是 Delphi 库,不是 VCL 组件。它不会安装到 IDE 组件面板。将 PDFlibrary 添加到单元的 uses 子句,声明 TPDFlib 类型变量,并调用 Create 构造函数。完成后调用 Free,通常置于 try..finally 块内

第一个 PDF 库程序

启动新的 VCL Forms 应用程序,并向窗体添加 TButton。将 PDF Library for Delphi 单元添加到窗体单元:

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics,
  Controls, Forms, Dialogs, PDFlibrary;

双击按钮并添加以下事件处理程序

procedure TForm1.Button1Click(Sender: TObject);
var
  PDFlib: TPDFlib;
begin
  PDFlib := TPDFlib.Create;
  try
    PDFlib.DrawText(100, 500, 'Hello from Delphi');
    PDFlib.SaveToFile('.\HelloFromDelphi.pdf');
  finally
    PDFlib.Free;
  end;
end;

完整工作流

生成第一个 PDF 之后,可以探索自带的 Demo/Delphi、Demo/C++Builder 或 Demo/Lazarus 示例合集:Showcase 提供可视化导览,每个领域 Lab 则从单个可执行文件暴露各专项场景

运行 DocumentLab --scenario DocumentInspectionWorkbench 获取页面清单与诊断报告,或使用该场景文档记载的命令行参数提供自己的 PDF

运行 ContentLab --scenario WorkflowGallery 体验一个包含表格、注释、交付清单、HTTP 输出与保存文件验证的文档交付工作流

DLL 用户可以从 Demo/CSharp/DLL/WorkflowWorkbench 或 Demo/VB.NET/DLL/WorkflowWorkbench 入手,体验报表生成、提取、页面组装与二进制内存传输,也可以用 Demo/VC++/DLL/LinkDemo 验证链接与导航

打开安装包中的 Demo/DLL.en-us.html 查看 DLL 工作流目录与按架构区分的构建说明

更多信息

使用这套 HTML 参考文档查看详细 API 说明。可以按函数名、分类或主题关键字搜索导航窗格

如需产品新闻和其他信息,请访问 Delphi PDF 库产品页面