Я работаю с файлами .docx, содержащими несколько холстов для рисования со вставленными изображениями, а также некоторые линии и стрелки, нарисованные в Word 2010. Я использую формат 2010 без режима совместимости.
Word вставляет атрибут o:gfxdata
в каждый элемент v:shape
и v:group
и заполняет его чем-то в кодировке ascii. Судя по тому, что я прочитал, это может быть копия VML с описанием v:shape
или v:group
. Я не знаю, просто ли я не знаю, что искать, но я не могу определить, для чего нужны эти данные, поскольку их удаление не оказывает видимого влияния на мою способность читать или редактировать документ в Word 2003, 2007 или 2010. .
Он увеличивает размер файла document.xml почти вдвое по сравнению с (очевидным) необходимым размером. Это значительно замедляет обработку OpenTBS, поэтому я хотел бы удалить его, если возможно. Кто-нибудь знает, как сказать Word 2010 прекратить сохранение этих дополнительных данных? Или для чего это нужно? Я действительно изо всех сил пытался найти какую-либо документацию по нему, кроме этот пост.
Изменить:
Вот образец .docx. Размер document.xml составляет ~ 141 КБ, а OpenTBS в среднем 21 раз создает файл, который включает его в качестве подшаблона, за 10,35 секунды. Если я удалю все атрибуты o: ogfxdata, размер файла уменьшится до ~ 37 КБ, а OpenTBS создаст тот же файл всего за 2,99 секунды.
Изменить 2:
После дальнейшего расследования выяснилось, что удаление o: gfxdata может привести к тому, что Word 2003 с установленным более старым пакетом Compatibilty Pack возразит против файла со следующей ошибкой:
«Это предварительная версия пакета обеспечения совместимости и может открывать только файлы предварительного выпуска Office 2007. Вы хотите проверить наличие более новой версии пакета обеспечения совместимости?»
Мне удалось открыть файл, установив более новый пакет совместимости, хотя он запрашивает у пользователя информацию о несовместимости и преобразует файл, чтобы открыть его. Это не повредит моему файлу, но это то, на что нужно обратить внимание.