フッターコンテンツにスキップ
移行ガイド

C#でVectSharpからIronPDFに移行する方法

VectSharpからIronPDFへの移行:完全なC#開発者ガイド

VectSharpは、.NETエコシステムにおいて有能なベクターグラフィックライブラリとしての地位を確立しており、特に科学的な視覚化や技術的なイラストレーションで評価されています。 しかし、開発チームがビジネス文書、レポート、請求書、またはHTMLベースのコンテンツを作成する必要がある場合、VectSharpのグラフィック優先のパラダイムは大きな摩擦を生み出します。 このライブラリは、図やプロットを作成する科学者向けに設計されており、ドキュメントを作成する開発者向けではありません。

このガイドでは、VectSharpからIronPdfへの完全な移行経路を、移行を検討しているプロの.NET開発者のために、ステップバイステップの手順、コード比較、実用的な例とともに提供します。

なぜVectSharpから移行するのか

VectSharpは、ダイアグラム、チャート、テクニカルイラストを作成するために設計された科学的視覚化およびベクトルグラフィックライブラリです。 これはドキュメント生成のために設計されたものではなく、たまたまPDFを出力する描画ライブラリです。 開発チームが移行を検討する主な理由は次のとおりです:

科学的フォーカスのみ:VectSharpはデータの視覚化とプロット用に設計されており、請求書、報告書、証明書のようなビジネス文書ではありません。

HTMLサポートなし:VectSharpはHTMLやCSSをPDFに変換することはできません。 すべての要素は、ベクトルグラフィックコマンドを使用して手動で描画する必要があります。

座標ベースのAPI:すべての要素は、正確なX,Y座標で配置されなければなりません。 自動レイアウト、フロー、テキストの折り返しはありません。

CSSスタイリングなし:すべてのスタイリングは、メソッド呼び出しによるプログラム的なものです。 ウェブ開発者は、既存のCSSの知識を活用することはできません。

JavaScriptは使用しないでください:VectSharpは、動的なWebコンテンツ、インタラクティブなチャート、またはJavaScriptベースのビジュアライゼーションをレンダリングすることはできません。

テキストレイアウトなし:自動テキスト折り返し、ページネーション、フローレイアウトは使用できません。 開発者は、テキストの位置と改ページを手動で計算する必要があります。

グラフィックス優先のパラダイム:ライブラリは、レポートや請求書ではなく、ダイアグラム用に設計されています。 文書作成には膨大な手作業が必要です。

核心的な問題: グラフィックス ライブラリ vs ドキュメント ジェネレーター

VectSharpでは、すべての要素に手作業によるベクトル描画が必要です:

// VectSharp: マニュアル vector drawing for every element
Page page = new Page(595, 842);
Graphics graphics = page.Graphics;
graphics.FillRectangle(50, 50, 200, 100, Colour.FromRgb(0, 0, 255));
graphics.FillText(60, 70, "Invoice", new Font(new FontFamily("Arial"), 20), Colours.White);
// ... continue drawing every single element manually
// VectSharp: マニュアル vector drawing for every element
Page page = new Page(595, 842);
Graphics graphics = page.Graphics;
graphics.FillRectangle(50, 50, 200, 100, Colour.FromRgb(0, 0, 255));
graphics.FillText(60, 70, "Invoice", new Font(new FontFamily("Arial"), 20), Colours.White);
// ... continue drawing every single element manually
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDFはユニバーサルドキュメントフォーマットであるHTMLを使用しています:

// IronPDF: Declarative HTML for document creation
var html = "<h1>Invoice</h1><p>Customer: Acme Corp</p>";
var pdf = renderer.RenderHtmlAsPdf(html);
// IronPDF: Declarative HTML for document creation
var html = "<h1>Invoice</h1><p>Customer: Acme Corp</p>";
var pdf = renderer.RenderHtmlAsPdf(html);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPdfとVectSharpの比較:機能比較

アーキテクチャの違いを理解することは、技術的な意思決定者が移行への投資を評価するのに役立ちます:

フィーチャーベクトシャープIronPDF
主な用途ベクターグラフィックスドキュメントの作成
PDF出力はいはい
HTMLのサポートなしはい
ライセンスについてLGPL商用
オープンソースはい一部(商用機能)
最適な対象科学的視覚化一般的なPDF文書
カスタマイズグラフィック限定広範なドキュメント関連
HTMLからPDFへなし完全なChromium
URLからPDFへなしはい
CSSサポートなし完全なCSS3
JavaScript(ジャバスクリプトなしフルES2024
自動レイアウトなしはい
自動改ページなしはい
テキストラッピングマニュアル自動翻訳
PDFをマージするなしはい
PDFを分割するなしはい
パスワード保護なしはい
デジタル署名なしはい
ラーニングカーブ高(座標)低レベル(HTML/CSS)
コードの正確さ非常に高い低レベル

クイックスタートVectSharpからIronPdfへの移行

これらの基本的なステップを踏めば、すぐにでも移行を開始できます。

ステップ 1: NuGet パッケージを置き換える。

すべてのVectSharpパッケージを削除してください:

# Removeベクトシャープpackages
dotnet remove package VectSharp
dotnet remove package VectSharp.PDF
# Removeベクトシャープpackages
dotnet remove package VectSharp
dotnet remove package VectSharp.PDF
SHELL

IronPDFをインストールします:

# Install IronPDF
dotnet add package IronPdf
# Install IronPDF
dotnet add package IronPdf
SHELL

ステップ 2: 名前空間の更新

VectSharpの名前空間をIronPdfの名前空間に置き換えてください:

// Before (VectSharp)
using VectSharp;
using VectSharp.PDF;

// After (IronPDF)
using IronPdf;
// Before (VectSharp)
using VectSharp;
using VectSharp.PDF;

// After (IronPDF)
using IronPdf;
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

ステップ 3: ライセンスの初期化

アプリケーション起動時のライセンス初期化を追加します:

IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
$vbLabelText   $csharpLabel

コード移行の例

HTML を PDF に変換する

VectSharpはHTMLからPDFへの変換をサポートしていません。 この基本的な能力の違いが、多くの移行の決断を促します。

VectSharpのアプローチ:

// NuGet: Install-Package VectSharp.PDF
using VectSharp;
using VectSharp.PDF;
using VectSharp.SVG;
using System.IO;

class Program
{
    static void Main()
    {
        //ベクトシャープdoesn't directly support HTML to PDF
        // It requires manual creation of graphics objects
        Document doc = new Document();
        Page page = new Page(595, 842); // A4 size
        Graphics graphics = page.Graphics;

        graphics.FillText(100, 100, "Hello from VectSharp", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 24));

        doc.Pages.Add(page);
        doc.SaveAsPDF("output.pdf");
    }
}
// NuGet: Install-Package VectSharp.PDF
using VectSharp;
using VectSharp.PDF;
using VectSharp.SVG;
using System.IO;

class Program
{
    static void Main()
    {
        //ベクトシャープdoesn't directly support HTML to PDF
        // It requires manual creation of graphics objects
        Document doc = new Document();
        Page page = new Page(595, 842); // A4 size
        Graphics graphics = page.Graphics;

        graphics.FillText(100, 100, "Hello from VectSharp", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 24));

        doc.Pages.Add(page);
        doc.SaveAsPDF("output.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDFのアプローチ:

// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF</h1><p>This is HTML content.</p>");
        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF</h1><p>This is HTML content.</p>");
        pdf.SaveAs("output.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

VectSharpでは、DocumentPageGraphicsオブジェクトを作成し、正確な座標とフォントオブジェクトを使って手作業でテキストを配置する必要があります。 IronPdfはCSSスタイリングを完全にサポートし、HTMLを直接レンダリングします。

高度なHTMLからPDFへのシナリオについては、HTMLからPDFへの変換ガイドをご覧ください。

複数ページのドキュメントを作成する

複数ページのドキュメントでは、これらの.NET PDFライブラリのアーキテクチャの違いを明らかにします。

VectSharpのアプローチ:

// NuGet: Install-Package VectSharp.PDF
using VectSharp;
using VectSharp.PDF;
using System;

class Program
{
    static void Main()
    {
        Document doc = new Document();

        // Page 1
        Page page1 = new Page(595, 842);
        Graphics g1 = page1.Graphics;
        g1.FillText(50, 50, "Page 1", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 24));
        g1.FillText(50, 100, "First page content", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 14));
        doc.Pages.Add(page1);

        // Page 2
        Page page2 = new Page(595, 842);
        Graphics g2 = page2.Graphics;
        g2.FillText(50, 50, "Page 2", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 24));
        g2.FillText(50, 100, "Second page content", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 14));
        doc.Pages.Add(page2);

        doc.SaveAsPDF("multipage.pdf");
    }
}
// NuGet: Install-Package VectSharp.PDF
using VectSharp;
using VectSharp.PDF;
using System;

