[文章]HarmonyOS/OpenHarmony应用开发-ArkTS画布组件CanvasRenderingContext2D对象(十一)

阅读量0
0
0

measureText

measureText(text: string): TextMetrics

该方法返回一个文本测算的对象,通过该对象可以获取指定文本的宽度值。
shot (10).png

示例

00001. // xxx.ets

00002. @Entry

00003. @Component

00004. struct MeasureText {

00005.   private settings: RenderingContextSettings = new RenderingContextSettings(true)

00006.   private context: CanvasRenderingContext2D = new CanvasRenderingContext2D(this.settings)

00007. 

00008.   build() {

00009.     Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {

00010.       Canvas(this.context)

00011.         .width('100%')

00012.         .height('100%')

00013.         .backgroundColor('#ffff00')

00014.         .onReady(() =>{

00015.           this.context.font = '50px sans-serif'

00016.           this.context.fillText("Hello World!", 20, 100)

00017.           this.context.fillText("width:" + this.context.measureText("Hello World!").width, 20, 200)

00018.       })

00019.     }

00020.     .width('100%')

00021.     .height('100%')

00022.   }

00023. }

图片1.png

stroke

stroke(path?: Path2D): void

进行边框绘制操作。
1.png

示例

00001. // xxx.ets

00002. @Entry

00003. @Component

00004. struct Stroke {

00005.   private settings: RenderingContextSettings = new RenderingContextSettings(true)

00006.   private context: CanvasRenderingContext2D = new CanvasRenderingContext2D(this.settings)

00007. 

00008.   build() {

00009.     Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) {

00010.       Canvas(this.context)

00011.         .width('100%')

00012.         .height('100%')

00013.         .backgroundColor('#ffff00')

00014.         .onReady(() =>{

00015.           this.context.moveTo(25, 25)

00016.           this.context.lineTo(25, 105)

00017.           this.context.lineTo(75, 105)

00018.           this.context.lineTo(75, 25)

00019.           this.context.strokeStyle = 'rgb(0,0,255)'

00020.           this.context.stroke()

00021.         })

00022.     }

00023.     .width('100%')

00024.     .height('100%')

00025.   }

00026. }

图片2.png

回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友