Конвертируйте EPUB в PDF с помощью Cloud SDK – Aspose.HTML Aspose.HTML Cloud предоставляет простейший API для преобразования EPUB в PDF с высоким качеством, просто и быстро. Формат EPUB приобрел популярность как формат электронных книг на основе XML и предназначен для адаптации представления контента к устройству чтения. Он реализован в виде архивного файла, состоящего из файлов XHTML, несущих контент, изображения и другие вспомогательные файлы. PDF – это, по сути, статический документ, который может содержать текст, изображения, поля форм, мультимедиа, цифровые подписи, гиперссылки и т. д. Одним из преимуществ PDF является то, что ваша статья будет представлена именно так, как вы ее разработали, и она идеально подходит для отправки. документы, предназначенные для распечатки.
В этой статье в наборе примеров Aspose.HTML Cloud SDK объясняется, как конвертировать EPUB в PDF. SDK доступны на PHP, C++, Python, C#, Ruby, Java, Android, Swift и Node.js. Мы рассмотрим различные сценарии конвертации EPUB в PDF:
Преобразование локального файла EPUB в PDF и сохранение результата в локальной файловой системе. В этом сценарии мы рассмотрим как преобразования с параметрами преобразования по умолчанию, так и с явно заданными параметрами. Преобразование EPUB в PDF в облачном хранилище с параметрами преобразования по умолчанию. Примеры преобразования EPUB в PDF Широко распространенным вариантом использования функций Aspose.HTML Cloud является обработка и преобразование файлов. Cloud SDK позволяет вам получить документ EPUB из места хранения по его имени или из локального файла на вашем диске, преобразовать его в указанный формат и сохранить в хранилище или на локальном диске. В следующих примерах кода показано, как преобразовать EPUB в PDF для различных случаев с использованием доступных SDK и REST API.
Пример 1. Преобразование EPUB в PDF Рассмотрите возможность преобразования документа EPUB, изначально расположенного в локальной файловой системе, в формат PDF. Преобразование EPUB в PDF происходит с параметрами преобразования по умолчанию. Полученный файл затем сохраняется обратно в локальную файловую систему.
C# В следующем примере демонстрируется самый простой способ преобразования EPUB в PDF с применением языка C#. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется на локальном диске. Вы можете скачать C# SDK из
репозитория GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" ).ConvertApi ;
3
4 // Convert EPUB to PDF
5 var result = await api.ConvertAsync ("test.epub" , "test.pdf" );
Java В следующем примере показано, как преобразовать EPUB в PDF с применением языка Java. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется на локальном диске. Вы можете загрузить Java SDK из
репозитория GitHub .
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.epub" )
8 .saveToLocal ("output.pdf" );
9
10 OperationResult result = api.convert (builder);
C++ В следующем примере показано, как преобразовать EPUB в PDF с применением языка C++. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется на локальном диске.
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.epub" ;
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 В следующем примере показано, как преобразовать EPUB в PDF с применением языка Python. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется на локальном диске. Вы можете скачать Python SDK из
репозитория GitHub .
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.epub" , output_file= "test.pdf" )
16 except ApiException as ex:
17 print("Exception" )
18 print("Info: " + str(ex))
19 raise ex
PHP В следующем примере показано, как преобразовать EPUB в PDF с помощью языка PHP. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется на локальном диске. Вы можете скачать PHP SDK из
репозитория GitHub .
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.epub ' ;
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 В следующем примере показано, как преобразовать EPUB в PDF с применением языка Ruby. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется на локальном диске. Вы можете скачать Ruby SDK из
репозитория GitHub .
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.epub" # 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 В следующем примере показано, как преобразовать EPUB в PDF с помощью языка Node.js. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется на локальном диске.
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.epub" ; // {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 В следующем примере показано, как преобразовать EPUB в PDF с применением языка Swift. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется на локальном диске. Вы можете скачать Swift SDK из
репозитория GitHub .
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.epub"
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 epub 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 В следующем примере показано, как преобразовать EPUB в PDF с помощью Java/Android. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется на локальном диске. Вы можете загрузить Java/Android SDK из
репозитория GitHub .
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.epub" )
8 .saveToLocal ("output.pdf" );
9
10 OperationResult result = api.convert (builder);
CURL Загрузите локальный файл в хранилище с помощью
Storage API . Вызовите REST API для выполнения преобразования (в примере ниже). Загрузите результат преобразования обратно из хранилища с помощью
Storage API . В следующем примере показано, как преобразовать EPUB в PDF с применением REST API. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется на локальном диске. Выполните несколько обязательных шагов:
Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/epub-pdf" \
3 - d "{'InputPath': '/testpage.epub', 'OutputFile': 'test.pdf'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
Преобразование EPUB в PDF происходит с использованием параметров преобразования по умолчанию : ширина и высота полученного PDF-документа соответствуют формату A4, а все поля имеют нулевое значение.
Пример 2. Преобразование EPUB в PDF с явно заданными параметрами В приведенном ниже примере показано, как преобразовать файл EPUB из локальной файловой системы в PDF с явно заданными параметрами и сохранить результат обратно в файловую систему.
C# В следующем примере SDK показано, как преобразовать EPUB в PDF с применением языка C#. Вы можете скачать C# SDK из
репозитория GitHub .
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 EPUB to PDF conversion
5 var options = new PDFConversionOptions()
6 .SetHeight (8.3 )
7 .SetWidth (11.7 )
8 .SetLeftMargin (0.5 )
9 .SetRightMargin (0.5 )
10 .SetBottomMargin (0.5 )
11 .SetTopMargin (0.5 );
12
13 // Convert EPUB file to PDF format
14 var result = await api.ConvertAsync ("test.epub" , "test.pdf" , options);
Java В следующем примере показано, как преобразовать EPUB в PDF с применением языка Java. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется по локальному пути. Вы можете загрузить Java SDK из
репозитория GitHub .
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.epub" )
17 .useOptions (opt_A5)
18 .saveToLocal ("output.pdf" );
19
20 OperationResult result = api.convert (builder);
C++ В следующем примере показано, как преобразовать EPUB в PDF с помощью C++. EPUB берется из локальной файловой системы, конвертируется в PDF и сохраняется на локальном диске.
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.epub" ;
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 В следующем примере показано, как преобразовать EPUB в PDF с применением языка Python. EPUB берется из локальной файловой системы, конвертируется в PDF и сохраняется на локальном диске. Вы можете скачать Python SDK из
репозитория GitHub .
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 }
22
23 try :
24 res = html_api.convertApi .convert_local_to_local (input_file= "test.epub" , output_file= "test.pdf" , options= options)
25 except ApiException as ex:
26 print("Exception" )
27 print("Info: " + str(ex))
28 raise ex
PHP В следующем примере показано, как преобразовать EPUB в PDF с помощью языка PHP. Вы можете скачать PHP SDK из
репозитория GitHub .
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.epub ' ;
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 В следующем примере показано, как преобразовать EPUB в PDF с применением языка Ruby. EPUB берется из локальной файловой системы, преобразуется в PDF и сохраняется по локальному пути. Вы можете скачать Ruby SDK из
репозитория GitHub .
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.epub" # String | Source file.
20 dst = "test.pdf" # String | Result file.
21
22 opts = {
23 width: 8.3 , # Float | Resulting document width in inches.
24 height: 11.7 , # Float | Resulting document height in inches.
25 left_margin: 0.2 , # Float | Left resulting document margin in inches.
26 right_margin: 0.2 , # Float | Right resulting document margin in inches.
27 top_margin: 0.2 , # Float | Top resulting document margin in inches.
28 bottom_margin: 0.2 # Float | Bottom resulting document margin in inches.
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 В следующем примере показано, как преобразовать EPUB в PDF с помощью языка Node.js.
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.epub" ; // {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 В следующем примере показано, как преобразовать EPUB в PDF Swift. EPUB берется из локальной файловой системы, конвертируется в PDF и сохраняется на локальном диске. Вы можете скачать Swift SDK из
репозитория GitHub .
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.epub"
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 epub 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 В следующем примере показано, как преобразовать EPUB в PDF с помощью Java/Android. EPUB берется из локальной файловой системы, конвертируется в PDF и сохраняется на локальном диске. Вы можете загрузить Java/Android SDK из
репозитория GitHub .
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.epub" )
17 .useOptions (opt_A5)
18 .saveToLocal ("output.pdf" );
19
20 OperationResult result = api.convert (builder);
CURL Загрузите локальный файл в хранилище с помощью
Storage API . Вызовите REST API для выполнения преобразования (в примере ниже). Загрузите результат преобразования обратно из хранилища с помощью
Storage API . В следующем примере показано, как преобразовать EPUB в PDF с помощью REST API. Локальный EPUB конвертируется в PDF и сохраняется в локальной файловой системе. Выполните несколько обязательных шагов:
Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/epub-pdf" \
3 - d "{'InputPath': '/testpage.epub', '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>"
Более подробную информацию о доступных параметрах преобразования для файлов EPUB можно найти в разделе
Параметры конвертации .
Пример 3. Преобразование EPUB в PDF в облачном хранилище Aspose.HTML Cloud позволяет получить файл EPUB из облачного хранилища и сохранить результат преобразования обратно в облачное хранилище.
C# В следующем примере показано, как преобразовать EPUB в PDF с применением языка C#. Файл EPUB находится в облачном хранилище, преобразован в PDF и сохранен обратно в облачное хранилище. Вы можете скачать C# SDK из
репозитория GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi("CLIENT_ID" , "CLIENT_SECRET" ).ConvertApi ;
3
4 // Convert EPUB to PDF using ConvertAsync() method
5 var builder = new ConverterBuilder()
6 .FromStorageFile ("/test.epub" )
7 .ToStorageFile ("/test.pdf" );
8
9 var result = await api.ConvertAsync (builder);
Java В следующем примере показано, как преобразовать EPUB в PDF с применением языка Java. EPUB находится в облачном хранилище, конвертируется в PDF и сохраняется в облачном хранилище. Вы можете скачать Java SDK из
репозитория GitHub .
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.epub" )
8 .saveToStorage ("output.pdf" );
9
10 OperationResult result = api.convert (builder);
C++ В следующем примере показано, как преобразовать EPUB в PDF с помощью C++. EPUB находится в облачном хранилище, конвертируется в PDF и сохраняется обратно в облачное хранилище.
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.epub" ;
17 utility ::string_t dst = L"result/in/storage/result.pdf" ;
18
19 // Conversion
20 auto result = api-> convertStorageToStorage(src, dst);
Python В следующем примере показано, как преобразовать EPUB в PDF с использованием языка Python. Файл EPUB находится в облачном хранилище, преобразован в PDF и сохранен обратно в облачное хранилище. Вы можете скачать Python SDK из
репозитория GitHub .
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.epub" , 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 В следующем примере показано, как преобразовать EPUB в PDF с помощью языка PHP. Файл EPUB находится в облачном хранилище, преобразован в PDF и сохранен обратно в облачное хранилище. Вы можете скачать PHP SDK из
репозитория GitHub .
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.epub" ;
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 В следующем примере показано, как преобразовать EPUB в PDF с применением языка Ruby. Файл EPUB находится в облачном хранилище, преобразован в PDF и сохранен обратно в облачное хранилище. Вы можете скачать Ruby SDK из
репозитория GitHub .
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.epub" # String | Source file.
20 dst = "FolderInStorage/test.pdf" # 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 В следующем примере показано, как преобразовать EPUB в PDF с помощью языка Node.js. Файл EPUB находится в облачном хранилище, преобразован в PDF и сохранен обратно в облачное хранилище.
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.epub" ; // {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 В следующем примере показано, как преобразовать EPUB в PDF с применением языка Swift. Файл EPUB находится в облачном хранилище, преобразован в PDF и сохранен обратно в облачное хранилище. Вы можете скачать Swift SDK из
репозитория GitHub .
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.epub"
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 epub 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 В следующем примере показано, как преобразовать EPUB в PDF с помощью Java/Android. Файл EPUB находится в облачном хранилище, преобразован в PDF и сохранен обратно в облачное хранилище. Вы можете загрузить Java/Android SDK из
репозитория GitHub .
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.epub" )
8 .saveToStorage ("output.pdf" );
9
10 OperationResult result = api.convert (builder);
CURL В следующем примере показано, как преобразовать EPUB в PDF с помощью REST API. Файл EPUB находится в облачном хранилище, преобразован в PDF и сохранен обратно в облачное хранилище.
Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/epub-pdf" \
3 - d "{'InputPath': '/test.epub', 'OutputFile': '/test.pdf'}" \
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 предлагает бесплатный онлайн
EPUB в PDF Конвертер , который быстро и качественно конвертирует EPUB в PDF. Просто загрузите файлы, конвертируйте их и получите результат за считанные секунды!