function AddJpegImage(JpegImage: TStream; X, Y, Width, Height: Double): Boolean;
| JpegImage | TStream. Strumień zawierający surowe dane skompresowane algorytmem JPEG. Pozycja strumienia powinna wskazywać początek danych JPEG w momencie wywołania tej metody |
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 powiedzieAddJpegImage 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
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;