ICU 56.1: playout.h Source File

ICU 56.1 56.1

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

- File List
- Globals

playout.h
Go to the documentation of this file.
1 /*
2 *
3 * (C) Copyright IBM Corp. 1998-2011 - All Rights Reserved
4 *
5 */
6
7 #ifndef __PLAYOUT_H
8 #define __PLAYOUT_H
9
10 /*
11 * ParagraphLayout doesn't make much sense without
12 * BreakIterator...
13 */
14 #include "unicode/ubidi.h"
15 #if ! UCONFIG_NO_BREAK_ITERATION
16 #ifndef U_HIDE_INTERNAL_API
17
18 #include "layout/LETypes.h"
19 #include "plruns.h"
20
35 typedef void pl_paragraph;
36
42 typedef void pl_line;
43
49 typedef void pl_visualRun;
50
96 U_INTERNAL pl_paragraph * U_EXPORT2
97 pl_create(const LEUnicode chars[],
98 le_int32 count,
99 const pl_fontRuns *fontRuns,
100 const pl_valueRuns *levelRuns,
101 const pl_valueRuns *scriptRuns,
102 const pl_localeRuns *localeRuns,
103 UBiDiLevel paragraphLevel,
104 le_bool vertical,
105 LEErrorCode *status);
106
116 U_INTERNAL void U_EXPORT2
117 pl_close(pl_paragraph *paragraph);
118
132 U_INTERNAL le_bool U_EXPORT2
133 pl_isComplex(const LEUnicode chars[],
134 le_int32 count);
135
147 U_INTERNAL UBiDiLevel U_EXPORT2
148 pl_getParagraphLevel(pl_paragraph *paragraph);
149
161 U_INTERNAL UBiDiDirection U_EXPORT2
162 pl_getTextDirection(pl_paragraph *paragraph);
163
179 U_INTERNAL le_int32 U_EXPORT2
180 pl_getAscent(const pl_paragraph *paragraph);
181
192 U_INTERNAL le_int32 U_EXPORT2
193 pl_getDescent(const pl_paragraph *paragraph);
194
205 U_INTERNAL le_int32 U_EXPORT2
206 pl_getLeading(const pl_paragraph *paragraph);
207
215 U_INTERNAL void U_EXPORT2
216 pl_reflow(pl_paragraph *paragraph);
217
236 U_INTERNAL pl_line * U_EXPORT2
237 pl_nextLine(pl_paragraph *paragraph, float width);
238
248 U_INTERNAL void U_EXPORT2
249 pl_closeLine(pl_line *line);
250
260 U_INTERNAL le_int32 U_EXPORT2
261 pl_countLineRuns(const pl_line *line);
262
273 U_INTERNAL le_int32 U_EXPORT2
274 pl_getLineAscent(const pl_line *line);
275
286 U_INTERNAL le_int32 U_EXPORT2
287 pl_getLineDescent(const pl_line *line);
288
299 U_INTERNAL le_int32 U_EXPORT2
300 pl_getLineLeading(const pl_line *line);
301
313 U_INTERNAL le_int32 U_EXPORT2
314 pl_getLineWidth(const pl_line *line);
315
332 U_INTERNAL const pl_visualRun * U_EXPORT2
333 pl_getLineVisualRun(const pl_line *line, le_int32 runIndex);
334
349 U_INTERNAL const le_font * U_EXPORT2
350 pl_getVisualRunFont(const pl_visualRun *run);
351
362 U_INTERNAL UBiDiDirection U_EXPORT2
363 pl_getVisualRunDirection(const pl_visualRun *run);
364
374 U_INTERNAL le_int32 U_EXPORT2
375 pl_getVisualRunGlyphCount(const pl_visualRun *run);
376
389 U_INTERNAL const LEGlyphID * U_EXPORT2
390 pl_getVisualRunGlyphs(const pl_visualRun *run);
391
407 U_INTERNAL const float * U_EXPORT2
408 pl_getVisualRunPositions(const pl_visualRun *run);
409
422 U_INTERNAL const le_int32 * U_EXPORT2
423 pl_getVisualRunGlyphToCharMap(const pl_visualRun *run);
424
435 U_INTERNAL le_int32 U_EXPORT2
436 pl_getVisualRunAscent(const pl_visualRun *run);
437
448 U_INTERNAL le_int32 U_EXPORT2
449 pl_getVisualRunDescent(const pl_visualRun *run);
450
461 U_INTERNAL le_int32 U_EXPORT2
462 pl_getVisualRunLeading(const pl_visualRun *run);
463
464 #endif /* U_HIDE_INTERNAL_API */
465 #endif
466 #endif
pl_getVisualRunLeading
le_int32 pl_getVisualRunLeading(const pl_visualRun *run)
A convenience method which returns the leading value for the font associated with this run...
pl_localeRuns
void pl_localeRuns
Opaque datatype representing an array of locale runs.
Definition: plruns.h:30
pl_close
void pl_close(pl_paragraph *paragraph)
Close the given paragraph layout object.
pl_getVisualRunDescent
le_int32 pl_getVisualRunDescent(const pl_visualRun *run)
A convenience method which returns the descent value for the font associated with this run...
pl_valueRuns
void pl_valueRuns
Opaque datatype representing an array of value runs.
Definition: plruns.h:26
pl_getVisualRunFont
const le_font * pl_getVisualRunFont(const pl_visualRun *run)
Get the le_font object which represents the font of the visual run.
ubidi.h
C API: Bidi algorithm.
pl_getLineWidth
le_int32 pl_getLineWidth(const pl_line *line)
Get the width of the line.
pl_paragraph
void pl_paragraph
The opaque type for a paragraph layout.
Definition: playout.h:35
pl_getVisualRunGlyphs
const LEGlyphID * pl_getVisualRunGlyphs(const pl_visualRun *run)
Get the glyphs in the visual run.
pl_create
pl_paragraph * pl_create(const LEUnicode chars[], le_int32 count, const pl_fontRuns *fontRuns, const pl_valueRuns *levelRuns, const pl_valueRuns *scriptRuns, const pl_localeRuns *localeRuns, UBiDiLevel paragraphLevel, le_bool vertical, LEErrorCode *status)
Construct a ParagraphLayout object for a styled paragraph.
pl_getLineAscent
le_int32 pl_getLineAscent(const pl_line *line)
Get the ascent of the line.
pl_getAscent
le_int32 pl_getAscent(const pl_paragraph *paragraph)
Get the max ascent value for all the fonts in the paragraph.
pl_getLeading
le_int32 pl_getLeading(const pl_paragraph *paragraph)
Return the max leading value for all the fonts in the paragraph.
U_INTERNAL
#define U_INTERNAL
This is used to declare a function as an internal ICU C API.
Definition: umachine.h:117
UBiDiLevel
uint8_t UBiDiLevel
UBiDiLevel is the type of the level values in this Bidi implementation.
Definition: ubidi.h:330
pl_nextLine
pl_line * pl_nextLine(pl_paragraph *paragraph, float width)
Return a pl_line object which represents next line in the paragraph.
LETypes.h
C API: Basic definitions for the ICU LayoutEngine.
pl_countLineRuns
le_int32 pl_countLineRuns(const pl_line *line)
Count the number of visual runs in the line.
le_int32
int32_t le_int32
A type used for signed, 32-bit integers.
Definition: LETypes.h:34
le_bool
UBool le_bool
A type used for boolean values.
Definition: LETypes.h:77
UBiDiDirection
UBiDiDirection
UBiDiDirection values indicate the text direction.
Definition: ubidi.h:417
pl_getLineVisualRun
const pl_visualRun * pl_getLineVisualRun(const pl_line *line, le_int32 runIndex)
Get a ParagraphLayout::VisualRun object for a given visual run in the line.
pl_getVisualRunAscent
le_int32 pl_getVisualRunAscent(const pl_visualRun *run)
A convenience method which returns the ascent value for the font associated with this run...
pl_visualRun
void pl_visualRun
The opaque type for a visual run in a line.
Definition: playout.h:49
pl_reflow
void pl_reflow(pl_paragraph *paragraph)
Reset line breaking to start from the beginning of the paragraph.
LEErrorCode
LEErrorCode
Error codes returned by the LayoutEngine.
Definition: LETypes.h:687
pl_getVisualRunGlyphCount
le_int32 pl_getVisualRunGlyphCount(const pl_visualRun *run)
Get the number of glyphs in the visual run.
pl_getVisualRunGlyphToCharMap
const le_int32 * pl_getVisualRunGlyphToCharMap(const pl_visualRun *run)
Get the glyph-to-character map for this visual run.
pl_getParagraphLevel
UBiDiLevel pl_getParagraphLevel(pl_paragraph *paragraph)
Return the resolved paragraph level.
pl_getLineDescent
le_int32 pl_getLineDescent(const pl_line *line)
Get the descent of the line.
pl_getTextDirection
UBiDiDirection pl_getTextDirection(pl_paragraph *paragraph)
Return the directionality of the text in the paragraph.
pl_getDescent
le_int32 pl_getDescent(const pl_paragraph *paragraph)
Return the max descent value for all the fonts in the paragraph.
pl_line
void pl_line
The opaque type for a line in a paragraph layout.
Definition: playout.h:42
LEUnicode
UChar LEUnicode
Used to represent 16-bit Unicode code points.
Definition: LETypes.h:238
pl_isComplex
le_bool pl_isComplex(const LEUnicode chars[], le_int32 count)
Examine the given text and determine if it contains characters in any script which requires complex p...
LEGlyphID
le_uint32 LEGlyphID
Used for glyph indices.
Definition: LETypes.h:112
pl_getVisualRunPositions
const float * pl_getVisualRunPositions(const pl_visualRun *run)
Get the (x, y) positions of the glyphs in the visual run.
pl_fontRuns
void pl_fontRuns
Opaque datatype representing an array of font runs.
Definition: plruns.h:22
pl_getVisualRunDirection
UBiDiDirection pl_getVisualRunDirection(const pl_visualRun *run)
Get the direction of the visual run.
pl_closeLine
void pl_closeLine(pl_line *line)
Close the given line object.
pl_getLineLeading
le_int32 pl_getLineLeading(const pl_line *line)
Get the leading of the line.
plruns.h
C API for run arrays.