InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
CTextEnum.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: dwaterfa
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 __CTextEnum__
25 #define __CTextEnum__
26 
27 
28 namespace Text {
29 
56  enum FirstLineOffsetMetric {
57  // Roman
58  kFLOLeading = 0,
59  kFLOAscent,
60  kFLOCapHeight,
61  kFLOEmBoxHeight,
62  kFLOxHeight,
63  kFLOFixedHeight,
64 
65  // More J only stuff...
66  kFLOEmBoxDepth, // offset from bottom
67  kFLOICFBottomInset, // offset from bottom
68  kFLOICFTopInset, // offset from top
69 
70 //>>>>> new values must be inserted here, i.e., just above kFLOCount <<<<<<<
71  kFLOCount, //the number of actually defined enumerators
72 
73  kFLO_NoShuffleTop = kFLOCount, // prevents the line set with this value to shuffle to the top of a parcel
74 
75  // The last value. The maximum number of members is limited by
76  // the specification of WaxLineImpl::TOFAlignment:5
77  kFLOInvalid = 31
78  };
79 
80 
109  enum GridAlignmentMetric {
110  kGANone = 0,
111  kGABaseline,
112  kGAEmTop,
113  kGAEmCenter,
114  kGAEmBottom,
115  kGAICFTop,
116  kGAICFBottom,
117  kGACapHeight
118  };
119 
120 
128  enum LeadingModel { // Leading is measured from the:
129  kRomanLeadingModel = 0, // Current Roman baseline to previous Roman baseline
130 
131  kJAkiBelow, // Current embox top to next embox top
132  // (InDesign-J 1.0 Gyou-okuri model)
133 
134  kJAkiAbove, // Current embox top to previous embox top
135  // (Opposite of ID-J: Aki is above the line)
136 
137  kCenterLeadingModel, // Current embox center to previous embox center
138 
139  kForcedSpaceAfter, // Similar to kJAkiBelow except that when
140  // lines with this leading model are next
141  // a different leading model no proportional
142  // adjustments are made, this line "wins".
143 
144  kCenterDown // Current embox center to next embox center
145  };
146 
147 
151  enum VerticalJustification {
152  kVJTop = 0,
153  kVJCenter,
154  kVJBottom,
155  kVJJustify,
156 
157  // The last value. The maximum number of members is limited by this
158  // value and if you wish to change it you will have to track down all
159  // the code that assumes that they can represent this in 4 bits. See
160  // TextCellData.cpp for starters.
161  //
162  kVJInvalid = 15,
163 
164  kVJNumValues
165  };
166 
175  enum AutoSizeDimension {
176  kASOff = 0,
177  kASHeightOnly,
178  kASWidthOnly,
179  kASHeightAndWidth,
180  kASHeightAndWidthProportional,
181 
182  // The last value. The maximum number of members is limited by this
183  // value and if you wish to change it you will have to track down all
184  // the code that assumes that they can represent this in 4 bits.
185  //
186  kASInvalid = 15,
187  };
188 
189 
193  enum StartBreakLocation {
194  kNoForcedBreak = 0,
195  kStartAnywhere = 0,
196  kAtColumn,
197  kAtPage,
198  kAtFrameBox,
199  kAtOddPage,
200  kAtEvenPage
201  };
202 
216  enum DropCapDetailedSettings {
217 
218  kDCD_OpticalSettings = 0x00FF,
219  kDropCapDetail_None = 0,
220  kHonorLeftGlyphEdge = 1,
221  kHonorDescenders = 2,
222 // kHonorTopGlyphEdge = 4,
223 // Contoured right edge settings would go here...
224 
225  kDCD_JapaneseSettings = 0xFF00,
226  kFitDropCapOnJapaneseGrid = 0x0F00,
227  kPadWidth4JapaneseGrid = 0x0100,
228  kScaleUp4JapaneseGrid = 0x0200,
229  kScaleDn4JapaneseGrid = 0x0400,
230 
231  kDCD_DefaultOnState = 0x0101 // left, padding
232  };
233 
234  typedef int32 GlyphID;
235 }
236 
237 const Text::GlyphID kInvalidGlyphID = -1;
238 
239 // Used by underline and strikethrough, means use the font to calculate the weight/offset for the line
240 const PMReal kUseFontForULSTWeightOffset = -9999;
241 
242 
243 
244 #endif // __CTextEnum__