A HyperText Markup Language (HTML) egy szabványos jelölőnyelv a weboldalak létrehozásához. Lehetővé teszi szakaszok, bekezdések és hivatkozások létrehozását és felépítését HTML elemek/címkék használatával. És abban az esetben, ha egy HTML-fájlban egyéni betűtípusokat használnak, vagy bármilyen dinamikus objektumra hivatkoznak, amely aktív kapcsolatot igényel a forrásgéppel/szerverrel, fennáll az esélye, hogy a dokumentum hűsége sérül. Másrészt az XML Paper Specification (XPS) alkalmazásban az oldalelemek egy adott operációs rendszertől, nyomtatótól vagy megtekintő alkalmazástól függetlenül vannak meghatározva. Tehát egy intelligens megközelítés a HTML konvertálása XPS formátumba.
- HTML Conversion API
- Konvertálja a HTML-t XPS-re Java nyelven
- HTML-ről XPS-re cURL-parancsok használatával
HTML Conversion API
Az Aspose.HTML Cloud SDK for Java egy könnyű REST architektúrára épülő API, amely lehetővé teszi HTML-fájlok létrehozását, kezelését és konvertálását PDF, DOCX, TIFF, [JPEG] formátumba. ]6 stb. Támogatja a HTML konvertálását XPS-vé. Tehát először is hozzá kell adnunk a következő részleteket a Maven build típusú projekt pom.xml fájljához, hogy az SDK-t beépítsük Java projektünkbe.
<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-html-cloud</artifactId>
<version>20.7.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
A telepítés után a következő lépés egy ingyenes előfizetés felhőszolgáltatásainkra az Aspose.Cloud dashboard oldalon, GitHub vagy Google-fiók használatával. Vagy egyszerűen hozzon létre egy új fiókot, és szerezze be az ügyfél hitelesítő adatait.
Konvertálja a HTML-t XPS-re Java nyelven
Kérjük, kövesse az alábbi utasításokat a HTML–XPS konverter fejlesztéséhez.
- Először is meg kell adnunk részleteket a Configuration.setAPPSID és Configuration.setAPIKEY metódusokhoz
- Másodszor megadjuk a setBasePath(..), setAuthPath(..) adatait, és a setUserAgent(…) értéket adjuk meg WebKitként
- Harmadszor, saját segítségünkre a setDebug(..) függvényt igaznak fogjuk beállítani
- Most hozzon létre egy objektumot a ConversionApi osztályból
- Adja meg a margó részleteit és az eredményül kapott fájl információinak nevét
- Végül hívja meg a GetConvertDocumentToXps(…) metódust, amely argumentumként megköveteli a HTML-név, a méretek és a margórészletek megadását.
// további példákért látogasson el a https://github.com/aspose-html-cloud/aspose-html-cloud-java oldalra
try
{
// Szerezze be a ClientID-t és a ClientSecret-et a https://dashboard.aspose.cloud/ webhelyről
String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
// részletek az Api-híváshoz
com.aspose.html.Configuration.setAPP_SID(clientId);
com.aspose.html.Configuration.setAPI_KEY(clientSecret);
com.aspose.html.Configuration.setBasePath("https://api.aspose.cloud/v3.0");
com.aspose.html.Configuration.setAuthPath("https://api.aspose.cloud/connect/token");
com.aspose.html.Configuration.setUserAgent("WebKit");
com.aspose.html.Configuration.setDebug(true);
// Hozzon létre egy objektumot az Aspose.HTML Cloud API-ból
com.aspose.html.api.ConversionApi htmlApi = new ApiClient().createService(ConversionApi.class);
// A html dokumentum a felhőtárhelyről
String name = "list.html";
// az eredményül kapott képformátum
String outFormat = "PNG";
Integer width = 800; // Resulting image width.
Integer height = 1000; // Resulting image height.
Integer leftMargin = 10; // Left resulting image margin.
Integer rightMargin = 10; // Right resulting image margin.
Integer topMargin = 10; // Top resulting image margin.
Integer bottomMargin = 10; // Bottom resulting image margin.
Integer resolution = 300; // Resolution of resulting image.
String folder = null; // The folder in the storage. Should exist.
String storage = "Internal"; // Name of the storage. null
// Hívja meg az API-t a HTML-ből XPS-be való konverzióhoz
retrofit2.Call<okhttp3.ResponseBody> call = htmlApi.GetConvertDocumentToXps(name, width, height, leftMargin, rightMargin, topMargin, bottomMargin, folder, storage);
System.out.println("HTML to XPS conversion sucessfull !");
}catch(Exception ex)
{
System.out.println(ex);
}
A fenti kód visszaadja az eredményt a válaszfolyamban, így annak érdekében, hogy a kimenetet egy helyi meghajtóra mentsük, fontolóra vehetjük a következő egyéni módszer használatát.
/*
* A ResponseBody és az eredményül kapott fájlnév argumentumként való vétele
*/
public static void checkAndSave(retrofit2.Call<okhttp3.ResponseBody> call, String fileName) throws IOException
{
// A kérés szinkron elküldése és a válasz visszaküldése.
retrofit2.Response<okhttp3.ResponseBody> res = call.execute();
// A sikeres válasz deserializált választeste
okhttp3.ResponseBody answer = res.body();
//Mentés a tesztkönyvtárba
boolean result = saveToDisc(answer, fileName);
// ellenőrizze, hogy az eredmény igaz-e (nem kötelező lépés)
Assert.assertTrue(result);
}
/*
*
* Hívja ezt a módszert a választartalom fájlként mentéséhez a helyi meghajtón
*
*/
public static boolean saveToDisc(okhttp3.ResponseBody body, String fileName)
{
// hozzon létre fájlobjektumot, amely jelzi az eredményül kapott fájl helyét
File savedFile = new File("c:\\Downloads\\"+fileName);
try (InputStream inputStream = body.byteStream();
OutputStream outputStream = new FileOutputStream(savedFile))
{
byte[] fileReader = new byte[4096];
long fileSizeDownloaded = 0;
while (true) {
int read = inputStream.read(fileReader);
if (read == -1) break;
// mentse a fájlfolyamot a helyi meghajtóra
outputStream.write(fileReader, 0, read);
fileSizeDownloaded += read;
}
// törölje a kimeneti adatfolyam példányt
outputStream.flush();
// return true fájlként sikeresen mentve
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
} // saveToDisc ends here
A fenti példában használt mintafájlok letölthetők a list.html és a resultantFile.xps oldalról.
HTML-ről XPS-re cURL-parancsok használatával
A REST API-k a cURL parancsokon keresztül is elérhetők, ezért ebben a részben a HTML-ből XPS-be történő konverzió végrehajtásának lépéseit tanuljuk meg a cURL paranccsal. Most előfeltételként először létre kell hoznunk egy JSON Web Tokent (JWT) az Ön egyéni ügyfél-hitelesítő adatai alapján. Kérjük, hajtsa végre a következő parancsot a JWT token generálásához.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bbf94a2c-6d7e-4020-b4d2-b9809741374e&client_secret=1c9379bb7d701c26cc87e741a29987bb" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Most, hogy megvan a JWT token, kérjük, hajtsa végre a következő parancsot a terminálon a HTML-ből XPS-be való konvertáláshoz.
curl -v -X GET "https://api.aspose.cloud/html/list.html/convert/xps" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>" \
-o final.xps
Következtetés
Ez a cikk ismerteti a HTML XPS-re konvertálásának részleteit a REST API használatával. Megtanultuk a HTML XPS-re konvertálásának lépéseit Java kódrészletek, valamint cURL parancsok segítségével. Továbbá, kérjük, vegye figyelembe, hogy a Termék Dokumentáció nagyszerű forrás az API által kínált csodálatos képességek megismeréséhez. Továbbá, ha bármilyen problémába ütközik az API használata során, kérjük, forduljon az Ingyenes terméktámogatási fórumhoz.
kapcsolódó cikkek
Javasoljuk továbbá, hogy látogassa meg a következő blogokat a további részletekért: