PDFium Delphi Component 文件

AddJpegImage 方法

组件: TPdf  ·  单元: PDFium
使用指定坐标将 JPEG 图像添加到当前 PDF 页面

Syntax

function AddJpegImage(JpegImage: TStream; X, Y, Width, Height: Double): Boolean;

JpegImageTStream。包含原始 JPEG 压缩数据的流。调用此方法时,流位置应位于 JPEG 数据的开头

Return Value

如果 JPEG 数据被成功解码并嵌入页面,则返回 True。如果流不包含有效的 JPEG 数据或嵌入操作失败,则返回 False

Description

AddJpegImage 将以原始字节流形式提供的 JPEG 图像嵌入到当前 PDF 页面上。因为 JPEG 数据直接传递而不重新编码,图像质量会与源流中存储的完全一致。这使该方法非常适合大量文档生成场景,在这些场景中解码和重新压缩图像会带来不必要的质量损失或 CPU 开销

JpegImage 流必须包含从 SOI 标记开始的完整、有效的 JPEG 文件。调用此方法之前,流的当前位置应位于 JPEG 数据的开头。接受任何 TStream 后代——TFileStream、TMemoryStream、数据库 blob 流等

X 和 Y 参数以 PDF 用户单位指定放置矩形的左下角(原点在页面左下角,Y 向上递增)。Width 和 Height 设置页面上的渲染尺寸;无论像素尺寸如何,JPEG 都会缩放以适配

方法成功时返回 True。如果流不包含有效的 JPEG 数据,它会返回 False 而不抛出异常,因此处理来源不确定的数据时,调用方应检查返回值

Example

var
  Stream: TFileStream;
begin
  Stream := TFileStream.Create('C:\Images\photo.jpg', fmOpenRead or fmShareDenyNone);
  try
    Pdf1.NewPage(595, 842);
    if not Pdf1.AddJpegImage(Stream, 72, 400, 300, 225) then
      ShowMessage('Failed to embed JPEG image.');
  finally
    Stream.Free;
  end;
end;

See Also

AddImage, AddPicture