当前位置: 首页> 健康> 知识 > 鸿蒙项目打开相册,读取,显示图片

鸿蒙项目打开相册,读取,显示图片

时间:2025/8/23 9:15:42来源:https://blog.csdn.net/qq_38928048/article/details/142120986 浏览次数:0次

@ohos.file.photoAccessHelper (相册管理模块) 

该模块提供相册管理模块能力,包括创建相册以及访问、修改相册中的媒体数据信息等。

import { photoAccessHelper } from '@kit.MediaLibraryKit';
import { image } from '@kit.ImageKit';
import { fileIo as fs } from '@kit.CoreFileKit';@Entry
@Component
struct Index {@State getAlbum: string = '显示相册中的图片';@State pixel: image.PixelMap | undefined = undefined;@State albumPath: string = '';@State photoSize: number = 0;async getPictureFromAlbum() {// 拉起相册,选择图片let PhotoSelectOptions = new photoAccessHelper.PhotoSelectOptions();PhotoSelectOptions.MIMEType = photoAccessHelper.PhotoViewMIMETypes.IMAGE_TYPE;PhotoSelectOptions.maxSelectNumber = 1;let photoPicker = new photoAccessHelper.PhotoViewPicker();let photoSelectResult: photoAccessHelper.PhotoSelectResult = await photoPicker.select(PhotoSelectOptions);this.albumPath = photoSelectResult.photoUris[0];// 读取图片为bufferconst file = fs.openSync(this.albumPath, fs.OpenMode.READ_ONLY);this.photoSize = fs.statSync(file.fd).size;console.info('Photo Size: ' + this.photoSize);let buffer = new ArrayBuffer(this.photoSize);fs.readSync(file.fd, buffer);fs.closeSync(file);// 解码成PixelMapconst imageSource = image.createImageSource(buffer);console.log('imageSource: ' + JSON.stringify(imageSource));this.pixel = await imageSource.createPixelMap({});}build() {Row() {Column() {Image(this.pixel).width('100%').aspectRatio(1)Button('显示照片').onClick(() => {this.getPictureFromAlbum();})}.width('100%')}.height('100%')}
}

关键字:鸿蒙项目打开相册,读取,显示图片

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: