Klasa THPDFPage

 

THPDFPage

Metody         Właściwości      Omówienie

Góra  Poprzedni  Następny

THPDFPage reprezentuje pojedynczą stronę w dokumencie PDF

 

Unit

HPDFDoc.pas

 

Opis

Używaj THPDFPage do rysowania ścieżek, umieszczania tekstu, renderowania obrazów i kontroli ustawień poziomu strony, takich jak rozmiar, orientacja i stan grafiki

Użyj TextFromBaseLine(True), gdy współrzędne tekstu mają się odnosić do linii bazowej fontu zamiast do domyślnej pozycji górnej krawędzi, użyj SetEmbeddedGlyphFont i DrawEmbeddedGlyphRun dla dokładnych programów fontów i ID glifów posiadanych przez wywołującego, użyj AppendScopedRawContent, gdy eksperckie operatory PDF mają być owinięte automatyczną parą zapisu i przywrócenia stanu grafiki, oraz użyj TextOutBoxEx / WideTextOutBoxEx, gdy opakowane wyjście tekstu ma raportować zapisane znaki, zapisane wiersze i status przepełnienia

W normalnych workflow instancje tworzy i posiada THotPDF: strony przychodzą przez AddPage, InsertPage i właściwość CurrentPage po BeginDoc, a zamknięcie dokumentu przez EndDoc albo zniszczenie komponentu zwalnia każdą stronę; publiczny konstruktor Create bez parametrów i destruktor Destroy są dostępne dla samodzielnych obiektów stron poza sesją dokumentu — tak testy jednostkowe ćwiczą domyślne ustawienia poziomu strony bez pełnego komponentu

 

Przykład użycia:

 

uses

  ...

  HPDFDoc,

  ...

 

type

   ...

   HPDF: THotPDF;

   TextBoxResult: THPDFTextOutBoxResult;

   ...

 

procedure TForm1.HelloWorldButtonClick(Sender: TObject);

begin

   HPDF.AutoLaunch := true;                                          // Show the PDF after it is created

   HPDF.FileName := '.\HelloWorld.pdf';

   HPDF.BeginDoc;                                                       // Start PDF generation

   HPDF.CurrentPage.TextOut(10, 10, 0, 'Hello World!');  // Write text on the first page

   HPDF.CurrentPage.TextFromBaseLine(true);  // Treat following text Y values as baselines

   HPDF.CurrentPage.TextOut(10, 40, 0, 'Baseline text');

   HPDF.CurrentPage.TextFromBaseLine(false);

   TextBoxResult := HPDF.CurrentPage.TextOutBoxEx(10, 70, 2, 180, 48, 'Wrapped text-box content', jtLeft);

   HPDF.CurrentPage.AppendScopedRawContent('2 w 10 10 120 45 re S');

   HPDF.EndDoc;                                                       // Finalize and save the PDF

end;