このリリースの新機能

キー カテゴリ 概要
CONVERSIONNET-8437 機能 Diagram ドキュメントの変換先として Drawio ファイル形式を追加
CONVERSIONNET-8442 機能 Diagram ドキュメントの変換元として Mermaid MMD ファイル形式を追加
CONVERSIONNET-8445 機能 圧縮ドキュメントの変換先として CAB を追加
CONVERSIONNET-8459 機能 CadLoadOptions に CadLayoutScope を追加し、モデル空間、紙レイアウト、またはその両方を変換できるように
CONVERSIONNET-8464 機能 圧縮ドキュメントの変換元および変換先として XAR を追加
CONVERSIONNET-8460 改善 各 CAD レイアウトを個別のスライド、ワークシート、Word ページ、HTML/MHTML 画像、SVG 領域に変換
CONVERSIONNET-8461 改善 CAD レイアウト選択が何も一致しない場合に、欠落しているレイアウト名を表示
CONVERSIONNET-8462 改善 未設定の LoadOptions.Format を例外を投げるのではなく「未設定」として扱う
CONVERSIONNET-8361 バグ DOCX のアウトライン付きシェイプが PDF 変換時に正しく描画されない
CONVERSIONNET-8396 バグ Presentation ファイルを PDF に変換するとヘッダー/フッターが不整合になる
CONVERSIONNET-8399 バグ Summary リンクが壊れた Presentation ファイルを変換すると GroupDocsConversionException が発生
CONVERSIONNET-8426 バグ DWG ファイルを PDF に変換する際のページシート向き設定
CONVERSIONNET-8427 バグ アクティブなレイアウトがない CAD 図面の変換で NullReferenceException を修正
CONVERSIONNET-8428 バグ CAD 変換で明示的にページサイズを設定したときの二重単位変換を修正
CONVERSIONNET-8429 バグ CadLoadOptions が無視されて CAD → PDF/UA が変換されない問題を修正
CONVERSIONNET-8430 バグ 複数レイアウト CAD ドキュメントで CadDocumentInfo が 1 ページと報告する問題を修正
CONVERSIONNET-8444 バグ Linux 環境で GroupDocs.Conversion のサムネイル生成に関する問題
CONVERSIONNET-8467 バグ EML → PDF 変換時に単位タイプ不一致例外が発生する問題を修正

パブリック API の変更

⚠️ 後方互換性のない変更 – 以下の更新は既存の公開動作を変更します。実行時エラーを防ぐためにコードを調整してください。

1. LoadOptions.Format が未設定の場合に例外を投げる代わりに null を返すようになりました

影響を受けるクラス: すべての 28 種類の型付き LoadOptions(例: SpreadsheetLoadOptions、PdfLoadOptions、CadLoadOptions など)

変更点
フォーマットが割り当てられる前に Format プロパティを取得すると例外が発生していましたが、現在は null を返すようになり、単純な null チェックで対応可能です。

移行例

var loadOptions = new SpreadsheetLoadOptions();

if (loadOptions.Format == null)
{
    // 新しいコードパス – 以前は getter が例外を投げて到達できませんでした。
}

ガイダンス
loadOptions.Format 周りの try/catch を null チェックに置き換えてください。FileType.Unknown との比較は行わず、== null で判定してください。


2. CadLoadOptions.LayoutNames の完全一致検証と詳細エラーレポート

影響を受けるクラス: CadLoadOptions

変更点
LayoutNames は現在、図面のレイアウト名と 完全一致(大文字小文字を区別) で比較されます。いずれも一致しない場合、利用可能なレイアウトと不一致の要求を列挙した InvalidLoadOptionsException がスローされます。

移行例

using GroupDocs.Conversion.Exceptions;

try
{
    using var converter = new Converter("drawing.dwg",
        ctx => new CadLoadOptions { LayoutNames = new[] { "layout1" } });
    converter.Convert("out.pdf", new PdfConvertOptions());
}
catch (InvalidLoadOptionsException ex)
{
    // 例示メッセージ:
    // "CadLoadOptions.LayoutNames に一致するレイアウト名がこの図面にありません。利用可能レイアウトは
    //  Model, Layout1, Layout2 です。要求された名前: layout1。名前は完全一致で比較されるため、
    //  大文字小文字が異なるだけでも別名とみなされます。"
    Console.WriteLine(ex.Message);
}

