HarmonyOS开发16:Image组件

本文介绍了OHOS中对图片的处理方式,包括使用`clip_alignment`属性进行图像剪切,如左上角显示,以及通过`scale_mode`属性实现图像的缩放,如`zoom_start`模式使图片按比例缩放并从起始端显示。通过实例展示了不同设置下的图片显示效果。
摘要由CSDN通过智能技术生成

常见的属性:

属性名称功能说明
background_element (通用属性)图片背景
image_src展示图片/前景图片
clip_alignment图像裁剪对齐方式
scale_mode图像缩放类型

在这里插入图片描述

第一种情况:

<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout
    xmlns:ohos="http://schemas.huawei.com/res/ohos"
    ohos:height="match_parent"
    ohos:width="match_parent"
    ohos:alignment="center"
    ohos:orientation="vertical">

    <Image
        ohos:height="1000px"
        ohos:width="1000px"
        ohos:image_src="$media:girl1"
        ohos:background_element="#0000ff"
        />
        
</DirectionalLayout>

结果图:
在这里插入图片描述

图片剪切与缩放

图片剪切显示:

  • 代码中:可以用setClipGravity方法
  • xml文件中:可以用clip_alignment属性
    • 上、下、左、右、居中
    • 表示分别按照上、下、左、右、中间部位进行剪切。

图片缩放显示:

  • 代码中:可以用setScaleMode方法
  • xml文件中:可以用scale_mode属性
    • inside:表示将原图按比例缩放到与Image相同或更小的尺寸,并居中显示。 有可能不会填充组件
    • center:表示不缩放,按Image大小显示原图中间部分。
    • stretch:表示将原图缩放到与Image大小一致。 拉伸。将组件填充。
    • clip_center:表示将原图按比例缩放到与Image相同或更大的尺寸,并居中显示。超过组件的部分被剪切掉。
    • zoom_center:表示原图按照比例缩放到与Image最窄边一致,并居中显示。
    • zoom_end:表示原图按照比例缩放到与Image最窄边一致,并靠结束端显示。
    • zoom_start:表示原图按照比例缩放到与Image最窄边一致,并靠起始端显示。

接下来看几个示例:

原图:在这里插入图片描述

xml:

<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout
    xmlns:ohos="http://schemas.huawei.com/res/ohos"
    ohos:height="match_parent"
    ohos:width="match_parent"
    ohos:alignment="center"
    ohos:orientation="vertical">

    <Image
        ohos:height="200px"
        ohos:width="200px"
        ohos:image_src="$media:girl1"
        ohos:background_element="#0000ff"
        ohos:clip_alignment="left|top"
        />
    
</DirectionalLayout>

结果:
在这里插入图片描述
显示的是图片左上角的200px * 200px

xml:

<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout
    xmlns:ohos="http://schemas.huawei.com/res/ohos"
    ohos:height="match_parent"
    ohos:width="match_parent"
    ohos:alignment="center"
    ohos:orientation="vertical">

    <Image
        ohos:height="1000px"
        ohos:width="1000px"
        ohos:image_src="$media:plane"
        ohos:background_element="#0000ff"
        ohos:scale_mode="zoom_start"
        />

</DirectionalLayout>

结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GeniusAng丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值