Interactive Document Processing
HotPDF fournit des flux de travail bornés et sans exécution pour les scripts de champs chargés, les charges utiles RichMedia, la liaison de données XFA, FormCalc et l'échange d'annotations XFDF
Calcul et validation sûrs
EvaluateLoadedFieldJavaScript lit une action de champ pour le déclencheur demandé et n'évalue que le sous-ensemble sûr documenté
AFSimple_Calculateagrège des champs nommésAFRange_Validateapplique des bornes inclusives ou exclusivesevent.value,this.getField(...).value, les littéraux typés, l'indexation de tableaux, l'arithmétique, les opérateurs unaires, de comparaison, d'égalité, logiques à court-circuit et conditionnels forment des expressions bornées- Les conversions sur liste blanche, certaines fonctions
Math, les dates UTC déterministes et les méthodes de chaînes et tableaux bornées prennent en charge la logique de formulaire courante sans moteur de script - Les fonctions, membres, instructions et constructions de script actives non pris en charge échouent en fail-closed
Inspection et assainissement RichMedia
GetLoadedRichMediaAssetCount, GetLoadedRichMediaAssetInfo et ExtractLoadedRichMediaAsset parcourent un arbre de noms de ressources RichMedia borné et exposent les octets intégrés décodés
SanitiseLoadedRichMediaAnnotations supprime les annotations RichMedia et collecte leurs objets FileSpec et EmbeddedFile désormais inaccessibles pour une réécriture complète sûre sans supprimer le contenu actif non associé
XFA SOM et FormCalc
L'aplatissement XFA accepte les instances indexées, les instances génériques, les sélecteurs de classe, les sélecteurs descendants et les racines $record, $data ou !data tout en préservant l'ordre du document
Le sous-ensemble FormCalc délimité prend en charge les agrégats mixtes scalaires et ensembles de nœuds SOM, les appels numériques et chaîne imbriqués, les helpers déterministes de sélection et de conversion, les fonctions trigonométriques et logarithmiques, ainsi que les limites documentées d’opérations, de tableaux, de profondeur, de temps écoulé et de sortie
Aller-retours d'annotations XFDF
L'import et l'export XFDF utilisent un seul mappage partagé pour les annotations Text, FreeText, Line, Square, Circle, Polygon, PolyLine, Highlight, Underline, StrikeOut, Squiggly, Stamp, Ink, Caret, FileAttachment, Sound, Redact et Link
Les dictionnaires Popup restent des enfants de leur annotation de balisage propriétaire, tandis que les données Widget et RichMedia utilisent leurs flux de travail dédiés de formulaires et de médias