1 #ifndef DALI_TEXT_ABSTRACTION_TEXT_TYPE_DEFINITIONS_H
2 #define DALI_TEXT_ABSTRACTION_TEXT_TYPE_DEFINITIONS_H
5 * Copyright (c) 2022 Samsung Electronics Co., Ltd.
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
22 #include <dali/devel-api/text-abstraction/font-list.h>
23 #include <dali/devel-api/text-abstraction/font-metrics.h>
24 #include <dali/devel-api/text-abstraction/glyph-info.h>
25 #include <dali/devel-api/text-abstraction/script.h>
26 #include <dali/devel-api/text-abstraction/text-abstraction-definitions.h>
34 typedef TextAbstraction::FontId FontId; ///< The unique identifier for a font face (generated by FontClient).
35 typedef TextAbstraction::FontWidth::Type FontWidth; ///< The font's width.
36 typedef TextAbstraction::FontWeight::Type FontWeight; ///< The font's weight.
37 typedef TextAbstraction::FontSlant::Type FontSlant; ///< The font's slant.
38 typedef TextAbstraction::FontMetrics FontMetrics; ///< The metrics for a Font expressed in 26.6 fractional pixel format.
39 typedef TextAbstraction::PointSize26Dot6 PointSize26Dot6; ///< The point size in 26.6 fractional points.
40 typedef TextAbstraction::FaceIndex FaceIndex; ///< Used with fonts which allow several font faces.
41 typedef TextAbstraction::GlyphIndex GlyphIndex; ///< Uniquely identifies a glyph within a particular font.
42 typedef TextAbstraction::Character Character; ///< A UTF-32 representation of a character.
43 typedef TextAbstraction::GlyphInfo GlyphInfo; ///< The information describing a glyph (font ID, index, metrics).
44 typedef TextAbstraction::CharacterIndex CharacterIndex; ///< An index into an array of characters.
45 typedef TextAbstraction::Length Length; ///< The length of an array.
46 typedef TextAbstraction::BidiInfoIndex BidiInfoIndex; ///< Index to the bidirectional info for a paragraph.
47 typedef TextAbstraction::Script Script; ///< The character's script.
48 typedef TextAbstraction::LineBreakInfo LineBreakInfo; ///< Line break info (must break, allow break, no break). Possible values are: @e LINE_MUST_BREAK, @e LINE_ALLOW_BREAK and @e LINE_NO_BREAK (in the TextAbstraction namespace).
49 typedef TextAbstraction::WordBreakInfo WordBreakInfo; ///< Word break info (break, no break). Possible values are: @e WORD_BREAK and @e WORD_NO_BREAK (in the TextAbstraction namespace).
50 typedef TextAbstraction::CharacterDirection CharacterDirection; ///< The character's direction: @e false is left to right, @e true is right to left.
51 typedef TextAbstraction::ColorBlendingMode ColorBlendingMode; ///< Defines how a color is blended.
52 typedef TextAbstraction::ColorIndex ColorIndex; ///< An index into an array of colors.
54 typedef uint32_t GlyphIndex; ///< An index into an array of glyphs.
55 typedef uint32_t ScriptRunIndex; ///< An index into an array of script runs.
56 typedef uint32_t FontRunIndex; ///< An index into an array of font runs.
57 typedef uint32_t UnderlineRunIndex; ///< An index into an array of underline runs.
58 typedef uint32_t StrikethroughRunIndex; ///< An index into an array of underline runs.
59 typedef uint32_t BidirectionalRunIndex; ///< An index into an array of bidirectional info.
60 typedef uint32_t BidirectionalLineRunIndex; ///< An index into an array of bidirectional line info.
61 typedef uint32_t LineIndex; ///< An index into an array of lines.
62 typedef uint32_t ParagraphRunIndex; ///< An index into an array of paragraphs.
66 } // namespace Toolkit
70 #endif // DALI_TEXT_ABSTRACTION_TEXT_TYPE_DEFINITIONS_H