把html页面转化成图片——html2canvas

所有样式要用px!
所有样式要用px!
所有样式要用px!
所有样式要用px!
用rem,会导致错位
<
div id="win" class="i-d-fenxiang fenxiang1"> <img crossorigin="anonymous" class="i-d-fenxiang-pic" :src="fenxiang_pic" alt=""> <div class="i-d-fenxiang-box"> <div class="i-d-fenxiang-info"> <div class="i-d-fenxiang-info-name"> <i v-if="type==1" class="iconfont iconxiangqing-tm"></i> <i v-if="type==0" class="iconfont iconxiangqing-tb"></i> <i v-if="isbaoyou" class="iconfont iconxiangqing-baoyou"></i> {{name}} </div> <div class="i-d-fenxiang-price">现价:<span>¥{{yuan_price}}</span></div> <div class="i-d-fenxiang-quan"> <div class="i-d-fenxiang-quan-left"> <div></div> <div>{{quan}}</div> </div> <div class="i-d-fenxiang-quan-right"> 券后价:<span>¥{{xian_price}}</span> </div> </div> </div> <div class="i-d-fenxiang-right"> <div class="i-d-fenxiang-qrcord"> <div class="i-d-fenxiang-qrcord-pic" id="qrcode"></div> </div> <div class="i-d-fenxiang-qrcord-text">长按保存图片</div> </div> </div> </div>
// 打开分享弹窗
                openBanner: function () {
                    var that = this;
                    myApp.preloader.show();
                    that.isfenxiang = true;
                    $(".i-d-zhezhao").show();
                    // 绘制画布
                    var copyDom = document.querySelector('.fenxiang1');
                    var width = copyDom.offsetWidth;//dom宽
                    var height = copyDom.offsetHeight;//dom高
                    console.log(that.fenxiang_pic);
                    console.log(width);
                    console.log(height);

                    var scale = 2;//放大倍数
                    html2canvas(copyDom, {
                        dpi: window.devicePixelRatio * 2,
                        scale: scale,
                        width: width,
                        heigth: height,
                        useCORS: true
                    }).then(function (canvas) {
                        var dataURL = canvas.toDataURL();
                        console.log(dataURL);
                        that.canvas = dataURL.split(',')[1];
                        $(".i-d-canvas").attr('src', dataURL);
                        myApp.preloader.hide();

                        api.addEventListener({
                            name: 'longpress'
                        }, function (ret, err) {
                            ac5.open();
                        });
                    });
                },

 

posted @ 2018-06-04 13:21  怪咖咖  阅读(1209)  评论(0)    收藏  举报