HTML ל-XPS

המרת HTML ל-XPS

HyperText Markup Language (HTML) היא שפת סימון סטנדרטית ליצירת דפי אינטרנט. הוא מאפשר יצירה ומבנה של קטעים, פסקאות וקישורים באמצעות אלמנטים/תגי HTML. ובמקרה ומשתמשים בגופנים מותאמים מסוימים בקובץ HTML או שמתייחסים לאובייקט דינמי כלשהו המצריך חיבור פעיל למחשב/שרת המקור, יש סיכוי לפגיעה באמינות המסמך. בצד השני, ב-XML Paper Specification(XPS), רכיבי העמוד מוגדרים ללא תלות במערכת הפעלה, מדפסת או אפליקציה מסוימת. אז גישה חכמה היא להמיר HTML לפורמט XPS.

HTML המרת API

Aspose.HTML Cloud SDK עבור Java הוא API קל משקל מבוסס ארכיטקטורת REST המספק את היכולות ליצור, לתפעל ולהמיר קובצי HTML ל-PDF, DOCX, TIFF, [JPEG] ]6, וכו’. זה תומך גם בהמרה של HTML ל-XPS. אז, ראשית, עלינו להוסיף את הפרטים הבאים ב-pom.xml של פרויקט ה-build Maven כדי לכלול את ה-SDK בפרויקט Java שלנו.

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://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>

לאחר ההתקנה, השלב הבא הוא הרשמה חינם לשירותי הענן שלנו דרך מרכז השליטה של Aspose.Cloud באמצעות GitHub או חשבון Google. לחלופין, פשוט צור חשבון חדש וקבל את פרטי אישורי הלקוח שלך.

המרת HTML ל-XPS ב-Java

אנא עקוב אחר ההוראות המפורטות להלן כדי לפתח ממיר HTML ל-XPS.

  • קודם כל, עלינו לציין פרטים מול שיטות Configuration.setAPPSID ו-Configuration.setAPIKEY
  • שנית, אנו מגדירים פרטים עבור setBasePath(..), setAuthPath(..) ומציינים את setUserAgent(…) בתור WebKit
  • שלישית, לסיוע שלנו, אנו הולכים להגדיר את setDebug(..) כ-true
  • כעת צור אובייקט של מחלקה ConversionApi
  • ציין את פרטי השוליים והשם עבור מידע עבור הקובץ שנוצר
  • לבסוף, קרא לשיטה GetConvertDocumentToXps(…) הדורשת קלט שם HTML, מידות ופרטי שוליים כארגומנטים
// לדוגמאות נוספות, בקר בכתובת https://github.com/aspose-html-cloud/aspose-html-cloud-java

try
    {
    // קבל ClientID ו-ClientSecret מ-https://dashboard.aspose.cloud/
    String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
    String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
  
    // פרטים להזמנת 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);
        
    // צור אובייקט של Aspose.HTML Cloud API
    com.aspose.html.api.ConversionApi htmlApi = new ApiClient().createService(ConversionApi.class);
     	
    // מסמך ה-html מאחסון ענן
    String name = "list.html";
    // פורמט תמונה שנוצר
    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
    	
    // הפעל את ה-API להמרת HTML ל-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);
    }

הקוד לעיל מחזיר את התוצאה בזרם התגובה ולכן, כדי לשמור את הפלט בכונן מקומי, אנו עשויים לשקול להשתמש בשיטה המותאמת אישית הבאה.

/*
* שיטה לוקחת את ResponseBody ואת שם הקובץ שנוצר כארגומנטים
*/
public static void checkAndSave(retrofit2.Call<okhttp3.ResponseBody> call, String fileName) throws IOException 
	{
	    // שלח את הבקשה באופן סינכרוני והחזיר את תגובתה.
	    retrofit2.Response<okhttp3.ResponseBody> res = call.execute();
	    
	    // גוף התגובה המבוסס על תגובה מוצלחת
	    okhttp3.ResponseBody answer = res.body();
	    
	    //שמור לספריית הבדיקה
	    boolean result = saveToDisc(answer, fileName);
	    
	    // ודא שערך התוצאה נכון (שלב אופציונלי)
	    Assert.assertTrue(result);
	}
	
  /*
  *
  * קרא לשיטה זו כדי לשמור תוכן תגובה כקובץ בכונן המקומי
  *
  */ 
	public static boolean saveToDisc(okhttp3.ResponseBody body, String fileName) 
	{
            // צור אובייקט קובץ המציין מיקום עבור הקובץ שנוצר
	    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;

                // לשמור את זרם הקבצים בכונן המקומי
		outputStream.write(fileReader, 0, read);
		fileSizeDownloaded += read;
            }
	    // נקה את מופע זרם הפלט
	    outputStream.flush();
	    
	    // החזר true כשמירה של קובץ בהצלחה
	    return true;
	    } catch (Exception e) {
		e.printStackTrace();
		return false;
	    }
	} // saveToDisc ends here
HTML ל-XPS

תמונה 1: - תצוגה מקדימה של HTML ל-XPS

ניתן להוריד את הקבצים לדוגמה בדוגמה לעיל מ-list.html ו-resultantFile.xps.

HTML ל-XPS באמצעות פקודות cURL

ניתן לגשת אל ממשקי ה- REST API גם באמצעות פקודות cURL, כך שבסעיף זה, אנו הולכים ללמוד את השלבים כיצד לבצע המרת HTML ל-XPS באמצעות פקודת cURL. כעת כדרישה מוקדמת, עלינו ליצור תחילה אסימון אינטרנט של JSON (JWT) על סמך אישורי הלקוח האישיים שלך. אנא בצע את הפקודה הבאה כדי ליצור את אסימון 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"

עכשיו כשיש לנו את אסימון JWT, אנא בצע את הפקודה הבאה בטרמינל כדי לבצע המרת HTML ל-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

סיכום

מאמר זה הסביר את הפרטים להמרת HTML ל-XPS באמצעות REST API. למדנו את השלבים להמרת HTML ל-XPS באמצעות קטעי קוד של Java וכן באמצעות פקודות cURL. יתר על כן, שים לב שהמוצר תיעוד הוא מקור נהדר ללימוד היכולות המדהימות המוצעות על ידי ה-API. יתרה מזאת, אם אתה נתקל בבעיות כלשהן במהלך השימוש ב-API, אל תהסס לפנות לפורום תמיכת מוצרים בחינם.

מאמרים קשורים

אנו ממליצים גם לבקר בבלוגים הבאים לפרטים נוספים לגבי: