losLab 软件开发博客

Delphi PDF Library

Software Development Blog

Delphi PDF Library

Delphi 中的 PDF 条码:QR、PDF417、DataMatrix

矢量条码在任何尺寸下都能保持清晰打印。了解 PDFlibPas 如何在 Delphi 中绘制 QR、PDF417、DataMatrix,以及 Code128 或 GS1-128 符号,并控制纠错与尺寸。 运输标签或发票上的条码只有一个任务,就是让扫描器第一次就能读出来。它能不能通过这一次读取,往往在包裹送到装卸平台之前

Delphi PDF Library

用 PDFlibPas 在 Delphi 中构建合规与签名工作台

使用 PDFlibPas 在 Delphi 中把 PDF/A 预检、PAdES 签名和 ByteRange 审计串成一个工作台,让你验证的修订版就是你签署的修订版。 一个把合规校验与数字签名串起来的工作台,必须按固定顺序协调四个步骤,而且整个过程都要牢牢绑在同一组字节上。先跑一次 PDF/A 或 PDF/UA

Delphi PDF Library

在 Delphi 中将 TDataSet 和报表导出为 PDF

使用 losLab PDF Library 在 Delphi 中将任何 TDataSet、FastReport、QuickReport 或 ReportBuilder 报表导出为 PDF,支持分页表格和无头(headless)输出 要在 Delphi 中将 TDataSet 或报表导出为 PDF,losLab PDF

Delphi PDF Library

PDFlibPas:DLL、ActiveX 和 Dylib 集成(Delphi)

面向 Delphi/C++Builder 的 PDFlibPas DLL、ActiveX 和 Dylib 集成实战指南,覆盖架构决策、验证证据、诊断、边界情况和上线检查 losLab PDF Library 为 Delphi 和 C++Builder 团队提供带源代码的 PDF 引擎,适用于桌面、服务器、DLL、Act

Delphi PDF Library

验证电子发票:Delphi 中的 veraPDF 和 Mustang

PDF/A 兼容性不等于发票兼容性。了解 PDFlibPas 电子发票如何在 Delphi 中同时通过 veraPDF 容器检查和 Mustang 业务规则 Factur-X 或 ZUGFeRD 发票是一个文件名下的两个文档。外部文档是一个 PDF/A-3 容器,归档阅读器必须在未来十年内接受它

Delphi PDF Library

PDFlibPas:加密和权限审计(Delphi)

面向 Delphi/C++Builder 的 PDFlibPas 加密和权限审计实战指南,覆盖架构决策、验证证据、诊断、边界情况和上线检查 losLab PDF Library 为 Delphi 和 C++Builder 团队提供带源代码的 PDF 引擎,适用于桌面、服务器、DLL、ActiveX 和 Dylib

Delphi PDF Library

Delphi 中的 Factur-X 和 ZUGFeRD 混合发票

电子发票是内部嵌入了发票 XML 的 PDF/A-3。了解 PDFlibPas 如何在 Delphi 中跨配置文件构建 Factur-X 和 ZUGFeRD 混合发票 合规的电子发票并不是旁边钉着 XML 文件的 PDF。它是一个单一的 PDF/A-3 文档,里面带有两次发票内容:一次是供人阅读的页面,另一次是作为关联

Delphi PDF Library

在 Delphi 中進行快速 PDF 合併:字节級的参照移位

了解 PDFlibPas 如何在 Delphi 中透过重复使用來源字节并逐個对象移位間接参照,跳过剖析与重新序列化的來回过程,來快速合併 PDF。 将多個 PDF 串接起來聽起來应该是很低成本的。页面内容已經配置好,字体已經嵌入,影像也已經压缩。原则上,合併只是一种记账工作:对对象重新編号以使两个文件的編号空間不再衝突

Delphi PDF Library

在 Delphi 中的 FDF、XFDF 和 XFA 表单数据交换

使用 losLab PDF Library 在 Delphi 中的 AcroForm 和业务系统之间转移 PDF 表单数据:支持 FDF 和 XFDF 值、分层字段、富文本以及 XFA XDP losLab PDF Library 通过三种不同的方式在 PDF 中导入和导出表单数据:用于 AcroForm 字段值的

Delphi PDF Library

Delphi 中的 GeoPDF:用 PDFlibPas 读取地理空间坐标

PDF 可以携带地图坐标系。了解 PDFlibPas 如何在 Delphi 中读取 GeoPDF 视口、measure 字典,以及 WKT 或 EPSG 地理坐标框架。 大多数开发者会把 PDF 页面想成一张带着文字和图片的纸。带地理参照的 PDF 不止如此。它携带了足够的信息,让你能够取出页面上的一个点,按普通页面单

Delphi PDF Library

Delphi 中的 PDF 增量更新:AppendToStream 指南

在 Delphi 中使用 losLab PDF Library 的 AppendToStream 写入 ISO 32000-1 增量更新:保留数字签名并避免对大型 PDF 进行完整重写 PDF 增量更新允许 Delphi 应用程序仅通过追加更改的对象来修改文档,从而使原始的每个字节保持原封不动

Delphi PDF Library

Delphi 中的交互式 PDF 表单:动作与 JavaScript

PDF 表单动作可以把静态页面变成应用。了解 PDFlibPas 如何在 Delphi 中把 Hide、ImportData、Named 和 JavaScript 动作连接到字段与链接。 单独一个 PDF 表单字段,只不过是个保存值的盒子。真正让表单像一个小应用那样运转起来的,是附着在它上面的动作:一次点击可以隐藏某个

Delphi PDF Library

在 Delphi 中使用 TPDFlibViewer 构建交互式 PDF 查看器

在 Delphi VCL 中使用 TPDFlibViewer 构建交互式 PDF 查看器:五种鼠标工具、现成的 Action、搜索命中高亮、批注点击和打印 在 Delphi 业务应用程序中嵌入 PDF 阅读面板,不需要编写渲染循环、滚动引擎或缩放模型;losLab PDF Library 提供了 ,这是一个 VCL

Delphi PDF Library

PDFlibPas:大体积 PDF 的直接访问合并与拆分(Delphi)

面向 Delphi/C++Builder 的 PDFlibPas 大体积 PDF 的直接访问合并与拆分实战指南,覆盖架构决策、验证证据、诊断、边界情况和上线检查 losLab PDF Library 为 Delphi 和 C++Builder 团队提供带源代码的 PDF 引擎,适用于桌面、服务器、DLL、ActiveX

Delphi PDF Library

在 Delphi 中将 PDF 页面渲染为 1 位元單色

在 Delphi 中使用 PDFlibPas 将 PDF 页面渲染为 1 位元單色位图并裁剪子区域,使用 GDI 半色调向下转换而无需觸碰渲染器。 传真閘道器不想要你的 24 位元页面渲染。保存了一百萬張看起來像扫描发票的归档管线不想要,在寻找字符之前就把所有东西二值化为黑白的 OCR 前端也不想要

Delphi PDF Library

PDFlibPas:多引擎 PDF 渲染(Delphi)

面向 Delphi/C++Builder 的 PDFlibPas 多引擎 PDF 渲染实战指南,覆盖架构决策、验证证据、诊断、边界情况和上线检查 losLab PDF Library 为 Delphi 和 C++Builder 团队提供带源代码的 PDF 引擎,适用于桌面、服务器、DLL、ActiveX 和

Delphi PDF Library

Delphi 中的 PDF 图层:Optional Content Groups (OCG)

PDF 图层可用于地图、CAD 图纸和多语言版本。了解 PDFlibPas 如何在 Delphi 中创建和读取 Optional Content Groups 及其配置 测量人员打开一张场地图,希望隐藏等高线而保留管线设施。审阅人员希望红线批注在屏幕上可见,但打印时不出现。产品资料从同一个文件交付三个语言版本,由读者决

Delphi PDF Library

在 Delphi 中读取 PDF 书签与注释动作

多数 Delphi PDF 库可以写入书签和注释动作,却无法读取已有动作。本文介绍如何使用 PDFlibPas 检查 GoTo、URI、Launch 与 JavaScript 动作,解析书签目标页、适配方式和坐标,并避免 URI 字段、页面选择与目标解析中的常见错误,适用于审查第三方 PDF 文件中的导航和链接行为

Delphi PDF Library

PDFlibPas:PAdES 签署和验证(Delphi)

面向 Delphi/C++Builder 的 PDFlibPas PAdES 签署和验证实战指南,覆盖架构决策、验证证据、诊断、边界情况和上线检查 losLab PDF Library 为 Delphi 和 C++Builder 团队提供带源代码的 PDF 引擎,适用于桌面、服务器、DLL、ActiveX 和

Delphi PDF Library

Delphi PDF 中的页面拼接与水印模板

在 Delphi 中使用 losLab PDF 库的 Form XObject 捕获和可组合水印模板,并排拼接 PDF 页面或以矢量保真度叠加它们 页面拼接将现有页面的 内容 组合到一个共享的画布上,这与合并文件是不同的操作;losLab PDF Library 为 Delphi 实现了 Form XObject

Delphi PDF Library

Delphi 中的并行 PDF 页面渲染:线程安全

使用 losLab PDF Library 在 Delphi 中并行渲染 PDF 页面:为什么 TPDFlib 每个工作线程需要一个实例、用于 GDI+ 的 CoInitialize 以及安全日志记录 在 Delphi 中并行渲染 PDF 页面可以归结为一条规则:为每个工作线程提供其自己的渲染器

Delphi PDF Library

在 Delphi 中减小 PDF 文件大小:字体、图像与 LZW

在 Delphi 中使用 losLab PDF Library 缩减 PDF 文件大小:子集化嵌入字体、下采样超大图像,并在一次处理中将遗留的 LZW 流转换为 Flate 为了在 Delphi 中减小 PDF 文件大小,losLab PDF Library 提供了三个针对三大臃肿来源的 API: 将每个嵌入的

