Нативные сценарии HTML, редактирования, OCR и архивации в Linux
Нативный колбэк-ABI Linux принимает html.import, text.draw, ocr и pdfa.convert со schemaVersion 1 и существующими бюджетами вывода, результата, рабочих байтов и пикселей
Импорт HTML
{"schemaVersion":1,"type":"html.import","html":"<h1>Invoice</h1><p>Searchable Unicode</p>","createAcroForms":true}
Импорт HTML работает на пустом дескрипторе и использует общий движок раскладки HTML5/CSS с нативным холстом рисования, сопоставлением Fontconfig, встроенными Unicode-шрифтами TrueType, шейпингом HarfBuzz/FriBidi, ресурсами PNG/JPEG/BMP/GIF, альфа-масками, гиперссылками, пагинацией и элементами управления AcroForm
ABI принимает встроенные ресурсы данных; колбэк сетевых или файловых ресурсов он не устанавливает, а вызывающие Pascal могут передать существующий колбэк импортёра для явных ресурсов шрифтов, изображений и стилей
Необязательные pageWidth и pageHeight задаются в пунктах; maxPages и maxLayoutOperations должны быть положительными, а выделения DOM, CSS, ресурсов и изображений также следуют бюджету операции
Редактирование текста страниц
{"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}
Вставка сохраняет исходные потоки страниц, включая косвенно ссылаемые массивы содержимого, и добавляет встроенный appearance формы Unicode с приватным именем ресурса; невидимый текст использует режим рендеринга 3 и остаётся доступным для поиска
Координаты — точки пользовательского пространства PDF без поворота; characterSpacing и wordSpacing задаются в пунктах, а аутентифицированные замены AES-256 сохраняют шифрование, пароли и права
Pascal-API AppendPageText дополнительно принимает поворот appearance на четверть оборота и явное вписывание в прямоугольник
Фактический OCR
{"schemaVersion":1,"type":"ocr","pages":[0],"language":"eng","dpi":216,"searchLayer":true,"maxMilliseconds":120000}
OCR отрисовывает фактические пиксели страниц и вызывает установленный исполняемый файл Tesseract напрямую с вектором аргументов, читает ограниченные слова TSV, валидирует UTF-8, confidence и координаты страниц и отображает геометрию повёрнутых/обрезанных страниц обратно в координаты PDF
Результат включает слова по страницам с текстом, confidence, left, bottom, right и top; searchLayer false возвращает данные распознавания, а true дополнительно выпускает PDF с вписанным невидимым текстом со встроенным шрифтом
Необязательный tesseractPath выбирает явный исполняемый файл; maxWords, minimumConfidence и maxMilliseconds ограничивают распознавание, а отмена или таймаут завершает и забирает запущенный процесс
Нативный растровый вывод PDF/A-4
{"schemaVersion":1,"type":"pdfa.convert","profile":"PDF/A-4","dpi":144}
Нативная растровая конвертация создаёт свежие незашифрованные страницы PDF 2.0 с запечённым поворотом страниц, XMP PDF/A-4, идентификаторами документа и сгенерированным встроенным output intent sRGB; текущая приёмка включает независимую валидацию veraPDF с нулём несработавших правил и проверок
Вывод растрирует исходный текст и векторы, уплощает видимые appearance, заменяет исходные метаданные и отбрасывает интерактивные поля, действия, вложения и подписи; результат сообщает rasterized, removedFormFields и removedSignatures
Подписанные входы требуют явного allowSignatureInvalidation true; видимым аннотациям нужен пригодный normal appearance до уплощения, а нативное сохранение текста/векторов даёт режим конвертации с сохранением поиска и подлинной валидацией
Явный ремонт шрифтов для архивации встраивает доступные замены через ограниченную нормализацию Ghostscript, сохраняет текст с поиском и векторы и валидирует PDF/A-4 до публикации
Публикация и рантаймы
Весь бинарный вывод подготавливается до колбэков; сгенерированный или отредактированный документ заменяет дескриптор только после успешных output- и JSON-колбэков, а сбои сохраняют предыдущий контекст
Нативному HTML нужны читатели изображений FCL, Fontconfig, установленные Unicode-шрифты TrueType, HarfBuzz и FriBidi; OCR дополнительно требует Tesseract и обученные языковые данные, а генерация архивного профиля — Little CMS 2
Колбэк-ABI · Нативный холст рисования · Pascal-API OCR · Pascal-API архивации
Добавление выбранных страниц и валидация PDF/A-4 с сохранением текста/векторов