Fallback de familias suministradas para campos escalares

Los campos de texto comunes, las celdas comb, las etiquetas visibles de choice, las marcas de checkbox y radio, las máscaras de password y los captions nativos de pushbutton pueden usar las mismas familias de fuentes suministradas explícitamente que el rich text, sin tocar su metadato de formulario escalar

Suministra entre una y dieciséis etiquetas configuradas distintas con sus programas TrueType regulares y habilita FallbackFontFamilies; la selección cubre graphemes completos y no usa fuentes instaladas del sistema

El wrapping, el espaciado, el shaping, el bidi, el clipping, la rotación, el sizing automático, las filas seleccionadas de lista y el comportamiento de export state existentes siguen activos; los campos comb mixtos conservan las restricciones originales de celda escalar y no aceptan shaping complejo que el perfil comb original rechaza

Las apariencias planas mixtas pueden contener Forms hijos y varias fuentes embebidas reales, así que consume el conteo de objetos devuelto en vez de asumir una apariencia fija de siete objetos

Transporte JSON y callback en Windows

{
  "schemaVersion": 1,
  "type": "forms.fill",
  "fontFamilies": ["Primary", "Serif", "Sans"],
  "fallbackFontFamilies": true,
  "fields": [
    {"name": "Plain", "value": "A\u03a9"},
    {"name": "Check", "value": "Yes"}
  ]
}

Para los jobs de Windows, suministra el archivo de fuente regular de cada familia configurada a través del objeto fonts existente; para hpdf_document_execute_json_v1, devuelve su programa regular real a través del callback de fuentes versionado y la extensión de IO existentes

El fallback con nombre explícito enruta un llenado puramente escalar por la misma transacción autenticada de candidatos que los runs tipados mixtos; las operaciones puramente escalares piden caras candidatas regulares y devuelven typedRichText=false con scalarFamilyProfile="supplied-regular-fonts-v1"

Las importaciones escalares FDF y XFDF usan la misma ruta de familias suministradas para texto, choices, checkboxes y radio buttons; los captions de pushbutton usan la API nativa de captions y no se importan como export states escalares de botón

Las importaciones y llenados escalares de Windows del mismo valor conservan su contrato no-op de solo valor y preservan los bytes comprometidos exactos, incluidos los campos de solo lectura; no comparan una configuración nueva de fuente o color con la AP existente, así que usa un setter nativo de familias para reconstruir la apariencia de forma explícita

Los runs tipados de rich originales conservan su comparación existente de estilo y apariencia; agregar el fallback escalar no cuantiza tamaños ni colores tipados ni cambia el RV autorado

Los callbacks de PDF y de resultado deben triunfar ambos antes de que una actualización de contexto se haga visible; los errores sticky de fuente e IO, la cancelación, los presupuestos, la autenticación de cifrado y las políticas de firma preservan el grafo comprometido y la salida atómica de archivo

Un choice de selección única limpiado guarda /V null y un array de índices vacío; una opción de export vacía seleccionada explícitamente retiene /V () y su índice real, de modo que los limpiados repetidos y las selecciones de valor vacío siguen siendo distintas

Un choice en blanco heredado sin índice seleccionado y sin opción de export vacía puede reconocerse como no-op de solo valor; un choice de solo lectura con una export vacía seleccionada real no se puede limpiar

Transporte JSON y callback nativo en Linux

Las operaciones versionadas de Linux aceptan las mismas opciones ordenadas fontFamilies y fallbackFontFamilies; los programas regulares se resuelven a través del entorno Fontconfig de la operación y se suministran a las APIs nativas de apariencia por familias

El texto escalar, las celdas comb, las etiquetas de choice, las marcas de checkbox y radio, las máscaras de password, los campos de selección de archivo y los captions explícitos de pushbutton usan cobertura real de graphemes completos; las importaciones escalares FDF/XFDF cargan candidatos regulares sin agregar un flag de rich text autorado ni RV

Las importaciones de solo rich retienen su unión real de estilos requeridos en vez de pedir la cara regular de cada familia, mientras que las importaciones mixtas escalares y rich agregan los candidatos regulares que exigen los campos escalares

Las importaciones por callback de Linux preservan los bytes comprometidos exactos en limpiados repetidos y no-ops del mismo valor; las políticas AES R5/R6, P1/P2/P3 y FieldMDP autenticadas, la cancelación y las fallas de publicación retienen el documento comprometido previo

Ejecuta Tests/Linux/Run-ScalarFontFallbackChecks.sh LIBRARY FIXTURES FONTS OUTPUT contra cada biblioteca de ABI nativa recién construida; Tests/Linux/HeadlessScalarFontFallback.en-us.md describe los inputs firmados genuinos, el catálogo aislado de tres fuentes y los checks independientes de glifos y CMS

Reproduce los checks de conformidad

Los runners públicos de Windows aceptan directorios explícitos de fuente, salida, fuentes, fixture escalar, fixture de limpiado y políticas firmadas genuinas; nunca consumen en silencio un directorio privado de prueba previo

Genera los documentos iniciales de cuatro campos con Tests/Linux/Build-HeadlessTypedFormFixtures.py y luego pasa su mixed.pdf a los productores de fixtures escalares y de limpiado

python Tests/CABI/BuildScalarFixtures.py work/typed/mixed.pdf work/scalar
python Tests/CABI/BuildScalarClearFixtures.py work/scalar/scalar.pdf work/clear

Suministra programas regulares genuinos llamados primary-0.ttf, DejaVuSerifCondensed.ttf y DejaVuSans.ttf; el productor de fixtures de regresión Tests/Linux/Build-HeadlessRichFontListFixtures.py prepara el subset determinista de Primary y los doce programas de estilo reales a partir de un directorio DejaVu provisto por el llamador

Genera documentos reales P1, P2, P3 y FieldMDP con Tests/Linux/Run-HeadlessTypedFormTests-Windows.ps1 y su directorio requerido de identidad de certificado y llave; sus salidas incluyen p1-signed.pdf, p2-signed.pdf, p3-signed.pdf y lock-signed.pdf

Tests/CABI/RunScalarClearNative.ps1 -SourceDirectory Lib -OutputDirectory work/native `
  -FontDirectory work/fonts -FixtureDirectory work/scalar `
  -ClearFixtureDirectory work/clear -PolicyDirectory work/signed
Tests/CABI/RunScalarClearABI.ps1 -SourceDirectory Lib -OutputDirectory work/abi `
  -FontDirectory work/fonts -FixtureDirectory work/scalar `
  -ClearFixtureDirectory work/clear -PolicyDirectory work/signed `
  -LegacyFixtureDirectory work/typed -LegacyFontDirectory work/legacy-fonts

Los parámetros de regresión heredados toman los directorios existentes de fixtures y fuentes de formularios tipados de Windows que usa Run-WindowsTypedFormChecks.ps1; los checks escalares nuevos también inspeccionan de forma independiente los programas embebidos reales, los mapas CID, los valores de formulario y los ByteRanges firmados retenidos

Los no-ops de la DLL de Windows preservan los bytes comprometidos exactos después de que ambos callbacks triunfan; la API nativa de transacciones retiene su comportamiento existente de publicación de revisión preparada mientras reporta cero campos cambiados para un no-op semántico

FDF distingue un array de selección vacío de una cadena de export vacía seleccionada; la convención existente de valor vacío de XFDF se interpreta contra la lista de opciones destino y no provee una distinción sin pérdida para todo documento con opciones de export vacía

APIs nativas

Fallback de runs de rich · Transporte de fuentes rich en Windows