HTML إلى XPS

تحويل HTML إلى XPS

لغة ترميز النص التشعبي (HTML) هي لغة ترميز قياسية لإنشاء صفحات الويب. يسمح بإنشاء وهيكل الأقسام والفقرات والروابط باستخدام عناصر / علامات HTML. وفي حالة استخدام بعض الخطوط المخصصة في ملف HTML أو الإشارة إلى أي كائن ديناميكي مما يتطلب اتصالًا نشطًا بالجهاز / الخادم المصدر ، فهناك فرص للتنازل عن دقة المستند. على الجانب الآخر ، في مواصفات ورق XML (XPS) ، يتم تحديد عناصر الصفحة بشكل مستقل عن نظام تشغيل أو طابعة أو تطبيق عرض معين. لذا فإن الأسلوب الذكي هو تحويل HTML إلى تنسيق XPS.

واجهة برمجة تطبيقات تحويل HTML

Aspose.HTML Cloud SDK for Java هي واجهة برمجة تطبيقات (API) خفيفة الوزن قائمة على بنية REST توفر القدرات لإنشاء ومعالجة وتحويل ملفات HTML إلى PDF ، DOCX ، TIFF ، JPEG ، إلخ. كما أنها تدعم تحويل HTML إلى XPS. لذلك ، أولاً ، نحتاج إلى إضافة التفاصيل التالية في ملف pom.xml لمشروع نوع بناء 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 dashboard باستخدام حساب GitHub أو Google. أو ببساطة أنشئ حسابًا جديدًا واحصل على تفاصيل بيانات اعتماد العميل.

تحويل HTML إلى XPS في Java

يرجى اتباع الإرشادات المحددة أدناه لتطوير محول HTML إلى XPS.

  • بادئ ذي بدء ، نحتاج إلى تحديد التفاصيل مقابل أساليب Configuration.setAPPSID و Configuration.setAPIKEY
  • ثانيًا ، قمنا بتعيين تفاصيل setBasePath (..) و setAuthPath (..) وحددنا setUserAgent (…) كـ WebKit
  • ثالثًا ، من أجل مساعدتنا الخاصة ، سنضع setDebug (..) على أنها صحيحة
  • الآن قم بإنشاء كائن من فئة 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();
	    
	    // العودة صحيحا كملف حفظ بنجاح
	    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 عبر أوامر cURL ، لذا في هذا القسم ، سنتعلم الخطوات الخاصة بكيفية إجراء تحويل HTML إلى XPS باستخدام الأمر cURL. الآن كشرط مسبق ، نحتاج أولاً إلى إنشاء JSON Web Token (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. علاوة على ذلك ، يرجى ملاحظة أن المنتج الوثائق يعد مصدرًا رائعًا لتعلم الإمكانات المذهلة التي تقدمها واجهة برمجة التطبيقات. علاوة على ذلك ، إذا واجهت أية مشكلات أثناء استخدام واجهة برمجة التطبيقات ، فلا تتردد في الاتصال بـ منتدى دعم المنتج المجاني.

مقالات ذات صلة

نوصي أيضًا بزيارة المدونات التالية للحصول على مزيد من التفاصيل حول: