DAGetTextBlockCharContentLocation

Прямой доступ, текст, извлечение, потоки содержимого, диагностика

Описание

Возвращает стабильное расположение в потоке содержимого и диапазон закодированных исходных байтов, связанные с одним извлеченным символом Direct Access

Синтаксис

Delphi

Function TPDFlib.DAGetTextBlockCharContentLocation(TextBlockListID, Index,
  CharIndex: Integer; Out ContentLayer, StreamObjectNumber,
  StreamGeneration, InstructionIndex, OperandIndex, ArrayElementIndex,
  SourceByteOffset, SourceByteLength, Flags: Integer): Integer;

Параметры

TextBlockListIDДескриптор, возвращенный DAExtractPageTextBlocks
IndexИндекс текстового блока, начиная с 1
CharIndexПозиция кодовой единицы UTF-16, начиная с 1, внутри текста блока
ContentLayerСлой /Contents страницы, начиная с 1, или 0 для вложенного содержимого
StreamObjectNumberНомер объекта содержащего потока или 0 для прямого потока
StreamGenerationНомер поколения содержащего потока
InstructionIndexИндекс инструкции в декодированной программе содержимого, начиная с 0
OperandIndexИндекс операнда текстовой строки, начиная с 0
ArrayElementIndexЭлемент массива TJ, начиная с 0, или -1 для прямого операнда строки
SourceByteOffsetСмещение в декодированном строковом значении, начиная с 0, или -1, когда безопасно адресуемый диапазон отсутствует
SourceByteLengthЧисло закодированных исходных байтов для исходного глифа или 0, когда безопасно адресуемый диапазон отсутствует
FlagsПобитовые флаги расположения в содержимом, общие с GetTextBlockCharContentLocation

Возвращаемые значения

1Запись расположения возвращена, включая синтетические записи и записи только для чтения
0Дескриптор, индекс блока или индекс символа недопустим

Примечания

Расположения Direct Access диагностические и доступны только для чтения, поскольку ReplaceTextBlockCharSourceBytes работает с выбранным редактируемым документом

Смещения адресуют декодированные байты строки в кодировке шрифта, а не текст Unicode

Данные расположения остаются доступными в списке текстовых блоков после закрытия дескриптора файла Direct Access

Дополнительные символы и развертки лигатур могут возвращать один и тот же диапазон источника для более чем одной позиции UTF-16