Qt使用九宫格原理缩放图片

本文介绍了使用Qt实现九宫格图片缩放的方法,包括通过QSS的border-image属性和自绘两种方式。在QSS中,详细解释了border-image的参数设置,以避免图片在缩放时失真。自绘部分则讲解了如何将图片分割为9个部分,并在目标Widget区域内拉伸或平铺绘图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2020.07.21更新

一.QSS

关于九宫格,首先要学习下QSS的border-image,Qt Assistant中关于Border Image有如下介绍:
A border image is an image that is composed of nine parts (top left, top center, top right, center left, center, center right, bottom left, bottom center, and bottom right). When a border of a certain size is required, the corner parts are used as is, and the top, right, bottom, and left parts are stretched or repeated to produce a border with the desired size.
See the CSS3 Draft Specification for details.
Border Image是由九个部分(左上、中上、右上、左中、中、右中、左下、左下、中下和右下)组成的图像。当Border Image应用到指定目标时,四个角的部分原样使用,并拉伸或平铺顶部、右侧、底部和左侧部分,以生成符合目标尺寸的边框。
具体参考CSS3语法
也就是说border-image在贴图时可以指定参数,将图片分成九个部分,分别贴到目标的相应位置,即通常说的九宫格贴图。
9宫格缩放规则如下:
1、将一张图分割成9块
2、四个角(1、3、7、9)在缩放的时候是保持大小不变
3、图块2、8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

草上爬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值