HarmonyOS 图片文件写入成功,但在Image中不显示
图片文件写入成功,但在Image中不显示
Image(this.scrollImageFile) //不显示
private clickShare(context: CommonUIContext, fileUri: string) {
SnapshotHelper.loadPixelMap('centerScroll', (_error, pixels) => {
FileHelper.writeToImageFile(fileUri, pixels, () => {
this.shareBySystem(context, fileUri)
this.scrollImageFile = fileUri
})
})
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
Scenario:
import fs, { WriteOptions } from '@ohos.file.fs';
import { ImageHelper } from './ImageHelper';
import { BusinessError } from '@kit.BasicServicesKit';
import { TAG } from '../retrofit/HttpHelper';
export class FileHelper {
static writeToImageFile(filePath: string, imagePixels: PixelMap, callback: () => void) {
const width = 100
const height = 100
const buff = ImageHelper.readPixelsToBuffer(imagePixels, width, height)
let stream = fs.createStreamSync(filePath, 'w')
// let writeOption: WriteOptions = {
// offset: 0,
// length: buff.byteLength,
// encoding: 'utf-8' //WriteOptions只支持utf-8
// }
stream.write(buff, (err: BusinessError, bytesWritten: number) => {
if (err) {
console.error(TAG, "FileHelper,write stream failed with error message: " + err.message + ", error code: " + err.code)
} else {
if (bytesWritten) {
console.info(TAG, "FileHelper,write succeed and size is:" + bytesWritten);
stream.close()
}
}
if (callback) {
callback()
}
})
}
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
HarmonyOS
赞
收藏 0
回答 1
相关问题
HarmonyOS Image组件网络图片不显示
1498浏览 • 1回复 待解决
image组件,files目录的文件不显示
2444浏览 • 1回复 待解决
HarmonyOS Image组件不显示下载到本地的图片
2182浏览 • 2回复 待解决
HarmonyOS Image图片部分网络地址不显示
804浏览 • 1回复 待解决
HarmonyOS Image中的resizable()方法加载本地图片 偶发不显示
885浏览 • 1回复 待解决
HarmonyOS push通知不显示图片
678浏览 • 1回复 待解决
HarmonyOS Web组件不显示图片
698浏览 • 1回复 待解决
HarmonyOS web加载页面图片不显示
1569浏览 • 1回复 待解决
HarmonyOS 网络图片加载不显示
1478浏览 • 1回复 待解决
HarmonyOS 引用本地图片资源,路径中包含 # 号时图片不显示
1048浏览 • 1回复 待解决
HarmonyOS lottie显示图片不成功
746浏览 • 1回复 待解决
HarmonyOS Badge里面包了一个Image,想不显示Badge但显示Image如何操作
418浏览 • 1回复 待解决
HarmonyOS Image组件加载缓存文件中的图片问题
1935浏览 • 1回复 待解决
https链接的页面中,有的图片是http的,但是http的图片不显示。
2694浏览 • 1回复 待解决
onInterceptRequest拦截本地pdf文件,前端不显示
2442浏览 • 1回复 待解决
HarmonyOS Image组件无法显示网络图片
2420浏览 • 1回复 待解决
HarmonyOS Image显示GIF图片时的控制
891浏览 • 1回复 待解决
HarmonyOS CustomDialogController 不显示
1267浏览 • 1回复 待解决
Hi3861烧录1.1的源码成功后,按重启按钮显示屏不显示 求救!!!
9065浏览 • 3回复 待解决
HarmonyOS ContextMenu中的item点击不显示toast
549浏览 • 1回复 待解决
HarmonyOS Image如何显示base64的图片?
1320浏览 • 1回复 待解决
HarmonyOS fs open 向createasset创建的图片uri 写入数据流/数据块 失败,只能使用完整buffer写入成功
1196浏览 • 1回复 待解决
Image如何在多态下显示不同图片?
1130浏览 • 1回复 待解决
HarmonyOS webloadData不显示内容
631浏览 • 1回复 待解决
HarmonyOS toast不显示问题
737浏览 • 1回复 待解决
如果图片文件写入成功,但在Image组件中不显示,可能是因为没有正确获取图片的路径或URI。需要确保在Image组件的src属性中使用的是正确的图片路径或URI。如果使用了文件下载接口下载图片,请确保监听到下载任务接口并获取返回的token,然后通过token来获取图片的路径。
还需要查看一下fileUri的格式是不是符合Image的入参格式
image组件参考文档:
https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-basic-components-image-V5
路径上是要加的。
拿到文件的沙箱路径后,通过调用@ohos.file.fileuri模块的fileuri.getUriFromPath(file.path)将沙箱路径转化为沙箱uri,传入之后即可正常显示沙箱图片,接口参考如下:
https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-file-fileuri-V5