property Language: WString; // read / write
Language lee y escribe la entrada /Lang del catalog del documento
(sección 14.9.2 de la especificación PDF 1.7). La cadena sigue la sintaxis de etiqueta de
idioma RFC 3066 / BCP 47 — en, en-US, zh-Hans,
ja-JP, etc. Los lectores de pantalla y las herramientas de accesibilidad
(PDF/UA, JAWS, NVDA) usan esta etiqueta para elegir el motor de pronunciación correcto al
leer en voz alta texto etiquetado.
Devuelve una cadena vacía cuando Active es False o cuando el
documento no declara /Lang. Asignar un valor nuevo actualiza el catalog de
inmediato, pero el cambio solo se persiste con la próxima llamada a SaveToFile /
SaveToStream. Las anulaciones de idioma a nivel de tramo en elementos de
estructura de texto individuales (establecidas mediante la entrada /Lang en un
diccionario de elemento de estructura) no se exponen en esta propiedad.
Language es independiente de la codificación usada para el contenido de texto — PDFium siempre decodifica los datos de caracteres a UTF-16, independientemente del idioma. La etiqueta es puramente un metadato, relevante sobre todo para documentos etiquetados / accesibles PDF-UA y para los motores de indexación que enrutan el texto extraído a través de tokenizadores específicos del idioma.
/Lang válida. Establecer Language es una corrección de una línea al validar
un PDF etiquetado.IsTagged para detectar si el documento anuncia un árbol de
accesibilidad.en-US, no EN-us). PDFium Delphi Component conserva
la capitalización tal cual.
if Pdf1.Language = '' then
begin
Pdf1.Language := 'en-US';
Pdf1.SaveToFile('tagged.pdf');
end
else
Label1.Caption := 'Document language: ' + Pdf1.Language;