IText&Html2canvas js截图 绘制 导出PDF

Html2canvas JS截图

HTML

1 <div  id="divPDF">
2 需要截图的区域
3 </div>

JS

 1 <script src="../Js/html2canvas.js"></script>
 2 <script type="text/javascript">
 3
 4         function getPDF() {
 5              html2canvas($(‘#divPDF‘),
 6              {
 7                  onrendered: function (canvas) {
 8                      var imgUrl = canvas.toDataURL();//获取截图的Base64编码
 9                  }
10              });
11          }
12
13 </script>

后台使用图片 Base64编码转换为图像

 1         // <summary>
 2         /// Base64编码转换为图像
 3         /// </summary>
 4         /// <param name="base64String">Base64字符串</param>
 5         /// <returns>转换成功返回图像;失败返回null</returns>
 6         public string Base64ToImage(string imgName, string base64String, string path)
 7         {
 8             base64String = base64String.Replace("data:image/png;base64,", "");
 9             MemoryStream ms = null;
10             System.Drawing.Image image = null;
11             string imgUrl = path + "\\" + imgName + ".png";
12             byte[] imageBytes = Convert.FromBase64String(base64String);
13             ms = new MemoryStream(imageBytes, 0, imageBytes.Length);
14             ms.Write(imageBytes, 0, imageBytes.Length);
15             image = System.Drawing.Image.FromStream(ms, true);
16             image.Save(imgUrl);
17             return imgUrl;
18         }

给PDF文件添加水印 IText  WaterMark

 1         public void AddWaterMark(string fileLocation, string path, int x, int y)
 2         {
 3             string WatermarkLocation = path + "\\watermark.png";
 4             Document document = new Document();
 5             PdfReader pdfReader = new PdfReader(fileLocation);
 6             PdfStamper stamp = new PdfStamper(pdfReader, new FileStream(fileLocation.Replace(".pdf", "[temp][file].pdf"), FileMode.Create));
 7
 8             iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance(WatermarkLocation);
 9             img.SetAbsolutePosition(x, y); // set the position in the document where you want the watermark to appear (0,0 = bottom left corner of the page)
10             PdfContentByte waterMark;
11             for (int page = 1; page <= pdfReader.NumberOfPages; page++)
12             {
13                 waterMark = stamp.GetOverContent(page);
14                 waterMark.AddImage(img);
15             }
16             stamp.FormFlattening = true;
17             stamp.Close();
18             pdfReader.Close();
19             // now delete the original file and rename the temp file to the original file
20             File.Delete(fileLocation);
21             File.Move(fileLocation.Replace(".pdf", "[temp][file].pdf"), fileLocation);
22
23         }
时间: 2024-08-29 02:57:46

IText&Html2canvas js截图 绘制 导出PDF的相关文章

JS导出PDF插件(支持中文、图片使用路径)

原文:JS导出PDF插件(支持中文.图片使用路径) 在WEB上想做一个导出PDF的功能,发现jsPDF比较多人推荐,遗憾的是不支持中文,最后找到pdfmake,很好地解决了此问题.它的效果可以先到http://pdfmake.org/playground.html查看.在使用过程中,还发现图片的插入是相对繁琐的一件事. 针对这些问题,本文的主要内容可分为三部分: pdfmake的基本使用方法: 如何解决中文问题; 如何通过指定图片地址插入图片. pdfmake的基本使用方法 1.包含以下两个文件

js截图及绕过服务器图片保存至本地(html2canvas)

今天要分享的是用html2canvas根据自己的需求生成截图,并且修复html2canvas截图模糊,以及绕过服务器图片保存至本地. 只需要短短的几行代码,就能根据所需的dom截图,是不是很方便,但是生成的图片模糊 //直接选择要截图的dom,就能截图,但是因为canvas的原因,生成的图片模糊 html2canvas(document.querySelector('div')).then(function(canvas) { document.body.appendChild(canvas);

利用iText 组件导出PDF

maven依赖:       <dependency>    <groupId>com.itextpdf</groupId>    <artifactId>itextpdf</artifactId>    <version>5.2.0</version>       </dependency> <!-- PDF输出中文的扩展包 -->       <dependency>    <

iText导出pdf、word、图片

一.前言 在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText.通过在服务器端使用Jsp或JavaBean生成PDF报表,客户端采用超级连接显示或下载得到生成的报表,这样就很好的解决了B/S系统的报表处理问题. 二.iText简介 iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库.通过iText不仅可以生成PDF或rtf的文档,而且可以将XML.Html文件转化为PDF文件. iText的

Java使用IText(VM模版)导出PDF

Java使用IText(VM模版)导出PDF: public String createPDF(ProjectManageBase projectManageBase) { Map map = new HashMap();// velocity模板中的变量 try { //模版vm的路径 String tmPath = ServletActionContext.getServletContext() .getRealPath("/pdf/vm"); String pdfPath = S

Java使用IText(VM模版)导出PDF,IText导出word(二)

===============action=========================== //退款导出word    public void exportWordTk() throws IOException{         Long userId=(Long)ServletActionContext.getContext().getSession().get(Constant.SESSION_USER_ID);        //获取生成Pdf需要的一些路径        Strin

html2canvas.js网页截图功能

需求:将网页生成图片,用户自行长按图片进行保存图片,再分享朋友圈.其中,都可识别图中的二维码.(二维码过小会识别不出) 首先,先来科普一下微信网页识别二维码原理:截屏识别,当客户端发现用户在网页的img标签内进行长按操作时,会立刻截屏并且启动二维码识别算法.https://www.cnblogs.com/daipi... 发现官网中的html2canvas.js插件存在一些bug: 1.截图不全,不完整 解决方案: //修改源码,添加自定设置高度宽度 var width = options.wi

html2canvas实现js截图

<html lang="en"> <head> <script type="text/javascript" src="js/jquery-1.8.3.min.js"></script> <script type="text/javascript" src="js/html2canvas.js"></script> <title&

利用iText导出pdf文件

一.导出pdf工具类:  package pdf; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import j