Een document omzetten naar HTML, MHTML of EPUB

Documenten in HTML en MHTML flow-layout formaten zijn ook erg populair en kunnen worden gebruikt op elk webplatform. Daarom is het omzetten van documenten naar HTML en MHTML een belangrijk kenmerk van Aspose.Words.

EPUB (kort voor “Elektronische Publicatie”) is een op HTML gebaseerd formaat dat gewoonlijk wordt gebruikt voor elektronische boekdistributie. Dit formaat wordt volledig ondersteund in Aspose.Words voor het exporteren van elektronische boeken die compatibel zijn met de meeste leesapparaten.

Een document omzetten

Voor eenvoudige conversie naar HTML, MHTML, of EPUB, een van de save methode overbelasting wordt gebruikt. U kunt het document opslaan in een bestand of stream en expliciet instellen van het uitvoerdocument opslaan formaat of definiëren van de bestandsnaam extensie.

Het volgende voorbeeld laat zien hoe je DOCX kunt converteren naar HTML met een opslagformaat:

# Load the document from disk.
doc = aw.Document(dataDir + "Test File.docx")

# Save the document into HTML.
doc.save(dataDir + "Document", aw.SaveFormat.HTML)

Om een document naar MHTML of EPUB te converteren, gebruik SaveFormat.MHTML of SaveFormat.EPUB respectievelijk.

Een document omzetten met rondreisinformatie

Het HTML-formaat ondersteunt niet veel Microsoft Word functies, en als we een documentmodel zo dicht mogelijk bij het origineel moeten herstellen, moeten we wat extra informatie opslaan in het HTML-bestand. Deze informatie wordt ook wel “rondreisinformatie” genoemd. Daartoe, Aspose.Words biedt een mogelijkheid om ronde-trip informatie te exporteren bij het opslaan naar HTML, MHTML, of EPUB met behulp van de export_roundtrip_information eigendom. Het opslaan van de ronde-trip informatie maakt het mogelijk om documenten eigenschappen zoals tabs, opmerkingen, headers en voetteksten tijdens het laden documenten van de vermelde formaten terug te herstellen in een Document object.

De standaardwaarde is True voor HTML en False voor MHTML en EPUB:

  • Wanneer True, de rondreisinformatie wordt geëxporteerd als - aw - * CSS eigenschappen van de overeenkomstige HTML elementen
  • Wanneer False, er is geen ronde-trip informatie om naar geproduceerde bestanden te worden uitgevoerd

Het volgende voorbeeld van code laat zien hoe ronde-trip informatie te exporteren bij het omzetten van een document van DOCX in HTML:

Opties opslaan bij conversie naar HTML

Aspose.Words maakt het mogelijk om een Word-document te converteren naar HTML met behulp van standaard of aangepaste opties voor opslaan. Enkele voorbeelden van aangepaste opties voor opslaan worden hieronder beschreven.

Geef een map op voor het opslaan van bronnen

Gebruik Aspose.Words We kunnen een fysieke map opgeven waar alle bronnen, zoals afbeeldingen, lettertypen en externe CSS, worden opgeslagen wanneer een document wordt omgezet naar HTML. Standaard is dit een lege tekenreeks.

Specificeren van de resource_folder eigenschap is de eenvoudigste manier om de map in te stellen waar alle bronnen geschreven moeten worden. We kunnen individuele eigenschappen gebruiken, zoals fonts_folder die lettertypen opslaat in de opgegeven map en images_folder die afbeeldingen opslaat in een opgegeven map. Wanneer een relatief pad is gespecificeerd, fonts_folder en images_folder verwijzen naar de map waar de codeset zich bevindt; resource_folder en css_style_sheet_file_name verwijzen naar de uitvoermap waar het HTML-document zich bevindt.

In dit voorbeeld, resource_folder specificeert het relatieve pad. Dit pad verwijst naar de uitvoermap waar HTML-document wordt opgeslagen. De waarde van de resource_folder_alias eigenschap wordt gebruikt om URL’s aan te maken voor alle bronnen.

Het volgende voorbeeld van code laat zien hoe met deze eigenschappen te werken:

Gebruik van de resource_folder_alias eigenschap, kunnen we ook de naam van de map die gebruikt wordt om URI’s van alle bronnen geschreven in een HTML-document te construeren. Dit is de eenvoudigste manier om aan te geven hoe URI’s moeten worden gegenereerd voor alle resource bestanden. Dezelfde informatie kan voor afbeeldingen en lettertypen afzonderlijk gespecificeerd worden via images_folder_alias en fonts_folder_alias eigenschappen, respectievelijk.

Er is echter geen individuele eigenschap voor CSS. Het gedrag van de fonts_folder, fonts_folder_alias, images_folder, images_folder_alias en css_style_sheet_file_name eigenschappen worden niet gewijzigd. Merk op dat de css_style_sheet_file_name eigenschap wordt zowel gebruikt voor het specificeren van mapnaam en bestandsnaam.

Export Base64 Codering Lettertypenbronnen

Aspose.Words biedt een mogelijkheid om aan te geven of lettertypebronnen moeten worden ingebed in HTML in Base64 coderingen. Om dit uit te voeren, gebruik de export_fonts_as_base64 eigenschap Dit is een uitbreiding van de export_font_resources eigendom. Standaard is de waarde False, en lettertypen worden in aparte bestanden geschreven. Maar als deze optie ingesteld is True, De lettertypen zullen worden ingebed in de CSS van het document in Base64-codering. De export_fonts_as_base64 eigenschap heeft alleen invloed op HTML-formaat en heeft geen invloed op EPUB en MHTML.

Het volgende voorbeeld van code laat zien hoe je Base64-gecodeerde lettertypen naar HTML kunt exporteren:

Opties opslaan bij conversie naar EPUB

Aspose.Words maakt het mogelijk om een Word-document te converteren naar EPUB-formaat met behulp van standaard of aangepaste opties voor opslaan. U kunt een aantal opties opgeven door een instantie van HtmlSaveOptions aan de save methode.

Het volgende voorbeeld van code laat zien hoe u een Word-document naar EPUB converteert met een aantal aangepaste opties voor opslaan:

# Load the document from disk.
doc = aw.Document(docs_base.my_dir + "Rendering.docx")

# Create a new instance of HtmlSaveOptions. This object allows us to set options that control
# How the output document is saved.
saveOptions = aw.saving.HtmlSaveOptions()

# Specify the desired encoding.
saveOptions.encoding = "utf-8"

# Specify at what elements to split the internal HTML at. This creates a new HTML within the EPUB 
# which allows you to limit the size of each HTML part. This is useful for readers which cannot read 
# HTML files greater than a certain size e.g 300kb.
saveOptions.document_split_criteria = aw.saving.DocumentSplitCriteria.HEADING_PARAGRAPH

# Specify that we want to export document properties.
saveOptions.export_document_properties = True

# Specify that we want to save in EPUB format.
saveOptions.save_format = aw.SaveFormat.EPUB

# Export the document as an EPUB file.
doc.save(docs_base.artifacts_dir + "Document.EpubConversion_out.epub", saveOptions)