W∴ Balboos, GHB
Добавление к решению 1:
Я построил класс, чтобы делать более или менее то, что вы описываете: пользовательские документы с изображениями. Мой-это управляемая база данных, поэтому DBA могут создавать документы, не учась этому. Я случайно использовал php/javascript, но это не важно.
Вот что это такое - с точки зрения того, чтобы быть полезным для решения вашей проблемы.
Создайте очень простой документ с помощью Word, например "hello world", и сохраните его в формате XML (один из вариантов). Теперь откройте это в текстовом редакторе и посмотрите, что происходит.
Вы делаете то же самое с очень простой и небольшой графикой и смотрите, как они хранятся. Я предлагаю новый документ, так как разметка редактирования (для отмены и т. д.) сохраняется до некоторой степени и будет путать анализ. Просто измените "hello world" на "Hello world", и вы увидите, что изменилось не только письмо.
Все теги и тому подобное, а их очень много, отображаются контролируемым образом. Чтобы обмануть, я скопировал информацию верхнего и нижнего колонтитулов в файлы и вставил их соответствующим образом при построении документа. Обратите внимание, что созданный XML-файл поставляется в различных вариантах, в зависимости от версии Word, которая у вас есть.
Вы обнаружите, что эти страницы генерируются очень быстро и обычно намного меньше, чем обычный двоичный формат, который Word использует для сохранения файлов.