Всем привет.
Собственно, задача отлично описывается названием темы. Необходимо вставить рисунок в DOC-файл на бинарном уровне. При этом куда вставить -- неважно, допустим, в конец.
Открытая спецификация DOC есть на офсайте -- это плюс. Более того, есть даже описание того, как найти картинку:
http://msdn.microsoft.com/en-us/libr...InlinePictures. А вот на тему того как вставить картинку я ничего не нашел. Хотелось бы для начала осознать общий алгоритм действий. Понятно, что нужно разобрать поток 0Table(1Table), найти piece table, по нему найти в потоке WordDocument конец, и вставить туда символ 0x0001 (который, как я понимаю, обозначает inline-картинку). Дальше уже не так понятно. Каким образом теперь зарегистрировать эту картинку? Информация о картинках находится в OfficeArtContent, который находится в 0Table(1Table). Соответственно, нужно будет добавлять информацию туда (сил разобрать всю структуру данных OfficeArtContent у меня пока не хватило, но я на пути к успеху!). Кроме того, в FIB хранятся свойства картинок => и туда тоже нужно будет что-то добавлять. В каждом из шагов я не уверен (разве что кроме процедуры добавления символа), и каждый из шагов до конца мне не понятен. И самое главное -- что делать со смещениями? Изменятся ли они от таких манипуляций?
Буду крайне рад любой помощи по этой теме, так как вопросов очень много!
Заранее спасибо.