Что такое OFD? Объяснение национального стандарта документов Китая

Определение и предыстория OFD

OFD (Open Fixed-layout Document) — это стандарт формата документа с фиксированной вёрсткой, изданный Государственным управлением по стандартизации Китайской Народной Республики, со номером стандарта GB/T 33190-2016. В отличие от PDF, созданного Adobe и впоследствии ставшего международным стандартом ISO 32000, OFD — это национальный стандарт, самостоятельно разработанный Китаем и предназначенный для решения проблемы автономного контроля в области документов с фиксированной вёрсткой.

Ключевая характеристика документа с фиксированной вёрсткой — «зафиксированный макет»: макет документа, шрифты и позиции изображений фиксируются в момент создания, и документ отображается идентично независимо от устройства, на котором он открывается. Это контрастирует с «рефлоу-документами», такими как Word и HTML, которые перестраиваются в зависимости от размера экрана, доступности шрифтов и других факторов. Документы с фиксированной вёрсткой блокируют макет, гарантируя, что вы получаете то, что видите.

Файл OFD использует XML для описания структуры документа и организован как ZIP-пакет — по сути, сжатый контейнер, содержащий несколько XML-файлов и медийных ресурсов. Он поддерживает текст, изображения, графику, подписи, печати и анимацию, а также точно сохраняет визуальный макет документа. Стандарт был продвинут к индустриализации Альянсом индустрии документов с фиксированной вёрсткой (Альянс OFD) и опубликован как национальный рекомендуемый стандарт в 2016 году.

С 2020 года OFD широко применяется в системах электронных официальных документов партийных и государственных органов, постепенно становясь стандартом де-факто для документов с фиксированной вёрсткой в государственном секторе. Сегодня файлы OFD всё чаще встречаются в таких сценариях, как электронные счета, электронные лицензии и электронные договоры. Понимание технической системы OFD стало обязательным знанием для работы с правительственными документами и взаимодействия с правительственно-корпоративными системами.


OFD vs PDF: техническое сравнение двух форматов с фиксированной вёрсткой

OFD и PDF — оба формата документов с фиксированной вёрсткой с аналогичным функциональным позиционированием — оба используются для точного сохранения макета документа и обеспечения кросс-устройственной согласованности. Однако они существенно различаются в технических системах и экосистемах. Понимание этих различий помогает выбрать правильный формат для разных сценариев.

ИзмерениеOFDPDF
Стандарт форматаКитайский национальный стандарт GB/T 33190-2016Международный стандарт ISO 32000 (происходит от Adobe)
Структура файлаXML + ZIP контейнер, открытая структураБинарно-текстовый гибрид, относительно закрытая структура
Сценарии использованияПравительственные документы, электронные лицензии, тендерыОбщие документы, договоры, отчёты, публикации
Поддерживаемые инструментыНемного, в основном отечественные инструменты, такие как Suke, FoxitЗрелая экосистема, Adobe, Foxit и множество бесплатных инструментов
Поддержка печатей/подписейНативные электронные печати, соответствие китайским криптографическим стандартамПоддерживаются цифровые подписи, китайская криптография требует дополнительной адаптации
Международное признаниеПреимущественно внутреннее использованиеПринят во всём мире

Блок-схема ниже сравнивает технические пути OFD и PDF по трём измерениям: происхождение стандарта, структура файла и экосистема приложений:

OFD document format standard structure diagram: GB/T 33190-2016 standard architecture

1. Стандарт формата

OFD — это китайский национальный стандарт с публично прозрачными техническими спецификациями. Его структура документа основана на XML, что удобно для отечественной адаптации и интеграции с китайскими криптографическими алгоритмами (SM2, SM3, SM4). PDF — международный стандарт с наиболее зрелой экосистемой и глобальным внедрением, но в секретных и правительственных сценариях существуют опасения по поводу автономного контроля. Эти два стандарта не находятся в отношениях замещения; они параллельные стандарты, отвечающие различным требованиям соответствия и областям применения.

2. Структура файла

Это самое фундаментальное техническое различие между OFD и PDF. Файл OFD по сути является ZIP-архивом, где XML внутренне описывает страницы, текст, изображения и другие элементы — чётко структурированный и легко анализируемый. PDF использует бинарно-текстовый гибридный формат, внутренне состоящий из объектов, таблиц перекрёстных ссылок и структур трейлера — относительно сложный. Для разработчиков OFD предлагает более высокую читаемость и анализируемость; для конечных пользователей визуальное представление обоих при открытии схоже.

3. Поддерживаемые инструменты

Экосистема инструментов PDF чрезвычайно богата — от бесплатных встроенных в браузер просмотрщиков до профессионального Adobe Acrobat, с инструментами редактирования, конвертации и сжатия всех видов. В сравнении с этим цепочка инструментов OFD всё ещё находится на ранней стадии развития. Количество программных приложений, способных просматривать и редактировать OFD, ограничено, а инструменты, поддерживающие сжатие OFD, ещё более редки. Это главный недостаток OFD в его текущей экосистеме.

4. Поддержка печатей и подписей

OFD нативно поддерживает электронные печати и проверку печатей в соответствии с китайскими криптографическими стандартами. Данные печати встраиваются как независимые узлы в структуру документа, отвечая требованиям аутентичности, целостности и неотказуемости в рабочих процессах официальных документов. PDF поддерживает цифровые подписи на основе системы PKI, но требует дополнительной разработки для адаптации к китайским криптографическим алгоритмам. В сценариях правительственных документов система печатей OFD более тесно соответствует отечественной криптографической инфраструктуре.


Структура файла OFD: контейнер XML + ZIP

Понимание структуры файла OFD — основа для понимания его методов сжатия и экосистемы инструментов. В отличие от бинарного формата PDF, OFD принимает архитектуру «контейнер XML + ZIP», аналогичную современным офисным документам (таким как OOXML, ODF).

Организация контейнера

Файл OFD по сути является ZIP-архивом. Изменив его расширение на .zip и распаковав, вы можете увидеть чёткую многоуровневую структуру каталогов. Самый внешний слой содержит входной файл OFD.xml, который объявляет базовую информацию документа и пути физических файлов; внутренне содержимое организовано в иерархии «Документ (Doc) — Страница — Объект».

OFD vs PDF document processing flow comparison: processing differences between two fixed-layout document formats

Слой XML-описания

OFD использует XML-файлы для описания логической структуры и содержимого страниц документа. Document.xml определяет дерево страниц, контур, метаданные и т. д. документа; каждая страница соответствует Content.xml, который описывает текст, изображения, графику, пути и другие объекты вёрстки на этой странице вместе с их координатами и стилями. Этот подход описания на основе XML приносит несколько характеристик:

  • Высокая читаемость: любой текстовый редактор может просматривать описания страниц OFD, что облегчает отладку и аудит
  • Лёгкость анализа: стандартные XML-парсеры могут читать структуру документа без специализированных бинарных парсеров
  • Хорошая расширяемость: добавление новых функций требует только расширения XML-схемы без влияния на существующие структуры

Сравнение с бинарным форматом PDF

PDF использует бинарно-текстовый гибридный формат, внутренне состоящий из пронумерованных объектов, связанных через таблицу перекрёстных ссылок (Cross-Reference Table), с трейлером в конце файла, указывающим на корневой объект. Этот дизайн имеет преимущества в компактности файла, но структура непрозрачна — обычные пользователи не могут напрямую просматривать внутреннее содержимое.

Различие между ними также очевидно на уровне сжатия: OFD уже является ZIP-контейнером, внутренние ресурсы уже прошли слой сжатия, поэтому повторное сжатие всего файла даёт ограниченный прирост — фокус оптимизации на внутренних ресурсах (изображения, шрифты). Сжатие PDF, напротив, распределено по отдельным потоковым объектам, где каждый потоковый объект может независимо выбирать свой алгоритм сжатия.


Применение OFD в правительственных документах

Продвижение OFD в государственном секторе имеет практическое обоснование. Традиционные правительственные документы в основном бумажные, а электронная трансформация требует формата с фиксированной вёрсткой, который точно сохраняет макет, поддерживает электронные печати и соответствует национальным требованиям криптографического управления. Хотя PDF мощный, как иностранный стандарт он вызывает опасения по поводу автономного контроля в засекреченных информационных системах. OFD как национальный стандарт заполняет этот пробел.

Электронные официальные документы

Системы электронных официальных документов в партийных и государственных органах многих регионов Китая приняли OFD в качестве стандартного формата. Весь рабочий процесс — составление, проверка, подписание, распространение и архивирование — использует файлы OFD как носитель, в сочетании с китайскими криптографическими электронными печатями для обеспечения защиты от подделки и отслеживаемости. Характеристика фиксированной вёрстки OFD гарантирует, что документы сохраняют согласованный макет в различных офисных системах без ошибок форматирования из-за отсутствующих шрифтов или программных различий.

Электронные лицензии

Электронные коммерческие лицензии, свидетельства о регистрации недвижимости, электронные удостоверения личности и другие электронные лицензии постепенно мигрируют в формат OFD. Файлы OFD могут включать информацию о лицензии, фотографии владельца, электронные печати выдающего органа и поддерживать защиту от подделки. По сравнению с бумажными лицензиями, электронные лицензии OFD более удобны для онлайн-проверки и межведомственного обмена.

Электронные счета

Электронные счета в некоторых регионах приняли формат OFD. Счета OFD содержат структурированные данные, такие как коды счетов, суммы и суммы налогов, сохраняя при этом визуальный макет — удобно как для чтения человеком, так и для машинного анализа. Механизм печатей счетов OFD обеспечивает аутентичность и неотказуемость.

По мере расширения масштабов применения размер файлов OFD стал очевидной проблемой — большие объёмы отсканированных документов и встроенные в документы изображения печатей в высоком разрешении приводят к тому, что официальные документы достигают десятков МБ, создавая нагрузку на хранение и передачу и порождая спрос на сжатие OFD.


Методы сжатия OFD

Принцип сжатия OFD очень похож на сжатие PDF — суть заключается в оптимизации частей, занимающих больше всего места в файле. Поскольку OFD уже является ZIP-контейнером, структура файла которого прошла слой сжатия DEFLATE, ключ к сжатию OFD заключается не в добавлении ещё одного слоя сжатия, а в оптимизации внутренних ресурсов (изображений, шрифтов).

Ресамплинг изображений

Отсканированные документы и изображения печатей в файлах OFD обычно являются крупнейшими источниками размера файла. Отсканированный официальный документ может включать несколько отсканированных страниц в высоком разрешении 300 dpi, каждая по несколько МБ. Снижение разрешения изображений с высокого до разумного (например, с 300 dpi до 150 dpi) может значительно уменьшить размер с приемлемым влиянием на чтение с экрана и печать.

Ресамплинг требует баланса между разрешением и чёткостью: текстовое содержимое в правительственных документах остаётся чётко читаемым при 150 dpi, но мелкие детали точных печатей могут требовать более высокого разрешения. Разумный подход — устанавливать различные целевые разрешения в зависимости от назначения изображения.

Подстановка шрифтов

Файлы OFD встраивают полные шрифты для обеспечения согласованного отображения на разных устройствах, но документ обычно использует лишь небольшую часть символов из файла шрифта. Подстановка шрифтов сохраняет только те глифы символов, которые фактически используются в документе, отбрасывая неиспользуемые данные шрифта.

Эта техника особенно эффективна для китайских документов. Полный файл китайского шрифта обычно содержит десятки тысяч глифов китайских иероглифов и может превышать 10 МБ; однако правительственный документ может использовать только одну-две тысячи китайских иероглифов, и подстановка может сократить данные шрифта более чем на 80 %.

Очистка избыточных объектов

Пакет OFD может содержать непроцитированные ресурсы и дублирующиеся объекты: изображения, удалённые при редактировании, могут всё ещё оставаться в каталоге ресурсов, а многократное сохранение может создавать дублирующиеся метаданные. Очистка избыточных объектов заключается в обходе структуры документа для удаления всех ресурсов, на которые не ссылаются страницы, упрощая дерево структуры документа.

Оптимизация формата изображений

OFD поддерживает встраивание нескольких форматов изображений, включая несжатые битовые карты (BMP) и сжатые форматы (JPEG, PNG). Преобразование несжатых битовых карт в сжатые форматы, такие как JPEG, может напрямую уменьшить использование ресурсов изображений. Для графики печатей с большими областями сплошного цвета PNG может быть меньше JPEG; для цветных отсканированных фотографий JPEG предлагает более высокий коэффициент сжатия.

Следующий код демонстрирует, как распаковать файл OFD и проанализировать использование его внутренних ресурсов — первый шаг в оптимизации сжатия:


import zipfile
import os
from collections import defaultdict

def analyze_ofd(ofd_path):
    """Распаковать и проанализировать использование внутренних ресурсов файла OFD"""
    with zipfile.ZipFile(ofd_path, 'r') as zf:
        # Подсчитать размер каждого типа файлов
        type_sizes = defaultdict(int)
        type_counts = defaultdict(int)
        total_size = 0

        for info in zf.infolist():
            ext = os.path.splitext(info.filename)[1].lower()
            type_sizes[ext] += info.compress_size
            type_counts[ext] += 1
            total_size += info.compress_size

        print(f"Total OFD size: {total_size / 1024 / 1024:.2f} MB\n")
        print(f"{'Type':<12} {'Count':<8} {'Size(MB)':<12} {'Share'}")
        print("-" * 45)
        for ext, size in sorted(type_sizes.items(), key=lambda x: -x[1]):
            pct = size / total_size * 100
            print(f"{ext or '(none)':<12} {type_counts[ext]:<8} "
                  f"{size / 1024 / 1024:<12.2f} {pct:.1f}%")

# Пример использования
# analyze_ofd("sample.ofd")

Запуская такой скрипт анализа, вы обычно обнаружите, что более 80 % размера файла OFD приходится на ресурсы изображений (.jpg, .png, .bmp), а файлы шрифтов (.ttf, .otf) занимают второе место. Это подтверждает ключевую стратегию сжатия OFD: приоритет оптимизации изображений, затем оптимизация шрифтов.

Отсканированный официальный документ OFD размером 50 МБ после разумного ресамплинга изображений и подстановки шрифтов обычно может быть сжат до 8-12 МБ, причём текст и печати остаются чётко читаемыми — полностью отвечая требованиям правительственного документооборота и архивирования.


Текущее состояние экосистемы инструментов OFD

Хотя статус OFD как национального стандарта ясен, его экосистема инструментов далека от зрелости PDF. В настоящее время программное обеспечение, способное просматривать OFD, — это в основном отечественные инструменты, такие как читалка Suke и Foxit OFD; браузеры не поддерживают нативный предварительный просмотр OFD, а инструменты, способные сжимать OFD, ещё более редки.

Слабость экосистемы инструментов создаёт две практические проблемы. Во-первых, обычные пользователи, получающие файл OFD, могут не найти подходящий инструмент для его открытия и должны загрузить специализированную читалку. Во-вторых, когда файл OFD слишком велик, отсутствие готовых инструментов сжатия означает, что многие пользователи могут только хранить или передавать его как есть, неся затраты на хранение и пропускную способность.

С технической точки зрения открытая структура XML + ZIP OFD означает, что барьер для анализа и обработки теоретически ниже, чем у бинарного формата PDF. Отставание экосистемы инструментов — это скорее вопрос рыночного продвижения и масштаба применения, чем техническое препятствие. По мере того как приложения OFD продолжают расширяться в правительстве и финансах, ожидается, что цепочка инструментов постепенно созреет.


Сравнительная таблица: методы сжатия OFD vs PDF

Метод сжатияПрименимость OFDПрименимость PDFПримечания
Ресамплинг изображенийВысокаяВысокаяИзображения доминируют в размере обоих; снижение разрешения наиболее эффективно
Подстановка шрифтовВысокаяВысокаяОсобенно эффективно для китайских документов; может сократить данные шрифтов более чем на 80 %
Очистка избыточных объектовСредняяСредняяУдалить непроцитированные ресурсы и дубликаты, упростить структуру
Оптимизация формата изображенийВысокаяВысокаяПреобразовать битовые карты в JPEG; выбрать оптимальный формат по типу изображения
ZIP-сжатие всего файлаНизкая (уже ZIP)СредняяOFD уже ZIP-контейнер; повторное сжатие даёт мало
Сжатие потоковых объектовН/ДВысокаяСпецифично для PDF; каждый Stream может независимо выбирать сжатие

