2016-06-22 2 views
1

Обновление с Qt 5.4 до Qt 5.6 сделало все мои значки .svg размытыми/пиксельными. Я заметил, что это происходит только на экранах с высокой плотностью, например, на моем MacBookPro Retina Display. Я прочитал документацию High DPI support в Qt 5.6, и я установил переменную среды QT_AUTO_SCREEN_SCALE_FACTOR=1, но она не имела большого эффекта. У кого-нибудь есть эта проблема? Я также нашел сообщение об ошибке this, которое, вероятно, относится к моему вопросу.Как сделать иконки svg снова четкими в Qt 5.6 на экранах с высоким разрешением DPI

EDIT 1:

Простой пример был бы:

Image { 
    source: my_icon.svg 
    sourceSize.width: 50 
    sourceSize.height: 50 
    anchor.centerIn: parent 
} 
+0

Какой масштабный фактор является ваш дисплей? Отчет об ошибках касается только десятичных значений. Если это десятичное значение, то отчет об ошибке является источником вашей проблемы. –

+0

Я не знаю, но если я заставляю масштабный коэффициент с 'QT_SCALE_FACTOR' с не десятичным значением, у меня такая же проблема. – Silex

ответ

0

Это некрасиво хак, но он сделал трюк:

Item { 
    property alias image: mySvgImage 

    implicitWidth: mySvgImage.paintedWidth 
    implicitHeight: mySvgImage.implicitHeight/Screen.devicePixelRatio 

    Image { 
     id: mySvgImage 

     sourceSize.width: width * Screen.devicePixelRatio 
     sourceSize.height: height * Screen.devicePixelRatio 
    } 
}