zoukankan      html  css  js  c++  java
  • 根据图片的URL生成PDF保存到本地(前台js)

    //需要引用html2canvas.js和jspdf.js

    SavePDF:function(e){
    var that = this;
    $.post("/Biz/DailyExpenseApply/GetpictureToPDF?expenseApplyId=" + this.expenseApply.ExpenseApplyID,function(res){
    _.each(res,function(m){
    getBase64(m.FileUrl,(dataURL)=>{
    debugger
    // 三个参数,第一个方向,第二个单位,第三个尺寸格式
    var doc = new jsPDF('landscape','pt',[205, 115])

    // 将图片转化为dataUrl
    var imageData = dataURL;

    doc.addImage(imageData, 'PNG', 0, 0, 205, 115);
    doc.save(m.DOCNAME+'.pdf');
    //var base64str = doc.output("datauristring");

    });

    })
    })
    },

    function getBase64(url,callback){//获取图片url的地址转换成base64
    //通过构造函数来创建的 img 实例,在赋予 src 值后就会立刻下载图片,相比 createElement() 创建 <img> 省去了 append(),也就避免了文档冗余和污染
    var Img = new Image(),
    dataURL='';
    Img.src=url;
    Img.onload=function(){ //要先确保图片完整获取到,这是个异步事件
    var canvas = document.createElement("canvas"), //创建canvas元素
    width=Img.width, //确保canvas的尺寸和图片一样
    height=Img.height;
    canvas.width=width;
    canvas.height=height;
    canvas.getContext("2d").drawImage(Img,0,0,width,height); //将图片绘制到canvas中
    debugger
    dataURL=canvas.toDataURL('image/jpeg'); //转换图片为dataURL
    callback?callback(dataURL):null; //调用回调函数
    };
    }

  • 相关阅读:
    蛙蛙请教:把一段c算法代码转换成c#代码。
    和病毒折腾了两天
    WawaKM预览版发布,欢迎大家测试反馈哦
    (转)深度分析如何在Hadoop中控制Map的数量
    [转载]JAVA操作符
    (转)Hive Index
    Hadoop++:Hadoop的局部性能改良
    深入了解Hive Index具体实现
    Linux echo命令
    (转)带索引的mapReduce
  • 原文地址:https://www.cnblogs.com/jiangcm/p/8657781.html
Copyright © 2011-2022 走看看