Вставить изображение в слово с Ironpython
Я ищу способ вставить изображение в текстовый файл в Ironpython. я понял, как заменить текст, вызвав модуль clr и добавив ссылку на microsoft.office.interop.word, однако не смог записать изображение в документ word. с чем я работал:
import sys
import clr
import System
from System import DateTime
clr.AddReference("Microsoft.Office.Interop.Word")
import Microsoft.Office.Interop.Word as Word
def doc_replace_text(source_filename, tokens, values, destination_filename):
missing = System.Type.Missing
replaceAll = Word.WdReplace.wdReplaceAll
word_application = Word.ApplicationClass()
word_application.visible = False
document = word_application.Documents.Open(source_filename)
for i in range(len(tokens)):
for r in document.StoryRanges:
print "i = %d, tokens[i] = %s, values[i] = %s" % (i, tokens[i], values[i])
r.Find.Text = tokens[i]
r.Find.Replacement.Text = values[i]
r.Find.Wrap = Word.WdFindWrap.wdFindContinue
r.Find.Execute(missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, replaceAll, missing, missing, missing, missing)
document.SaveAs(destination_filename)
document.Close()
document = None
word_application.Quit()
word_application = None
Буду признателен за любую помощь
2 ответа
Я понял это как-то...
clr.AddReference("Microsoft.Office.Interop.Word")
from Microsoft.Office.Interop.Word import ApplicationClass
word=ApplicationClass()
word.Visible=False
docPublic=word.Documents.Add()
mod=docPublic.InlineShapes.AddPicture(path+name+".jpg", False, True, docPublic.Paragraphs[1].Range)
mod.Height=200
mod.Width=300
docPublic.SaveAs(tpath+name+"_Simulation_Report_Public.docx")
docPublic.Close()
docPublic=None
word.Quit()
word=None
Однако теперь мне нужно поместить картинку в другую позицию. Я думаю, что это может быть сделано с помощью формы...
любая помощь будет отличной
редактировать: кажется, я понятия не имею, что я делаю... из msdn.microsoft.com метод AddPicture принимает значения: FileName, LinkToFile, SaveWithDocument, Left, Top, Width, Height, Anchor
Я опаздываю на вечеринку, но мне удалось поместить изображение в определенную закладку, определив имя закладки в Item, а затем ее местоположение в AddPicture.
loc = doc.Bookmarks.Item("BookMarkName").Range
pic = doc.Bookmarks.Item("BookMarkName").Range.InLineShapes.AddPicture(path+name+".jpg",False,True,loc)