00001 #ifndef __AIVectorize__
00002 #define __AIVectorize__
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef __AITypes__
00031 #include "AITypes.h"
00032 #endif
00033
00034 #ifndef __AIRaster__
00035 #include "AIRaster.h"
00036 #endif
00037
00038 #ifndef __AIDictionary__
00039 #include "AIDictionary.h"
00040 #endif
00041
00042 #ifndef __AIImageOptimization__
00043 #include "AIImageOptimization.h"
00044 #endif
00045
00046
00047 #include "AIHeaderBegin.h"
00048
00052
00053
00054
00055
00056
00057
00058 #define kAIVectorizeSuite "AI Vectorize Suite"
00059 #define kAIVectorizeSuiteVersion AIAPI_VERSION(1)
00060 #define kAIVectorizeVersion kAIVectorizeSuiteVersion
00061
00062
00063
00064
00069 #define kAIVectorizeUpdateNotifier "AI Vectorize Update Notifier"
00070
00071
00072
00073
00074
00075
00076
00077
00078
00080 #define kAITracingPresetsCatalogName "Adobe Vectorize Presets"
00081
00082
00083
00084
00085
00086
00087
00091 #define kTracingGlobalPresetKey "-adobe/vectorize/options/global/preset"
00092
00094 #define kTracingOptionsKey "adobe/vectorize/options"
00095
00097 #define kTracingOptionsOldKey "-adobe/vectorize/options/old"
00098
00100 #define kTracingCacheKey "-adobe/vectorize/cache"
00101
00103 #define kTracingStatisticsKey "adobe/vectorize/statistics"
00104
00105
00108 #define kTracingPresetKey "adobe/vectorize/preset"
00109
00112 #define kTracingModeKey "adobe/vectorize/mode"
00113
00116 #define kTracingThresholdKey "adobe/vectorize/ip/threshold"
00117
00120 #define kTracingGrayscaleKey "adobe/vectorize/ip/grayscale"
00121
00124 #define kTracingPathFidelityKey "adobe/vectorize/ip/PathFidelity"
00125
00128 #define kTracingCornerFidelityKey "adobe/vectorize/ip/CornerFidelity"
00129
00132 #define kTracingNoiseFidelityKey "adobe/vectorize/ip/NoiseFidelity"
00133
00136 #define kTracingOverlappingOrAbuttingKey "adobe/vectorize/ip/OverlappingOrAbutting"
00137
00140 #define kTracingTypeColorKey "adobe/vectorize/ip/typecolor"
00141
00144 #define kTracingLimitedColorsKey "adobe/vectorize/ip/Limitedcolors"
00145
00147 #define kTracingFullColorsFidelityKey "adobe/vectorize/ip/FullcolorsFidelity"
00148
00151 #define kTracingAutomaticColorsFidelityKey "adobe/vectorize/ip/AutomaticcolorsFidelity"
00152
00155 #define kTracingLibraryName "adobe/vectorize/ip/LibraryName"
00156
00159 #define kTracingLibraryPath "adobe/vectorize/ip/LibraryPath"
00160
00163 #define kTracingColorGroupName "adobe/vectorize/ip/ColorGroupName"
00164
00167 #define kTracingFillsKey "adobe/vectorize/tracing/fills"
00168
00171 #define kTracingStrokesKey "adobe/vectorize/tracing/strokes"
00172
00175 #define kTracingMaxStrokeWeightKey "adobe/vectorize/tracing/maxstrokeweight"
00176
00179 #define kTracingVisualizeKey "adobe/vectorize/visualize"
00180
00181
00184 #define kTracingIgnoreWhiteKey "adobe/vectorize/output/ignorewhite"
00185
00186 #define kTracingSnapCurvesToLinesKey "adobe/vectorize/output/snapcurvestolines"
00187
00188
00191 #define kTracingTracingArtKey "adobe/vectorize/tracing/art"
00192
00194 #define kTracingPreprocessedImageKey "adobe/vectorize/preprocessed/image"
00195
00198 #define kTracingSourceArtChangedKey "adobe/vectorize/src/changed"
00199
00201 #define kTracingScratchGroupKey "adobe/vectorize/scratch/group"
00202
00204 #define kTracingAdjustedRasterMatrixKey "adobe/vectorize/raster/matrix"
00205
00207 #define kTracingAdjustedRasterChecksumKey "adobe/vectorize/raster/checksum"
00208
00209
00212 #define kTracingPathCountKey "adobe/vectorize/statistics/pathcount"
00213
00215 #define kTracingAnchorCountKey "adobe/vectorize/statistics/anchorcount"
00216
00218 #define kTracingColorCountKey "adobe/vectorize/statistics/colorcount"
00219
00220
00221 #define kTracingResampleDefault (false)
00222
00223 #define kTracingModeDefault (0)
00224 #define kTracingThresholdDefault (128)
00225 #define kTracingGrayscaleDefault (50)
00226
00227 #define kTracingPresetStringNameDefault ("$$$/Tracing/Str/Options/DefaultPreset00=[Default]")
00228 #define kLibraryNameDefault ("$$$/VectorizePanel/ColorGroupSelection/NoLibrary=NoLib")
00229 #define kColorGroupNameDefault ("$$$/VectorizePanel/ColorGroupSelection/All=All")
00230 #define kTracingLimitedMaxColorsDefault (30)
00231 #define kTracingFullToneMaxFidelityDefault (100.0f)
00232 #define kTracingAutomaticMaxFidelityDefault (100.0f)
00233 #define kTracingColorTypeDefault (0)
00234 #define kTracingColorGroupDefault (0)
00235 #define kTracingFidelityDefault (50)
00236 #define kTracingPathFidelityDefault (50.0)
00237 #define kTracingCornerFidelityDefault (50.0)
00238 #define kTracingNoiseFidelityDefault (50)
00239 #define kTracingFillsDefault (true)
00240 #define kTracingStrokesDefault (false)
00241 #define kTracingDetectShapesDefault (true)
00242 #define kTracingMaxStrokeWeightDefault (10.0f)
00243
00245 #define kTracingVisualizeVectorDefault (0)
00246
00247 #define kTracingIgnoreWhiteDefault (false)
00248 #define kTracingSnapCurvesToLinesDefault (false)
00249
00251 #define kTracingSourceArtChangedDefault (true)
00252
00253
00254
00255
00256
00257
00258
00259
00260
00263 typedef struct _t_AITracingState *AITracingStateHandle;
00264
00267 typedef struct _t_AITracingViewOptions *AITracingViewOptionsHandle;
00268
00269
00270
00273 typedef ai::int32 AITracingMode;
00274
00275 enum ColorType
00276 {
00277 kAIAutomaticTracingColors,
00278 kAILimitedTracingColors,
00279 kAIFullToneTracingColors,
00280 };
00281
00283 enum VectorizeModes
00284 {
00286 kAIVectorizeModeColor,
00288 kAIVectorizeModeGray,
00290 kAIVectorizeModeBlackAndWhite
00291 };
00292
00293 enum OverlappingAbuttingValue
00294 {
00295 kAIAbutting,
00296 kAIOverlapping,
00297 };
00298
00299 typedef ai::int32 AIVectorizeVisualizeType;
00301 enum AIVectorizeVisualizeVectorValue
00302 {
00303
00304 kAIVectorizedResult = 0,
00305
00306 kAIVectorizedObjectWithOutline,
00307
00308 kAIVectorizeOutline,
00309
00310 kAIVectorWithTransparentImage,
00311
00312 kAISourceImage
00313 };
00314
00315
00316
00317
00318
00319
00320
00321
00322
00323
00324
00342 typedef struct {
00343
00351 AIAPI AIErr (*CreateTracing) (ai::int16 paintOrder, AIArtHandle prep, AIArtHandle art, AIArtHandle *tracing);
00352
00358 AIAPI AIBoolean (*IsTracing) (AIArtHandle tracing);
00359
00365 AIAPI AIErr (*GetSourceImage) (AIArtHandle tracing, AIArtHandle *raster);
00366
00376 AIAPI AIErr (*CopyTracingArt) (AIArtHandle tracing, ai::int16 paintOrder, AIArtHandle prep, AIArtHandle *art, AIBool8 copyAsViewed);
00377
00385 AIAPI AIErr (*AcquireTracingOptions) (AIArtHandle tracing, AIDictionaryRef *options);
00386
00394 AIAPI AIErr (*AcquireTracingStatistics) (AIArtHandle tracing, AIDictionaryRef *options);
00395
00400 AIAPI AIErr (*EmbedSwatches) (AIArtHandle tracing);
00401
00406 AIAPI AIErr (*Update) (AIArtHandle tracing);
00407
00408
00415 AIAPI AIErr (*GetNativeResolution) (AIArtHandle art, AIReal *dpi);
00416
00424 AIAPI AIErr (*GetEffectiveResolution) (AIArtHandle art, AIReal *dpi);
00425
00430 AIAPI AIErr (*SetSourceArtChanged) (AIArtHandle tracing, AIBoolean changed);
00431
00432 } AIVectorizeSuite;
00433
00434
00435
00436
00437
00438
00439
00440 #include "AIHeaderEnd.h"
00441
00442
00443 #endif