Показать сообщение отдельно
Старый 14.12.2010, 11:55   #1  
Mileyko is offline
Mileyko
Участник
 
39 / 19 (1) ++
Регистрация: 05.10.2008
Адрес: Новосибирск
Вставить программно изображение в word-документ
Возможно, кому-нибудь будет полезна функция вставки изображения из файла в word-документ. Лично я не смог найти какую-нибудь тему или решение этой проблемы на форуме. Если у кого-то будут вопросы, пожалуйста, задавайте.

X++:
public void VTHm_InsertImage(str _bookmark, str _fileName)
Здесь,
_bookmark – Название закладки в word-документе
_fileName – Имя файла изображения

Собственно, код:

X++:
public void VTHm_InsertImage(str _bookmark, str _fileName)
{
    #define.InsImgSub("VTHm_InsImg")
    COM vbMdl;
    COM vbCode;
    COM vbp;
    COM vbc;
    ;
    if (!m_comApplication)
    {
        throw error(strfmt("@GEE6406", this.getApplicationName()));
    }
    if (!m_comDocument)
    {
        throw error(strfmt("@GEE6401", this.getApplicationName()));
    }
    vbp = m_comDocument.VBProject();
    vbc = vbp.VBComponents();
    vbMdl = vbc.Add(1);
    vbCode = vbmdl.CodeModule();
    vbCode.InsertLines(vbCode.CountOfLines() + 1, strFmt('Sub %1()', #InsImgSub));
    vbCode.InsertLines(
            vbCode.CountOfLines() + 1
            , strFmt(
                'ActiveDocument.Bookmarks.Item("%1").Range.InlineShapes.AddPicture ("%2")'
                , _bookmark
                , _fileName
                )
            );
    vbcode.InsertLines(vbCode.CountOfLines() + 1, 'End Sub');
    m_comApplication.Run(#InsImgSub);
}
За это сообщение автора поблагодарили: George Nordic (2), S.Kuskov (1), Artoodeetoo (1).