PDFium Delphi Component Docs

AddJpegImage Metodo

Componente: TPdf  ·  Unità: PDFium
Aggiunge un'immagine JPEG alla pagina PDF corrente usando le coordinate specificate.

Syntax

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

JpegImageTStream. Un flusso contenente dati JPEG compressi grezzi. Alla chiamata del metodo la posizione del flusso deve trovarsi all'inizio dei dati JPEG

Return Value

Restituisce True se i dati JPEG sono stati decodificati e incorporati correttamente nella pagina. Restituisce False se lo stream non contiene dati JPEG validi o se l'operazione di incorporamento fallisce

Description

AddJpegImage incorpora nella pagina PDF corrente un'immagine JPEG fornita come flusso di byte grezzi. Poiché i dati JPEG vengono passati direttamente senza essere ricodificati, la qualità dell'immagine viene preservata esattamente come memorizzata nel flusso sorgente. Questo rende il metodo particolarmente adatto alla generazione di documenti ad alto volume, dove decodificare e ricomprimere le immagini introdurrebbe inutili perdite di qualità o overhead della CPU.

Il flusso JpegImage deve contenere un file JPEG completo e valido che parte dal marcatore SOI. Prima di chiamare questo metodo, la posizione corrente del flusso deve trovarsi all'inizio dei dati JPEG. È accettato qualsiasi discendente di TStream — TFileStream, TMemoryStream, flussi blob di database e così via.

I parametri X e Y specificano l'angolo inferiore sinistro del rettangolo di posizionamento in unità utente PDF (origine nell'angolo in basso a sinistra della pagina, Y cresce verso l'alto). Width e Height impostano la dimensione di rendering sulla pagina; il JPEG viene ridimensionato per adattarsi a prescindere dalle sue dimensioni in pixel.

Il metodo restituisce True in caso di successo. Se il flusso non contiene dati JPEG validi, restituisce False senza generare un'eccezione, quindi i chiamanti dovrebbero controllare il valore di ritorno quando lavorano con dati di origine incerta.

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