ロード保存マージSVGC#

SVG(Scalable Vector Graphics)は、2次元グラフィックス用のベクター画像形式です。これらの画像はXML形式に基づいているため、さまざまなノードをトラバースしてファイルの内容を簡単に編集または検索できます。 C#でプログラムによってSVG画像ファイルをロード、保存、またはマージできます。同様に、SVGイメージに関連する他のいくつかの機能により、.NETベースのアプリケーションでサポートされているいくつかのファイル形式を処理できます。詳細については、次のセクションを調べてみましょう。

C#.NETSVGAPIをインストールします

Aspose.SVG for .NET APIは、SVGファイルの作成、編集、または変換をサポートしています。 DLLファイルをOfficial DownloadsからZIPとしてダウンロードし、プロジェクトのリソースに追加できます。さらに、MicrosoftVisualStudioのNuGetパッケージマネージャーを使用して構成することもできます。 NuGetギャラリーからAPIを、他の依存関係がある場合は一緒にインストールします。以下は、NuGetのインストールコマンドです。

PM> Install-Package Aspose.SVG

C#を使用してプログラムでSVGファイルをロードする

既存のSVGイメージで作業を開始するとき、最初に行う必要があるステップは、入力ファイルをロードすることです。 SVGファイルは、Webからだけでなくファイルからもプログラムでロードできます。以下の手順は、SVGファイルをロードする方法を示しています。

  1. SVGを入力するファイルパスを指定します
  2. または、URLを指定してSVG画像をロードします
  3. ファイルまたはURLからSVGドキュメントをロードする

次のコードスニペットは、C#を使用してプログラムでSVGファイルを読み込む方法を示しています。

// SVGを入力するファイルパスを指定します
string document = Path.Combine(dataDir, "QBezier.svg");

// または、URLを指定してSVG画像をロードします
var documentUrl = new Url("https://docs.aspose.com/svg/net/drawing-basics/svg-path-data/owl.svg");

// ファイルまたはURLからSVGドキュメントをロードする
var document = new SVGDocument(document)

ただし、ここで重要なのは、指定されたURLでリソースが見つからない場合、APIがDOMExceptionをスローする可能性があることです。

SVGファイルをプログラムでC#に保存する

SVGファイルをロードする方法はすでに学びました。同様に、SVGファイルをファイルまたはURLに保存できます。次の手順では、SVGファイルを.NETベースのアプリケーションに保存する方法について説明します。

  1. SVGドキュメント保存の完全な(完全な)パスを設定します
  2. SVGをファイルに保存
  3. またはSVGをURLに保存

Save(Url)オーバーロードされたメソッドドキュメントをUrlで指定されたローカルファイルに保存します。次のコードスニペットは、C#を使用してSVGファイルを保存する方法を示しています。

// SVGドキュメント保存の完全な(完全な)パスを設定します
var url = new Url(Path.Combine(OutputDir, "Lineto_out.svg"), Directory.GetCurrentDirectory());

// SVGをファイルに保存
document.Save(documentPath);

// またはSVGをURLに保存
document.Save(url);

SVG画像をプログラムでC#とマージする

さまざまなSVGファイルをPDF、XPS、JPG、TIFF、およびその他のファイル形式にマージできます。異なるSVG画像をマージするには、次の手順に従う必要があります。

  1. 複数のSVG入力ファイルをロードする
  2. SvgRendererのインスタンスを初期化します
  3. すべてのSVGファイルを必要な出力形式にマージします

以下のコードは、C#を使用してプログラムでSVGファイルをマージする方法の例です。

// 後でマージするためにファイルからSVGドキュメントを初期化します
using (var document1 = new SVGDocument(Path.Combine(DataDir, "owl.svg")))
using (var document2 = new SVGDocument(Path.Combine(DataDir, "conclusion.svg")))
using (var document3 = new SVGDocument(Path.Combine(DataDir, "Lineto.svg")))
{
    // SvgRendererのインスタンスを作成します
    using (var renderer = new SvgRenderer())
    {
        // PdfDeviceのインスタンスを作成します
        using (var device = new PdfDevice(Path.Combine(OutputDir, "result.pdf")))
        {
            // すべてのSVGドキュメントをPDFにマージ
            renderer.Render(device, document1, document2, document3);
        }
    }
}

結論

この記事では、要件に応じてSVGファイルをファイルまたはURLにロードおよび保存する方法について説明しました。さらに、さまざまなSVGファイルをPDF、XPS、PNG、JPGなどにマージする方法を検討しました。ただし、ここで検討した例とコードスニペットは、SVGファイルをPDFドキュメントにマージすることに関連しています。 サンプルプロジェクト製品ドキュメントを確認することで、APIをさらに詳しく調べることができます。ご不明な点がございましたら、いつでも無料サポートフォーラムまでお問い合わせください。ご連絡をお待ちしております!

関連項目