javascript 如何修改图片的 dpi

2017-03-20 16:56:40 +08:00
 ffx0s

canvas 生成的图片 dpi 不够大。

2519 次点击
所在节点    JavaScript
5 条回复
otakustay
2017-03-21 17:53:07 +08:00
canvas 本身是位图绘制的,所以 canvas 就这么大生成的图片也只能这么大,放大就会失真,你要高 dpi 的只能一开始就搞一个超大的 canvas 出来
ffx0s
2017-03-21 18:13:55 +08:00
@otakustay 在手机端 width*height 超过 16777216 就不行了。。
ffx0s
2017-03-21 18:16:36 +08:00
@otakustay 官方文档说: The HTMLCanvasElement.toDataURL() method returns a data URI containing a representation of the image in the format specified by the type parameter (defaults to PNG). The returned image is in a resolution of 96 dpi.
就是无论 canvas 多大,下载的图片 dpi 都是 96
otakustay
2017-03-21 21:18:19 +08:00
@ffx0s 一张 200x200 的 96dpi 的图片,变成 100x100 就是 132dpi 了,所以你要提高 dpi 就是在原有希望尺寸上把宽高放大,然后再显示到小的容器里去
ffx0s
2017-03-21 22:51:50 +08:00
@otakustay 感谢,显示是没问题。但是需要把图片下载然后打印出来。 dpi 太小,打印出来会模糊。通过其他工具把 dpi 调高了在打印就清晰了。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/348883

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX