Intercambio FDF de anotaciones nativo

El intercambio binario FDF de anotaciones preserva los grafos de objetos PDF en lugar de mapear cada anotación a un vocabulario XML fijo

Use ExportAnnotationsFDF para producir bytes FDF y SaveAnnotationsFDFToFile para preparar una revisión incremental de PDF independiente

Grafos y recursos de apariencia

El grafo retiene nombres, tokens numéricos exactos, bytes de cadenas literales y hexadecimales, arreglos, diccionarios, referencias indirectas y bytes de streams

Los estados de apariencia de anotaciones, selecciones AS, fuentes e imágenes compartidas y streams RO de Redact retienen su topología de referencias compartidas; los números de objeto de salida y la serialización pueden cambiar

Las longitudes de stream se regeneran a partir de los bytes retenidos al codificar; las longitudes de origen indirectas se resuelven durante la decodificación y se verifican antes de publicar

Los arreglos de destino GoTo locales explícitos en A, los eventos AA admitidos y las cadenas Next se remapean en su contexto de acción real a los objetos de página del documento de destino; un diccionario en otra parte de un grafo de recursos no se trata como acción solo porque sus claves se parezcan a una

El intercambio preserva los datos de acción sin ejecutar scripts, seguir referencias a archivos externos, navegar destinos ni aplicar redacciones

Comportamiento de import

Los valores FDF Page son índices de página base cero y deben identificar páginas del documento cargado

Un NM no vacío coincidente en la misma página identifica una anotación existente para reemplazar; una anotación sin nombre o sin coincidencia se añade, y los nombres ambiguos fallan antes de publicar

Los imports de anotaciones semánticamente sin cambios devuelven cero; la publicación no-op exacta y la recuperación de callbacks forman parte del contrato de aceptación

El método de guardado nativo deja el documento cargado sin cambios tanto tras el éxito como tras la falla; cargue el PDF guardado para adoptar su nueva revisión

Permisos y límites

Export requiere permiso de extracción, mientras que los cambios reales de anotaciones requieren permiso de anotaciones y admisión autenticada de la política de firmas

La certificación P1 y P2 impiden cambios de anotaciones; las revisiones P3 permitidas preservan los bytes firmados originales, con permisos de entrada cifrada y políticas de bloqueo de campos evaluados contra el documento real

THPDFFDFOptions acota bytes, nodos, objetos, profundidad, conteo de anotaciones y almacenamiento de trabajo de forma independiente, con cancelación cooperativa durante parsing, preparación y salida

Un guardado fallido o cancelado preserva el archivo de destino y el grafo cargado; los clientes de callback también retienen su último documento confirmado cuando falla la publicación de salida o resultado

Los límites

Link, Movie, Widget, PrinterMark, Screen y TrapNet quedan excluidos del perfil estándar FDF Annots

Los imports solo de anotaciones rechazan Fields no vacíos y Differences de documentos incrustados en lugar de descartar silenciosamente sus efectos

La sintaxis arbitraria de contenedores de apariencia XFDF, el borrado de anotaciones, el procesamiento de archivos FDF incrustados y la aplicación de revisiones de documentos incrustadas siguen siendo trabajo separado

El transporte de apariencias preserva los recursos AP suministrados; no sintetiza una apariencia faltante ni ejecuta la acción de una anotación

Para el perfil XML consulte el intercambio XFDF mapeado y para la API de grafo independiente THPDFFDFAnnotationGraph

Eliminación explícita de anotaciones

La eliminación de anotaciones por página y nombre es una operación separada; omitir una anotación del FDF o XFDF importado no la borra

El borrado del árbol de campos Widget y el borrado seguro requieren operaciones separadas; la eliminación incremental retiene los bytes PDF previos