Fallback för levererade rich-teckensnittsfamiljer i Windows

Windows-filjobb och hpdf_document_execute_json_v1 stöder valbar fallback bland anroparens levererade teckensnittsfamiljer för rich-importer via FDF/XFDF och ursprungliga typade rich-körningar; fallbacken väljer en familj som täcker hela grafemet, även delar som korsar rich-stilgränser

Standarden förblir strikt: fallbackFontFamilies är false och en saknad nödvändig glyph misslyckas som vanligt; att leverera en lista väljer inte tyst installerade systemteckensnitt

Typad förfrågan

{
  "schemaVersion": 1,
  "type": "forms.fill",
  "fontFamilies": ["Primary", "Sans", "Serif"],
  "fallbackFontFamilies": true,
  "fields": [{"name": "Input", "richTextRuns": [
    {"text": "A\u03a9a\u0301", "fontStyle": "regular",
     "fontFamilyCandidates": ["Unavailable", "Primary", "Serif", "Sans"]}
  ]}]
}

fontFamilies innehåller mellan en och sexton distinkta konfigurerade etiketter; ASCII-bokstäver jämförs skiftlägesneutralt och övriga Unicode-kodpunkter jämförs exakt; fontFamilies och fallbackFontFamilies på fältnivå åsidosätter operationens standardvärden för forms.fill

En typad körning kan ange mellan en och sexton ordnade fontFamilyCandidates när fallback via konfigurerade familjer är påslagen; okända namn förblir i den författade metadatan och hoppas över vid upplösning av levererade program; om fontFamily saknas blir den första konfigurerade deklarerade kandidaten körningens familj

En deklarerad kandidatlista styr preferensen före ordningen bland konfigurerade familjer; i detta exempel väljer ett Primary-teckensnitt som saknar Omega Serif före Sans när båda levererade alternativen täcker hela grafemet

Rich XML-import

För forms.import, använd egenskaperna fontFamilies och fallbackFontFamilies på operationsnivå; den begränsade XHTML-avkodaren bevarar varje inline-CSS-lista i font-family och den verkliga appearance-kompositorn tillämpar den ordningen på de levererade teckensnittsprogrammen

<span style="font-family:Primary,Serif,Sans;font-weight:bold">AΩá</span>

Både RV-strängar i FDF och value-richtext i XFDF använder denna väg; den befintliga profilen inline-xhtml-font-families-v1 är oförändrad, medan faktiskt fallback-beteende rapporteras separat

Verkliga teckensnittsbytes

Den befintliga teckensnittscallbacken i THPDFCABIFormDataOperationV1 tar emot varje kanonisk konfigurerad familjeetikett samt stilidentifierarna regular, bold, italic eller boldItalic; den returnerar den ursprungliga begränsade läs-IO-tabellen och dess bytes kopieras till ägt lagring

Filjobb läser samma familj-/stilprogram från sitt befintliga fonts-objekt; för varje använd rich-stil laddar bindningen konfigurerade kandidatprogram innan transaktionen förbereds; matchande tillgångar delas mellan typade fält

V1-layouterna för IO och operation samt befintliga exporterade symboler är oförändrade; sammanlagda budgetar för tillgångar, teckensnittsbytes, minne, fält, objekt, resultat och utmatning gäller fortsatt; callback-fel förblir klistriga och avbrottskontrollpunkter täcker parsning, laddning, förberedelse och publicering

Transaktioner och gränser

AES-autentisering, bevarande av signerad revision, DocMDP, fältlås och skrivskyddskontroller använder den befintliga autentiserade transaktionen; rich-värden, stilar, teckensnitt och appearance-semantik med samma indata kan ge en byteidentisk no-op, även för skrivskyddade fält

PDF- och JSON-callbacks måste båda lyckas innan den aktuella kontexten ändras; kassera emitterade kandidatbytes efter varje status skild från noll; filjobb förbereder hela kandidaten innan målet ersätts

formDataExchange.suppliedFamilyFallback rapporterar default=false, richOnly=true, wholeGrapheme=true, fontFamilyCandidates=true, maxCandidates=16 och candidateOrder=declared-before-configured

Denna funktion gäller rich-innehåll; vanlig fallback för skalära värden, valetiketter och knapprubriker är separata förmågor; till exempel behöver ett förstatligt teckensnitt som saknar kryssrutrubrikens glyph fortfarande ett lämpligt skalärt teckensnitt eller framtida stöd för skalär fallback

Direkt ifyllning av rich i inlästa jobb, det äldre jobbet med handtag-/teckensnittscallback-tillägg, godtycklig CSS-layout, externa stilmallar samt ytterligare FDF/XFDF-utväxling för annoteringar, filer, åtgärder eller inkrementell utväxling är separat arbete

Relaterade ämnen

Ursprunglig typad rich-ifyllning, Windows-utväxling av formulärdata, Versionerad teckensnittstransport, Nativa levererade familjer