Вставить изображение в файл Word в ASP - PullRequest
0 голосов
/ 28 января 2011

Я пытаюсь автоматически создать какой-нибудь файл слова на сервере, используя ASP Classic.Он работает нормально, но единственная проблема заключается в том, что когда я загружаю файлы, в них нет изображения, вместо этого я получаю нечто вроде заполнителя.Вот мой код:

set fso = createobject("scripting.filesystemobject")Set act = fso.CreateTextFile(server.mappath("/") & file_being_created, true)

act.WriteLine("<html xmlns:v=""urn:schemas-microsoft-com:vml""")act.WriteLine("xmlns:o=""urn:schemas-microsoft-com:office:office""")act.WriteLine("xmlns:w=""urn:schemas-microsoft-com:office:word""")act.WriteLine("xmlns:m=""http://schemas.microsoft.com/office/2004/12/omml""")act.WriteLine("xmlns:css=""http://macVmlSchemaUri"" xmlns=""http://www.w3.org/TR/REC-html40"">")act.WriteLine("<title>testing</title>")act.WriteLine("<body> " )act.WriteLine("<img src='http://mysite.com/images/pic.jpg' width='800' height='200'/><br />" )act.WriteLine(rsInvoices("invoiceClientID") & "<br />" )act.WriteLine(rsInvoices("invoiceNumber") )act.WriteLine("</body></html>")"act.close

Есть идея добавить картинку в файл слова?Заранее спасибо.

1 Ответ

2 голосов
/ 29 января 2011

Хорошо, чтобы получить ответ, я создал новый документ Word (с помощью Word 2010), вставил картинку с моего жесткого диска, а затем сохранил файл как файл HTML.Затем я посмотрел на получившуюся страницу и попытался разобраться в том, что делал Word.Я обнаружил, что в дополнение к тегу HTML <img> Word также создал элемент <v:shape>, скрытый условным комментарием .Вот то, что я придумал на основе вашего примера:

<!--[if gte vml 1]>
<v:shape id="Picture1" style="width:800px;height:200px;">
 <v:imagedata src="http://mysite.com/images/pic.jpg"/>
</v:shape>
<![endif]-->
<![if !vml]>
<img src='http://mysite.com/images/pic.jpg' width='800' height='200' v:shapes="Picture1"/>
<![endif]>

Если вы используете этот файл как файл .doc, вы можете сэкономить место и дублирование, включив только элемент <v:shape> и оставивиз условных комментариев.

<v:shape id="Picture1" style="width:800px;height:200px;">
 <v:imagedata src="http://mysite.com/images/pic.jpg"/>
</v:shape>
...