Установить DPI для QImage

Я рисую текст с помощью QPainter на QImage, а затем сохраняю его в TIFF.

Мне нужно увеличить DPI до 300, что должно сделать текст больше в пикселях (для того же размера точки).

2

Решение

Вы можете попробовать использовать QImage :: setDotsPerMeterY () и QImage :: setDotsPerMeterX (). DPI означает «точек на дюйм». 1 дюйм равен 0,0254 метра. Таким образом, вы должны быть в состоянии конвертировать в точки на метр (dpm):

int dpm = 300 / 0.0254; // ~300 DPI
image.setDotsPerMeterX(dpm);
image.setDotsPerMeterY(dpm);

Это не будет точно 300 точек на дюйм (это на самом деле 299,9994), так как функции работают только с целыми значениями. Но для всех намерений и целей это достаточно хорошо (299,9994 против 300 вполне неплохо, я бы сказал).

8

Другие решения

В метре 39,37 дюйма. Так:

Окружение:

qimage.setDotsPerMeterX(xdpi * 39.37);
qimage.setDotsPerMeterY(ydpi * 39.37);

Получение:

xdpi = qimage.dotsPerMeterX() / 39.37;
ydpi = qimage.dotsPerMeterY() / 39.37;
0

По вопросам рекламы [email protected]