1# @ohos.graphics.sendableColorSpaceManager (可共享的色彩管理) 2 3<!--Kit: ArkGraphics 2D--> 4<!--Subsystem: Graphic--> 5<!--Owner: @xubo85--> 6<!--Designer: @comicchang; @wang-luyu4--> 7<!--Tester: @zhaoxiaoguang2--> 8<!--Adviser: @ge-yafang--> 9 10本模块提供管理抽象化色域对象的一些基础能力,包括可共享的色彩管理的创建与可共享的色域基础属性的获取等。 11 12> **说明:** 13> 14> 本模块首批接口从API version 12开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 15 16## 导入模块 17 18```ts 19import { sendableColorSpaceManager } from '@kit.ArkGraphics2D'; 20``` 21 22## ISendable 23type ISendable = lang.ISendable 24 25ISendable是所有Sendable类型(除null和undefined)的父类型。自身没有任何必须的方法和属性。 26 27**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 28 29| 类型 | 说明 | 30| ------------------ | ------------------------ | 31| [lang.ISendable](../apis-arkts/js-apis-arkts-lang.md#langisendable) | 所有Sendable类型的父类型。 | 32 33## sendableColorSpaceManager.create 34 35create(colorSpaceName: colorSpaceManager.ColorSpace): ColorSpaceManager 36 37创建标准可共享的色彩管理。 38 39**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 40 41**参数:** 42 43| 参数名 | 类型 | 必填 | 说明 | 44| --------------- | ------------------------ | ---- | -----------------------------| 45| colorSpaceName | [colorSpaceManager.ColorSpace](js-apis-colorSpaceManager.md#colorspace)| 是 | 标准色域类型枚举值。<br>UNKNOWN与CUSTOM不可用于直接创建色域对象。 | 46 47**返回值:** 48 49| 类型 | 说明 | 50| ------------------ | ------------------------ | 51| [ColorSpaceManager](#colorspacemanager) | 返回当前创建的可共享的色彩管理实例。<br>该实例继承ISendable,可以在ArkTS并发实例间(包括主线程、TaskPool&Worker工作线程)传递,传递的行为是引用传递,参考[Sendable使用场景](../../arkts-utils/sendable-guide.md)。 | 52 53**错误码:** 54 55以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[色彩管理错误码](errorcode-colorspace-manager.md)。 56 57| 错误码ID | 错误信息 | 58| ------- | ----------------------- | 59| 401 | Parameter error. Possible cause: 1.Incorrect parameter type. 2.Parameter verification failed.| 60| 18600001 | The parameter value is abnormal. | 61 62**示例:** 63 64```ts 65import { colorSpaceManager, sendableColorSpaceManager } from '@kit.ArkGraphics2D'; 66let colorSpace: sendableColorSpaceManager.ColorSpaceManager; 67colorSpace = sendableColorSpaceManager.create(colorSpaceManager.ColorSpace.SRGB); 68``` 69 70## sendableColorSpaceManager.create 71 72create(primaries: colorSpaceManager.ColorSpacePrimaries, gamma: number): ColorSpaceManager 73 74创建用户自定义可共享的色彩管理实例。 75 76**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 77 78**参数:** 79 80| 参数名 | 类型 | 必填 | 说明 | 81| --------------- | ------------------------------------------ | ---- | -----------------------------| 82| primaries | [colorSpaceManager.ColorSpacePrimaries](js-apis-colorSpaceManager.md#colorspaceprimaries)| 是 | 色域标准三原色。 | 83| gamma | number | 是 | 色域gamma值,取值为大于0的浮点数。| 84 85**返回值:** 86 87| 类型 | 说明 | 88| ------------------ | ------------------------ | 89| [ColorSpaceManager](#colorspacemanager) | 返回当前创建的可共享的色彩管理实例。<br>色域类型定义为[colorSpaceManager.ColorSpace](js-apis-colorSpaceManager.md#colorspace)枚举值`CUSTOM`。<br>该实例继承ISendable,可以在ArkTS并发实例间(包括主线程、TaskPool&Worker工作线程)传递,传递的行为是引用传递,参考[Sendable使用场景](../../arkts-utils/sendable-guide.md)。 | 90 91**错误码:** 92 93以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[色彩管理错误码](errorcode-colorspace-manager.md)。 94 95| 错误码ID | 错误信息 | 96| ------- | ----------------------- | 97| 401 | Parameter error. Possible cause: 1.Incorrect parameter type. 2.Parameter verification failed.| 98| 18600001 | The parameter value is abnormal. | 99 100**示例:** 101 102```ts 103import { colorSpaceManager, sendableColorSpaceManager } from '@kit.ArkGraphics2D'; 104let colorSpace: sendableColorSpaceManager.ColorSpaceManager; 105let primaries: colorSpaceManager.ColorSpacePrimaries = { 106 redX: 0.1, 107 redY: 0.1, 108 greenX: 0.2, 109 greenY: 0.2, 110 blueX: 0.3, 111 blueY: 0.3, 112 whitePointX: 0.4, 113 whitePointY: 0.4 114}; 115let gamma: number = 2.2; 116colorSpace = sendableColorSpaceManager.create(primaries, gamma); 117``` 118 119## ColorSpaceManager 120 121当前可共享的色彩管理实例。 122 123下列API示例中都需先使用[create()](#sendablecolorspacemanagercreate)获取到ColorSpaceManager实例,再通过此实例调用对应方法。 124 125### getColorSpaceName 126 127getColorSpaceName(): colorSpaceManager.ColorSpace 128 129获取色域类型。 130 131**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 132 133**返回值:** 134 135| 类型 | 说明 | 136| ------------------ | ------------------------ | 137| [colorSpaceManager.ColorSpace](js-apis-colorSpaceManager.md#colorspace) | 返回色域类型枚举值。 | 138 139**错误码:** 140 141以下错误码的详细介绍请参见[色彩管理错误码](errorcode-colorspace-manager.md)。 142 143| 错误码ID | 错误信息 | 144| ------- | ----------------------- | 145| 18600001 | The parameter value is abnormal. | 146 147**示例:** 148 149```ts 150let spaceName: colorSpaceManager.ColorSpace = colorSpace.getColorSpaceName(); 151``` 152 153### getWhitePoint 154 155getWhitePoint(): collections.Array\<number\> 156 157获取色域白点值。 158 159**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 160 161**返回值:** 162 163| 类型 | 说明 | 164| ------------------ | ------------------------ | 165| [collections.Array\<number\>](../apis-arkts/arkts-apis-arkts-collections-Array.md) | 返回色域白点值[x, y]。 | 166 167**错误码:** 168 169以下错误码的详细介绍请参见[色彩管理错误码](errorcode-colorspace-manager.md)。 170 171| 错误码ID | 错误信息 | 172| ------- | ----------------------- | 173| 18600001 | The parameter value is abnormal. | 174 175**示例:** 176 177```ts 178import { collections } from '@kit.ArkTS'; 179let point: collections.Array<number> = colorSpace.getWhitePoint(); 180``` 181 182### getGamma 183 184getGamma(): number 185 186获取色域gamma值。 187 188**系统能力:** SystemCapability.Graphic.Graphic2D.ColorManager.Core 189 190**返回值:** 191 192| 类型 | 说明 | 193| ------------------ | ------------------------ | 194| number | 返回色域gamma值。 | 195 196**错误码:** 197 198以下错误码的详细介绍请参见[色彩管理错误码](errorcode-colorspace-manager.md)。 199 200| 错误码ID | 错误信息 | 201| ------- | ----------------------- | 202| 18600001 | The parameter value is abnormal. | 203 204**示例:** 205 206```ts 207let gamma: number = colorSpace.getGamma(); 208```