Cómo agregar, extraer y eliminar imágenes de hojas de cálculo | IronXL

Cómo agregar, extraer y eliminar imágenes en Excel con C

This article was translated from English: Does it need improvement?
Translated
View the article in English

Al agregar imágenes, los usuarios pueden enriquecer sus datos con gráficos o ilustraciones relevantes. Eliminar o suprimir imágenes simplifica la edición de contenido y la organización. Además, la capacidad de recuperar imágenes permite reutilizarlas en otros documentos o aplicaciones, así como actualizar imágenes existentes. Colectivamente, estas características mejoran el control del usuario sobre las imágenes, mejoran la experiencia del usuario en general y permiten una manipulación de imágenes fluida dentro de los libros de Excel.

Inicio rápido: Insertar, Extraer y Eliminar Imágenes en un Paso

Utilice la API intuitiva de IronXL para agregar, obtener y eliminar imágenes de las hojas de cálculo en solo unas pocas líneas. Este ejemplo muestra lo fácil que es insertar una imagen, acceder a ella a través de la colección Images y luego eliminarla, todo sin tocar Interop.

Nuget IconEmpieza a crear PDF con NuGet ahora:

  1. Instalar IronXL con el gestor de paquetes NuGet

    PM > Install-Package IronXL.Excel

  2. Copie y ejecute este fragmento de código.

    workSheet.InsertImage("logo.png", 1, 1, 3, 3);
    workSheet.RemoveImage(1);
    var firstImage = workSheet.Images[0];
  3. Despliegue para probar en su entorno real

    Empieza a utilizar IronXL en tu proyecto hoy mismo con una prueba gratuita
    arrow pointer


Ejemplo de agregar imágenes

To insert an image into a spreadsheet, utilize the InsertImage method, which supports various image types, such as JPG/JPEG, BMP, PNG, GIF, and TIFF. Debe especificar las esquinas superior izquierda e inferior derecha de la imagen para determinar sus dimensiones, calculadas restando los valores de columna y fila. Por ejemplo, puede probar los siguientes enfoques:

  • Para una imagen de tamaño 1x1:
  • worksheet.InsertImage("image.gif", 5, 1, 6, 2);
  • Para una imagen de tamaño 2x2:
  • worksheet.InsertImage("image.gif", 5, 1, 7, 3);

Por favor notaLos ID de imágenes generados siguen un patrón de 1, 3, 5, 7, etc.

:path=/static-assets/excel/content-code-examples/how-to/add-remove-extract-worksheet-images-insert.cs
using IronXL;

WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Insert images
workSheet.InsertImage("ironpdf.jpg", 2, 2, 4, 4);
workSheet.InsertImage("ironpdfIcon.png", 2, 6, 4, 8);

workBook.SaveAs("insertImages.xlsx");
Imports IronXL

Private workBook As WorkBook = WorkBook.Create()
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Insert images
workSheet.InsertImage("ironpdf.jpg", 2, 2, 4, 4)
workSheet.InsertImage("ironpdfIcon.png", 2, 6, 4, 8)

workBook.SaveAs("insertImages.xlsx")
$vbLabelText   $csharpLabel

Hoja de cálculo de salida

Insertar imagen

Ejemplo de extracción de imágenes

To extract images from the selected worksheet, simply access the Images property, which provides a list of all the images contained within the sheet. De esta lista, puede realizar varias operaciones como exportar, redimensionar, recuperar posiciones y obtener los datos de bytes de cada imagen. Notablemente, los IDs de imágenes siguen un patrón de números impares, incrementando en la secuencia de 1, 3, 5, 7, y así sucesivamente.

:path=/static-assets/excel/content-code-examples/how-to/add-remove-extract-worksheet-images-extract.cs
using IronSoftware.Drawing;
using IronXL;
using IronXL.Drawing;
using System;
using System.Collections.Generic;

WorkBook workBook = WorkBook.Load("insertImages.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Retreive images
List<IronXL.Drawing.Images.IImage> images = workSheet.Images;

// Select each image
foreach (IronXL.Drawing.Images.IImage image in images)
{
    // Save the image
    AnyBitmap anyBitmap = image.ToAnyBitmap();
    anyBitmap.SaveAs($"{image.Id}.png");

    // Resize the image
    image.Resize(1,3);

    // Retrieve image position
    Position position = image.Position;
    Console.WriteLine("top row index: " + position.TopRowIndex);
    Console.WriteLine("bottom row index: " + position.BottomRowIndex);

    // Retrieve byte data
    byte[] imageByte = image.Data;
}

workBook.SaveAs("resizeImage.xlsx");
Imports IronSoftware.Drawing
Imports IronXL
Imports IronXL.Drawing
Imports System
Imports System.Collections.Generic

Private workBook As WorkBook = WorkBook.Load("insertImages.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Retreive images
Private images As List(Of IronXL.Drawing.Images.IImage) = workSheet.Images

' Select each image
For Each image As IronXL.Drawing.Images.IImage In images
	' Save the image
	Dim anyBitmap As AnyBitmap = image.ToAnyBitmap()
	anyBitmap.SaveAs($"{image.Id}.png")

	' Resize the image
	image.Resize(1,3)

	' Retrieve image position
	Dim position As Position = image.Position
	Console.WriteLine("top row index: " & position.TopRowIndex)
	Console.WriteLine("bottom row index: " & position.BottomRowIndex)

	' Retrieve byte data
	Dim imageByte() As Byte = image.Data
Next image

workBook.SaveAs("resizeImage.xlsx")
$vbLabelText   $csharpLabel
Imágenes extraídas
Tamaño de la imagen

Ejemplo de eliminación de imagen

Following the extract images example, you can easily remove any inserted image using its corresponding index number. Simply pass the image's ID number to the RemoveImage method to remove it from the worksheet.

:path=/static-assets/excel/content-code-examples/how-to/add-remove-extract-worksheet-images-remove.cs
using IronXL;

WorkBook workBook = WorkBook.Load("insertImages.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Remove image
workSheet.RemoveImage(3);

workBook.SaveAs("removeImage.xlsx");
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("insertImages.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Remove image
workSheet.RemoveImage(3)

workBook.SaveAs("removeImage.xlsx")
$vbLabelText   $csharpLabel

Preguntas Frecuentes

¿Cómo puedo agregar imágenes a una hoja de cálculo de Excel?

Para insertar una imagen en una hoja de cálculo de Excel usando IronXL, utilice el método InsertImage. Este método le permite especificar las dimensiones de la imagen definiendo las esquinas superior izquierda e inferior derecha. Los formatos compatibles incluyen JPG, BMP, PNG, GIF y TIFF.

¿Qué formatos de imagen son compatibles al insertar imágenes en Excel?

IronXL admite múltiples formatos de imagen para su inserción en hojas de cálculo de Excel, incluidos JPG/JPEG, BMP, PNG, GIF y TIFF.

¿Cómo extraigo imágenes de una hoja de cálculo de Excel?

Para extraer imágenes de una hoja de cálculo de Excel usando IronXL, acceda a la propiedad Images de la hoja de cálculo. Esto proporciona una lista de todas las imágenes, permitiéndole exportar, cambiar de tamaño, y recuperar sus posiciones y datos de bytes.

¿Puedo eliminar imágenes de una hoja de cálculo de Excel?

Sí, con IronXL, puede eliminar imágenes de una hoja de cálculo de Excel utilizando el método RemoveImage. Simplemente pase el ID de la imagen a este método para eliminarla.

¿Qué se requiere para comenzar a manipular imágenes en Excel usando C#?

Para comenzar a manipular imágenes en Excel usando IronXL, descargue la biblioteca IronXL para C# desde NuGet y cargue un archivo de Excel existente o cree uno nuevo.

¿Cómo se generan los IDs de imagen en IronXL?

En IronXL, los IDs de imagen se generan siguiendo un patrón de números impares, como 1, 3, 5, 7, y así sucesivamente.

¿Es posible exportar imágenes extraídas de una hoja de cálculo de Excel?

Sí, una vez que las imágenes son extraídas utilizando la propiedad Images de IronXL, pueden ser exportadas a formatos como PNG usando el método Export.

¿Cómo puedo especificar el tamaño de una imagen al insertarla en una hoja de cálculo de Excel?

Al insertar una imagen en una hoja de cálculo de Excel usando IronXL, especifique el tamaño proporcionando las esquinas superior izquierda e inferior derecha de la imagen a través del método InsertImage.

Chaknith Bin
Ingeniero de Software
Chaknith trabaja en IronXL e IronBarcode. Tiene un profundo conocimiento en C# y .NET, ayudando a mejorar el software y apoyar a los clientes. Sus conocimientos derivados de las interacciones con los usuarios contribuyen a mejores productos, documentación y experiencia en general.
¿Listo para empezar?
Nuget Descargas 1,738,553 | Version: 2025.11 recién lanzado