Workflows Linux natifs HTML, édition, OCR et archivage

L'ABI de callbacks Linux native accepte html.import, text.draw, ocr et pdfa.convert avec schemaVersion 1 et les budgets existants de sortie, de résultats, d'octets de travail et de pixels

Import HTML

{"schemaVersion":1,"type":"html.import","html":"<h1>Invoice</h1><p>Searchable Unicode</p>","createAcroForms":true}

L'import HTML fonctionne sur un handle vide et utilise le moteur de mise en page HTML5/CSS partagé avec un canvas de dessin natif, le matching Fontconfig, des polices TrueType Unicode embarquées, le shaping HarfBuzz/FriBidi, des ressources PNG/JPEG/BMP/GIF, des masques alpha, des hyperliens, la pagination et des contrôles AcroForm

L'ABI accepte les ressources de données inline ; elle n'installe pas de callback de ressources réseau ou de fichiers, tandis que les appelants Pascal peuvent fournir le callback d'importer existant pour des ressources explicites de polices, d'images et de feuilles de style

Les pageWidth et pageHeight optionnels utilisent des points ; maxPages et maxLayoutOperations doivent être positifs, et les allocations DOM, CSS, de ressources et d'images suivent aussi le budget de l'opération

Édition de texte de page

{"schemaVersion":1,"type":"text.draw","page":0,"text":"Searchable Unicode","left":36,"bottom":36,"right":559,"top":108,"fontFamily":"DejaVu Sans","fontSize":12,"invisible":true}

L'insertion préserve les streams de pages d'origine, y compris les tableaux de contenu référencés indirectement, et ajoute une apparence de formulaire Unicode embarquée avec un nom de ressource privé ; le texte invisible utilise le mode de rendu 3 et reste cherchable

Les coordonnées sont des points d'espace utilisateur PDF non pivotés ; characterSpacing et wordSpacing utilisent des points, et les remplacements AES-256 authentifiés conservent le chiffrement, les mots de passe et les permissions

L'API Pascal AppendPageText accepte en outre une rotation d'apparence d'un quart de tour et un ajustement explicite au rectangle

OCR réel

{"schemaVersion":1,"type":"ocr","pages":[0],"language":"eng","dpi":216,"searchLayer":true,"maxMilliseconds":120000}

L'OCR rend les pixels réels des pages et invoque directement l'exécutable Tesseract installé avec un vecteur d'arguments, lit des mots TSV bornés, valide l'UTF-8, les confiances et les coordonnées de page, et remappe la géométrie de pages pivotées/rognées vers les coordonnées PDF

Le résultat inclut les mots par page avec texte, confiance, left, bottom, right et top ; searchLayer false retourne les données de reconnaissance, tandis que true émet aussi un PDF avec du texte invisible ajusté à police embarquée

Le tesseractPath optionnel sélectionne un exécutable explicite ; maxWords, minimumConfidence et maxMilliseconds bornent la reconnaissance, et une annulation ou un timeout termine et récupère le processus en cours

Sortie raster PDF/A-4 native

{"schemaVersion":1,"type":"pdfa.convert","profile":"PDF/A-4","dpi":144}

La conversion raster native rédige de nouvelles pages PDF 2.0 non chiffrées avec rotation de pages cuite, XMP PDF/A-4, identifiants de document et un output intent sRGB embarqué généré ; l'acceptation actuelle inclut une validation veraPDF indépendante avec zéro règle et vérification en échec

La sortie rastérise le texte et les vecteurs d'origine, aplatit les apparences visibles, remplace les métadonnées sources et abandonne les champs interactifs, actions, pièces jointes et signatures ; le résultat rapporte rasterized, removedFormFields et removedSignatures

Les entrées signées exigent un allowSignatureInvalidation true explicite ; les annotations visibles ont besoin d'apparences normal utilisables avant l'aplatissement, et la préservation native de texte/vecteurs fournit un mode de conversion cherchable avec une validation authentique

La réparation explicite de polices d'archivage embarque les substituts disponibles via une normalisation Ghostscript bornée, conserve le texte cherchable et les vecteurs, et valide le PDF/A-4 avant publication

Publication et runtimes

Toute sortie binaire est préparée avant les callbacks ; un document généré ou édité remplace le handle uniquement après le succès des callbacks de sortie et JSON, et les échecs préservent le contexte précédent

Le HTML natif exige les lecteurs d'images FCL, Fontconfig, des polices TrueType Unicode installées, HarfBuzz et FriBidi ; l'OCR exige en outre Tesseract et des données de langue entraînées, et la génération de profils d'archivage exige Little CMS 2

ABI de callbacks · Canvas de dessin natif · API OCR Pascal · API d'archivage Pascal

Ajouter les pages sélectionnées et valider la sortie PDF/A-4 préservant texte/vecteurs