• HTML页面转化为带有水印的PDF文件


      我之前写过一篇如何把HTML页面转化为PDF文件,这里就不详讲了,主要讲如何增加水印

    一、如何增加水印,在什么时候增加水印?

      在用 html2Canvas 框架生成canvas后,操作canvas增加水印。代码如下:

     1 downloadPDF(){
     2   var title = 'RFM'
     3   let self = this;
     4   let targetDom = document.querySelector('#pdfDom');
     5   this.$nextTick(()=>{  // 在下次 DOM 更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的 DOM。
     6     html2Canvas(targetDom, {
     7       allowTaint: true,
     8       height: targetDom.scrollHeight 
     9     }).then(function (canvas) {   // 通过promise返回canvas元素
    10       let context = canvas.getContext('2d');
    11       self.printWater(context);
    12       let PDF = new JsPDF('p', 'pt', 'a4')
    13       // 中间操作代码省略
    14       PDF.save(title + '.pdf') // 保存pdf文档,本地下载pdf文件
    15     })
    16   })
    17   this.timeout = setTimeout(() => {
    18     self.overflow = 'auto';
    19   }, 1000);
    20   
    21 },
    22 // 打印水印
    23 printWater(context) {
    24   context.font='200px Palatino'
    25   context.fillStyle = 'rgba(0,0,0,0.03)';
    26   let height = 0;
    27   context.save();
    28   let pageHeight =  context.canvas.height / 592.28 * 841.89 
    29   while(height < context.canvas.height) {
    30     context.save();
    31     context.translate(0,height) // 移动原点位置
    32     context.rotate(Math.PI/4); // 旋转
    33     context.fillText('我是个美女', 300 ,350);
    34     context.restore();
    35     height += 841.89;
    36   }
    37   context.restore();
    38 },
  • 相关阅读:
    主成分分析
    8、特征选择
    7.逻辑回归实践
    6--逻辑回归
    《四分之四团队》:团队项目选题报告
    计算与软件工程 作业五
    计算与软件工程 作业四
    计算与软件工程 作业三
    计算与软件工程 作业二
    计算与软件工程作业一
  • 原文地址:https://www.cnblogs.com/daheiylx/p/14309393.html
Copyright © 2020-2023  润新知