在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
PDF,或可攜式文檔格式,是由 Adobe 開發的,用於輕鬆文件交換的文件格式。 它確保文件在任何設備上看起來都相同,保留格式、字體和圖像。 PDFs 是安全的、互動的且緊湊的,使它們非常適合在保持內容完整的情況下分享。
C# PDF 庫對於處理 PDF 的開發人員至關重要。 這些工具有助於創建、修改和提取 PDF 的內容。 它們支援表單處理、數位簽名等功能,並可在不同平台上運行,提高 PDF 處理的效率。 使用 C# PDF 函式庫,開發人員可以在其應用程式中添加 PDF 功能,使其更容易以程式方式建立、編輯和管理 PDF 文件。
在這篇文章中,我們將比較兩種處理 PDF 的不同方法:IronPDF C# 函式庫和該Craftmypdf API. 我們將查看其功能和特性,提供程式碼範例,並討論其授權。
CraftMyPDF是一個多功能的API,旨在創建PDF文件。 它提供基於網頁的拖放編輯器,允許您直接在瀏覽器中設計 PDF 模板。 此功能尤其適用於從可重用的模板和 JSON 數據創建像素精確的 PDF。 編輯器包含豐富的佈局元件集,支持強大的表達式、高級格式和數據繫結,使其成為滿足各種PDF生成需求的強大工具。
拖放編輯器:CraftMyPDF的直觀拖放編輯器簡化了PDF模板的創建。 您可以在不需要任何程式編碼知識的情況下設計模板,讓所有技能水平的使用者都能輕鬆使用。 此編輯器允許您添加各種元素,如文字、圖片和形狀,並自訂它們的佈局和外觀。
模板重用性: 該平台支持可重用的模板,這可以節省大量時間。 一旦模板設計完成,它可以反覆使用不同的數據集,這使得生成像發票、報告和證書等文件非常理想。 您可以使用 PDF 模板編輯器進行編輯。
JSON 數據整合: CraftMyPDF 允許與 JSON 數據無縫整合。 這意味著您可以將動態數據導入您的範本以生成自訂的 PDF 文件。 此功能對於需要生成具有可變內容的應用程式特別有用,例如個性化發票或詳細報告。
進階格式化和表達式: API 支援進階格式選項及表達式,讓您能夠創建複雜的文件。 您可以根據您的規格格式化日期、數字和貨幣,並使用表達式根據您的數據動態生成內容。
API 整合: CraftMyPDF 可以使用其 REST API 與各種平台進行整合。 它支持與無代碼平台如 Zapier 的集成,並且Make.com以及自訂應用程式。 這種靈活性使開發人員能夠將 PDF 生成功能納入他們的工作流程,並自動化文件創建過程。
可填寫的元件: 平台還支持可填寫的 PDF 元件,如文本欄位、複選框和下拉選單。 此功能對於創建用戶可以電子方式填寫的互動表單至關重要。
IronPDF PDF 庫為 .NET 開發者提供是一個強大且多功能的 PDF 庫,專為 .NET 開發人員設計,提供豐富的功能來生成、編輯和管理 PDF 文檔。 IronPDF 使用C#編寫,通過允許開發人員從HTML、CSS、JavaScript和圖像格式生成像素完美的PDF文檔,簡化了處理PDF的過程。 它與 .NET 的整合使其成為任何需要 PDF 功能的應用程式的強大工具,從簡單的文件生成到複雜的文件操作。
HTML 到 PDF 转换 IronPDF 擅长于將 HTML、CSS 和 JavaScript 直接轉換為 PDF 文件. 這包括支持 HTML5 和 CSS3,確保您的網頁內容在生成的 PDF 中如預期顯示。 轉換過程保持像素完美的準確性,使其非常適合用於網頁到印刷的應用。
URL 轉 PDF 你可以從任何 URL 生成 PDF,允許輕鬆將網頁儲存為 PDF 文件。 此功能對於存儲網頁內容或從在線數據生成報告非常有用。
圖片轉換為 PDF IronPDF 支援將各種影像格式,包括 JPG、PNG、GIF、BMP 和 SVG,轉換為 PDF 文件。 此功能對於製作相簿、圖像庫或將視覺內容整合到您的PDF中非常方便。
表單填寫和數據提取 該庫允許創建和以程式方式填寫 PDF 表單. 此外,您可以從現有表單中提取數據,實現無縫數據處理和與其他系統的整合。
數位簽章和安全性 IronPDF 提供強大的安全功能,包括添加的能力。數位簽章,設定密碼,並定義用戶權限。 這確保您的 PDF 文件符合行業標準並且是安全的。
PDF 編輯 您可以透過添加、複製或刪除頁面來編輯現有的 PDF 文件。 您可以通過匯入現有的 PDF 檔案來完成。 IronPDF還允許合併和拆分PDF,使其成為文件管理的綜合工具。
註解和附件 IronPDF 支援新增註解例如便利貼,並在 PDF 文件中嵌入附件。 此功能對於協作文件審查和添加補充信息非常有用。
標頭、頁尾與浮水印 該庫允許將自訂的標頭、頁尾和浮水印添加到您的 PDF 文件中。 這些元素可以從HTML生成,提供設計和內容管理的靈活性。
跨平台相容性 IronPDF 能在多個平台上無縫運行,包括 Windows、macOS、Linux、Docker、Azure 和 AWS。 它支持 .NET Core、.NET Standard 和 .NET Framework,確保在各種環境中具有廣泛的相容性和易於部署。
性能優化 IronPDF 具有完整的多執行緒和異步支持,將性能優化用於批量處理和大容量 PDF 生成任務。 這確保了資源的有效利用和更快速的文件處理。
全面的文件和支援 IronPDF 提供詳盡的文件、教程和範例,讓開發人員輕鬆上手。 該庫還提供24/5技術支援,幫助使用者及時解決問題。
無外部依賴 IronPDF 作為單一 DLL 運行,無需額外的軟件或安裝。 這簡化了部署並減少了與其他軟體元件的潛在衝突。
IronPDF 是專為提升生產力並簡化 .NET 應用程式中的 PDF 管理而設計的。 其豐富的功能集,結合易用性和全面的支持,使其成為開發人員不可或缺的工具。
在 Visual Studio 中創建 C# 控制台應用程式涉及多個步驟。 以下是一份詳細指南,幫助您設置和啟動您的項目。
首先,確保您的電腦上已安裝 Visual Studio。 通過在「開始」選單中搜尋 Visual Studio 或點擊其桌面圖示來開啟 Visual Studio。
打開 Visual Studio 後,按照以下步驟創建新專案:
在開始頁面上點擊「建立新專案」。
從搜索結果或列表中,選擇 「Console App」(.NET Core)"或"控制台應用程序(.NET框架),取決於您的偏好或專案需求。
選擇控制台應用程式範本後,您將需要配置新的專案:
專案名稱: 輸入您的專案名稱。 這將是儲存您專案檔案的資料夾名稱。
位置: 選擇要儲存專案的資料夾。
方案名稱:這通常與您的專案名稱相同,但如果您計劃在一個解決方案中擁有多個專案,您可以更改它。
要開始使用IronPDF,您有三種主要的安裝方法:使用NuGet套件管理器、NuGet套件管理器控制台,以及從NuGet網站下載。
首先,讓我們討論一下 NuGet 套件管理器。 如果您使用 Visual Studio,此方法既簡單又友好。 開啟您的專案,並在方案總管中右鍵單擊「參考」或「相依性」節點。 從上下文選單中選擇「管理 NuGet 套件」。
在 NuGet 套件管理員中,確保選擇「瀏覽」選項卡,然後在搜尋框中輸入「IronPDF」。 找到 IronPDF 套件後,點擊「安裝」。此操作會將 IronPDF 庫新增到您的項目中並進行配置以供使用。
接下來,NuGet 套件管理器主控台提供了另一種安裝 IronPDF 的便捷方式。 若要訪問此功能,請前往 Visual Studio 的「工具」選單,選擇「NuGet 套件管理員」,然後選擇「套件管理員主控台」。在主控台視窗中輸入以下指令:
Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
然後按下 Enter。 此指令將直接下載並安裝 IronPDF 套件到您的專案中。 這個方法對於習慣在 Visual Studio 環境中使用命令列工具的人來說是非常有效的。
最後,您可以直接從下載 IronPDF 套件NuGet網站. 如果您需要手動管理套件版本,或在對直接套件管理有限制的環境中工作,這個方法特別有用。 請前往 NuGet 網站並搜尋 "IronPDF"。下載該套件檔案。(通常是 .nupkg 文件).
下載後,在 Visual Studio 中打開您的專案,右鍵點擊「References」或「Dependencies」,然後選擇「管理 NuGet 套件」。點擊「設定」圖示,然後選擇「新增」來指定下載套件的路徑。 新增套件來源後,返回「瀏覽」標籤,選擇您的新來源,並從那裡安裝IronPDF。
要在您的 C# 程式中使用 CraftMyPDF,您首先需要創建一個帳戶,選擇 API 的免費方案,然後將其整合到您的應用中。 以下是您可以開始的方式:
註冊 請訪問CraftMyPDF網站並註冊免費帳戶。 輸入所需資訊以創建您的帳戶。
選擇免費計劃 一旦創建了賬戶,請前往定價部分並選擇免費計劃。 此方案通常允許您使用具有有限功能和配額的 API,非常適合開發和測試目的。
確保您有 System.Net.Http、RestShart 和 Newtonsoft JSON 命名空間可用,因為這對於向 CraftMyPDF API 發送 HTTP 請求是必不可少的。
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using RestSharp;
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using RestSharp;
IRON VB CONVERTER ERROR developers@ironsoftware.com
然後,我們將調用 CraftMyPDF API。
var client = new RestClient("https://api.craftmypdf.com/v1/create");
var request = new RestRequest("https://api.craftmypdf.com/v1/create",Method.Post);
string apiKey = "API Key"; // Replace with your actual API key
string templateId = "Template ID"; // Replace with your actual template ID
request.AddHeader("X-API-KEY", apiKey);
request.AddHeader("Content-Type", "application/json");
var client = new RestClient("https://api.craftmypdf.com/v1/create");
var request = new RestRequest("https://api.craftmypdf.com/v1/create",Method.Post);
string apiKey = "API Key"; // Replace with your actual API key
string templateId = "Template ID"; // Replace with your actual template ID
request.AddHeader("X-API-KEY", apiKey);
request.AddHeader("Content-Type", "application/json");
IRON VB CONVERTER ERROR developers@ironsoftware.com
以程式方式創建 PDF 允許您自動生成報告、發票和證書等文件。 IronPDF 提供多種方法在 C# 中創建 PDF,包括將 HTML 字串、URL 和 HTML 檔案轉換為 PDF 文件。 我們將在後面的部分更詳細地討論這些方法。
將 HTML 轉換為 PDF 是最常見的使用案例之一。 它允許您使用 HTML 和 CSS 設計文檔,然後將其轉換為 PDF。 此方法具有高度的靈活性,因為它支持現代網頁標準,並確保生成的 PDF 檔完全符合設計。 以下是一個使用 IronPDF 將 HTML 字串轉換為 PDF 文件的基本範例:
using IronPdf;
public class PDFCreator
{
public void CreatePdfFromHtml()
var renderer = new ChromePdfRenderer();
// Define your HTML string
string htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a sample PDF document created from an HTML string.</p>";
// Render the HTML as a PDF document
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
// Save the PDF document
pdfDocument.SaveAs("html_output.pdf");
}
}
using IronPdf;
public class PDFCreator
{
public void CreatePdfFromHtml()
var renderer = new ChromePdfRenderer();
// Define your HTML string
string htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a sample PDF document created from an HTML string.</p>";
// Render the HTML as a PDF document
var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
// Save the PDF document
pdfDocument.SaveAs("html_output.pdf");
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
在此範例中,ChromePdfRenderer 會將提供的 HTML 字串轉換為 PDF。 渲染的 PDF 然後被保存到文件系統。
IronPDF 的另一個強大功能是能夠直接從網址將網頁轉換為 PDF 文件。 這對於存檔網頁或從動態網頁內容生成PDF特別有用。 以下是如何將 URL 轉換為 PDF 文件的示例:
using IronPdf;
public class PDFCreator
{
public void CreatePdfFromUrl(string url)
{
// Initialize the ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Render the URL as a PDF document
var pdfDocument = renderer.RenderUrlAsPdf(url);
// Save the PDF document
pdfDocument.SaveAs("url_output.pdf");
}
}
using IronPdf;
public class PDFCreator
{
public void CreatePdfFromUrl(string url)
{
// Initialize the ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Render the URL as a PDF document
var pdfDocument = renderer.RenderUrlAsPdf(url);
// Save the PDF document
pdfDocument.SaveAs("url_output.pdf");
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
此方法將 URL 作為輸入,將網頁渲染為 PDF,並保存生成的文檔。 它處理所有網頁內容,包括 HTML、CSS、JavaScript 和圖像,確保 PDF 準確反映原始網頁。
將 HTML 文件轉換為 PDF 與將 HTML 字串或 URL 轉換為 PDF 類似。 此方法允許您使用本地 HTML 文件,方便從存儲在文件系統中的既有網頁或模板生成 PDF。 以下是將 HTML 文件轉換為 PDF 的方法:
using IronPdf;
public class PDFCreator
{
public void CreatePdfFromHtmlFile(string filePath)
{
// Initialize the ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Render the HTML file as a PDF document
var pdfDocument = renderer.RenderHtmlFileAsPdf(filePath);
// Save the PDF document
pdfDocument.SaveAs("html_file_output.pdf");
}
}
using IronPdf;
public class PDFCreator
{
public void CreatePdfFromHtmlFile(string filePath)
{
// Initialize the ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Render the HTML file as a PDF document
var pdfDocument = renderer.RenderHtmlFileAsPdf(filePath);
// Save the PDF document
pdfDocument.SaveAs("html_file_output.pdf");
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
在此範例中,RenderHtmlFileAsPdf 方法用於將由檔案路徑指定的 HTML 檔案內容轉換為 PDF 文件。 然後將生成的 PDF 儲存。
通過利用這些方法,您可以使用 IronPDF 從各種 HTML 內容來源創建 PDF,為您的 C# 應用程序提供靈活且強大的文件生成解決方案。 這些方法確保您能輕鬆整合 PDF 創建功能,不論是處理動態網頁內容、本地 HTML 文件,還是直接定義的 HTML 字串。
CraftMyPDF 提供靈活的 API,以從模板生成 PDF。 要使用此 API 創建 PDF,您必須首先在 CraftMyPDF 儀表板中創建模板。 一旦您的模板準備好,您可以將必要的數據發送到 API 請求以生成 PDF。 以下是實現此目標的步驟。
登入 CraftMyPDF 儀表板 登入您的 CraftMyPDF 帳戶並前往儀表板。
建立新範本 點擊「建立範本」按鈕。 使用拖放編輯器設計您的PDF範本。 您可以根據需要包含文字、圖片、表格和其他元素。
儲存範本 當您對設計感到滿意時,請儲存範本。 您將獲得一個模板 ID,您需要使用此模板生成 PDF。
創建模板後,您可以使用以下C#代碼發送請求到CraftMyPDF API來生成PDF。
using System;
using System.Net;
using System.Threading.Tasks;
using RestSharp;
class Program
{
static async Task Main(string[] args)
{
var client = new RestClient("https://api.craftmypdf.com/v1/create");
var request = new RestRequest(Method.Post);
string apiKey = "API-Key"; // Replace with your actual API key
string templateId = "Template-ID"; // Replace with your actual template ID
request.AddHeader("X-API-KEY", apiKey);
request.AddHeader("Content-Type", "application/json");
var body = new
{
data = new
{
invoice_number = "INV48321",
date = "2024-05-27",
due_date = "2024-06-27",
currency = "EUR",
discount = 10,
tax = 5,
company_name = "Tech Innovations Ltd",
email = "contact@techinnovations.com",
client = "Future Solutions GmbH",
client_address = "1234 Innovation Drive",
client_address2 = "Berlin",
client_address3 = "10115",
items = new[]
{
new { description = "Cloud Hosting Services", quantity = 12, unit_price = 75, total = 900 },
new { description = "Custom Web Application", quantity = 3, unit_price = 150, total = 450 },
new { description = "Technical Support", quantity = 15, unit_price = 30, total = 450 },
new { description = "Digital Marketing Campaign", quantity = 2, unit_price = 500, total = 1000 },
new { description = "SEO Optimization", quantity = 5, unit_price = 120, total = 600 }
},
gross_total = 3400
},
load_data_from = (string)null,
template_id = templateId,
version = 8,
export_type = "json",
expiration = 60,
output_file = "output.pdf",
is_cmyk = false,
image_resample_res = 600,
direct_download = 0,
cloud_storage = 1
};
request.AddJsonBody(body);
RestResponse response = await client.ExecuteAsync(request);
Console.WriteLine(response.Content);
if (response.IsSuccessful)
{
var content = response.Content;
dynamic result = Newtonsoft.Json.JsonConvert.DeserializeObject(content);
string fileUrl = result.file;
string localPath = "f:\\downloaded_output.pdf";
using (WebClient webClient = new WebClient())
{
webClient.DownloadFile(fileUrl, localPath);
}
Console.WriteLine($"PDF downloaded successfully to {localPath}");
}
else
{
Console.WriteLine($"Error: {response.Content}");
}
}
}
using System;
using System.Net;
using System.Threading.Tasks;
using RestSharp;
class Program
{
static async Task Main(string[] args)
{
var client = new RestClient("https://api.craftmypdf.com/v1/create");
var request = new RestRequest(Method.Post);
string apiKey = "API-Key"; // Replace with your actual API key
string templateId = "Template-ID"; // Replace with your actual template ID
request.AddHeader("X-API-KEY", apiKey);
request.AddHeader("Content-Type", "application/json");
var body = new
{
data = new
{
invoice_number = "INV48321",
date = "2024-05-27",
due_date = "2024-06-27",
currency = "EUR",
discount = 10,
tax = 5,
company_name = "Tech Innovations Ltd",
email = "contact@techinnovations.com",
client = "Future Solutions GmbH",
client_address = "1234 Innovation Drive",
client_address2 = "Berlin",
client_address3 = "10115",
items = new[]
{
new { description = "Cloud Hosting Services", quantity = 12, unit_price = 75, total = 900 },
new { description = "Custom Web Application", quantity = 3, unit_price = 150, total = 450 },
new { description = "Technical Support", quantity = 15, unit_price = 30, total = 450 },
new { description = "Digital Marketing Campaign", quantity = 2, unit_price = 500, total = 1000 },
new { description = "SEO Optimization", quantity = 5, unit_price = 120, total = 600 }
},
gross_total = 3400
},
load_data_from = (string)null,
template_id = templateId,
version = 8,
export_type = "json",
expiration = 60,
output_file = "output.pdf",
is_cmyk = false,
image_resample_res = 600,
direct_download = 0,
cloud_storage = 1
};
request.AddJsonBody(body);
RestResponse response = await client.ExecuteAsync(request);
Console.WriteLine(response.Content);
if (response.IsSuccessful)
{
var content = response.Content;
dynamic result = Newtonsoft.Json.JsonConvert.DeserializeObject(content);
string fileUrl = result.file;
string localPath = "f:\\downloaded_output.pdf";
using (WebClient webClient = new WebClient())
{
webClient.DownloadFile(fileUrl, localPath);
}
Console.WriteLine($"PDF downloaded successfully to {localPath}");
}
else
{
Console.WriteLine($"Error: {response.Content}");
}
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
這是由 PDF 生成 API CraftMyPdf 生成的 PDF 文件:
設置 RestClient 和 RestRequest 使用 CraftMyPDF API URL 實例化 RestClient,並創建用於生成 PDF 的 POST 方法的 RestRequest。
新增標頭 API 金鑰被添加到請求標頭以進行身份驗證。 內容類型設置為 application/json。
準備請求正文 請求正文以 JSON 物件的形式建立。 它包括用於填充模板字段的數據、模板 ID 以及各種選項,如匯出類型和到期時間。
發送請求 該請求使用 ExecuteAsync 異步發送,並根據請求正文生成 PDF 文件。
IronPDF 提供多種授權選項,以滿足不同用戶的需求。 主要的授權版本包括 Lite、Professional 和 Enterprise 版本。 Lite License 定價 749 美元,適合單個開發人員從事一個項目。 專業版授權的價格為 $1,499,可支援多個專案和開發人員,而企業版授權專為較大型的團隊和更廣泛的部署而設計,定價為 $2,999。每個授權為一次性費用,並包括一年的支援和更新。 此外,還有一種 OEM 再分發許可證,允許將 IronPDF 作為商業產品的一部分進行分發。 IronPDF 也提供一個免費試用供評估用途.
CraftMyPDF 採用基於訂閱的授權模式運行。 它提供多種方案,包括適合小規模和開發用途的免費層級。 免費方案允許有限使用 API,非常適合測試和小型專案。 對於更高的使用量,有付費方案提供更高的 API 呼叫限制和附加功能。 這些付費方案旨在隨著業務需求而擴展,提供靈活性和強大的支持。 用戶需要通過CraftMyPDF網站訂閱這些計劃,並可以通過用戶儀表板管理他們的訂閱和API密鑰。
IronPDF 提供廣泛的文件以及強大的支援以幫助使用者有效地運用該函式庫。 文件詳細且包括指南、範例和快速入門部分,幫助新使用者快速入門。 主要章節涵蓋基本使用、高級配置和故障排除。 此外,IronPDF 提供多种渠道的支持,包括广泛的知识库、電子郵件支持,以及針對更複雜問題的工程支持請求。 客服團隊提供每週五天、每天24小時的服務,迅速協助解決用戶的查詢和問題。
CraftMyPDF 也為其用戶提供詳細的文件和支援。 API 文件提供有關所有可用端點、參數和範例請求的詳細資訊,確保開發者能夠順利整合 API。 文檔包括有關創建模板、進行 API 請求和處理響應的指南。 CraftMyPDF 透過電子郵件提供客戶支援,並且設有社群論壇,供用戶提問和分享見解。 該文件旨在易於使用,確保各種技能水平的開發人員都能有效利用 API 生成 PDF。
在本文中,我們探討了兩個強大的 PDF 生成工具:IronPDF 和 CraftMyPDF 的功能、許可證和文檔。 兩個工具在創建和管理 PDF 文件方面都提供了強大的功能,但 IronPDF 因其多個顯著優勢而脫穎而出。
IronPDF 提供了全面的功能集,滿足各種 PDF 生成需求,包括輕鬆地將 HTML 字串、URL 和 HTML 文件轉換為 PDF。 它與 .NET 環境的無縫整合以及處理複雜文件結構的能力,使其成為一個高度多功能的工具。 此外,IronPDF 支援進階選項,例如添加頁眉和頁腳、數位簽名和處理 PDF 表單,確保它能滿足各種應用程式的需求。
IronPDF 的其中一個重要優勢是其授權結構。 提供一個免費試用,允許使用者在購買前評估軟體。 許可證的價格從 $749 起,使個人開發者和小型團隊負擔得起。 此外,IronPDF 提供了一個極具價值的提案,通過提供包含九個產品的 Iron Suite,以兩個產品的價格提供,這使其成為滿足全面 PDF 和文檔管理需求的具成本效益的選擇。
總結來說,雖然 IronPDF 和 CraftMyPDF 都是優秀的 PDF 生成工具,但 IronPDF 提供了更全面的功能集、更強大的支援以及更有利的授權模式。 其處理複雜文件需求的能力以及具成本效益的Iron Suite套件使其相較于CraftMyPDF具有優勢。 無論您是個人開發者還是大團隊的一員,IronPDF 為您的所有 PDF 生成需求提供可靠且強大的解決方案。