Mae HyperText Markup Language (HTML) yn iaith farcio safonol ar gyfer creu tudalennau gwe. Mae’n caniatáu creu a strwythur adrannau, paragraffau, a dolenni gan ddefnyddio elfennau/tagiau HTML. A rhag ofn bod rhai ffontiau wedi’u teilwra’n cael eu defnyddio mewn ffeil HTML neu fod cyfeiriad at unrhyw wrthrych deinamig sy’n gofyn am gysylltiad gweithredol â’r peiriant ffynhonnell/gweinyddwr, mae siawns o gyfaddawdu ffyddlondeb y ddogfen. Ar yr ochr arall, ym Manyleb Papur XML (XPS), diffinnir elfennau’r dudalen yn annibynnol ar system weithredu, argraffydd neu gymhwysiad gwylio penodol. Felly dull deallus yw trosi HTML i fformat XPS.
API Trosi HTML
Mae Aspose.HTML Cloud SDK ar gyfer Java yn API ysgafn sy’n seiliedig ar bensaernïaeth REST sy’n darparu’r galluoedd i greu, trin a throsi ffeiliau HTML i PDF, DOCX, TIFF, [JPEG 6, ac ati Mae hefyd yn cefnogi trosi HTML i XPS. Felly, yn gyntaf, mae angen inni ychwanegu’r manylion canlynol yn pom.xml o brosiect math adeiladu Maven i gynnwys y SDK yn ein prosiect Java.
<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>
Ar ôl ei osod, y cam nesaf yw tanysgrifiad am ddim i’n gwasanaethau cwmwl trwy dangosfwrdd Aspose.Cloud gan ddefnyddio GitHub neu gyfrif Google. Neu, yn syml creu Cyfrif newydd a chael eich manylion Manylion Cleient.
Trosi HTML i XPS yn Java
Dilynwch y cyfarwyddiadau a nodir isod i ddatblygu trawsnewidydd HTML i XPS.
- Yn gyntaf oll, mae angen inni nodi manylion yn erbyn dulliau Configuration.setAPPSID a Configuration.setAPIKEY
- Yn ail, rydym yn gosod manylion setBasePath(..), setAuthPath(..) a nodi setUserAgent(…) fel WebKit
- Yn drydydd, er ein cymorth ein hunain, rydym yn mynd i osod setDebug (..) fel gwir
- Nawr crëwch wrthrych o ddosbarth ConversionApi
- Nodwch y manylion ymyl ac enw er gwybodaeth ar gyfer y ffeil canlyniadol
- Yn olaf, ffoniwch ddull GetConvertDocumentToXps(…) sy’n gofyn am fewnbynnu enw HTML, dimensiynau a manylion ymyl fel dadleuon
// am ragor o enghreifftiau, ewch i https://github.com/aspose-html-cloud/aspose-html-cloud-java
try
{
// Cael ClientID a ClientSecret o https://dashboard.aspose.cloud/
String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
// manylion ar gyfer galw Api
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);
// Creu gwrthrych o API Cloud Aspose.HTML
com.aspose.html.api.ConversionApi htmlApi = new ApiClient().createService(ConversionApi.class);
// Y ddogfen html o storfa cwmwl
String name = "list.html";
// fformat delwedd canlyniadol
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
// Galw'r API ar gyfer trosi HTML i 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);
}
Mae’r cod uchod yn dychwelyd y canlyniad yn y ffrwd ymateb felly, er mwyn arbed yr allbwn ar yriant lleol, efallai y byddwn yn ystyried defnyddio’r dull arferol canlynol.
/*
* Dull cymryd ResponseBody ac enw ffeil canlyniadol fel dadleuon
*/
public static void checkAndSave(retrofit2.Call<okhttp3.ResponseBody> call, String fileName) throws IOException
{
// Anfon y cais yn gydamserol a dychwelyd ei ymateb.
retrofit2.Response<okhttp3.ResponseBody> res = call.execute();
// Corff ymateb dadgyfresi o ymateb llwyddiannus
okhttp3.ResponseBody answer = res.body();
//Cadw i gyfeiriadur prawf
boolean result = saveToDisc(answer, fileName);
// dilysu bod gwerth y canlyniad yn wir (cam dewisol)
Assert.assertTrue(result);
}
/*
*
* Ffoniwch y dull hwn i arbed cynnwys Ymateb fel ffeil ar yriant lleol
*
*/
public static boolean saveToDisc(okhttp3.ResponseBody body, String fileName)
{
// creu gwrthrych ffeil sy'n nodi lleoliad ar gyfer y ffeil canlyniadol
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;
// arbed ffrwd ffeil i yriant lleol
outputStream.write(fileReader, 0, read);
fileSizeDownloaded += read;
}
// clirio enghraifft y ffrwd allbwn
outputStream.flush();
// dychwelyd yn wir fel ffeil arbed yn llwyddiannus
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
} // saveToDisc ends here
Gellir lawrlwytho’r ffeiliau sampl a ddefnyddir yn yr enghraifft uchod o list.html a resultantFile.xps.
HTML i XPS gan ddefnyddio Gorchmynion cURL
Gellir cyrchu’r APIs REST hefyd trwy orchmynion cURL felly yn yr adran hon, rydyn ni’n mynd i ddysgu’r camau ar sut i berfformio’r trosi HTML i XPS gan ddefnyddio’r gorchymyn cURL. Nawr fel rhagofyniad, mae angen i ni gynhyrchu Tocyn Gwe JSON (JWT) yn gyntaf yn seiliedig ar eich tystlythyrau cleient unigol. Gweithredwch y gorchymyn canlynol i gynhyrchu’r tocyn JWT.
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"
Nawr bod gennym y tocyn JWT, gweithredwch y gorchymyn canlynol ar y derfynell i berfformio trosi HTML i 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
Casgliad
Mae’r erthygl hon wedi egluro’r manylion ar gyfer trosi HTML i XPS gan ddefnyddio REST API. Rydym wedi dysgu’r camau i drosi HTML i XPS gan ddefnyddio pytiau cod Java yn ogystal â thrwy orchmynion cURL. Ar ben hynny, nodwch fod y Cynnyrch Dogfennaeth yn ffynhonnell wych ar gyfer dysgu’r galluoedd anhygoel a gynigir gan yr API. Ar ben hynny, os byddwch chi’n dod ar draws unrhyw broblemau wrth ddefnyddio’r API, mae croeso i chi gysylltu â’r Fforwm cymorth cynnyrch am ddim.
Erthyglau Perthnasol
Rydym hefyd yn argymell ymweld â’r blogiau canlynol i gael rhagor o fanylion am: