Insertar imágenes y formas de archivos de Excel.
A veces necesitas insertar algunas formas necesarias en la hoja de cálculo. Puedes necesitar insertar la misma forma en diferentes posiciones de la hoja de cálculo. O necesitas insertar formas en lotes en la hoja de cálculo.
¡No te preocupes! Aspose.Cells soporta todas estas operaciones.
Las formas en Excel se dividen principalmente en los siguientes tipos:
- Imágenes
- OleObjects
- Líneas
- Rectángulos
- Formas Básicas
- Flechas en Bloque
- Formas de Ecuaciones
- Diagramas de Flujo
- Estrellas y Banderas
- Llamadas
Este documento guía seleccionará una o dos formas de cada tipo para hacer ejemplos. A través de estos ejemplos, aprenderás cómo usar Aspose.Cells para insertar la forma especificada en la hoja de cálculo.
Agregar imágenes en una hoja de cálculo de Excel en C#
Agregar imágenes a una hoja de cálculo es muy fácil. Solo toma unas pocas líneas de código: Simplemente llame al método add de la colección pictures (encapsulada en el objeto Worksheet). El método add toma los siguientes parámetros:
- upper_left_row, el índice de la fila superior izquierda.
- upper_left_column, el índice de la columna superior izquierda.
- file_name, el nombre del archivo de imagen, incluyendo la ruta.
from aspose.cells import Workbook | |
from os import os, path | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Create directory if it is not already present. | |
IsExists = path.isdir(dataDir) | |
if notIsExists: | |
os.makedirs(dataDir) | |
# Instantiating a Workbook object | |
workbook = Workbook() | |
# Adding a new worksheet to the Workbook object | |
sheetIndex = workbook.worksheets.add() | |
# Obtaining the reference of the newly added worksheet by passing its sheet index | |
worksheet = workbook.worksheets[sheetIndex] | |
# Adding a picture at the location of a cell whose row and column indices | |
# Are 5 in the worksheet. It is "F6" cell | |
worksheet.pictures.add(5, 5, dataDir + "logo.jpg") | |
# Saving the Excel file | |
workbook.save(dataDir + "output.xls") |
Insertar objetos OLE en una hoja de cálculo de Excel en C#
Aspose.Cells para Python via .NET soporta añadir, extraer y manipular objetos OLE en hojas de cálculo. Por ello, Aspose.Cells para Python via .NET tiene la clase OleObjectCollection, utilizada para agregar un nuevo objeto OLE a la lista de colección. Otra clase, OleObject, representa un objeto OLE. Tiene algunos miembros importantes:
- La propiedad image_data especifica los datos de imagen (icono) de tipo matriz de bytes. La imagen se mostrará para mostrar el objeto OLE en la hoja de cálculo.
- La propiedad object_data especifica los datos del objeto en forma de matriz de bytes. Estos datos se mostrarán en su programa relacionado cuando hagas doble clic en el ícono del objeto OLE.
El siguiente ejemplo muestra cómo agregar un objeto(s) OLE a una hoja de cálculo.
from aspose.cells import Workbook | |
from os import os, path | |
import bytearray | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Create directory if it is not already present. | |
IsExists = path.isdir(dataDir) | |
if notIsExists: | |
os.makedirs(dataDir) | |
# Instantiate a new Workbook. | |
workbook = Workbook() | |
# Get the first worksheet. | |
sheet = workbook.worksheets[0] | |
# Define a string variable to store the image path. | |
ImageUrl = dataDir + "logo.jpg" | |
# Get the picture into the streams. | |
fs = open(ImageUrl, "rb") | |
# Define a byte array. | |
imageData = bytearray(utils.filesize(fs)) | |
# Obtain the picture into the array of bytes from streams. | |
fs.readinto(imageData) | |
# Close the stream. | |
fs.close() | |
# Get an excel file path in a variable. | |
path = dataDir + "book1.xls" | |
# Get the file into the streams. | |
fs = open(path, "rb") | |
# Define an array of bytes. | |
objectData = bytearray(utils.filesize(fs)) | |
# Store the file from streams. | |
fs.readinto(objectData) | |
# Close the stream. | |
fs.close() | |
# Add an Ole object into the worksheet with the image | |
# Shown in MS Excel. | |
sheet.ole_objects.add(14, 3, 200, 220, imageData) | |
# Set embedded ole object data. | |
sheet.ole_objects[0].object_data = objectData | |
# Save the excel file | |
workbook.save(dataDir + "output.out.xls") |
Insertar una línea en una hoja de cálculo de Excel en C#
La forma de la línea pertenece a la categoría de líneas.
En Microsoft Excel (por ejemplo, 2007):
- Selecciona la celda donde deseas insertar la línea
- Haga clic en el menú Insertar y luego en Formas.
- Luego, selecciona la línea de ‘Formas utilizadas recientemente’ o ‘Líneas’
Usando Aspose.Cells para Python via .NET
Puedes utilizar el siguiente método para insertar una línea en la hoja de cálculo.
El siguiente ejemplo muestra cómo insertar una línea en una hoja de cálculo.
from aspose.cells import SaveFormat, Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the line to the worksheet | |
sheet.shapes.add_line(2, 0, 2, 0, 100, 300) | |
# sheet.Shapes.AddAutoShape(AutoShapeType.Line, 2, 0, 2, 0, 100, 300);# method 2 | |
# sheet.Shapes.AddShape(MsoDrawingType.Line, 2, 0, 2, 0, 100, 300);# method 3 | |
# Save.You can check your line in this way. | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
Ejecute el código anterior, obtendrá los siguientes resultados:
Insertar una flecha de línea en la hoja de cálculo de Excel en C#
La forma de la flecha de línea pertenece a la categoría Líneas. Es un caso especial de línea.
En Microsoft Excel (por ejemplo, 2007):
- Seleccione la celda donde desea insertar la flecha de línea
- Haga clic en el menú Insertar y luego en Formas.
- Luego, seleccione la flecha de línea de ‘Formas usadas recientemente’ o ‘Líneas’
Usando Aspose.Cells para Python via .NET
Puede utilizar el siguiente método para insertar una flecha de línea en la hoja de cálculo.
El siguiente ejemplo muestra cómo insertar una flecha de línea en una hoja de cálculo.
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import MsoArrowheadLength, MsoArrowheadStyle, MsoArrowheadWidth | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the line arrow to the worksheet | |
s = sheet.shapes.add_line(2, 0, 2, 0, 100, 300) | |
# Shape s = sheet.Shapes.AddAutoShape(AutoShapeType.Line, 2, 0, 2, 0, 100, 300);# method 2 | |
# Shape s = sheet.Shapes.AddShape(MsoDrawingType.Line, 2, 0, 2, 0, 100, 300);# method 3 | |
# add a arrow at the line begin | |
s.line.begin_arrowhead_style = MsoArrowheadStyle.ARROW | |
s.line.begin_arrowhead_width = MsoArrowheadWidth.WIDE | |
s.line.begin_arrowhead_length = MsoArrowheadLength.SHORT | |
# add a arrow at the line end | |
s.line.end_arrowhead_style = MsoArrowheadStyle.ARROW_OPEN | |
s.line.end_arrowhead_width = MsoArrowheadWidth.NARROW | |
s.line.end_arrowhead_length = MsoArrowheadLength.LONG | |
# Save.You can check your arrow in this way. | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
Ejecute el código anterior, obtendrá los siguientes resultados:
Insertar un rectángulo en la hoja de cálculo de Excel en C#
La forma del rectángulo pertenece a la categoría de Rectángulos.
En Microsoft Excel (por ejemplo, 2007):
- Selecciona la celda donde deseas insertar el rectángulo
- Haga clic en el menú Insertar y luego en Formas.
- Luego, selecciona el rectángulo de ‘Formas usadas recientemente’ o ‘Rectángulos’
Usando Aspose.Cells para Python via .NET
Puedes utilizar el siguiente método para insertar un rectángulo en la hoja de cálculo.
El método devuelve un objeto RectangleShape.
El siguiente ejemplo muestra cómo insertar un rectángulo en una hoja de cálculo.
from aspose.cells import SaveFormat, Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the rectangle to the worksheet | |
sheet.shapes.add_rectangle(2, 0, 2, 0, 100, 300) | |
# Save | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
Ejecute el código anterior, obtendrá los siguientes resultados:
Insertar un Cubo en la hoja de cálculo de Excel en C#
La forma del cubo pertenece a la categoría de Formas básicas.
En Microsoft Excel (por ejemplo, 2007):
- Selecciona la celda donde deseas insertar el cubo
- Haga clic en el menú Insertar y luego en Formas.
- Luego, selecciona el Cubo de Formas básicas
Usando Aspose.Cells para Python via .NET
Puede utilizar el siguiente método para insertar un cubo en la hoja de cálculo.
public Shape add_auto_shape(type, upper_left_row, top, upper_left_column, left, height, width)
El método devuelve un objeto Shape.
El siguiente ejemplo muestra cómo insertar un cubo en una hoja de cálculo.
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the cube to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.CUBE, 2, 0, 2, 0, 100, 300) | |
# Save.You can check your cube in this way. | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
Ejecute el código anterior, obtendrá los siguientes resultados:
Insertar una flecha de cuadro de referencia a la hoja de cálculo de Excel en C#
La forma de la flecha de cuadro de referencia pertenece a la categoría Flechas de bloque.
En Microsoft Excel (por ejemplo, 2007):
- Seleccione la celda donde desea insertar la flecha de cuadro de referencia
- Haga clic en el menú Insertar y luego en Formas.
- Luego, seleccione la flecha de cuadro de referencia de Flechas de bloque
Usando Aspose.Cells para Python via .NET
Puede utilizar el siguiente método para insertar una flecha de cuadro de referencia en la hoja de cálculo.
El método devuelve un objeto Shape.
El siguiente ejemplo muestra cómo insertar una flecha de cuadro de referencia en una hoja de cálculo.
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the callout quad arrow to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.QUAD_ARROW_CALLOUT, 2, 0, 2, 0, 100, 100) | |
# Save | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
Ejecute el código anterior, obtendrá los siguientes resultados:
Insertar un signo de multiplicación a una hoja de cálculo de Excel en C#
La forma del signo de multiplicación pertenece a la categoría Formas de ecuaciones.
En Microsoft Excel (por ejemplo, 2007):
- Seleccione la celda donde desea insertar el signo de multiplicación
- Haga clic en el menú Insertar y luego en Formas.
- Luego, seleccione el signo de multiplicación de Formas de ecuaciones
Usando Aspose.Cells para Python via .NET
Puede utilizar el siguiente método para insertar un signo de multiplicación en la hoja de cálculo.
El método devuelve un objeto Shape.
El siguiente ejemplo muestra cómo insertar un signo de multiplicación en una hoja de cálculo.
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the multiplication sign to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.MATH_MULTIPLY, 2, 0, 2, 0, 100, 100) | |
# Save.You can check your multiplication in this way. | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
Ejecute el código anterior, obtendrá los siguientes resultados:
Insertar un multidocumento en una hoja de cálculo de Excel en C#
La forma del multidocumento pertenece a la categoría Flujogramas.
En Microsoft Excel (por ejemplo, 2007):
- Seleccione la celda donde desea insertar el multidocumento
- Haga clic en el menú Insertar y luego en Formas.
- Luego, selecciona el multidocumento de Flujogramas
Usando Aspose.Cells para Python via .NET
Puedes usar el siguiente método para insertar un multidocumento en la hoja de cálculo.
El método devuelve un objeto Shape.
El siguiente ejemplo muestra cómo insertar un multidocumento en una hoja de cálculo.
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the multidocument to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.FLOW_CHART_MULTIDOCUMENT, 2, 0, 2, 0, 100, 100) | |
# Save | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
Ejecute el código anterior, obtendrá los siguientes resultados:
Insertar una estrella de cinco puntas en la hoja de cálculo de Excel en C#
La forma de la estrella de cinco puntas pertenece a la categoría de Estrellas y Banderas.
En Microsoft Excel (por ejemplo, 2007):
- Selecciona la celda donde desees insertar la estrella de cinco puntas
- Haga clic en el menú Insertar y luego en Formas.
- Luego, selecciona la estrella de cinco puntas de Estrellas y Banderas
Usando Aspose.Cells para Python via .NET
Puedes usar el siguiente método para insertar una estrella de cinco puntas en la hoja de cálculo.
El método devuelve un objeto Shape.
El siguiente ejemplo muestra cómo insertar una estrella de cinco puntas en una hoja de cálculo.
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the Five-pointed star to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.STAR5, 2, 0, 2, 0, 100, 100) | |
# Save.You can check your icon in this way. | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
Ejecute el código anterior, obtendrá los siguientes resultados:
Insertar un globo de pensamiento en una hoja de cálculo de Excel en C#
La forma de un globo de pensamiento pertenece a la categoría de Llamadas.
En Microsoft Excel (por ejemplo, 2007):
- Seleccione la celda donde desea insertar el globo de pensamiento
- Haga clic en el menú Insertar y luego en Formas.
- Luego, seleccione el globo de pensamiento de Llamadas
Usando Aspose.Cells para Python via .NET
Puede utilizar el siguiente método para insertar un globo de pensamiento en la hoja de cálculo.
El método devuelve un objeto Shape.
El siguiente ejemplo muestra cómo insertar un globo de pensamiento en una hoja de cálculo.
from aspose.cells import SaveFormat, Workbook | |
from aspose.cells.drawing import AutoShapeType | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# Create workbook from sample file | |
workbook = Workbook() | |
# Access first worksheet from the collection | |
sheet = workbook.worksheets[0] | |
# Add the thought bubble cloud to the worksheet | |
sheet.shapes.add_auto_shape(AutoShapeType.CLOUD_CALLOUT, 2, 0, 2, 0, 100, 100) | |
# Save | |
workbook.save("sample.xlsx", SaveFormat.XLSX) |
Ejecute el código anterior, obtendrá los siguientes resultados:
Temas avanzados
- Cambiar los valores de ajuste de la forma
- Copiar formas entre hojas de cálculo
- Datos en Forma No Primitiva
- Encontrar la Posición Absoluta de la Forma dentro de la Hoja de Trabajo
- Obtener Puntos de Conexión de la Forma
- Gestionar Controles
- Agregar Iconos a la Hoja de Trabajo
- Gestionar Objetos OLE
- Gestionar Imágenes
- Gestionar SmartArt
- Gestionar Cuadro de Texto
- Agregar WordArt como Marca de Agua a la Hoja de Trabajo
- Actualizar Valores de Formas Vinculadas
- Enviar Forma al Frente o Atrás Dentro de la Hoja de Trabajo
- Gestionar Opciones de la Forma
- Gestionar Opciones de Texto de la Forma
- Extensiones Web - Complementos de Office