PDFShadingMeshes.java
9 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
/*
* Decompiled with CFR 0_118.
*
* Could not load the following classes:
* com.adobe.internal.pdftoolkit.core.cos.CosArray
* com.adobe.internal.pdftoolkit.core.cos.CosDictionary
* com.adobe.internal.pdftoolkit.core.cos.CosObject
* com.adobe.internal.pdftoolkit.core.exceptions.PDFIOException
* com.adobe.internal.pdftoolkit.core.exceptions.PDFInvalidDocumentException
* com.adobe.internal.pdftoolkit.core.exceptions.PDFInvalidParameterException
* com.adobe.internal.pdftoolkit.core.exceptions.PDFSecurityException
* com.adobe.internal.pdftoolkit.core.types.ASName
*/
package com.adobe.internal.pdftoolkit.pdf.graphics.shading;
import com.adobe.internal.pdftoolkit.core.cos.CosArray;
import com.adobe.internal.pdftoolkit.core.cos.CosDictionary;
import com.adobe.internal.pdftoolkit.core.cos.CosObject;
import com.adobe.internal.pdftoolkit.core.exceptions.PDFIOException;
import com.adobe.internal.pdftoolkit.core.exceptions.PDFInvalidDocumentException;
import com.adobe.internal.pdftoolkit.core.exceptions.PDFInvalidParameterException;
import com.adobe.internal.pdftoolkit.core.exceptions.PDFSecurityException;
import com.adobe.internal.pdftoolkit.core.types.ASName;
import com.adobe.internal.pdftoolkit.pdf.document.PDFCosDictionary;
import com.adobe.internal.pdftoolkit.pdf.document.PDFCosObject;
import com.adobe.internal.pdftoolkit.pdf.document.PDFCosStream;
import com.adobe.internal.pdftoolkit.pdf.document.PDFDocument;
import com.adobe.internal.pdftoolkit.pdf.graphics.PDFFunction;
import com.adobe.internal.pdftoolkit.pdf.graphics.PDFFunctionFactory;
import com.adobe.internal.pdftoolkit.pdf.graphics.PDFFunctionsArray;
import com.adobe.internal.pdftoolkit.pdf.graphics.PDFRectangle;
import com.adobe.internal.pdftoolkit.pdf.graphics.colorspaces.PDFColorSpace;
import com.adobe.internal.pdftoolkit.pdf.graphics.colorspaces.PDFColorSpaceFactory;
import com.adobe.internal.pdftoolkit.pdf.graphics.shading.PDFShading;
import java.util.ArrayList;
import java.util.List;
public abstract class PDFShadingMeshes
extends PDFCosStream
implements PDFShading {
protected PDFShadingMeshes(CosObject cosObject) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
super(cosObject);
}
public CosArray getDecode() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.getDictionaryArrayValue(ASName.k_Decode);
}
public void setDecode(CosArray value) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException, PDFInvalidParameterException {
this.setDictionaryValue(ASName.k_Decode, (CosObject)value);
}
public boolean hasDecode() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.dictionaryContains(ASName.k_Decode);
}
public int getBitsPerComponent() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.getDictionaryIntValue(ASName.k_BitsPerComponent);
}
public void setBitsPerComponent(int value) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
this.setDictionaryIntValue(ASName.k_BitsPerComponent, value);
}
public int requireBitsPerComponent() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.getDictionaryIntValue(ASName.k_BitsPerComponent);
}
public boolean hasBitsPerComponent() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.dictionaryContains(ASName.k_BitsPerComponent);
}
public int getBitsPerCoordinate() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.getDictionaryIntValue(ASName.k_BitsPerCoordinate);
}
public void setBitsPerCoordinate(int value) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
this.setDictionaryIntValue(ASName.k_BitsPerCoordinate, value);
}
public int requireBitsPerCoordinate() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.getDictionaryIntValue(ASName.k_BitsPerCoordinate);
}
public boolean hasBitsPerCoordinate() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.dictionaryContains(ASName.k_BitsPerCoordinate);
}
public PDFColorSpace getColorSpace() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return PDFColorSpaceFactory.getInstance(this.getCosDictionary().get(ASName.k_ColorSpace));
}
public void setColorSpace(PDFColorSpace children) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException, PDFInvalidParameterException {
if (children == null) {
throw new PDFInvalidParameterException("ColorSpace is a required key");
}
this.setDictionaryArrayValue(ASName.k_ColorSpace, children.getCosArray());
}
public PDFRectangle getBBox() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return PDFRectangle.getInstance(this.getDictionaryCosObjectValue(ASName.k_BBox));
}
public void setBBox(PDFRectangle rect) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
if (rect == null) {
this.removeValue(ASName.k_BBox);
} else {
this.setDictionaryArrayValue(ASName.k_BBox, rect.getCosArray());
}
}
public void setBBox(double llx, double lly, double urx, double ury) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
ArrayList<Double> rectArray = new ArrayList<Double>(4);
rectArray.add(0, llx);
rectArray.add(1, lly);
rectArray.add(2, urx);
rectArray.add(3, ury);
this.setDictionaryArrayValue(ASName.k_BBox, rectArray);
}
public double[] getBackground() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.getDictionaryArrayValue(ASName.k_Background).getArrayDouble();
}
protected void setBackground(double[] value) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException, PDFInvalidParameterException {
this.setDictionaryArrayValue(ASName.k_Background, value);
}
public boolean getAntiAlias() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.getDictionaryBooleanValue(ASName.k_AntiAlias);
}
protected void setAntiAlias(boolean value) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException, PDFInvalidParameterException {
this.setDictionaryBooleanValue(ASName.k_AntiAlias, value);
}
protected void setShadingType(long shadingType) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
this.setDictionaryIntValue(ASName.k_ShadingType, shadingType);
}
public boolean hasShadingType() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.dictionaryContains(ASName.k_ShadingType);
}
public int requireShadingType() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.getDictionaryIntValue(ASName.k_ShadingType);
}
public int getShadingType() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.getDictionaryIntValue(ASName.k_ShadingType);
}
public PDFFunctionsArray getFunction() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
CosObject cosObject = this.getDictionaryCosObjectValue(ASName.k_Function);
if (cosObject instanceof CosArray) {
return PDFFunctionsArray.getInstance(cosObject);
}
PDFFunctionsArray pdfFunctionArray = PDFFunctionsArray.newInstance(this.getPDFDocument());
pdfFunctionArray.add(PDFFunctionFactory.getInstance(cosObject));
return pdfFunctionArray;
}
public boolean hasFunction() throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException {
return this.dictionaryContains(ASName.k_Function);
}
protected void setFunctionArray(PDFFunction value, boolean requiredType) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException, PDFInvalidParameterException {
if (value == null && requiredType) {
throw new PDFInvalidParameterException("FunctionArray is a required key therefore cannot be removed.");
}
this.setDictionaryValue(ASName.k_Function, value);
}
protected void setFunctionArray(PDFFunctionsArray children, boolean requiredType) throws PDFInvalidDocumentException, PDFIOException, PDFSecurityException, PDFInvalidParameterException {
if (children == null) {
if (requiredType) {
throw new PDFInvalidParameterException("FunctionArray is a required key therefore cannot be removed.");
}
this.removeValue(ASName.k_Function);
} else {
this.setDictionaryArrayValue(ASName.k_Function, children.getCosArray());
}
}
public PDFCosDictionary getPDFCosObject() {
return this;
}
}