我正在网页上显示一些内容和图像 . 每张图像都有一定的宽度,或者可能没有指定宽度 . 当用户单击按钮时,网页上的内容将导出到PDF文件,以便在PDF页面中调整图像,我正在修改图像的宽度和高度,但是它会修改宽度和图像的高度 . 网页也是 . 如何停止更改网页上图像的宽度和高度 .
请找到演示:https://plnkr.co/edit/STVjUB1YMwbOrtYLxR8V?p=preview
在上面的演示插件中,当单击导出按钮时,图像宽度和高度被修改,以便在将数据导出到PDF时,图像正确地适合PDF页面,并且可以看到修改后的图像宽度/高度变化在网页上也是如此 . 我如何限制,以便修改后的图像宽度和高度仅应用于PDF文件,但不应用于网页 .
HTML代码:
<button ng-click="export()">export</button>
<div class="myDivClass"..>
<img src="data:image/jpeg..">
<img src="..." style="width:400px">
..
//content
</div>
js代码:
$scope.export = function() {
var imagesToResize = document.getElementsByTagName("img");
for(i=0;i<imagesToResize.length;i++){
imagesToResize[i].style.width = "100px";
imagesToResize[i].style.height = "100px";
}
任何输入都有帮助 .
1 回答
---编辑---------------------------------------------- -----------
所以在深入挖掘问题之后,我意识到问题是一个简单的document.getElementByTagName('img')并修改整个img 's is not appropriate ,for instance if you just want some printable img to have a custom height and width , you cannot just suddenly shrink and re-grow all the images , so it'更好的方法将你的可打印内容带到一个隐藏的div然后在隐藏的div中做所有的maninpulation然后使用隐藏的div作为可打印内容 . 我甚至做了一个git repo,你可以看到并看到你的问题是否得到解决 . git链接:https://github.com/sagarb3/jspdf-demo
在git链接中我保留下载的图像作为图像的base64使整个事情有点难看 . 我甚至修改了一些功能
我对jspdf没有很好的理解,但我最终得到了一个解决方案
这就是我的index.html现在的样子
这是带有解决方案的js文件:
;