PyQt/图片/显示.9格式图片
2018-10-26 01:03:24 +08:00
..
pyd版本/QtNinePatch 显示.9格式图片 2018-10-26 01:03:24 +08:00
ScreenShot 显示.9格式图片 2018-10-26 01:03:24 +08:00
纯python版本1 显示.9格式图片 2018-10-26 01:03:24 +08:00
纯python版本2 显示.9格式图片 2018-10-26 01:03:24 +08:00
README.md 显示.9格式图片 2018-10-26 01:03:24 +08:00

.9格式图片显示(气泡)

什么叫.9.PNG呢这是安卓开发里面的一种特殊的图片 这种格式的图片在android 环境下具有自适应调节大小的能力。

1允许开发人员定义可扩展区域当需要延伸图片以填充比图片本身更大区域时可扩展区的内容被延展。

2允许开发人员定义内容显示区用于显示文字或其他内容

目前手机QQ中很多漂亮的的聊天气泡就是.9格式的png图片

在Github开源库中搜索到两个C++版本的

1.一个是NinePatchQt https://github.com/Roninsc2/NinePatchQt

2.一个是QtNinePatch https://github.com/soramimi/QtNinePatch

For PyQt

1、目前针对第一个库在2年前用纯python版本1参考源码重新写一个见

2、这次针对第二个写了纯python版本2的和pyd编译好的两个版本

说明

1、建议优先使用pyd版本的后续提供Python3.4 3.5 3.6 3.7 编译好的32为库文件也可以自行编译编译步骤见下文。

2、其次可以使用纯python版本2的个人觉得方便调用

3、最后再考虑纯python版本1的吧

4、以上为个人意见两个C++版本的写法不一样,但是核心算法应该是类似的。

自行编译

1、首先要安装好PyQt5、编译安装对应的sip、对应的VC++编译工具

2、用Qt Creator 打开pro文件进行编译

3、进入源码中的sip文件夹

4、修改configure.py文件

# 这里是你的VC版本和对应的Qt目录中的文件夹
config.platform = "win32-msvc2010"
qt_path = 'D:/soft/Qt/Qt5.5.1/5.5/msvc2010'

5、python configure.py

截图

截图1