Документация PDFiumPas

Language Свойство

Эта запись API сохраняет идентификаторы, сигнатуры, блоки кода и термины PDF в исходном виде
Компонент: TPdf  ·  Модуль: PDFium
Natural language identifier declared in the document catalog.

Синтаксис

property Language: WString; // read / write

Описание

Language читает и записывает запись /Lang в словаре каталога документа (раздел 14.9.2 спецификации PDF 1.7). Строка следует синтаксису языкового тега RFC 3066 / BCP 47 — допустимы значения вроде en, en-US, zh-Hans, ja-JP и т.д. Экранные дикторы и средства доступности (PDF/UA, JAWS, NVDA) используют этот тег, чтобы выбрать правильный движок произношения при чтении размеченного текста вслух

Возвращает пустую строку, когда Active равно False или когда документ не объявляет /Lang. Присваивание нового значения сразу обновляет каталог, но изменение сохраняется только при следующем вызове SaveToFile / SaveToStream. Переопределения языка на уровне отдельных текстовых фрагментов (заданные через запись /Lang в словаре структурного элемента) этим свойством не показываются

Language не зависит от кодировки, используемой для текстового содержимого — PDFium всегда декодирует символьные данные в UTF-16 независимо от языка. Этот тег является только метаданными и главным образом полезен для размеченных / PDF-UA доступных документов и для индексирующих систем, которые направляют извлеченный текст в языковые токенизаторы

Примечания

Пример

if Pdf1.Language = '' then
begin
  Pdf1.Language := 'en-US';
  Pdf1.SaveToFile('tagged.pdf');
end
else
  Label1.Caption := 'Document language: ' + Pdf1.Language;

См. также

IsTagged, MetaText, Title, StructureElements