PDFium Component Docs

AddJpegImage Metoda

Component: TPdf  ·  Unit: PDFium
Dodaje obraz JPEG do bieżącej strony PDF z użyciem podanych współrzędnych

Syntax

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

JpegImageTStream. Strumień zawierający surowe dane skompresowane algorytmem JPEG. Pozycja strumienia powinna wskazywać początek danych JPEG w momencie wywołania tej metody

Return Value

Zwraca True, gdy dane JPEG zostały pomyślnie zdekodowane i osadzone na stronie. Zwraca False, gdy strumień nie zawiera prawidłowych danych JPEG lub gdy operacja osadzania się nie powiedzie

Description

AddJpegImage osadza obraz JPEG dostarczony jako surowy strumień bajtów na bieżącej stronie PDF. Ponieważ dane JPEG są przekazywane bezpośrednio bez ponownego kodowania, jakość obrazu jest zachowana dokładnie tak, jak zapisano w strumieniu źródłowym. Sprawia to, że metoda dobrze nadaje się do generowania dokumentów masowych, gdzie dekodowanie i ponowna kompresja obrazów wprowadzałyby niepotrzebną utratę jakości lub obciążenie procesora

Strumień JpegImage musi zawierać kompletny, prawidłowy plik JPEG rozpoczynający się od znacznika SOI. Bieżąca pozycja strumienia powinna wskazywać początek danych JPEG przed wywołaniem tej metody. Akceptowany jest dowolny potomek TStream — TFileStream, TMemoryStream, strumienie blob baz danych i tak dalej

Parametry X i Y określają lewy dolny róg prostokąta umieszczenia w jednostkach użytkownika PDF (początek układu w lewym dolnym rogu strony, Y rośnie w górę). Width i Height ustalają renderowany rozmiar na stronie; obraz JPEG jest skalowany, aby się zmieścić, niezależnie od swoich wymiarów pikselowych

Metoda zwraca True w przypadku sukcesu. Jeśli strumień nie zawiera prawidłowych danych JPEG, zwraca False bez zgłaszania wyjątku, dlatego wywołujący powinni sprawdzać wartość zwracaną przy pracy z danymi o niepewnym pochodzeniu

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