HyperText Markup Language (HTML) je standardni jezik za označavanje za kreiranje web stranica. Omogućava kreiranje i strukturu sekcija, pasusa i veza pomoću HTML elemenata/tagova. A u slučaju da se neki prilagođeni fontovi koriste u HTML datoteci ili se referencira bilo koji dinamički objekt koji zahtijeva aktivnu vezu sa izvornom mašinom/serverom, postoje šanse da se ugrozi vjernost dokumenta. S druge strane, u XML specifikaciji papira (XPS), elementi stranice su definisani nezavisno od određenog operativnog sistema, štampača ili aplikacije za pregled. Dakle, inteligentan pristup je pretvaranje HTML-a u XPS format.
API za HTML konverziju
Aspose.HTML Cloud SDK za Javu je lagani API zasnovan na REST arhitekturi koji pruža mogućnosti za kreiranje, manipulaciju i pretvaranje HTML datoteka u PDF, DOCX, TIFF, JPEG , itd. Takođe podržava konverziju HTML-a u XPS. Dakle, prvo, moramo dodati sljedeće detalje u pom.xml projekta tipa gradnje Maven da bismo uključili SDK u naš Java projekat.
<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>
Nakon instalacije, sljedeći korak je besplatna pretplata na naše usluge u oblaku putem Aspose.Cloud dashboard koristeći GitHub ili Google račun. Ili, jednostavno kreirajte novi račun i pribavite detalje o vašim klijentskim akreditivima.
Pretvorite HTML u XPS u Javi
Molimo slijedite dolje navedena uputstva za razvoj HTML u XPS pretvarač.
- Prije svega, moramo specificirati detalje u odnosu na metode Configuration.setAPPSID i Configuration.setAPIKEY
- Drugo, postavljamo detalje za setBasePath(..), setAuthPath(..) i specificiramo setUserAgent(…) kao WebKit
- Treće, radi naše pomoći, postavićemo setDebug(..) kao true
- Sada kreirajte objekat klase ConversionApi
- Odredite detalje margine i naziv za informacije za rezultirajuću datoteku
- Konačno, pozovite metodu GetConvertDocumentToXps(…) koja zahtijeva unos HTML imena, dimenzije i detalje margine kao argumente
// za više primjera, posjetite https://github.com/aspose-html-cloud/aspose-html-cloud-java
try
{
// Preuzmite ClientID i ClientSecret sa https://dashboard.aspose.cloud/
String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
// detalji za pozivanje API-ja
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);
// Kreirajte objekt Aspose.HTML Cloud API-ja
com.aspose.html.api.ConversionApi htmlApi = new ApiClient().createService(ConversionApi.class);
// HTML dokument iz skladišta u oblaku
String name = "list.html";
// rezultirajući format slike
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
// Pozovite API za konverziju HTML u XPS
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);
}
Gornji kod vraća rezultat u toku odgovora, tako da, kako bismo sačuvali izlaz na lokalnom disku, možemo razmotriti korištenje sljedeće prilagođene metode.
/*
* Metoda koja uzima ResponseBody i rezultirajuće ime datoteke kao argumente
*/
public static void checkAndSave(retrofit2.Call<okhttp3.ResponseBody> call, String fileName) throws IOException
{
// Sinhrono pošaljite zahtjev i vratite njegov odgovor.
retrofit2.Response<okhttp3.ResponseBody> res = call.execute();
// Deserializirano tijelo odgovora uspješnog odgovora
okhttp3.ResponseBody answer = res.body();
//Sačuvaj u test direktorijum
boolean result = saveToDisc(answer, fileName);
// potvrdite da je vrijednost rezultata istinita (opcijski korak)
Assert.assertTrue(result);
}
/*
*
* Pozovite ovu metodu da sačuvate sadržaj odgovora kao datoteku na lokalnom disku
*
*/
public static boolean saveToDisc(okhttp3.ResponseBody body, String fileName)
{
// kreirati objekt fajl koji ukazuje na lokaciju za rezultujuću datoteku
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;
// spremite tok datoteka na lokalni disk
outputStream.write(fileReader, 0, read);
fileSizeDownloaded += read;
}
// obrišite instancu izlaznog toka
outputStream.flush();
// vrati true kao uspješno spremanje datoteke
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
} // saveToDisc ends here
Primjeri datoteka korištenih u gornjem primjeru mogu se preuzeti sa list.html i resultantFile.xps.
HTML u XPS koristeći cURL komande
REST API-jima se takođe može pristupiti putem cURL komandi, tako da ćemo u ovom odeljku naučiti korake o tome kako izvršiti konverziju HTML u XPS pomoću naredbe cURL. Sada kao preduvjet, prvo moramo generirati JSON Web Token (JWT) na osnovu vaših individualnih akreditiva klijenta. Izvršite sljedeću naredbu za generiranje JWT tokena.
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"
Sada kada imamo JWT token, izvršite sljedeću naredbu na terminalu da izvršite konverziju HTML u XPS.
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
Zaključak
Ovaj članak objašnjava detalje za pretvaranje HTML-a u XPS pomoću REST API-ja. Naučili smo korake za pretvaranje HTML-a u XPS pomoću isječaka Java koda, kao i putem cURL komandi. Nadalje, imajte na umu da je proizvod Dokumentacija odličan izvor za učenje nevjerovatnih mogućnosti koje nudi API. Nadalje, ako naiđete na bilo kakve probleme prilikom korištenja API-ja, slobodno kontaktirajte besplatni forum podrške za proizvode.
povezani članci
Također preporučujemo da posjetite sljedeće blogove za više detalja o: