circleImageView4cj 特性文档
介绍
circleImageView4cj 是一个图片处理库,可以将图片裁剪为圆形或者给图片设置边框。
1 图片裁剪为圆形或者给图片设置边框
1.1 CircleImageModel class API Description
图片裁剪数据
public class CircleImageModel {
/*
* 初始化图片裁剪数据。
*/
public init()
/*
* 设置裁剪大小,默认 0.0,单位 vp,若为负值,默认0.0。
*
* 参数 diameter - 裁剪大小
* 返回值 CircleImageModel - 图片裁剪数据实例
*/
public func setDiameter(diameter: Float64): CircleImageModel
/*
* 设置图片地址。
*
* 参数 src - 图片地址,参考 cangjieUI API
* 返回值 CircleImageModel - 图片裁剪数据实例
*/
public func setImageURI(src: CJResource): CircleImageModel
/*
* 设置图片缩放类型,默认 ImageFit.Contain。
*
* 参数 scaleType - 缩放类型,参考 cangjieUI API
* 返回值 CircleImageModel - 图片裁剪数据实例
*/
public func setScaleType(scaleType: ImageFit): CircleImageModel
/*
* 设置是否禁用图片圆形属性。
*
* 参数 disableCircularTransformation - 默认 true
* 返回值 CircleImageModel - 图片裁剪数据实例
*/
public func setDisableCircularTransformation(disableCircularTransformation: Bool): CircleImageModel
/*
* 判断是否禁用图片圆形属性。
*
* 返回值 Bool
*/
public func isDisableCircularTransformation(): Bool
/*
* 设置圆背景颜色,默认 Color(0xffffff)。
*
* 参数 color - 圆背景颜色
* 返回值 CircleImageModel - 图片裁剪数据实例
*/
public func setCircleBackgroundColor(color: Color): CircleImageModel
/*
* 设置边框宽度,默认 0.0 vp,若为负值,默认0.0。
*
* 参数 borderWidth - 边框宽度
* 返回值 CircleImageModel - 图片裁剪数据实例
*/
public func setBorderWidth(borderWidth: Float64): CircleImageModel
/*
* 设置边框颜色。
*
* 参数 borderColor - 边框颜色
* 返回值 CircleImageModel - 图片裁剪数据实例
*/
public func setBorderColor(borderColor: Color): CircleImageModel
/*
* 获取边框颜色。
*
* 返回值 Color - 边框颜色
*/
public func getBorderColor(): Color
/*
* 获取裁剪大小,若为负值,默认0.0。
*
* 返回值 Float64 - 裁剪大小
*/
public func getDiameter(): Float64
/*
* 获取图片地址。
*
* 返回值 CJResource - 图片地址
*/
public func getImageURI(): CJResource
/*
* 获取图片缩放类型。
*
* 返回值 ImageFit - 图片缩放类型
*/
public func getScaleType(): ImageFit
/*
* 获取圆背景颜色。
*
* 返回值 Color - 圆背景颜色
*/
public func getCircleBackgroundColor(): Color
/*
* 获取边框宽度,若为负值,默认0.0。
*
* 返回值 Float64 - 边框宽度
*/
public func getBorderWidth(): Float64
}
1.2 CircleImageView Component API Description
自定义图片裁剪组件
@Component
public class CircleImageView {
@Link
var model: CircleImageModel = CircleImageModel()
}
1.3 示例
import ohos.base.*
import ohos.component.*
import ohos.state_manage.*
import ohos.state_macro_manage.*
import circleimageview.*
@Entry
@Component
class EntryView {
@State
var data: CircleImageModel = CircleImageModel()
protected override func aboutToAppear() {
this.data = this.data.setImageURI(@r(app.media.hugh)).setDiameter(200.0).setBorderWidth(5.0).setBorderColor(
Color.WHITE).setScaleType(ImageFit.Fill).setDisableCircularTransformation(false)
}
func build() {
Column() {
List(space: 0, initialIndex: 0) {
ListItem() {
Column(5) {
CircleImageView(model: data)
}.align(Alignment.Center).width(200).height(200)
}.height(50.percent).width(100.percent)
ListItem() {
Column(5) {
CircleImageView(model: data)
}.align(Alignment.Center)
}.height(50.percent).backgroundColor(0x000000).width(100.percent)
}.width(100.percent).margin(top: 5)
}
}
}