Запись THPDFDisplayListObject
Классифицирует один объект content stream в скомпилированном display list страницы с его оператором и границами в пользовательской системе координат
Объявление
THPDFDisplayListObject= record
Kind: THPDFDisplayListObjectKind;
OperatorIndex: Integer;
OperatorName: AnsiString;
Bounds: THPDFRectangle;
HasBounds: boolean;
end;
Модуль
HPDFPageRenderer
Поля
| Поле | Назначение |
|---|---|
Kind | Класс объекта: dlokPath, dlokText, dlokImage, dlokShading или dlokUnknown |
OperatorIndex | Индекс породившего оператора в последовательности операторов display list |
OperatorName | Текст оператора, записанный при построении индекса объектов, например re, Tj или Do |
Bounds | Охватывающий прямоугольник в пользовательской системе координат, вычисленный из текущей трансформации в момент отрисовки объекта |
HasBounds | False, когда для этого объекта не удалось вывести надёжные границы |
Примечания по использованию
- Читайте записи через
THPDFPageDisplayList.GetObject;ObjectCountдаёт допустимый диапазон индексов QueryObjectIndexesвозвращает индексы объектов, чьи границы пересекают прямоугольник, — готовый набор для hit testing- Объекты строятся один раз при компиляции display list, поэтому границы стабильны между рендерами при разных DPI