From 8c54f2053007075cdb338e3e409e012a8511c065 Mon Sep 17 00:00:00 2001 From: "ester.zhou" Date: Tue, 2 Aug 2022 17:22:12 +0800 Subject: [PATCH] update docs Signed-off-by: ester.zhou --- .../figures/en-us_image_0000001211898466.gif | Bin 5570 -> 31893 bytes .../ts-universal-attributes-border.md | 96 +++++++++++++----- .../ts-universal-attributes-image-effect.md | 15 +-- .../ts-universal-attributes-text-style.md | 44 ++++---- .../arkui-ts/ts-universal-events-click.md | 6 +- 5 files changed, 102 insertions(+), 59 deletions(-) diff --git a/en/application-dev/reference/arkui-ts/figures/en-us_image_0000001211898466.gif b/en/application-dev/reference/arkui-ts/figures/en-us_image_0000001211898466.gif index 89da584f60db920d0801f9e40138a56fd4242fd3..794e6fea1ccbe37ea7bac2dc93b57333fa412ead 100644 GIT binary patch literal 31893 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 z�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 b=wIa+JmMH-b4=cHOs6^jT;)I@!14bB9 **NOTE** > > The APIs of this module are supported since API version 7. Updates will be marked with a superscript to indicate their earliest API version. > > The border of a component is displayed above the content of its child components since API version 9. - -You can set border styles for components. - - ## Required Permissions None @@ -20,21 +18,42 @@ None | Name| Type| Default Value| Description| | -------- | -------- | -------- | -------- | -| border | BorderOptions | - | Unified border style.| -| borderStyle | BorderStyle |  BorderStyle.Solid | Border style of an element.| -| borderWidth | Length | 0 | Border width of an element.| -| borderColor | Color | - | Border color of an element.| -| borderRadius | Length | 0 | Border radius of an element.| +| border | BorderOptions | - | Unified border style.| +| borderStyle | BorderStyle | BorderStyle.Solid | Border style of an element.| +| borderWidth | Length | 0 | Border width of an element.| +| borderColor | [ResourceColor](../../ui/ts-types.md) | - | Border color of an element.| +| borderRadius | Length | 0 | Border radius of an element.| - BorderOptions | Name| Type| Default Value| Mandatory| Description| | -------- | -------- | -------- | -------- | -------- | - | width | [Length](../../ui/ts-types.md) | 0 | No| Border width.| - | color | [ResourceColor](../../ui/ts-types.md) | 'Black' | No| Border color.| + | width | [Length](../../ui/ts-types.md) \| EdgeWidth9+ | 0 | No| Border width.| + | color | [ResourceColor](../../ui/ts-types.md) \|EdgeColor9+ | 'Black' | No| Border color.| | radius | [Length](../../ui/ts-types.md)\| EdgeRadiuses9+ | 0 | No| Border radius.| - | style | BorderStyle | BorderStyle.Solid | No| Border style.| + | style | BorderStyle \| EdgeStyle9+ | BorderStyle.Solid | No| Border style.| + + +- EdgeWidth9+ + + To reference this object, at least one parameter must be passed. + | Name | Type | Mandatory | Default Value | Description | + | ------ | ------ | --------- | ------------- | --------------------------- | + | left | length | No | 0 | Width of the left border. | + | right | length | No | 0 | Width of the right border. | + | top | length | No | 0 | Width of the top border. | + | bottom | length | No | 0 | Width of the bottom border. | +- EdgeColor9+ + + To reference this object, at least one parameter must be passed. + + | Name | Type | Mandatory | Default Value | Description | + | ------ | ------------------------------------- | --------- | ------------- | --------------------------- | + | left | [ResourceColor](../../ui/ts-types.md) | No | 'Black' | Color of the left border. | + | right | [ResourceColor](../../ui/ts-types.md) | No | 'Black' | Color of the right border. | + | top | [ResourceColor](../../ui/ts-types.md) | No | 'Black' | Color of the top border. | + | bottom | [ResourceColor](../../ui/ts-types.md) | No | 'Black' | Color of the bottom border. | - EdgeRadiuses9+ To reference this object, at least one parameter must be passed. @@ -46,15 +65,23 @@ None | bottomLeft | length | No | 0 | Radius of the lower-left rounded corner.| | bottomRight | length | No | 0 | Radius of the lower-right rounded corner.| - - +- EdgeStyle9+ + + To reference this object, at least one parameter must be passed. + + | Name | Type | Mandatory | Default Value | Description | + | ------ | ----------- | --------- | ----------------- | --------------------------- | + | left | BorderStyle | No | BorderStyle.Solid | Style of the left border. | + | right | BorderStyle | No | BorderStyle.Solid | Style of the right border. | + | top | BorderStyle | No | BorderStyle.Solid | Style of the top border. | + | bottom | BorderStyle | No | BorderStyle.Solid | Style of the bottom border. | - BorderStyle enums | Name| Description| | -------- | -------- | | Dotted | Dotted border. The radius of a dot is half of **borderWidth**.| | Dashed | Dashed border.| - | Solid | Solid border.| + | Solid | Solid border.| ## Example @@ -65,20 +92,33 @@ None @Component struct BorderExample { build() { - Flex({ justifyContent: FlexAlign.SpaceAround, alignItems: ItemAlign.Center }) { - // Dashed border - Text('dashed') + Column() { + Flex({ justifyContent: FlexAlign.SpaceAround, alignItems: ItemAlign.Center }) { + // Dashed border + Text('dashed') .borderStyle(BorderStyle.Dashed).borderWidth(5).borderColor(0xAFEEEE).borderRadius(10) - .width(120).height(120).textAlign(TextAlign.Center).fontSize(16) - Text('dashed') - .borderStyle(BorderStyle.Dashed).borderWidth(5).borderColor(0xAFEEEE) - .borderRadius({ topLeft: 10, topRight: 20, bottomLeft: 30, bottomRight: 60 }) - .width(120).height(120).textAlign(TextAlign.Center).fontSize(16) - // Dotted border - Text('dotted') - .border({ width: 5, color: 0x317AF7, radius: 10, style: BorderStyle.Dotted }) - .width(120).height(120).textAlign(TextAlign.Center).fontSize(16) - }.width('100%').height(150) + .width(120).height(120).textAlign(TextAlign.Center).fontSize(16) + // Dotted border + Text('dotted') + .border({ width: 5, color: 0x317AF7, radius: 10, style: BorderStyle.Dotted }) + .width(120).height(120).textAlign(TextAlign.Center).fontSize(16) + }.width('100%').height(150) + Text('.border') + .fontSize(50) + .width(300) + .height(300) + .border({ + width: { left: '5lpx', right: '10lpx', top: '20lpx', bottom: '30lpx' }, + color: { left: '#e3bbbb', right: Color.Blue, top: Color.Red, bottom: Color.Green }, + radius: { topLeft: 10, topRight: 20, bottomLeft: 40, bottomRight: 80 }, + style: { + left: BorderStyle.Dotted, + right: BorderStyle.Dotted, + top: BorderStyle.Solid, + bottom: BorderStyle.Dashed + } + }).textAlign(TextAlign.Center) + } } } ``` diff --git a/en/application-dev/reference/arkui-ts/ts-universal-attributes-image-effect.md b/en/application-dev/reference/arkui-ts/ts-universal-attributes-image-effect.md index 5efa02368b..38d5e790c7 100644 --- a/en/application-dev/reference/arkui-ts/ts-universal-attributes-image-effect.md +++ b/en/application-dev/reference/arkui-ts/ts-universal-attributes-image-effect.md @@ -1,7 +1,9 @@ -# Image Effect Configuration +# Image Effects +Image effects include background blur, content blur, grayscale, and much more. > **NOTE** +> > This attribute is supported since API version 7. Updates will be marked with a superscript to indicate their earliest API version. @@ -17,21 +19,22 @@ None | -------- | -------- | -------- | -------- | | blur | number | - | Adds the content blurring for the current component. The input parameter is the blur radius. The larger the radius is, the more blurred the content is. If the value is **0**, the content is not blurred. | | backdropBlur | number | - | Adds the background blur effect for the current component. The input parameter is the blur radius. The larger the radius is, the more blurred the background is. If the value is **0**, the background is not blurred. | -| shadow | {
radius: number,
color?: Color,
offsetX?: number,
offsetY?: number
} | - | Adds the shadow effect to the current component. The input parameters are the fuzzy radius (mandatory), shadow color (optional; gray by default), X-axis offset (optional and 0 by default), and Y-axis offset (optional; 0 by default). The offset unit is px. | -| grayscale | number | 0.0 | The value indicates the grayscale conversion ratio. If the input value is **1.0**, the image is converted into a grayscale image. If the input value is **0.0**, the image does not change. If the input value is between **0.0** and **1.0**, the effect changes in linear mode. The unit is percentage. The unit is percentage. | +| shadow | {
radius: number,
color?: Color \| string \| [Resource](../../ui/ts-types.md),
offsetX?: number,
offsetY?: number
} | - | Adds the shadow effect to the current component. The input parameters are the fuzzy radius (mandatory), shadow color (optional; gray by default), X-axis offset (optional and 0 by default), and Y-axis offset (optional; 0 by default). The offset unit is px. | +| grayscale | number | 0.0 | Converts the input image to grayscale. The value indicates the grayscale conversion ratio. If the input value is **1.0**, the image is converted into a grayscale image. If the input value is **0.0**, the image does not change. If the input value is between **0.0** and **1.0**, the effect changes in linear mode. The unit is percentage. The unit is percentage. | | brightness | number | 1.0 | Adds a brightness to the current component. The input parameter is a brightness ratio. The value **1** indicates no effects. The value **0** indicates the complete darkness. If the value is less than **1**, the brightness decreases. If the value is greater than **1**, the brightness increases. A larger value indicates a higher brightness. | | saturate | number | 1.0 | Adds the saturation effect to the current component. The saturation is the ratio of the chromatic component to the achromatic component (gray) in a color. When the input value is **1**, the source image is displayed. When the input value is greater than **1**, a higher percentage of the chromatic component indicates a higher saturation. When the input value is less than **1**, a higher percentage of the achromatic component indicates a lower saturation. The unit is percentage. | | contrast | number | 1.0 | Adds the contrast effect to the current component. The input parameter is a contrast value. If the value is **1**, the source image is displayed. If the value is greater than **1**, a larger value indicates a higher contrast and a clearer image. If the value is less than **1**, a smaller value indicates a lower contrast is. If the value is **0**, the image becomes all gray. The unit is percentage. | | invert | number | 0 | Inverts the input image. The input parameter is an image inversion ratio. The value **1** indicates complete inversion. The value **0** indicates that the image does not change. The unit is percentage. | -| colorBlend 8+ | Color | - | Adds the color blend effect to the current component. The input parameter is the blended color. | +| colorBlend 8+ | Color \| string \| [Resource](../../ui/ts-types.md) | - | Adds the color blend effect to the current component. The input parameter is the blended color. | | sepia | number | 0 | Converts the image color to sepia. The input parameter is an image inversion ratio. The value **1** indicates the image is completely sepia. The value **0** indicates that the image does not change. The unit is percentage. | -| hueRotate | number \| string | '0deg' |Adds the hue rotation effect to the current component. The input parameter is a rotation angle. If the input value is **0deg**, the image does not change (because the default rotation angle is **0deg**). The input parameter does not have the maximum value. If the value exceeds **360deg**, the image is rotated for one more circle. In other words, the value **370deg** has the same effect as **10deg**.| +| hueRotate | number \| string | '0deg' | Adds the hue rotation effect to the current component. The input parameter is a rotation angle. If the input value is **0deg**, the image does not change (because the default rotation angle is **0deg**). The input parameter does not have the maximum value. If the value exceeds **360deg**, the image is rotated for one more circle. In other words, the value **370deg** has the same effect as **10deg**.| ## Example -``` +```ts +// xxx.ets @Entry @Component struct ImageEffectsExample { diff --git a/en/application-dev/reference/arkui-ts/ts-universal-attributes-text-style.md b/en/application-dev/reference/arkui-ts/ts-universal-attributes-text-style.md index a4d33eff40..84c2a96cd2 100644 --- a/en/application-dev/reference/arkui-ts/ts-universal-attributes-text-style.md +++ b/en/application-dev/reference/arkui-ts/ts-universal-attributes-text-style.md @@ -1,13 +1,12 @@ # Text Style +The text style attribute is used to set the style for text in a component. -> ![icon-note.gif](public_sys-resources/icon-note.gif) **NOTE** +> **NOTE** +> > This attribute is supported since API version 7. Updates will be marked with a superscript to indicate their earliest API version. -The attributes described in this topic are used to set the text style for a component that contains text. - - ## Required Permissions None @@ -16,37 +15,38 @@ None ## Attributes - | Name | Type | Default Value | Description | +| Name | Type | Default Value | Description | | -------- | -------- | -------- | -------- | -| fontColor | Color | - | Text color. | -| fontSize | Length | - | Text size. If the value is of the number type, the unit fp is used. | -| fontStyle | FontStyle | FontStyle.Normal | Font style of the text. | -| fontWeight | number \| FontWeight | FontWeight.Normal | Font weight. For the number type, the value ranges from 100 to 900, at an interval of 100. The default value is **400**. A larger value indicates a larger font weight.
For common values of the **FontWeight** type, see **FontWeight** enums. | -| fontFamily | string | - | Font family of the text. Use commas (,) to separate multiple fonts. The priority the fonts is the sequence in which they are placed. An example value is **Arial, sans-serif**. | +| fontColor | [ResourceColor](../../ui/ts-types.md) | - | Text color. | +| fontSize | Length \| [Resource](../../ui/ts-types.md) | - | Text size. If the value is of the number type, the unit fp is used. | +| fontStyle | FontStyle | FontStyle.Normal | Font style of the text. | +| fontWeight | number \| FontWeight \| string | FontWeight.FontWeightNormal | Font weight. For the number type, the value ranges from 100 to 900, at an interval of 100. The default value is **400**. A larger value indicates a larger font weight.
For common values of the **FontWeight** type, see **FontWeight** enums. | +| fontFamily | string \| [Resource](../../ui/ts-types.md) | - | Font family of the text. Use commas (,) to separate multiple fonts. The priority the fonts is the sequence in which they are placed. An example value is **Arial, sans-serif**. | - FontStyle enums - | Name | Description | + | Name | Description | | -------- | -------- | - | Normal | Standard font style. | - | Italic | Italic font style. | + | Normal | Standard font style. | + | Italic | Italic font style. | - FontWeight enums - | Name | Description | + | Name | Description | | -------- | -------- | - | Lighter | The font weight is lighter. | - | Normal | The font weight is normal. | - | Regular | The font weight is regular. | - | Medium | The font weight is medium. | - | Bold | The font weight is bold. | - | Bolder | The font weight is bolder. | + | Lighter | The font weight is lighter. | + | Normal | The font weight is normal. | + | Regular | The font weight is regular. | + | Medium | The font weight is medium. | + | Bold | The font weight is bold. | + | Bolder | The font weight is bolder. | ## Example - -``` + +```ts +// xxx.ets @Entry @Component struct TextStyleExample { diff --git a/en/application-dev/reference/arkui-ts/ts-universal-events-click.md b/en/application-dev/reference/arkui-ts/ts-universal-events-click.md index cc1d167f4d..68bfbb92de 100644 --- a/en/application-dev/reference/arkui-ts/ts-universal-events-click.md +++ b/en/application-dev/reference/arkui-ts/ts-universal-events-click.md @@ -15,7 +15,7 @@ None | Name | Bubbling Supported | Description | | -------- | -------- | -------- | -| onClick(callback: (event?: ClickEvent) => void) | No | Called when a click event occurs. For details about the event parameters, see [ClickEvent](#clickevent). | +| onClick(callback: (event?: ClickEvent) => void) | No | Called when a click event occurs. For details about the event parameters, see **ClickEvent**. | ## ClickEvent @@ -41,8 +41,8 @@ None | -------- | -------- | -------- | | width | number | Width of the target element, in vp. | | height | number | Height of the target element, in vp. | -| position | [Position](#position8) | Position of the upper left corner of the target element relative to that of the parent element. | -| globalPosition | [Position](#position8) | Position of the upper left corner of the target element relative to that of the page. | +| position | Position | Position of the upper left corner of the target element relative to that of the parent element. | +| globalPosition | Position | Position of the upper left corner of the target element relative to that of the page. | ## Position8+ -- GitLab