相关问题
控制颜色渐变,实现图形图像的那种颜色渐变的效果
1245浏览 • 1回复 待解决
HarmonyOS 应用开发ArkUI布局最佳实践
471浏览 • 1回复 待解决
HarmonyOS Chart图形
410浏览 • 1回复 待解决
HarmonyOS 第三方插件的最佳实践引用场景咨询
902浏览 • 2回复 待解决
【rust】有没有rust在HarmonyOS上的开发实践
1994浏览 • 1回复 待解决
#鸿蒙通关秘籍#处理鸿蒙应用中图文混合的复杂沉浸式场景的最佳实践是什么?
704浏览 • 1回复 待解决
HarmonyOS NEXT中ArkTS与Java/Kotlin的混合开发如何最佳实践?
984浏览 • 0回复 待解决
HarmonyOS 图像混合
236浏览 • 1回复 待解决
如何在多线程的场景下同时操作一块buffer进行图形绘制
2312浏览 • 1回复 待解决
HarmonyOS jsBridge 最佳实践
748浏览 • 1回复 待解决
复杂页面开发的场景下,在开发中精准控制组件更新?
671浏览 • 1回复 待解决
使用Drawing实现图形绘制与显示
1392浏览 • 1回复 待解决
HarmonyOS 图像模糊虚化效果
198浏览 • 1回复 待解决
如何处理复杂 SVG 图形的交互?
361浏览 • 0回复 待解决
XComponent、openGL实现3D图形绘制
2375浏览 • 1回复 待解决
XComponent、NativeDrawing实现2D图形绘制
1613浏览 • 1回复 待解决
#鸿蒙学习大百科#大型应用模块化开发最佳实践有哪些?
772浏览 • 1回复 待解决
HarmonyOS 图像裁剪的demo
707浏览 • 1回复 待解决
HarmonyOS 事件传递最佳实践咨询
482浏览 • 1回复 待解决
隐私安全页面跳转实践
3325浏览 • 1回复 待解决
分组列表实践(嵌套列表)
1460浏览 • 1回复 待解决
web写入customUseragent最佳实践
777浏览 • 1回复 待解决
使用Native、XComponent和EGL绘制图形
1473浏览 • 1回复 待解决
分组列表最佳实践,希望提供一个完善的分组列表最佳实践。
1533浏览 • 1回复 待解决
接入开发时,请求参数的签名、结果验签在什么场景使用?
1722浏览 • 1回复 待解决
显示图片
开发中一般使用Image组件显示图片,接口格式为Image(src: PixelMap | ResourceStr | DrawableDescriptor),可分为三类,图片资源、经过图片编码后得到的PixelMap以及API 10新增的DrawableDescriptor。
图片资源
存档图类型数据源
存档图类型的数据源可以分为本地资源、网络资源、Resource资源、媒体库datashare资源和base64。
1. 图片路径为resources/base/media
2. 还可以将图片放在rawfile文件夹下,此时图片需要加后缀名
使用picker模块可选择图库中的图片,返回图片url,用于界面上的显示
1. 调用接口获取图库照片的url
2. 从媒体库获取的url格式通常如下。
多媒体像素图
PixelMap是图片解码后的像素图,以下示例将本地rawfile文件夹下的图片解码成PixelMap格式,再显示在Image组件上。
1. 解码
2. 显示
图片的一些属性
alt: string | Resource 加载时显示的占位图,支持本地图片。
objectFit: ImageFit 设置图片的缩放类型。
名称
描述
Contain
保持宽高比进行缩小或者放大,使得图片完全显示在显示边界内。
Cover
保持宽高比进行缩小或者放大,使得图片两边都大于或等于显示边界。
Auto
自适应显示
Fill
不保持宽高比进行放大缩小,使得图片充满显示边界。
ScaleDown
保持宽高比显示,图片缩小或者保持不变。
None
保持原有尺寸显示。
opacity: number | Resource 元素的不透明度,取值范围为0到1,1表示不透明,0表示完全透明, 达到隐藏组件效果,但是在布局中占位。 默认值:1
blur: number 取值范围大于等于0,为当前组件添加内容模糊效果,入参为模糊半径,模糊半径越大越模糊,为0时不模糊。
grayscale: 为当前组件添加灰度效果。值定义为灰度转换的比例,入参1.0则完全转为灰度图像,入参则0.0图像无变化,入参在0.0和1.0之间时,效果呈线性变化。
brightness: 为当前组件添加高光效果,入参为高光比例,值为1时没有效果,小于1时亮度变暗,0为全黑,大于1时亮度增加,数值越大亮度越大。
图片解码
解码支持的文件包括png,jpeg,bmp,gif,webp,RAW。
1. 导入image模块
2. 创建ImageSource 使用image.createImageSource(src: urlString | fdNumber | arrayBuffer)创建ImageSource
3. 创建PixekMap
图片处理
利用之前解码出来的pixelMap,我们可以对图片进行一些效果处理,例如旋转、缩放、翻转等。
接口功能
API名称
设置透明度
opacity(rate: number)
缩放
scale(x: number, y: number)
平移
translate(x: number, y: number)
旋转
rotate(angle: number)
翻转
flip(horizontal: boolean, vertical: boolean)
裁剪
crop(region: Region)
示例
图片编码
1. 导入image模块
2. 打包PixelMap
生成图片
1. 导入mediaLibrary和fs模块
2. 创建图片资源 需要申请‘ohos.permission.READ_MEDIA’,‘ohos.permission.WRITE_MEDIA’,'ohos.permission.MEDIA_LOCATION’权限
3. 写入数据