I’m currently creating a Word document by generating HTML and changing the header information to display as a .doc file. It’s a poor man’s method, but it works just fine (until now).
I was just asked to include an image in the file. My best idea was to base64 embed the image. This works fine in a browser, however Word just gives me a box with an X in it.
Suggestions on how I can embed an image into this file and have it display in Microsoft Word?
asked Feb 24, 2010 at 21:56
St. John JohnsonSt. John Johnson
6,5807 gold badges35 silver badges56 bronze badges
5
That’s a tough one, Word isn’t able to handle data:
base64 encoded images in HTML, at least that’s the outcome in this question and this MSDN discussion.
You have three options:
-
Create a folder in the location of the document, store it alongside the document, and reference images relatively (
<img src='imageFolder/image1.jpg'>
) -
Work with absolute URLs or file paths (even more sucky)
-
Look into the new Word > 2003 XML based file format(s), it is definitely possible there.
The only other option I can think of is actually creating a native Word file, e.g. using OpenOffice.
answered Feb 24, 2010 at 22:12
3
I just achieved this by printing the DOCX to PDF then using Acrobat to Save As to HTML. Images showed up small, but there.
answered Jun 4, 2017 at 16:23
0 / 0 / 0 Регистрация: 05.12.2015 Сообщений: 133 |
|
1 |
|
30.11.2022, 01:24. Показов 293. Ответов 3
Сохранил из интернета html страницу с картинками, открыл html в Word-е (2007): правый клик мышки -> открыть при помощи -> MS Word. Страница открылась, текст и картинки в порядке, немного подредактировал, сохранил в формате *.docx. Через некоторое время переоткрыл docx (возможно к этому времени перенес файл в другую папку) и обнаружил вместо картинок только пустые прямоугольники, внутри которых надпись: Нашел в интернете вот такую статью с похожими симптомами «A picture or an object may not appear in a Word 2010 or Word 2007 document», но в моем Word-е судя по всему все опции выбраны как надо. Когда-то давным-давно уже сталкивался с подобным, но каким было решение уже не помню.
0 |
489 / 252 / 97 Регистрация: 04.11.2022 Сообщений: 378 |
|
30.11.2022, 09:38 |
2 |
Сообщение было отмечено atztek как решение Решение
к этому времени перенес файл в другую папку Вот поэтому. Картинки-то «linked», т.е. в документе хранились не картинки, а ссылки на них.
1 |
0 / 0 / 0 Регистрация: 05.12.2015 Сообщений: 133 |
|
30.11.2022, 10:31 [ТС] |
3 |
Вот поэтому. Картинки-то «linked», т.е. в документе хранились не картинки, а ссылки на них. Все верно, все картинки оказались с линками. 1. Нет способа, который позволил бы восстановить картинки по линкам автоматически (в уже имеющихся документах), а потом разорвать их=линки? 2. При создании новых документов линки надо сразу (пока картинки видны в документе) разрывать со включенной опцией «Save picture in document»? И еще — они в той статье переписывают .docx в .doc версии 97-2003 — не знаете с какой целью это делается?
0 |
0 / 0 / 0 Регистрация: 05.12.2015 Сообщений: 133 |
|
01.12.2022, 20:30 [ТС] |
4 |
Вроде разобрался в сути проблемы. Чтобы избежать проблемы необходимо сохранить картинки в документе. решение , которое точно работает и которое сейчас оказалось под рукой: Question: How do you permanently embed linked images so they stay with the document when you move it? Answer: While you can do this manually for each image (Ctrl+Shift+F9) or with a macro, there’s a much quicker way. Press Ctrl+A to select the entire document. Word 2007 There’s an issue with *.docx files and this function, so you have to save the document as a *.doc file first, then do these steps: Press Ctrl+A to select the entire document. Done! You can now send your document to someone else without sending all the images as separate files, or without the recipient opening the document to discover only red crosses where the images were.
0 |
Я пытаюсь добавить изображение в сгенерированный документ html word, встроенный в классическую страницу ASP. Код выглядит примерно так:
<%
Response.ContentType = "application/msword"
%>
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word">
...
<v:shape id="_x0000_s1030" type="#_x0000_t75" style='position:absolute;
left:0;text-align:left;margin-left:0;margin-top:17.95pt;width:7in;height:116.85pt;
z-index:2;mso-position-horizontal:center;mso-position-horizontal-relative:page;
mso-position-vertical-relative:page'>
<v:imagedata src="http://xxx/image001.gif" o:title="image001"/>
<w:wrap anchorx="page" anchory="page"/>
<w:anchorlock/>
</v:shape><![endif]--><![if !vml]><span style='mso-ignore:vglayout;position:
absolute;z-index:0;left:0px;margin-left:0px;margin-top:24px;width:672px;
height:156px'><img width=672 height=156
src="http://xxx/image001.gif" v:shapes="_x0000_s1030"></span><![endif]>
URL-адрес изображения верен и может просматриваться через браузер, однако, когда документ слова открывается, изображение имеет красный x с сообщением об ошибке:
Изображение не может быть отображено. Ваш компьютера может не хватить памяти для откройте изображение, или изображение может быть поврежден. Перезагрузите компьютер и затем снова откройте файл. Если красный x все еще появляется, возможно, вам придется удалить изображение, а затем снова вставьте его.
Если я скопирую код html и попытаюсь открыть документ на моем локальном компьютере, он правильно отобразит изображение. Он просто не работает при извлечении документа с сервера. Это происходит для любых изображений, которые я пытаюсь добавить. Есть ли другой способ добавить изображения в html-сгенерированные текстовые документы, которые могут быть выведены на странице asp?
Спасибо.
Update:
Что-то, что я заметил, это то, что при копировании кода слова doc с страницы asp, вставки его в файл и переименования в качестве слова doc, я получаю это приглашение при его открытии:
Некоторые из файлов на этой веб-странице не находятся в ожидаемом месте. Вы все равно хотите их загрузить? Если вы уверены, что веб-страница из надежного источника, нажмите «Да».
Если я нажму «Да», изображение отобразится нормально, если я нажму «Нет», я получаю ту же ошибку, что и описанную выше. Я думаю, что из-за того, что слово doc происходит с ASP-страницы, он не выполняет настройку безопасности, чтобы не отображать внешние элементы. Я попытался добавить URL-адрес сайта (это локальный сайт интрасети) на мои надежные сайты и в качестве надежного места в слове, но все равно не повезло.
Расскажем, что делать если картинка в тегах html не хочет отображаться…
Причин почему может не выводиться картинка в html довольно много. Рассмотрим самые частые ошибки синтаксиса.
[adace-ad id=»5173″]
Ошибка N1
Нарушен синтаксис атрибута src (написан как scr) тэга img. Явление этого сегодня довольно редкое, так как HTML-документы, как правило, пишутся в специализированных редакторах, которые подсвечивают правильно введённые тэги, атрибуты, спецсимволы. В комплексных средах разработки (DreamViever) подобная ошибка невозможна в принципе.
Ошибка №2
Почему не отображается картинка в html? Возможно синтаксис тега img и его атрибутов правильный, но неверно указано имя файла изображения.
Операционные системы по умолчанию скрывают расширение файла и поэтому картинка с именем picture.jpg.png в проводнике и диалоговых окнах открытия отображается как picture.jpg
Для исключения подобной ошибки необходимо в свойствах папки активировать показ расширения файлов.
Ошибка №3
Не верно указан полный путь к изображению в атрибуте src. Эта ошибка возникает вследствие механического копирования пути из другого HTML документа либо иного источника.
В HTML полный путь к любому файлу указывается относительно расположения страницы с которой осуществляется вызов. Если изображение находится во внутреннем по отношению к документу каталоге путь будет выглядеть так “имя внутреннего каталога/имя изображения”. Сам файл при этом может находится в других подкаталогах
Файл может находится еще и в нескольких подкаталогах. Именно поэтому проблема почему не отображается картинка в html немного сложнее чем может показаться сначала. Так в значении атрибута src указываются все подкаталоги.
Например: фотография myphoto.jpg находится в подкаталоге photo внутреннего каталога image. Значение атрибута src в этом случае прописывается как “image/photo/myphoto.jpg”.
Если изображение находится во внешнем по отношению к документу каталоге то прописывание полного пути начинается с “../”. Например: “../image/photo/myphoto.jpg”.
Ошибка №4
В браузере с помощью которого осуществляется просмотр документа отключен вывод изображений. В этом случае, если тэг img прописан полностью, то есть указан непустой атрибут alt будет выведено его значение. Например: при alt=”Моя фотография” отобразится «Моя фотография». При пустом или опущенном атрибуте alt большинство браузеров выводит пиктограмму изображения.
Таким образом, рассмотрев все четыре ошибки, ответить почему не отображается картинка в html гораздо проще…
@edinorog
Троллей не кормить!
У пользователя возникла проблема: При копировании с любого сайта через Edge или IE в Word 2016 из под Windows 10, копируется текст, но не картинки. При копировании только картинки, картинка вставляется. В чём может быть дело?
P.S. Компьютеры в домене.
-
Вопрос заданболее трёх лет назад
-
6377 просмотров
Пригласить эксперта
MICROSOFT OFFICE | что за хрень?
MS Office не любит получать картинки не из «надёжных» источников вне компьютера. В Outlook, например, чтобы в сообщении загружались картинки источник должен быть в списке надёжных.
Ищите разницу в настройках
Попробовал копировать из Хрома в тотже хром только в Word Online и картинки копируются, жаль что это не то —
что вам нужно, может потом документ можно открыть в том же офисе как нужно
Это раскрывающийся спойлер
P.S. у меня нет офиса, но попробовал сохранить из Word Online в .docx и открыть без интернета в Word Pad и картинки копируются
Это второй раскрывающийся спойлер
Если так уж не сохраняются, то сначала делаем скриншёт, сохраняем его на комп/копировать/ вставить.
Приложению MICROSOFT.PHOTOS.EXE в Файрво́ле/Firewall Разрешить допуск в ИНЕТ.
У меня Файрво́л Agnitum Outpost 9.3 , выглядит это как на скрине.
(К сведению приложение MICROSOFT.PHOTOS.EXE у меня здесь: C:PROGRAM FILESWINDOWSAPPSMICROSOFT.WINDOWS.PHOTOS_2021.21090.10008.0_X64__8WEKYB3D8BBWE )
-
Показать ещё
Загружается…
14 апр. 2023, в 23:12
8000 руб./за проект
14 апр. 2023, в 23:01
10000 руб./за проект
14 апр. 2023, в 23:00
8000 руб./за проект