We’re happy to announce the release of GroupDocs.Merger for .NET v26.9, available as of September 2026. This release introduces row‑wise joining of spreadsheets, improves TIFF page selection via PageBuilder, enhances preview dimension handling, resolves concurrency issues with Visio and DOC output, and replaces several silent failure modes with clear exceptions—making the API more robust and predictable.

このリリースの新機能

  • [Feature] 複数ファイルの Excel 行を単一シートに結合 (MERGERNET-2198)
  • [Feature] PageBuilder のページ選択を最初の TIFF ドキュメントに適用 (MERGERNET-1372)
  • [Improvement] SetLicense がライセンスファイルを見つけられないと例外をスロー (MERGERNET-2183)
  • [Improvement] 空のライセンスストリームを SetLicense が拒否 (MERGERNET-2184)
  • [Improvement] 未サポート形式へ画像または音声を結合しようとしたときに明確な例外をスロー (MERGERNET-2190)
  • [Improvement] クロスプラットフォーム パッケージから System.Drawing.Common を除外し、欠如した依存関係を明示的に報告 (MERGERNET-2202)
  • [Bug] パスでドキュメントを開くまたは結合した後にソースファイルを閉じる (MERGERNET-2187)
  • [Bug] Merger 構築時にストリームファクトリを一度だけ呼び出す (MERGERNET-2189)
  • [Bug] 複数スレッドで PDF または XPS を DOC に結合したときの DOC 出力破損を修正 (MERGERNET-2192)
  • [Bug] ページ番号が指定されていない場合、すべてのページにページ向き変更を適用 (MERGERNET-2194)
  • [Bug] すべてのドキュメント形式ファミリで要求されたプレビュー幅と高さを尊重 (MERGERNET-2196)
  • [Bug] ページ番号なしで呼び出された ExtractPages と RemovePages が空または変更なしのドキュメントを生成していた問題を修正 (MERGERNET-2197)
  • [Bug] 同時処理時に Visio ドキュメントが ArgumentNullException の trueTypeFont で失敗する問題を修正 (MERGERNET-2199)
  • [Bug] 埋め込みファイルに修正日が無い場合に PDF ポートフォリオが NullReferenceException で失敗する問題を修正 (MERGERNET-2200)

パブリック API の変更

1. スプレッドシート結合 — 行単位モード(新 API)

GroupDocs.Merger.Domain.Options 名前空間に新しい公開型が追加されました。

型 説明
SpreadsheetJoinOptions PageJoinOptions から派生したスプレッドシート結合オプション。プロパティ: Mode, SkipRows, SheetMatching.
SpreadsheetJoinMode Worksheets(既定)は結合ファイルのシートを別々のワークシートとして追加。Rows は結合ファイルの各行を、結果シートのデータがある最終行の下に追加します。
SpreadsheetSheetMatching ByIndex(既定)はシート 2 をシート 2 に、シート 3 をシート 3 にと順に結合。FirstSheetOnly は各結合ファイルの最初のシートだけを結合します。
  • SkipRows は結合するすべてのファイルの先頭 N 行をスキップします(例: ヘッダー行)。最初のドキュメントは常に全行が使用されます。SkipRows と SheetMatching は Worksheets モードでは無効です。
  • 対応フォーマット: XLSX, XLS, XLSM, XLSB, XLTX, XLTM, XLT, XLAM, ODS。
  • 継承される要素: セル値、数式(相対参照は調整)、スタイル、結合セル、行の高さ。継承されない要素: グラフ、画像、ピボットテーブル、テーブル、条件付き書式、データ検証。
  • SkipRows に負の値を指定すると GroupDocsMergerException(“The count of rows to skip can not be negative.”)がスローされます。
  • 行数上限(XLS/XLT は 65,536 行、その他は 1,048,576 行)を超えると GroupDocsMergerException がスローされます。
  • ApplyPageBuilder は、Rows モードで結合中のスプレッドシートが保留中の場合に GroupDocsMergerException をスローします。

