Método THPDFHeadlessDocument.SaveAnnotationRemovalsToFile

function SaveAnnotationRemovalsToFile(const FileName: string;
  const Identities: array of THPDFHeadlessAnnotationIdentity;
  const Options: THPDFHeadlessAnnotationRemovalOptions): Integer;

Prepara eliminaciones de anotaciones de página desde la fuente cargada actualmente y publica atómicamente un PDF separado en FileName

Identities selecciona anotaciones por índices de página válidos base cero y valores NM Unicode decodificados exactos; Options suministra límites de recursos positivos y cancelación compartida opcional

El valor de retorno cuenta cada anotación eliminada una vez, incluidas las dependencias de popup y respuesta; puede superar el número de identidades solicitadas

Una solicitud vacía o identidades válidas sin coincidencia devuelven cero y publican los bytes de fuente actuales exactos; identidades duplicadas, nombres seleccionados ambiguos y propietarios de anotaciones compartidos fallan

Eliminar un propietario elimina transitivamente los popups y respuestas dependientes, con manejo finito de ciclos; eliminar solo su popup limpia el enlace Popup del propietario retenido

Un Widget seleccionado o dependiente lanza hdFieldTypeUnsupported porque la eliminación del árbol de campos es una transacción separada

Estado y publicación

El documento cargado permanece sin cambios tanto tras el éxito como tras la falla; recargue el PDF publicado para adoptar una revisión cambiada

Una salida cambiada es una revisión incremental que retiene el prefijo del archivo original; cero cambios produce una copia exacta, y esta operación no borra de forma segura las revisiones antiguas

La ruta de salida no debe ser un alias de la fuente cargada; la falla de asignación, la entrada inválida, el rechazo de política, el agotamiento del presupuesto y la cancelación preservan el destino existente

Política y diagnósticos

Los cambios reales requieren permiso de anotaciones de documento cifrado y admisión autenticada de la política de documentos firmados; la certificación P1/P2 rechaza cambios, mientras que los cambios P3 admitidos retienen los rangos de bytes firmados originales

Identidades inválidas y propiedad malformed reportan hdInvalidDocument; el agotamiento de recursos reporta hdLimitExceeded; la selección de Widget reporta hdFieldTypeUnsupported

Las fallas de seguridad, firma y cancelación retienen sus contratos nativos de diagnóstico existentes; configure los requisitos de confianza y timestamps mediante las opciones de política de firmas del documento

Consulte THPDFHeadlessAnnotationIdentity, THPDFHeadlessAnnotationRemovalOptions y la eliminación nativa de anotaciones