GetTextBlockCharContentLocation
Texto, extracción, flujos de contenido, diagnóstico
Descripción
Devuelve la ubicación estable en el flujo de contenido y el rango de bytes de origen codificados asociados a un carácter extraído
Sintaxis
Delphi
Function TPDFlib.GetTextBlockCharContentLocation(TextBlockListID, Index,
CharIndex: Integer; Out ContentLayer, StreamObjectNumber,
StreamGeneration, InstructionIndex, OperandIndex, ArrayElementIndex,
SourceByteOffset, SourceByteLength, Flags: Integer): Integer;Parámetros
| TextBlockListID | Manejador devuelto por ExtractPageTextBlocks |
|---|---|
| Index | Índice de bloque de texto basado en uno |
| CharIndex | Posición de unidad de código UTF-16 basada en uno dentro del texto del bloque |
| ContentLayer | Capa /Contents de página basada en uno, o 0 para contenido anidado |
| StreamObjectNumber | Número de objeto del flujo contenedor, o 0 para un flujo directo |
| StreamGeneration | Número de generación del flujo contenedor |
| InstructionIndex | Índice de instrucción basado en cero en el programa de contenido decodificado |
| OperandIndex | Índice de operando de cadena de texto basado en cero |
| ArrayElementIndex | Elemento de matriz TJ basado en cero, o -1 para un operando de cadena directa |
| SourceByteOffset | Desplazamiento basado en cero dentro del valor de cadena decodificado, o -1 cuando no existe un rango direccionable de forma segura |
| SourceByteLength | Número de bytes de origen codificados del glifo de origen, o 0 cuando no existe un rango direccionable de forma segura |
| Flags | Marcadores de ubicación de contenido a nivel de bits descritos a continuación |
Valores devueltos
| 1 | Se devolvió un registro de ubicación, incluidos los registros sintéticos o de solo lectura |
|---|---|
| 0 | El manejador, el índice de bloque o el índice de carácter no es válido |
Marcadores
PDF_TEXT_CHAR_CONTENT_LOCATION_VALID | El rango de bytes identifica una cadena de contenido, sujeto a los marcadores de solo lectura que haya |
|---|---|
PDF_TEXT_CHAR_CONTENT_LOCATION_GENERATED | El carácter se generó durante la disposición y no tiene bytes de origen |
PDF_TEXT_CHAR_CONTENT_LOCATION_LIGATURE | Varias posiciones UTF-16 extraídas comparten un rango de glifo de origen |
PDF_TEXT_CHAR_CONTENT_LOCATION_ACTUALTEXT | El carácter procede de una sustitución /ActualText y es de solo lectura |
PDF_TEXT_CHAR_CONTENT_LOCATION_NESTED | El carácter procede de contenido de Form anidado y es de solo lectura |
PDF_TEXT_CHAR_CONTENT_LOCATION_CROSS_LAYER | El operando y el operador de presentación de texto cruzan capas de contenido de la página y son de solo lectura |
PDF_TEXT_CHAR_CONTENT_LOCATION_TRANSCODED | La cadena de origen se transcodificó antes del mapeo de fuentes, de modo que los desplazamientos decodificados no pueden direccionar sus bytes originales de forma segura |
Observaciones
Los desplazamientos apuntan a bytes de cadena decodificados con la codificación de la fuente, no a texto Unicode
Los caracteres suplementarios y las expansiones por ligaduras pueden devolver el mismo rango de origen para más de una posición UTF-16
Use ReplaceTextBlockCharSourceBytes solo cuando el indicador de validez está activo y ninguno de los indicadores de solo lectura está presente
La búsqueda de ubicación usa los tramos capturados en la extracción y no vuelve a analizar el contenido de la página