ガイダンス

  • レイアウト名は正確に、かつソース図面で使用されているケースと同じように記述してください。
  • 必要なレイアウトだけを指定する場合は、正確な名前を提供してください。不一致のエントリは無視され、マッチしたレイアウトは引き続き変換されます。

3. 複数シートの CAD 図面がシートごとに個別の出力単位を生成するようになりました

影響を受けるクラス: Converter、PresentationConvertOptions、PdfConvertOptions

変更点
従来は、複数の紙空間レイアウトを持つ図面を変換すると 単一の平坦化画像/スライド が生成されていました。現在は各レイアウトごとに 個別の出力単位(スライド、ページ等)が作成され、レイアウトのページ設定に合わせたサイズになります。Converter.GetDocumentInfo().PagesCount は生成された単位数を返します。

移行例 – 変換

using var converter = new Converter("multi-layout.dwg");

// 3 シート → 3 スライド 出力(以前は 1 スライド).
converter.Convert("drawing.pptx", new PresentationConvertOptions());

移行例 – ページ数取得

using var converter = new Converter("multi-layout.dwg");
int sheets = converter.GetDocumentInfo().PagesCount; // レイアウトが 3 つなら 3 を返す

ガイダンス

  • UI のページングやファイル命名など、下流処理が複数出力に対応できるよう調整してください。
  • 単一シートの図面では挙動は変わりません。
  • 例外は CAD → PDF/UA‑1 で、依然として単一のタグ付ページが生成されます。

4. 新しい CadLoadOptions.LayoutScope プロパティで変換対象空間を明示的に制御

影響を受けるクラス: CadLoadOptions

変更点
LayoutScope により Model、Layouts、または Both(既定) のいずれかを指定してロード対象を選択できます。

  • LayoutNames が設定されている場合、LayoutScope は無視され、明示的な名前が優先されます。
  • 少なくとも 1 シートが存在する図面で、選択したスコープがシートを生成しない場合は、サイレントにデフォルト空間が使用される代わりに InvalidLoadOptionsException がスローされます。

移行例 – 紙レイアウトのみ変換

using GroupDocs.Conversion;
using GroupDocs.Conversion.Options.Convert;
using GroupDocs.Conversion.Options.Load;

using var converter = new Converter("drawing.dwg",
    ctx => new CadLoadOptions { LayoutScope = CadLayoutScope.Layouts });
converter.Convert("layouts.pdf", new PdfConvertOptions());

ガイダンス

  • 既存コードはデフォルトで Both が使用されるため、従来通り動作します。
  • モデル空間だけ、または紙レイアウトだけを対象にしたい場合はそれぞれ CadLayoutScope.Model または CadLayoutScope.Layouts を設定してください。
  • 以前に空の LayoutNames 配列でフィルタリングしようとしていた場合は、適切な LayoutScope に置き換えて、シートが選択されなかったときに明確なエラーが得られるようにしてください。

新機能

高度な CAD レイアウト制御: 特定の CAD レイアウトを選択し、各レイアウトを個別のスライド、ワークシート、ページ、画像、または SVG 領域に変換できます。CadLayoutScope によりモデル空間、紙レイアウト、またはその両方を選択でき、シート固有の向きやページサイズ設定も尊重されます。

拡張されたアーカイブサポート: XAR と CAB 形式が圧縮ドキュメントの変換元・変換先として利用可能になり、これらのアーカイブタイプ間のシームレスな変換が実現します。

最新ダイアグラム相互運用性: Mermaid MMD ファイルをダイアグラムの変換元として、Drawio ファイルを変換先としてサポートし、モダンな図表作成ツールとの統合が容易になります。

重要な安定性向上: EML → PDF、DOCX シェイプのアウトライン、プレゼンテーションのヘッダー/フッター、壊れたサマリーリンク、Linux 環境でのサムネイル生成、DWG シート向き設定に関する変換失敗を修正しました。これにより、メール、オフィス、プレゼンテーション、CAD ワークフロー全体の信頼性が向上します。

コード例

using var converter = new Converter("multi-layout.dwg");

// 3 シート → 3 スライド 出力(以前は 1 スライド).
converter.Convert("drawing.pptx", new PresentationConvertOptions());

アップデートの取得方法

NuGet

Install-Package GroupDocs.Conversion -Version 26.8

GroupDocs.Conversion 26.8 on NuGet

直接ダウンロード

リリースノートに直接ダウンロードリンクは提供されていません。

リソース