实例介绍
drewnoakes:Extracts Exif, IPTC, XMP, ICC and other metadata from image, video and audio files源码下载
【实例截图】
【核心代码】
文件清单
└── metadata-extractor-b19ac0637ff1481bed8029130a9e8669267b4980
├── build.gradle
├── CONTRIBUTING.md
├── LICENSE
├── metadata-extractor.iml
├── pom.xml
├── README.md
├── Resources
│ ├── favicon-16px.png
│ ├── favicon-256.ico
│ ├── favicon-256px.png
│ ├── favicon-32px.png
│ ├── favicon-48.ico
│ ├── favicon-48px.png
│ ├── favicon.xcf
│ ├── javadoc-stylesheet.css
│ ├── metadata-extractor.ico
│ ├── metadata-extractor-logo-131x30.png
│ ├── metadata-extractor-logo-30px.gif
│ ├── metadata-extractor-logo-500x123.png
│ ├── metadata-extractor-logo-square-64px.png
│ ├── metadata-extractor-logo-square.svg
│ └── metadata-extractor-logo.svg
├── Samples
│ └── com
│ └── drew
│ └── metadata
│ ├── GeoTagMapBuilder.java
│ ├── SampleUsage.java
│ └── XmpSample.java
├── Source
│ └── com
│ └── drew
│ ├── imaging
│ │ ├── avi
│ │ │ ├── AviMetadataReader.java
│ │ │ └── package-info.java
│ │ ├── bmp
│ │ │ ├── BmpMetadataReader.java
│ │ │ └── package-info.java
│ │ ├── eps
│ │ │ ├── EpsMetadataReader.java
│ │ │ └── package-info.java
│ │ ├── FileTypeDetector.java
│ │ ├── FileType.java
│ │ ├── gif
│ │ │ ├── GifMetadataReader.java
│ │ │ └── package-info.java
│ │ ├── heif
│ │ │ ├── HeifHandler.java
│ │ │ ├── HeifMetadataReader.java
│ │ │ └── HeifReader.java
│ │ ├── ico
│ │ │ ├── IcoMetadataReader.java
│ │ │ └── package-info.java
│ │ ├── ImageMetadataReader.java
│ │ ├── ImageProcessingException.java
│ │ ├── jpeg
│ │ │ ├── JpegMetadataReader.java
│ │ │ ├── JpegProcessingException.java
│ │ │ ├── JpegSegmentData.java
│ │ │ ├── JpegSegmentMetadataReader.java
│ │ │ ├── JpegSegmentReader.java
│ │ │ ├── JpegSegmentType.java
│ │ │ └── package-info.java
│ │ ├── mp3
│ │ │ ├── Mp3MetadataReader.java
│ │ │ ├── MpegAudioTypeChecker.java
│ │ │ └── package-info.java
│ │ ├── mp4
│ │ │ ├── Mp4Handler.java
│ │ │ ├── Mp4MetadataReader.java
│ │ │ └── Mp4Reader.java
│ │ ├── package-info.java
│ │ ├── pcx
│ │ │ ├── package-info.java
│ │ │ └── PcxMetadataReader.java
│ │ ├── PhotographicConversions.java
│ │ ├── png
│ │ │ ├── package-info.java
│ │ │ ├── PngChromaticities.java
│ │ │ ├── PngChunk.java
│ │ │ ├── PngChunkReader.java
│ │ │ ├── PngChunkType.java
│ │ │ ├── PngColorType.java
│ │ │ ├── PngHeader.java
│ │ │ ├── PngMetadataReader.java
│ │ │ └── PngProcessingException.java
│ │ ├── psd
│ │ │ ├── package-info.java
│ │ │ └── PsdMetadataReader.java
│ │ ├── quicktime
│ │ │ ├── package-info.java
│ │ │ ├── QuickTimeHandler.java
│ │ │ ├── QuickTimeMetadataReader.java
│ │ │ ├── QuickTimeReader.java
│ │ │ └── QuickTimeTypeChecker.java
│ │ ├── raf
│ │ │ ├── package-info.java
│ │ │ └── RafMetadataReader.java
│ │ ├── riff
│ │ │ ├── package-info.java
│ │ │ ├── RiffHandler.java
│ │ │ ├── RiffProcessingException.java
│ │ │ ├── RiffReader.java
│ │ │ └── RiffTypeChecker.java
│ │ ├── tiff
│ │ │ ├── package-info.java
│ │ │ ├── TiffDataFormat.java
│ │ │ ├── TiffHandler.java
│ │ │ ├── TiffMetadataReader.java
│ │ │ ├── TiffProcessingException.java
│ │ │ └── TiffReader.java
│ │ ├── TypeChecker.java
│ │ ├── wav
│ │ │ ├── package-info.java
│ │ │ └── WavMetadataReader.java
│ │ └── webp
│ │ ├── package-info.java
│ │ └── WebpMetadataReader.java
│ ├── lang
│ │ ├── annotations
│ │ │ ├── NotNull.java
│ │ │ ├── Nullable.java
│ │ │ ├── package-info.java
│ │ │ └── SuppressWarnings.java
│ │ ├── BufferBoundsException.java
│ │ ├── ByteArrayReader.java
│ │ ├── ByteConvert.java
│ │ ├── ByteTrie.java
│ │ ├── ByteUtil.java
│ │ ├── Charsets.java
│ │ ├── CompoundException.java
│ │ ├── DateUtil.java
│ │ ├── GeoLocation.java
│ │ ├── Iterables.java
│ │ ├── KeyValuePair.java
│ │ ├── NullOutputStream.java
│ │ ├── package-info.java
│ │ ├── RandomAccessFileReader.java
│ │ ├── RandomAccessReader.java
│ │ ├── RandomAccessStreamReader.java
│ │ ├── Rational.java
│ │ ├── SequentialByteArrayReader.java
│ │ ├── SequentialReader.java
│ │ ├── StreamReader.java
│ │ ├── StreamUtil.java
│ │ └── StringUtil.java
│ ├── metadata
│ │ ├── adobe
│ │ │ ├── AdobeJpegDescriptor.java
│ │ │ ├── AdobeJpegDirectory.java
│ │ │ ├── AdobeJpegReader.java
│ │ │ └── package-info.java
│ │ ├── Age.java
│ │ ├── apple
│ │ │ └── AppleRunTimeReader.java
│ │ ├── avi
│ │ │ ├── AviDescriptor.java
│ │ │ ├── AviDirectory.java
│ │ │ ├── AviRiffHandler.java
│ │ │ └── package-info.java
│ │ ├── bmp
│ │ │ ├── BmpHeaderDescriptor.java
│ │ │ ├── BmpHeaderDirectory.java
│ │ │ ├── BmpReader.java
│ │ │ └── package-info.java
│ │ ├── Directory.java
│ │ ├── eps
│ │ │ ├── EpsDescriptor.java
│ │ │ ├── EpsDirectory.java
│ │ │ ├── EpsReader.java
│ │ │ └── package-info.java
│ │ ├── ErrorDirectory.java
│ │ ├── exif
│ │ │ ├── ExifDescriptorBase.java
│ │ │ ├── ExifDirectoryBase.java
│ │ │ ├── ExifIFD0Descriptor.java
│ │ │ ├── ExifIFD0Directory.java
│ │ │ ├── ExifImageDescriptor.java
│ │ │ ├── ExifImageDirectory.java
│ │ │ ├── ExifInteropDescriptor.java
│ │ │ ├── ExifInteropDirectory.java
│ │ │ ├── ExifReader.java
│ │ │ ├── ExifSubIFDDescriptor.java
│ │ │ ├── ExifSubIFDDirectory.java
│ │ │ ├── ExifThumbnailDescriptor.java
│ │ │ ├── ExifThumbnailDirectory.java
│ │ │ ├── ExifTiffHandler.java
│ │ │ ├── GpsDescriptor.java
│ │ │ ├── GpsDirectory.java
│ │ │ ├── makernotes
│ │ │ │ ├── AppleMakernoteDescriptor.java
│ │ │ │ ├── AppleMakernoteDirectory.java
│ │ │ │ ├── AppleRunTimeMakernoteDescriptor.java
│ │ │ │ ├── AppleRunTimeMakernoteDirectory.java
│ │ │ │ ├── CanonMakernoteDescriptor.java
│ │ │ │ ├── CanonMakernoteDirectory.java
│ │ │ │ ├── CasioType1MakernoteDescriptor.java
│ │ │ │ ├── CasioType1MakernoteDirectory.java
│ │ │ │ ├── CasioType2MakernoteDescriptor.java
│ │ │ │ ├── CasioType2MakernoteDirectory.java
│ │ │ │ ├── FujifilmMakernoteDescriptor.java
│ │ │ │ ├── FujifilmMakernoteDirectory.java
│ │ │ │ ├── KodakMakernoteDescriptor.java
│ │ │ │ ├── KodakMakernoteDirectory.java
│ │ │ │ ├── KyoceraMakernoteDescriptor.java
│ │ │ │ ├── KyoceraMakernoteDirectory.java
│ │ │ │ ├── LeicaMakernoteDescriptor.java
│ │ │ │ ├── LeicaMakernoteDirectory.java
│ │ │ │ ├── LeicaType5MakernoteDescriptor.java
│ │ │ │ ├── LeicaType5MakernoteDirectory.java
│ │ │ │ ├── NikonPictureControl1Descriptor.java
│ │ │ │ ├── NikonPictureControl1Directory.java
│ │ │ │ ├── NikonPictureControl2Descriptor.java
│ │ │ │ ├── NikonPictureControl2Directory.java
│ │ │ │ ├── NikonType1MakernoteDescriptor.java
│ │ │ │ ├── NikonType1MakernoteDirectory.java
│ │ │ │ ├── NikonType2MakernoteDescriptor.java
│ │ │ │ ├── NikonType2MakernoteDirectory.java
│ │ │ │ ├── OlympusCameraSettingsMakernoteDescriptor.java
│ │ │ │ ├── OlympusCameraSettingsMakernoteDirectory.java
│ │ │ │ ├── OlympusEquipmentMakernoteDescriptor.java
│ │ │ │ ├── OlympusEquipmentMakernoteDirectory.java
│ │ │ │ ├── OlympusFocusInfoMakernoteDescriptor.java
│ │ │ │ ├── OlympusFocusInfoMakernoteDirectory.java
│ │ │ │ ├── OlympusImageProcessingMakernoteDescriptor.java
│ │ │ │ ├── OlympusImageProcessingMakernoteDirectory.java
│ │ │ │ ├── OlympusMakernoteDescriptor.java
│ │ │ │ ├── OlympusMakernoteDirectory.java
│ │ │ │ ├── OlympusRawDevelopment2MakernoteDescriptor.java
│ │ │ │ ├── OlympusRawDevelopment2MakernoteDirectory.java
│ │ │ │ ├── OlympusRawDevelopmentMakernoteDescriptor.java
│ │ │ │ ├── OlympusRawDevelopmentMakernoteDirectory.java
│ │ │ │ ├── OlympusRawInfoMakernoteDescriptor.java
│ │ │ │ ├── OlympusRawInfoMakernoteDirectory.java
│ │ │ │ ├── package-info.java
│ │ │ │ ├── PanasonicMakernoteDescriptor.java
│ │ │ │ ├── PanasonicMakernoteDirectory.java
│ │ │ │ ├── PentaxMakernoteDescriptor.java
│ │ │ │ ├── PentaxMakernoteDirectory.java
│ │ │ │ ├── ReconyxHyperFire2MakernoteDescriptor.java
│ │ │ │ ├── ReconyxHyperFire2MakernoteDirectory.java
│ │ │ │ ├── ReconyxHyperFireMakernoteDescriptor.java
│ │ │ │ ├── ReconyxHyperFireMakernoteDirectory.java
│ │ │ │ ├── ReconyxUltraFireMakernoteDescriptor.java
│ │ │ │ ├── ReconyxUltraFireMakernoteDirectory.java
│ │ │ │ ├── RicohMakernoteDescriptor.java
│ │ │ │ ├── RicohMakernoteDirectory.java
│ │ │ │ ├── SamsungType2MakernoteDescriptor.java
│ │ │ │ ├── SamsungType2MakernoteDirectory.java
│ │ │ │ ├── SanyoMakernoteDescriptor.java
│ │ │ │ ├── SanyoMakernoteDirectory.java
│ │ │ │ ├── SigmaMakernoteDescriptor.java
│ │ │ │ ├── SigmaMakernoteDirectory.java
│ │ │ │ ├── SonyEncodedDataDirectoryBase.java
│ │ │ │ ├── SonyTag9050bDescriptor.java
│ │ │ │ ├── SonyTag9050bDirectory.java
│ │ │ │ ├── SonyType1MakernoteDescriptor.java
│ │ │ │ ├── SonyType1MakernoteDirectory.java
│ │ │ │ ├── SonyType6MakernoteDescriptor.java
│ │ │ │ └── SonyType6MakernoteDirectory.java
│ │ │ ├── package-info.java
│ │ │ ├── PanasonicRawDistortionDescriptor.java
│ │ │ ├── PanasonicRawDistortionDirectory.java
│ │ │ ├── PanasonicRawIFD0Descriptor.java
│ │ │ ├── PanasonicRawIFD0Directory.java
│ │ │ ├── PanasonicRawWbInfo2Descriptor.java
│ │ │ ├── PanasonicRawWbInfo2Directory.java
│ │ │ ├── PanasonicRawWbInfoDescriptor.java
│ │ │ ├── PanasonicRawWbInfoDirectory.java
│ │ │ ├── PrintIMDescriptor.java
│ │ │ └── PrintIMDirectory.java
│ │ ├── Face.java
│ │ ├── file
│ │ │ ├── FileSystemDescriptor.java
│ │ │ ├── FileSystemDirectory.java
│ │ │ ├── FileSystemMetadataReader.java
│ │ │ ├── FileTypeDescriptor.java
│ │ │ ├── FileTypeDirectory.java
│ │ │ └── package-info.java
│ │ ├── gif
│ │ │ ├── GifAnimationDescriptor.java
│ │ │ ├── GifAnimationDirectory.java
│ │ │ ├── GifCommentDescriptor.java
│ │ │ ├── GifCommentDirectory.java
│ │ │ ├── GifControlDescriptor.java
│ │ │ ├── GifControlDirectory.java
│ │ │ ├── GifHeaderDescriptor.java
│ │ │ ├── GifHeaderDirectory.java
│ │ │ ├── GifImageDescriptor.java
│ │ │ ├── GifImageDirectory.java
│ │ │ ├── GifReader.java
│ │ │ └── package-info.java
│ │ ├── heif
│ │ │ ├── boxes
│ │ │ │ ├── AuxiliaryTypeProperty.java
│ │ │ │ ├── Box.java
│ │ │ │ ├── ColourInformationBox.java
│ │ │ │ ├── FileTypeBox.java
│ │ │ │ ├── FullBox.java
│ │ │ │ ├── HandlerBox.java
│ │ │ │ ├── ImageRotationBox.java
│ │ │ │ ├── ImageSpatialExtentsProperty.java
│ │ │ │ ├── ItemInfoBox.java
│ │ │ │ ├── ItemLocationBox.java
│ │ │ │ ├── ItemProtectionBox.java
│ │ │ │ ├── PixelInformationBox.java
│ │ │ │ └── PrimaryItemBox.java
│ │ │ ├── HeifBoxHandler.java
│ │ │ ├── HeifBoxTypes.java
│ │ │ ├── HeifContainerTypes.java
│ │ │ ├── HeifDescriptor.java
│ │ │ ├── HeifDirectory.java
│ │ │ ├── HeifHandlerFactory.java
│ │ │ ├── HeifItemTypes.java
│ │ │ ├── HeifPictureHandler.java
│ │ │ └── package-info.java
│ │ ├── icc
│ │ │ ├── IccDescriptor.java
│ │ │ ├── IccDirectory.java
│ │ │ ├── IccReader.java
│ │ │ └── package-info.java
│ │ ├── ico
│ │ │ ├── IcoDescriptor.java
│ │ │ ├── IcoDirectory.java
│ │ │ ├── IcoReader.java
│ │ │ └── package-info.java
│ │ ├── iptc
│ │ │ ├── IptcDescriptor.java
│ │ │ ├── IptcDirectory.java
│ │ │ ├── IptcReader.java
│ │ │ ├── Iso2022Converter.java
│ │ │ └── package-info.java
│ │ ├── jfif
│ │ │ ├── JfifDescriptor.java
│ │ │ ├── JfifDirectory.java
│ │ │ ├── JfifReader.java
│ │ │ └── package-info.java
│ │ ├── jfxx
│ │ │ ├── JfxxDescriptor.java
│ │ │ ├── JfxxDirectory.java
│ │ │ ├── JfxxReader.java
│ │ │ └── package-info.java
│ │ ├── jpeg
│ │ │ ├── HuffmanTablesDescriptor.java
│ │ │ ├── HuffmanTablesDirectory.java
│ │ │ ├── JpegCommentDescriptor.java
│ │ │ ├── JpegCommentDirectory.java
│ │ │ ├── JpegCommentReader.java
│ │ │ ├── JpegComponent.java
│ │ │ ├── JpegDescriptor.java
│ │ │ ├── JpegDhtReader.java
│ │ │ ├── JpegDirectory.java
│ │ │ ├── JpegDnlReader.java
│ │ │ ├── JpegReader.java
│ │ │ └── package-info.java
│ │ ├── MetadataException.java
│ │ ├── Metadata.java
│ │ ├── MetadataReader.java
│ │ ├── mov
│ │ │ ├── atoms
│ │ │ │ ├── Atom.java
│ │ │ │ ├── canon
│ │ │ │ │ └── CanonThumbnailAtom.java
│ │ │ │ ├── FileTypeCompatibilityAtom.java
│ │ │ │ ├── FullAtom.java
│ │ │ │ ├── HandlerReferenceAtom.java
│ │ │ │ ├── MediaHeaderAtom.java
│ │ │ │ ├── MovieHeaderAtom.java
│ │ │ │ ├── MusicSampleDescriptionAtom.java
│ │ │ │ ├── SampleDescriptionAtom.java
│ │ │ │ ├── SampleDescription.java
│ │ │ │ ├── SoundInformationMediaHeaderAtom.java
│ │ │ │ ├── SoundSampleDescriptionAtom.java
│ │ │ │ ├── SubtitleSampleDescriptionAtom.java
│ │ │ │ ├── TextSampleDescriptionAtom.java
│ │ │ │ ├── TimecodeInformationMediaAtom.java
│ │ │ │ ├── TimecodeSampleDescriptionAtom.java
│ │ │ │ ├── TimeToSampleAtom.java
│ │ │ │ ├── TrackHeaderAtom.java
│ │ │ │ ├── VideoInformationMediaHeaderAtom.java
│ │ │ │ └── VideoSampleDescriptionAtom.java
│ │ │ ├── media
│ │ │ │ ├── package-info.java
│ │ │ │ ├── QuickTimeMediaDirectory.java
│ │ │ │ ├── QuickTimeMusicDescriptor.java
│ │ │ │ ├── QuickTimeMusicDirectory.java
│ │ │ │ ├── QuickTimeMusicHandler.java
│ │ │ │ ├── QuickTimeSoundDescriptor.java
│ │ │ │ ├── QuickTimeSoundDirectory.java
│ │ │ │ ├── QuickTimeSoundHandler.java
│ │ │ │ ├── QuickTimeSubtitleDescriptor.java
│ │ │ │ ├── QuickTimeSubtitleDirectory.java
│ │ │ │ ├── QuickTimeSubtitleHandler.java
│ │ │ │ ├── QuickTimeTextDescriptor.java
│ │ │ │ ├── QuickTimeTextDirectory.java
│ │ │ │ ├── QuickTimeTextHandler.java
│ │ │ │ ├── QuickTimeTimecodeDescriptor.java
│ │ │ │ ├── QuickTimeTimecodeDirectory.java
│ │ │ │ ├── QuickTimeTimecodeHandler.java
│ │ │ │ ├── QuickTimeVideoDescriptor.java
│ │ │ │ ├── QuickTimeVideoDirectory.java
│ │ │ │ └── QuickTimeVideoHandler.java
│ │ │ ├── metadata
│ │ │ │ ├── package-info.java
│ │ │ │ ├── QuickTimeDataHandler.java
│ │ │ │ ├── QuickTimeDirectoryHandler.java
│ │ │ │ ├── QuickTimeMetadataDescriptor.java
│ │ │ │ └── QuickTimeMetadataDirectory.java
│ │ │ ├── package-info.java
│ │ │ ├── QuickTimeAtomHandler.java
│ │ │ ├── QuickTimeAtomTypes.java
│ │ │ ├── QuickTimeContainerTypes.java
│ │ │ ├── QuickTimeContext.java
│ │ │ ├── QuickTimeDescriptor.java
│ │ │ ├── QuickTimeDictionary.java
│ │ │ ├── QuickTimeDirectory.java
│ │ │ ├── QuickTimeHandlerFactory.java
│ │ │ ├── QuickTimeMediaHandler.java
│ │ │ └── QuickTimeMetadataHandler.java
│ │ ├── mp3
│ │ │ ├── Mp3Descriptor.java
│ │ │ ├── Mp3Directory.java
│ │ │ ├── Mp3Reader.java
│ │ │ └── package-info.java
│ │ ├── mp4
│ │ │ ├── media
│ │ │ │ ├── Mp4HintDescriptor.java
│ │ │ │ ├── Mp4HintDirectory.java
│ │ │ │ ├── Mp4HintHandler.java
│ │ │ │ ├── Mp4MediaDirectory.java
│ │ │ │ ├── Mp4MetaDescriptor.java
│ │ │ │ ├── Mp4MetaDirectory.java
│ │ │ │ ├── Mp4MetaHandler.java
│ │ │ │ ├── Mp4SoundDescriptor.java
│ │ │ │ ├── Mp4SoundDirectory.java
│ │ │ │ ├── Mp4SoundHandler.java
│ │ │ │ ├── Mp4TextDescriptor.java
│ │ │ │ ├── Mp4TextDirectory.java
│ │ │ │ ├── Mp4TextHandler.java
│ │ │ │ ├── Mp4UuidBoxDescriptor.java
│ │ │ │ ├── Mp4UuidBoxDirectory.java
│ │ │ │ ├── Mp4UuidBoxHandler.java
│ │ │ │ ├── Mp4VideoDescriptor.java
│ │ │ │ ├── Mp4VideoDirectory.java
│ │ │ │ ├── Mp4VideoHandler.java
│ │ │ │ └── package-info.java
│ │ │ ├── Mp4BoxHandler.java
│ │ │ ├── Mp4BoxTypes.java
│ │ │ ├── Mp4ContainerTypes.java
│ │ │ ├── Mp4Context.java
│ │ │ ├── Mp4Descriptor.java
│ │ │ ├── Mp4Dictionary.java
│ │ │ ├── Mp4Directory.java
│ │ │ ├── Mp4MediaHandler.java
│ │ │ └── package-info.java
│ │ ├── package-info.java
│ │ ├── pcx
│ │ │ ├── package-info.java
│ │ │ ├── PcxDescriptor.java
│ │ │ ├── PcxDirectory.java
│ │ │ └── PcxReader.java
│ │ ├── photoshop
│ │ │ ├── DuckyDirectory.java
│ │ │ ├── DuckyReader.java
│ │ │ ├── Knot.java
│ │ │ ├── package-info.java
│ │ │ ├── PhotoshopDescriptor.java
│ │ │ ├── PhotoshopDirectory.java
│ │ │ ├── PhotoshopReader.java
│ │ │ ├── PhotoshopTiffHandler.java
│ │ │ ├── PsdHeaderDescriptor.java
│ │ │ ├── PsdHeaderDirectory.java
│ │ │ ├── PsdReader.java
│ │ │ └── Subpath.java
│ │ ├── plist
│ │ │ └── BplistReader.java
│ │ ├── png
│ │ │ ├── package-info.java
│ │ │ ├── PngChromaticitiesDirectory.java
│ │ │ ├── PngDescriptor.java
│ │ │ └── PngDirectory.java
│ │ ├── Schema.java
│ │ ├── StringValue.java
│ │ ├── TagDescriptor.java
│ │ ├── Tag.java
│ │ ├── tiff
│ │ │ ├── DirectoryTiffHandler.java
│ │ │ └── package-info.java
│ │ ├── wav
│ │ │ ├── package-info.java
│ │ │ ├── WavDescriptor.java
│ │ │ ├── WavDirectory.java
│ │ │ └── WavRiffHandler.java
│ │ ├── webp
│ │ │ ├── package-info.java
│ │ │ ├── WebpDescriptor.java
│ │ │ ├── WebpDirectory.java
│ │ │ └── WebpRiffHandler.java
│ │ └── xmp
│ │ ├── package-info.java
│ │ ├── XmpDescriptor.java
│ │ ├── XmpDirectory.java
│ │ ├── XmpReader.java
│ │ └── XmpWriter.java
│ └── tools
│ ├── ExtractJpegSegmentTool.java
│ ├── FileUtil.java
│ ├── package-info.java
│ ├── ProcessAllImagesInFolderUtility.java
│ └── ProcessUrlUtility.java
├── Tests
│ ├── com
│ │ └── drew
│ │ ├── imaging
│ │ │ ├── FileTypeTest.java
│ │ │ ├── jpeg
│ │ │ │ ├── JpegMetadataReaderTest.java
│ │ │ │ ├── JpegSegmentDataTest.java
│ │ │ │ └── JpegSegmentReaderTest.java
│ │ │ └── png
│ │ │ ├── PngChunkReaderTest.java
│ │ │ ├── PngChunkTypeTest.java
│ │ │ └── PngMetadataReaderTest.java
│ │ ├── lang
│ │ │ ├── ByteArrayReaderTest.java
│ │ │ ├── ByteConvertTest.java
│ │ │ ├── ByteTrieTest.java
│ │ │ ├── ByteUtilTest.java
│ │ │ ├── CompoundExceptionTest.java
│ │ │ ├── GeoLocationTest.java
│ │ │ ├── NullOutputStreamTest.java
│ │ │ ├── RandomAccessFileReaderTest.java
│ │ │ ├── RandomAccessStreamReaderTest.java
│ │ │ ├── RandomAccessTestBase.java
│ │ │ ├── RationalTest.java
│ │ │ ├── SequentialAccessTestBase.java
│ │ │ ├── SequentialByteArrayReaderTest.java
│ │ │ ├── StreamReaderTest.java
│ │ │ └── StringUtilTest.java
│ │ ├── metadata
│ │ │ ├── adobe
│ │ │ │ └── AdobeJpegReaderTest.java
│ │ │ ├── AgeTest.java
│ │ │ ├── bmp
│ │ │ │ └── BmpReaderTest.java
│ │ │ ├── DirectoryTest.java
│ │ │ ├── eps
│ │ │ │ └── EpsReaderTest.java
│ │ │ ├── exif
│ │ │ │ ├── CanonMakernoteDescriptorTest.java
│ │ │ │ ├── ExifDirectoryTest.java
│ │ │ │ ├── ExifIFD0DescriptorTest.java
│ │ │ │ ├── ExifInteropDescriptorTest.java
│ │ │ │ ├── ExifReaderTest.java
│ │ │ │ ├── ExifSubIFDDescriptorTest.java
│ │ │ │ ├── ExifThumbnailDescriptorTest.java
│ │ │ │ ├── NikonType1MakernoteTest.java
│ │ │ │ ├── NikonType2MakernoteTest1.java
│ │ │ │ ├── NikonType2MakernoteTest2.java
│ │ │ │ ├── PanasonicMakernoteDescriptorTest.java
│ │ │ │ ├── SonyType1MakernoteTest.java
│ │ │ │ └── SonyType6MakernoteTest.java
│ │ │ ├── gif
│ │ │ │ └── GifReaderTest.java
│ │ │ ├── icc
│ │ │ │ └── IccReaderTest.java
│ │ │ ├── iptc
│ │ │ │ ├── IptcDirectoryTest.java
│ │ │ │ ├── IptcReaderTest.java
│ │ │ │ └── Iso2022ConverterTest.java
│ │ │ ├── jfif
│ │ │ │ └── JfifReaderTest.java
│ │ │ ├── jpeg
│ │ │ │ ├── HuffmanTablesDescriptorTest.java
│ │ │ │ ├── HuffmanTablesDirectoryTest.java
│ │ │ │ ├── JpegComponentTest.java
│ │ │ │ ├── JpegDescriptorTest.java
│ │ │ │ ├── JpegDhtReaderTest.java
│ │ │ │ ├── JpegDirectoryTest.java
│ │ │ │ └── JpegReaderTest.java
│ │ │ ├── MetadataTest.java
│ │ │ ├── MockDirectory.java
│ │ │ ├── photoshop
│ │ │ │ └── PsdReaderTest.java
│ │ │ ├── plist
│ │ │ │ └── BplistReaderTest.java
│ │ │ ├── png
│ │ │ │ └── PngDescriptorTest.java
│ │ │ └── xmp
│ │ │ └── XmpReaderTest.java
│ │ └── testing
│ │ └── TestHelper.java
│ └── Data
│ ├── 10x12x16bit-CMYK.psd
│ ├── 16color-10x10.bmp
│ ├── 24bpp-10x10.bmp
│ ├── 256color-10x10.bmp
│ ├── 8x4x8bit-Grayscale.eps
│ ├── 8x4x8bit-Grayscale.psd
│ ├── adobeJpeg1.eps
│ ├── adobeJpeg1.jpg
│ ├── adobeJpeg1.jpg.app0
│ ├── adobeJpeg1.jpg.app1.0
│ ├── adobeJpeg1.jpg.app1.1
│ ├── adobeJpeg1.jpg.app2
│ ├── adobeJpeg1.jpg.appd
│ ├── adobeJpeg1.jpg.appe
│ ├── Apple_RunTime.plist
│ ├── Apple_Unknown_Data.plist
│ ├── crash01.jpg
│ ├── crash01.jpg.app1
│ ├── dotnet-256x256-alpha-palette.png
│ ├── gimp-8x12-greyscale-alpha-time-background.png
│ ├── iccDataInvalid1.jpg.app2
│ ├── invalid-iCCP-missing-adler32-checksum.png
│ ├── iptc1.jpg.appd
│ ├── iptc2-photoshop6.jpg.appd
│ ├── iptc-encoding-defined-utf8.bytes
│ ├── iptc-encoding-undefined-iso.bytes
│ ├── iptc-encoding-unknown-2.bytes
│ ├── iptc-encoding-unknown.bytes
│ ├── manuallyAddedThumbnail.jpg
│ ├── manuallyAddedThumbnail.jpg.app1
│ ├── manuallyAddedThumbnail.jpg.com
│ ├── mspaint-10x10.gif
│ ├── mspaint-8x10.png
│ ├── nikonMakernoteType1.jpg
│ ├── nikonMakernoteType1.jpg.app0
│ ├── nikonMakernoteType1.jpg.app1
│ ├── nikonMakernoteType1.jpg.appd
│ ├── nikonMakernoteType1.jpg.appe
│ ├── nikonMakernoteType2a.jpg.app1
│ ├── nikonMakernoteType2b.jpg
│ ├── nikonMakernoteType2b.jpg.app1
│ ├── nikonMakernoteType2b.jpg.appd
│ ├── noExif.jpg
│ ├── noExif.jpg.app0
│ ├── noExif.jpg.com
│ ├── photoshop-8x12-16colorpalette.png
│ ├── photoshop-8x12-32colors-alpha.gif
│ ├── photoshop-8x12-rgb24-all-metadata.png
│ ├── photoshop-8x12-rgb24-interlaced.png
│ ├── photoshop-8x12-rgb24.png
│ ├── photoshop-8x12-rgba32-interlaced.png
│ ├── photoshop-8x12-rgba32.png
│ ├── recursiveDirectories.jpg.app1
│ ├── repeatedOrientationTagWithDifferentValues.jpg.app1
│ ├── simple.jpg
│ ├── simple.jpg.app1
│ ├── simple.jpg.com
│ ├── simple.jpg.sof0
│ ├── sonyType1.jpg.app1
│ ├── sonyType6.jpg.app1.0
│ ├── sonyType6.jpg.app1.1
│ ├── sonyType6.jpg.app4.0
│ ├── sonyType6.jpg.app4.1
│ ├── windowsXpFields.jpg
│ ├── windowsXpFields.jpg.app0
│ ├── windowsXpFields.jpg.app1
│ ├── windowsXpFields.jpg.app2
│ ├── windowsXpFields.jpg.appd
│ ├── windowsXpFields.jpg.appe
│ ├── withExifAndIptc.jpg
│ ├── withExifAndIptc.jpg.app0
│ ├── withExifAndIptc.jpg.app1.0
│ ├── withExifAndIptc.jpg.app1.1
│ ├── withExifAndIptc.jpg.app2
│ ├── withExifAndIptc.jpg.appd
│ ├── withExifAndIptc.jpg.appe
│ ├── withExif.jpg
│ ├── withExif.jpg.app1
│ ├── withExif.jpg.appd
│ ├── withIptcExifGps.jpg
│ ├── withIptc.jpg
│ ├── withIptcPhotoshop6.jpg
│ ├── withPanasonicFaces.jpg
│ ├── withPanasonicFaces.jpg.app1
│ ├── withTypicalHuffman.jpg
│ ├── withUncompressedRGBThumbnail.jpg
│ ├── withUncompressedRGBThumbnail.jpg.app1
│ ├── withUncompressedRGBThumbnail.jpg.com
│ ├── withUncompressedYCbCrThumbnail2.jpg
│ ├── withUncompressedYCbCrThumbnail3.jpg
│ ├── withUncompressedYCbCrThumbnail4.jpg
│ ├── withUncompressedYCbCrThumbnail.jpg
│ ├── withXmpAndIptc.jpg.app1.0
│ ├── withXmpAndIptc.jpg.app1.1
│ ├── withXmpAndIptc.jpg.app2
│ ├── withXmpAndIptc.jpg.appd
│ └── withXmp.jpg
├── wiki
└── wiki-images
90 directories, 604 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论