InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
GraphicTypes.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: jargast
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 __GraphicTypes__
25 #define __GraphicTypes__
26 
27 // Constants to use in IGraphicsPort and the graphic attributes
28 
29 enum PMJoinType
30 {
31  kPMMiterJoin = 0,
32  kPMRoundJoin,
33  kPMBevelJoin
34 };
35 
36 enum PMEndCap
37 {
38  kPMButtCap = 0,
39  kPMRoundCap,
40  kPMSquareCap
41 };
42 
43 // Fitting
44 enum
45 {
46  kPMNoFitting = 0,
47  kPMFitContents = 1,
48  kPMFitContentsProportionally = 2,
49  kPMFillContentsProportionally = 3,
50  kPMCenterContents = 4
51 };
52 
53 // Hit testing
54 enum
55 {
56  kPMNoHit = 0,
57  kPMHit
58 };
59 
60 // image flags
61 enum
62 {
63  kPMImIsMask = 1
64 };
65 
66 // color space
67 enum
68 {
69  //kPMCsUndefined = -1,
70  //kPMCsDeviceGray,
71  //kPMCsDeviceRGB,
72  //kPMCsDeviceCMYK,
73  kPMCsUnused = 3,
74  //kPMCsCalGray,
75  kPMCsCalRGB = 5,
76  kPMCsCalCMYK,
77  kPMCsLab,
78  kPMCsSeparation,
79  kPMCsDeviceN = 9,
80  //kPMCsIndexed,
81  //kPMCsPattern,
82  //kPMCsICCBased,
83  //kPMCsUnknownProfile
84  kPMCsCalHSB = 14
85 };
86 
87 enum
88 {
89  kPMCsMaxComponents = 32
90 };
91 
92 // Gradient Type
93 enum GradientType
94 {
95  kAxial = 1,
96  kRadial
97 };
98 DECLARE_BASE_TYPE(GradientType);
99 
100 
101 // Blending modes
102 enum PMBlendingMode
103 {
104  kPMBlendNormal,
105 
106  kPMBlendMultiply,
107  kPMBlendScreen,
108  kPMBlendOverlay,
109  kPMBlendSoftLight,
110  kPMBlendHardLight,
111 
112  kPMBlendColorDodge,
113  kPMBlendColorBurn,
114 
115  kPMBlendDarken,
116  kPMBlendLighten,
117  kPMBlendDifference,
118  kPMBlendExclusion,
119 
120  kPMBlendHue,
121  kPMBlendSaturation,
122  kPMBlendColor,
123  kPMBlendLuminosity,
124 
125  kPMBlendNonZeroOverprint,
126 
127  kPMNumBlendingModes,
128  kPMBlendingModeInvalid = -1,
129  _MAX_PMBlendingMode = 0x40000000 /* force 32 bit enum */
130 } ;
131 
132 enum PMDropShadowMode
133 {
134  kDSMNone,
135  kDSMBlurred,
136 
137  kDSMInvalid = -1,
138  _MAX_PMDropShadowMode = 0x40000000 /* force 32 bit enum */
139 } ;
140 
141 enum PMVignetteMode
142 {
143  kVTMNone,
144  kVTMRectangular,
145  kVTMElliptical,
146  kVTMFollowShape,
147 
148  kVTMInvalid = -1,
149  _MAX_PMVignetteMode = 0x40000000 /* force 32 bit enum */
150 } ;
151 
152 enum PMVignetteCorners
153 {
154  kVTCSharp,
155  kVTCSoft,
156  kVTCDiffusion, // i.e., AI-compatible
157 
158  kVTInvalidCorners = -1,
159  _MAX_PMVignetteCorners = 0x40000000 /* force 32 bit enum */
160 };
161 
162 enum PMGlowTechnique
163 {
164  kGLTechniqueSofter,
165  kGLTechniquePrecise,
166 
167  kGLTechniqueInvalid = -1,
168  _MAX_PM = 0x40000000 /* force 32 bit enum */
169 };
170 
171 enum PMInnerGlowSource
172 {
173  kIGSourceCenter,
174  kIGSourceEdge,
175 
176  kIGSourceInvalid = -1,
177  _MAX_PMInnerGlowSource = 0x40000000 /* force 32 bit enum */
178 };
179 
180 enum PMBevelEmbossStyle
181 {
182  kBEStyleOuterBevel,
183  kBEStyleInnerBevel,
184  kBEStyleEmboss,
185  kBEStylePillowEmboss,
186 
187  kBEStyleInvalid = -1,
188  _MAX_PMBevelEmbossStyle = 0x40000000 /* force 32 bit enum */
189 };
190 
191 enum PMBevelEmbossTechnique
192 {
193  kBETechniqueSmooth,
194  kBETechniqueChiselHard,
195  kBETechniqueChiselSoft,
196 
197  kBETechniqueInvalid = -1,
198  _MAX_BETechnique = 0x40000000 /* force 32 bit enum */
199 };
200 
201 enum PMBevelEmbossDirection
202 {
203  kBEDirectionUp,
204  kBEDirectionDown,
205 
206  kBEDirectionInvalid = -1,
207  _MAX_PMBevelEmbossDirection = 0x40000000 /* force 32 bit enum */
208 };
209 
210 enum PMFollowShapeMode
211 {
212  kFollowShapeNone,
213  kFollowShapeLeadingEdge,
214  kFollowShapeAllEdges,
215 
216  kFollowShapeInvalid = -1,
217  _MAX_PMFollowShapeMode = 0x40000000 /* force 32 bit enum */
218 };
219 
220 enum PMStrokeAlignment
221 {
222  kStrokeAlignCenter, // Align to path center (default)
223  kStrokeAlignInside,
224  kStrokeAlignOutside,
225 
226  kMAXPMStrokeAlignment = 0x40000000 // Force 32-bit enum (not a valid stroke alignment)
227 };
228 
229 enum PMArrowHeadAlignment
230 {
231  kArrowHeadInside = 0,
232  kArrowHeadOutside
233 };
234 
235 #endif