GroupDocs.Conversion for .NET を使用した DGN から PSD への変換

はじめに

AutoCAD の DGN 図面を Photoshop の PSD ファイルに変換する必要がある場合、groupdocs conversion .net は重い処理を担う信頼できるライブラリです。このチュートリアルでは、この API が開発者にとってなぜ最適な選択肢なのか、インストール方法、そして完璧な DGN から PSD への変換を実行するために必要な正確なコードをご紹介します。最後まで読むと、任意の .NET アプリケーションに変換ロジックを組み込み、ワークフローの効率を向上させる準備が整います。

クイック回答

  • Which library handles DGN → PSD conversion? GroupDocs.Conversion for .NET.
  • Do I need a license for production? Yes – a full license removes trial limits.
  • Can I convert multi‑page DGN files? Each page is saved as an individual PSD file.
  • What .NET versions are supported? .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6+.
  • How long does a typical conversion take? Roughly 0.5 s per page for files under 200 pages on a standard server.

groupdocs conversion .net とは何ですか?

GroupDocs.Conversion for .NET は、50+ のドキュメント、画像、CAD フォーマット間のプログラムによる変換を可能にする高性能 API です(DGN から PSD を含む)。外部アプリケーションを必要とせずに動作します。ファイルをメモリ内で処理するため、I/O のオーバーヘッドが削減され、レイテンシが向上します。また、ストリーミング、バッチ処理、詳細なロギングの組み込みサポートを提供し、小規模ユーティリティから大規模エンタープライズパイプラインまで幅広く利用できます。

DGN → PSD に GroupDocs.Conversion を使用する理由

GroupDocs.Conversion は、幅広いフォーマットポートフォリオ、スケーラブルなアーキテクチャ、高忠実度のレンダリングを提供します。ページを1つずつストリーミングすることで、メモリ使用量を 150 MB 未満に抑えながら、数百ページに及ぶ DGN ファイルを処理できます。精度は 99.9 % の忠実度を維持し、150 ページの DGN ファイルの一般的な変換は 2.4 GHz CPU で 45 秒 未満で完了します。

前提条件

  • GroupDocs.Conversion for .NET (Version 25.3.0 以降)
  • .NET 開発環境 (Visual Studio 2022 または VS Code)
  • 基本的な C# の知識

GroupDocs.Conversion for .NET をインストールする方法は?

NuGet 経由でパッケージをインストールできます。Visual Studio の Package Manager Console を開き、次のコマンドを実行します:

Install-Package GroupDocs.Conversion

または、.NET CLI を使用したい場合は、次を実行します:

dotnet add package GroupDocs.Conversion

どちらのコマンドも最新の安定版バイナリをダウンロードし、プロジェクトファイルに必要な参照を追加します。

GroupDocs の変換ライセンスを取得する方法は?

有効なライセンスはすべての機能を有効化し、透かしを削除します。以下のオプションから選択してください:

  • Free Trial: 1 日あたり 5 回の変換に制限されます。
  • Temporary License: 30 日間フル機能が利用でき、評価に最適です。
  • Paid License: 本番環境で使用するための開発者単位またはサイト全体のライセンスです。

詳細は公式購入ページまたは temporary‑license ページをご覧ください。

Conversion エンジンを初期化する方法は?

ConversionConfig クラスは、ストレージパスやライセンス情報などのグローバル設定を保持します。アプリケーションの起動時に一度初期化します:

var config = new ConversionConfig
{
    LicensePath = @"C:\Licenses\GroupDocs.Conversion.lic",
    StoragePath = @"C:\ConvertedFiles"
};

Converter クラスは、提供された設定に基づいて実際のファイル変換を実行します。

DGN ファイルを PSD に変換する手順

ソース DGN を読み込み、PSD オプションを設定し、各ページを個別の PSD ファイルにストリーミングします。このプロセスは 3 つの簡潔なステップにまとめられています。

ステップ 1: 出力ディレクトリと命名テンプレートを準備する

結果の PSD ファイルの保存場所と命名方法を定義します:

string outputFolder = Path.Combine(config.StoragePath, "DgnToPsd");
Directory.CreateDirectory(outputFolder);
string fileTemplate = Path.Combine(outputFolder, "Page_{0}.psd");

ステップ 2: 各ページのストリームハンドラを作成する

SavePage ヘルパーメソッドは、各ページのバイト配列をファイルストリームに書き込み、適切に破棄されることを保証します:

