PDFium Delphi Component Docs

AddJpegImage Método

Componente: TPdf  ·  Unidad: PDFium
Añade una imagen JPEG a la página PDF actual usando las coordenadas especificadas

Syntax

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

JpegImageTStream. Un flujo que contiene datos JPEG comprimidos sin procesar. La posición del flujo debe estar al inicio de los datos JPEG cuando se llama a este método

Return Value

Devuelve True si los datos JPEG se decodificaron correctamente y se incrustaron en la página. Devuelve False si el flujo no contiene datos JPEG válidos o si la operación de incrustación falla

Description

AddJpegImage incrusta una imagen JPEG suministrada como un flujo de bytes sin procesar en la página PDF actual. Como los datos JPEG se pasan directamente sin recodificación, la calidad de la imagen se conserva exactamente como está almacenada en el flujo de origen. Esto hace que el método sea idóneo para la generación de documentos de alto volumen donde decodificar y recomprimir imágenes introduciría una pérdida de calidad o sobrecarga de CPU innecesarias

El flujo JpegImage debe contener un archivo JPEG completo y válido que empiece desde el marcador SOI. La posición actual del flujo debe estar al principio de los datos JPEG antes de llamar a este método. Se acepta cualquier descendiente de TStream: TFileStream, TMemoryStream, flujos de blob de base de datos, etc

Los parámetros X e Y especifican la esquina inferior izquierda del rectángulo de colocación en unidades de usuario de PDF (origen en la parte inferior izquierda de la página, Y aumenta hacia arriba). Width y Height establecen el tamaño renderizado en la página; el JPEG se escala para ajustarse independientemente de sus dimensiones de píxel

El método devuelve True en caso de éxito. Si el flujo no contiene datos JPEG válidos, devuelve False sin generar una excepción, por lo que los llamadores deben comprobar el valor devuelto al trabajar con datos de origen incierto

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