class Program
{
    static void Main()
    {
        Document doc = new Document();

        // Page 1
        Page page1 = new Page(595, 842);
        Graphics g1 = page1.Graphics;
        g1.FillText(50, 50, "Page 1", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 24));
        g1.FillText(50, 100, "First page content", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 14));
        doc.Pages.Add(page1);

        // Page 2
        Page page2 = new Page(595, 842);
        Graphics g2 = page2.Graphics;
        g2.FillText(50, 50, "Page 2", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 24));
        g2.FillText(50, 100, "Second page content", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 14));
        doc.Pages.Add(page2);

        doc.SaveAsPDF("multipage.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDFのアプローチ:

// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        string html = @"
            <h1>Page 1</h1>
            <p>First page content</p>
            <div style='page-break-after: always;'></div>
            <h1>Page 2</h1>
            <p>Second page content</p>
        ";

        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("multipage.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        string html = @"
            <h1>Page 1</h1>
            <p>First page content</p>
            <div style='page-break-after: always;'></div>
            <h1>Page 2</h1>
            <p>Second page content</p>
        ";

        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("multipage.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

VectSharpでは、個別のPageオブジェクト、個別のGraphicsコンテキストを作成し、各ページの座標とフォントオブジェクトですべてのテキスト要素を手動で配置する必要があります。 IronPdfはCSSのpage-break-after: alwaysで単一のHTML文字列を使用し、複数ページのドキュメントを自動的に作成します。

図形とテキストを描く

グラフィック機能はVectSharpが得意とするところですが、Web標準がより少ないコードで同等の機能を提供するところも示しています。

VectSharpのアプローチ:

// NuGet: Install-Package VectSharp.PDF
using VectSharp;
using VectSharp.PDF;
using System;

class Program
{
    static void Main()
    {
        Document doc = new Document();
        Page page = new Page(595, 842);
        Graphics graphics = page.Graphics;

        // Draw rectangle
        graphics.FillRectangle(50, 50, 200, 100, Colour.FromRgb(0, 0, 255));

        // Draw circle
        GraphicsPath circle = new GraphicsPath();
        circle.Arc(400, 100, 50, 0, 2 * Math.PI);
        graphics.FillPath(circle, Colour.FromRgb(255, 0, 0));

        // Add text
        graphics.FillText(50, 200, "VectSharp Graphics", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 20));

        doc.Pages.Add(page);
        doc.SaveAsPDF("shapes.pdf");
    }
}
// NuGet: Install-Package VectSharp.PDF
using VectSharp;
using VectSharp.PDF;
using System;

class Program
{
    static void Main()
    {
        Document doc = new Document();
        Page page = new Page(595, 842);
        Graphics graphics = page.Graphics;

        // Draw rectangle
        graphics.FillRectangle(50, 50, 200, 100, Colour.FromRgb(0, 0, 255));

        // Draw circle
        GraphicsPath circle = new GraphicsPath();
        circle.Arc(400, 100, 50, 0, 2 * Math.PI);
        graphics.FillPath(circle, Colour.FromRgb(255, 0, 0));

        // Add text
        graphics.FillText(50, 200, "VectSharp Graphics", 
            new Font(FontFamily.ResolveFontFamily(FontFamily.StandardFontFamilies.Helvetica), 20));

        doc.Pages.Add(page);
        doc.SaveAsPDF("shapes.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDFのアプローチ:

// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        string html = @"
            <div style='width: 200px; height: 100px; background-color: blue; margin: 50px;'></div>
            <div style='width: 100px; height: 100px; background-color: red; 
                        border-radius: 50%; margin-left: 350px; margin-top: -50px;'></div>
            <h2 style='margin-left: 50px;'>IronPDF Graphics</h2>
        ";

        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("shapes.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        string html = @"
            <div style='width: 200px; height: 100px; background-color: blue; margin: 50px;'></div>
            <div style='width: 100px; height: 100px; background-color: red; 
                        border-radius: 50%; margin-left: 350px; margin-top: -50px;'></div>
            <h2 style='margin-left: 50px;'>IronPDF Graphics</h2>
        ";

        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("shapes.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

VectSharpでは、GraphicsPathオブジェクトを作成し、正確な数学的パラメータでArc()を呼び出し、Colour.FromRgb()で色を管理する必要があります。 IronPDFはおなじみのCSSプロパティを使用します:background-colorborder-radius: 50% for circle、標準的な余白です。

ベクトシャープAPIからIronPDFへのマッピングリファレンス

このマッピングは、APIと同等のものを直接示すことで、移行を加速します:

ベクトシャープIronPDFノート
<コード>ドキュメント</コード<コード>ChromePdfRenderer</コードレンダラーの作成
<コード>ページ</コード自動翻訳HTMLから作成されたページ
<コード>グラフィックス</コードHTML/CSS宣言的マークアップ
<コード>graphics.FillRectangle()</コード></コード<div>background-color CSSHTMLボックス
<コード>graphics.StrokeRectangle()</コード<div>上のCSS border国境
<コード>graphics.FillText()</コードHTMLテキスト要素<p><h1><span>
<コード>graphics.StrokePath()</コードSVGまたはCSSボーダーベクターパス
<コード>GraphicsPath</コードSVG <path>要素複雑な形状
<コード>Colour.FromRgb()</コードCSSカラー値rgb(), #hex, named
フォント / フォントファミリCSS <コード>font-family</コード対応ウェブフォント
<コード>doc.SaveAsPDF()</コード<コード>pdf.SaveAs()</コードファイルに保存
手動ページサイジング<コード>RenderingOptions.PaperSize</コードまたはCSS <コード>@ページ</コード

移行戦略

戦略1: 描画コードをHTML/CSSに変換する

座標ベースの描画をHTML要素に置き換える:

// VectSharp
graphics.FillRectangle(100, 50, 300, 80, Colour.FromRgb(0, 102, 204));
graphics.FillText(110, 80, "Header", font, Colours.White);

//IronPDFHTML equivalent
<div style="
    position: absolute;
    left: 100px;
    top: 50px;
    width: 300px;
    height: 80px;
    background: rgb(0, 102, 204);
    color: white;
    padding: 10px;
">Header</div>
// VectSharp
graphics.FillRectangle(100, 50, 300, 80, Colour.FromRgb(0, 102, 204));
graphics.FillText(110, 80, "Header", font, Colours.White);

//IronPDFHTML equivalent
<div style="
    position: absolute;
    left: 100px;
    top: 50px;
    width: 300px;
    height: 80px;
    background: rgb(0, 102, 204);
    color: white;
    padding: 10px;
">Header</div>
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

戦略2: ベクターグラフィックスにはSVGを使用する

複雑な形状の場合は、HTMLにインラインSVGを使用してください:

//ベクトシャープpath
GraphicsPath path = new GraphicsPath();
path.MoveTo(100, 100);
path.LineTo(200, 50);
path.LineTo(300, 100);
path.Close();
graphics.FillPath(path, Colours.Blue);

//IronPDFSVG equivalent
<svg><polygon points="100,100 200,50 300,100" fill="blue"/></svg>
//ベクトシャープpath
GraphicsPath path = new GraphicsPath();
path.MoveTo(100, 100);
path.LineTo(200, 50);
path.LineTo(300, 100);
path.Close();
graphics.FillPath(path, Colours.Blue);

//IronPDFSVG equivalent
<svg><polygon points="100,100 200,50 300,100" fill="blue"/></svg>
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

戦略3: JavaScriptチャートライブラリを使用する

IronPdfは、Chart.js、D3.js、Plotlyのような強力なJavaScriptライブラリを活用することができます:

var html = @"
<script src='https://cdn.plot.ly/plotly-latest.min.js'></script>
<div id='chart'></div>
<script>
    Plotly.newPlot('chart', [{
        x: [1, 2, 3, 4],
        y: [10, 15, 13, 17],
        type: 'scatter'
    }]);
</script>";

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
var pdf = renderer.RenderHtmlAsPdf(html);
var html = @"
<script src='https://cdn.plot.ly/plotly-latest.min.js'></script>
<div id='chart'></div>
<script>
    Plotly.newPlot('chart', [{
        x: [1, 2, 3, 4],
        y: [10, 15, 13, 17],
        type: 'scatter'
    }]);
</script>";

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
var pdf = renderer.RenderHtmlAsPdf(html);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

一般的な移行の問題と解決策

課題1: 座標系の違い

VectSharpは、左上原点からのポイントを手動位置決めで使用します。

解決策: CSSポジショニングを使用する:

.element {
    position: absolute;
    top: 50px;
    left: 100px;
}

課題2:フォントオブジェクト

VectSharpは、FontFontFamilyオブジェクトをプログラムで作成します。

ソリューション: CSS font-familyを使用してください:

<style>
    body { font-family: Arial, sans-serif; font-size: 12pt; }
</style>
<style>
    body { font-family: Arial, sans-serif; font-size: 12pt; }
</style>
HTML

課題3: カラーハンドリング

VectSharpは、Colour.FromRgb()メソッド呼び出しを使用します。

解決策: CSSカラーを使用する:

.header { color: rgb(0, 102, 204); background-color: #f0f0f0; }

課題4: グラフィックパス

VectSharpは、MoveToLineToArcメソッドを持つ複雑なGraphicsPath APIを使用します。

ソリューション: ベクターグラフィックスにはSVGを使用してください:

<svg>
    <path d="M 100 100 L 200 50 L 300 100 Z" fill="blue"/>
</svg>
<svg>
    <path d="M 100 100 L 200 50 L 300 100 Z" fill="blue"/>
</svg>
HTML

VectSharp移行チェックリスト

マイグレーション前のタスク

コードベースを監査し、すべてのVectSharpの使用状況を確認します:

grep -r "using VectSharp" --include="*.cs" .
grep -r "Graphics\|FillRectangle\|FillText" --include="*.cs" .
grep -r "using VectSharp" --include="*.cs" .
grep -r "Graphics\|FillRectangle\|FillText" --include="*.cs" .
SHELL

ドキュメントのページサイズ(new Page(595, 842)パターン)。 Colour.FromRgb()を使用した配色に注意してください。 フォント設定を特定する。 SVG変換のためにGraphicsPathを使用して複雑なベクトルグラフィックスをマッピングします。

コード更新タスク

1.VectSharp NuGetパッケージの削除 2.IronPdf NuGetパッケージをインストールする 3.using文をVectSharpからIronPdfに更新してください。 4.FillRectangle<//code> 呼び出しを background-color<//code> を持つ CSS ボックスに変換します。 5.FillText<//code> 呼び出しを CSS スタイリング付きの HTML テキスト要素に変換する 6.GraphicsPath 操作を SVG <path> 要素に変換する。 7.手動のページ管理をRenderingOptions.PaperSizeに置き換えてください。 8.起動時のライセンス初期化を追加

移行後のテスト

移行後、これらの点を検証してください:

  • VectSharpとIronPDFのビジュアル出力を比較する
  • Colour.FromRgb()値に相当するCSSを使用して、色が一致することを確認してください。
  • 座標ベースの配置から変換された要素の位置決め精度のチェック
  • 複数ページのドキュメントの改ページのテスト
  • ベクターグラフィックスがSVGを通して正しくレンダリングされることを確認する。

IronPDFに移行する主な利点

VectSharpからIronPDFに移行することで、ドキュメント生成にいくつかの利点があります:

HTMLベースのコンテンツ:ウェブ開発者は、既存のHTMLとCSSのスキルを活用することができます。 座標ベースの描画APIを学ぶ必要はありません。

自動レイアウト:テキストの折り返し、ページネーション、フローレイアウトは自動的に行われます。 要素の位置を手動で計算する必要はありません。

最新のCSSサポート:FlexboxとGridレイアウトを含む完全なCSS3。 レスポンシブデザインはPDFに直接翻訳します。

JavaScriptの実行: Chart.js、D3.js、またはPlotlyを使用したインタラクティブなチャートが正しくレンダリングされます。 動的コンテンツは期待通りに機能します。

URL-to-PDF:VectSharpでは不可能な機能です。

PDF操作:マージ、分割、透かしの追加、パスワード保護、電子署名は組み込み機能です。

Lower Code Verbosity: HTML/CSSは宣言的で読みやすいものです。 同じ文書であれば、VectSharpの命令型描画アプローチよりも大幅に少ないコードで済みます。

アクティブ開発:2026年まで.NET 10とC# 14の採用が増加する中、IronPDFの定期的なアップデートは現在と将来の.NETバージョンとの互換性を保証します。

結論

VectSharpは、正確な図や技術的なイラストを作成するための科学的な視覚化ライブラリとして優れています。 しかし、ベクターグラフィックスだけでなく、ビジネス文書、レポート、請求書、HTMLベースのコンテンツなど、要件が拡大している開発チームにとっては、VectSharpのグラフィックス優先のパラダイムは、不必要な複雑さを生み出します。

IronPdfはウェブ標準のアプローチでドキュメント生成を提供します。 HTMLとCSSが座標ベースの描画に取って代わる。 自動レイアウトが手動による位置決めを置き換えます。 JavaScriptのチャートは、プログラムによるパスの構築に取って代わります。 NuGetパッケージを置き換え、描画コードをHTML/CSSまたはSVGに変換し、PDF生成のために最新のWeb技術のフルパワーを活用する。

IronPDFの無料トライアルで今すぐ移行を開始し、HTMLベースのドキュメント生成のシンプルさを体験してください。

包括的な実装ガイダンスについては、IronPDFドキュメントチュートリアルをご覧ください。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。