InDesign SDK
20.5
InDesign SDK
Documentation
Bosses
Sample plug-ins
Class Index
All
Classes
Namespaces
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
SLCGlyphNode.h
1
//========================================================================================
2
//
3
// $File$
4
//
5
// Owner: Adobe Developer Technologies
6
//
7
// $Author$
8
//
9
// $DateTime$
10
//
11
// $Revision$
12
//
13
// $Change$
14
//
15
// Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
16
//
17
// NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
18
// with the terms of the Adobe license agreement accompanying it. If you have received
19
// this file from a source other than Adobe, then your use, modification, or
20
// distribution of it requires the prior written permission of Adobe.
21
//
22
//========================================================================================
23
24
#ifndef __SLCGlyphNode_h__
25
#define __SLCGlyphNode_h__
26
27
class
IComposeScanner
;
28
class
IDrawingStyle
;
29
class
IWaxLine
;
30
class
IWaxRun
;
31
class
IFontInstance
;
32
class
PMRect
;
33
34
51
class
SLCGlyphNode
52
{
53
public
:
54
58
enum
GlyphNodeType
59
{
60
kGNTText = 0,
61
kGNTInlineGraphic
62
};
63
72
SLCGlyphNode
(
IComposeScanner
* composeScanner,
73
IDrawingStyle
* drawingStyle,
74
TextIndex startingIndex,
75
const
PMReal
& xOffset,
76
GlyphNodeType
glyphNodeType);
77
81
virtual
SLComposerStatusCode
GetStatus
()
const
82
{
83
return
fStatus
;
84
};
85
88
virtual
~SLCGlyphNode
();
89
98
virtual
SLComposerStatusCode
GetGlyph
(
const
UTF32TextChar
& character,
99
Text::GlyphID& glyphID,
100
PMReal
& glyphWidth) = 0;
101
112
virtual
SLComposerStatusCode
BufferGlyph
(
const
UTF32TextChar
& character,
const
Text::GlyphID& glyphID,
const
PMReal
& glyphWidth) = 0;
113
116
virtual
PMReal
GetWidth
()
const
= 0;
117
122
virtual
SLComposerStatusCode
FindTextBreak
() = 0;
123
127
virtual
bool16
GetTrailingWhiteSpaceWidth
(
PMReal
& width)
const
= 0;
128
129
136
virtual
bool16
FitTrailingWhiteSpace
(
const
PMReal
& widthScaleFactor) = 0;
137
142
virtual
SLComposerStatusCode
CreateWax
(
const
IWaxLine
* waxLine)
const
= 0;
143
147
virtual
IWaxRun
*
CreateWaxRun
()
const
= 0;
148
151
virtual
IDrawingStyle
*
GetDrawingStyle
()
const
152
{
153
return
fDrawingStyle
;
154
}
155
158
virtual
const
int32&
GetTextSpan
()
const
159
{
160
return
fTextSpan
;
161
};
162
165
inline
const
PMReal
&
GetLeading
()
const
166
{
167
return
fLeading;
168
}
169
172
inline
const
PMReal
&
GetAscent
()
const
173
{
174
return
fAscent;
175
}
176
179
inline
const
PMReal
&
GetCapHeight
()
const
180
{
181
return
fCapHeight;
182
}
183
187
inline
const
PMReal
&
GetXHeight
()
const
188
{
189
return
fXHeight;
190
}
191
195
inline
const
TextIndex&
GetTextIndex
()
const
196
{
197
return
fTextIndex
;
198
};
199
204
bool16
IsTrailingWhiteSpace
(
const
UTF32TextChar
& character)
const
;
205
208
virtual
void
Dump
(
const
char
* msg)
const
;
209
213
void
SetTextSpan
(int32 count)
214
{
215
fTextSpan
= count;
216
};
217
218
protected
:
221
SLComposerStatusCode
fStatus
;
222
225
IComposeScanner
*
fComposeScanner
;
226
229
IDrawingStyle
*
fDrawingStyle
;
230
233
PMReal
fXOffset
;
234
237
TextIndex
fTextIndex
;
238
239
/* Cached metrics for the font.
240
*/
241
PMReal
fLeading;
242
PMReal
fAscent;
243
PMReal
fCapHeight;
244
PMReal
fXHeight;
245
248
int32
fTextSpan
;
249
252
const
GlyphNodeType
fGlyphNodeType;
253
};
254
255
#endif // __SLCGlyphNode_h__
256
257
// End, SLCGlyphNode.h
258
tmpdoxygeninput
SLCGlyphNode.h
Generated on Sat Jul 19 2025 02:54:18 for InDesign SDK by
1.8.3.1