Конвертировать XHTML в изображение – облачные SDK и REST API XHTML в изображение XHTML – это язык разметки, который сочетает в себе синтаксис HTML со строгостью XML, что позволяет создавать хорошо сформированные и структурированные веб-документы. Преобразование XHTML в формат изображения, например JPEG или PNG, позволяет пользователям создавать визуальные снимки веб-контента для различных целей. Это преобразование особенно полезно для создания эскизов, предварительного просмотра или визуальных представлений веб-страниц, которыми можно легко делиться, отображать или встраивать в другие документы или приложения.
Aspose.HTML Cloud v4.0 предоставляет простейший API для преобразования документов XHTML в форматы файлов изображений с высоким качеством, просто и быстро.
Преобразование локального файла XHTML в изображение и сохранение результата в локальной файловой системе. В этом сценарии мы рассмотрим как преобразования с параметрами преобразования по умолчанию, так и с явно заданными параметрами. Преобразование XHTML в изображение в облачном хранилище с параметрами преобразования по умолчанию. В статье с помощью набора примеров кода объясняется, как преобразовать документ XHTML в форматы файлов изображений, такие как JPEG , PNG , GIF , TIFF или BMP с использованием Aspose.HTML Cloud SDK и вызовов REST API. SDK доступны на PHP, C++, Python, C#, Ruby, Java, Android, Swift и Node.js. Мы рассмотрим различные сценарии преобразования XHTML в изображения:
Примеры SDK для преобразования XHTML в изображения Широко распространенным вариантом использования функций Aspose.HTML Cloud SDK является обработка и преобразование файлов. Cloud SDK позволяет вам получить документ XHTML из места хранения по его имени или локальному файлу на вашем диске, преобразовать его в указанный формат и сохранить в хранилище или на локальном диске. Следующие примеры кода демонстрируют, как преобразовать XHTML в изображение для различных случаев с использованием доступных SDK.
Пример 1. Конвертировать XHTML в JPG JPG – один из наиболее часто используемых форматов изображений. Его уникальность – контролируемая потеря качества при сжатии. Поэтому он широко используется для хранения и отправки графического контента (фотографии, сканированные копии, оцифрованные изображения) через Интернет.
Рассмотрите возможность преобразования документа XHTML, изначально расположенного в локальной файловой системе, в формат JPG. Полученный файл затем сохраняется обратно в локальную файловую систему. Преобразование происходит с параметрами преобразования по умолчанию.
C# В следующем примере демонстрируется самый простой способ преобразования XHTML в JPG с использованием языка C#. Вы можете скачать C# SDK из
репозитория GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Convert XHTML to JPG
5 var result = await api. ConvertAsync ( "test.xhtml" , "test.jpg" );
Java The following example demonstrates how to convert XHTML to JPG Java language applying. You can download the java SDK from the
GitHub repository .
Copy 1 Configuration. setBasePath ( "https://api.aspose.cloud" );
2 Configuration. setAuthPath ( "https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 . fromLocalFile ( "input.xhtml" )
8 . saveToLocal ( "output.jpeg" );
9
10 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert XHTML to JPG C++ language applying.
Copy 1 // Get current directory
2 std: : string cur_dir ( argv[ 0 ]);
3 int pos = cur_dir. find_last_of ( "/\\" );
4 cur_dir = cur_dir. substr ( 0 , pos + 1 ); // Include the last slash
5 std: : wstring w_cur_dir ( cur_dir. begin (), cur_dir. end ());
6
7 const utility:: string_t clientId = L"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ;
8 const utility:: string_t clientSecret = L"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
9 const utility:: string_t basePath = L"https://api.aspose.cloud/v4.0" ;
10 const utility:: string_t authPath = L"https://api.aspose.cloud/connect/token" ;
11
12 // Create configuration for authorization
13 std: : shared_ptr< ApiConfiguration> apiConfig ( new ApiConfiguration( clientId, clientSecret, basePath, authPath));
14
15 // Create client from configuration
16 std: : shared_ptr< ApiClient> apiClient ( new ApiClient( apiConfig));
17
18 // Create ConversionApi
19 std: : shared_ptr< ConversionApi> api = std:: make_shared< ConversionApi>( apiClient);
20
21 // File name for conversion
22 utility: : string_t src = w_cur_dir + L"test.xhtml" ;
23 utility: : string_t dst = w_cur_dir + L"result.jpeg" ;
24
25 //Conversion
26 auto result = api-> convertLocalToLocal( src, dst);
27
28 // Check the result file
29 auto re = result-> getFile();
30 std: : ifstream f ( re. c_str ());
31 if (! f. good ())
32 {
33 throw std:: runtime_error( "Conversion failed" );
34 }
Python The following example demonstrates how to convert XHTML to JPG Python language applying. You can download the Python SDK from the
GitHub repository .
Copy 1 from asposehtmlcloud. configuration import Configuration
2 from asposehtmlcloud. api . html_api import HtmlApi
3 from asposehtmlcloud. api_client import ApiClient as Client
4 from asposehtmlcloud. rest import ApiException
5
6 configuration = Configuration( apiKey= "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
7 appSid= "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
8 basePath= "https://api.aspose.cloud/v4.0" ,
9 authPath= "https://api.aspose.cloud/connect/token" ,
10 debug= True)
11 client = Client( configuration)
12 html_api = HtmlApi( client)
13
14 try:
15 res = html_api. convertApi . convert_local_to_local ( input_file= "test.xhtml" , output_file= "test.jpeg" )
16 except ApiException as ex:
17 print( "Exception" )
18 print( "Info: " + str( ex))
19 raise ex
PHP The following example demonstrates how to convert XHTML to JPG PHP language applying. You can download the PHP SDK from the
GitHub repository
Copy 1 <? php
2 require_once ( __DIR__ . ' / vendor/ autoload. php ' );
3
4 $conf = array(
5 "basePath" => "https://api.aspose.cloud/v4.0" ,
6 "authPath" => "https://api.aspose.cloud/connect/token" ,
7 "apiKey" => "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
8 "appSID" => "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
9 "defaultUserAgent" => "Webkit"
10 );
11
12 $api_html = new Client\ Invoker\ Api\ HtmlApi( $conf);
13
14 $src = ' input. xhtml ' ;
15 $dst = ' output. jpeg ' ;
16
17 try {
18 // Request to server Api
19 $result = $api_html-> convertLocalToLocal( $src, $dst);
20 print_r( $result);
21 } catch ( Exception $e) {
22 echo ' Exception when calling HtmlApi-> convertLocalToLocal: ' , $e-> getMessage(), PHP_EOL;
23 }
24
25 ?>
Ruby The following example demonstrates how to convert XHTML to JPG Ruby language applying. You can download the Ruby SDK from the
GitHub repository .
Copy 1 # load the gem
2 require ' aspose_html_cloud'
3
4 # Get keys from aspose site.
5 # There is free quota available.
6 # For more details, see https: //purchase.aspose.cloud/pricing
7
8 CONFIG = {
9 "basePath" : "https://api.aspose.cloud/v4.0" ,
10 "authPath" : "https://api.aspose.cloud/connect/token" ,
11 "apiKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
12 "appSID" : "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
13 "debug" : true
14 }
15
16 api_instance = AsposeHtml:: HtmlApi. new CONFIG
17
18 src = "test.xhtml" # String | Full path to the input file.
19 dst = "test.jpeg" # String | Full path to the result.
20
21 begin
22 # Convert the document from the local file and save result to the local file.
23 result = api_instance. convert_local_to_local ( src, dst)
24 p result
25 rescue AsposeHtml:: ApiError => e
26 puts "Exception when calling api_instance.convert_local_to_local: #{e}"
27 end
Node.js The following example demonstrates how to convert XHTML to JPG Node.js language applying.
Copy 1 // Get keys from aspose site.
2 // There is free quota available.
3 // For more details, see https://purchase.aspose.cloud/pricing
4
5 var conf = {
6 "basePath" : "https://api.aspose.cloud/v4.0" ,
7 "authPath" : "https://api.aspose.cloud/connect/token" ,
8 "apiKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
9 "appSID" : "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
10 "defaultUserAgent" : "NodeJsWebkit"
11 };
12
13 var api = require( ' @asposecloud / aspose- html- cloud' );
14
15 // Create Conversion Api object
16 var conversionApi = new api. ConversionApi ( conf);
17
18 var src = "/path/to/src/test.xhtml" ; // {String} Source document.
19 var dst = "/path/to/dst/test.jpeg" ; // {String} Result document.
20 var opts = null ;
21
22 var callback = function( error, data, response) {
23 if ( error) {
24 console. error ( error);
25 } else {
26 console. log ( data);
27 }
28 };
29
30 conversionApi. convertLocalToLocal ( src, dst, opts, callback);
Swift The following example demonstrates how to convert XHTML to JPG Swift language applying. You can download the Swift SDK from the
GitHub repository .
Copy 1 import Alamofire
2 import Foundation
3 import XCTest
4 import AsposeHtmlCloud
5
6 static let fm = FileManager. default
7 let resourceDir = fm. homeDirectoryForCurrentUser . appendingPathComponent ( "Documents/Aspose.HTML.Cloud.SDK.Swift/Tests/AsposeHtmlCloudTests/Resources" )
8 let resultDir = fm. homeDirectoryForCurrentUser . appendingPathComponent ( "Documents/Aspose.HTML.Cloud.SDK.Swift/Tests/AsposeHtmlCloudTests/TestResult" )
9
10 func url ( forResource fileName: String) -> URL {
11 return resourceDir. appendingPathComponent ( fileName)
12 }
13
14 func fileExist ( name: String) -> Bool {
15 return FileManager. default . fileExists ( atPath: name)
16 }
17
18 ClientAPI. setConfig (
19 basePath: "https://api.aspose.cloud/v4.0" ,
20 authPath: "https://api.aspose.cloud/connect/token" ,
21 apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
22 appSID: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
23 debugging: true
24 )
25
26 let fileName = "test.xhtml"
27 let format = "jpeg"
28 let src = url( forResource: fileName). absoluteString
29
30 let expectation = self. expectation ( description: "testConvert to \(format)" )
31 let dst = resultDir. appendingPathComponent ( "Output.\(format)" ). absoluteString
32 HtmlAPI. convertLocalToLocal ( src: src, dst: dst, options: nil) { ( data, error) in
33
34 guard error == nil else {
35 XCTFail( "Error convert XHTML to \(format)). Error=\(error!.localizedDescription)" )
36 return
37 }
38 let resultPath = data!. file !
39 XCTAssertTrue( fileExist( name: resultPath))
40 expectation. fulfill ()
41 }
42 self. waitForExpectations ( timeout: 100.0 , handler: nil)
Java/Android The following example demonstrates how to convert XHTML to JPG using Java/Android. You can download the Java/Android SDK from the
GitHub repository .
Copy 1 Configuration. setBasePath ( "https://api.aspose.cloud" );
2 Configuration. setAuthPath ( "https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 . fromLocalFile ( "input.xhtml" )
8 . saveToLocal ( "output.jpeg" );
9
10 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert XHTML to JPG REST API applying. Take a few required steps:
Upload a local file to storage using
Storage API . Call REST API to execute conversion (in the example below). Download conversion result back from storage using
Storage API . Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/XHTML-jpg" \
3 - d "{'InputPath': '/testpage.xhtml', 'OutputFile': 'test.jpg'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
Преобразование XHTML в JPG происходит с использованием параметров преобразования по умолчанию : ширина и высота результирующего документа JPG соответствуют формату A4, а все поля имеют нулевое значение.
Пример 2. Конвертировать XHTML в PNG с явно заданными параметрами Формат изображений PNG широко используется для передачи изображений по сети, отображения фотографий и графики на веб-страницах и резервирования в облачных хранилищах. Преобразование XHTML в PNG может потребоваться, например, если вы хотите добавить веб-страницу в презентацию PowerPoint, вставить ее в блог для своих читателей или отправить по электронной почте. В приведенном ниже примере показано, как преобразовать XHTML в PNG с явно заданными параметрами и сохранить результат обратно в локальную файловую систему.
C# В следующем примере SDK показано, как преобразовать XHTML в PNG с применением языка C#. XHTML берется из локальной файловой системы, преобразуется в PNG и сохраняется на локальном диске. Вы можете скачать C# SDK из
репозитория GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Create an options instance and specify options for XHTML to PNG conversion
5 var options = new ImageConversionOptions()
6 . SetHeight ( 800 )
7 . SetWidth ( 1000 )
8 . SetLeftMargin ( 10 )
9 . SetRightMargin ( 10 )
10 . SetBottomMargin ( 10 )
11 . SetTopMargin ( 10 );
12
13 // Convert XHTML to PNG
14 var result = await api. ConvertAsync ( "test.xhtml" , "test.png" , options);
Java The following example demonstrates how to convert XHTML to PNG Java language applying. XHTML is taken from a local file system, converted to PNG and saved to the local file. You can download the java SDK from the
GitHub repository .
Copy 1 Configuration. setBasePath ( "https://api.aspose.cloud" );
2 Configuration. setAuthPath ( "https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" );
5
6 ImageConversionOptions opt = new ImageConversionOptions()
7 . setWidth ( 600 )
8 . setHeight ( 900 )
9 . setTopMargin ( 20 )
10 . setBottomMargin ( 20 )
11 . setLeftMargin ( 20 )
12 . setRightMargin ( 20 );
13
14 JobBuilder builder = new ConverterBuilder()
15 . fromLocalFile ( "input.xhtml" )
16 . useOptions ( opt)
17 . saveToLocal ( "output.png" );
18
19 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert XHTML to PNG C++ language applying. XHTML is taken from the local file system, converted to PNG and saved to the local file system.
Copy 1 // Get current directory
2 std: : string cur_dir ( argv[ 0 ]);
3 int pos = cur_dir. find_last_of ( "/\\" );
4 cur_dir = cur_dir. substr ( 0 , pos + 1 ); // Include the last slash
5 std: : wstring w_cur_dir ( cur_dir. begin (), cur_dir. end ());
6
7 const utility:: string_t clientId = L"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ;
8 const utility:: string_t clientSecret = L"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
9 const utility:: string_t basePath = L"https://api.aspose.cloud/v4.0" ;
10 const utility:: string_t authPath = L"https://api.aspose.cloud/connect/token" ;
11
12 // Create configuration for authorization
13 std: : shared_ptr< ApiConfiguration> apiConfig ( new ApiConfiguration( clientId, clientSecret, basePath, authPath));
14
15 // Create client from configuration
16 std: : shared_ptr< ApiClient> apiClient ( new ApiClient( apiConfig));
17
18 // Create ConversionApi
19 std: : shared_ptr< ConversionApi> api = std:: make_shared< ConversionApi>( apiClient);
20
21 // File name for conversion
22 utility: : string_t src = w_cur_dir + L"test.xhtml" ;
23 utility: : string_t dst = w_cur_dir + L"result.png" ;
24
25 std: : shared_ptr< ConversionOptions> opts = std:: make_shared< ConversionOptions>();
26 opts-> setWidth( 800 )
27 -> setHeight( 600 )
28 -> setLeftMargin( 10 )
29 -> setRightMargin( 10 )
30 -> setTopMargin( 10 )
31 -> setBottomMargin( 10 );
32
33 //Conversion
34 auto result = api-> convertLocalToLocal( src, dst, opts);
35
36 // Check the result file
37 auto re = result-> getFile();
38 std: : ifstream f ( re. c_str ());
39 if (! f. good ())
40 {
41 throw std:: runtime_error( "Conversion failed" );
42 }
Python The following example demonstrates how to convert XHTML to PNG Python language applying. XHTML is taken from a local file system, converted to PNG and saved to the local drive. You can download the Python SDK from the
GitHub repository .
Copy 1 from asposehtmlcloud. configuration import Configuration
2 from asposehtmlcloud. api . html_api import HtmlApi
3 from asposehtmlcloud. api_client import ApiClient as Client
4 from asposehtmlcloud. rest import ApiException
5
6 configuration = Configuration( apiKey= "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
7 appSid= "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
8 basePath= "https://api.aspose.cloud/v4.0" ,
9 authPath= "https://api.aspose.cloud/connect/token" ,
10 debug= True)
11 client = Client( configuration)
12 html_api = HtmlApi( client)
13
14 options = {
15 ' width' : 600 ,
16 ' height' : 900 ,
17 ' topmargin' : 20 ,
18 ' bottommargin' : 20 ,
19 ' leftmargin' : 20 ,
20 ' rightmargin' : 20
21 }
22
23 try:
24 res = html_api. convertApi . convert_local_to_local ( input_file= "test.xhtml" , output_file= "test.png" , options= options)
25 except ApiException as ex:
26 print( "Exception" )
27 print( "Info: " + str( ex))
28 raise ex
PHP The following example demonstrates how to convert XHTML to PNG PHP language applying. XHTML is taken from a local file system, converted to PNG and saved to the local file. You can download the PHP SDK from the
GitHub repository
Copy 1 <? php
2 require_once ( __DIR__ . ' / vendor/ autoload. php ' );
3
4 $conf = array(
5 "basePath" => "https://api.aspose.cloud/v4.0" ,
6 "authPath" => "https://api.aspose.cloud/connect/token" ,
7 "apiKey" => "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
8 "appSID" => "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
9 "defaultUserAgent" => "Webkit"
10 );
11
12 $api_html = new Client\ Invoker\ Api\ HtmlApi( $conf);
13
14 $src = ' input. xhtml ' ;
15 $dst = ' output. png ' ;
16
17 $options = [
18 ' width' => 800 ,
19 ' height' => 600 ,
20 ' left_margin' => 20 ,
21 ' right_margin' => 20 ,
22 ' top_margin' => 20 ,
23 ' bottom_margin' => 20
24 ];
25
26
27 try {
28 // Request to server Api
29 $result = $api_html-> convertLocalToLocal( $src, $dst, $options);
30 print_r( $result);
31 } catch ( Exception $e) {
32 echo ' Exception when calling HtmlApi-> convertLocalToLocal: ' , $e-> getMessage(), PHP_EOL;
33 }
34 ?>
Ruby The following example demonstrates how to convert XHTML to PNG Ruby language applying. XHTML is taken from a local file system, converted to PNG and saved to the local drive. You can download the Ruby SDK from the
GitHub repository .
Copy 1 # load the gem
2 require ' aspose_html_cloud'
3
4 # Get keys from aspose site.
5 # There is free quota available.
6 # For more details, see https: //purchase.aspose.cloud/pricing
7
8
9 CONFIG = {
10 "basePath" : "https://api.aspose.cloud/v4.0" ,
11 "authPath" : "https://api.aspose.cloud/connect/token" ,
12 "apiKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
13 "appSID" : "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
14 "debug" : true
15 }
16
17 api_instance = AsposeHtml:: HtmlApi. new CONFIG
18
19 src = "test.xhtml" # String | Source file.
20 dst = "test.png" # String | Result file.
21
22 opts = {
23 width: 700 , # Float | Resulting image width in pixels.
24 height: 1000 , # Float | Resulting image height in pixels.
25 left_margin: 40 , # Float | Left resulting image margin in pixels.
26 right_margin: 40 , # Float | Right resulting image margin in pixels.
27 top_margin: 50 , # Float | Top resulting image margin in pixels.
28 bottom_margin: 50 # Float | Bottom resulting image margin in pixels.
29 }
30
31 begin
32 # Convert the HTML file from the local file and save result to the local file.
33 result = api_instance. convert_local_to_local ( src, dst, opts)
34 p result
35 rescue AsposeHtml:: ApiError => e
36 puts "Exception when calling api_instance.convert_local_to_local: #{e}"
37 end
Node.js The following example demonstrates how to convert XHTML to PNG Node.js language applying. XHTML is taken from a local file system, converted to PNG and saved to the local file.
Copy 1 // Get keys from aspose site.
2 // There is free quota available.
3 // For more details, see https://purchase.aspose.cloud/pricing
4
5 var conf = {
6 "basePath" : "https://api.aspose.cloud/v4.0" ,
7 "authPath" : "https://api.aspose.cloud/connect/token" ,
8 "apiKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
9 "appSID" : "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
10 "defaultUserAgent" : "NodeJsWebkit"
11 };
12
13 var api = require( ' @asposecloud / aspose- html- cloud' );
14
15 // Create Conversion Api object
16 var conversionApi = new api. ConversionApi ( conf);
17
18 var src = "/path/to/src/test.xhtml" ; // {String} Source document.
19 var dst = "/path/to/dst/test.png" ; // {String} Result document.
20 var opts = {
21 ' width' : 600 ,
22 ' height' : 800 ,
23 ' leftMargin' : 10 ,
24 ' rightMargin' : 20 ,
25 ' topMargin' : 30 ,
26 ' bottomMargin' : 40
27 };
28
29 var callback = function( error, data, response) {
30 if ( error) {
31 console. error ( error);
32 } else {
33 console. log ( data);
34 }
35 };
36
37 conversionApi. convertLocalToLocal ( src, dst, opts, callback);
Swift The following example demonstrates how to convert XHTML to PNG Swift language applying. XHTML is taken from a local file system, converted to PNG and saved to the local drive. You can download the Swift SDK from the
GitHub repository .
Copy 1 import Alamofire
2 import Foundation
3 import XCTest
4 import AsposeHtmlCloud
5
6 static let fm = FileManager. default
7 let resourceDir = fm. homeDirectoryForCurrentUser . appendingPathComponent ( "Documents/Aspose.HTML.Cloud.SDK.Swift/Tests/AsposeHtmlCloudTests/Resources" )
8 let resultDir = fm. homeDirectoryForCurrentUser . appendingPathComponent ( "Documents/Aspose.HTML.Cloud.SDK.Swift/Tests/AsposeHtmlCloudTests/TestResult" )
9
10 func url ( forResource fileName: String) -> URL {
11 return resourceDir. appendingPathComponent ( fileName)
12 }
13
14 func fileExist ( name: String) -> Bool {
15 return FileManager. default . fileExists ( atPath: name)
16 }
17
18 ClientAPI. setConfig (
19 basePath: "https://api.aspose.cloud/v4.0" ,
20 authPath: "https://api.aspose.cloud/connect/token" ,
21 apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
22 appSID: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
23 debugging: true
24 )
25
26 let fileName = "test.xhtml"
27 let format = "png"
28 let src = url( forResource: fileName). absoluteString
29 let options = Options( width: 800 , height: 600 , leftMargin: 10 ,
30 rightMargin: 10 , topMargin: 10 , bottomMargin: 10 )
31
32
33 let expectation = self. expectation ( description: "testConvert to \(format)" )
34 let dst = resultDir. appendingPathComponent ( "Output.\(format)" ). absoluteString
35 HtmlAPI. convertLocalToLocal ( src: src, dst: dst, options: options) { ( data, error) in
36
37 guard error == nil else {
38 XCTFail( "Error convert XHTML to \(format)). Error=\(error!.localizedDescription)" )
39 return
40 }
41 let resultPath = data!. file !
42 XCTAssertTrue( fileExist( name: resultPath))
43 expectation. fulfill ()
44 }
45 self. waitForExpectations ( timeout: 100.0 , handler: nil)
Java/Android The following example demonstrates how to convert XHTML to PNG using Java/Android. XHTML is taken from a local file system, converted to PNG and saved to the local file. You can download the Java/Android SDK from the
GitHub repository .
Copy 1 Configuration. setBasePath ( "https://api.aspose.cloud" );
2 Configuration. setAuthPath ( "https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" );
5
6 ImageConversionOptions opt = new ImageConversionOptions()
7 . setWidth ( 600 )
8 . setHeight ( 900 )
9 . setTopMargin ( 20 )
10 . setBottomMargin ( 20 )
11 . setLeftMargin ( 20 )
12 . setRightMargin ( 20 );
13
14 JobBuilder builder = new ConverterBuilder()
15 . fromLocalFile ( "input.xhtml" )
16 . useOptions ( opt)
17 . saveToLocal ( "output.png" );
18
19 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert XHTML to PNG using REST API. Local XHTML converted to PNG and saved to the local file system.
Please take a few steps:
Upload local file to storage using
Storage API . Call REST API to execute conversion (in the example below). Download conversion result back from storage using
Storage API . Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/XHTML-png" \
3 - d "{'InputPath': '/testpage.xhtml', 'OutputFile': 'test.png', 'Options': {'Width':1000, 'Height': 800, 'LeftMargin': 10, 'RightMargin': 10, 'TopMargin': 10, 'BottomMargin': 10}}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization: bearer <token>"
Более подробную информацию о доступных параметрах преобразования для файлов XHTML можно найти в разделе
Параметры конвертации .
Пример 3. Конвертировать XHTML в GIF в облачном хранилище Для тех, кому необходимо преобразовать файл XHTML, хранящийся в облачном хранилище, в изображение, процесс выглядит следующим образом. Доступ к файлу XHTML осуществляется из облачного хранилища, он преобразуется в формат изображения, а затем сохраняется обратно в то же место в облачном хранилище.
C# В следующем примере показано, как преобразовать XHTML в GIF с применением языка C#. Файл XHTML находится в облачном хранилище, преобразован в GIF и сохранен обратно в облачное хранилище. Вы можете скачать C# SDK из
репозитория GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Convert XHTML to GIF
5 var builder = new ConverterBuilder()
6 . FromStorageFile ( "/test.xhtml" )
7 . ToStorageFile ( "/test.gif" );
8
9 var result = await api. ConvertAsync ( builder);
Java The following example shows how to convert XHTML to GIF Java language applying. XHTML file is in cloud storage, converted to GIF, and saved back to cloud storage. You can download the java SDK from the
GitHub repository .
Copy 1 Configuration. setBasePath ( "https://api.aspose.cloud" );
2 Configuration. setAuthPath ( "https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 . fromStorageFile ( "input.xhtml" )
8 . saveToStorage ( "output.gif" );
9
10 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert XHTML to GIF C++ language applying. XHTML file is in cloud storage, converted to GIF, and saved back to cloud storage.
Copy 1 const utility:: string_t clientId = L"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ;
2 const utility:: string_t clientSecret = L"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
3 const utility:: string_t basePath = L"https://api.aspose.cloud/v4.0" ;
4 const utility:: string_t authPath = L"https://api.aspose.cloud/connect/token" ;
5
6 // Create configuration for authorization
7 std: : shared_ptr< ApiConfiguration> apiConfig ( new ApiConfiguration( clientId, clientSecret, basePath, authPath));
8
9 // Create client from configuration
10 std: : shared_ptr< ApiClient> apiClient ( new ApiClient( apiConfig));
11
12 // Create ConversionApi
13 std: : shared_ptr< ConversionApi> api = std:: make_shared< ConversionApi>( apiClient);
14
15 // File name for conversion
16 utility: : string_t src = L"file/in/storage/index.xhtml" ;
17 utility: : string_t dst = L"result/in/storage/result.gif" ;
18
19 //Conversion
20 auto result = api-> convertStorageToStorage( src, dst);
Python The following example shows how to convert XHTML to GIF Python language applying. XHTML file is in cloud storage, converted to GIF, and saved back to cloud storage. You can download the Python SDK from the
GitHub repository .
Copy 1 from asposehtmlcloud. configuration import Configuration
2 from asposehtmlcloud. api . html_api import HtmlApi
3 from asposehtmlcloud. api_client import ApiClient as Client
4 from asposehtmlcloud. rest import ApiException
5
6 configuration = Configuration( apiKey= "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
7 appSid= "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
8 basePath= "https://api.aspose.cloud/v4.0" ,
9 authPath= "https://api.aspose.cloud/connect/token" ,
10 debug= True)
11 client = Client( configuration)
12 html_api = HtmlApi( client)
13
14 try:
15 res = html_api. convertApi . convert_storage_to_storage ( input_file= "test.xhtml" , output_file= "test.gif" ,
16 storage_name= None)
17 except ApiException as ex:
18 print( "Exception" )
19 print( "Info: " + str( ex))
20 raise ex
PHP The following example demonstrates how to convert XHTML to GIF PHP language applying. XHTML file is in cloud storage, converted to GIF, and saved back to cloud storage. You can download the PHP SDK from the
GitHub repository .
Copy 1 <? php
2 require_once ( __DIR__ . ' / vendor/ autoload. php ' );
3
4 $configuration = array(
5 "basePath" => "https://api.aspose.cloud/v4.0" ,
6 "authPath" => "https://api.aspose.cloud/connect/token" ,
7 "apiKey" => "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
8 "appSID" => "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
9 "defaultUserAgent" => "Webkit"
10 );
11
12 $api_html = new HtmlApi( $configuration);
13
14 $src = "FolderInStorage/test.xhtml" ;
15 $dst = ' FolderInStorage/ test. gif ' ;
16 $options = null ;
17
18 try {
19 $result = $api_html-> convertStorageToStorage( $src, $dst, null , $options);
20 print_r( $result);
21 } catch ( Exception $e) {
22 echo ' Exception when calling $api_html-> convertStorageToStorage: ' , $e-> getMessage(), PHP_EOL;
23 }
24 ?>
Ruby The following example shows how to convert XHTML to GIF Ruby language applying. XHTML file is in cloud storage, converted to GIF, and saved back to cloud storage. You can download the Ruby SDK from the
GitHub repository .
Copy 1 # load the gem
2 require ' aspose_html_cloud'
3
4 # Get keys from aspose site.
5 # There is free quota available.
6 # For more details, see https: //purchase.aspose.cloud/pricing
7
8
9 CONFIG = {
10 "basePath" : "https://api.aspose.cloud/v4.0" ,
11 "authPath" : "https://api.aspose.cloud/connect/token" ,
12 "apiKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
13 "appSID" : "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
14 "debug" : true
15 }
16
17 api_instance = AsposeHtml:: HtmlApi. new CONFIG
18
19 src = "FolderInStorage/test.xhtml" # String | Source file.
20 dst = "FolderInStorage/test.gif" # String | Result file.
21 storage = nil
22
23 begin
24 # Convert the file from the storage and save result to the storage.
25 result = api_instance. convert_storage_to_storage ( src, dst, storage)
26 p result
27 rescue AsposeHtml:: ApiError => e
28 puts "Exception when calling api_instance.convert_storage_to_storage: #{e}"
29 end
Node.js The following example shows how to convert XHTML to GIF Node.js language applying. XHTML file is in cloud storage, converted to GIF, and saved back to cloud storage.
Copy 1 // Get keys from aspose site.
2 // There is free quota available.
3 // For more details, see https://purchase.aspose.cloud/pricing
4
5 var conf = {
6 "basePath" : "https://api.aspose.cloud/v4.0" ,
7 "authPath" : "https://api.aspose.cloud/connect/token" ,
8 "apiKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
9 "appSID" : "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
10 "defaultUserAgent" : "NodeJsWebkit"
11 };
12
13 var api = require( ' @asposecloud / aspose- html- cloud' );
14
15 // Create Conversion Api object
16 var conversionApi = new api. ConversionApi ( conf);
17
18 var src = "FolderInStorage/test.xhtml" ; // {String} Source document.
19 var dst = "FolderInStorage/test.gif" ; // {String} Result document.
20 var opts = null ;
21 var storage = null ;
22
23 var callback = function( error, data, response) {
24 if ( error) {
25 console. error ( error);
26 } else {
27 console. log ( data);
28 }
29 };
30
31 conversionApi. convertStorageToStorage ( src, dst, storage, opts, callback);
Swift The following example shows how to convert XHTML to GIF Swift language applying. XHTML file is in cloud storage, converted to GIF, and saved back to cloud storage. You can download the Swift SDK from the
GitHub repository .
Copy 1 import Alamofire
2 import Foundation
3 import XCTest
4 import AsposeHtmlCloud
5
6 ClientAPI. setConfig (
7 basePath: "https://api.aspose.cloud/v4.0" ,
8 authPath: "https://api.aspose.cloud/connect/token" ,
9 apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
10 appSID: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
11 debugging: true
12 )
13
14 let src = "FolderInStorage/test.xhtml"
15 let dst = "FolderInStorage/test.gif"
16
17 let expectation = self. expectation ( description: "testConvert to gif" )
18
19 HtmlAPI. convertStorageToStorage ( src: src, dst: dst, storage: nil, options: nil) { ( data, error) in
20
21 guard error == nil else {
22 XCTFail( "Error convert XHTML to gif. Error=\(error!.localizedDescription)" )
23 return
24 }
25
26 let resultPath = data!. file !
27
28 StorageAPI. objectExists ( path: resultPath, storageName: nil, versionId: nil) {( data, error) in
29 guard error == nil else {
30 XCTFail( "Error objectExists exist. Error=\(error!.localizedDescription)" )
31 return
32 }
33
34 XCTAssertTrue( data!. exists )
35 XCTAssertFalse( data!. isFolder )
36 expectation. fulfill ()
37 }
38 }
39 self. waitForExpectations ( timeout: 100.0 , handler: nil)
Java/Android The following example shows how to convert XHTML to GIF using Java/Android. XHTML file is in cloud storage, converted to GIF, and saved back to cloud storage. You can download the Java/Android SDK from the
GitHub repository .
Copy 1 Configuration. setBasePath ( "https://api.aspose.cloud" );
2 Configuration. setAuthPath ( "https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 . fromStorageFile ( "input.xhtml" )
8 . saveToStorage ( "output.gif" );
9
10 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert XHTML to GIF using REST API. XHTML file is in cloud storage, converted to GIF, and saved back to cloud storage.
Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/XHTML-gif" \
3 - d "{'InputPath': '/test.xhtml', 'OutputFile': '/test.gif'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
Смотрите также Статья
Доступные SDK знакомит вас с возможностями Aspose.HTML Cloud использовать SDK на различных языках программирования, таких как C#, Java, Python, Ruby, PHP, Node.js, Swift, Android и C++. В статье
Параметры конвертации описан набор классов, которые представляют параметры преобразования исходного документа на основе HTML в PDF, XPS и изображения. Облачный API Aspose.HTML можно вызвать непосредственно из браузера, открыв
Справочник по API . Aspose.HTML предлагает бесплатный онлайн-конвертер XHTML в изображения (30), который быстро конвертирует XHTML в изображения с высоким качеством. Просто загрузите файлы, конвертируйте их и получите результат через несколько секунд!