PDFium Delphi Component Docs

AddJpegImage Método

Componente: TPdf  ·  Unidad: PDFium
Agrega 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 sin procesar comprimidos con JPEG. 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 decodifican e insertan correctamente 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 flujo de bytes sin procesar en la página PDF actual. Como los datos JPEG se pasan directamente sin recodificar, la calidad de la imagen se conserva exactamente como está almacenada en el flujo de origen. Esto hace que el método sea adecuado para la generación de documentos en gran volumen, donde decodificar y recomprimir imágenes introduciría una pérdida de calidad o una carga de CPU innecesarias

El flujo JpegImage debe contener un archivo JPEG completo y válido que comience con 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 blob de bases de datos, entre otros

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

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 cuando trabajan 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