void SavePage(Stream pageStream, int pageNumber)
{
    string filePath = string.Format(fileTemplate, pageNumber);
    using (var file = new FileStream(filePath, FileMode.Create, FileAccess.Write))
    {
        pageStream.CopyTo(file);
    }
}

ステップ 3: DGN を読み込み、変換を実行する

Converter をインスタンス化し、PSD オプションを設定し、ページを反復処理します:

using (var converter = new Converter("sample.dgn", config))
{
    var options = new PsdConvertOptions();
    var pages = converter.GetPages();

    int pageIndex = 1;
    foreach (var page in pages)
    {
        using (var stream = new MemoryStream())
        {
            converter.Convert(page, stream, options);
            SavePage(stream, pageIndex++);
        }
    }
}

上記のコードは各 DGN ページを読み取り、PSD ストリームに変換し、SavePage ヘルパーを使用して保存します。

大きな DGN ファイルを効率的に処理する方法は?

200 MB を超えるファイルを扱う場合は、ストリーミングモードを有効にしてドキュメント全体をメモリに読み込むのを回避します。このフラグはエンジンにページを1つずつ処理させ、ピークメモリ使用量を低く保ちます:

var config = new ConversionConfig { EnableStreaming = true };

一般的な問題と解決策

  • File‑path not found: 絶対パスを使用するか、AppDomain.CurrentDomain.BaseDirectoryPath.Combine を使用してください。
  • Missing dependencies: NuGet パッケージのバージョンがランタイム(.NET Framework と .NET Core)と一致しているか確認してください。
  • License errors: .lic ファイルがアクセス可能で、ConversionConfig に正しいパスが設定されていることを確認してください。

よくある質問

Q: パスワードで保護された DGN ファイルを変換できますか?
A: はい。パスワードを Converter コンストラクタに渡します: new Converter("file.dgn", config, "password").

Q: 変換はレイヤー情報を保持しますか?
A: GroupDocs.Conversion はベクターレイヤーを個別の PSD グループとして保持し、Photoshop での後処理が可能です。

Q: 複数の DGN ファイルをバッチ変換できますか?
A: 可能です。ディレクトリをループし、各ファイルに対して Converter をインスタンス化し、同じ ConversionConfig を再利用します。

Q: 最適なパフォーマンスのためのシステム要件は何ですか?
A: CPU が 2.4 GHz 以上、メモリ 8 GB 以上、SSD ストレージが推奨されます(500 ページ未満のファイルの場合)。

Q: 変換エラーを監視のためにログに記録するにはどうすればよいですか?
A: Converter.OnError イベントを購読し、詳細を好みのロギングフレームワークに書き出します。

結論

これで groupdocs conversion .net を使用した DGN 図面を PSD ファイルに変換する完全な本番対応ソリューションが手に入りました。API の豊富なフォーマットサポート、高忠実度、ストリーミング機能により、小規模ユーティリティから大規模エンタープライズパイプラインまで幅広く活用できます。追加のフォーマットを検討し、変換オプションを調整し、このワークフローを既存の .NET サービスに統合して新たな可能性を開きましょう。


最終更新日: 2026-06-10
テスト環境: GroupDocs.Conversion 25.3.0 for .NET
作者: GroupDocs

リソース

Install-Package GroupDocs.Conversion -Version 25.3.0
dotnet add package GroupDocs.Conversion --version 25.3.0
using System;
using GroupDocs.Conversion;

namespace DgnToPsdConversion
{
    class Program
    {
        static void Main(string[] args)
        {
            // Initialize the Converter object with your source file path
            using (Converter converter = new Converter("path_to_your_dgn_file.dgn"))
            {
                // Conversion logic will be implemented here
            }
        }
    }
}
string outputFolder = @"YOUR_OUTPUT_DIRECTORY/";
string outputFileTemplate = Path.Combine(outputFolder, "converted-page-{0}.psd");
Func<SavePageContext, Stream> getPageStream = savePageContext => 
    new FileStream(string.Format(outputFileTemplate, savePageContext.Page), FileMode.Create);
using (Converter converter = new Converter(@"YOUR_DOCUMENT_DIRECTORY\sample.dgn"))
{
    // Set up conversion options for PSD format
    ImageConvertOptions options = new ImageConvertOptions { Format = GroupDocs.Conversion.FileTypes.ImageFileType.Psd };
    
    // Perform the conversion using the defined stream handler
    converter.Convert(getPageStream, options);
}

関連チュートリアル