鸿蒙HarmonyOS引用图片的方法

前言
image通过调用接口来创建,接口调用形式如下:
image(src: string | resource | media.pixelmap)  
该接口通过图片数据源获取图片,支持本地图片和网络图片的渲染展示。其中,src是图片的数据源。
加载图片资源
image支持加载存档图(重点)、多媒体像素图(了解即可)两种类型。
存档图类型数据源
存档图类型的数据源可以分为本地资源、网络资源、resource资源、媒体库资源和base64。
本地资源
创建文件夹,将本地图片放入ets文件夹下的任意位置。
image组件引入本地图片路径,即可显示图片(根目录为ets文件夹)。
image('images/view.jpg').width(200)  
网络资源
引入网络图片需申请权限ohos.permission.internet,具体申请方式请参考权限申请声明。此时,image组件的src参数为网络图片的链接。
image('https://www.example.com/example.jpg') // 实际使用时请替换为真实地址  
resource资源
使用资源格式可以跨包/跨模块引入图片,resources文件夹下的图片都可以通过$r资源接口读取到并转换到resource格式。
调用方式:
image($r('app.media.icon'))  
还可以将图片放在rawfile文件夹下。
还可以将图片放在rawfile文件夹下。
调用方式:
image($rawfile('snap'))  
媒体库file://data/storage
支持file://路径前缀的字符串,用于访问通过媒体库提供的图片路径。
a. 调用接口获取图库的照片url。
import picker from '@ohos.file.picker';@entry@componentstruct index { @state imgdatas: string[] = []; // 获取照片url集 getallimg() { let result = new array(); try { let photoselectoptions = new picker.photoselectoptions(); photoselectoptions.mimetype = picker.photoviewmimetypes.image_type; photoselectoptions.maxselectnumber = 5; let photopicker = new picker.photoviewpicker(); photopicker.select(photoselectoptions).then((photoselectresult) = > { this.imgdatas = photoselectresult.photouris; console.info('photoviewpicker.select successfully, photoselectresult uri: ' + json.stringify(photoselectresult)); }).catch((err) = > { console.error(`photoviewpicker.select failed with. code: ${err.code}, message: ${err.message}`); }); } catch (err) { console.error(`photoviewpicker failed with. code: ${err.code}, message: ${err.message}`); } } // abouttoappear中调用上述函数,获取图库的所有图片url,存在imgdatas中 async abouttoappear() { this.getallimg(); } // 使用imgdatas的url加载图片。 build() { column() { grid() { foreach(this.imgdatas, item = > { griditem() { image(item) .width(200) } }, item = > json.stringify(item)) } }.width('100%').height('100%') }}  
b. 从媒体库获取的url格式通常如下。
image('file://media/photos/5').width(200)  
base64
路径格式为data:image/[png|jpeg|bmp|webp];base64,[base64 data],其中[base64 data]为base64字符串数据。
base64格式字符串可用于存储图片的像素数据,在网页上使用较为广泛


中国移动正式启动了31个省分公司的通信工程设计集采项目
颜值性能两不误, 小米MIX2再次刷新手机圈记录!
车规级CXL SSD固态硬盘解决方案
MicroLED红光领域将成为未来Micro LED产业化的关键助力
OPPOR11什么时候上市?OPPOR11最新消息:配置惊喜、颜值依旧、性能提升5月15日见
鸿蒙HarmonyOS引用图片的方法
面向传导发射的电磁兼容试验整改方案
关于IGBT制造流程与模块结构及老化简介
新松协作机器人智能工厂
一文弄懂电能质量分析仪的功能特点及应用领域
戴森助力健康家居生活,专注冬季室内空气健康
工程机械减速机市场分析
创建UVM Testcase的步骤
宝骏3101.5L+6MT劲芯.劲全力配置,这样的宝骏310你会考虑吗?
灯光摄像就位!科学家让原子成为片场主角,一探量子科学的未来
一种基于HART协议的多通道数据测量的智能变送器
数字电源控制器UCD3138的主要特性及应用电路
工程师说 | 扩充车载32位MCU核心RH850/F1x系列产品阵容
氧传感器的检测方法
AI时代,教育部为教师建智能课堂