img_Conv函数
函数名:img_图片转换 / img_Conv
函数功能
实现多种图片格式之间的转换,支持BMP、JPG、GIF、TIFF、PNG格式,且可选保留透明通道并输出转换后文件的Base64编码。
参数规范
| 参数名 | 类型 | 必填 | 示例 | 特殊说明 |
|---|---|---|---|---|
imagePath | String | 是 | "C:\\images\\input.jpg" | 原始图片文件路径,需确保文件存在 |
targetFormat | Int | 是 | 5 | 目标格式编码,1=BMP, 2=JPG, 3=GIF, 4=TIFF, 5=PNG |
savePath | String | 否 | "C:\\images\\output.png" | 转换后图片保存路径,空则不保存 |
preserveTransparency | Bool | 否 | true | 是否保留透明通道,仅PNG格式有效 |
basse64 | Bool | 否 | false | 是否返回转换后的Base64字符串,默认返回状态文本 |
使用案例
基础格式转换
问题描述:将JPG图片转换为PNG格式并保存 公式演示:
excel
=img_Conv("C:\\pic\\photo.jpg", 5, "C:\\pic\\photo_converted.png")输出效果:
转换完成返回Base64编码
问题描述:将图片转换为BMP格式并返回Base64编码,方便嵌入其他系统 公式演示:
excel
=img_Conv("C:\\pic\\image.gif", 1, "", FALSE, TRUE)输出效果(示例):
Qk1... (Base64编码字符串)保留透明通道
问题描述:转换PNG图片,保持透明背景 公式演示:
excel
=img_Conv("C:\\pic\\transparent.png", 5, "C:\\pic\\transparent_out.png", TRUE)输出效果:
转换完成技术说明
格式映射
1=> BMP2=> JPEG3=> GIF4=> TIFF5=> PNG
透明通道处理
仅在目标格式为PNG且preserveTransparency为真时,使用带透明背景的新Bitmap绘制原图以保留透明效果。
异常处理
| 错误场景 | 返回值 |
|---|---|
| 文件不存在 | 错误:文件不存在 |
| 不支持的格式代码 | 错误:不支持的格式代码 |
| 其他异常 | 转换失败: 异常信息 |
扩展应用
批量图片格式转换
结合Excel的拖拽和批量处理功能,快速批量转换多张图片格式。
嵌入系统使用Base64
返回Base64格式可方便直接在HTML、数据库或API中嵌入图片数据。
注:本函数依赖.NET System.Drawing库,建议在支持该库的环境下使用,兼容WPS与Excel。