Adjust fontsize up on highdpi displays (#3610)
This commit is contained in:
parent
abe4f5ca60
commit
477faafb84
3 changed files with 9 additions and 6 deletions
|
@ -77,14 +77,14 @@ void AbstractCardItem::transformPainter(QPainter *painter, const QSizeF &transla
|
||||||
|
|
||||||
QRectF totalBoundingRect = painter->combinedTransform().mapRect(boundingRect());
|
QRectF totalBoundingRect = painter->combinedTransform().mapRect(boundingRect());
|
||||||
|
|
||||||
resetPainterTransform(painter);
|
int scale = resetPainterTransform(painter);
|
||||||
|
|
||||||
painter->translate(totalBoundingRect.width() / 2, totalBoundingRect.height() / 2);
|
painter->translate(totalBoundingRect.width() / 2, totalBoundingRect.height() / 2);
|
||||||
painter->rotate(angle);
|
painter->rotate(angle);
|
||||||
painter->translate(-translatedSize.width() / 2, -translatedSize.height() / 2);
|
painter->translate(-translatedSize.width() / 2, -translatedSize.height() / 2);
|
||||||
|
|
||||||
QFont f;
|
QFont f;
|
||||||
f.setPixelSize(fontSize);
|
f.setPixelSize(fontSize * scale);
|
||||||
|
|
||||||
painter->setFont(f);
|
painter->setFont(f);
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,8 +49,11 @@ void AbstractGraphicsItem::paintNumberEllipse(int number,
|
||||||
|
|
||||||
painter->restore();
|
painter->restore();
|
||||||
}
|
}
|
||||||
void resetPainterTransform(QPainter *painter)
|
|
||||||
|
int resetPainterTransform(QPainter *painter)
|
||||||
{
|
{
|
||||||
painter->resetTransform();
|
painter->resetTransform();
|
||||||
painter->setTransform(painter->deviceTransform().inverted());
|
auto tx = painter->deviceTransform().inverted();
|
||||||
}
|
painter->setTransform(tx);
|
||||||
|
return tx.isScaling() ? 1.0 / tx.m11() : 1;
|
||||||
|
}
|
||||||
|
|
|
@ -26,6 +26,6 @@ public:
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
void resetPainterTransform(QPainter *painter);
|
int resetPainterTransform(QPainter *painter);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue