using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
This is an HTML string converted to PDF using IronPDF.
";
// Convert HTML string to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
// Save the rendered PDF document
pdfDocument.SaveAs("HtmlStringToPdf.pdf");
```
#### 7.1.2 HTMLファイルをPDFへ
IronPDFが指定されたURLからウェブページを読み込み、レイアウトとコンテンツをできるだけ維持した形でPDF文書に変換します。 HTMLファイルのパスを提供すると、IronPDFが変換を処理します。
```csharp
using IronPdf;
// Initialize the ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// License key setup
IronPdf.License.LicenseKey = "Your-License-Key";
// Convert HTML file to PDF
var pdfDocument = renderer.RenderHtmlFileAsPdf("invoice.html");
// Save the PDF document
pdfDocument.SaveAs("Invoice.pdf");
```
#### 7.1.3 PDFへのURL
この機能は、URLを使用してウェブページ全体をPDFに変換します。ウェブページの現在の状態をキャプチャする際に便利で、スタイリング、画像、およびその他のリソースを含みます。 C#での典型的な実装は以下のようになることがあります:
```csharp
using IronPdf;
// Initialize the ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// License key setup
IronPdf.License.LicenseKey = "Your-License-Key";
// Set the Paper Size
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2;
// Convert webpage to PDF
var pdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/");
// Save the PDF document
pdfDocument.SaveAs("UrlToPdf.pdf");
```
### 7.2 JSReport C# HTMLからPDFへの変換
JSReportでHTMLをPDFに変換するプロセスには、通常、JSReportサーバーの設定またはオンラインAPIの使用を含むいくつかのステップがあります。 C#での一般的な実装は次のようになります:
```csharp
using JsReport.AspNetCore;
using JsReport.Types;
using System.Threading.Tasks;
public async Task GeneratePdf()
{
var report = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.AsUtility()
.Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Content = "
Note: IronPDF's Chromium engine ensures that modern web applications convert to PDF with browser-accurate fidelity, preserving all CSS frameworks and responsive designs.
";
var pdf = renderer.RenderHtmlAsPdf(bootstrapComparison);
pdf.SaveAs("feature-comparison.pdf");
```
**出力:** Bootstrap のテーブル スタイル、バッジ、レスポンシブ レイアウト、アラート コンポーネントを備えたプロフェッショナルな機能比較表がすべて PDF で正確にレンダリングされます。
### JSReport .NET: テンプレートベースで限られたBootstrapサポート
JSReportは、選択したレシピに応じて異なるレンダリングエンジンを使用したテンプレートベースのアプローチを採用しています:
- **Chrome PDF レシピ:** Puppeteer/Chrome ヘッドレス、優れた Bootstrap サポートを使用
- **Phantom JS レシピ:**限定的な最新 CSS サポートを備えたレガシー WebKit エンジン
- **wkhtmltopdf レシピ:** Qt WebKit エンジン (古い、フレックスボックス/グリッドなし)
-**テンプレートの複雑さ:** JSReport テンプレート構文の学習が必要
-**サーバー依存性:** JSReport サーバーのインストールと管理が必要です
**Bootstrap を使用した JSReport に関する重要な考慮事項:**
-**レシピの選択:** Bootstrapのサポートはレシピの選択によって大きく異なります
- **Chrome PDFレシピ:** Bootstrapに最適なオプションですが、複雑さと依存関係が追加されます
-**テンプレートの学習曲線:** Handlebars/JSRender テンプレート構文を学習する必要があります
-**サーバー管理:** JSReport サーバーインスタンスの維持管理が必要
-**ワークフローの複雑さ:**複数ステップのテンプレート → データ → レンダリング プロセス
**開発への影響:** JSReport の Chrome PDF レシピは Bootstrap を適切に処理できますが、全体的な複雑さは高くなります。
4. レシピの構成の複雑さ vsわかりやすいAPI
2. サーバーインフラ要件 vs プロセス内ライブラリ
3. テンプレート構文の学習曲線 vs 標準HTML
4. レシピ設定の複雑さ vs 単純なAPI
Bootstrapサポートを備えたシンプルなHTMLからPDFへの変換を必要とするアプリケーションの場合、IronPDFの直接的なアプローチは、統合の簡素化と構成要素の削減を提供します。
Bootstrapフレームワークのベストプラクティスについては、[Bootstrap & Flexbox CSSガイド](/troubleshooting/bootstrap-flex-css/)を参照してください。
## 8. 柔軟性と高度な機能
### 8.1 IronPDFの高度な機能とカスタマイズ
IronPDFは、その高度な機能と高いカスタマイズ性で際立っており、さまざまなPDF操作ニーズに対応しています。 主な高度な機能には次が含まれます:
#### PDF/A準拠
IronPDFはPDF/A形式をサポートしており、長期保存と業界標準への準拠に不可欠です。 この機能は、より大きなドキュメントを分割して配布しやすくしたり、異なる文書の異なるセクションを組み合わせる場面で特に便利です。
```csharp
using IronPdf;
// Create a PdfDocument object or open any PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
```
#### PDFの編集、結合、および分割
IronPDFは、既存のPDFの編集、複数のPDFを1つに結合、PDFを別々のドキュメントに分割することを許可します。 この機能は、大規模なドキュメントを分割して配布しやすくしたり、さまざまな文書の異なるセクションを組み合わせたりする必要があるシナリオで特に役立ちます。
#### セキュリティ機能
IronPDFには、パスワード保護、暗号化、ユーザー権限の設定機能など、堅牢なセキュリティ機能が含まれています。 IronPDFはPDFファイルの暗号化をサポートしており、追加のセキュリティレイヤーを追加し、コンテンツが変更されたりコピーされたりするのを防ぎます。
```csharp
using IronPdf;
// Open a PDF File
var pdfDoc = PdfDocument.FromFile("invoice.pdf");
// Make a PDF read-only and disallow copy & paste and printing
pdfDoc.SecuritySettings.RemovePasswordsAndEncryption();
pdfDoc.SecuritySettings.AllowUserAnnotations = false;
pdfDoc.SecuritySettings.AllowUserCopyPasteContent = false;
pdfDoc.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
pdfDoc.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdfDoc.SecuritySettings.AllowUserFormData = false;
// Change or set the document encryption password
pdfDoc.SecuritySettings.OwnerPassword = "passForOpen"; // password to edit the pdf
pdfDoc.SecuritySettings.UserPassword = "onlyForShare"; // password to open the pdf
// Save the protected PDF
pdfDoc.SaveAs("InvoiceProtected.pdf");
```
#### ヘッダーとフッターの制御
開発者はPDF文書にカスタムヘッダーとフッターを簡単に追加でき、プロフェッショナルな報告書、請求書、その他のビジネス文書には欠かせません。 これにはページ番号、日付、およびカスタムテキストの追加機能が含まれます。
#### PDFから画像への変換
IronPDFはPDFページを画像に変換することができます。 この機能は、WebアプリケーションでPDFコンテンツを画像として表示したり、サムネイルを生成したりする必要があるシナリオで特に役立ちます。
```csharp
using IronPdf;
using IronSoftware.Drawing;
// Load the PDF document
var pdf = PdfDocument.FromFile("Example.pdf");
// Extract all pages to a folder as PNG image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");
// Extract specific dimensions or page ranges
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);
// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
```
### 8.2 JSReport .NETの高度な機能と拡張性
JSReport .NETは、その高度な機能と拡張性で知られており、レポート生成において多用途なツールです。 その主な機能には次が含まれます:
#### 動的レポート生成
HandlebarsやEJSなど、さまざまなテンプレートエンジンをサポートしており、複雑で柔軟なレポートデザインを容易にします。 このマルチエンジン互換性は、レポート作成におけるさまざまな要件や複雑さに応じた幅広いデザイン可能性を提供します。
```csharp
var report = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport"))
.KillRunningJsReportProcesses()
.Configure(cfg => cfg.AllowLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory())
.AsUtility()
.Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Content = "{{{message}}}",
Engine = Engine.Handlebars,
Recipe = Recipe.ChromePdf
},
Data = new
{
message = "PDF Generation with JSReport .NET"
}
});
```
#### テンプレートエンジン
JSReport .NETは、日次や月次の要約のような定期的なレポートニーズに最適なレポート生成のスケジューリングと自動化機能を提供します。 この機能により、タイムリーなレポートの配信が保証され、イベントトリガーされたレポートに対してビジネスワークフローと統合できます。
#### カスタムスクリプトによる拡張性
JSReport C#は、カスタムスクリプトによる機能の拡張を可能にし、カスタムデータ処理や専門的なフォーマットなどの機能を強化します。 この拡張性は、特定のビジネスロジックやデータ操作要件に合わせたレポートを作成するために重要です。
## 9. サポート
### 9.1 IronPDFのドキュメントの質と可用性
IronPDFのドキュメントは包括的で使いやすく、初心者と経験豊富な開発者の両方に対応しています。 詳細なガイド、APIリファレンス、そして豊富なコード例が含まれており、開発者がC#やNodeなどの複数の言語でライブラリの機能を理解し実装するのを容易にします。
ドキュメントは適切に構成されており、定期的に更新され、最新の機能とベストプラクティスを反映しています。 さらに、IronPDFのウェブサイトは、PDF操作に初めて取り組む人々に特に役立つクイックスタートガイドやFAQを提供しています。
IronPDFには、そのコードをダウンロードせずにオンラインでIronPDFの機能を試すことができるオンラインプレイグラウンドもあります。 以下の[リンク](/demos/)を使用して探索してください。
#### 9.1.1 サポートオプション
IronPDFは、問い合わせや技術的な問題を処理するための専任サポートチームを含む、いくつかのサポートオプションを提供しています。 彼らはメールサポートを提供し、開発者フォーラムに積極的に参加して、解決策やアドバイスを提供しています。また、ウェブサイトのライブサポートオプションを使用して、ライブサポートエージェントに連絡することもできます。
### 9.2 JSReport .NET ドキュメントの品質と可用性
JSReport .NETは、その広範でよく維持されたドキュメントに誇りを持っています。 ドキュメントは、基本設定から高度な使用シナリオまで、コードスニペットや実装例を含む幅広いトピックをカバーしています。 論理的に整理されているため、ナビゲートしやすく、関連情報を見つけるのが簡単です。 オンラインリソースには、開発者がツールの機能に関する詳細情報にアクセスできるように、包括的なAPIリファレンスも含まれています。
#### 9.2.1 サポートオプション
JSReport .NETは、さまざまなサポートオプションを提供しています。 彼らは専任のサポートチームがあり、メールで連絡でき、GitHubに活発なプレゼンスを維持して問題報告や機能リクエストのためのプラットフォームを提供しています。
## 10. ライセンスモデル
### 10.1 IronPDFのライセンス

IronPDFは、異なる使用レベルと予算要件に対応する[3つの異なる価格オプション](licensing)を提供しています:
**Lite エディション:**価格は $999 で、これはクラウド デプロイメントに対する 1 回限りの料金です。 これはPDF処理を始めたばかりの小規模プロジェクトやチーム向けに設計されています。
**プロフェッショナル エディション:** $1,499 (これも 1 回限りのクラウド デプロイメント料金) で、このエディションは、より高度な機能と能力を必要とするプロの開発者に適しています。
**無制限エディション:**最も包括的なパッケージは、$2,999 という価格で、クラウド展開の 1 回限りの料金です。 これは大規模な企業利用に最適で、広範な機能を提供し、使用に制限がありません。
### 10.2 JSReport .NETライセンス

JSReport .NETは、[柔軟なライセンスオプション](https://jsreport.net/buy)を提供しており、サブスクリプションベースと永続ライセンスの両方が含まれています:
**無料ライセンス:**最大 5 つのレポート テンプレートに制限されたフル機能のインスタンスを提供します。 ライセンスキーは不要で、小規模プロジェクトや評価目的に適しています。
**エンタープライズ サブスクリプション:**年間 395 ドルのこのプランでは、制限のないフル機能の単一の JSReport インスタンスが提供され、アップデートも含まれます。 これは、堅牢なレポートソリューションが必要な個々の企業に最適です。
**エンタープライズ スケール サブスクリプション:**年間 1,295 ドルのこのプランは大規模な展開に最適で、無制限の数のインスタンスに対して有効な単一のライセンス キーを提供します。 このプランにはアップデートが含まれ、ロイヤリティフリーであるため、複数のインスタンスを運用する組織や、他の製品の一部として複数の顧客に展開する場合に適しています。

結論として、IronPDFとJSReport .NETはそれぞれの分野で価値がありますが、IronPDFは包括的なPDF操作機能によりわずかに優れています。 PDF/A準拠、高度な編集、セキュリティ機能などの分野で優れており、.NET環境における詳細なPDF処理により柔軟なツールです。 JSReport .NETは、動的なレポート生成やテンプレート化に強みがあり、レポート中心のタスクに非常に効果的です。 ただし、詳細で多様なPDF処理と操作が必要なほとんどのシナリオでは、IronPDFがより有利な選択肢として浮上します。
IronPDFは無料の開発者ライセンスと[無料トライアル](trial-license)を提供しています。 Iron Softwareは、Iron Suiteとして知られる包括的なパッケージを提供しています。[IronBarcode](https://ironsoftware.com/csharp/barcode/)、[IronXL](https://ironsoftware.com/csharp/excel/)、[IronQR](https://ironsoftware.com/csharp/qr/)、[IronOCR](https://ironsoftware.com/csharp/ocr/)、[IronPdf](/)、[IronWebScraper](https://ironsoftware.com/csharp/webscraper/)を含むこのスイートは、2つのソフトウェアの価格で提供され、幅広い機能を求める開発者にとって大きな価値をもたらします。
最終的に、この2つのどちらを選ぶかは、プロジェクトや開発者の特定のニーズと環境に依存します。