C#でExcelチャートを画像に変換する方法
C#でExcelチャートを画像に変換する方法
Charts visually represent data in Excel files. When sharing reports, building dashboards, or generating documentation, you might need to export those charts to image files. This guide shows how to convert an Excel chart to an image using Aspose.Cells for .NET.
Why Convert Charts to Images?
- ウェブサイトやプレゼンテーションに視覚データを埋め込む
- Excel ビューアなしでレポートをメール送信する
- PDF や印刷レイアウトにチャートを含める
Step-by-Step Guide
Step 1: Install Aspose.Cells for .NET
dotnet add package Aspose.Cells
Step 2: Load the Workbook
Workbook workbook = new Workbook("Dashboard.xlsx");
Worksheet sheet = workbook.Worksheets["Charts"];
Step 3: Select the Chart
// アクセスするワークシートの最初のチャート
Chart chart = sheet.Charts[0];
Step 4: Set Export Options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
Transparent = false
};
Step 5: Convert Chart to Image
chart.ToImage("chart_output.png", options);
Step 6: Save and Verify
これにより、チャートがPNGファイルとして保存されます。JPEG、BMP、TIFFなども選択できます。
Step 7: Optional Enhancements
画像のサイズと品質をさらに制御するには、次のように設定します:
// スケーリングを制御
chart.ToImage("chart_highres.png", new ImageOrPrintOptions
{
ImageType = ImageType.Jpeg,
SmoothingMode = SmoothingMode.AntiAlias,
ChartImageWidth = 1200,
ChartImageHeight = 800
});
Complete Example Code
using System;
using Aspose.Cells;
using Aspose.Cells.Rendering;
using System.Drawing.Drawing2D;
class Program
{
static void Main()
{
// ワークブックを読み込む
Workbook workbook = new Workbook("Dashboard.xlsx");
// ワークシートと最初のチャートにアクセス
Worksheet sheet = workbook.Worksheets["Charts"];
Chart chart = sheet.Charts[0];
// 画像エクスポートオプションを設定
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
SmoothingMode = SmoothingMode.AntiAlias,
ChartImageWidth = 1200,
ChartImageHeight = 800
};
// チャートを画像としてエクスポート
chart.ToImage("chart_output.png", options);
Console.WriteLine("チャートが画像として正常にエクスポートされました。");
}
}
Common Scenarios & Fixes
問題 | 解決策 |
---|---|
チャートがぼやけて見える | ChartImageWidth と ChartImageHeight を増やす |
画像に明瞭さがない | SmoothingMode = AntiAlias を使用する |
チャートが切り取られている | ワークシートの余白またはスケーリング設定を確認する |