Convertir objeto OLE a imagen

Recuperar un objeto OLE incrustado en una hoja de cálculo y devolverlo en el formato de imagen solicitado.


Requisitos previos

Antes de llamar a este endpoint, asegúrese de cumplir con lo siguiente:

  1. Cuenta de Aspose.Cells Cloud: regístrese en el portal de Aspose Cloud.
  2. Libro de cálculo cargado en el almacenamiento en la nube: utilice la API Cargar archivo o la interfaz de usuario de Aspose Cloud.
  3. Token de acceso JWT: obtenga un token siguiendo la guía de autenticación.

Seguridad y autenticación

Todas las API de Aspose.Cells Cloud requieren autenticación basada en token JWT. Incluya el token en el encabezado Authorization:

Authorization: Bearer <jwt-token>

Solo se admiten endpoints HTTPS; nunca utilice http://.


Solicitud

Método HTTP

GET

Endpoint

https://api.aspose.cloud/v3.0/cells/{name}/worksheets/{sheetName}/oleobjects/{objectNumber}?format={format}

Parámetros de ruta

Nombre Tipo Obligatorio Descripción
name string Nombre del archivo del libro de cálculo (por ejemplo, Book1.xlsx).
sheetName string Hoja de cálculo que contiene el objeto OLE.
objectNumber integer Índice basado en cero del objeto OLE.

Parámetros de consulta

Nombre Tipo Obligatorio Descripción
format string Formato de imagen deseado (png, jpeg, tiff, gif, emf, bmp). Si se omite, el valor predeterminado es png.
folder string Ruta a la carpeta donde reside el libro de cálculo.
storageName string Nombre del servicio de almacenamiento (por ejemplo, MyCloud).

Ejemplo de solicitud (cURL)

curl -v "https://api.aspose.cloud/v3.0/cells/Embedded_OleObject_Sample_Book1.xlsx/worksheets/Sheet1/oleobjects/0?format=png" \
  -X GET \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <jwt-token>"

Reemplace <jwt-token> con un token JWT válido.


Respuesta

Estado Tipo de contenido Descripción
200 image/png (o el formato solicitado) Datos binarios de la imagen que representa el objeto OLE.
400 application/json Parámetros de solicitud inválidos.
401 application/json Fallo de autenticación (JWT ausente o inválido).
404 application/json No se encontró el libro de cálculo, la hoja de cálculo o el objeto OLE especificados.
500 application/json Error del lado del servidor.

Manejo de la carga binaria

La API devuelve bytes de imagen en bruto. Puede:


Respuestas de error

Estado HTTP Código Mensaje
400 InvalidParameter Uno o más parámetros de solicitud no son válidos.
401 AuthenticationFailed Token JWT ausente o inválido.
404 PropertyNotFound El libro de cálculo, la hoja de cálculo o el objeto OLE solicitados no existen.
500 InternalError Se produjo un error inesperado en el servidor.

Ejemplos de SDK

Los fragmentos siguientes muestran cómo invocar la operación con los SDK oficiales. Reemplace YOUR_JWT_TOKEN y otros marcadores de posición con sus valores reales.

Lenguaje Ejemplo
C#
Mostrar códigocsharp\nusing Aspose.Cells.Cloud.SDK.Api;\nusing Aspose.Cells.Cloud.SDK.Model.Requests;\n\nvar config = new Configuration { AccessToken = "YOUR_JWT_TOKEN" };\nvar api = new OleObjectsApi(config);\nvar request = new GetWorksheetOleObjectRequest(\n name: "Embedded_OleObject_Sample_Book1.xlsx",\n sheetName: "Sheet1",\n objectNumber: 0,\n format: "png"\n);\nvar stream = api.GetWorksheetOleObject(request);\nusing var file = File.Create("oleobject.png");\nstream.CopyTo(file);\n
Java
Mostrar códigojava\nimport com.aspose.cells.cloud.ApiException;\nimport com.aspose.cells.cloud.api.OleObjectsApi;\nimport com.aspose.cells.cloud.model.*;\nimport com.aspose.cells.cloud.model.requests.*;\nimport java.io.FileOutputStream;\nimport java.io.InputStream;\n\nOleObjectsApi api = new OleObjectsApi();\napi.getApiClient().setAccessToken("YOUR_JWT_TOKEN");\nGetWorksheetOleObjectRequest req = new GetWorksheetOleObjectRequest(\n "Embedded_OleObject_Sample_Book1.xlsx",\n "Sheet1",\n 0,\n "png",\n null,\n null\n);\nInputStream stream = api.getWorksheetOleObject(req);\ntry (FileOutputStream out = new FileOutputStream("oleobject.png")) {\n stream.transferTo(out);\n}\n
Python
Mostrar códigopython\nfrom asposecellscloud import CellsApi, GetWorksheetOleObjectRequest\n\napi = CellsApi()\napi.api_client.configuration.access_token = "YOUR_JWT_TOKEN"\nrequest = GetWorksheetOleObjectRequest(\n name="Embedded_OleObject_Sample_Book1.xlsx",\n sheet_name="Sheet1",\n object_number=0,\n format="png"\n)\nstream = api.get_worksheet_ole_object(request)\nwith open('oleobject.png', 'wb') as f:\n f.write(stream.read())\n
Node.js
Mostrar códigojavascript\nconst { CellsApi, GetWorksheetOleObjectRequest } = require('asposecellscloud');\n\nconst api = new CellsApi();\napi.apiClient.configuration.accessToken = 'YOUR_JWT_TOKEN';\n\nconst request = new GetWorksheetOleObjectRequest({\n name: 'Embedded_OleObject_Sample_Book1.xlsx',\n sheetName: 'Sheet1',\n objectNumber: 0,\n format: 'png'\n});\napi.getWorksheetOleObject(request).then(stream => {\n const fs = require('fs');\n const writeStream = fs.createWriteStream('oleobject.png');\n stream.pipe(writeStream);\n});\n
Go
Mostrar códigogo\npackage main\nimport (\n "io"\n "os"\n cells "github.com/aspose-cells-cloud/aspose-cells-cloud-go/v3"\n)\nfunc main() {\n cfg := cells.NewConfiguration()\n cfg.AccessToken = "YOUR_JWT_TOKEN"\n api := cells.NewOleObjectsApi(cfg)\n req := cells.GetWorksheetOleObjectRequest{\n Name: "Embedded_OleObject_Sample_Book1.xlsx",\n SheetName: "Sheet1",\n ObjectNumber: 0,\n Format: "png",\n }\n stream, _, err := api.GetWorksheetOleObject(req)\n if err != nil { panic(err) }\n out, _ := os.Create("oleobject.png")\n defer out.Close()\n io.Copy(out, stream)\n}\n
PHP
Mostrar códigophp\n<?php\nrequire_once 'vendor/autoload.php';\nuse Aspose\\Cells\\Cloud\\Api\\OleObjectsApi;\nuse Aspose\\Cells\\Cloud\\Model\\Requests\\GetWorksheetOleObjectRequest;\n\n$config = new \\Aspose\\Cells\\Cloud\\Configuration();\n$config->setAccessToken('YOUR_JWT_TOKEN');\n$apiInstance = new OleObjectsApi($config);\n$request = new GetWorksheetOleObjectRequest(\n 'Embedded_OleObject_Sample_Book1.xlsx',\n 'Sheet1',\n 0,\n 'png'\n);\n$stream = $apiInstance->getWorksheetOleObject($request);\nfile_put_contents('oleobject.png', $stream);\n?>\n
Ruby
Mostrar códigoruby\nrequire 'aspose_cells_cloud'\napi = AsposeCellsCloud::OleObjectsApi.new\napi.api_client.config.access_token = 'YOUR_JWT_TOKEN'\nrequest = AsposeCellsCloud::GetWorksheetOleObjectRequest.new(\n name: 'Embedded_OleObject_Sample_Book1.xlsx',\n sheet_name: 'Sheet1',\n object_number: 0,\n format: 'png'\n)\nstream = api.get_worksheet_ole_object(request)\nFile.open('oleobject.png', 'wb') { |f| f.write(stream) }\n\n
Perl
Mostrar códigoperl\nuse AsposeCellsCloud::Api::OleObjectsApi;\nuse AsposeCellsCloud::Object::GetWorksheetOleObjectRequest;\n\nmy $api = AsposeCellsCloud::Api::OleObjectsApi->new();\n$api->{api_client}->{config}->{access_token} = 'YOUR_JWT_TOKEN';\nmy $req = AsposeCellsCloud::Object::GetWorksheetOleObjectRequest->new(\n name => 'Embedded_OleObject_Sample_Book1.xlsx',\n sheet_name => 'Sheet1',\n object_number => 0,\n format => 'png'\n);\nmy $stream = $api->get_worksheet_ole_object(request => $req);\nopen my $fh, '>', 'oleobject.png' or die $!;\nbinmode $fh;\nprint $fh $stream;\nclose $fh;\n

(La lista completa de SDK está disponible en el repositorio de GitHub.)


Operaciones relacionadas

Para más detalles, consulte las páginas de referencia correspondientes de la API.


Recursos adicionales