160 protected static final int WARNING_IMAGE_METADATA_JFIF_MISMATCH = 5;
161 protected static final int WARNING_IMAGE_METADATA_ADOBE_MISMATCH = 6;
162 protected static final int WARNING_METADATA_NOT_JPEG_FOR_RASTER = 7;
163 protected static final int WARNING_NO_BANDS_ON_INDEXED = 8;
164 protected static final int WARNING_ILLEGAL_THUMBNAIL = 9;
165 protected static final int WARNING_IGNORING_THUMBS = 10;
166 protected static final int WARNING_FORCING_JFIF = 11;
167 protected static final int WARNING_THUMB_CLIPPED = 12;
168 protected static final int WARNING_METADATA_ADJUSTED_FOR_THUMB = 13;
169 protected static final int WARNING_NO_RGB_THUMB_AS_INDEXED = 14;
170 protected static final int WARNING_NO_GRAY_THUMB_AS_INDEXED = 15;
171
172 private static final int MAX_WARNING = WARNING_NO_GRAY_THUMB_AS_INDEXED;
173
174 ///////// End of Protected variables
175
176 ///////// static initializer
177
178 static {
179 java.security.AccessController.doPrivileged(
180 new sun.security.action.LoadLibraryAction("jpeg"));
181 initWriterIDs(ImageOutputStream.class,
182 JPEGQTable.class,
183 JPEGHuffmanTable.class);
184 }
185
186 //////// Public API
187
188 public JPEGImageWriter(ImageWriterSpi originator) {
189 super(originator);
190 structPointer = initJPEGImageWriter();
191 disposerRecord = new JPEGWriterDisposerRecord(structPointer);
192 Disposer.addRecord(disposerReferent, disposerRecord);
193 }
194
195 public void setOutput(Object output) {
196 setThreadLock();
197 try {
198 super.setOutput(output); // validates output
199 resetInternalState();
200 ios = (ImageOutputStream) output; // so this will always work
|
160 protected static final int WARNING_IMAGE_METADATA_JFIF_MISMATCH = 5;
161 protected static final int WARNING_IMAGE_METADATA_ADOBE_MISMATCH = 6;
162 protected static final int WARNING_METADATA_NOT_JPEG_FOR_RASTER = 7;
163 protected static final int WARNING_NO_BANDS_ON_INDEXED = 8;
164 protected static final int WARNING_ILLEGAL_THUMBNAIL = 9;
165 protected static final int WARNING_IGNORING_THUMBS = 10;
166 protected static final int WARNING_FORCING_JFIF = 11;
167 protected static final int WARNING_THUMB_CLIPPED = 12;
168 protected static final int WARNING_METADATA_ADJUSTED_FOR_THUMB = 13;
169 protected static final int WARNING_NO_RGB_THUMB_AS_INDEXED = 14;
170 protected static final int WARNING_NO_GRAY_THUMB_AS_INDEXED = 15;
171
172 private static final int MAX_WARNING = WARNING_NO_GRAY_THUMB_AS_INDEXED;
173
174 ///////// End of Protected variables
175
176 ///////// static initializer
177
178 static {
179 java.security.AccessController.doPrivileged(
180 new java.security.PrivilegedAction<Void>() {
181 public Void run() {
182 System.loadLibrary("jpeg");
183 return null;
184 }
185 });
186 initWriterIDs(ImageOutputStream.class,
187 JPEGQTable.class,
188 JPEGHuffmanTable.class);
189 }
190
191 //////// Public API
192
193 public JPEGImageWriter(ImageWriterSpi originator) {
194 super(originator);
195 structPointer = initJPEGImageWriter();
196 disposerRecord = new JPEGWriterDisposerRecord(structPointer);
197 Disposer.addRecord(disposerReferent, disposerRecord);
198 }
199
200 public void setOutput(Object output) {
201 setThreadLock();
202 try {
203 super.setOutput(output); // validates output
204 resetInternalState();
205 ios = (ImageOutputStream) output; // so this will always work
|