1 /* 2 * Copyright (c) 2021-2022 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef C_INCLUDE_DRAWING_TEXT_DECLARATION_H 17 #define C_INCLUDE_DRAWING_TEXT_DECLARATION_H 18 19 /** 20 * @addtogroup Drawing 21 * @{ 22 * 23 * @brief Provides the 2D drawing capability. 24 * 25 * @syscap SystemCapability.Graphic.Graphic2D.NativeDrawing 26 * 27 * @since 8 28 * @version 1.0 29 */ 30 31 /** 32 * @file drawing_text_declaration.h 33 * 34 * @brief Declares the data structure related to text in 2D drawing. 35 * 36 * @since 8 37 * @version 1.0 38 */ 39 40 #ifdef __cplusplus 41 extern "C" { 42 #endif 43 44 /** 45 * @brief Defines an <b>OH_Drawing_FontCollection</b>, which is used to load fonts. 46 * 47 * @since 8 48 * @version 1.0 49 */ 50 typedef struct OH_Drawing_FontCollection OH_Drawing_FontCollection; 51 52 /** 53 * @brief Defines an <b>OH_Drawing_Typography</b>, which is used to manage the typography layout and display. 54 * 55 * @since 8 56 * @version 1.0 57 */ 58 typedef struct OH_Drawing_Typography OH_Drawing_Typography; 59 60 /** 61 * @brief Defines an <b>OH_Drawing_TextStyle</b>, which is used to manage text colors and decorations. 62 * 63 * @since 8 64 * @version 1.0 65 */ 66 typedef struct OH_Drawing_TextStyle OH_Drawing_TextStyle; 67 68 /** 69 * @brief Defines an <b>OH_Drawing_TypographyStyle</b>, which is used to manage the typography style, 70 * such as the text direction. 71 * 72 * @since 8 73 * @version 1.0 74 */ 75 typedef struct OH_Drawing_TypographyStyle OH_Drawing_TypographyStyle; 76 77 /** 78 * @brief Defines an <b>OH_Drawing_TypographyCreate</b>, which is used to create an <b>OH_Drawing_Typography</b> object. 79 * 80 * @since 8 81 * @version 1.0 82 */ 83 typedef struct OH_Drawing_TypographyCreate OH_Drawing_TypographyCreate; 84 85 /** 86 * @brief Defines an <b>OH_Drawing_TextBox</b>, which is used to create an <b>OH_Drawing_TextBox</b> object. 87 * 88 * @since 11 89 * @version 1.0 90 */ 91 typedef struct OH_Drawing_TextBox OH_Drawing_TextBox; 92 93 /** 94 * @brief Defines an <b>OH_Drawing_PositionAndAffinity</b>, 95 * which is used to create an <b>OH_Drawing_PositionAndAffinity</b> object. 96 * @since 11 97 * @version 1.0 98 */ 99 typedef struct OH_Drawing_PositionAndAffinity OH_Drawing_PositionAndAffinity; 100 101 /** 102 * @brief Defines an <b>OH_Drawing_Range</b>, which is used to create an <b>OH_Drawing_Range</b> object. 103 * 104 * @since 11 105 * @version 1.0 106 */ 107 typedef struct OH_Drawing_Range OH_Drawing_Range; 108 109 /** 110 * @brief Defines an <b>OH_Drawing_FontParser</b>, which is used to parse system font files. 111 * 112 * @since 12 113 * @version 1.0 114 */ 115 typedef struct OH_Drawing_FontParser OH_Drawing_FontParser; 116 117 /** 118 * @brief Defines an <b>OH_Drawing_TextShadow</b>, which is used to create an <b>OH_Drawing_TextShadow</b> object. 119 * 120 * @since 12 121 * @version 1.0 122 */ 123 typedef struct OH_Drawing_TextShadow OH_Drawing_TextShadow; 124 125 #ifdef __cplusplus 126 } 127 #endif 128 /** @} */ 129 #endif