blob: 366d27bac45eab382fa834907644fbe34309c230 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
// 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 extend the "face_fit" example with animation to show how truly
// diverse and usage-specific behaviours are made possible by NOT putting a
// hard-coded aspect ratio feature into the Image primitive.
//
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: Follow {
source: Math.max(Math.min(Image.parent.width/Image.width*1.333,Image.parent.height/Image.height),
Math.min(Image.parent.width/Image.width,Image.parent.height/Image.height*1.333))
spring: 1
damping: 0.05
}
}
}
|