네이티브 Linux ABI 이름 있는 리치 폰트 패밀리

기존 V1 JSON 연산은 C 레코드, 콜백 테이블, 익스포트 심볼을 바꾸지 않고 구성된 리치 폰트 패밀리에 실제 네이티브 폰트 프로그램을 선택합니다

{"schemaVersion":1,"type":"forms.fill",
 "fontFamilies":["DejaVu Sans","DejaVu Serif Condensed"],
 "fields":[{"name":"Input","richTextRuns":[
   {"text":"Sans text "},
   {"text":"Serif text","fontFamily":"DejaVu Serif Condensed","fontStyle":"bold"}
 ]}]}

forms.fill에서 fields[i].fontFamilies가 연산 배열보다 우선합니다. 생략된 run 패밀리는 첫 구성 패밀리를 선택하고, 명시적 run 패밀리는 비어 있지 않아야 하고 구성된 레이블과 일치해야 합니다

패밀리 배열은 서로 다른 문자열 1~16개를 담고, 각 문자열은 128 UTF-16 코드 단위로 한정되며 유효한 Unicode여야 하고 제어 문자, 앞뒤 공백, 따옴표, 백슬래시, 쉼표, 세미콜론이 없어야 합니다. ASCII 문자 비교는 대소문자를 무시하고 다른 Unicode 문자는 정확히 비교합니다

비어 있지 않은 run이 쓰는 패밀리·스타일 쌍만 로드합니다. 로드된 모든 프로그램은 appearance 폰트 바이트 예산과 limits.memoryBytes의 4분의 1을 공유하며, 네이티브 폰트 회수 전후로 취소를 검사합니다

{"schemaVersion":1,"type":"forms.import","format":"xfdf",
 "fontFamilies":["DejaVu Sans","DejaVu Serif Condensed"],"fontSize":12}

FDF·XFDF 임포트에서는 연산 배열이 bounded XHTML 디코더를 구성합니다. 상속된 font-family, 지원하는 쉼표 구분 패밀리 목록, 속성별 important 우선순위가 실제 구성 프로그램을 선택하고, 모르는 CSS 목록은 첫 구성 패밀리로 폴백합니다

임포트는 scalar 필드용으로 첫 패밀리의 regular 프로그램도 로드합니다. 이름 있는 리치 응답에는 richXMLProfile=inline-xhtml-font-families-v1, 구성된 fontFamilies 레이블, 기존 집계 fontStyles 배열이 들어갑니다

배열이 없으면 기존 단일 패밀리 fontFamily와 4스타일 동작을 계속 쓸 수 있습니다. 기본 기능 프로필은 inline-xhtml-v1로 남고, formData.richXMLProfiles는 두 프로필을 나열하며 namedFontFamilies와 maxFontFamilies가 선택적 선택을 기술합니다

배포판의 네이티브 Fontconfig 프로바이더가 폰트를 공급하고 보통의 폴백을 적용할 수 있습니다. 레이블은 요청 패밀리를 식별할 뿐 설치된 폰트 파일을 보증하지 않으며, 실제 임베드 프로그램이 PDF appearance 메트릭과 글리프를 결정합니다

평문·AES R5/R6 값, XHTML, 필드 플래그, 위젯 appearance는 트랜잭션으로 준비됩니다. 취소, 잘못된 레이블, 집계 소진, 발행 콜백 하나라도 실패하면 현재 로드된 컨텍스트가 유지됩니다

동등한 임포트는 커밋된 PDF 스냅샷을 그대로 복사합니다. 순서 있는 인라인 font-family 목록은 켜져 있을 때 온전한 그래펨 폴백에 참여하고, 더 넓은 CSS 레이아웃과 외부 스타일시트는 진행 중인 작업으로 남습니다

리치 폼 임포트 · typed 리치 필드 · 네이티브 Linux C ABI

옵트인 리치 폰트 폴백은 이름 있는 패밀리 typed 채우기와 리치 FDF/XFDF 임포트에 fallbackFontFamilies를 받습니다. 엄격한 선택 패밀리 동작이 기본으로 남습니다