ワークシートから画像を追加、抽出、および削除する方法
イントロダクション
画像を追加することで、ユーザーは関連するグラフィックやイラストでデータを充実させることができます。 画像を削除することで、コンテンツの編集と整理が簡単になります。 さらに、画像を取得する機能により、他のドキュメントやアプリケーションで再利用したり、既存の画像を更新したりすることができます。 これらの機能は総合的に、ユーザーによる画像の制御を強化し、全体的なユーザー体験を向上させ、Excelワークブック内でのシームレスな画像操作を可能にします。
ワークシートから画像を追加、抽出、および削除する方法
IronXLで始めましょう
今日から無料トライアルでIronXLをあなたのプロジェクトで使い始めましょう。
画像追加の例
スプレッドシートに画像を挿入するには、InsertImage
メソッドを使用します。このメソッドは、JPG/JPEG、BMP、PNG、GIF、TIFF などのさまざまな画像タイプをサポートしています。 画像の寸法を決定するためには、画像の左上隅と右下隅を指定する必要があります。これにより、列と行の値を引いて寸法が計算されます。 例えば、次のアプローチを試すことができます:
- 1x1画像サイズの場合:
- worksheet.InsertImage("image.gif", 5, 1, 6, 2);
-
2x2の画像サイズの場合:
- worksheet.InsertImage("image.gif", 5, 1, 7, 3);
次の内容にご注意ください。
生成された画像IDは、1、3、5、7、...のパターンに従います。
: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")
スプレッドシートの出力

画像抽出の例
選択したワークシートから画像を抽出するには、シート内に含まれているすべての画像のリストを提供するImagesプロパティにアクセスするだけです。 このリストから、エクスポート、リサイズ、位置の取得、および各画像のバイトデータの取得など、さまざまな操作を実行できます。 特筆すべき点として、画像IDは奇数のパターンに従い、1, 3, 5, 7, などの順に増加します。
: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")

抽出された画像

画像サイズ
画像削除の例
画像抽出例に従って、対応するインデックス番号を使用して挿入された画像を簡単に削除できます。 画像のID番号をRemoveImage
メソッドに渡せば、ワークシートから画像を削除できます。
: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")