|
| 1 | +package org.fugerit.java.doc.val.imageio.tiff; |
| 2 | + |
| 3 | +import com.twelvemonkeys.imageio.metadata.tiff.TIFF; |
| 4 | + |
| 5 | +import java.util.HashMap; |
| 6 | +import java.util.Map; |
| 7 | + |
| 8 | +public class ImageIOTiffTags { |
| 9 | + |
| 10 | + private ImageIOTiffTags() {} |
| 11 | + |
| 12 | + public static String tagLabel( int idTag ) { |
| 13 | + return TIFF_TAG_NAMES.get( idTag ); |
| 14 | + } |
| 15 | + |
| 16 | + public static String tagDescription( int idTag ) { |
| 17 | + String label = tagLabel( idTag ); |
| 18 | + if ( label == null ) { |
| 19 | + return String.valueOf( idTag ); |
| 20 | + } else { |
| 21 | + return String.format( "%s (%s)", idTag, label ); |
| 22 | + } |
| 23 | + } |
| 24 | + |
| 25 | + private static final Map<Integer, String> TIFF_TAG_NAMES = new HashMap<>(); |
| 26 | + static { |
| 27 | + TIFF_TAG_NAMES.put(TIFF.TAG_EXIF_IFD, "ExifIFD"); |
| 28 | + TIFF_TAG_NAMES.put(TIFF.TAG_GPS_IFD, "GpsIFD"); |
| 29 | + TIFF_TAG_NAMES.put(TIFF.TAG_INTEROP_IFD, "InteropIFD"); |
| 30 | + TIFF_TAG_NAMES.put(TIFF.TAG_IMAGE_WIDTH, "ImageWidth"); |
| 31 | + TIFF_TAG_NAMES.put(TIFF.TAG_IMAGE_HEIGHT, "ImageHeight"); |
| 32 | + TIFF_TAG_NAMES.put(TIFF.TAG_BITS_PER_SAMPLE, "BitsPerSample"); |
| 33 | + TIFF_TAG_NAMES.put(TIFF.TAG_COMPRESSION, "Compression"); |
| 34 | + TIFF_TAG_NAMES.put(TIFF.TAG_PHOTOMETRIC_INTERPRETATION, "PhotometricInterpretation"); |
| 35 | + TIFF_TAG_NAMES.put(TIFF.TAG_FILL_ORDER, "FillOrder"); |
| 36 | + TIFF_TAG_NAMES.put(TIFF.TAG_ORIENTATION, "Orientation"); |
| 37 | + TIFF_TAG_NAMES.put(TIFF.TAG_SAMPLES_PER_PIXEL, "SamplesPerPixel"); |
| 38 | + TIFF_TAG_NAMES.put(TIFF.TAG_PLANAR_CONFIGURATION, "PlanarConfiguration"); |
| 39 | + TIFF_TAG_NAMES.put(TIFF.TAG_SAMPLE_FORMAT, "SampleFormat"); |
| 40 | + TIFF_TAG_NAMES.put(TIFF.TAG_YCBCR_SUB_SAMPLING, "YCbCrSubSampling"); |
| 41 | + TIFF_TAG_NAMES.put(TIFF.TAG_YCBCR_POSITIONING, "YCbCrPositioning"); |
| 42 | + TIFF_TAG_NAMES.put(TIFF.TAG_X_RESOLUTION, "XResolution"); |
| 43 | + TIFF_TAG_NAMES.put(TIFF.TAG_Y_RESOLUTION, "YResolution"); |
| 44 | + TIFF_TAG_NAMES.put(TIFF.TAG_X_POSITION, "XPosition"); |
| 45 | + TIFF_TAG_NAMES.put(TIFF.TAG_Y_POSITION, "YPosition"); |
| 46 | + TIFF_TAG_NAMES.put(TIFF.TAG_RESOLUTION_UNIT, "ResolutionUnit"); |
| 47 | + TIFF_TAG_NAMES.put(TIFF.TAG_STRIP_OFFSETS, "StripOffsets"); |
| 48 | + TIFF_TAG_NAMES.put(TIFF.TAG_ROWS_PER_STRIP, "RowsPerStrip"); |
| 49 | + TIFF_TAG_NAMES.put(TIFF.TAG_STRIP_BYTE_COUNTS, "StripByteCounts"); |
| 50 | + TIFF_TAG_NAMES.put(TIFF.TAG_FREE_OFFSETS, "FreeOffsets"); |
| 51 | + TIFF_TAG_NAMES.put(TIFF.TAG_FREE_BYTE_COUNTS, "FreeByteCounts"); |
| 52 | + TIFF_TAG_NAMES.put(TIFF.TAG_JPEG_INTERCHANGE_FORMAT, "JPEGInterchangeFormat"); |
| 53 | + TIFF_TAG_NAMES.put(TIFF.TAG_JPEG_INTERCHANGE_FORMAT_LENGTH, "JPEGInterchangeFormatLength"); |
| 54 | + TIFF_TAG_NAMES.put(TIFF.TAG_GROUP3OPTIONS, "Group3Options"); |
| 55 | + TIFF_TAG_NAMES.put(TIFF.TAG_GROUP4OPTIONS, "Group4Options"); |
| 56 | + TIFF_TAG_NAMES.put(TIFF.TAG_TRANSFER_FUNCTION, "TransferFunction"); |
| 57 | + TIFF_TAG_NAMES.put(TIFF.TAG_PREDICTOR, "Predictor"); |
| 58 | + TIFF_TAG_NAMES.put(TIFF.TAG_WHITE_POINT, "WhitePoint"); |
| 59 | + TIFF_TAG_NAMES.put(TIFF.TAG_PRIMARY_CHROMATICITIES, "PrimaryChromaticities"); |
| 60 | + TIFF_TAG_NAMES.put(TIFF.TAG_COLOR_MAP, "ColorMap"); |
| 61 | + TIFF_TAG_NAMES.put(TIFF.TAG_INK_SET, "InkSet"); |
| 62 | + TIFF_TAG_NAMES.put(TIFF.TAG_INK_NAMES, "InkNames"); |
| 63 | + TIFF_TAG_NAMES.put(TIFF.TAG_NUMBER_OF_INKS, "NumberOfInks"); |
| 64 | + TIFF_TAG_NAMES.put(TIFF.TAG_EXTRA_SAMPLES, "ExtraSamples"); |
| 65 | + TIFF_TAG_NAMES.put(TIFF.TAG_TRANSFER_RANGE, "TransferRange"); |
| 66 | + TIFF_TAG_NAMES.put(TIFF.TAG_YCBCR_COEFFICIENTS, "YCbCrCoefficients"); |
| 67 | + TIFF_TAG_NAMES.put(TIFF.TAG_REFERENCE_BLACK_WHITE, "ReferenceBlackWhite"); |
| 68 | + TIFF_TAG_NAMES.put(TIFF.TAG_DATE_TIME, "DateTime"); |
| 69 | + TIFF_TAG_NAMES.put(TIFF.TAG_DOCUMENT_NAME, "DocumentName"); |
| 70 | + TIFF_TAG_NAMES.put(TIFF.TAG_IMAGE_DESCRIPTION, "ImageDescription"); |
| 71 | + TIFF_TAG_NAMES.put(TIFF.TAG_MAKE, "Make"); |
| 72 | + TIFF_TAG_NAMES.put(TIFF.TAG_MODEL, "Model"); |
| 73 | + TIFF_TAG_NAMES.put(TIFF.TAG_PAGE_NAME, "PageName"); |
| 74 | + TIFF_TAG_NAMES.put(TIFF.TAG_PAGE_NUMBER, "PageNumber"); |
| 75 | + TIFF_TAG_NAMES.put(TIFF.TAG_SOFTWARE, "Software"); |
| 76 | + TIFF_TAG_NAMES.put(TIFF.TAG_ARTIST, "Artist"); |
| 77 | + TIFF_TAG_NAMES.put(TIFF.TAG_HOST_COMPUTER, "HostComputer"); |
| 78 | + TIFF_TAG_NAMES.put(TIFF.TAG_COPYRIGHT, "Copyright"); |
| 79 | + TIFF_TAG_NAMES.put(TIFF.TAG_SUBFILE_TYPE, "SubfileType"); |
| 80 | + TIFF_TAG_NAMES.put(TIFF.TAG_OLD_SUBFILE_TYPE, "OldSubfileType"); |
| 81 | + TIFF_TAG_NAMES.put(TIFF.TAG_SUB_IFD, "SubIFD"); |
| 82 | + TIFF_TAG_NAMES.put(TIFF.TAG_XMP, "XMP"); |
| 83 | + TIFF_TAG_NAMES.put(TIFF.TAG_IPTC, "IPTC"); |
| 84 | + TIFF_TAG_NAMES.put(TIFF.TAG_PHOTOSHOP, "Photoshop"); |
| 85 | + TIFF_TAG_NAMES.put(TIFF.TAG_PHOTOSHOP_IMAGE_SOURCE_DATA, "PhotoshopImageSourceData"); |
| 86 | + TIFF_TAG_NAMES.put(TIFF.TAG_PHOTOSHOP_ANNOTATIONS, "PhotoshopAnnotations"); |
| 87 | + TIFF_TAG_NAMES.put(TIFF.TAG_ICC_PROFILE, "ICCProfile"); |
| 88 | + TIFF_TAG_NAMES.put(TIFF.TAG_MODI_BLC, "ModiBLC"); |
| 89 | + TIFF_TAG_NAMES.put(TIFF.TAG_MODI_VECTOR, "ModiVector"); |
| 90 | + TIFF_TAG_NAMES.put(TIFF.TAG_MODI_PTC, "ModiPTC"); |
| 91 | + TIFF_TAG_NAMES.put(TIFF.TAG_MODI_PLAIN_TEXT, "ModiPlainText"); |
| 92 | + TIFF_TAG_NAMES.put(TIFF.TAG_MODI_OLE_PROPERTY_SET, "ModiOLEPropertySet"); |
| 93 | + TIFF_TAG_NAMES.put(TIFF.TAG_MODI_TEXT_POS_INFO, "ModiTextPosInfo"); |
| 94 | + TIFF_TAG_NAMES.put(TIFF.TAG_TILE_WIDTH, "TileWidth"); |
| 95 | + TIFF_TAG_NAMES.put(TIFF.TAG_TILE_HEIGTH, "TileHeight"); |
| 96 | + TIFF_TAG_NAMES.put(TIFF.TAG_TILE_OFFSETS, "TileOffsets"); |
| 97 | + TIFF_TAG_NAMES.put(TIFF.TAG_TILE_BYTE_COUNTS, "TileByteCounts"); |
| 98 | + TIFF_TAG_NAMES.put(TIFF.TAG_JPEG_TABLES, "JPEGTables"); |
| 99 | + TIFF_TAG_NAMES.put(TIFF.TAG_OLD_JPEG_PROC, "OldJPEGProc"); |
| 100 | + TIFF_TAG_NAMES.put(TIFF.TAG_OLD_JPEG_Q_TABLES, "OldJPEGQTables"); |
| 101 | + TIFF_TAG_NAMES.put(TIFF.TAG_OLD_JPEG_DC_TABLES, "OldJPEGDCTables"); |
| 102 | + } |
| 103 | + |
| 104 | +} |
0 commit comments