|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
|
|
package com.sun.imageio.plugins.jpeg; |
|
|
|
import java.util.ListResourceBundle; |
|
|
|
public class JPEGImageMetadataFormatResources |
|
extends JPEGMetadataFormatResources { |
|
|
|
static final Object[][] imageContents = { |
|
|
|
{ "JPEGvariety", "A node grouping all marker segments specific to the variety of stream being read/written (e.g. JFIF) - may be empty" }, |
|
{ "markerSequence", "A node grouping all non-jfif marker segments" }, |
|
{ "app0jfif", "A JFIF APP0 marker segment" }, |
|
{ "app14Adobe", "An Adobe APP14 marker segment" }, |
|
{ "sof", "A Start Of Frame marker segment" }, |
|
{ "sos", "A Start Of Scan marker segment" }, |
|
{ "app0JFXX", "A JFIF extension marker segment" }, |
|
{ "app2ICC", "An ICC profile APP2 marker segment" }, |
|
{ "JFIFthumbJPEG", |
|
"A JFIF thumbnail in JPEG format (no JFIF segments permitted)" }, |
|
{ "JFIFthumbPalette", "A JFIF thumbnail as an RGB indexed image" }, |
|
{ "JFIFthumbRGB", "A JFIF thumbnail as an RGB image" }, |
|
{ "componentSpec", "A component specification for a frame" }, |
|
{ "scanComponentSpec", "A component specification for a scan" }, |
|
|
|
|
|
{ "app0JFIF/majorVersion", |
|
"The major JFIF version number" }, |
|
{ "app0JFIF/minorVersion", |
|
"The minor JFIF version number" }, |
|
{ "app0JFIF/resUnits", |
|
"The resolution units for Xdensity and Ydensity " |
|
+ "(0 = no units, just aspect ratio; 1 = dots/inch; 2 = dots/cm)" }, |
|
{ "app0JFIF/Xdensity", |
|
"The horizontal density or aspect ratio numerator" }, |
|
{ "app0JFIF/Ydensity", |
|
"The vertical density or aspect ratio denominator" }, |
|
{ "app0JFIF/thumbWidth", |
|
"The width of the thumbnail, or 0 if there isn't one" }, |
|
{ "app0JFIF/thumbHeight", |
|
"The height of the thumbnail, or 0 if there isn't one" }, |
|
{ "app0JFXX/extensionCode", |
|
"The JFXX extension code identifying thumbnail type: " |
|
+ "(16 = JPEG, 17 = indexed, 19 = RGB" }, |
|
{ "JFIFthumbPalette/thumbWidth", |
|
"The width of the thumbnail" }, |
|
{ "JFIFthumbPalette/thumbHeight", |
|
"The height of the thumbnail" }, |
|
{ "JFIFthumbRGB/thumbWidth", |
|
"The width of the thumbnail" }, |
|
{ "JFIFthumbRGB/thumbHeight", |
|
"The height of the thumbnail" }, |
|
{ "app14Adobe/version", |
|
"The version of Adobe APP14 marker segment" }, |
|
{ "app14Adobe/flags0", |
|
"The flags0 variable of an APP14 marker segment" }, |
|
{ "app14Adobe/flags1", |
|
"The flags1 variable of an APP14 marker segment" }, |
|
{ "app14Adobe/transform", |
|
"The color transform applied to the image " |
|
+ "(0 = Unknown, 1 = YCbCr, 2 = YCCK)" }, |
|
{ "sof/process", |
|
"The JPEG process (0 = Baseline sequential, " |
|
+ "1 = Extended sequential, 2 = Progressive)" }, |
|
{ "sof/samplePrecision", |
|
"The number of bits per sample" }, |
|
{ "sof/numLines", |
|
"The number of lines in the image" }, |
|
{ "sof/samplesPerLine", |
|
"The number of samples per line" }, |
|
{ "sof/numFrameComponents", |
|
"The number of components in the image" }, |
|
{ "componentSpec/componentId", |
|
"The id for this component" }, |
|
{ "componentSpec/HsamplingFactor", |
|
"The horizontal sampling factor for this component" }, |
|
{ "componentSpec/VsamplingFactor", |
|
"The vertical sampling factor for this component" }, |
|
{ "componentSpec/QtableSelector", |
|
"The quantization table to use for this component" }, |
|
{ "sos/numScanComponents", |
|
"The number of components in the scan" }, |
|
{ "sos/startSpectralSelection", |
|
"The first spectral band included in this scan" }, |
|
{ "sos/endSpectralSelection", |
|
"The last spectral band included in this scan" }, |
|
{ "sos/approxHigh", |
|
"The highest bit position included in this scan" }, |
|
{ "sos/approxLow", |
|
"The lowest bit position included in this scan" }, |
|
{ "scanComponentSpec/componentSelector", |
|
"The id of this component" }, |
|
{ "scanComponentSpec/dcHuffTable", |
|
"The huffman table to use for encoding DC coefficients" }, |
|
{ "scanComponentSpec/acHuffTable", |
|
"The huffman table to use for encoding AC coefficients" } |
|
}; |
|
|
|
public JPEGImageMetadataFormatResources() {} |
|
|
|
protected Object[][] getContents() { |
|
// return a copy of the combined commonContents and imageContents; |
|
// in theory we want a deep clone of the combined arrays, |
|
// but since it only contains (immutable) Strings, this shallow |
|
|
|
Object[][] combinedContents = |
|
new Object[commonContents.length + imageContents.length][2]; |
|
int combined = 0; |
|
for (int i = 0; i < commonContents.length; i++, combined++) { |
|
combinedContents[combined][0] = commonContents[i][0]; |
|
combinedContents[combined][1] = commonContents[i][1]; |
|
} |
|
for (int i = 0; i < imageContents.length; i++, combined++) { |
|
combinedContents[combined][0] = imageContents[i][0]; |
|
combinedContents[combined][1] = imageContents[i][1]; |
|
} |
|
return combinedContents; |
|
} |
|
} |