The Web Design Group

... Making the Web accessible to all.

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> Why does "save as .mhtml" not save my images?
giomach
post Jun 21 2024, 06:31 AM
Post #1





Group: Members
Posts: 4
Joined: 19-June 21
Member No.: 27,985



This is not really a markup question, but Chrome Help Community seems to be inaccessible. I don't think the problem is confined to Chrome anyway.

The simple webpage below contains a relative url to an image. When run on my local machine, the image appears correctly.

But when I use Chrome to "save as .mhtml" the webpage, and then open the .mhtml in Chrome, the image is not found.

On examining the .mhtml, I see:
1. the relative url has been changed to the absolute url from my local machine
2. the .mhtml appears to contain the image in base64 encoding

Everything I read about saving to .mhtml tells me that it contains any images needed. Why is the image not found in my case?

Here's the webpage. To test it, copy any image of your own and name it "leachtaban.jpg".

CODE
<html>

<head>
<meta http-equiv="Content-Type" content="text/html"; charset="utf-8">
<title>Why doesn't "Save as Webpage, Single File (*.mhtml)" include the image in the saved file?</title>
</head>

<body>

<p>Here's an image.<br>
It has a relative url.<br>
It shows up when the page is opened in Chrome.<br>
But when the webpage is saved as .mhtml and reopened in Chrome the image is not found.<br>
In the source of the .mhtml, the relative url has been replaced by its absolute url on the local machine.<br>
The .mhtml file contains what appears to be the image in base64 encoding.  But it's not used.<br>
Why does that happen?  How do I prevent it?</p>

<p><img src="leachtaban.jpg" alt="leachtaban" width="400" /></p>

</body>

</html>
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
Christian J
post Jun 21 2024, 09:01 AM
Post #2


.
********

Group: WDG Moderators
Posts: 9,722
Joined: 10-August 06
Member No.: 7



QUOTE(giomach @ Jun 21 2024, 01:31 PM) *

On examining the .mhtml, I see:
1. the relative url has been changed to the absolute url from my local machine

Does the image file exist at that location?

QUOTE
The .mhtml file contains what appears to be the image in base64 encoding. But it's not used.

So it's not part of the IMG element's SRC value? How is it stored in the .mhtml file then? unsure.gif
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
pandy
post Jun 21 2024, 11:52 AM
Post #3


🌟Computer says no🌟
********

Group: WDG Moderators
Posts: 20,756
Joined: 9-August 06
Member No.: 6



As I recall MHTML never worked well with IE (the original implementer) back in the day. Haven't tried it since, but did now with Edge, saving https://htmlhelp.com/reference/ .

Viewing source of the MHTML file from Edge it looks totally normal. Same as viewing source of the real web page.

When opening it in a text editor it also looks pretty normal with the addition of a MIME header and some odd huge Meta tag. The URL to the image files are changed from root relative URLs to full URLs to the files on the server. But the images still load when offline. Don't get it. Magic?

HTML
<h2><a href=3D"https://htmlhelp.com/"><img src=3D"https://htmlhelp.com/icon=
/wdglogo.gif" width=3D"250" height=3D"74" border=3D"0" alt=3D"The Web Desig=
n Group"></a></h2>


That peculiar '3D' is added before each leading quotation mark. Don't know what that is either, looks like URL encoding gone wrong, but it can't be.

HTML
<div style=3D"float: right" class=3D"skyscraper">


So, while giomach's images don't work, mine work even though they shouldn't.

unsure.gif unsure.gif unsure.gif
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
pandy
post Jun 21 2024, 12:02 PM
Post #4


🌟Computer says no🌟
********

Group: WDG Moderators
Posts: 20,756
Joined: 9-August 06
Member No.: 6



Ah, here the images are, at the very bottom.

CODE
------MultipartBoundary--jo7rM4e84HPKQazRhckiwg12STPtxcqw2qI6ibnF7x----
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: https://htmlhelp.com/icon/wdglogo.gif

