华为仓颉鸿蒙HarmonyOS NEXT仓颉存储canvas渲染的像素数据ImageBitmap

ImageBitmap对象可以存储canvas渲染的像素数据。

👇🏻👇🏻👇🏻求关注👇🏻👇🏻👇🏻

说明

ImageBitmap暂不支持混合页面场景。

子组件

构造函数

init(String)

public init(src: String)

通过图片路径创建ImageBitmap对象。

参数名 参数类型 必填 默认值 参数描述
src String - 图片的数据源支持本地图片。1、string格式用于加载本地图片,例如ImageBitmap("resource://RAWFILE/example.png")。2、支持本地图片类型:bmp、jpg、png、svg和webp类型。

init(String, Float64, Float64)

public init(src: String, width: Float64, height: Float64)

通过图片路径创建ImageBitmap对象。

参数名 参数类型 必填 默认值 参数描述
src String - 图片的数据源支持本地图片。1、string格式用于加载本地图片,例如ImageBitmap("resource://RAWFILE/example.png")。2、支持本地图片类型:bmp、jpg、png、svg和webp类型。
width Float64 - 矩形区域实际像素宽度。
height Float64 - 矩形区域实际像素高度。

init(String, Int64, Int64)

public init(src: String, width: Int64, height: Int64)

通过图片路径创建ImageBitmap对象。

参数名 参数类型 必填 默认值 参数描述
src String - 图片的数据源支持本地图片。1、string格式用于加载本地图片,例如ImageBitmap("resource://RAWFILE/example.png")。2、支持本地图片类型:bmp、jpg、png、svg和webp类型。
width Int64 - 矩形区域实际像素宽度。
height Int64 - 矩形区域实际像素高度。

示例代码

import kit.UIKit.*
    import kit.ImageKit.*
    import kit.AbilityKit.*
    import ohos.state_macro_manage.*
    
    @Entry
    @Component
    class SecondView {
        let img = ImageBitmap("resource://RAWFILE/startIcon.png")
        let settings: RenderingContextSettings = RenderingContextSettings(antialias: true)
        let context: CanvasRenderingContext2D = CanvasRenderingContext2D(this.settings)
        func build() {
            Row() {
                Column() {
                    Canvas(this.context).width(100.percent).height(100.percent).backgroundColor(0x00ff00)
                    .onReady({ =>
                        this.context.drawImage(this.img, 50.0, 30.0, 100.0, 100.0)
                    })
                }
            }
        }
    }

如对您有帮助,帮忙点个“在看 、关注” 让更多的人受益~!

技术交流群可加wx“LB-9191”备注cangjie

posted @ 2024-12-25 08:57  BisonLiu  阅读(44)  评论(0)    收藏  举报