跳至页脚内容
产品比较

Accusoft Prizmdoc PDF 查看器教程和比较

Accusoft PDF Viewer 为 .NET 提供 HTML 转 PDF 功能以及其他 PDF 编辑和操作任务。 IronPDF 还能以编程方式完成这些相同的任务,为您的 C# 项目节省时间和精力。

让我们比较一下这两种翻译,看看哪种最适合您的项目。

IronPDF 与 Accusoft PDF Viewer 的比较

  • 将 HTML 转换为 PDF
  • 为 PDF 设置页眉和页脚
  • 将 PDF 转换为图像文件比较许可、免费试用选项等

    概述

    关于 IronPdf. [IronPDF](/tutorials/html-to-pdf/) 是一个 C# HTML 转 PDF 库。 它使工程师能够完成的任务包括从 HTML 字符串、WebPage、URL 等来源创建 PDF 文件,以及设置水印、书签、页眉和页脚等属性。我们还可以将多个 PDF 文件合并为一个文件,或将 PDF 页面转换为图像,反之亦然。 它可免费用于开发,并提供 30 天的部署试用期,以便您的项目上线。 You can download a file project from this link.

    关于 Accusoft PrizmDoc Viewer

    [PrizmDoc Viewer](https://www.accusoft.com/products/prizmdoc-suite/prizmdoc-viewer-pdf/) 是一个 REST API,用于远程处理 PDF 文件并将其转换为其他格式。 PrizmDoc 可以将 100 多种不同格式的文件转换为 PDF,并将 PDF 转换为 PNG、JPG、TIFF 和 SVG。 它还可用于在应用程序中加入不同类型的电子签名选项。

    比较表

    IronPdfPrizmDoc Viewer
    以编程方式处理 PDF 文件。 以编程方式处理 PDF 文件。 以编程方式处理 PDF 文件。 支持 Windows、Mac 或 Linux 的 .NET Core。 支持使用 Windows、Mac 或 Linux 的 .NET Core。 在本地工作 在本地工作 将文档发送到远程服务器。 将文档发送到远程服务器。 使用或不使用异步编程。 必须使用 "System.Threading.Tasks "进行异步编程。 一旦我们在系统中安装 IronPdf,即可轻松实现脱机工作。 必须连接互联网才能向 PrizmDoc Viewer 服务器(云托管或自托管)发送请求。 提供许多预定义功能。 提供一些预定义函数。 提供一些预定义函数。 通常只需要最少行代码。 通常需要多行代码。 通常需要多行代码。 在每个许可计划中,每个项目的转换次数不受限制。 每个云托管许可计划中的事务数量有限。 免费用于开发,无时间限制。 仅试用 300 次交易。

    第 1 步:安装

    。 ## 1.安装 IronPdf 库。 在您的项目中安装 IronPDF 有两种方法,采用哪种方法都一样。 ### 1.1.下载 IronPdf DLL. [下载 IronPDF.dll](download-modal),并将其引用添加到您的项目中。 之后,您可以通过以下方式轻松访问命名空间 `IronPdf` : ```csharp using IronPdf; ``` 现在,您可以轻松访问 IronPdf 提供的功能和类。

    1.2 通过 NuGet 软件包管理器安装

    从 Accusoft 安装 PrizmDoc Viewer

    PrizmDoc Viewer 分为两部分,一部分是服务器端,称为 `PrizmDoc Server`,其行为类似于 Restful API。 另一个是我们的项目,通过该项目,我们点击 API 并获得响应。

    访问 PrizmDoc 服务器

    正如我们从其名称中看到的,它是一个服务器端应用程序,以请求(输入)的形式获取文档的基本信息,并将文档转换为 PDF 文件,然后以响应(输出)的形式将转换后的 PDF 文件发送给客户端。 它是产品的技术核心,是一个文档处理和转换引擎。我们可以通过两种不同的方式使用它,采用哪种方式并无区别,因为两者具有相同的编程结构和技术: 1.自行托管:云托管: Accusoft 工作结构 在本示例中,我们将把 `myWebpage.html` 文件转换为 `sample.pdf` 文件。 **注意:**我们必须安装 `Newtonsoft.Json` 库,并在项目中添加其引用。 首先,将以下库添加到您的项目中: ```csharp using System; using System.IO; using System.Net; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Linq; // Install Newtonsoft.Json via NuGet Package Manager ``` 然后创建一个公共变量 `Accusoft API Key`,并将您的 API Key 粘贴到其中,如下所示: ```csharp static string ApiKey = "Your-API-KEY"; ``` 使用 PrizmDoc Viewer 处理 PDF 文件有 3 个步骤: 1.将文件上传到 PrizmDoc 服务器。 2.转换上传的文件。 3.从 PrizmDoc 服务器下载转换后的文件。 因此,我们将为每个步骤制作一个单独的功能。 ```csharp static void Main(string[] args) { //---Upload file to Server--- JObject uploadResults = UploadToServer("myWebpage.html").Result; string fileID = (string)uploadResults.SelectToken("fileId"); string affinityToken = (string)uploadResults.SelectToken("affinityToken"); //---Convert the uploaded file to PDF--- JObject convertResults = Convert(affinityToken, fileID).Result; string processId = (string)convertResults.SelectToken("processId"); affinityToken = (string)convertResults.SelectToken("affinityToken"); //---Check the status that conversion is completed--- JObject convertStatusResults = ConvertStatus(processId, affinityToken).Result; string convertStatus = (string)convertStatusResults.SelectToken("state"); //---Continuously checking whether conversion completed--- while (!(convertStatus.Equals("complete"))) { System.Threading.Thread.Sleep(30000); convertStatusResults = ConvertStatus(processId, affinityToken).Result; convertStatus = (string)convertStatusResults.SelectToken("state"); } //---Download the converted file from server--- string newFileID = (string)convertStatusResults.SelectToken("output.results[0].fileId"); DownloadFromServer(affinityToken, newFileID, "sample.pdf").Wait(); Console.WriteLine("PDF file created successfully...!"); Console.ReadKey(); } ``` **1.将文件上传到服务器:** 2. ```csharp public static async Task UploadToServer(string fileToUpload) { FileInfo input = new FileInfo(fileToUpload); if (input == null) { throw new ArgumentException("Missing parameter input", nameof(input)); } var fileName = input.Name; var endpoint = new Uri("https://api.accusoft.com/PCCIS/V1/WorkFile"); using (var client = new WebClient()) { client.Headers.Add("acs-api-key", ApiKey); client.Headers.Add("Content-Type", "application/octet-stream"); using (var reader = new BinaryReader(input.OpenRead())) { var data = reader.ReadBytes((int)reader.BaseStream.Length); var results = await client.UploadDataTaskAsync(endpoint, "POST", data); string getResult = Encoding.ASCII.GetString(results); return JObject.Parse(getResult); } } } ``` 2.将上传的文件转换为 PDF: Convert(string affinityToken, string fileID) { var endpoint = new Uri("https://api.accusoft.com/v2/contentConverters"); using (var client = new WebClient()) { client.Headers.Add("Content-Type", "application/json"); client.Headers.Add("acs-api-key", ApiKey); client.Headers.Add("Accusoft-Affinity-Token", affinityToken); JObject myJson = new JObject( new JProperty("input", new JObject( new JProperty("sources", new JArray( new JObject( new JProperty("fileId", fileID) ) ) ), new JProperty("dest", new JObject( new JProperty("format", "pdf") ) ) ) ) ); string results = await client.UploadStringTaskAsync(endpoint, "POST", myJson.ToString()); return JObject.Parse(results); } } ``` 下面的 JSON 是 `myJson` 对象的结果值: ```json { "input": { "sources": [ {"fileId": "Auto Generated FileId Value"} ], "dest": { "format": "pdf" } } } ``` **检查转换是否完成**。 ```csharp public static async Task ConvertStatus(string processId, string affinityToken) { string endpoint = "https://api.accusoft.com/v2/contentConverters/" + processId; using (var client = new WebClient()) { client.BaseAddress = endpoint; client.Headers.Add("acs-api-key", ApiKey); client.Headers.Add("Accusoft-Affinity-Token", affinityToken); string results = await client.DownloadStringTaskAsync(endpoint); return JObject.Parse(results); } } ``` 3.从服务器下载转换后的文件安装 Accusoft.PrizmDocServerSDK. 有两种安装包装器的方法。 * 软件包管理器控制台: 如果您使用的是软件包管理器控制台,请运行以下命令: ```shell Install-Package Accusoft.PrizmDocServerSDK ``` * 管理解决方案的软件包: 如果您使用的是 NuGet Package Manager 的图形用户界面,那么请在搜索栏中浏览 `Accusoft.PrizmDocServerSDK` 并进行安装。 现在,您可以轻松访问 `Accusoft.PrizmDocServer` 命名空间,并通过访问来使用它: ```csharp using Accusoft.PrizmDocServer; ```

    如何使用教程

    2.IronPDF 与 PrizmDoc Viewer 代码对比

    3.将 HTML 转换为 PDF 文件

    debug`* 文件夹中。 您也可以像这样指定任何路径:<代码>PDF.SaveAs("E:/sample.pdf");3.3.HTML 到 PDF 代码比较 ## 4.图像到 PDF. 在本对比中,我们以需要通过 [Image](https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png) 创建 PDF 文件为例,该文件存在于项目的 `debug` 文件夹中。 让我们从 IronPdf 开始。 ### 4.1.IronPDF Image to PDF. ```csharp using IronPdf; static void Main(string[] args) { // Specify the image to be converted using var converted = ImageToPdfConverter.ImageToPdf("google.png"); // Save PDF file to the target location converted.SaveAs("sample.pdf"); } ``` 输出:
    Iron 2 related to 如何使用教程
    输出:
    Prizm 2 related to 如何使用教程
    4.3.图像到 PDF 代码比较

    5.合并 PDF 文件

    5.1.IronPDF 合并 PDF 文件(); PDFs.Add(PdfDocument.FromFile("A.pdf")); PDFs.Add(PdfDocument.FromFile("B.pdf")); PDFs.Add(PdfDocument.FromFile("C.pdf")); // Merge the list of pdf file using PdfDocument PDF = PdfDocument.Merge(PDFs); // Save merged file to the target location PDF.SaveAs("sample.pdf"); foreach(var pdf in PDFs) { pdf.Dispose(); } } ``` 上述代码将创建一个 `sample.pdf` 文件,它是 `A.pdf`, `B.pdf` 和 `C.pdf` 的组合。 现在,我们将使用 PrizmDoc Viewer 完成同样的任务。

    5.2.PrizmDoc Viewer 合并 PDF 文件

    6.PDF页眉和页脚

    Hello World..!

    Main Menu

    • SubMenu 1
    • SubMenu 2
    • SubMenu 3
    • SubMenu 4
    • SubMenu 5
    ``` 我们希望将此网页转换为 PDF 文件,并设置以下页眉和页脚属性: * ` 页面标题`位于页眉左侧、 * 标题右侧的 DateTime总页数。 首先,我们将了解如何配合 IronPDF 设置页眉和页脚。 ### 6.1.IronPDF PDF 页眉和页脚。 为了处理 PDF 文件的页眉和页脚,IronPDF 在 `ChromePdfRenderer` 类上提供了一个名为 `RenderingOptions` 的属性,其使用方法如下: * 供标题:页脚:输出:
    6.2.PrizmDoc Viewer PDF 页眉和页脚 { new HeaderFooterLine { Left = "Page Title", Right = DateTime.Now.ToString() } }, }, footer: new HeaderFooterOptions { Lines = new List { new HeaderFooterLine { Right = "Page {{pageNumber}} of {{pageCount}}" }, }, }); // Save to the target location await result.RemoteWorkFile.SaveAsync("sample.pdf"); } ``` 输出:
    6.3.PDF 页眉和页脚代码比较

    7.将 PDF 页面转换为图像

    Page1 Page2
    7.1.IronPDF 将 PDF 转换为图像输出: Page2 Image
    Page1 图像 Page1 图像
    7.2.PrizmDoc Viewer PDF 转换为图像 results = await prizmDocServer.ConvertAsync("Sample_PDF.pdf", DestinationFileFormat.Png); // Save each image. for (int i = 0; i < results.Count(); i++) { await results.ElementAt(i).RemoteWorkFile.SaveAsync($"page-{i + 1}.png"); } } ``` 输出:
    Page1 Page2
    7.3.PDF 到图像代码比较 ### 使用 Bootstrap 5 和 IronPDF 绘制数据表。 IronPDF 的 Chrome V8 渲染引擎为 Bootstrap 5 数据表提供了卓越的支持,使您能够生成具有复杂表格布局的专业 PDF 报告。 本示例演示了渐变标题、状态徽章、分页控件和汇总指标--这些功能展示了 IronPDF 相对于 PrizmDoc 等传统 PDF 浏览器的优势。 ```csharp using IronPdf; var renderer = new ChromePdfRenderer(); string dataTableReport = @"

    Sales Performance Report

    Q4 2024 Regional Analysis

    Showing 1-10 of 48 results
    Region Revenue Units Sold Growth Status Action
    North America
    USA, Canada, Mexico
    $4,280,000 12,450 ↑ 18.5% Exceeding
    Europe
    EU, UK, Switzerland
    $3,650,000 10,890 ↑ 12.3% On Track
    Asia Pacific
    Japan, Australia, Singapore
    $2,940,000 8,320 ↑ 24.7% Growing
    Latin America
    Brazil, Argentina, Chile
    $1,580,000 4,670 ↑ 8.9% Stable
    Middle East
    UAE, Saudi Arabia, Israel
    $980,000 2,890 ↓ 3.2% Review
    Total $13,430,000 39,220 ↑ 14.8%

    $13.4M

    Total Revenue

    39,220

    Units Sold

    14.8%

    Growth Rate

    5

    Active Regions
    "; var pdf = renderer.RenderHtmlAsPdf(dataTableReport); pdf.SaveAs("data-table-report.pdf"); ``` 该代码会生成一份复杂的数据表格报告,其中包含渐变标题、响应式表格、状态徽章和汇总指标。 IronPDF 的 Chrome 渲染引擎保留了所有 Bootstrap 风格,包括表格悬停效果、徽章颜色和分页控件,这些功能远远超出了传统 PDF 浏览器。 PrizmDoc Viewer 的主要优势:8.许可定价 价格
    开发人员数量
    1-59 6-10911-209 11-20 9
    21-50$1,199 无限制 无限制,199 无限制 8.2.PrizmDoc Viewer 许可证选项自托管选项基于云的选项术语: 预付款桶 每月每年
    交易次数 交易次数
    200 1,000 1,000 。 2,0009 2,000 9。 2,000元 119元 6,00049,859(6,000 笔交易/月) 12,00049,179(12,000 笔交易/月) 25,00099,459(25,000 笔交易/月) 50,000,19998,789(50,000 笔交易/月) 100,000$1,199 $1,199 ,989(100,000 笔交易/月) 200,000,549,69919,188美元(200,000笔交易/月) 300,000,299,199,188(300,000 笔交易/月 400,000,049,69931,188美元(400,000笔交易/月) 500,000,799,199,188(500,000 笔交易/月)

    快速访问教程

    获取 C# IronPDF 快速入门手册

    我们创建了一个免费的 PDF 资源指南,帮助您在.NET 中更轻松地开发 PDF,其中包含常用函数的演练以及在 C# 和 VB.NET 中为您的项目操作、编辑、生成和保存 PDFS 的示例。 下载指南

    探索 IronPDF API 参考

    探索 IronPDF C# 库的 API 参考,包括 IronPDF 的所有功能、类、方法字段、命名空间和枚举的详细信息。 查看 API 参考

    常见问题解答

    如何在C#中将HTML转换为PDF?

    你可以使用IronPDF的RenderHtmlAsPdf方法将HTML字符串转换为PDF。你还可以使用RenderHtmlFileAsPdf将HTML文件转换为PDF。

    使用IronPDF进行PDF转换比PrizmDoc Viewer有什么优势?

    IronPDF提供了一种简单的本地PDF渲染解决方案,支持离线工作而不需要异步编程。而PrizmDoc Viewer通过REST API运行,需要互联网连接以进行远程服务器交互。

    我可以使用PDF库合并多个PDF文档吗?

    可以,使用IronPDF,你可以使用MergePdf方法合并多个PDF,实现无缝结合的文件。

    IronPDF如何处理PDF到图像的转换?

    IronPDF允许你使用内置方法轻松将PDF页面转换为图像,提供了比其他软件更简化的方法。

    IronPDF中的页眉和页脚自定义选项有哪些?

    IronPDF提供了广泛的功能,以简单的编程结构设置页眉和页脚属性,使自定义文档变得容易。

    IronPDF适用于离线PDF处理吗?

    是的,IronPDF支持离线PDF处理,这意味着你可以在没有互联网连接的情况下工作,与一些需要远程服务器交互的解决方案不同。

    IronPDF许可证的成本结构是什么?

    IronPDF许可证起价为699美元,用于一个项目的单一开发人员,提供可扩展的公司和SaaS服务选项,提供了一种具有成本效益的一次性付款方案。

    我可以免费使用IronPDF进行开发吗?

    可以,IronPDF开发免费且无时间限制,并提供30天的部署试用期以便你的项目上线。

    PrizmDoc Viewer如何处理HTML到PDF的转换?

    PrizmDoc Viewer使用REST API进行HTML到PDF的转换,需要异步编程和互联网连接来进行远程服务器交互。

    托管PrizmDoc服务器的系统要求是什么?

    自托管PrizmDoc服务器需要至少32 GB RAM和4核CPU,以满足其处理需求。

    IronPDF 是否完全兼容 .NET 10?

    是的。IronPDF 支持 .NET 10(以及 .NET 9、8、7、6、.NET Core、.NET Standard 和 .NET Framework)。它通过 NuGet 安装,可在 Windows、Linux 和 macOS 上运行,并使用其基于 Chrome 的原生渲染器,在 .NET 10 应用程序中提供像素级精准的 HTML 转 PDF 渲染效果。

    Curtis Chau
    技术作家

    Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

    除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

    相关文章