Convert HTML to PDF using Cloud SDK – Aspose.HTML Cloud HTML files are frequently used to create, edit, or communicate a lot of information. However, there are times when converting HTML documents to PDF becomes imperative. HTML to PDF conversion is often required to establish limited access to documents editing or copying, to produce official documentation, or send some information, for example, by email.
This article explains in a set of Aspose.HTML Cloud SDK and REST API examples how to convert HTML to PDF. We’ll look at different HTML to PDF conversion scenarios: from storage to storage, from local file to local file system, and from the Web to local file system.
HTML to PDF Conversion A widespread use case for Aspose.HTML Cloud functions is file processing and converting. Aspose.HTML Cloud allows you to fetch an HTML document from a storage location by its name, from a URL or a local file on your drive, convert it to a specified format and save it to the storage or the local drive. The following code examples demonstrate how to convert HTML to PDF for different cases using available SDKs and REST API. A family of SDKs is available to help developers speed up their development, including C#, Java, C++, Python, PHP, Ruby, Swift, Java/Android, Node.js, etc. These SDKs allow developers to easily integrate HTML to PDF conversion functionality into their applications, regardless of the platform they are running on.
Asynchronous vs Synchronous Conversion There are two general approaches for converting HTML to PDF. The asynchronous approach involves submitting a conversion request, receiving an operation ID, and then checking the status of the conversion until it is completed. Once the status is completed, the resulting file can be downloaded using the provided download link. The synchronous approach, on the other hand, processes the conversion in a single operation. The API waits for the conversion to complete and directly returns the PDF in the response, eliminating the need to check statuses and perform separate download steps. Both methods support the same conversion options.
Asynchronous Conversion The asynchronous conversion approach allows for the submission of a conversion request, where the server processes the conversion in the background. Once the request is submitted, an operation ID is returned, which can be used to check the status of the conversion. Upon completion, the resulting file can be downloaded using the provided ID and download link. Below is an example of how to initiate an asynchronous conversion request.
Submit conversion request Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/html-pdf" \
3 - d "{'InputPath': 'https://example.com', 'OutputFile': 'test.pdf'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
Result:
Copy 1 {
2 "file" : null ,
3 "code" : 200 ,
4 "id" : "CN-a902f0ab-6d67-4847-93b3-9d90826f7ead" ,
5 "status" : "running" ,
6 "description" : null ,
7 "links" : {
8 "self" : "/v4.0/html/conversion/CN-a902f0ab-6d67-4847-93b3-9d90826f7ead" ,
9 "download" : null
10 }
11 }
Checking Conversion Status: To check the status of the conversion, use the id returned in the previous response:
Copy 1 curl - X GET "https://api.aspose.cloud/v4.0/html/conversion/CN-a902f0ab-6d67-4847-93b3-9d90826f7ead" \
2 - H "Content-Type: application/json" \
3 - H "Authorization:Bearer <JWT_token>"
Result:
Copy 1 {
2 "file" : "76482e8b-8d2e-465b-8407-5c7f6e93e614/example.pdf" ,
3 "code" : 200 ,
4 "id" : "CN-a902f0ab-6d67-4847-93b3-9d90826f7ead" ,
5 "status" : "completed" ,
6 "links" : {
7 "self" : "/v4.0/html/conversion/CN-a902f0ab-6d67-4847-93b3-9d90826f7ead" ,
8 "download" : "v4.0/html/file?path=76482e8b-8d2e-465b-8407-5c7f6e93e614/example.pdf"
9 }
10 }
Possible Statuses: • completed
• pending
• running
• faulted
• canceled
Downloading the Conversion Result: If the status is completed, the result can be downloaded using the id:
Copy 1 curl - X GET "https://api.aspose.cloud/v4.0/html/conversion/CN-662a4f3f-44a3-43ed-8c23-5c7b2a052c02/download" \
2 - H "Authorization:Bearer <JWT_token>"
The REST API will return the file as a response. This response will include the Content-Type set as application/octet-stream and the file will be sent as a binary stream for download. This is equivalent to:
Copy 1 Content- Type: application/ octet- stream
2 Content- Disposition: attachment; filename= "example.pdf"
Synchronous Conversion For smaller files, synchronous conversion can be used to eliminate the need to check statuses and download the result in separate calls. The entire process is handled within one call:
Copy 1 curl - X POST "https://api.aspose.cloud/v4.0/html/conversion/html-pdf/sync" \
2 - H "Content-Type: application/json" \
3 - H "Authorization:Bearer <JWT_token>" \
4 - d ' { "InputPath" : "https://example.com" } '
Result:
Copy 1 Content- Type: application/ octet- stream
2 Content- Disposition: attachment; filename= "example.pdf"
Example 1. Convert HTML to PDF with default save options Let’s look at an example of converting a local HTML file to PDF and saving the result to a local path. The conversion occurs with default conversion options.
C# The following example demonstrates the simplest way to convert HTML to PDF using C#. You can download the C# SDK from the
GitHub repository .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Convert HTML to PDF
5 var result = await api. ConvertAsync ( "test.html" , "test.pdf" );
Java The following example demonstrates how to convert HTML to PDF using Java. 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.html" )
8 . saveToLocal ( "output.pdf" );
9
10 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert HTML to PDF C++ language applying. Local HTML converted to PDF and saved to the local path.
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.html" ;
23 utility: : string_t dst = w_cur_dir + L"result.pdf" ;
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 HTML to PDF 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.html" , output_file= "test.pdf" )
16 except ApiException as ex:
17 print( "Exception" )
18 print( "Info: " + str( ex))
19 raise ex
PHP The following example demonstrates how to convert HTML to PDF using PHP. 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. html ' ;
15 $dst = ' output. pdf ' ;
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 HTML to PDF 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.html" # String | Full path to the input file.
19 dst = "test.pdf" # 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 HTML to PDF Node.js language applying. Local HTML converted to PDF and saved to the local path.
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.html" ; // {String} Source document.
19 var dst = "/path/to/dst/test.pdf" ; // {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 HTML to PDF 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.html"
27 let format = "pdf"
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 html 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 HTML to PDF 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.html" )
8 . saveToLocal ( "output.pdf" );
9
10 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert HTML to PDF using REST API. Follow 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/html-pdf" \
3 - d "{'InputPath': '/testpage.html', 'OutputFile': 'test.pdf'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
HTML to PDF conversion occurs with the default conversion options : the resulting PDF document’s width and height correspond to A4, and all margins have zero value.
Example 2. Convert HTML to PDF with explicitly specified options The example below demonstrates how to convert an HTML file from a local file system to PDF with explicitly specified options and save the result back to a local path.
C# The following SDK example demonstrates how to convert HTML to PDF using C#. HTML is taken from the local file system, converted to PDF and saved to the local path. You can download the C# SDK from the
GitHub repository .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Create an options object and specify options for HTML to PDF conversion
5 var options = new PDFConversionOptions()
6 . SetHeight ( 11.7 ) // A4 format in inches
7 . SetWidth ( 8.3 ) // A4 format in inches
8 . SetLeftMargin ( 0.5 )
9 . SetRightMargin ( 0.5 )
10 . SetBottomMargin ( 0.5 )
11 . SetTopMargin ( 0.5 );
12
13 // Convert HTML to PDF file
14 var result = await api. ConvertAsync ( "test.html" , "test.pdf" , options);
Java The following example demonstrates how to convert HTML to PDF using Java. HTML is taken from the local file system, converted to PDF and saved to the local path. 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 PDFConversionOptions opt_A5 = new PDFConversionOptions()
7 . setWidth ( 5.8 ) // A5 format in inches
8 . setHeight ( 8.3 )
9 . setTopMargin ( 0.5 )
10 . setBottomMargin ( 0.5 )
11 . setLeftMargin ( 0.5 )
12 . setRightMargin ( 0.5 )
13 . setQuality ( 95 );
14
15 JobBuilder builder = new ConverterBuilder()
16 . fromLocalFile ( "input.html" )
17 . useOptions ( opt_A5)
18 . saveToLocal ( "output.pdf" );
19
20 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert HTML to PDF using C++. HTML is taken from the local file system, converted to PDF and saved to the local path.
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.html" ;
23 utility: : string_t dst = w_cur_dir + L"result.pdf" ;
24
25 std: : shared_ptr< ConversionOptions> opts = std:: make_shared< ConversionOptions>();
26 opts-> setWidth( 8.3 )
27 -> setHeight( 11.7 )
28 -> setLeftMargin( 0.2 )
29 -> setRightMargin( 0.2 )
30 -> setTopMargin( 0.2 )
31 -> setBottomMargin( 0.2 );
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 HTML to PDF Python language applying. HTML is taken from the local file system, converted to PDF and saved to the local path. 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' : 8.3 ,
16 ' height' : 11.7 ,
17 ' topmargin' : 0.2 ,
18 ' bottommargin' : 0.2 ,
19 ' leftmargin' : 0.2 ,
20 ' rightmargin' : 0.2 ,
21 ' jpegquality' : 95
22 }
23
24 try:
25 res = html_api. convertApi . convert_local_to_local ( input_file= "test.html" , output_file= "test.pdf" , options= options)
26 except ApiException as ex:
27 print( "Exception" )
28 print( "Info: " + str( ex))
29 raise ex
PHP The following example demonstrates how to convert HTML to PDF using PHP. HTML is taken from the local file system, converted to PDF and saved to the local path. 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. html ' ;
15 $dst = ' output. pdf ' ;
16
17 $options_a4 = [
18 ' width' => 8.3 ,
19 ' height' => 11.7 ,
20 ' left_margin' => 0.2 ,
21 ' right_margin' => 0.2 ,
22 ' top_margin' => 0.2 ,
23 ' bottom_margin' => 0.2
24 ];
25
26
27 try {
28 // Request to server Api
29 $result = $api_html-> convertLocalToLocal( $src, $dst, $options_a4);
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 HTML to PDF Ruby language applying. HTML is taken from the local file system, converted to PDF and saved to the local path. 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.html" # String | Full path to the input file.
19 dst = "test.pdf" # String | Full path to the result.
20 opts = {
21 width: 8.3 , # Float | Resulting document width in inches.
22 height: 11.7 , # Float | Resulting document height in inches.
23 left_margin: 0.2 , # Float | Left resulting document margin in inches.
24 right_margin: 0.2 , # Float | Right resulting document margin in inches.
25 top_margin: 0.2 , # Float | Top resulting document margin in inches.
26 bottom_margin: 0.2 # Float | Bottom resulting document margin in inches.
27 }
28
29 begin
30 # Convert the document from the local file and save result to the local file.
31 result = api_instance. convert_local_to_local ( src, dst, opts)
32 p result
33 rescue AsposeHtml:: ApiError => e
34 puts "Exception when calling api_instance.convert_local_to_local: #{e}"
35 end
Node.js The following example demonstrates how to convert HTML to PDF Node.js language applying. HTML is taken from the local file system, converted to PDF and saved to the local path.
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.html" ; // {String} Source document.
19 var dst = "/path/to/dst/test.pdf" ; // {String} Result document.
20 var opts = {
21 ' width' : 8.3 ,
22 ' height' : 11.7 ,
23 ' leftMargin' : 0.2 ,
24 ' rightMargin' : 0.2 ,
25 ' topMargin' : 0.2 ,
26 ' bottomMargin' : 0.2
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 HTML to PDF Swift language applying. HTML is taken from the local file system, converted to PDF and saved to the local path. 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.html"
27 let format = "pdf"
28 let src = url( forResource: fileName). absoluteString
29 let options = Options( width: 8.3 , height: 11.7 , leftMargin: 0.2 ,
30 rightMargin: 0.2 , topMargin: 0.2 , bottomMargin: 0.2 )
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 html 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 HTML to PDF using Java/Android. HTML is taken from the local file system, converted to PDF and saved to the local path. 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 PDFConversionOptions opt_A5 = new PDFConversionOptions()
7 . setWidth ( 5.8 )
8 . setHeight ( 8.3 )
9 . setTopMargin ( 0.5 )
10 . setBottomMargin ( 0.5 )
11 . setLeftMargin ( 0.5 )
12 . setRightMargin ( 0.5 )
13 . setQuality ( 95 );
14
15 JobBuilder builder = new ConverterBuilder()
16 . fromLocalFile ( "input.html" )
17 . useOptions ( opt_A5)
18 . saveToLocal ( "output.pdf" );
19
20 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert HTML to PDF using REST API. Local HTML converted to PDF and saved to the local file system. Follow 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/html-pdf" \
3 - d "{'InputPath': '/testpage.html', 'OutputFile': 'test.pdf', 'Options': {'Width':1000, 'Height': 800, 'LeftMargin': 10, 'RightMargin': 10, 'TopMargin': 10, 'BottomMargin': 10}}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization: bearer <token>"
More details about available conversion parameters for HTML files you find in the
SDK Conversion Options article.
Example 3. Convert a Web page to PDF Aspose.HTML Cloud allows you to retrieve an HTML page from the web by its URL, convert it to another format, and save it to the local file system. The example below demonstrates how to convert a web page to PDF with the default conversion parameters.
C# This example illustrates how to convert a web page to PDF using C#. HTML is taken from the Web, converted to PDF and saved to a local file system. You can download the C# SDK from the
GitHub repository .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Convert HTML to PDF using ConvertUrlAsync() method
5 var result = await api. ConvertUrlAsync ( "https://example.com" , "test.pdf" );
Java The following example shows how to convert a web page to PDF using Java. HTML is taken from the Web, converted to PDF and saved to a local file system. 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 . fromUrl ( "https://example.com" )
8 . saveToLocal ( "output.pdf" );
9
10 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert a web page to PDF using C++. HTML is taken from the Web, converted to PDF and saved to a 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 = L"https://example.com" ;
23 utility: : string_t dst = w_cur_dir + L"result.pdf" ;
24
25 //Conversion
26 auto result = api-> convertUrlToLocal( 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 shows how to convert a web page to PDF Python language applying. HTML is taken from the Web, converted to PDF and saved to a local file system. You can download the Python SDK from the
GitHub repository .
Copy 1 import os
2 from asposehtmlcloud. configuration import Configuration
3 from asposehtmlcloud. api . html_api import HtmlApi
4 from asposehtmlcloud. api_client import ApiClient as Client
5 from asposehtmlcloud. rest import ApiException
6
7 # Get keys from aspose site.
8 # There is free quota available.
9 # For more details, see https: //purchase.aspose.cloud/pricing
10
11 configuration = Configuration( apiKey= "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
12 appSid= "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
13 basePath= "https://api.aspose.cloud/v4.0" ,
14 authPath= "https://api.aspose.cloud/connect/token" ,
15 debug= True)
16
17 client = Client( configuration)
18 html_api = HtmlApi( client)
19
20 try:
21 res = html_api. convert_url_to_local ( input_file= "https://example.com" , output_file= "result.pdf" )
22 if not os. path . exists ( res. file ):
23 print( ' conversion failed' )
24 except ApiException as ex:
25 print( "Exception" )
26 print( "Info: " + str( ex))
27 raise ex
PHP The following example demonstrates how to convert a web page to PDF using PHP. HTML is taken from the Web, converted to PDF and saved to a local file system. 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 = ' https: //example.com';
15 $dst = ' output. pdf ' ;
16
17 try {
18 // Request to server Api
19 $result = $api_html-> convertUrlToLocal( $src, $dst);
20 print_r( $result);
21 } catch ( Exception $e) {
22 echo ' Exception when calling HtmlApi-> convertUrlToLocal: ' , $e-> getMessage(), PHP_EOL;
23 }
24 ?>
Ruby The following example shows how to convert a web page to PDF Ruby language applying. HTML is taken from the Web, converted to PDF and saved to a local file system. 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 = "https://example.com" # String | Input url.
20 dst = "test.pdf" # String | Result file.
21
22 begin
23 # Convert the HTML file from the web and save result to the local file.
24 result = api_instance. convert_url_to_local ( src, dst)
25 p result
26 rescue AsposeHtml:: ApiError => e
27 puts "Exception when calling api_instance.convert_url_to_local: #{e}"
28 end
Node.js The following example shows how to convert a web page to PDF Node.js language applying. HTML is taken from the Web, converted to PDF and saved to a local file system.
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 = "https://example.com" ; // {String} Url for conversion.
19 var dst = "/path/to/dst/test.pdf" ; // {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. convertUrlToLocal ( src, dst, opts, callback);
Swift The following example shows how to convert a web page to PDF Swift language applying. HTML is taken from the Web, converted to PDF and saved to a local file system. 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 resultDir = fm. homeDirectoryForCurrentUser . appendingPathComponent ( "Documents/Aspose.HTML.Cloud.SDK.Swift/Tests/AsposeHtmlCloudTests/TestResult" )
8
9 func fileExist ( name: String) -> Bool {
10 return FileManager. default . fileExists ( atPath: name)
11 }
12
13 ClientAPI. setConfig (
14 basePath: "https://api.aspose.cloud/v4.0" ,
15 authPath: "https://api.aspose.cloud/connect/token" ,
16 apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
17 appSID: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
18 debugging: true
19 )
20
21 let format = "pdf"
22 let src = "https://example.com"
23 let dst = resultDir. appendingPathComponent ( "Output.\(format)" ). absoluteString
24
25 let expectation = self. expectation ( description: "testConvert to \(format)" )
26
27 HtmlAPI. convertUrlToLocal ( src: src, dst: dst, options: nil) { ( data, error) in
28
29 guard error == nil else {
30 XCTFail( "Error convert web site to \(format)). Error=\(error!.localizedDescription)" )
31 return
32 }
33 let resultPath = data!. file !
34 XCTAssertTrue( fileExist( name: resultPath))
35 expectation. fulfill ()
36 }
37 self. waitForExpectations ( timeout: 100.0 , handler: nil)
Java/Android The following example shows how to convert a web page to PDF using Java/Android. HTML is taken from the Web, converted to PDF and saved to a local file system. 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 . fromUrl ( "https://example.com" )
8 . saveToLocal ( "output.pdf" );
9
10 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert a web page to PDF using REST API. HTML is taken from the Web, converted to PDF and saved to a local file system. Follow a few required steps:
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/html-pdf" \
3 - d "{'InputPath': 'https://example.com', 'OutputFile': 'test.pdf'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
Result:
Copy 1 {
2 "file" : null ,
3 "code" : 200 ,
4 "id" : "CN-a902f0ab-6d67-4847-93b3-9d90826f7ead" ,
5 "status" : "running" ,
6 "description" : null ,
7 "links" : {
8 "self" : "/v4.0/html/conversion/CN-a902f0ab-6d67-4847-93b3-9d90826f7ead" ,
9 "download" : null
10 },
11 "originalPath" : null
12 }
Checking Conversion Status: To check the status of the conversion, use the id returned in the previous response:
Copy 1 curl - X GET "https://api.aspose.cloud/v4.0/html/conversion/CN-a902f0ab-6d67-4847-93b3-9d90826f7ead" \
2 - H "Content-Type: application/json" \
3 - H "Authorization:Bearer <JWT_token>"
Result:
Copy 1 {
2 "file" : "76482e8b-8d2e-465b-8407-5c7f6e93e614/example.pdf" ,
3 "code" : 200 ,
4 "id" : "CN-a902f0ab-6d67-4847-93b3-9d90826f7ead" ,
5 "status" : "completed" ,
6 "links" : {
7 "self" : "/v4.0/html/conversion/CN-a902f0ab-6d67-4847-93b3-9d90826f7ead" ,
8 "download" : "v4.0/html/file?path=76482e8b-8d2e-465b-8407-5c7f6e93e614/example.pdf"
9 }
10 }
Possible Statuses: • completed
• pending
• running
• faulted
• canceled
Downloading the Conversion Result: If the status is completed, the result can be downloaded using the id:
Copy 1 curl - X GET "https://api.aspose.cloud/v4.0/html/conversion/CN-662a4f3f-44a3-43ed-8c23-5c7b2a052c02/download" \
2 - H "Authorization:Bearer <JWT_token>"
The REST API will return the file as a response. This response will include the Content-Type set as application/octet-stream and the file will be sent as a binary stream for download. This is equivalent to:
Copy 1 Content- Type: application/ octet- stream
2 Content- Disposition: attachment; filename= "example.pdf"
Synchronous Conversion For smaller files, synchronous conversion can be used to eliminate the need to check statuses and download the result in separate calls. The entire process is handled within one call:
Copy 1 curl - X POST "https://api.aspose.cloud/v4.0/html/conversion/html-pdf/sync" \
2 - H "Content-Type: application/json" \
3 - H "Authorization:Bearer <JWT_token>" \
4 - d ' { "InputPath" : "https://example.com" } '
Result:
Copy 1 Content- Type: application/ octet- stream
2 Content- Disposition: attachment; filename= "example.pdf"
Web page to PDF conversion occurs with the default conversion options : the resulting PDF document’s width and height correspond to A4, and all margins have zero value.
Example 4. Convert HTML to PDF inside cloud storage Aspose.HTML Cloud allows you to get an HTML file from your cloud storage and save the conversion result back to cloud storage. Let’s look at an example of conversion within the cloud storge with default saving options.
C# The following example shows how to convert HTML to PDF using C#. A source HTML file is in a cloud storage, converted to PDF, and saved back to a cloud storage. You can download the C# SDK from the
GitHub repository .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Convert HTML to PDF
5 var builder = new ConverterBuilder()
6 . FromStorageFile ( "/test.html" )
7 . ToStorageFile ( "/test.pdf" );
8
9 var result = await api. ConvertAsync ( builder);
Java The following example shows how to convert HTML to PDF using Java. A source HTML file is in a cloud storage, converted to PDF, and saved back to a 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.html" )
8 . saveToStorage ( "output.pdf" );
9
10 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert HTML to PDF using C++. A source HTML file is in a cloud storage, converted to PDF, and saved back to a 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.html" ;
17 utility: : string_t dst = L"result/in/storage/result.pdf" ;
18
19 //Conversion
20 auto result = api-> convertStorageToStorage( src, dst);
Python The following example shows how to convert HTML to PDF Python language applying. A source HTML file is in a cloud storage, converted to PDF, and saved back to a 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.html" , output_file= "test.pdf" ,
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 HTML to PDF using PHP. A source HTML file is in a cloud storage, converted to PDF, and saved back to a 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.html" ;
15 $dst = ' FolderInStorage/ test. pdf ' ;
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 HTML to PDF Ruby language applying. A source HTML file is in a cloud storage, converted to PDF, and saved back to a 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.html" # String | Source file.
20 dst = "FolderInStorage/test.md" # 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 HTML to PDF Node.js language applying. A source HTML file is in a cloud storage, converted to PDF, and saved back to a 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.html" ; // {String} Source document.
19 var dst = "FolderInStorage/test.pdf" ; // {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 HTML to PDF Swift language applying. A source HTML file is in a cloud storage, converted to PDF, and saved back to a 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.html"
15 let dst = "FolderInStorage/test.pdf"
16
17 let expectation = self. expectation ( description: "testConvert to pdf" )
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 html to pdf). 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 HTML to PDF using Java/Android. A source HTML file is in a cloud storage, converted to PDF, and saved back to a 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.html" )
8 . saveToStorage ( "output.pdf" );
9
10 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert HTML to PDF using REST API. HTML file is located in cloud storage, converted to PDF and saved back to cloud storage.
Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/html-pdf" \
3 - d "{'InputPath': '/test.html', 'OutputFile': '/test.pdf'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
See Also The
Available SDKs article introduces you to Aspose.HTML Cloud’s ability to use SDKs in various programming languages, such as C#, Java, Python, Ruby, PHP, Node.js, Swift, Android, and C++. The
SDK Conversion Options article describes a set of classes that represent options for converting a source HTML-based document to PDF, XPS, and image. Aspose.HTML Cloud API you can call directly from your browser by accessing the
API Reference . Aspose.HTML offers a free online
HTML to PDF Converter that swiftly converts HTML to PDF with high quality. Just upload your files, convert them, and get the result in a few seconds!