V našem každodenním životě se musíme potýkat s dokumenty Microsoft Word (DOC/DOCX) pro osobní i úřední účely. Podobně můžeme mít požadavek na sdílení těchto dokumentů přes internet a k otevření/zobrazení těchto dokumentů potřebuje příjemce konkrétní aplikace, např. MS Word, OpenOffice atd. Některá restriktivní prostředí navíc nemusí mít oprávnění k instalaci dalších aplikací, takže v takových scénářích může být převod Wordu do HTML schůdným řešením. S tímto přístupem můžeme snadno otevřít dokument aplikace Word ve webovém prohlížeči (bez instalace dalšího softwaru). Tento článek tedy vysvětlí kroky, jak převést Word do HTML pomocí Java Cloud SDK.
REST API pro převod Word do HTML
Aspose.Words Cloud je řešení založené na REST, které nabízí možnosti programově vytvářet, upravovat a transformovat dokumenty MS Word do různých podporovaných formátů. Nyní podle rozsahu tohoto článku použijeme Aspose.Words Cloud SDK for Java, který nám umožňuje využívat všechny možnosti převodu dokumentů Word v aplikaci Java. Abychom mohli používat tuto sadu SDK, musíme přidat její odkaz do našeho projektu Java zahrnutím následujících informací do pom.xml (projekt typu sestavení maven).
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words-cloud</artifactId>
<version>22.12.0</version>
</dependency>
</dependencies>
Dalším důležitým krokem je získání přihlašovacích údajů klienta z Cloud Dashboard. Pokud ještě nejste registrováni, musíte si nejprve zaregistrovat bezplatný účet prostřednictvím platné e-mailové adresy a poté získat své přihlašovací údaje.
Převést Word do HTML v Javě
Budeme diskutovat o krocích a souvisejících podrobnostech o tom, jak převést Word do HTML pomocí fragmentu kódu Java.
- Vytvořte objekt WordsApi, kterému předáme personalizovaná pověření jako argumenty
- Nyní načtěte vstupní obsah dokumentu Word pomocí metody readAllBytes(…) a získejte vrácenou hodnotu v poli byte[]
- Dalším krokem je vytvoření objektu třídy ConvertDocumentRequest, který přebírá vstupní soubor Word, formát HTML a výsledný název souboru jako argumenty.
- Nakonec zavolejte metodu convertDocument(…) k provedení převodu Wordu do HTML. Po úspěšném převodu se výsledný dokument HTML uloží do cloudového úložiště
// Další úryvky kódu najdete na https://github.com/aspose-words-cloud/aspose-words-cloud-java
try
{
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// pokud je baseUrl null, WordsApi použije výchozí https://api.aspose.cloud
WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);
// načíst dokument aplikace Word z místního systému
File file1 = new File("test_multi_pages.docx");
// číst obsah vstupního wordového dokumentu
byte[] documentStream = Files.readAllBytes(file1.toPath());
// výsledný formát souboru
String format = "html";
// vytvořit žádost o konverzi dokumentu, kde poskytneme výsledný název souboru
ConvertDocumentRequest convertRequest = new ConvertDocumentRequest(documentStream,format, "output.html",null, null, null);
// provést konverzi slova do html
wordsApi.convertDocument(convertRequest);
}catch(Exception ex)
{
System.out.println(ex);
}
Vzorový dokument aplikace Word použitý ve výše uvedeném příkladu lze stáhnout z testmultipages.docx.
DOCX do HTML pomocí příkazů cURL
Rozhraní REST API poskytují snadný přístup prostřednictvím příkazů cURL na jakékoli platformě. V této části tedy probereme podrobnosti o tom, jak převést DOCX do HTML pomocí příkazů cURL. Prvním krokem je tedy vygenerování přístupového tokenu JWT (na základě přihlašovacích údajů klienta) pomocí následujícího příkazu.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Nyní musíme provést následující příkaz k provedení převodu Word do HTML, kde se očekává, že vstupní dokument Wordu bude k dispozici v cloudovém úložišti a po převodu výsledný dokument HTML uložíme na místní disk.
curl -v -X GET "https://api.aspose.cloud/v4.0/words/test_multi_pages.docx?format=html" \
-H "accept: application/octet-stream" \
-H "Authorization: Bearer <JWT Token>" \
-o "newOutput.html"
Výsledný soubor můžeme také uložit přímo do cloudového úložiště a z tohoto důvodu musíme jednoduše zadat hodnotu parametru outPath (jak je uvedeno níže)
curl -v -X GET "https://api.aspose.cloud/v4.0/words/test_multi_pages.docx?format=html&outPath=output.html" \
-H "accept: application/octet-stream" \
-H "Authorization: Bearer <JWT Token>"
Závěr
Nyní, když jsme se dostali na konec tohoto článku, jsme se dozvěděli podrobnosti o tom, jak programově převést Word do HTML pomocí Javy. Viděli jsme také možnosti převodu DOCX do HTML pomocí příkazů cURL. Pro účely rychlého testování můžete také zkusit přistupovat k API prostřednictvím SwaggerUI ve webovém prohlížeči a zároveň můžete zvážit prozkoumání Product Documentation, což je úžasný zdroj informací.
V případě, že potřebujete stáhnout a upravit zdrojový kód Cloud SDK, je volně dostupný na GitHub (publikováno pod licencí MIT). A konečně, v případě, že při používání rozhraní API narazíte na nějaké problémy nebo máte jakýkoli související dotaz, můžete nás požádat o rychlé řešení prostřednictvím bezplatného fóra podpory produktů.
Související články
Další informace naleznete na následujících odkazech: