ApplyRepeatedPageFragment
Верстка страниц, тегированный PDF, производительность
Описание
Помещает один захваченный Form XObject на каждую выбранную страницу, помечая каждое размещение как artifact вне дерева логической структуры
Захваченный поток и его ресурсы совместно используются всеми размещениями, что избавляет от повторного построения одинаковых заголовков, подписей групп, фонов, колонцифр, водяных знаков или декоративных фрагментов
Синтаксис
Delphi
Function TPDFlib.ApplyRepeatedPageFragment(CaptureID: Integer;
Const PageRange: WideString; Left, Top, Width, Height: Double;
Const ArtifactType, ArtifactSubtype: WideString): Integer;ActiveX
Function PDFlib::ApplyRepeatedPageFragment(CaptureID As Long,
PageRange As String, Left As Double, Top As Double, Width As Double,
Height As Double, ArtifactType As String,
ArtifactSubtype As String) As LongDLL
int DLApplyRepeatedPageFragment(int InstanceID, int CaptureID,
const wchar_t* PageRange, double Left, double Top, double Width,
double Height, const wchar_t* ArtifactType,
const wchar_t* ArtifactSubtype);
int DLApplyRepeatedPageFragmentA(int InstanceID, int CaptureID,
const char* PageRange, double Left, double Top, double Width,
double Height, const char* ArtifactType,
const char* ArtifactSubtype);Параметры
| CaptureID | Повторно используемый захват, возвращенный EndFormXObject или другим API захвата Form в текущем документе |
|---|---|
| PageRange | Выражение диапазона страниц или пустая строка для всех страниц |
| Left, Top, Width, Height | Прямоугольник размещения, передаваемый в DrawCapturedPage; координаты должны быть конечными, а размеры — положительными |
| ArtifactType | Одно из значений Pagination, Layout, Page или PDF 2.0 Background |
| ArtifactSubtype | Пусто, если ArtifactType не Pagination; допустимые стандартные значения — Header, Footer, Watermark, PageNum, LineNum, Redaction и Bates |
Возвращаемые значения
Возвращает число страниц, на которых размещен фрагмент, или 0 при неудачной проверке, пустом диапазоне или невозможности изменять страницы в текущей области действия API
Примечания
Функция сохраняет выбранную вызывающей стороной страницу и состояние рисования
Background, PageNum, LineNum, Redaction и Bates поднимают версию функций вывода до PDF 2.0
Повторные размещения всегда являются artifacts; нарисуйте отдельное семантическое вхождение вне этого вызова, если первое вхождение принадлежит порядку чтения
Пример
PDF.BeginFormXObject(0, 0, 180, 24);
PDF.PrintText(0, 8, 'Confidential draft');
FragmentID:= PDF.EndFormXObject;
if PDF.ApplyRepeatedPageFragment(FragmentID, '2-end', 36, 806,
180, 24, 'Pagination', 'Header')= 0 then
HandleLayoutError;