R0lGODlh+gBKAPf/AP///wgICBgYGCEhISkpKTExMTk5OUJCQkpKSlJSUlpaWmNjY2tra3Nzc3t7
e4SEhIyMjJSUlJycnKWlpa2trbW1tb29vcbGxt7e3ufn5+/v7/f3987Gxt7W1r21tca9vYyEhPfn
53Nra4R7e2NaWvfe3kpCQv/e3u/OzikhIZx7e+e1teetreecnN6EhNZ7e9Zzc9Zra85SUsY5Ob0x
McYxMcYpKb0hIaUAANZaUs5SSs5KQsYxKcYhGOeUjN6MhOeMhN57c85jWtZjWu+tpeeclO+1rdZr
Wt6Ec85KMe+llPe9rffe1vfGtf/n3vfOvf/v5//37///73OEeyFSQmOEe6WtrXuEhEJKSjE5OSkx
MSlSUjFjYzlrczFja0qElGuEjDlSWilaa1qElEKEnDlzjN7v99bn75yttXOEjFqMpc7e587n94St
xmOMpWucvXuctUJznDFae3uEjN7v/7XG1lpja0pjezFCUufv9621vc7e78bW58be96W91py1zrXW
96XG54SlxoSt1mOEpVp7nDlSazlae2OErVJznEprlEJjjEpzpTlahJSlva3G56W93pStzoScvXuU
tXOMrWuEpWN7nFpzlFJrjEJae2uUzr3O55ytxoSl1nOUxkJjlMbW76291oyctYSUrZy13oylzkpa
c3OMtWuErVpznFJrlEpjjDlSezFKc1qM3oScxmN7pUJahFqEzr3O77XG56W11pSlxoSUtXuMrWNz
lEJSc2N7rTlKa1JrnCk5WlJztTlShCExUjlanLW9zmuEvVJrpTlapaW992t7pTlKczFCayk5Y0Ja
nMbO54yUrXN7lFprpbW93jE5Y7W1vZSUnISEjHt7hKWltbW1znNzhKWlvYSEnLWt3s7G3rWlxt7O
58atzu/n79bO1r2tvc69zlpSWt69zu/O3r2lrbWUnM6lrd6MnMY5Ur0xSs5jc7UIIdZjc96UnNaM
lN6MlL0pObUYKc5aY7UAEM5SWsZKUsY5Qr0pMb0hKbUQGK0ACAAAACwAAAAA+gBKAEAI/wABCBxI
sKDBgwgTKlzIsKHDhxAjSpxIsaLFiwkvJFjgwMEVByM6JiBQAaPJkyhTqlyZMoKJBSOshbwy4iPN
ETNrhnzwYAQIED5/4nTwAKTHnUQ7ekyaYIACBP+iSpV6YOGFqVj/iVuoYUDWr2D/EUCwIEIGiRsm
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
Ow==


Some internal mumbo jumbo must replace the URL in the image tag with the Base64 image.
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
pandy
post Jun 21 2024, 12:22 PM
Post #5


🌟Computer says no🌟
********

Group: WDG Moderators
Posts: 20,756
Joined: 9-August 06
Member No.: 6



It seems it doesn't work with local pages.

I saved this

CODE

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>

<head>
<title>MHTML test</title>
</head>


<body>

<div>
<img src="images/sue_ellen.jpg">
</div>


</body>
</html>


as MHTML and got this.
CODE

From: <Saved by Blink>
Snapshot-Content-Location: file:///C:/Users/user/Desktop/TEST/mhtml.html
Subject: MHTML test
Date: Fri, 21 Jun 2024 19:10:16 +0200
MIME-Version: 1.0
Content-Type: multipart/related;
    type="text/html";
    boundary="----MultipartBoundary--eWAm6fz8cbonCqRKmFRqEY9Tiofi2pBHzh9vf5t7FG----"


------MultipartBoundary--eWAm6fz8cbonCqRKmFRqEY9Tiofi2pBHzh9vf5t7FG----
Content-Type: text/html
Content-ID: <frame-558C9B1A5CA7879B42901EF63ADD1F5E@mhtml.blink>
Content-Transfer-Encoding: quoted-printable
Content-Location: file:///C:/Users/user/Desktop/TEST/mhtml.html

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/htm=
l4/strict.dtd"><html><head><meta http-equiv=3D"Content-Type" content=3D"tex=
t/html; charset=3Dwindows-1252">
<title>MHTML test</title>
</head>


<body>

<div>
<img src=3D"file:///C:/Users/user/Desktop/TEST/images/sue_ellen.jpg">
</div>




</body></html>
------MultipartBoundary--eWAm6fz8cbonCqRKmFRqEY9Tiofi2pBHzh9vf5t7FG----
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: file:///C:/Users/user/Desktop/TEST/images/sue_ellen.jpg

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAIBAQIBAQICAgICAgICAwUDAwMDAwYEBAMFBwYHBwcG
BwcICQsJCAgKCAcHCg0KCgsMDAwMBwkODw0MDgsMDAz/2wBDAQICAgMDAwYDAwYMCAcIDAwMDAwM
DAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAz/wAARCABkAGQDASIA
AhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAf/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFQEB
AQAAAAAAAAAAAAAAAAAAAAn/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwCRgKoL
WAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAP/Z

------MultipartBoundary--eWAm6fz8cbonCqRKmFRqEY9Tiofi2pBHzh9vf5t7FG------



But the image doesn't display. There's nothing wrong, neither with the URL nor with the Base64 encoded image. I pasted it into an ordinary HTML document and it worked fine. Must be some kind of restriction. Tried to google MHTML, local files, restrictions... no bananas.
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
giomach
post Jun 21 2024, 05:54 PM
Post #6





Group: Members
Posts: 4
Joined: 19-June 21
Member No.: 27,985



QUOTE(pandy @ Jun 21 2024, 12:22 PM) *

It seems it doesn't work with local pages.
...
Must be some kind of restriction. Tried to google MHTML, local files, restrictions... no bananas.

Yes, thanks, that seems to be the restriction, see wikipedia — MHTML is “a Web archive file format used to combine, in a single computer file, the HTML code and its companion resources (such as images) that are represented by external hyperlinks in the web page's HTML code.” (my emphasis)

In a way it's easy to understand that, but given that the image is present in the .mhtml file, wouldn't it be reasonable to expect that a browser (or an extension) on finding a local url would convert the embedded base64 code and show the image? Instead of treating it as if it's not there. Probably some security vulnerability.

Of course the webpage and its images will all go on the internet when it's finished, but while you're developing it on your local machine and you want to share it with someone who's not very computer-savvy, the restriction is a real nuisance.
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post
pandy
post Jun 21 2024, 10:23 PM
Post #7


🌟Computer says no🌟
********

Group: WDG Moderators
Posts: 20,756
Joined: 9-August 06
Member No.: 6



Yes, but I don't think that needs to be interpreted as local URLs won't work. They talk about web pages and I think they want to point out that that full URL to the file on the web will be in the MHTML, but it's only representation (it will be swapped for the Base65 image).

There must be a reason for this. I don't know if maybe whatever part of the browser handles this maybe isn't allowed to read local files. On the other hand it reads the original HTML...

Have you tried to put just the images on the web somewhere and link to them in the IMG tag? Have a feeling it would work then. But maybe too much work if you have many pages.

Dumb me. I can try that myself. I swap my sue-ellen image for the WDG logo. Just a minute...

Yup. That works.
User is offlinePM
Go to the top of the page
Toggle Multi-post QuotingQuote Post

Reply to this topicStart new topic
4 User(s) are reading this topic (4 Guests and 0 Anonymous Users)
0 Members:

 



- Lo-Fi Version Time is now: 10th October 2024 - 01:14 PM