summaryrefslogtreecommitdiffstats
path: root/examples/declarative/aspectratio/scale_and_crop.qml
blob: a5409f95efab033cbce0f3b149bfabe055710039 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// The Image primitive does not have any special handling for maintaining
// aspect ratio. This example shows that you can provide whatever specific
// behaviour you like.
//
// Here, we implement "Scale and Crop" behaviour.
//
Rect {
    // default size: whole image, unscaled
    width: Image.width
    height: Image.height
    color: "gray"
    clip: true

    Image {
        id: Image
        source: "pics/face.png"
        x: (parent.width-width*scale)/2
        y: (parent.height-height*scale)/2
        scale: Math.max(parent.width/width,parent.height/height)
    }
}