Конвертировать SVG в PDF – Cloud SDK и REST API SVG в PDF PDF – это статический формат документа, который поддерживает текст, изображения, поля форм, мультимедиа, цифровые подписи, гиперссылки и т. д. Преобразование SVG в PDF сохраняет исходный макет и форматирование, обеспечивая автономный доступ, совместное использование и печать. Файлы PDF сохраняют визуальную целостность содержимого SVG, что делает их пригодными для просмотра на различных устройствах без подключения к Интернету. Широкие возможности совместимости и безопасности PDF-файлов улучшают обмен документами и защиту конфиденциальной информации.
Преобразование SVG в PDF использует сильные стороны PDF как универсального, безопасного и общепринятого формата документов, сохраняя при этом высококачественную векторную графику SVG. Aspose.HTML Cloud v4.0 предлагает простой API для быстрого и высококачественного преобразования документов SVG в формат PDF.
В статье в наборе примеров кода объясняется, как преобразовать документ SVG в PDF с помощью клиентских SDK Aspose.HTML Cloud и REST API. SDK доступны на PHP, C++, Python, C#, Ruby, Java, Android, Swift и Node.js. Мы рассмотрим различные сценарии конвертации SVG в PDF:
Преобразование локального файла SVG в PDF и сохранение результата в локальной файловой системе. В этом сценарии мы рассмотрим как преобразования с параметрами преобразования по умолчанию, так и с явно заданными параметрами. Преобразование SVG в PDF в облачном хранилище с параметрами преобразования по умолчанию. Примеры преобразования SVG в PDF Распространенным вариантом использования функций Aspose.HTML Cloud SDK является обработка и преобразование файлов. Cloud SDK позволяет вам получить документ SVG из хранилища по его имени или из локального файла на вашем диске, преобразовать его в указанный формат и сохранить обратно в хранилище или на локальный диск. Следующие примеры кода демонстрируют, как преобразовать SVG в PDF с использованием различных SDK и cURL для разных сценариев.
Пример 1. Конвертировать SVG в PDF с параметрами сохранения по умолчанию Ниже приведен пример преобразования локального файла SVG в PDF и сохранения результата в локальной файловой системе с использованием параметров преобразования по умолчанию.
C# В следующем примере демонстрируется самый простой способ преобразования SVG в PDF с применением языка C#. Вы можете скачать C# SDK из
репозитория GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Convert SVG to PDF
5 var result = await api. ConvertAsync ( "test.svg" , "test.pdf" );
Java The following example demonstrates how to convert SVG to PDF 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.svg" )
8 . saveToLocal ( "output.pdf" );
9
10 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert SVG to PDF C++ language applying. Local SVG 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.svg" ;
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 SVG 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.svg" , 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 SVG to PDF 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. svg ' ;
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 SVG 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.svg" # 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 SVG to PDF Node.js language applying. Local SVG 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.svg" ; // {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 SVG 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.svg"
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 SVG 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 SVG 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.svg" )
8 . saveToLocal ( "output.pdf" );
9
10 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert SVG to PDF REST API applying. 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/svg-pdf" \
3 - d "{'InputPath': '/testpage.svg', 'OutputFile': 'test.pdf'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
Преобразование SVG в PDF происходит с использованием параметров преобразования по умолчанию : ширина и высота полученного PDF-документа соответствуют формату A4, а все поля имеют нулевое значение.
Пример 2. Конвертировать SVG в PDF с явно заданными параметрами В приведенном ниже примере показано, как преобразовать файл SVG из локальной файловой системы в PDF с явно заданными параметрами и сохранить результат обратно в локальную файловую систему.
C# В следующем примере SDK показано, как преобразовать SVG в 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 SVG 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 SVG to PDF
14 var result = await api. ConvertAsync ( "test.svg" , "test.pdf" , options);
Java The following example demonstrates how to convert SVG to PDF 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 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.svg" )
17 . useOptions ( opt_A5)
18 . saveToLocal ( "output.pdf" );
19
20 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert SVG to PDF C++ language applying. SVG is taken from a local file system, converted to PDF and saved to the local drive.
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.svg" ;
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 SVG 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 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.svg" , output_file= "test.pdf" , 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 SVG to PDF 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. svg ' ;
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 SVG 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
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.svg" # 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 The following example demonstrates how to convert SVG to PDF 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.svg" ; // {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 SVG 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.svg"
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 SVG 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 SVG to PDF using Java/Android. SVG is taken from a local file system, converted to PDF and saved to the local drive. 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 ) // 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.svg" )
17 . useOptions ( opt_A5)
18 . saveToLocal ( "output.pdf" );
19
20 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert SVG to PDF using REST API. A local SVG file converted to PDF and saved to the local file system. Follow a few required steps:
Upload local file to storage. Call REST API to execute conversion (in the example below). Download conversion result back from storage. Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/svg-pdf" \
3 - d "{'InputPath': '/testpage.svg', '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>"
Более подробную информацию о доступных параметрах преобразования для файлов SVG можно найти в статье
Параметры конвертации .
Пример 3. Конвертировать SVG в PDF внутри облачного хранилища Aspose.HTML Cloud позволяет вам получить файл SVG из облачного хранилища, преобразовать его и сохранить результат обратно в облачное хранилище. Преобразование происходит с параметрами преобразования по умолчанию.
C# В следующем примере показано, как преобразовать SVG в PDF с помощью C#. Файл SVG извлекается из облачного хранилища, преобразуется в PDF и сохраняется обратно в облачное хранилище. Вы можете скачать C# SDK из
репозитория GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Convert SVG to PDF using ConvertAsync() method
5 var builder = new ConverterBuilder()
6 . FromStorageFile ( "/test.svg" )
7 . ToStorageFile ( "/test.pdf" );
8
9 var result = await api. ConvertAsync ( builder);
Java The following example shows how to convert SVG to PDF Java language applying. The SVG file is retrieved from cloud storage, converted to PDF, 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.svg" )
8 . saveToStorage ( "output.pdf" );
9
10 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert SVG to PDF C++ language applying. The SVG file is retrieved from cloud storage, converted to PDF, 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.svg" ;
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 SVG to PDF Python language applying. SVG is located in cloud storage, converted to PDF, and saved to the 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.svg" , 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 SVG to PDF PHP language applying. The SVG file is retrieved from cloud storage, converted to PDF, 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.svg" ;
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 SVG to PDF Ruby language applying. The SVG file is retrieved from cloud storage, converted to PDF, 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.svg" # 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 The following example shows how to convert SVG to PDF Node.js language applying. The SVG file is retrieved from cloud storage, converted to PDF, 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.svg" ; // {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 SVG to PDF Swift language applying. The SVG file is retrieved from cloud storage, converted to PDF, 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.svg"
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 SVG 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 SVG to PDF using Java/Android. The SVG file is retrieved from cloud storage, converted to PDF, 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.svg" )
8 . saveToStorage ( "output.pdf" );
9
10 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert SVG to PDF using REST API. SVG 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/svg-pdf" \
3 - d "{'InputPath': '/test.svg', '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 . Вы можете попробовать бесплатный онлайн
SVG Конвертер , который быстро конвертирует SVG в PDF с высоким качеством. Просто загрузите файлы, конвертируйте их и получите результат через несколько секунд!