2. TIFF — PageBuilder が最初のドキュメントのページ選択を適用

API の変更はありません。CreatePageBuilder と ApplyPageBuilder は、最初の TIFF ドキュメントで選択されたページだけを適用します。従来は最初のドキュメントのすべてのページが常に含まれていました。PageBuilder を使用しない結合は従来通りの結果になります。

ImageJoinOptions で結合した後、CreatePageBuilder と ApplyPageBuilder は GroupDocsMergerException をスローします。これは結合画像がページシーケンスではなく単一レイアウトに構成されるためです。

3. ライセンス — SetLicense がサイレント失敗しなくなった

  • License.SetLicense(string licensePath) は、ライセンスファイルが見つからない場合に InvalidOperationException(“License not found: …”)をスローします。
  • License.SetLicense(Stream licenseStream) は、空のストリームが渡されたときに ArgumentNullException をスローします。

4. 空のページリストでのページ操作

  • ページ番号が指定されていない状態で呼び出された ExtractPages と RemovePages は、GroupDocsMergerException(“There are no page numbers to extract.” / “There are no page numbers to remove.”)をスローします。
  • ページ番号が指定されていない ChangeOrientation は、PDF、XPS、Word 処理、スプレッドシート、Visio ドキュメントのすべてのページの向きを変更します。

5. プレビューサイズ

GeneratePreview は、要求された Width と Height に合わせて各ページ画像をリサイズします。両方が指定された場合は正確にそのサイズに伸張されます。Width または Height が負の場合は GroupDocsMergerException がスローされます。

6. System.Drawing.Common と不足している依存関係

  • クロスプラットフォーム パッケージ(GroupDocs.Merger.Net60, GroupDocs.Merger.Net80, GroupDocs.Merger.Net100)はもはや System.Drawing.Common に依存しません。
  • 実行時に欠如した依存関係が検出された場合は、欠如したコンポーネント名とインストール手順を示す MissingDependencyException がスローされます。

7. 未サポート形式への画像・音声結合

画像または音声ファイルを未サポートのドキュメント形式に結合しようとした場合、FileTypeNotSupportedException(“Joining ‘…’ into ‘…’ is not supported”)がスローされます。

新機能

  • 行単位のスプレッドシート結合: 複数のスプレッドシートの行を単一シートに追加でき、ヘッダー行のスキップやシート位置によるマッチングが可能です。
  • TIFF 用 PageBuilder: PageBuilder で選択したページが最初の TIFF ドキュメントにも適用されます(従来は常に全ページが含まれていました)。
  • 正確なプレビュー寸法: GeneratePreview がすべてのドキュメント形式ファミリで要求された幅・高さの画像を返します。
  • 同時実行の修正: Visio と DOC の出力が複数スレッドからの同時処理で失敗しなくなりました。
  • リソース管理の改善: ファイルパスで開くまたは結合したドキュメントは、処理後にソースファイルを閉じます。ストリームファクトリは正確に一度だけ呼び出されます。
  • エラーメッセージの明確化: 以前はサイレントに失敗していた操作が、説明的な例外をスローするようになりました。

コード例

using GroupDocs.Merger;
using GroupDocs.Merger.Domain.Options;

using (var merger = new Merger("january.xlsx"))
{
    var options = new SpreadsheetJoinOptions
    {
        Mode = SpreadsheetJoinMode.Rows,   // 既存シートに行を追加
        SkipRows = 1                        // 各結合ファイルのヘッダー行をスキップ
    };

    merger.Join("february.xlsx", options);
    merger.Join("march.xlsx", options);
    merger.Save("q1.xlsx");
}

アップデートの取得方法

NuGet

  • パッケージ: GroupDocs.Merger 26.9.0
  • インストール コマンド:
    dotnet add package GroupDocs.Merger --version 26.9.0
    

直接ダウンロード

リソース