HarmonyOS 鸿蒙Next 使用组件截图保存图片至相册有黑边

HarmonyOS 鸿蒙Next 使用组件截图保存图片至相册有黑边

//需要保存的图片渲染

@Builder
saveBuilder() {
Image(tools.getCdnUrl(this.imageUrlInfo))
.size({ width: px2vp(600), height: px2vp(600) })
.scale({ x: this.scaleNum, y: this.scaleNum })
.clipShape(this.circleOrRect == 0 ? new RectShape({ width: px2vp(600), height: px2vp(600), radius: px2vp(32) }) :
new CircleShape({ width: px2vp(600), height: px2vp(600) }))
}
//组件截图 通过安全控件保存
componentSnapshot.createFromBuilder(() => {
this.saveBuilder()
})
.then(async (pixmap: image.PixelMap) => {
this.saveToFile(pixmap);
this.startCollect(2)
}).catch((err: Error) => {
console.log("error: " + err)
showToast(snapshot err: ${<span class="hljs-built_in">JSON</span>.stringify(<span class="hljs-built_in">Error</span>)})
}) 

这样有个问题  保存至相册的图片 如果是 600*600的 rect会有四个角的圆角位置黑边  如果是 circle的话 除去中间的圆图 四周都是黑边   这种情况应该怎么能把黑边去掉


更多关于HarmonyOS 鸿蒙Next 使用组件截图保存图片至相册有黑边的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS 鸿蒙Next 使用组件截图保存图片至相册有黑边的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next在使用组件截图并保存图片至相册时出现黑边的问题,通常是由于截图区域设置不当或图片处理过程中存在裁剪或缩放操作导致。

  1. 检查截图区域: 确保截图区域正确设置,不包含任何不必要的边缘。可以在截图前进行坐标和尺寸的计算,确保完全覆盖目标区域。

  2. 图片处理: 在截图保存前,检查是否有对图片进行额外的裁剪或缩放操作。这些操作可能会引入黑边,尤其是在缩放比例不当或裁剪区域设置不准确时。

  3. 分辨率适配: 考虑目标设备的屏幕分辨率,确保截图与设备分辨率适配。如果截图分辨率与目标设备不匹配,可能会在保存时引入黑边。

  4. 保存格式与压缩: 检查保存图片时使用的格式和压缩参数。某些格式或压缩级别可能在保存时导致图像边缘出现黑边或失真。

  5. 检查系统日志: 查看系统日志,检查是否有关于图像处理或保存的警告或错误信息,这可能会提供额外的线索。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部