Xlsb ファイルを Tiff 画像に変換する方法

Sheetize は、Excel バイナリブック (.xlsb) を高品質な TIFF 画像に変換できるシンプルで高性能な API を提供します。印刷用プレビューの作成、スプレッドシートをロスレス画像として保存、元データを公開せずにドキュメントへブックのスナップショットを埋め込むときに最適です。

なぜ Sheetize を使って Xlsb → Tiff 変換を行うのか?

  • フルフィデリティ – セルの書式、色、グラフ、埋め込み画像をすべて保持。
  • ロスレスラスタ – TIFF はピクセルをそのまま保存するため、アーカイブや印刷用出力に最適。
  • 高速・スケーラブル – .NET 上で動作し、Windows、macOS、Linux で Office をインストールせずに利用可能。
  • 解像度・圧縮のカスタマイズ – DPI と圧縮方式(LZW、Deflate など)を選択できる。

はじめに

NuGet から Sheetize.ImageConverter パッケージをプロジェクトに追加し、ImageConverter.Process メソッドを呼び出します。

C# サンプルコード

using Sheetize;

var loadOptions = new LoadOptions
{
    // 変換元 Xlsb ファイルのパス
    InputFile = @"D:\Reports\AnnualReport.xlsb"
};

var saveOptions = new ImageSaveOptions
{
    // 出力先ファイル – 拡張子が .tiff のため TIFF 形式で保存されます
    OutputFile = @"D:\Images\AnnualReport.tiff",

    // 任意: 画像解像度 (DPI) を設定
    HorizontalResolution = 300,
    VerticalResolution = 300,

    // 任意: TIFF 圧縮方式 (例: Lzw, Deflate, None)
    Compression = "Lzw"
};

ImageConverter.Process(loadOptions, saveOptions);

このスニペットは AnnualReport.xlsb を読み込み、指定した DPI とロスレス圧縮で AnnualReport.tiff を出力します。

TIFF 出力時の主なオプション

  • HorizontalResolution / VerticalResolution – DPI を指定します。数値が大きいほど印刷品質の高い画像になります。
  • Compression – TIFF がサポートする圧縮アルゴリズム (Lzw, Deflate, None) を選択し、ファイルサイズと品質のバランスを調整します。
  • ColorDepth – 必要に応じてビット深度 (例: 24‑bit RGB、32‑bit RGBA) を設定し、色再現性を向上させます。

ベストプラクティス

  1. 印刷用 は 300 DPI 以上、画面表示用 は 150 DPI が目安です。
  2. ファイルサイズを抑えつつロスレス品質を保つために LZW 圧縮を使用してください。
  3. 大きなグラフや高解像度画像が含まれる場合は、ピクセル化を防ぐために DPI や色深度を上げます。
  4. 配布前に Adobe Photoshop や GIMP などの画像ビューアで生成された TIFF を必ず確認しましょう。
 日本語