Hiperteksta iezīmēšanas valoda (HTML) ir standarta iezīmēšanas valoda tīmekļa lapu izveidei. Tas ļauj izveidot un strukturēt sadaļas, rindkopas un saites, izmantojot HTML elementus/tagus. Un gadījumā, ja HTML failā tiek izmantoti daži pielāgoti fonti vai ir atsauce uz jebkuru dinamisku objektu, kam nepieciešams aktīvs savienojums ar avota mašīnu/serveri, pastāv iespēja, ka tiks apdraudēta dokumenta precizitāte. No otras puses, XML papīra specifikācijā (XPS) lapas elementi tiek definēti neatkarīgi no konkrētas operētājsistēmas, printera vai skatīšanas lietojumprogrammas. Tāpēc saprātīga pieeja ir konvertēt HTML uz XPS formātu.
HTML konvertēšanas API
Aspose.HTML Cloud SDK for Java ir viegls uz REST arhitektūru balstīts API, kas nodrošina iespējas izveidot, manipulēt un pārveidot HTML failus uz PDF, DOCX, TIFF, JPEG utt. Tā atbalsta arī HTML konvertēšanu uz XPS. Tātad, pirmkārt, mums ir jāpievieno tālāk norādītā informācija Maven build tipa projekta pom.xml, lai iekļautu SDK mūsu Java projektā.
<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>
Pēc instalēšanas nākamais solis ir mūsu mākoņpakalpojumu bezmaksas abonēšana, izmantojot Aspose.Cloud dashboard, izmantojot GitHub vai Google kontu. Vai arī vienkārši izveidojiet jaunu kontu un iegūstiet informāciju par saviem klienta akreditācijas datiem.
Pārvērst HTML uz XPS Java
Lūdzu, izpildiet tālāk sniegtos norādījumus, lai izstrādātu pārveidotāju no HTML uz XPS.
- Pirmkārt, mums ir jānorāda informācija par metodēm Configuration.setAPPSID un Configuration.setAPIKEY
- Otrkārt, mēs iestatām informāciju par setBasePath(..), setAuthPath(..) un norādām setUserAgent(…) kā WebKit.
- Treškārt, savai palīdzībai mēs iestatīsim setDebug(..) kā patiesu
- Tagad izveidojiet ConversionApi klases objektu
- Norādiet piemales informāciju un nosaukumu, lai iegūtu informāciju par iegūto failu
- Visbeidzot, izsauciet metodi GetConvertDocumentToXps(…), kurai kā argumenti ir jāievada HTML nosaukums, izmēri un piemales informācija.
// Lai iegūtu vairāk piemēru, lūdzu, apmeklējiet vietni https://github.com/aspose-html-cloud/aspose-html-cloud-java
try
{
// Iegūstiet ClientID un ClientSecret no https://dashboard.aspose.cloud/
String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
// informācija par Api izsaukšanu
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);
// Izveidojiet Aspose.HTML Cloud API objektu
com.aspose.html.api.ConversionApi htmlApi = new ApiClient().createService(ConversionApi.class);
// html dokuments no mākoņa krātuves
String name = "list.html";
// iegūtais attēla formāts
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
// Izsauciet API HTML konvertēšanai uz 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);
}
Iepriekš minētais kods atgriež rezultātu atbildes straumē, tāpēc, lai saglabātu izvadi vietējā diskdzinī, mēs varam apsvērt iespēju izmantot tālāk norādīto pielāgoto metodi.
/*
* Metode, kas izmanto ResponseBody un iegūto faila nosaukumu kā argumentus
*/
public static void checkAndSave(retrofit2.Call<okhttp3.ResponseBody> call, String fileName) throws IOException
{
// Sinhroniski nosūtiet pieprasījumu un atgrieziet tā atbildi.
retrofit2.Response<okhttp3.ResponseBody> res = call.execute();
// Veiksmīgas atbildes deserializēts atbildes pamatteksts
okhttp3.ResponseBody answer = res.body();
//Saglabāt testa direktorijā
boolean result = saveToDisc(answer, fileName);
// apstipriniet, ka rezultāta vērtība ir patiesa (neobligāts solis)
Assert.assertTrue(result);
}
/*
*
* Izsauciet šo metodi, lai saglabātu atbildes saturu kā failu lokālajā diskā
*
*/
public static boolean saveToDisc(okhttp3.ResponseBody body, String fileName)
{
// izveidot faila objektu, norādot iegūtā faila atrašanās vietu
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;
// saglabājiet failu straumi vietējā diskā
outputStream.write(fileReader, 0, read);
fileSizeDownloaded += read;
}
// notīriet izvades straumes gadījumu
outputStream.flush();
// atgriezt true kā faila saglabāšana veiksmīgi
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
} // saveToDisc ends here
Iepriekš minētajā piemērā izmantotos failu paraugus var lejupielādēt no list.html un resultantFile.xps.
HTML uz XPS, izmantojot cURL komandas
REST API var piekļūt arī, izmantojot cURL komandas, tāpēc šajā sadaļā mēs uzzināsim, kā veikt HTML konvertēšanu uz XPS, izmantojot komandu cURL. Tagad kā priekšnoteikums mums vispirms ir jāģenerē JSON tīmekļa marķieris (JWT), pamatojoties uz jūsu individuālajiem klienta akreditācijas datiem. Lūdzu, izpildiet šo komandu, lai ģenerētu JWT marķieri.
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"
Tagad, kad mums ir JWT marķieris, lūdzu, izpildiet šo komandu terminālī, lai veiktu HTML konvertēšanu uz 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
Secinājums
Šajā rakstā ir izskaidrota informācija par HTML konvertēšanu uz XPS, izmantojot REST API. Mēs esam iemācījušies darbības, lai pārveidotu HTML par XPS, izmantojot Java koda fragmentus, kā arī cURL komandas. Turklāt, lūdzu, ņemiet vērā, ka Produkts Dokumentācija ir lielisks avots, lai uzzinātu par API piedāvātajām pārsteidzošajām iespējām. Turklāt, ja API lietošanas laikā rodas problēmas, lūdzu, sazinieties ar bezmaksas produktu atbalsta forumu.
Saistītie raksti
Mēs arī iesakām apmeklēt šādus emuārus, lai iegūtu sīkāku informāciju par: