THPDFHeadlessTextAppearance

Владеемый пакет, возвращаемый HPDFBuildHeadlessTextAppearance или HPDFBuildHeadlessRichTextAppearance, содержит реальные объекты HotPDF и выбранные вызывающим подряд идущие номера indirect-объектов

ObjectCount сообщает реальный размер пакета; таблица описывает пакет простого текста из семи объектов

ИндексОбъект
0Form XObject normal appearance
1Шрифт Type0 с Identity-H и ToUnicode
2CIDFontType2 с точными ширинами и CIDToGIDMap
3Font descriptor с реальным именем, границами и вертикальными метриками
4Полные исходные байты FontFile2
5CMap ToUnicode с отображениями скаляров в UTF-16
6Явный поток CID-to-glyph

GetObject(Index) возвращает заимствованный объект; GetObjectNumber(Index) возвращает его indirect-номер, а FirstObjectNumber указывает объект Form

EffectiveFontSize и TextWidth сообщают итоговую раскладку по реальным advance шрифта; TextHeight сообщает логический размер строки по реальным метрикам шрифта и итоговым базовым линиям, без отступов и завершающего интерлиньяжа

DetachObject(Index) передаёт владение объектом вызывающему и очищает его слот в пакете; вызывающий должен сохранить связанные indirect-номера и освободить отделённые объекты

Уничтожение пакета освобождает все оставшиеся присоединёнными объекты

Rich-text-пакет содержит внешний Form, а затем по семь объектов на каждый отрисованный фрагмент, причём реальные программы шрифтов стилей разделяются между фрагментами внутри виджета; неиспользуемые слоты шрифтовых программ содержат null-объекты, поэтому вызывающие должны перебирать ObjectCount, а не считать объекты равными семи