Appearances portátiles de contraseñas XFA
Unit: HPDFXFAHeadless
HPDFXFAWriteHeadlessPDF consume los campos XFA passwordEdit como widgets de texto nativos con el flag de contraseña PDF y una appearance enmascarada de fuente incrustada en Windows y Linux
La appearance contiene un asterisco por cada valor escalar Unicode: un carácter suplementario representado por un par surrogate UTF-16 produce un asterisco, mientras que los signos combinantes y ZWJ aportan cada uno su propio asterisco
El /V nativo retiene el valor Unicode completo del autor; el enmascaramiento de la appearance no proporciona cifrado ni elimina ese valor del PDF
Por ejemplo, A😀B produce tres asteriscos, y é produce dos porque el acento combinante es un escalar separado
Límites y cancelación
El adaptador comprueba la cancelación mientras cuenta los escalares y comprueba el presupuesto agregado de glifos restante antes de asignar la cadena de máscara
TXFAHeadlessPDFResult.GlyphUnits cuenta los asteriscos realmente generados para las appearances de contraseñas; la contabilidad UTF-16 existente para texto ordinario y los demás consumidores de appearances no cambia
Dos caracteres suplementarios caben en un presupuesto MaxGlyphs restante de dos; un presupuesto de uno falla antes de asignar la máscara
El valor original sigue sujeto a los límites de entrada y de bytes de objetos, y todos los campos comparten el presupuesto agregado de appearances
Los fallos de preparación, presupuesto y cancelación dejan la posición de destino, la longitud y los bytes existentes del llamador sin cambios; los errores de escritura en destino siguen el comportamiento de escritura parcial del propio stream
Verificación
Tests/Linux/XFAHeadlessPasswordTests.pas y los runners de contraseñas de Windows y Linux verifican presupuestos exactos, límites de cancelación, preservación de streams y comportamiento de reintentos
El verificador independiente comprueba los valores nativos, flags, secuencias CID reales del AP, ToUnicode e IDs de glifos incrustados, y luego renderiza y extrae los PDFs guardados con MuPDF
La creación automática XFA describe los demás consumidores nativos de campos y dibujo