FAQ

В1: Можно ли конвертировать файлы OFD в PDF?

Да. Некоторые читалки OFD и инструменты конвертации поддерживают экспорт OFD в PDF. Однако обратите внимание, что специфичная для OFD информация, такая как электронные печати, может не полностью сохраниться при конвертации, поскольку китайская криптографическая система печатей OFD и система подписей PKI PDF не полностью соответствуют друг другу. Рекомендуется быть осторожным при конвертации в сценариях, требующих длительного архивирования или юридической силы — сделайте резервную копию перед конвертацией и проверьте статус печати конвертированного документа.

В2: Влияет ли сжатие OFD на действительность электронных печатей?

Правильное сжатие OFD оптимизирует только ресурсы, такие как изображения и шрифты, не изменяя данные печати или информацию проверки хеша документа, поэтому оно не влияет на действительность электронных печатей. Однако обратите внимание, что проверка целостности печати обычно охватывает определённые части документа — если процесс сжатия изменяет содержимое, защищённое печатью, проверка печати завершится неудачей. Рекомендуется использовать профессиональные инструменты и перепроверить статус печати после сжатия, чтобы убедиться, что юридическая действительность документа не нарушена.

В3: Нужно ли использовать OFD для обычных офисных сценариев?

Для общих деловых документов достаточно PDF. OFD в основном используется для правительственных документов, электронных лицензий и других официальных сценариев. Если вы не взаимодействуете с правительством, нет необходимости целенаправленно использовать OFD. Однако если вам нужно обмениваться электронными официальными документами с государственными учреждениями или подавать тендерные документы в формате OFD, вы должны использовать OFD. Эти два формата не находятся в отношениях замещения; выбор зависит от требований соответствия и сценариев применения.

В4: Какой из них меньше по размеру, OFD или PDF?

Однозначного ответа нет. Размер файла зависит в первую очередь от внутренних ресурсов (изображений, шрифтов), а не от самого формата контейнера. Для идентичного содержимого XML-описание OFD может быть немного больше, чем бинарное описание PDF, но оба используют сжатие, и разница обычно незначительна. Ключевые факторы, определяющие размер, — это разрешение изображений и стратегия встраивания шрифтов, а не выбор формата. Официальный документ OFD со множеством встроенных отсканированных страниц в высоком разрешении будет значительно больше, чем PDF с простым текстом, и наоборот.


Итоги

OFD и PDF — оба формата документов с фиксированной вёрсткой, но они представляют разные технические пути и экосистемы приложений:

  • OFD, как китайский национальный стандарт (GB/T 33190-2016), принимает открытую структуру контейнера XML + ZIP, нативно поддерживает китайские криптографические электронные печати и занимает стабильное положение в отечественных официальных сценариях, таких как правительственные документы, электронные лицензии и электронные счета. Его экосистема инструментов всё ещё находится на ранней стадии развития, но открытая структура обеспечивает удобство для отечественной адаптации и кастомной разработки.
  • PDF, как международный стандарт (ISO 32000), принимает бинарно-текстовый гибридный формат с наиболее зрелой экосистемой инструментов в мире и незаменим в общих офисных сценариях.

Они очень похожи в методах сжатия — суть заключается в оптимизации встроенных ресурсов изображений и шрифтов. Четыре ключевые техники сжатия OFD (ресамплинг изображений, подстановка шрифтов, очистка избыточных объектов, оптимизация формата изображений) имеют общее происхождение со сжатием PDF, поскольку принципы формирования размера документов с фиксированной вёрсткой универсальны.

Ключ к пониманию OFD — осознание его сути как «контейнера XML + ZIP»: открытой, анализируемой, легко адаптируемой архитектуры с фиксированной вёрсткой, фокус сжатия которой — как и у PDF — направлен на внутренние ресурсы, а не на сам контейнер.

Связанные статьи:

Нужно сжать файлы? Попробуйте SmartSlim

На базе собственного движка сжатия на Rust поддерживается 10 основных категорий и 40+ форматов, включая PDF/изображения/видео/Office/OFD. Локальная обработка — данные не покидают вашу инфраструктуру.