Delphi PDF Library

PDFlibPas:PDF/A 和 PDF/UA 预检(Delphi)

面向 Delphi/C++Builder 的 PDFlibPas PDF/A 和 PDF/UA 预检实战指南,覆盖架构决策、验证证据、诊断、边界情况和上线检查 losLab PDF Library 为 Delphi 和 C++Builder 团队提供带源代码的 PDF 引擎,适用于桌面、服务器、DLL、ActiveX

Delphi PDF Library

Delphi 中用于 Factur-X XMP 的 PDF/A-3 Extension Schema

如果 Factur-X 发票的 XMP 属性未声明,则无法通过 veraPDF 验证。了解 PDFlibPas 如何在 Delphi 中为 fx 元数据添加 PDF/A-3 扩展 schema 你构建了一张 Factur-X 发票,每一个容器检查都通过了。文档目录带有一个 数组, 名称树解析到了正确的文件规范,嵌入的

Delphi PDF Library

PDFlibPas:打印预览和设备上下文输出(Delphi)

面向 Delphi/C++Builder 的 PDFlibPas 打印预览和设备上下文输出实战指南,覆盖架构决策、验证证据、诊断、边界情况和上线检查 losLab PDF Library 为 Delphi 和 C++Builder 团队提供带源代码的 PDF 引擎,适用于桌面、服务器、DLL、ActiveX 和

Delphi PDF Library

PDFlibPas:Tagged PDF 无障碍结构(Delphi)

面向 Delphi/C++Builder 的 PDFlibPas Tagged PDF 无障碍结构实战指南,覆盖架构决策、验证证据、诊断、边界情况和上线检查 losLab PDF Library 为 Delphi 和 C++Builder 团队提供带源代码的 PDF 引擎,适用于桌面、服务器、DLL、ActiveX

Delphi PDF Library

PDFlibPas:文本、图像和字体提取(Delphi)

面向 Delphi/C++Builder 的 PDFlibPas 文本、图像和字体提取实战指南,覆盖架构决策、验证证据、诊断、边界情况和上线检查 losLab PDF Library 为 Delphi 和 C++Builder 团队提供带源代码的 PDF 引擎,适用于桌面、服务器、DLL、ActiveX 和

Delphi PDF Library

Delphi PDF 文字搜寻与命中坐标:PDFlibPas

在 Delphi 中使用 PDFlibPas 按页面范围搜寻 PDF 文字:每个命中結果都会传回其所在的页面与边界矩形,并且能列舉页面上的每个文字块与图片。 提取一个页面的文字是問题中簡單的那一半。当使用者在搜寻方塊中输入一个詞,并期望查看器能跳到该处且在周围畫上一个黃色方塊时,你便需要扁平文字字串无法給你的东西:每个

Delphi PDF Library

Delphi 中的真实 PDF 内容擦除:删除与净化

使用 losLab PDF Library 在 Delphi 中进行真实的 PDF 内容擦除:支持 RedactRegion 删除内容流字节,以及 SanitizeDocument 清理元数据、脚本和操作 在 Delphi 中进行真实的 PDF 内容擦除意味着删除底层的字节,而不是在上面涂画

Delphi PDF Library

加固 Pascal PDF 解析器以抵御恶意文件

PDF 解析器本身就是攻击面。了解字体和图像解码器中真实存在的整数溢出、越界写入和无限递归缺陷,以及在 Delphi 中的修复方式 PDF 不是一个你打开的文档,它更像一个你运行的小程序。每个嵌入字体都像一个等待 charstrings 的栈式解释器,每张图像都带着由文件自己声明的宽度、高度和位深字段交给解码器处理,而

Delphi PDF Library

Delphi 中的 PDF 矢量图形:路径与渐变

PDF 是完整的二维矢量画布。了解 PDFlibPas 如何在 Delphi 中绘制路径、Bezier 曲线和轴向渐变,以及 even-odd 与 nonzero fill 的差异 大多数接触 PDF 的 Delphi 代码,通常把这种格式视为两样东西的容器:几段文本和少量放置好的位图

Delphi PDF Library

Delphi 中的 PDF 查看器磁盘缓存与每显示器 DPI 优化

在 Delphi PDF 查看器中使用跨会话的磁盘页面缓存和每显示器 DPI 进行加速:losLab PDF 库中的 FNV-1a 指纹、LRU 修剪和 WM_DPICHANGED 每个嵌入式 PDF 查看器都面临着两个抱怨:每次启动时大文档都需要从头开始重新渲染,以及一旦窗口被拖动到高 DPI

Delphi PDF Library

Delphi 中的 XFA SOM 路径表达式与动态表单数据填充

在 Delphi 中使用 losLab PDF 库中的 XFA 3.3 SOM 路径表达式填充动态 XFA 表单中的重复行:$record 根、[*] 出现次数和谓词 losLab PDF Library 通过 XFA 3.3 SOM 路径表达式读写动态 XFA 表单中的重复数据节点: 和 接受 、 和 根、