0
我試圖用qgraphicsitem中的輪廓繪製圖像。此圖像將具有不同的分辨率(640x380,1190 * 780,320 * 410),我必須繪製恆定的4px輪廓,而不考慮圖像的寬度和高度。我試圖採取圖像幾何的百分比,但對於不同大小的圖像輪廓正在改變。對於更高的分辨率,它看起來很薄,而對於較小的價值細線。在不同圖像分辨率下爲qgraphicsitem中的圖像添加輪廓
QFont segoeFont("Segoe Regular");
segoeFont.setPointSize(10);
painter->setFont(segoeFont);
painter->setRenderHints(QPainter::TextAntialiasing);
painter->setBrush(QColor(69,69,69));
if(meIsSelected)
{
painter->setBrush(QColor(65, 167, 243));
QPen pen(QColor(65, 167, 243), 2);
pen.setCosmetic(true);
}
painter->drawRect (this->boundingRect());
painter->drawImage (QPoint(0,0), mePixmap);
和我boundingRect()
回報mePixmap.rect().adjusted(-4,-4,4,4);
這個項目顯示爲視圖與fitInview
void GraphicsView::resizeEvent(QResizeEvent *event)
{
QGraphicsView::resizeEvent(event);
fitInView(this->scene()->sceneRect(),Qt::KeepAspectRatio) ;
}
我使用我的代碼編輯了我的帖子.. – Wagmare
您發佈的代碼顯示您調用painter-> setBrush,然後創建一支筆,但不要將該筆設置爲畫家。另外,如果你在圖像周圍返回image + 4px的boundingRect,我會認爲你需要調用painter-> drawImage(QPoint(4,4),mePixmap); – TheDarkKnight