GetRangeSourceDataAvailability

Gestión de documentos, carga progresiva, diagnóstico

Descripción

Determina si el PDF seleccionado respaldado por retrollamadas tiene todos los bytes necesarios para procesar una página, el formulario interactivo o un grafo de dependencias de objetos indirectos

Sintaxis

Delphi

Function TPDFlib.GetRangeSourceDataAvailability(DataKind, Index: Integer;
  Out Report: WideString): Integer;

Parámetros

DataKindPDF_RANGE_DATA_PAGE, PDF_RANGE_DATA_FORM o PDF_RANGE_DATA_OBJECT
IndexUn número de página basado en uno, cero para la consulta del formulario, o un número de objeto indirecto
ReportRecibe un informe JSON de dependencias y de rango de bytes

Valores devueltos

PDF_RANGE_DATA_ERROR (-1)Los argumentos, la fuente o la estructura del PDF no son válidos; examine LastErrorCode y Report
PDF_RANGE_DATA_NOT_AVAILABLE (0)Al menos un rango requerido aún no está disponible
PDF_RANGE_DATA_AVAILABLE (1)El grafo de dependencias completo está disponible
PDF_RANGE_DATA_NOT_PRESENT (2)La consulta del formulario terminó y el documento no tiene AcroForm

Campos del informe

scope, index, status, availableIdentifican la consulta y resumen su resultado
dependencyGraphCompleteIndica si se inspeccionó cada dependencia alcanzable
requestedObjects, resolvedObjects, traversedObjectsContadores de resolución de objetos para diagnóstico y planificación
requiredBytes, missingBytesTotales de bytes deduplicados después de fusionar los rangos superpuestos
requiredRanges, missingRangesMatrices de desplazamientos de origen start y end inclusivos
errorUn error estructural o de argumento opcional legible por máquina

Observaciones

La consulta de página sigue solo la ruta del árbol de páginas de destino, los recursos de página, los flujos de contenido, las anotaciones y los atributos de página heredadosLa consulta de formulario recorre las dependencias de

La consulta de formulario recorre las dependencias de AcroForm y exige que Index sea cero

La consulta de objetos empieza en el número de objeto de referencia cruzada suministrado y sigue las referencias indirectas alcanzables evitando los aristas de retorno al padre

Los rangos que faltan nunca se leen; los rangos notificados como disponibles pueden analizarse y añadirse a la caché por rangos de bytes

El número de objetos y la profundidad de dependencias están acotados para rechazar estructuras hostiles o cíclicas de forma predecible