0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙ArkTS媒体组件:Line

jf_46214456 来源:jf_46214456 作者:jf_46214456 2024-07-17 10:25 次阅读

Line

直线绘制组件。

说明:
开发前请熟悉鸿蒙开发指导文档 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。

子组件

接口

Line(value?: {width?: string | number, height?: string | number})

从API version 9开始,该接口支持在ArkTS卡片中使用。

参数

参数名参数类型必填默认值参数描述
widthstringnumber0
heightstringnumber0

属性

除支持[通用属性]外,还支持以下属性:

名称类型默认值描述
startPointArray[0, 0]直线起点坐标点(相对坐标),单位vp。 从API version 9开始,该接口支持在ArkTS卡片中使用。**说明:**异常值按照默认值处理。
endPointArray[0, 0]直线终点坐标点(相对坐标),单位vp。 从API version 9开始,该接口支持在ArkTS卡片中使用。**说明:**异常值按照默认值处理。
fill[ResourceColor]Color.Black设置填充区域颜色。 从API version 9开始,该接口支持在ArkTS卡片中使用。**说明:**Line组件无法形成闭合区域,该属性设置无效。
fillOpacitynumberstring[Resource]
stroke[ResourceColor]-设置边框颜色,不设置时,默认没有边框线条。 从API version 9开始,该接口支持在ArkTS卡片中使用。**说明:**异常值不会绘制边框线条。
strokeDashArrayArray[]设置线条间隙。 从API version 9开始,该接口支持在ArkTS卡片中使用。**说明:**异常值按照默认值处理。
strokeDashOffsetnumberstring0
strokeLineCap[LineCapStyle]LineCapStyle.Butt设置线条端点绘制样式。 从API version 9开始,该接口支持在ArkTS卡片中使用。
strokeLineJoin[LineJoinStyle]LineJoinStyle.Miter设置线条拐角绘制样式。 从API version 9开始,该接口支持在ArkTS卡片中使用。**说明:**Line组件无法形成拐角,该属性设置无效。
strokeMiterLimitnumberstring4
strokeOpacitynumberstring[Resource]
strokeWidthLength1设置线条宽度。 从API version 9开始,该接口支持在ArkTS卡片中使用。**说明:**该属性若为string类型, 暂不支持百分比。 异常值按照默认值处理。
antiAliasbooleantrue是否开启抗锯齿效果。 从API version 9开始,该接口支持在ArkTS卡片中使用。HarmonyOSOpenHarmony鸿蒙文档籽料:mau123789是v直接拿

QQ截图20240715201923.png

示例

示例1

// xxx.ets
@Entry
@Component
struct LineExample {
  build() {
    Column({ space: 10 }) {
      // 线条绘制的起止点坐标均是相对于Line组件本身绘制区域的坐标
      Line()
        .width(200)
        .height(150)
        .startPoint([0, 0])
        .endPoint([50, 100])
        .stroke(Color.Black)
        .backgroundColor('#F5F5F5')
      Line()
        .width(200)
        .height(150)
        .startPoint([50, 50])
        .endPoint([150, 150])
        .strokeWidth(5)
        .stroke(Color.Orange)
        .strokeOpacity(0.5)
        .backgroundColor('#F5F5F5')
      // strokeDashOffset用于定义关联虚线strokeDashArray数组渲染时的偏移
      Line()
        .width(200)
        .height(150)
        .startPoint([0, 0])
        .endPoint([100, 100])
        .stroke(Color.Black)
        .strokeWidth(3)
        .strokeDashArray([10, 3])
        .strokeDashOffset(5)
        .backgroundColor('#F5F5F5')
      // 当坐标点设置的值超出Line组件的宽高范围时,线条会画出组件绘制区域
      Line()
        .width(50)
        .height(50)
        .startPoint([0, 0])
        .endPoint([100, 100])
        .stroke(Color.Black)
        .strokeWidth(3)
        .strokeDashArray([10, 3])
        .backgroundColor('#F5F5F5')
    }
  }
}

zh-cn_image_0000001219982725

示例2

// xxx.ets
@Entry
@Component
struct LineExample1 {
  build() {
    Row({ space: 10 }) {
      // 当LineCapStyle值为Butt时
      Line()
        .width(100)
        .height(200)
        .startPoint([50, 50])
        .endPoint([50, 200])
        .stroke(Color.Black)
        .strokeWidth(20)
        .strokeLineCap(LineCapStyle.Butt)
        .backgroundColor('#F5F5F5').margin(10)
      // 当LineCapStyle值为Round时
      Line()
        .width(100)
        .height(200)
        .startPoint([50, 50])
        .endPoint([50, 200])
        .stroke(Color.Black)
        .strokeWidth(20)
        .strokeLineCap(LineCapStyle.Round)
        .backgroundColor('#F5F5F5')
      // 当LineCapStyle值为Square时
      Line()
        .width(100)
        .height(200)
        .startPoint([50, 50])
        .endPoint([50, 200])
        .stroke(Color.Black)
        .strokeWidth(20)
        .strokeLineCap(LineCapStyle.Square)
        .backgroundColor('#F5F5F5')
    }
  }
}

zh-cn_image1_0000001219982725

示例3

// xxx.ets
@Entry
@Component
struct LineExample {
  build() {
    Column() {
      Line()
        .width(300)
        .height(30)
        .startPoint([50, 30])
        .endPoint([300, 30])
        .stroke(Color.Black)
        .strokeWidth(10)
      // 设置strokeDashArray的数组间隔为 50
      Line()
        .width(300)
        .height(30)
        .startPoint([50, 20])
        .endPoint([300, 20])
        .stroke(Color.Black)
        .strokeWidth(10)
        .strokeDashArray([50])
      // 设置strokeDashArray的数组间隔为 50, 10
      Line()
        .width(300)
        .height(30)
        .startPoint([50, 20])
        .endPoint([300, 20])
        .stroke(Color.Black)
        .strokeWidth(10)
        .strokeDashArray([50, 10])
      // 设置strokeDashArray的数组间隔为 50, 10, 20
      Line()
        .width(300)
        .height(30)
        .startPoint([50, 20])
        .endPoint([300, 20])
        .stroke(Color.Black)
        .strokeWidth(10)
        .strokeDashArray([50, 10, 20])
      // 设置strokeDashArray的数组间隔为 50, 10, 20, 30
      Line()
        .width(300)
        .height(30)
        .startPoint([50, 20])
        .endPoint([300, 20])
        .stroke(Color.Black)
        .strokeWidth(10)
        .strokeDashArray([50, 10, 20, 30])

    }
  }
}

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 组件
    +关注

    关注

    1

    文章

    512

    浏览量

    17828
  • Line
    +关注

    关注

    0

    文章

    26

    浏览量

    11621
  • 鸿蒙
    +关注

    关注

    57

    文章

    2352

    浏览量

    42860
收藏 人收藏

    评论

    相关推荐

    鸿蒙开发基础-Web组件之cookie操作

    }) ... } ... 本文章主要是对鸿蒙开发当中ArkTS语言的基础应用实战,Web组件里的cookie操作。更多的鸿蒙应用开发威廉希尔官方网站 ,可以前往我的主页学习更多,下面是一张
    发表于 01-14 21:31

    鸿蒙ArkTS的起源和简介

    ArkTS在TS的类型系统的基础上,做了进一步的扩展:定义了各种装饰器、自定义组件和UI描述机制,再配合UI开发框架中的UI内置组件、事件方法、属性方法等共同构成了应用开发的主体。在应用开发中,除了UI
    发表于 01-16 16:23

    鸿蒙开发之ArkTS基础知识

    一、ArkTS简介 ArkTS是HarmonyOS优选的主力应用开发语言。它在TypeScript(简称TS)的基础上,匹配了鸿蒙的ArkUI框架,扩展了声明式UI、状态管理等相应的能力,让开发者以
    的头像 发表于 01-24 16:44 2268次阅读
    <b class='flag-5'>鸿蒙</b>开发之<b class='flag-5'>ArkTS</b>基础知识

    鸿蒙实战开发ArkTS运用:【ai聊天框】

    用一个ArkTS编写的HarmonyOS原生聊天UI框架,提供了开箱即用的聊天对话组件
    的头像 发表于 03-08 15:38 961次阅读
    <b class='flag-5'>鸿蒙</b>实战开发<b class='flag-5'>ArkTS</b>运用:【ai聊天框】

    鸿蒙ArkTS声明式组件:XComponent

    可用于EGL/OpenGLES和媒体数据写入,并显示在XComponent组件
    的头像 发表于 07-05 09:56 695次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>ArkTS</b>声明式<b class='flag-5'>组件</b>:XComponent

    鸿蒙ArkTS容器组件:Flex

    以弹性方式布局子组件的容器组件
    的头像 发表于 07-08 10:19 507次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>ArkTS</b>容器<b class='flag-5'>组件</b>:Flex

    鸿蒙ArkTS容器组件:GridCol

    栅格子组件,必须作为栅格容器组件([GridRow])的子组件使用。
    的头像 发表于 07-08 15:17 405次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>ArkTS</b>容器<b class='flag-5'>组件</b>:GridCol

    鸿蒙ArkTS容器组件:RowSplit

    将子组件横向布局,并在每个子组件之间插入一根纵向的分割线。
    的头像 发表于 07-11 22:25 344次阅读

    鸿蒙ArkTS容器组件:Scroll

    可滚动的容器组件,当子组件的布局尺寸超过父组件的尺寸时,内容可以滚动。
    的头像 发表于 07-12 15:24 1238次阅读

    鸿蒙ArkTS容器组件:Stack

    堆叠容器,子组件按照顺序依次入栈,后一个子组件覆盖前一个子组件
    的头像 发表于 07-15 18:23 879次阅读

    鸿蒙ArkTS媒体组件:Video

    用于播放视频文件并控制其播放状态的组件
    的头像 发表于 07-16 09:35 361次阅读

    鸿蒙ArkTS媒体组件:Ellipse

    椭圆绘制组件
    的头像 发表于 07-16 15:20 295次阅读

    鸿蒙ArkTS媒体组件:Polyline

    折线绘制组件
    的头像 发表于 07-17 09:43 271次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>媒体</b><b class='flag-5'>组件</b>:Polyline

    鸿蒙ArkTS媒体组件:Polygon

    多边形绘制组件
    的头像 发表于 07-17 15:05 338次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>媒体</b><b class='flag-5'>组件</b>:Polygon

    鸿蒙ArkTS媒体组件:Path

    路径绘制组件,根据绘制路径生成封闭的自定义形状。
    的头像 发表于 07-18 10:24 383次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>媒体</b><b class='flag-5'>组件</b>:Path