Qt QImage修改图片dpi

Qt QImage修改图片dpi

(DPI)Dots Per Inch,每英寸点数,所表示的是每英寸所拥有的像素数量。

QT里QImage设置DPI的方式:

1 setDotsPerMeterX2 setDotsPerMeterY

设置每米有多少个像素点进而换算成每英寸有多少个像素点。
换算:

1 1m    = 39.37inch2 1inch = 0.0254m,3 1dots/inch = 1dots/0.0254m = 39.37dots/m4 1dots/inch = 39.37dots/m,

故修改90的DPI,则设置的值为:90*39.37

例子:修改图片dpi为90

1  QImage img("/tmp/3456.webp");2  qDebug()<<img.dotsPerMeterX() <<img.dotsPerMeterY();3  img.setDotsPerMeterX(90*39.37);4  img.setDotsPerMeterY(90*39.37);5  qDebug()<<img.dotsPerMeterX() <<img.dotsPerMeterY();6  img.save("/tmp/45678.webp");

推荐阅读