-1
我正在使用GridView
创建一个画廊我从我的机器上的某个文件夹显示的图像。 图像具有不同的宽*高比。很少有肖像图像,其中图像的高度比宽度大3倍。有些图像是宽度约为高度3倍的地方。一些图像被平方。如何在不影响宽高比的情况下将纵向和横向图像显示在网格上的正方形上?
问题与我的画廊是我的每个Image
组件的每个Image
组成部分,你可以看到下面。这使得横向图像&得到错误拉伸,因为网格中的每个块都是正方形。从而导致图像的高宽比偏斜。
问题: 我怎么能保证我同时显示人像&景观图片到我的正方形无歪斜宽高比?我正在看一些广场上的一些黑色/灰色背景,在肖像或风景图像上留下空白?但可能还有其他的技巧。
代码:
import QtQuick 2.5
import Qt.labs.folderlistmodel 2.1
import QtQuick.Controls 1.1
import QtQml.Models 2.1
GridView {
cellHeight: height/2
cellWidth: width/2
clip: true
FolderListModel {
id: dir_model
folder: "/path/to/images/folder"
nameFilters: ["*.png"]
}
Component {
id: file_delegate
Image {
width: (parent.width)/2
height: (parent.width)/2
source: fileURL
}
}
model: dir_model
delegate: file_delegate
}
有无您尝试使用'fillMode:Image.PreserveAspe ctFit'在图像上? – Macias
完美。那是我需要的 –