更新记录
1.0.0(2026-09-22)
下载此版本
- Initial Release
- 支持 iOS 平台 PNG 格式图片转 JPG。
- 支持 0-100 范围的图片压缩质量设置。
- 使用 Swift
Data 结构体实现底层文件写入。
- 引入
Atomic Write (原子写入) 机制,保障文件系统安全性。
- 适配 uni-app x 最新 UTS 规范。
平台兼容性
uni-app(3.8.4)
| Vue2 |
Vue2插件版本 |
Vue3 |
Vue3插件版本 |
Chrome |
Safari |
app-vue |
app-vue插件版本 |
app-nvue |
app-nvue插件版本 |
Android |
iOS |
iOS插件版本 |
鸿蒙 |
| √ |
1.0.0 |
√ |
1.0.0 |
× |
× |
√ |
1.0.0 |
√ |
1.0.0 |
× |
12 |
1.0.0 |
× |
| 微信小程序 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
小红书小程序 |
快应用-华为 |
快应用-联盟 |
| × |
√ |
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
uni-app x(3.8.4)
| Chrome |
Safari |
Android |
iOS |
iOS插件版本 |
鸿蒙 |
微信小程序 |
| × |
× |
× |
12 |
1.0.0 |
× |
× |
qz-pngtojpg - 高性能 PNG 转 JPG 插件 (iOS 专用)
插件简介
本插件是基于 uni-app x 开发的 UTS 原生插件,专为 iOS 平台设计。通过调用 iOS 原生 UIKit 和 Foundation 框架,实现将本地 PNG 图片转换为 JPG 格式,并提供高质量的体积压缩功能。
核心优势
- 高性能:直接调用 Swift
Data 结构体进行底层编码,速度极快。
- 体积压缩:支持 0-100 质量调节,能显著减小 PNG 图片占用的存储空间。
- 安全可靠:采用 Atomic(原子性) 写入模式,确保图片保存过程中不会因闪退导致文件损坏。
- 轻量级:代码精简,无第三方库依赖。
适用环境
安装方式
- 将插件导入到项目的
uni_modules 目录下。
API 说明
convertPngToJpg
将本地 PNG 路径转换为 JPG 路径。
参数说明
| 参数名 |
类型 |
必填 |
默认值 |
说明 |
| sourcePath |
String |
是 |
- |
原始 PNG 图片的本地路径 (支持 file:// 前缀) |
| qualityScore |
Number |
是 |
- |
压缩质量分数,取值 0 - 100。建议值 70-80。 |
返回值
- String | null:转换成功则返回新图片的本地路径 (
file://...),失败返回 null。
代码示例
<script setup>
import { convertPngToJpg } from '@/uni_modules/qz-pngtojpg';
const startConvert = () => {
const pngPath = "file:///var/mobile/Containers/Data/Application/.../test.png";
// 转换并设置质量为 80
const jpgPath = convertPngToJpg(pngPath, 80);
if (jpgPath) {
console.log("转换成功:", jpgPath);
} else {
console.error("转换失败,请检查路径及日志");
}
};
</script>
注意事项
- 透明度:PNG 转 JPG 时,原始图片的透明区域将自动变为黑色。
- 真机测试:涉及原生 API 调用,无法在浏览器中模拟,必须使用真机或模拟器。