THPDFPage Class

 

THPDFPage

Методы         Свойства      Обзор

Вверх  Назад  Далее

THPDFPage представляет одну страницу в PDF-документе

 

Модуль

HPDFDoc.pas

 

Описание

Используйте THPDFPage, чтобы рисовать пути, размещать текст, рендерить изображения и управлять настройками уровня страницы — размером, ориентацией и состоянием графики

Используйте TextFromBaseLine(True) когда координаты текста должны отсчитываться от базовой линии шрифта вместо позиции верхнего края по умолчанию, используйте SetEmbeddedGlyphFont и DrawEmbeddedGlyphRun для точных шрифтовых программ и glyph ID во владении вызывающего используйте AppendScopedRawContent когда экспертные PDF-операторы должны быть обёрнуты в автоматическую пару save/restore состояния графики, и используйте TextOutBoxEx / WideTextOutBoxEx когда вывод текста в рамке должен сообщать записанные символы, записанные строки и статус переполнения

В обычных сценариях экземпляры создаются и принадлежат THotPDF: страницы приходят через AddPage, InsertPage и свойство CurrentPage после BeginDoc, а закрытие документа через EndDoc или уничтожение компонента освобождает каждую страницу; публичный конструктор Create без параметров и деструктор Destroy доступны для автономных объектов страниц вне сессии документа — именно так юнит-тесты проверяют значения страниц по умолчанию без полного компонента

 

Пример использования:

 

uses

...

HPDFDoc,

...

 

type

...

HPDF: THotPDF;

TextBoxResult: THPDFTextOutBoxResult;

...

 

procedure TForm1.HelloWorldButtonClick(Sender: TObject);

begin

HPDF.AutoLaunch := true; // Показать PDF после создания

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

HPDF.BeginDoc; // Начать генерацию PDF

HPDF.CurrentPage.TextOut(10, 10, 0, 'Hello World!'); // Написать текст на первой странице

HPDF.CurrentPage.TextFromBaseLine(true); // Считать дальнейшие Y-значения текста базовыми линиями

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; // Финализировать и сохранить PDF

end;