El archivo ODG es un dibujo creado por Draw, una aplicación de edición de gráficos vectoriales disponible en la suite Apache OpenOffice. Contiene una o más páginas que pueden incluir líneas, formas, símbolos y texto. El archivo ODG se guarda en la especificación OASIS OpenDocument, que es un formato basado en XML. Para abrir los archivos ODG con los programas de código abierto OpenOffice.org Draw y su derivado LibreOffice Draw, se necesitan los siguientes: Sin embargo, si los archivos ODG se convierten a PSD, también podemos guardar capas, lo que facilita volver atrás y editar el archivo más tarde. En este artículo, vamos a analizar la conversión del formato ODG a PSD mediante la API REST.
API de procesamiento de imágenes
Existe una amplia variedad de formatos de imagen disponibles en el mercado y una gran cantidad de API para procesarlos. Sin embargo, nuestra API basada en REST proporciona capacidades únicas para procesar los principales formatos de imagen, incluidos JPEG, BMP, TIFF, GIF, PNG, PSD, SVG, DjVu, DICOM, DNG, etc., utilizando una sola API. Además, una de las características destacadas de nuestras API es su capacidad para manejar todos estos formatos sin ninguna dependencia de terceros. Realice todas sus tareas de procesamiento de imágenes utilizando Cloud API. No se requiere la descarga o instalación de software adicional. Como las API se desarrollan según la arquitectura REST, se puede acceder a ellas en cualquier plataforma y cualquier tipo de aplicación, como aplicaciones de escritorio, móviles, web o híbridas.
Para facilitar aún más las cosas a nuestros clientes, hemos creado SDK envolventes en torno a las API de la nube para que obtenga todas las funciones y capacidades en el lenguaje que elija. En este artículo, analizaremos las capacidades del SDK de Aspose.Imaging Cloud para .NET.
Instalación
El primer paso para utilizar el SDK de programación es su instalación, y está disponible para su descarga en NuGet y GitHub. Por lo tanto, para instalar el SDK a través de NuGet, ejecute el siguiente comando en una ventana de terminal:
nuget install Aspose.Imaging-Cloud
O puede considerar ejecutar el siguiente comando en el administrador de paquetes NuGet:
PM> Install-Package Aspose.Imaging-Cloud
Instalación de Visual Studio
También podemos agregar directamente la referencia del SDK de Cloud dentro de la solución de Visual Studio:
- Abra el Explorador de soluciones.
- Expanda el proyecto y haga clic derecho en la carpeta Paquetes dentro de su solución.
- Seleccione la opción Administrar paquetes NuGet…
- Haga clic en la pestaña Explorar y busque “Aspose.Imaging-Cloud”.
- Haga clic en el paquete Aspose.Imaging-Cloud, seleccione la versión adecuada en la pestaña derecha y haga clic en el botón Agregar paquete
Suscripción gratuita a la nube
Ahora, para mantener la integridad y privacidad de los datos, hemos agregado una capa de seguridad, de modo que solo las personas autorizadas puedan acceder al sistema. Por lo tanto, debe crear una cuenta de suscripción gratuita visitando panel de control de Aspose.Cloud. No se requiere tarjeta de crédito ni otros detalles de pago y puede realizar hasta 150 solicitudes de procesamiento de documentos gratuitas.
Puede usar su cuenta de GitHub o Google para registrarse o hacer clic en el botón Crear una nueva cuenta y proporcionar la información requerida. Ahora inicie sesión en el panel de control con sus credenciales, expanda la sección Aplicaciones desde el panel de control y desplácese hacia abajo hasta la sección Credenciales del cliente para ver los detalles de ID y Secreto del cliente.
Convertir ODG a PSD en C#
Siga los pasos que se indican a continuación para realizar la conversión utilizando C# .NET.
- En primer lugar, cree el objeto ImagingApi mientras pasa los detalles del ID de cliente y del secreto de cliente como argumentos.
- En segundo lugar, lea la imagen ODG desde la unidad local y pásela como argumento al objeto UploadFileRequest.
- En tercer lugar, llame al método UploadFile(…) de ImagingApi para cargar el archivo al almacenamiento en la nube.
- Ahora necesitamos crear una instancia de la clase ConvertImageRequest que tome el nombre de la imagen y el formato de salida resultante como argumentos.
- Luego llame al método ConvertImage(…) de la clase ImagingApi para iniciar la operación de conversión.
- Por último, guarde la salida de la transmisión en la unidad local usando File.Create (el método personalizado se comparte a continuación).
// Obtenga ClientID desde https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";
// crear una instancia de ImagingApi
ImagingApi imagingApi= new ImagingApi( clientSecret,clientID,"https://api.aspose.cloud/");
// Ruta de la imagen ODG de entrada
string imageFile = "file-example_PDF.odg";
// formato de archivo de salida
string format = "PSD";
// nombre del archivo resultante
string resultantFile = "Converted.psd";
try
{
// cargar el archivo desde la unidad local
using (var file = System.IO.File.OpenRead(@"C:\Users\shahbnay\Desktop\" + imageFile))
{
// crear una instancia de FileUploadRequest
var uploadFileRequest = new UploadFileRequest(imageFile, file);
// Subir imagen al almacenamiento en la nube
imagingApi.UploadFile(uploadFileRequest);
}
// Crear ConvertImageRequest
var response = new ConvertImageRequest(imageFile, format, null, null);
// Iniciar la operación de conversión
Stream updatedImage = imagingApi.ConvertImage(response);
// Imprimir mensaje de éxito si la conversión es exitosa
if (response != null && response.Equals("OK"))
{
Console.WriteLine("ODG successfully converted to PSD !");
Console.ReadKey();
}
// Método personalizado para guardar el archivo resultante en la unidad del sistema local
saveToDisk(updatedImage, @"C:\Users\shahbnay\Desktop\" + resultantFile);
}catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
// Método personalizado para guardar la secuencia como instancia de archivo
static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
ODG a PSD mediante el comando cURL
Como se mencionó anteriormente, las API de la nube se desarrollan según la arquitectura REST, por lo que también se puede acceder a ellas mediante los comandos cURL. Sin embargo, antes de realizar la operación de conversión de archivos, intente crear un token de acceso JWT basado en sus credenciales de cliente. Ejecute el siguiente comando cURL para generar el token de acceso JWT.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4db2f826-bf9c-42e7-8b2a-8cbca2d15553&client_secret=d757548a9f2558c39c2feebdf85b4c44" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Dado que vamos a utilizar la API, se espera que el archivo ODG de entrada ya esté disponible en el almacenamiento en la nube. Por lo tanto, utilice el siguiente comando cURL para cargar el archivo en el almacenamiento en la nube.
curl -X PUT "https://api.aspose.cloud/v3.0/imaging/storage/file/file-example_PDF.odg" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-H "Content-Type: multipart/form-data" \
-d {"File":{}}
Ahora que hemos cargado el archivo ODG al almacenamiento en la nube, intente utilizar el siguiente comando para convertir el archivo al formato PSD.
curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/file-example_PDF.odg/convert?format=PSD" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o Converted.psd
Para fines de prueba, el archivo ODG de muestra utilizado en el ejemplo anterior se puede descargar desde file-examplePDF.odg.
Conclusión
En este artículo, analizamos las características de Aspose.Imaging Cloud para los formatos de imagen más populares. Además, analizamos específicamente los detalles de cómo podemos convertir archivos de imagen ODG al formato PSD mediante un fragmento de código C# .NET. En la sección siguiente, analizamos los detalles de cómo podemos realizar la misma conversión mediante los comandos cURL. Además, tenga en cuenta que los SDK de Cloud se desarrollan bajo la licencia MIT, por lo que el código fuente completo está disponible en GitHub.
En caso de que encuentre algún problema al usar la API o tenga más consultas, no dude en contactarnos a través del Foro de soporte de productos gratuito.
Artículos relacionados
Te recomendamos visitar los siguientes enlaces para conocer más sobre: