2015-02-12 245 views
1

我试图用150DPI生成一个图像1800px 2400px,但我总是得到72DPI。fabricjs toDataURL指定DPI

var image = canvas.toDataURL({ 
    left:150, 
    top: 100, 
    width: 180, 
    height: 240, 
    multiplier: 10 
}).replace("image/png", "image/octet-stream") 

我怎样才能得到一个150DPI的PNG?

+0

我尝试使用http://fabricjs.com/docs/fabric.html#DPI – xmojmr 2015-02-16 06:26:02

回答

0

默认情况下,您的图像是以72DPI创建的。由于您将图像发送到服务器,因此可以使用ImageMagick为例将图像转换为150DPI。

在PHP使用这个命令:

$img150 = "convert input72image.png -units PixelsPerCentimeter -density 60x60 output150image.png; 
exec ($img150); 

PNG图像没有在DPI但在 “PixelsPerCentimeter” 转换。 60万像素PerPentimeter等于152,4 DPI。

查看这些信息: What is the best practice to export canvas with high quality images?canvas.toDataURL() for large canvas

我希望它能帮助。