Я новичок в Qt и изучаю QPrinter / QPainter
Согласно документации, чтобы печатать в мм, координаты должны быть переведены в блок принтера, учитывая его разрешение. Итак, я написал следующий код:
qreal printInterface::convertFromMM(qreal in)
{
//1 inch = 25.4 mmm so
return in * (1/25.4) * mQPrinter->resolution();
}
Это нормально работает для печати строк и так далее.
Теперь я должен измерить текст, поэтому в соответствии с документацией я использовал класс QFontMetrics ().
Проблема в том, что Painter->fontMetrics().width(stringToMeasure)
возвращает ширину, согласно документации, в пикселях. Как я могу перевести это в мм?
Любая помощь будет оценена!
Просто обнаружил, что я совершил ошибку. Я могу использовать то же правило для FontMetrics.
Документация, однако, вводит в заблуждение, поскольку в ней говорится, что в качестве единицы используются пиксели.
Это приспособлено для художника.
Я тестировал, используя две строки и печатая текст внутри них. Измеряет нормально как при предварительном просмотре, так и на устройстве.
Спасибо за ваше время!
Других решений пока нет …