SVGをPDFXPSC#に変換する

スケーラブルベクターグラフィックス、SVG、ファイル形式は、通常はWeb用の2次元画像を表示するために使用されます。 C#またはVB.NETを使用して、プログラムでSVGPDFまたはXPSに変換できます。 XPSおよびPDFファイル形式は、さまざまなシステムで広くサポートおよび利用されています。この記事では、SVGからPDFおよびSVGからXPSへの変換機能について例を挙げて説明します。

SVGからPDFまたはXPSへのコンバーター–APIのインストール

Aspose.SVG for .NETは、SVGファイルを編集、操作、または変換するための専用製品です。ユーザーからの膨大な機能リクエストを考慮して設計しました。 Microsoft Visual Studio IDEの[ツール]メニューからNuGetを使用すると、APIを簡単にインストールできます。このアプローチは、すべての依存関係が単一のインストールコマンドで自動的にインストールされる方法で役立ちます。たとえば、SVGレンダリングには、Windows以外の環境では、デフォルトではあまり利用できないSystem.Drawing参照も必要になる場合があります。また、公式サイトからAPIをダウンロードすることもできます。

C#でプログラムによってSVGをPDFに変換する

コンソール、Web、デスクトップ、またはその他のアプリケーションであるかどうかに関係なく、.NETベースのアプリケーションでSVGをPDFファイルに変換できます。変換の最良の部分は、入力SVGおよび出力PDFドキュメント間の高い忠実度です。さらに、APIによるリソースの効率的な利用により、ファイルの迅速な変換が可能になります。 SVGファイルをPDFに変換するには、以下の手順に従う必要があります。

  1. 入力SVGファイルをロードします。
  2. PdfRenderingOptionsオブジェクトを指定します。
  3. ページサイズ、余白などのページ設定プロパティを設定します。
  4. SVGをC#でPDFファイルにレンダリングします。

コードスニペットは、C#を使用してプログラムでSVGファイルをPDFに変換する方法を説明しています。

// 入力SVGファイルをロードする
using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    // PdfRenderingOptionsを指定します
    var options = new PdfRenderingOptions()
    {
        // ページ設定のプロパティを設定する
        PageSetup =
        {
            Sizing = SizingType.FitContent
        }
    };
    using (var device = new PdfDevice(options, dataDir + "smiley_out.pdf"))
    {
        // SVGをPDFにレンダリング
        document.RenderTo(device);
    }
}

C#でプログラムによってSVGをXPSに変換する

ファイル形式の詳細を気にすることなく、簡単なAPI呼び出しを使用してSVGファイルをXPSに簡単に変換できます。変換を実行するには、以下の簡単な手順に従う必要があります。

  1. 入力SVGファイルをロードします。
  2. XPSRenderingOptionsオブジェクトを初期化します。
  3. PDFのページサイズ、余白などを設定します。
  4. SVGをC#でXPSファイルにレンダリングします。

次のコードは、C#を使用してプログラムでSVGをXPSに変換する方法を示しています。

// 入力SVGファイルをロードする
using (var document = new SVGDocument(Path.Combine(dataDir, "smiley.svg")))
{
    // XPSRenderingOptionsを指定します
    var options = new XpsRenderingOptions()
    {
        // PDFのページサイズ、余白などを設定します。
        PageSetup =
        {
            AnyPage = new Page(new Size(500, 500))
        }
    };
    using (var device = new XpsDevice(options, dataDir + "smiley_out.xps"))
    {
        // SVGをXPSにレンダリングする
        document.RenderTo(device);
    }
}

サンプルプロジェクトとサンプルファイルをダウンロードする

サンプルプロジェクトを、C#プログラミング言語を使用したSVGからPDFまたはXPSファイル形式への変換のデモンストレーションアプリケーションとしてコンパイルしました。これまでに説明したすべての概要を簡単に説明します。プロジェクトのZIPファイルをダウンロードするか、都合に合わせてGitHubリポジトリからクローンを作成できます。

結論

この記事では、.NET FrameworkベースのアプリケーションでC#またはVB.NET言語を使用して、プログラムでSVGファイルをPDFまたはXPS形式のファイルに変換する方法について説明しました。 SVGファイルを操作するためにAPIによって提供される機能は他にもたくさんあります。 ドキュメントおよびAPIリファレンスにアクセスすると、さらに詳しく調べることができます。ご不明な点がございましたら、いつでも無料サポートフォーラムまでお問い合わせください。

関連項目