ParamSpecs.java
28.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
/*
* Decompiled with CFR 0_118.
*/
package com.adobe.pdfg.joboptions.parser;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
public class ParamSpecs
implements Serializable {
static final long serialVersionUID = 1050;
public static final String ALWAYSEMBED = "AlwaysEmbed";
public static final String NEVEREMBED = "NeverEmbed";
public static final String SETDISTILLERPARAMS = "setdistillerparams";
public static final String SETPAGEDEVICE = "setpagedevice";
public static final String ASCII85ENCODEPAGES = "ASCII85EncodePages";
public static final String ALLOWTRANSPARENCY = "AllowTransparency";
public static final String AUTOPOSITIONEPSFILES = "AutoPositionEPSFiles";
public static final String COMPRESSPAGES = "CompressPages";
public static final String CONVERTIMAGESTOINDEXED = "ConvertImagesToIndexed";
public static final String PASSTHROUGHJPEGIMAGES = "PassThroughJPEGImages";
public static final String CREATEJDFFILE = "CreateJDFFile";
public static final String CREATEJOBTICKET = "CreateJobTicket";
public static final String DETECTBLENDS = "DetectBlends";
public static final String DOTHUMBNAILS = "DoThumbnails";
public static final String EMBEDALLFONTS = "EmbedAllFonts";
public static final String UNEMBEDALLFONTS = "DoNotEmbedAnyFont";
public static final String DONOTUNEMBEDANYFONT = "DoNotUnembedAnyFont";
public static final String EMBEDOPENTYPE = "EmbedOpenType";
public static final String PARSEICCPROFILESINCOMMENTS = "ParseICCProfilesInComments";
public static final String EMBEDJOBOPTIONS = "EmbedJobOptions";
public static final String EMITDSCWARNINGS = "EmitDSCWarnings";
public static final String LOCKDISTILLERPARAMS = "LockDistillerParams";
public static final String OPTIMIZE = "Optimize";
public static final String PARSEDSCCOMMENTS = "ParseDSCComments";
public static final String PARSEDSCCOMMENTSFORDOCINFO = "ParseDSCCommentsForDocInfo";
public static final String PRESERVECOPYPAGE = "PreserveCopyPage";
public static final String PRESERVEDICMYKVALUES = "PreserveDICMYKValues";
public static final String PRESERVEEPSINFO = "PreserveEPSInfo";
public static final String PRESERVEFLATNESS = "PreserveFlatness";
public static final String PRESERVEHALFTONEINFO = "PreserveHalftoneInfo";
public static final String PRESERVEOPICOMMENTS = "PreserveOPIComments";
public static final String PRESERVEOVERPRINTSETTINGS = "PreserveOverprintSettings";
public static final String SUBSETFONTS = "SubsetFonts";
public static final String USEPROLOGUE = "UsePrologue";
public static final String ANTIALIASCOLORIMAGES = "AntiAliasColorImages";
public static final String CROPCOLORIMAGES = "CropColorImages";
public static final String DOWNSAMPLECOLORIMAGES = "DownsampleColorImages";
public static final String ENCODECOLORIMAGES = "EncodeColorImages";
public static final String AUTOFILTERCOLORIMAGES = "AutoFilterColorImages";
public static final String ANTIALIASGRAYIMAGES = "AntiAliasGrayImages";
public static final String CROPGRAYIMAGES = "CropGrayImages";
public static final String DOWNSAMPLEGRAYIMAGES = "DownsampleGrayImages";
public static final String ENCODEGRAYIMAGES = "EncodeGrayImages";
public static final String AUTOFILTERGRAYIMAGES = "AutoFilterGrayImages";
public static final String ANTIALIASMONOIMAGES = "AntiAliasMonoImages";
public static final String CROPMONOIMAGES = "CropMonoImages";
public static final String DOWNSAMPLEMONOIMAGES = "DownsampleMonoImages";
public static final String ENCODEMONOIMAGES = "EncodeMonoImages";
public static final String ALLOWPSXOBJECTS = "AllowPSXObjects";
public static final String PDFX1ACHECK = "PDFX1aCheck";
public static final String PDFX3CHECK = "PDFX3Check";
public static final String PDFXCOMPLIANTPDFONLY = "PDFXCompliantPDFOnly";
public static final String PDFXNOTRIMBOXERROR = "PDFXNoTrimBoxError";
public static final String PDFXSETBLEEDBOXTOMEDIABOX = "PDFXSetBleedBoxToMediaBox";
public static final String OPM = "OPM";
public static final String DSCREPORTINGLEVEL = "DSCReportingLevel";
public static final String STARTPAGE = "StartPage";
public static final String ENDPAGE = "EndPage";
public static final String IMAGEMEMORY = "ImageMemory";
public static final String MAXSUBSETPCT = "MaxSubsetPct";
public static final String COLORIMAGERESOLUTION = "ColorImageResolution";
public static final String GRAYIMAGERESOLUTION = "GrayImageResolution";
public static final String MONOIMAGERESOLUTION = "MonoImageResolution";
public static final String COLORIMAGEMINRESOLUTION = "ColorImageMinResolution";
public static final String GRAYIMAGEMINRESOLUTION = "GrayImageMinResolution";
public static final String MONOIMAGEMINRESOLUTION = "MonoImageMinResolution";
public static final String TILEWIDTH = "TileWidth";
public static final String TILEHEIGHT = "TileHeight";
public static final String QUALITY = "Quality";
public static final String K = "K";
public static final String HSAMPLES = "HSamples";
public static final String VSAMPLES = "VSamples";
public static final String HWRESOLUTION = "HWResolution";
public static final String PAGESIZE = "PageSize";
public static final String COLORIMAGEDOWNSAMPLETHRESHOLD = "ColorImageDownsampleThreshold";
public static final String GRAYIMAGEDOWNSAMPLETHRESHOLD = "GrayImageDownsampleThreshold";
public static final String MONOIMAGEDOWNSAMPLETHRESHOLD = "MonoImageDownsampleThreshold";
public static final String QFACTOR = "QFactor";
public static final String PDFXTRIMBOXTOMEDIABOXOFFSET = "PDFXTrimBoxToMediaBoxOffset";
public static final String PDFXBLEEDBOXTOTRIMBOXOFFSET = "PDFXBleedBoxToTrimBoxOffset";
public static final String SYNTHETICBOLDNESS = "SyntheticBoldness";
public static final String DETECTCURVES = "DetectCurves";
public static final String COMPATIBILITYLEVEL = "CompatibilityLevel";
public static final String COLORIMAGEDEPTH = "ColorImageDepth";
public static final String GRAYIMAGEDEPTH = "GrayImageDepth";
public static final String MONOIMAGEDEPTH = "MonoImageDepth";
public static final String COLORIMAGEMINDOWNSAMPLEDEPTH = "ColorImageMinDownsampleDepth";
public static final String GRAYIMAGEMINDOWNSAMPLEDEPTH = "GrayImageMinDownsampleDepth";
public static final String PDFXREGISTRYNAME = "PDFXRegistryName";
public static final String PDFXOUTPUTCONDITION = "PDFXOutputCondition";
public static final String PDFXOUTPUTCONDITIONIDENTIFIER = "PDFXOutputConditionIdentifier";
public static final String PDFXOUTPUTINTENTPROFILE = "PDFXOutputIntentProfile";
public static final String COLORSETTINGSFILE = "ColorSettingsFile";
public static final String CALGRAYPROFILE = "CalGrayProfile";
public static final String CALRGBPROFILE = "CalRGBProfile";
public static final String CALCMYKPROFILE = "CalCMYKProfile";
public static final String SRGBPROFILE = "sRGBProfile";
public static final String ENU = "ENU";
public static final String DEU = "DEU";
public static final String FRA = "FRA";
public static final String JPN = "JPN";
public static final String PTB = "PTB";
public static final String DAN = "DAN";
public static final String NLD = "NLD";
public static final String ESP = "ESP";
public static final String SUO = "SUO";
public static final String ITA = "ITA";
public static final String NOR = "NOR";
public static final String SVE = "SVE";
public static final String CHS = "CHS";
public static final String CHT = "CHT";
public static final String KOR = "KOR";
public static final String ARA = "ARA";
public static final String CZE = "CZE";
public static final String GRE = "GRE";
public static final String HEB = "HEB";
public static final String HRV = "HRV";
public static final String HUN = "HUN";
public static final String POL = "POL";
public static final String RUM = "RUM";
public static final String RUS = "RUS";
public static final String TUR = "TUR";
public static final String SLV = "SLV";
public static final String COLORIMAGEMINRESOLUTIONPOLICY = "ColorImageMinResolutionPolicy";
public static final String GRAYIMAGEMINRESOLUTIONPOLICY = "GrayImageMinResolutionPolicy";
public static final String MONOIMAGEMINRESOLUTIONPOLICY = "MonoImageMinResolutionPolicy";
public static final String AUTOROTATEPAGES = "AutoRotatePages";
public static final String BINDING = "Binding";
public static final String CANNOTEMBEDFONTPOLICY = "CannotEmbedFontPolicy";
public static final String COMPRESSOBJECTS = "CompressObjects";
public static final String DEFAULTRENDERINGINTENT = "DefaultRenderingIntent";
public static final String TRANSFERFUNCTIONINFO = "TransferFunctionInfo";
public static final String UCRANDBGINFO = "UCRandBGInfo";
public static final String COLORCONVERSIONSTRATEGY = "ColorConversionStrategy";
public static final String COLORIMAGEDOWNSAMPLETYPE = "ColorImageDownsampleType";
public static final String COLORIMAGEFILTER = "ColorImageFilter";
public static final String COLORIMAGEAUTOFILTERSTRATEGY = "ColorImageAutoFilterStrategy";
public static final String GRAYIMAGEDOWNSAMPLETYPE = "GrayImageDownsampleType";
public static final String GRAYIMAGEFILTER = "GrayImageFilter";
public static final String GRAYIMAGEAUTOFILTERSTRATEGY = "GrayImageAutoFilterStrategy";
public static final String MONOIMAGEDOWNSAMPLETYPE = "MonoImageDownsampleType";
public static final String MONOIMAGEFILTER = "MonoImageFilter";
public static final String CHECKCOMPLIANCE = "CheckCompliance";
public static final String PDFXTRAPPED = "PDFXTrapped";
public static final String COLORIMAGEDICT = "ColorImageDict";
public static final String COLORACSIMAGEDICT = "ColorACSImageDict";
public static final String JPEG2000COLORIMAGEDICT = "JPEG2000ColorImageDict";
public static final String JPEG2000COLORACSIMAGEDICT = "JPEG2000ColorACSImageDict";
public static final String GRAYIMAGEDICT = "GrayImageDict";
public static final String GRAYACSIMAGEDICT = "GrayACSImageDict";
public static final String JPEG2000GRAYIMAGEDICT = "JPEG2000GrayImageDict";
public static final String JPEG2000GRAYACSIMAGEDICT = "JPEG2000GrayACSImageDict";
public static final String MONOIMAGEDICT = "MonoImageDict";
public static final String NAMESPACE = "Namespace";
public static final String DESTINATIONPROFILENAME = "DestinationProfileName";
public static final String START_PAGE_NONE = "1";
public static final String ENDPAGE_NONE = "-1";
public static final String[] AUTOROTATEPAGES_OPTIONS = new String[]{"All", "PageByPage", "None"};
public static final String[] BINDING_OPTIONS = new String[]{"Left", "Right"};
public static final String[] CANNOTEMBEDFONTPOLICY_OPTIONS = new String[]{"OK", "Warning", "Error"};
public static final String[] COMPRESSOBJECTS_OPTIONS = new String[]{"Off", "Tags", "All"};
public static final String[] DEFAULTRENDERINGINTENT_OPTIONS = new String[]{"Default", "Perceptual", "Saturation", "AbsoluteColorimetric", "RelativeColorimeteric"};
public static final String[] TRANSFERFUNCTIONINFO_OPTIONS = new String[]{"Preserve", "Apply", "Remove"};
public static final String[] UCRANDBGINFO_OPTIONS = new String[]{"Preserve", "Remove"};
public static final String[] COLORCONVERSIONSTRATEGY_OPTIONS = new String[]{"LeaveColorUnchanged", "UseDeviceIndependentColor", "UseDeviceIndependentColorForImages", "sRGB", "CMYK", "Gray", "CalGray", "ICCBased", "CalRGB", "RGB", "LAB", "Cal", "ICC"};
public static final String[] IMAGEDOWNSAMPLETYPE_OPTIONS = new String[]{"None", "Average", "Subsample", "Bicubic"};
public static final String[] COLORIMAGEFILTER_OPTIONS = new String[]{"None", "FlateEncode", "DCTEncode", "Auto", "JPXEncode", "Auto2000"};
public static final String GENERAL_NONE = "None";
public static final String GENERAL_TRUE = "true";
public static final String GENERAL_FALSE = "false";
public static final String[] COLORIMAGEAUTOFILTERSTRATEGY_OPTIONS = new String[]{"JPEG", "JPEG2000"};
public static final String[] GRAYIMAGEFILTER_OPTIONS = new String[]{"None", "FlateEncode", "DCTEncode", "Auto", "JPXEncode", "Auto2000"};
public static final String[] GRAYIMAGEAUTOFILTERSTRATEGY_OPTIONS = new String[]{"JPEG", "JPEG2000"};
public static final String MONOIMAGEFILTER_1_2 = "CCITTFaxEncode";
public static final String[] MONOIMAGEFILTER_OPTIONS = new String[]{"None", "CCITTFaxEncode_3", "CCITTFaxEncode_4", "FlateEncode", "RunLengthEncode", "LZWEncode", "CCITTFaxEncode"};
public static final String CHECKCOMPLIANCE_NONE = "None";
public static final String CHECKCOMPLIANCE_PDFX1a_2001 = "PDFX1a:2001";
public static final String CHECKCOMPLIANCE_PDFX1a_2003 = "PDFX1a:2003";
public static final String CHECKCOMPLIANCE_PDFX3_2002 = "PDFX3:2002";
public static final String CHECKCOMPLIANCE_PDFX3_2003 = "PDFX3:2003";
public static final String CHECKCOMPLIANCE_PDFA_DRAFT = "PDFA:DRAFT";
public static final String CHECKCOMPLIANCE_PDFA1B_2005 = "PDFA1B:2005";
public static final String[] CHECKCOMPLIANCE_OPTIONS = new String[]{"None", "PDFX1a:2001", "PDFX3:2002", "PDFX1a:2003", "PDFX3:2003", "PDFA1B:2005", "PDFA:DRAFT"};
public static final String[] PDFXTRAPPED_OPTIONS = new String[]{"Unknown", "False", "True"};
public static final String[] COMPATIBILITYLEVEL_OPTIONS = new String[]{"1.3", "1.4", "1.5", "1.6", "1.7"};
public static final String[] QFACTOR_OPTIONS = new String[]{"2.4", "1.3", "0.76", "0.4", "0.15"};
public static final String QFACTOR_75 = "0.75";
public static final String[] IMAGEMINRESOLUTIONPOLICY_OPTIONS = new String[]{"OK", "Warning", "Error"};
public static final String[] PDFXOUTPUTINTENTPROFILE_OPTIONS = new String[]{"None", "Use Output Condition Identifier", "Europe ISO Coated FOGRA27", "Japan Color 2001 Coated", "Japan Color 2001 Uncoated", "Japan Color 2002 Newspaper", "Japan Web Coated (Ad)", "U.S. Sheetfed Coated v2", "U.S. Sheetfed Uncoated v2", "U.S. Web Coated (SWOP) v2", "U.S. Web Uncoated v2", "Euroscale Coated v2", "Euroscale Uncoated v2", "Dot Gain 10%", "Dot Gain 15%", "Dot Gain 20%", "Dot Gain 25%", "Dot Gain 30%", "Gray Gamma 1.8", "Gray Gamma 2.2", "Black & White", "sGray", "Adobe RGB (1998)", "Apple RGB", "ColorMatch RGB", "sRGB IEC61966-2.1", "CIE RGB", "e-sRGB", "HDTV (Rec. 709)", "KODAK DC Series Digital Camera", "NTSC (1953)", "PAL/SECAM", "ROMM-RGB", "SDTV (PAL)", "SDTV (Rec. 601 NTSC)", "SMPTE-C", "Wide Gamut RGB"};
public static final String COMPLIANCETYPE_PDFA = "pdfa";
public static final String COMPLIANCETYPE_NONPDFA = "nonpdfa";
public static final Double DETECTCURVES_OFF = new Double("0.0");
public static final Double DETECTCURVES_ON = new Double("0.1");
public static final double INTROUNDER = 0.49;
public static final int LEFT = 0;
public static final int RIGHT = 1;
public static final int TOP = 2;
public static final int BOTTOM = 3;
public static final String BLEED2TRIM_LEFT_OLD_MM = "bleed2Trim_left_old_mm";
public static final String BLEED2TRIM_LEFT_OLD_INCH = "bleed2Trim_left_old_inch";
public static final String BLEED2TRIM_RIGHT_OLD_MM = "bleed2Trim_right_old_mm";
public static final String BLEED2TRIM_RIGHT_OLD_INCH = "bleed2Trim_left_old_inch";
public static final String BLEED2TRIM_TOP_OLD_MM = "bleed2Trim_top_old_mm";
public static final String BLEED2TRIM_TOP_OLD_INCH = "bleed2Trim_left_old_inch";
public static final String BLEED2TRIM_BOTTOM_OLD_MM = "bleed2Trim_bottom_old_mm";
public static final String BLEED2TRIM_BOTTOM_OLD_INCH = "bleed2Trim_left_old_inch";
public static final String TRIM2MEDIA_LEFT_OLD_MM = "trim2Media_left_old_mm";
public static final String TRIM2MEDIA_LEFT_OLD_INCH = "trim2Media_left_old_inch";
public static final String TRIM2MEDIA_RIGHT_OLD_MM = "trim2Media_right_old_mm";
public static final String TRIM2MEDIA_RIGHT_OLD_INCH = "trim2Media_left_old_inch";
public static final String TRIM2MEDIA_TOP_OLD_MM = "trim2Media_top_old_mm";
public static final String TRIM2MEDIA_TOP_OLD_INCH = "trim2Media_left_old_inch";
public static final String TRIM2MEDIA_BOTTOM_OLD_MM = "trim2Media_bottom_old_mm";
public static final String TRIM2MEDIA_BOTTOM_OLD_INCH = "trim2Media_left_old_inch";
private static Map boolParamMap = null;
public static final String[] BOOLPARAMS = new String[]{"ASCII85EncodePages", "AllowTransparency", "AutoPositionEPSFiles", "CompressPages", "ConvertImagesToIndexed", "PassThroughJPEGImages", "CreateJDFFile", "CreateJobTicket", "DetectBlends", "DoThumbnails", "EmbedAllFonts", "EmbedOpenType", "ParseICCProfilesInComments", "EmbedJobOptions", "EmitDSCWarnings", "LockDistillerParams", "Optimize", "ParseDSCComments", "ParseDSCCommentsForDocInfo", "PreserveCopyPage", "PreserveDICMYKValues", "PreserveEPSInfo", "PreserveFlatness", "PreserveHalftoneInfo", "PreserveOPIComments", "PreserveOverprintSettings", "SubsetFonts", "UsePrologue", "AntiAliasColorImages", "CropColorImages", "DownsampleColorImages", "EncodeColorImages", "AutoFilterColorImages", "AntiAliasGrayImages", "CropGrayImages", "DownsampleGrayImages", "EncodeGrayImages", "AutoFilterGrayImages", "AntiAliasMonoImages", "CropMonoImages", "DownsampleMonoImages", "EncodeMonoImages", "AllowPSXObjects", "PDFX1aCheck", "PDFX3Check", "PDFXCompliantPDFOnly", "PDFXNoTrimBoxError", "PDFXSetBleedBoxToMediaBox"};
private static Map intParamMap = null;
public static final IntParamSpec[] INTPARAMS = new IntParamSpec[]{new IntParamSpec("OPM", 0, 1), new IntParamSpec("DSCReportingLevel", 0, 2), new IntParamSpec("StartPage", 0, Integer.MAX_VALUE), new IntParamSpec("EndPage", -1, Integer.MAX_VALUE), new IntParamSpec("ImageMemory", 0, Integer.MAX_VALUE), new IntParamSpec("MaxSubsetPct", 1, 100), new IntParamSpec("ColorImageResolution", 9, 2400), new IntParamSpec("GrayImageResolution", 9, 2400), new IntParamSpec("MonoImageResolution", 9, 2400), new IntParamSpec("ColorImageMinResolution", 9, 64000), new IntParamSpec("GrayImageMinResolution", 9, 64000), new IntParamSpec("MonoImageMinResolution", 9, 64000), new IntParamSpec("TileWidth", 128, 2048), new IntParamSpec("TileHeight", 128, 2048), new IntParamSpec("Quality", 1, 100), new IntParamSpec("K", -1, 0), new IntParamSpec("HSamples", 1, 2), new IntParamSpec("VSamples", 1, 2), new IntParamSpec("HWResolution", 72, 4000)};
private static Map numParamMap = null;
public static final NumParamSpec[] NUMPARAMS = new NumParamSpec[]{new NumParamSpec("ColorImageDownsampleThreshold", "1.0", "10.0"), new NumParamSpec("GrayImageDownsampleThreshold", "1.0", "10.0"), new NumParamSpec("MonoImageDownsampleThreshold", "1.0", "10.0"), new NumParamSpec("QFactor", "0", "100.0"), new NumParamSpec("PDFXTrimBoxToMediaBoxOffset", "0.0", String.valueOf(Integer.MAX_VALUE)), new NumParamSpec("PDFXBleedBoxToTrimBoxOffset", "0.0", String.valueOf(Integer.MAX_VALUE)), new NumParamSpec("SyntheticBoldness", "0.0", String.valueOf(Integer.MAX_VALUE)), new NumParamSpec("DetectCurves", "0.0", "10.0"), new NumParamSpec("PageSize", "3.0", "14400.0")};
private static Map intSetParamMap = null;
public static final IntSetParamSpec[] INTSETPARAMS = new IntSetParamSpec[]{new IntSetParamSpec("ColorImageDepth", new int[]{-1, 1, 2, 4, 8, 16}), new IntSetParamSpec("GrayImageDepth", new int[]{-1, 1, 2, 4, 8, 16}), new IntSetParamSpec("MonoImageDepth", new int[]{-1, 1, 2, 4, 8, 16}), new IntSetParamSpec("ColorImageMinDownsampleDepth", new int[]{-1, 1, 2, 4, 8, 16}), new IntSetParamSpec("GrayImageMinDownsampleDepth", new int[]{-1, 1, 2, 4, 8, 16})};
private static Map stringParamMap = null;
public static final String[] STRINGPARAMS = new String[]{"PDFXRegistryName", "PDFXOutputCondition", "PDFXOutputConditionIdentifier", "PDFXOutputIntentProfile", "ColorSettingsFile", "CalGrayProfile", "CalRGBProfile", "CalCMYKProfile", "sRGBProfile", "ENU", "DEU", "FRA", "JPN", "PTB", "DAN", "NLD", "ESP", "SUO", "ITA", "NOR", "SVE", "CHS", "CHT", "KOR", "ARA", "CZE", "GRE", "HEB", "HRV", "HUN", "POL", "RUM", "RUS", "TUR", "SLV", "Namespace", "DestinationProfileName"};
private static Map nameParamMap = null;
public static final String[] NAMEPARAMS = new String[]{"ColorImageMinResolutionPolicy", "GrayImageMinResolutionPolicy", "MonoImageMinResolutionPolicy", "AlwaysEmbed", "NeverEmbed"};
public static final StringSetParamSpec[] NUMSETPARAMS = new StringSetParamSpec[]{new StringSetParamSpec("CompatibilityLevel", COMPATIBILITYLEVEL_OPTIONS)};
private static Map stringSetParamMap = null;
public static final StringSetParamSpec[] STRINGSETPARAMS = new StringSetParamSpec[]{new StringSetParamSpec("AutoRotatePages", AUTOROTATEPAGES_OPTIONS), new StringSetParamSpec("Binding", BINDING_OPTIONS), new StringSetParamSpec("CannotEmbedFontPolicy", CANNOTEMBEDFONTPOLICY_OPTIONS), new StringSetParamSpec("CompressObjects", COMPRESSOBJECTS_OPTIONS), new StringSetParamSpec("DefaultRenderingIntent", DEFAULTRENDERINGINTENT_OPTIONS), new StringSetParamSpec("TransferFunctionInfo", TRANSFERFUNCTIONINFO_OPTIONS), new StringSetParamSpec("UCRandBGInfo", UCRANDBGINFO_OPTIONS), new StringSetParamSpec("ColorConversionStrategy", COLORCONVERSIONSTRATEGY_OPTIONS), new StringSetParamSpec("ColorImageDownsampleType", IMAGEDOWNSAMPLETYPE_OPTIONS), new StringSetParamSpec("ColorImageFilter", COLORIMAGEFILTER_OPTIONS), new StringSetParamSpec("ColorImageAutoFilterStrategy", COLORIMAGEAUTOFILTERSTRATEGY_OPTIONS), new StringSetParamSpec("GrayImageDownsampleType", IMAGEDOWNSAMPLETYPE_OPTIONS), new StringSetParamSpec("GrayImageFilter", GRAYIMAGEFILTER_OPTIONS), new StringSetParamSpec("GrayImageAutoFilterStrategy", GRAYIMAGEAUTOFILTERSTRATEGY_OPTIONS), new StringSetParamSpec("MonoImageDownsampleType", IMAGEDOWNSAMPLETYPE_OPTIONS), new StringSetParamSpec("MonoImageFilter", MONOIMAGEFILTER_OPTIONS), new StringSetParamSpec("CheckCompliance", CHECKCOMPLIANCE_OPTIONS), new StringSetParamSpec("PDFXTrapped", PDFXTRAPPED_OPTIONS)};
public static boolean isBoolParam(String key) {
if (boolParamMap == null) {
boolParamMap = new HashMap(BOOLPARAMS.length);
for (int i = 0; i < BOOLPARAMS.length; ++i) {
boolParamMap.put(BOOLPARAMS[i], Boolean.TRUE);
}
}
return boolParamMap.get(key) != null;
}
public static IntParamSpec getIntParamSpec(String key) {
if (intParamMap == null) {
intParamMap = new HashMap(INTPARAMS.length);
for (int i = 0; i < INTPARAMS.length; ++i) {
intParamMap.put(INTPARAMS[i].getKeyName(), INTPARAMS[i]);
}
}
return (IntParamSpec)intParamMap.get(key);
}
public static final NumParamSpec getNumParamSpec(String key) {
if (numParamMap == null) {
numParamMap = new HashMap(NUMPARAMS.length);
for (int i = 0; i < NUMPARAMS.length; ++i) {
numParamMap.put(NUMPARAMS[i].getKeyName(), NUMPARAMS[i]);
}
}
return (NumParamSpec)numParamMap.get(key);
}
public static IntParamSpec getIntSpec(String str) {
for (int i = 0; i < INTPARAMS.length; ++i) {
if (!INTPARAMS[i].getKeyName().equals(str)) continue;
return INTPARAMS[i];
}
return null;
}
public static NumParamSpec getNumSpec(String str) {
for (int i = 0; i < NUMPARAMS.length; ++i) {
if (!NUMPARAMS[i].getKeyName().equals(str)) continue;
return NUMPARAMS[i];
}
return null;
}
public static Double round(Double bd, int digits) {
String str = bd.toString();
int index = str.indexOf(".");
if (index >= 0 && index + digits + 1 <= str.length()) {
str = str.substring(0, index + digits + 1);
}
return new Double(str);
}
public static IntSetParamSpec getIntSetParamSpec(String key) {
if (intSetParamMap == null) {
intSetParamMap = new HashMap(INTSETPARAMS.length);
for (int i = 0; i < INTSETPARAMS.length; ++i) {
intSetParamMap.put(INTSETPARAMS[i].getKeyName(), INTSETPARAMS[i]);
}
}
return (IntSetParamSpec)intSetParamMap.get(key);
}
public static boolean isStringParam(String key) {
if (stringParamMap == null) {
stringParamMap = new HashMap(STRINGPARAMS.length);
for (int i = 0; i < STRINGPARAMS.length; ++i) {
stringParamMap.put(STRINGPARAMS[i], "");
}
}
return stringParamMap.get(key) != null;
}
public static boolean isNameParam(String key) {
if (nameParamMap == null) {
nameParamMap = new HashMap(NAMEPARAMS.length);
for (int i = 0; i < NAMEPARAMS.length; ++i) {
nameParamMap.put(NAMEPARAMS[i], "");
}
}
return nameParamMap.get(key) != null;
}
public static final StringSetParamSpec getStringSetParamSpec(String key) {
if (stringSetParamMap == null) {
stringSetParamMap = new HashMap(STRINGSETPARAMS.length);
for (int i = 0; i < STRINGSETPARAMS.length; ++i) {
stringSetParamMap.put(STRINGSETPARAMS[i].getKeyName(), STRINGSETPARAMS[i]);
}
}
return (StringSetParamSpec)stringSetParamMap.get(key);
}
public static class IntParamSpec {
private String keyName = null;
private int minLimit = 0;
private int maxLimit = 0;
public IntParamSpec(String kn, int min, int max) {
this.keyName = kn;
this.minLimit = min;
this.maxLimit = max;
}
public String getKeyName() {
return this.keyName;
}
public void setKeyName(String keyName) {
this.keyName = keyName;
}
public int getMaxLimit() {
return this.maxLimit;
}
public void setMaxLimit(int maxLimit) {
this.maxLimit = maxLimit;
}
public int getMinLimit() {
return this.minLimit;
}
public void setMinLimit(int minLimit) {
this.minLimit = minLimit;
}
}
public static class IntSetParamSpec {
private String keyName = null;
private int[] valueSet = null;
public IntSetParamSpec(String kn, int[] vset) {
this.keyName = kn;
this.valueSet = vset;
}
public String getKeyName() {
return this.keyName;
}
public void setKeyName(String keyName) {
this.keyName = keyName;
}
public int[] getValueSet() {
return this.valueSet;
}
public void setValueSet(int[] valueSet) {
this.valueSet = valueSet;
}
}
public static class StringSetParamSpec {
private String keyName = null;
private String[] valueSet = null;
public StringSetParamSpec(String kn, String[] vset) {
this.keyName = kn;
this.valueSet = vset;
}
public String getKeyName() {
return this.keyName;
}
public void setKeyName(String keyName) {
this.keyName = keyName;
}
public String[] getValueSet() {
return this.valueSet;
}
public void setValueSet(String[] valueSet) {
this.valueSet = valueSet;
}
}
public static class NumParamSpec {
private String keyName = null;
private String minLimit = null;
private String maxLimit = null;
public NumParamSpec(String kn, String min, String max) {
this.keyName = kn;
this.minLimit = min;
this.maxLimit = max;
}
public String getKeyName() {
return this.keyName;
}
public void setKeyName(String keyName) {
this.keyName = keyName;
}
public String getMaxLimit() {
return this.maxLimit;
}
public void setMaxLimit(String maxLimit) {
this.maxLimit = maxLimit;
}
public String getMinLimit() {
return this.minLimit;
}
public void setMinLimit(String minLimit) {
this.minLimit = minLimit;
}
}
}