MHTML - Inleiding
MHTML-bestanden (MHTML = MIME-HTML; MIME = Multipurpose Internet Mail (Multimedia) Extensions) zijn zogenaamde gecombineerde webpagina-bestanden die ook wel web-archieven worden genoemd.
Deze bestanden voeren de extensie .html (eventueel de extensie .mht of .mhtml - alleen Firefox staat deze extensies in combinatie met de add-on UnMHT toe) en dragen de data van afbeeldingen in zich mee.
In het hier getoonde gecombineerde webpagina-bestand zijn alle elementen van een website / webpagina, dat wil zeggen niet alleen de (opgemaakte) tekst, maar ook de afbeeldingen (waaronder een achtergrond-afbeelding / watermerk), in één bestand tesamen opgeslagen.
Normaliter worden afbeeldingen (gif, jpeg, png) als externe bestanden ge-embedded via de img-tag (<img style="width: 100px; height: 75px; border: 0px" src="../foto's/afbeelding.jpg" alt="afbeelding.jpg" />) in webpagina's. En het element background-image:url('...') binnen de body-tag (<body style="background-image:url'foto's/achtergrond.gif')" ) is er dan om een externe (gif- of jpeg-)achtergrond-afbeelding / watermerk te tonen in de webpagina.
MHTML is op zich niet zo zinvol om te gebruiken als standaard-format voor websites. Het maakt webpagina's vooral omvangrijk als er meerdere (grote) afbeeldingen in worden ingevoegd. Vooral als bepaalde plaatjes vaker binnen een website worden gebruikt, moeten die in elk MHTML-bestand opnieuw geplaatst worden. Bij (X)HTML wordt een plaatje eenmaal op de server geplaatst om dan in meerdere bestanden te kunnen worden geladen via de img-tag. Dat spaart ruimte in de webbestanden én op de server.
Wanneer is het gebruik van MHTML dan wel zinvol? Ten eerste als u dus emails met een achtergrond-logo wilt versturen. Aan een gewoon email-bericht in Thunderbird of Outlook kunt u een achtergrond-bestand toevoegen, maar dan krijgt de ontvanger die afbeelding als losse bijlage meegestuurd. En dat is niet de bedoeling.
En verder als u aan iemand een voorbeeld-webpagina met afbeeldingen per email wilt toesturen, is deze methode handig. Want in dat geval hoeft u niet een HTML-bestand met één of meerdere afzonderlijke afbeeldings-bestanden te sturen. Door de afbeeldingen in te bouwen volstaat één webpagina om te versturen.
MHTML - Info op het internet
Op de volgende webadressen vindt u uitgebreide informatie over MHTML: http://en.wikipedia.org/wiki/MHTML (MHTML stands for MIME HTML. ...), http://www.cs.vu.nl/rest/handleiding-nl.html#Hoe%20werkt%20mhtml (Hoe werkt mhtml) en http://www.dsv.su.se/~jpalme/ietf/mhtml.html (Short Summary of the MHTML Standard).
MHTML - Voorbeeld met inline images
Als alternatief voor het HTML-bestand met embeddede afbeeldingen is er de webpagina met zogenaamde 'inline images'.
Zo'n afbeelding wordt als ascii-code (dit als resultaat van transformatie uit de binaire code van de GIF-of JPG-afbeelding naar ascii-tekens) binnen de <img src="data:image/gif;base64,[ascii-tekens van het plaatje]" alt="Base64 encoded image" width="150" height="150"/>-tag geplaatst.
Voor een achtergrond-afbeelding / watermerk wordt de <body>-tag als volgt ingevuld: <body background="data:image/gif;base64,[ascii-tekens van het achtergrond-plaatje]" style="background-attachment: fixed">.
De weergave van deze 'HTML-inline images' worden door Chrome 128.0.6613.85 (64-bits), Firefox 130.0 (64-bits), Safari , Internet Explorer 9 en Opera 113.0.5230.32 (64-bits) volledig ondersteund.
Hier kunt u een HTML-pagina met 'inline images' laden: Versie met .html.
En hier kunt u dezelfde pagina openen, maar nu met een .mht- / .mhtml-extensie: Versie met .mht / Versie met .mhtml.
Op de volgende webadressen vindt u informatie over 'inline images': http://nl.wikipedia.org/wiki/Inline_image, http://dean.edwards.name/my/base64-ie.html en http://tmp.tryba.nl/inline/.