Interactive Document Processing
HotPDF는 로드된 필드 스크립트, RichMedia 페이로드, XFA 데이터 바인딩, FormCalc, XFDF 주석 교환을 위한 상한·비실행 워크플로를 제공합니다
안전한 계산과 검증
EvaluateLoadedFieldJavaScript는 요청된 트리거의 필드 action을 읽고 문서화된 안전 subset만 평가합니다
AFSimple_Calculate는 이름 붙은 필드를 집계합니다AFRange_Validate는 포함/배타 바운드를 적용합니다event.value,this.getField(...).value, 타입화 literal, 배열 인덱싱, 산술, 단항, 비교, 동등, short-circuit 논리, 조건 연산자가 상한 식을 이룹니다- allowlist 변환, 선별
Math함수, 결정론적 UTC 날짜, 상한 문자열·배열 메서드가 스크립트 엔진 없이 흔한 폼 로직을 지원합니다 - 미지원 함수, 멤버, 문, active scripting 구문은 fail-closed 됩니다
RichMedia 검사와 sanitisation
GetLoadedRichMediaAssetCount, GetLoadedRichMediaAssetInfo, ExtractLoadedRichMediaAsset는 상한 RichMedia 자산 이름 트리를 순회하고 디코딩된 내장 바이트를 노출합니다
SanitiseLoadedRichMediaAnnotations는 RichMedia 주석을 제거하고 도달 불가가 된 FileSpec/EmbeddedFile 객체를 모아 무관한 active content를 지우지 않은 채 안전한 전체 재작성을 준비합니다
XFA SOM and FormCalc
XFA 평탄화는 문서 순서를 유지하면서 인덱스 instance, 와일드카드 instance, 클래스 선택자, 자손 선택자, $record/$data/!data 루트를 받습니다
상한 FormCalc subset은 스칼라/SOM 노드셋 혼합 aggregate, 중첩 숫자·문자열 호출, 결정론적 선택·변환 헬퍼, 삼각/로그 함수, 문서화된 operation·배열·깊이·경과 시간·출력 한도를 지원합니다
XFDF 주석 왕복
XFDF 가져오기/내보내기는 Text, FreeText, Line, Square, Circle, Polygon, PolyLine, Highlight, Underline, StrikeOut, Squiggly, Stamp, Ink, Caret, FileAttachment, Sound, Redact, Link 주석에 하나의 공유 매핑을 씁니다
팝업 딕셔너리는 소유 markup 주석의 자식으로 남고, Widget/RichMedia 데이터는 전용 폼·미디어 워크플로를 씁니다