高分辨率转HTML成PDF(ephtmltopdf.dll)

BDS 2014-02-08 09:51:12
今天看到博友分享的 wkhtmtopdf--高分辨率转HTML成PDF(三)

想起我做 一键保存网页为PDF_V1.2 的时候,也研究过一段时间这个,一开始也看的是wkhtmltopdf,不过发现wkhtmltopdf不好用:

1、中文支持不好
2、组件较大,有20多M吧
后来看到这个(ephtmltopdf.dll) http://www.html-to-pdf.net/
不过这个的试用版有版权信息,经过我的反复折腾,终于破解了它,去掉了版权信息。
有需要的可以去 http://download.csdn.net/detail/bdstjk/6007387
下载,提取破解后的DLL,也可以通过官方试用下载页获取试用DLL,http://www.html-to-pdf.net/Download.aspx

ephtmltopdf.dll的功能优势:

-支持HTML5和CSS3功能,包括画布和SVG

-支持内联SVG在HTML文档

-支持网络字体

-支持Web开放字体格式WOFF

-强大的html5/css3/javascript渲染引擎

-组件很小,只有1M多,而wkhtmtopdf有20多M




效果参见 一键保存网页为PDF_V1.2 ,这里就只介绍一下用法了。

主要代码如下,即可将HTML保存为本地的PDF文件了




public void Use_ephtmltopdf(string URL, string outFile)
{
PdfConverter pdfConverter = new PdfConverter();
pdfConverter.PdfDocumentOptions.EmbedFonts = false;
pdfConverter.PdfDocumentOptions.ShowFooter = false;
pdfConverter.PdfDocumentOptions.ShowHeader = false;
pdfConverter.PdfDocumentOptions.GenerateSelectablePdf = true;
pdfConverter.SavePdfFromUrlToFile(URL, outFile);
}



  

当然,该组件还可以直接获取到二进制流,如下示例:


pdfConverter.PdfDocumentOptions.PdfPageSize = PdfPageSize.A4;
pdfConverter.PdfDocumentOptions.PdfCompressionLevel = PdfCompressionLevel.Normal;
pdfConverter.PdfDocumentOptions.ShowHeader = true;
pdfConverter.PdfDocumentOptions.ShowFooter = true;
pdfConverter.PdfDocumentOptions.LeftMargin = 5;
pdfConverter.PdfDocumentOptions.RightMargin = 5;
pdfConverter.PdfDocumentOptions.TopMargin = 5;
pdfConverter.PdfDocumentOptions.BottomMargin = 5;
pdfConverter.PdfDocumentOptions.GenerateSelectablePdf = true;

pdfConverter.PdfDocumentOptions.ShowHeader = false;
//pdfConverter.PdfHeaderOptions.HeaderText = "Sample header: " + TxtURL.Text;
//pdfConverter.PdfHeaderOptions.HeaderTextColor = Color.Blue;
//pdfConverter.PdfHeaderOptions.HeaderDescriptionText = string.Empty;
//pdfConverter.PdfHeaderOptions.DrawHeaderLine = false;

pdfConverter.PdfFooterOptions.FooterText = "Sample footer: " + TxtURL.Text +
". You can change color, font and other options";
pdfConverter.PdfFooterOptions.FooterTextColor = Color.Blue;
pdfConverter.PdfFooterOptions.DrawFooterLine = false;
pdfConverter.PdfFooterOptions.PageNumberText = "Page";
pdfConverter.PdfFooterOptions.ShowPageNumber = true;

//pdfConverter.LicenseKey = "put your serial number here";
byte[] downloadBytes = pdfConverter.GetPdfFromUrlBytes(url);


System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;
response.Clear();
response.AddHeader("Content-Type", "binary/octet-stream");
response.AddHeader("Content-Disposition",
"attachment; filename=" + downloadName + "; size=" + downloadBytes.Length.ToString());
response.Flush();
response.BinaryWrite(downloadBytes);
response.Flush();
response.End();

  



...全文
539 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_30051869 2015-12-24
  • 打赏
  • 举报
回复
这个只是个安装文件啊,PDF_V1.2_Setup (1).exe,不是dll的
shiyuyao1987 2015-12-22
  • 打赏
  • 举报
回复
服务器上中文显示空白,要怎么处理
SomethingJack 2014-11-23
  • 打赏
  • 举报
回复
之前也使用过这个组件做过转换工作。直接用的那个.exe
羽良 2014-11-23
  • 打赏
  • 举报
回复
楼主试过新浪微博吗?新浪微博转成的是空的
prosperwang 2014-08-06
  • 打赏
  • 举报
回复
这个delphi 能用吗
BDS 2014-03-07
  • 打赏
  • 举报
回复
引用 4 楼 boazhan 的回复:
大神能问下是怎么破解的么?!
反编译+反混淆+IL反汇编 这个只能告诉你这么多了,靠自己去尝试了,不同的DLL用的方法肯定不一样,基本的就这几种手段
boazhan 2014-03-06
  • 打赏
  • 举报
回复
大神能问下是怎么破解的么?!
leeya66 2014-02-09
  • 打赏
  • 举报
回复
网页转PDF,不知道在什么场景可以用到,
BDS 2014-02-08
  • 打赏
  • 举报
回复
引用 1 楼 boylee83 的回复:
刚在博客园看到。
哈哈,多发几个地方,多点人看看
  • 打赏
  • 举报
回复
刚在博客园看到。
本文基于中国A股上市企业数据,分析了逻辑型和学习型AI技术应用对企业创新的影响。通过机器学习生AI词典并分析年报文本,测量AI应用水平。研究发现,AI应用通过增加知识多样性、打破组织惯例和提高资源配置效率促进企业创新,且企业的吸收能力增强了这一促进作用 参照李玉花(2024)的做法,团队对来自中国工业经济《人工智能技术应用如何影响企业创新》一文中的基准回归部分进行复刻 团队将原文数据更新至2023年,并对基准回归进行复刻。数据年份为2007-2023年,包括原始数据、处理dofile,基准回归代码 一、数据介绍 数据名称:人工智能技术应用如何影响企业创新 数据范围:A股上市公司 数据年份:2007-2023年 有效样本:33615条 数据说明:参考《管理世界》中姚加权(2024)的做法,测算人工智能水平 内含原始数据、dofile和基准回归 二、数据指标 股票代码 股票简称 年份 省份 城市 区县 省份代码 城市代码 区县代码 行业代码 行业名称 企业上市年龄_年 是否ST或金融类 总资产_万元 营业收入增长率_% 资产负债率_% 总资产收益率_% 研发投入占营业收入比例_% 人工智能词频和 人工智能词频和加1取对数 企业专利申请总量 企业发明专利申请量 企业专利授权总量 企业发明专利授权量 三、参考文献 李玉花,林雨昕,李丹丹.人工智能技术应用如何影响企业创新[J].中国工业经济,2024,(10):155-173.

111,111

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