c# - 我如何在 C# 中使用 WkHtmlToXSharp

标签 c# html pdf wkhtmltopdf

我已经阅读了很多关于 WkHtmlToXSharp(wkhtmltopdf 的包装器)的文章,所以我下载了它。似乎是唯一文档的一页声明您只需要 wkhtmltosharp.dll,但我在下载的文件中找不到它。它似乎是几个项目,并且 Libs/Win64 文件夹中看起来像 DLL 的东西不会加载到我的项目中。

如果有人能向我指出一些说明,也许还有一些基本示例,我将不胜感激。 我需要知道 .DLL 在哪里、要使用什么命名空间以及将 HTML 文件转换为 PDF 的一般用法语法。

谢谢!!

最佳答案

public static string ConvertHTMLtoPDF(string htmlFullPath, string pageSize, string orientation)
{
   string pdfUrl = htmlFullPath.Replace(".html", ".pdf");

   try
   {
       #region USING WkHtmlToXSharp.dll
       //IHtmlToPdfConverter converter = new WkHtmlToPdfConverter();
       IHtmlToPdfConverter converter = new MultiplexingConverter();

       converter.GlobalSettings.Margin.Top = "0cm";
       converter.GlobalSettings.Margin.Bottom = "0cm";
       converter.GlobalSettings.Margin.Left = "0cm";
       converter.GlobalSettings.Margin.Right = "0cm";
       converter.GlobalSettings.Orientation = (PdfOrientation)Enum.Parse(typeof(PdfOrientation), orientation);
       if (!string.IsNullOrEmpty(pageSize))
           converter.GlobalSettings.Size.PageSize = (PdfPageSize)Enum.Parse(typeof(PdfPageSize), pageSize);

       converter.ObjectSettings.Page = htmlFullPath;
       converter.ObjectSettings.Web.EnablePlugins = true;
       converter.ObjectSettings.Web.EnableJavascript = true;
       converter.ObjectSettings.Web.Background = true;
       converter.ObjectSettings.Web.LoadImages = true;
       converter.ObjectSettings.Load.LoadErrorHandling = LoadErrorHandlingType.ignore;

       Byte[] bufferPDF = converter.Convert();

       System.IO.File.WriteAllBytes(pdfUrl, bufferPDF);

       converter.Dispose();

       #endregion
   }
   catch (Exception ex)
   {
       throw new Exception(ex.Message, ex);
   }

   return pdfUrl;
}

关于c# - 我如何在 C# 中使用 WkHtmlToXSharp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6689075/

相关文章:

c# - 如何从 SPWeb 获取 SPWebApplication?

javascript - 将单个单击事件绑定(bind)到多个按钮时,如何使单击的按钮做一件事而所有其他按钮做另一件事?

javascript - 阶乘的最低有效非零数字

php - DomPDF 错误未捕获异常 'Dompdf\Exception'

java - docx4j 3.0 pdf 导出失败并出现 Docx4JException

c# - RijndaelManaged key 长度与 AES[ key 长度] 相同吗?

c# - ConcurrentDictionary.GetOrAdd() : valueFactory with different signature

c# - 检查 C# Action/Lambda/Delegate 是否包含任何代码/语句

Java:如何将PDF写出到文本文件?

javascript - 奇怪的 JavaScript