C#でワークシートを画像に変換する方法
C#でワークシートを画像に変換する方法
単一の Excel ワークシートを画像形式(例えば PNG、JPEG)にエクスポートすることは、プレビューを生成したり、グラフをエクスポートしたり、スプレッドシートのコンテンツの単なる視覚的な表現を共有したりするのに役立ちます。このガイドでは、1 つのワークシートを Excel ワークシートから画像に変換する方法を示しています。
ユースケース
- 特定のワークシートのプレビューを作成する
- 電子メールまたは文書のための輸出フォーマットレポート
- 単一のページをウェブページまたはPDFに組み込む
ステップ・ステップ・ガイド
ステップ1: .NET のための Aspose.Cells をインストールする
dotnet add package Aspose.Cells
ステップ2:Excelファイルをアップロード
Workbook workbook = new Workbook("SalesData.xlsx");
Worksheet sheet = workbook.Worksheets["Q1 Report"]; // Access specific worksheet
ステップ3:画像レンダーのオプションを設定する
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200,
PrintingPageType = PrintingPageType.Default
};
ステップ4: SheetRender オブジェクトを作成する
SheetRender renderer = new SheetRender(sheet, options);
ステップ5:各ページを画像に変換する
for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
{
string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
renderer.ToImage(pageIndex, imageName);
}
ステップ6:画像を保存
このコードは、タブレットに印刷可能なページごとに1枚の画像を自動的に保存します。
ステップ7:オプションの改善
追加のレイアウト設定を適用できます:
// Show gridlines in the output image
options.ShowGridLines = true;
// Fit all content on a single page
options.AllColumnsInOnePagePerSheet = true;
完全例コード
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// Load the Excel workbook
Workbook workbook = new Workbook("SalesData.xlsx");
// Access a specific worksheet
Worksheet sheet = workbook.Worksheets["Q1 Report"];
// Define image rendering options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200,
PrintingPageType = PrintingPageType.Default
};
// Enable gridlines if desired
options.ShowGridLines = true;
// Render the sheet to image(s)
SheetRender renderer = new SheetRender(sheet, options);
for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
{
string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
renderer.ToImage(pageIndex, imageName);
Console.WriteLine($"Saved: {imageName}");
}
Console.WriteLine("Worksheet successfully rendered to image(s).");
}
}
一般的なシナリオ&トラブル解決
問題 | 解決策 |
---|---|
カットオフコンテンツ | 利用 AllColumnsInOnePagePerSheet = true |
出力は低品質 | 画像解像度の向上 |
ギャラリーが欠けている | セット ShowGridLines = true |