Convierta MHTML en imagen – Cloud SDK y API REST MHTML a imagen Aspose.HTML Cloud v4.0 proporciona la API más sencilla para convertir documentos MHTML a formatos de archivos de imagen con alta calidad, fácil y rápido.
El formato MHTML ha ganado popularidad como formato de libro electrónico basado en XML y está diseñado para adaptar la presentación del contenido al dispositivo lector. Se implementa como un archivo que consta de archivos XHTML que contienen el contenido, imágenes y otros archivos de soporte. A veces, es necesario obtener una imagen en lugar de documentos MHTML, como hacerlos portátiles y compartirlos fácilmente en varios dispositivos, crear una galería de imágenes a partir de libros electrónicos, etc.
El artículo explica en un conjunto de ejemplos de código cómo convertir un documento MHTML a formatos de archivo de imagen como JPEG , PNG , GIF , TIFF o BMP usando los SDK de nube Aspose.HTML y llamadas API REST. Los SDK están disponibles en PHP, C++, Python, C#, Ruby, Java, Android, Swift y Node.js. Consideraremos varios escenarios de conversión de MHTML a imagen: de almacenamiento en almacenamiento, de un sistema de archivos local al sistema de archivos local, etc.
Ejemplos de SDK de conversión de MHTML a imagen Un caso de uso generalizado de las funciones de Aspose.HTML Cloud SDK es el procesamiento y la conversión de archivos. Cloud SDK le permite recuperar un documento MHTML de una ubicación de almacenamiento por su nombre o de un archivo local en su disco, convertirlo a un formato específico y guardarlo en el almacenamiento o en su disco local. Los siguientes ejemplos de código demuestran cómo convertir MHTML a imagen para diferentes casos utilizando los SDK disponibles.
Ejemplo 1. Convertir MHTML a JPG JPG es uno de los formatos de imagen más utilizados. Su singularidad es la pérdida controlada de calidad durante la compresión. Por tanto, es muy utilizado para almacenar y enviar contenido gráfico (fotos, copias escaneadas, imágenes digitalizadas) a través de Internet. Veamos un ejemplo de cómo convertir un archivo MHTML local a formato JPG y guardar el resultado en un sistema de archivos local. La conversión se produce con las opciones de conversión predeterminadas.
C# El siguiente ejemplo demuestra la forma más sencilla de convertir MHTML a JPG usando C#. MHTML local convertido a JPG y guardado en la ruta local. Puede descargar el SDK de C# desde el
repositorio de GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Convert MHTML to JPG
5 var result = await api. ConvertAsync ( "test.mhtml" , "test.jpg" );
Java The following example demonstrates how to convert MHTML to JPG using Java. Local MHTML converted to JPG 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 JobBuilder builder = new ConverterBuilder()
7 . fromLocalFile ( "input.mhtml" )
8 . saveToLocal ( "output.jpeg" );
9
10 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert MHTML to JPG C++ language applying. Local MHTML converted to JPG 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.mhtml" ;
23 utility: : string_t dst = w_cur_dir + L"result.jpeg" ;
24
25 //Conversion
26 auto result = api-> convertLocalToLocal( src, dst);
27
28 // Check the result file
29 auto re = result-> getFile();
30 std: : ifstream f ( re. c_str ());
31 if (! f. good ())
32 {
33 throw std:: runtime_error( "Conversion failed" );
34 }
Python The following example demonstrates how to convert MHTML to JPG Python language applying. Local MHTML converted to JPG 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 try:
15 res = html_api. convertApi . convert_local_to_local ( input_file= "test.mhtml" , output_file= "test.jpeg" )
16 except ApiException as ex:
17 print( "Exception" )
18 print( "Info: " + str( ex))
19 raise ex
PHP The following example demonstrates how to convert MHTML to JPG using PHP. Local MHTML converted to JPG 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. mhtml ' ;
15 $dst = ' output. jpeg ' ;
16
17 try {
18 // Request to server Api
19 $result = $api_html-> convertLocalToLocal( $src, $dst);
20 print_r( $result);
21 } catch ( Exception $e) {
22 echo ' Exception when calling HtmlApi-> convertLocalToLocal: ' , $e-> getMessage(), PHP_EOL;
23 }
24
25 ?>
Ruby The following example demonstrates how to convert MHTML to JPG Ruby language applying. Local MHTML converted to JPG 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.mhtml" # String | Full path to the input file.
19 dst = "test.jpeg" # String | Full path to the result.
20
21 begin
22 # Convert the document from the local file and save result to the local file.
23 result = api_instance. convert_local_to_local ( src, dst)
24 p result
25 rescue AsposeHtml:: ApiError => e
26 puts "Exception when calling api_instance.convert_local_to_local: #{e}"
27 end
Node.js The following example demonstrates how to convert MHTML to JPG Node.js language applying. Local MHTML converted to JPG 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.mhtml" ; // {String} Source document.
19 var dst = "/path/to/dst/test.jpeg" ; // {String} Result document.
20 var opts = null ;
21
22 var callback = function( error, data, response) {
23 if ( error) {
24 console. error ( error);
25 } else {
26 console. log ( data);
27 }
28 };
29
30 conversionApi. convertLocalToLocal ( src, dst, opts, callback);
Swift The following example demonstrates how to convert MHTML to JPG Swift language applying. Local MHTML converted to JPG 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.mhtml"
27 let format = "jpeg"
28 let src = url( forResource: fileName). absoluteString
29
30 let expectation = self. expectation ( description: "testConvert to \(format)" )
31 let dst = resultDir. appendingPathComponent ( "Output.\(format)" ). absoluteString
32 HtmlAPI. convertLocalToLocal ( src: src, dst: dst, options: nil) { ( data, error) in
33
34 guard error == nil else {
35 XCTFail( "Error convert MHTML 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 MHTML to JPG using Java/Android. Local MHTML converted to JPG 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 JobBuilder builder = new ConverterBuilder()
7 . fromLocalFile ( "input.mhtml" )
8 . saveToLocal ( "output.jpeg" );
9
10 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert MHTML to JPG using REST API. Local MHTML converted to JPG and saved to the local path. Take a few required steps:
Upload a local file to storage using
Storage API . Call REST API to execute conversion (in the example below). Download conversion result back from storage using
Storage API . Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/MHTML-jpg" \
3 - d "{'InputPath': '/testpage.mhtml', 'OutputFile': 'test.jpg'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
La conversión de MHTML a JPG se produce con las opciones de conversión predeterminadas : el ancho y el alto del documento JPG resultante corresponden a A4, y todos los márgenes tienen valor cero.
Ejemplo 2. Convertir MHTML a PNG con opciones especificadas explícitamente El formato de imagen PNG se utiliza ampliamente para transmitir imágenes a través de la red, mostrar fotografías y gráficos en páginas web y guardarlas en almacenamientos en la nube. Es posible que sea necesaria la conversión de MHTML a PNG, por ejemplo, si desea agregar una página web en una presentación de PowerPoint, insertarla en un blog para sus lectores o enviarla por correo electrónico. El siguiente ejemplo muestra cómo convertir MHTML a PNG con opciones especificadas explícitamente y guardar el resultado en el sistema de archivos local.
C# El siguiente ejemplo de SDK demuestra cómo convertir MHTML a PNG usando C#. MHTML se toma del sistema de archivos local, se convierte a PNG y se guarda en la unidad local. Puede descargar el SDK de C# desde el
repositorio de GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Create an options instance and specify options for MHTML to PNG conversion
5 var options = new ImageConversionOptions()
6 . SetHeight ( 800 )
7 . SetWidth ( 1000 )
8 . SetLeftMargin ( 10 )
9 . SetRightMargin ( 10 )
10 . SetBottomMargin ( 10 )
11 . SetTopMargin ( 10 );
12
13 // Convert MHTML to PNG
14 var result = await api. ConvertAsync ( "test.mhtml" , "test.png" , options);
Java The following example demonstrates how to convert MHTML to PNG using Java. MHTML is taken from the local file system, converted to PNG 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 ImageConversionOptions opt = new ImageConversionOptions()
7 . setWidth ( 600 )
8 . setHeight ( 900 )
9 . setTopMargin ( 20 )
10 . setBottomMargin ( 20 )
11 . setLeftMargin ( 20 )
12 . setRightMargin ( 20 );
13
14 JobBuilder builder = new ConverterBuilder()
15 . fromLocalFile ( "input.mhtml" )
16 . useOptions ( opt)
17 . saveToLocal ( "output.png" );
18
19 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert MHTML to PNG using C++. MHTML is taken from the local file system, converted to PNG and saved to the local file system.
Copy 1 // Get current directory
2 std: : string cur_dir ( argv[ 0 ]);
3 int pos = cur_dir. find_last_of ( "/\\" );
4 cur_dir = cur_dir. substr ( 0 , pos + 1 ); // Include the last slash
5 std: : wstring w_cur_dir ( cur_dir. begin (), cur_dir. end ());
6
7 const utility:: string_t clientId = L"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ;
8 const utility:: string_t clientSecret = L"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
9 const utility:: string_t basePath = L"https://api.aspose.cloud/v4.0" ;
10 const utility:: string_t authPath = L"https://api.aspose.cloud/connect/token" ;
11
12 // Create configuration for authorization
13 std: : shared_ptr< ApiConfiguration> apiConfig ( new ApiConfiguration( clientId, clientSecret, basePath, authPath));
14
15 // Create client from configuration
16 std: : shared_ptr< ApiClient> apiClient ( new ApiClient( apiConfig));
17
18 // Create ConversionApi
19 std: : shared_ptr< ConversionApi> api = std:: make_shared< ConversionApi>( apiClient);
20
21 // File name for conversion
22 utility: : string_t src = w_cur_dir + L"test.mhtml" ;
23 utility: : string_t dst = w_cur_dir + L"result.png" ;
24
25 std: : shared_ptr< ConversionOptions> opts = std:: make_shared< ConversionOptions>();
26 opts-> setWidth( 800 )
27 -> setHeight( 600 )
28 -> setLeftMargin( 10 )
29 -> setRightMargin( 10 )
30 -> setTopMargin( 10 )
31 -> setBottomMargin( 10 );
32
33 //Conversion
34 auto result = api-> convertLocalToLocal( src, dst, opts);
35
36 // Check the result file
37 auto re = result-> getFile();
38 std: : ifstream f ( re. c_str ());
39 if (! f. good ())
40 {
41 throw std:: runtime_error( "Conversion failed" );
42 }
Python The following example demonstrates how to convert MHTML to PNG Python language applying. MHTML is taken from the local file system, converted to PNG and saved to the local drive. You can download the Python SDK from the
GitHub repository .
Copy 1 from asposehtmlcloud. configuration import Configuration
2 from asposehtmlcloud. api . html_api import HtmlApi
3 from asposehtmlcloud. api_client import ApiClient as Client
4 from asposehtmlcloud. rest import ApiException
5
6 configuration = Configuration( apiKey= "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
7 appSid= "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
8 basePath= "https://api.aspose.cloud/v4.0" ,
9 authPath= "https://api.aspose.cloud/connect/token" ,
10 debug= True)
11 client = Client( configuration)
12 html_api = HtmlApi( client)
13
14 options = {
15 ' width' : 600 ,
16 ' height' : 900 ,
17 ' topmargin' : 20 ,
18 ' bottommargin' : 20 ,
19 ' leftmargin' : 20 ,
20 ' rightmargin' : 20
21 }
22
23 try:
24 res = html_api. convertApi . convert_local_to_local ( input_file= "test.mhtml" , output_file= "test.png" , options= options)
25 except ApiException as ex:
26 print( "Exception" )
27 print( "Info: " + str( ex))
28 raise ex
PHP The following example demonstrates how to convert MHTML to PNG using PHP. MHTML is taken from the local file system, converted to PNG and saved to the local file. You can download the PHP SDK from the
GitHub repository
Copy 1 <? php
2 require_once ( __DIR__ . ' / vendor/ autoload. php ' );
3
4 $conf = array(
5 "basePath" => "https://api.aspose.cloud/v4.0" ,
6 "authPath" => "https://api.aspose.cloud/connect/token" ,
7 "apiKey" => "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
8 "appSID" => "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
9 "defaultUserAgent" => "Webkit"
10 );
11
12 $api_html = new Client\ Invoker\ Api\ HtmlApi( $conf);
13
14 $src = ' input. mhtml ' ;
15 $dst = ' output. png ' ;
16
17 $options = [
18 ' width' => 800 ,
19 ' height' => 600 ,
20 ' left_margin' => 20 ,
21 ' right_margin' => 20 ,
22 ' top_margin' => 20 ,
23 ' bottom_margin' => 20
24 ];
25
26
27 try {
28 // Request to server Api
29 $result = $api_html-> convertLocalToLocal( $src, $dst, $options);
30 print_r( $result);
31 } catch ( Exception $e) {
32 echo ' Exception when calling HtmlApi-> convertLocalToLocal: ' , $e-> getMessage(), PHP_EOL;
33 }
34 ?>
Ruby The following example demonstrates how to convert MHTML to PNG Ruby language applying. MHTML is taken from the local file system, converted to PNG and saved to the local drive. You can download the Ruby SDK from the
GitHub repository .
Copy 1 # load the gem
2 require ' aspose_html_cloud'
3
4 # Get keys from aspose site.
5 # There is free quota available.
6 # For more details, see https: //purchase.aspose.cloud/pricing
7
8
9 CONFIG = {
10 "basePath" : "https://api.aspose.cloud/v4.0" ,
11 "authPath" : "https://api.aspose.cloud/connect/token" ,
12 "apiKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
13 "appSID" : "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
14 "debug" : true
15 }
16
17 api_instance = AsposeHtml:: HtmlApi. new CONFIG
18
19 src = "test.mhtml" # String | Source file.
20 dst = "test.png" # String | Result file.
21
22 opts = {
23 width: 700 , # Float | Resulting image width in pixels.
24 height: 1000 , # Float | Resulting image height in pixels.
25 left_margin: 40 , # Float | Left resulting image margin in pixels.
26 right_margin: 40 , # Float | Right resulting image margin in pixels.
27 top_margin: 50 , # Float | Top resulting image margin in pixels.
28 bottom_margin: 50 # Float | Bottom resulting image margin in pixels.
29 }
30
31 begin
32 # Convert the HTML file from the local file and save result to the local file.
33 result = api_instance. convert_local_to_local ( src, dst, opts)
34 p result
35 rescue AsposeHtml:: ApiError => e
36 puts "Exception when calling api_instance.convert_local_to_local: #{e}"
37 end
Node.js The following example demonstrates how to convert MHTML to PNG Node.js language applying. MHTML is taken from the local file system, converted to PNG and saved to the local file.
Copy 1 // Get keys from aspose site.
2 // There is free quota available.
3 // For more details, see https://purchase.aspose.cloud/pricing
4
5 var conf = {
6 "basePath" : "https://api.aspose.cloud/v4.0" ,
7 "authPath" : "https://api.aspose.cloud/connect/token" ,
8 "apiKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
9 "appSID" : "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
10 "defaultUserAgent" : "NodeJsWebkit"
11 };
12
13 var api = require( ' @asposecloud / aspose- html- cloud' );
14
15 // Create Conversion Api object
16 var conversionApi = new api. ConversionApi ( conf);
17
18 var src = "/path/to/src/test.mhtml" ; // {String} Source document.
19 var dst = "/path/to/dst/test.png" ; // {String} Result document.
20 var opts = {
21 ' width' : 600 ,
22 ' height' : 800 ,
23 ' leftMargin' : 10 ,
24 ' rightMargin' : 20 ,
25 ' topMargin' : 30 ,
26 ' bottomMargin' : 40
27 };
28
29 var callback = function( error, data, response) {
30 if ( error) {
31 console. error ( error);
32 } else {
33 console. log ( data);
34 }
35 };
36
37 conversionApi. convertLocalToLocal ( src, dst, opts, callback);
Swift The following example demonstrates how to convert MHTML to PNG Swift language applying. MHTML is taken from the local file system, converted to PNG and saved to the local drive. You can download the Swift SDK from the
GitHub repository .
Copy 1 import Alamofire
2 import Foundation
3 import XCTest
4 import AsposeHtmlCloud
5
6 static let fm = FileManager. default
7 let resourceDir = fm. homeDirectoryForCurrentUser . appendingPathComponent ( "Documents/Aspose.HTML.Cloud.SDK.Swift/Tests/AsposeHtmlCloudTests/Resources" )
8 let resultDir = fm. homeDirectoryForCurrentUser . appendingPathComponent ( "Documents/Aspose.HTML.Cloud.SDK.Swift/Tests/AsposeHtmlCloudTests/TestResult" )
9
10 func url ( forResource fileName: String) -> URL {
11 return resourceDir. appendingPathComponent ( fileName)
12 }
13
14 func fileExist ( name: String) -> Bool {
15 return FileManager. default . fileExists ( atPath: name)
16 }
17
18 ClientAPI. setConfig (
19 basePath: "https://api.aspose.cloud/v4.0" ,
20 authPath: "https://api.aspose.cloud/connect/token" ,
21 apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
22 appSID: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
23 debugging: true
24 )
25
26 let fileName = "test.mhtml"
27 let format = "png"
28 let src = url( forResource: fileName). absoluteString
29 let options = Options( width: 800 , height: 600 , leftMargin: 10 ,
30 rightMargin: 10 , topMargin: 10 , bottomMargin: 10 )
31
32
33 let expectation = self. expectation ( description: "testConvert to \(format)" )
34 let dst = resultDir. appendingPathComponent ( "Output.\(format)" ). absoluteString
35 HtmlAPI. convertLocalToLocal ( src: src, dst: dst, options: options) { ( data, error) in
36
37 guard error == nil else {
38 XCTFail( "Error convert MHTML 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 MHTML to PNG using Java/Android. MHTML is taken from the local file system, converted to PNG 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 ImageConversionOptions opt = new ImageConversionOptions()
7 . setWidth ( 600 )
8 . setHeight ( 900 )
9 . setTopMargin ( 20 )
10 . setBottomMargin ( 20 )
11 . setLeftMargin ( 20 )
12 . setRightMargin ( 20 );
13
14 JobBuilder builder = new ConverterBuilder()
15 . fromLocalFile ( "input.mhtml" )
16 . useOptions ( opt)
17 . saveToLocal ( "output.png" );
18
19 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert MHTML to PNG using REST API. Local MHTML converted to PNG and saved to the local file system.
Please take a few steps:
Upload local file to storage using
Storage API . Call REST API to execute conversion (in the example below). Download conversion result back from storage using
Storage API . Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/MHTML-png" \
3 - d "{'InputPath': '/testpage.mhtml', 'OutputFile': 'test.png', 'Options': {'Width':1000, 'Height': 800, 'LeftMargin': 10, 'RightMargin': 10, 'TopMargin': 10, 'BottomMargin': 10}}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization: bearer <token>"
Más detalles sobre los parámetros de conversión disponibles para archivos MHTML se encuentran en la sección
Opciones de conversión SDK .
Ejemplo 3. Convertir MHTML a GIF dentro del almacenamiento en la nube Aspose.HTML Cloud le permite obtener un archivo MHTML de su almacenamiento en la nube y guardar el resultado de la conversión en el almacenamiento en la nube. La conversión se produce con las opciones de conversión predeterminadas.
C# El siguiente ejemplo muestra cómo convertir MHTML a GIF usando C#. El archivo MHTML se encuentra en el almacenamiento en la nube, se convierte a GIF y se guarda nuevamente en el almacenamiento en la nube. Puede descargar el SDK de C# desde el
repositorio de GitHub .
Copy 1 // Initialize SDK API
2 var api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" ). ConvertApi ;
3
4 // Convert MHTML to GIF
5 var builder = new ConverterBuilder()
6 . FromStorageFile ( "/test.mhtml" )
7 . ToStorageFile ( "/test.gif" );
8
9 var result = await api. ConvertAsync ( builder);
Java The following example shows how to convert MHTML to GIF using Java. MHTML file is located in cloud storage, converted to GIF and saved back to cloud storage. You can download the java SDK from the
GitHub repository .
Copy 1 Configuration. setBasePath ( "https://api.aspose.cloud" );
2 Configuration. setAuthPath ( "https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 . fromStorageFile ( "input.mhtml" )
8 . saveToStorage ( "output.gif" );
9
10 OperationResult result = api. convert ( builder);
C++ The following example demonstrates how to convert MHTML to GIF using C++. MHTML file is located in cloud storage, converted to GIF and saved back to cloud storage.
Copy 1 const utility:: string_t clientId = L"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ;
2 const utility:: string_t clientSecret = L"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
3 const utility:: string_t basePath = L"https://api.aspose.cloud/v4.0" ;
4 const utility:: string_t authPath = L"https://api.aspose.cloud/connect/token" ;
5
6 // Create configuration for authorization
7 std: : shared_ptr< ApiConfiguration> apiConfig ( new ApiConfiguration( clientId, clientSecret, basePath, authPath));
8
9 // Create client from configuration
10 std: : shared_ptr< ApiClient> apiClient ( new ApiClient( apiConfig));
11
12 // Create ConversionApi
13 std: : shared_ptr< ConversionApi> api = std:: make_shared< ConversionApi>( apiClient);
14
15 // File name for conversion
16 utility: : string_t src = L"file/in/storage/index.mhtml" ;
17 utility: : string_t dst = L"result/in/storage/result.gif" ;
18
19 //Conversion
20 auto result = api-> convertStorageToStorage( src, dst);
Python The following example shows how to convert MHTML to GIF Python language applying. MHTML file is located in cloud storage, converted to GIF and saved back to cloud storage. You can download the Python SDK from the
GitHub repository .
Copy 1 from asposehtmlcloud. configuration import Configuration
2 from asposehtmlcloud. api . html_api import HtmlApi
3 from asposehtmlcloud. api_client import ApiClient as Client
4 from asposehtmlcloud. rest import ApiException
5
6 configuration = Configuration( apiKey= "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
7 appSid= "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
8 basePath= "https://api.aspose.cloud/v4.0" ,
9 authPath= "https://api.aspose.cloud/connect/token" ,
10 debug= True)
11 client = Client( configuration)
12 html_api = HtmlApi( client)
13
14 try:
15 res = html_api. convertApi . convert_storage_to_storage ( input_file= "test.mhtml" , output_file= "test.gif" ,
16 storage_name= None)
17 except ApiException as ex:
18 print( "Exception" )
19 print( "Info: " + str( ex))
20 raise ex
PHP The following example demonstrates how to convert MHTML to GIF using PHP. MHTML file is located in cloud storage, converted to GIF and saved back to cloud storage. You can download the PHP SDK from the
GitHub repository .
Copy 1 <? php
2 require_once ( __DIR__ . ' / vendor/ autoload. php ' );
3
4 $configuration = array(
5 "basePath" => "https://api.aspose.cloud/v4.0" ,
6 "authPath" => "https://api.aspose.cloud/connect/token" ,
7 "apiKey" => "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
8 "appSID" => "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
9 "defaultUserAgent" => "Webkit"
10 );
11
12 $api_html = new HtmlApi( $configuration);
13
14 $src = "FolderInStorage/test.mhtml" ;
15 $dst = ' FolderInStorage/ test. gif ' ;
16 $options = null ;
17
18 try {
19 $result = $api_html-> convertStorageToStorage( $src, $dst, null , $options);
20 print_r( $result);
21 } catch ( Exception $e) {
22 echo ' Exception when calling $api_html-> convertStorageToStorage: ' , $e-> getMessage(), PHP_EOL;
23 }
24 ?>
Ruby The following example shows how to convert MHTML to GIF Ruby language applying. MHTML file is located in cloud storage, converted to GIF and saved back to cloud storage. You can download the Ruby SDK from the
GitHub repository .
Copy 1 # load the gem
2 require ' aspose_html_cloud'
3
4 # Get keys from aspose site.
5 # There is free quota available.
6 # For more details, see https: //purchase.aspose.cloud/pricing
7
8
9 CONFIG = {
10 "basePath" : "https://api.aspose.cloud/v4.0" ,
11 "authPath" : "https://api.aspose.cloud/connect/token" ,
12 "apiKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
13 "appSID" : "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
14 "debug" : true
15 }
16
17 api_instance = AsposeHtml:: HtmlApi. new CONFIG
18
19 src = "FolderInStorage/test.mhtml" # String | Source file.
20 dst = "FolderInStorage/test.gif" # String | Result file.
21 storage = nil
22
23 begin
24 # Convert the file from the storage and save result to the storage.
25 result = api_instance. convert_storage_to_storage ( src, dst, storage)
26 p result
27 rescue AsposeHtml:: ApiError => e
28 puts "Exception when calling api_instance.convert_storage_to_storage: #{e}"
29 end
Node.js The following example shows how to convert MHTML to GIF Node.js language applying. MHTML file is located in cloud storage, converted to GIF and saved back to cloud storage.
Copy 1 // Get keys from aspose site.
2 // There is free quota available.
3 // For more details, see https://purchase.aspose.cloud/pricing
4
5 var conf = {
6 "basePath" : "https://api.aspose.cloud/v4.0" ,
7 "authPath" : "https://api.aspose.cloud/connect/token" ,
8 "apiKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
9 "appSID" : "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
10 "defaultUserAgent" : "NodeJsWebkit"
11 };
12
13 var api = require( ' @asposecloud / aspose- html- cloud' );
14
15 // Create Conversion Api object
16 var conversionApi = new api. ConversionApi ( conf);
17
18 var src = "FolderInStorage/test.mhtml" ; // {String} Source document.
19 var dst = "FolderInStorage/test.gif" ; // {String} Result document.
20 var opts = null ;
21 var storage = null ;
22
23 var callback = function( error, data, response) {
24 if ( error) {
25 console. error ( error);
26 } else {
27 console. log ( data);
28 }
29 };
30
31 conversionApi. convertStorageToStorage ( src, dst, storage, opts, callback);
Swift The following example shows how to convert MHTML to GIF Swift language applying. MHTML file is located in cloud storage, converted to GIF and saved back to cloud storage. You can download the Swift SDK from the
GitHub repository .
Copy 1 import Alamofire
2 import Foundation
3 import XCTest
4 import AsposeHtmlCloud
5
6 ClientAPI. setConfig (
7 basePath: "https://api.aspose.cloud/v4.0" ,
8 authPath: "https://api.aspose.cloud/connect/token" ,
9 apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ,
10 appSID: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" ,
11 debugging: true
12 )
13
14 let src = "FolderInStorage/test.mhtml"
15 let dst = "FolderInStorage/test.gif"
16
17 let expectation = self. expectation ( description: "testConvert to gif" )
18
19 HtmlAPI. convertStorageToStorage ( src: src, dst: dst, storage: nil, options: nil) { ( data, error) in
20
21 guard error == nil else {
22 XCTFail( "Error convert MHTML to gif. Error=\(error!.localizedDescription)" )
23 return
24 }
25
26 let resultPath = data!. file !
27
28 StorageAPI. objectExists ( path: resultPath, storageName: nil, versionId: nil) {( data, error) in
29 guard error == nil else {
30 XCTFail( "Error objectExists exist. Error=\(error!.localizedDescription)" )
31 return
32 }
33
34 XCTAssertTrue( data!. exists )
35 XCTAssertFalse( data!. isFolder )
36 expectation. fulfill ()
37 }
38 }
39 self. waitForExpectations ( timeout: 100.0 , handler: nil)
Java/Android The following example shows how to convert MHTML to GIF using Java/Android. MHTML file is located in cloud storage, converted to GIF and saved back to cloud storage. You can download the Java/Android SDK from the
GitHub repository .
Copy 1 Configuration. setBasePath ( "https://api.aspose.cloud" );
2 Configuration. setAuthPath ( "https://api.aspose.cloud/connect/token" );
3
4 HtmlApi api = new HtmlApi( "CLIENT_ID" , "CLIENT_SECRET" );
5
6 JobBuilder builder = new ConverterBuilder()
7 . fromStorageFile ( "input.mhtml" )
8 . saveToStorage ( "output.gif" );
9
10 OperationResult result = api. convert ( builder);
CURL The following example demonstrates how to convert MHTML to GIF using REST API. MHTML file is located in cloud storage, converted to GIF and saved back to cloud storage.
Copy 1 curl - X POST - v \
2 "https://api.aspose.cloud/v4.0/html/conversion/MHTML-gif" \
3 - d "{'InputPath': '/test.mhtml', 'OutputFile': '/test.gif'}" \
4 - H "Content-Type: application/json" \
5 - H "Authorization:Bearer <JWT_token>"
Ver también El artículo
SDK disponibles le presenta la capacidad de Aspose.HTML Cloud para usar SDK en varios lenguajes de programación, como C#, Java, Python, Ruby, PHP, Node.js, Swift, Android y C++. El artículo
Opciones de conversión describe un conjunto de clases que representan opciones para convertir un documento fuente basado en HTML a PDF, XPS e imagen. Aspose.HTML Cloud API a la que puedes llamar directamente desde tu navegador accediendo a la
Referencia de API . Aspose.HTML ofrece un
Convertidor de MHTML a imágenes en línea gratuito que convierte rápidamente MHTML a imágenes con alta calidad. ¡Simplemente cargue sus archivos, conviértalos y obtenga el resultado en unos segundos!