由于错误的 EXIF 数据,JPEG 照片在插入 Adob​​e LiveCycle Image Field 时不会显示

Due to wrong EXIF Data JPEG photos will not show when inserted into Adobe LiveCycle Image Field

UPDATE1:问题已确认,因为相机添加了错误的EXIFTool Samsung APP5标签。根据这个网站:http://exif.regex.info/exif.cgi,图像有未知的 App5 段。

如果我删除字节:E5 00 02 FF,图像将显示。

此外,我意识到如果我使用 http://www.exifpurge.com/ 删除 EXIF 数据,图像将会显示。看来我必须编写 Java 代码才能在插入图像时完全删除 EXIF 数据。

任何其他建议将不胜感激。

更新2: 已找到答案。请务必阅读@Mark 在下面的答案中发表的评论。它有很多有价值的细节。


原问题描述:

检查这张图片:

https://photos.app.goo.gl/fothcLY8MxRwBeED8(上传到Google张照片,好像固定在Google照片)

https://drive.google.com/file/d/1cBjC1ipQqjOGmW4qAXokj5hsxK45QHqM/view?usp=sharing(这是原来的版本,如果你尝试插入它不会显示)

当我尝试将此图像插入 Adob​​e LiveCycle Image Field 时,它不会显示。如果我检查 XML,我可以看到该图像的 Base64 数据存在,但它没有显示在表单预览中,也没有显示在 Adob​​e Acrobat 中。

我试着摆弄这张照片,发现如果我使用 Microsoft Photo Manager 压缩它,插入压缩图像文件后它会显示在图像字段中。

知道为什么这个图像没有显示在 Adob​​e LiveCycle 图像字段中吗?

塔雷克

我不确定你的答案有什么限制,但你可以看到带有 exiftool 的 APP5 标记,如下所示:

exiftool -v House.jpg 

输出

  ExifToolVersion = 11.11
  FileName = House.jpg
  Directory = /Users/mark/Desktop
  FileSize = 372002
  FileModifyDate = 1569258092
  FileAccessDate = 1569258821
  FileInodeChangeDate = 1569258092
  FilePermissions = 33188
  FileType = JPEG
  FileTypeExtension = JPG
  MIMEType = image/jpeg
JPEG APP0 (14 bytes):
  + [BinaryData directory, 9 bytes]
  | JFIFVersion = 1 1
  | ResolutionUnit = 1
  | XResolution = 72
  | YResolution = 72
  | ThumbnailWidth = 0
  | ThumbnailHeight = 0
JPEG APP1 (38248 bytes):
  ExifByteOrder = MM
  + [IFD0 directory with 13 entries]
  | 0)  ImageWidth = 4032
  | 1)  ImageHeight = 3024
  | 2)  Make = samsung
  | 3)  Model = SM-G950W
  | 4)  Orientation = 1
  | 5)  XResolution = 72 (72/1)
  | 6)  YResolution = 72 (72/1)
  | 7)  ResolutionUnit = 2
  | 8)  Software = G950WVLS6CSH1
  | 9)  ModifyDate = 2019:09:11 10:16:15
  | 10) YCbCrPositioning = 1
  | 11) ExifOffset (SubDirectory) -->
  | + [ExifIFD directory with 31 entries]
  | | 0)  ExposureTime = 0.004237288136 (1/236)
  | | 1)  FNumber = 1.7 (170/100)
  | | 2)  ExposureProgram = 2
  | | 3)  ISO = 50
  | | 4)  ExifVersion = 0220
  | | 5)  DateTimeOriginal = 2019:09:11 10:16:15
  | | 6)  CreateDate = 2019:09:11 10:16:15
  | | 7)  ComponentsConfiguration = 1 2 3 0
  | | 8)  ShutterSpeedValue = 7.882 (7882/1000)
  | | 9)  ApertureValue = 1.53 (153/100)
  | | 10) BrightnessValue = 5.23 (523/100)
  | | 11) ExposureCompensation = 0 (0/10)
  | | 12) MaxApertureValue = 1.53 (153/100)
  | | 13) MeteringMode = 2
  | | 14) LightSource = 0
  | | 15) Flash = 1
  | | 16) FocalLength = 4.25 (425/100)
  | | 17) MakerNoteUnknown (SubDirectory) -->
  | | + [MakerNotes directory with 7 entries]
  | | | 0)  Unknown_0x0001 = 0100
  | | | 1)  Unknown_0x0002 = 73728
  | | | 2)  Unknown_0x000c = 0
  | | | 3)  Unknown_0x0010 = undef (0/0)
  | | | 4)  Unknown_0x0040 = 0
  | | | 5)  Unknown_0x0050 = 1
  | | | 6)  Unknown_0x0100 = 0
  | | 18) UserComment = UNICODE.
  | | 19) FlashpixVersion = 0100
  | | 20) ExifImageWidth = 4032
  | | 21) ExifImageHeight = 3024
  | | 22) InteropOffset (SubDirectory) -->
  | | + [InteropIFD directory with 1 entries]
  | | | 0)  InteropVersion = 0100
  | | 23) SensingMethod = 2
  | | 24) SceneType = 1
  | | 25) ExposureMode = 0
  | | 26) WhiteBalance = 0
  | | 27) FocalLengthIn35mmFormat = 26
  | | 28) SceneCaptureType = 0
  | | 29) ImageUniqueID = F12QSJA00SM F12QSKB01SB
  | | 30) OffsetSchema = 0
  | 12) GPSInfo (SubDirectory) -->
  | + [GPS directory with 9 entries]
  | | 0)  GPSVersionID = 2 2 0 0
  | | 1)  GPSLatitudeRef = N
  | | 2)  GPSLatitude = 0 0 0 (0/1 0/1 0/10000)
  | | 3)  GPSLongitudeRef = E
  | | 4)  GPSLongitude = 0 0 0 (0/1 0/1 0/10000)
  | | 5)  GPSAltitudeRef = 0
  | | 6)  GPSAltitude = 0 (0/1000)
  | | 7)  GPSTimeStamp = 14 16 15 (14/1 16/1 15/1)
  | | 8)  GPSDateStamp = 2019:09:11
  + [IFD1 directory with 9 entries]
  | 0)  ImageWidth = 504
  | 1)  ImageHeight = 376
  | 2)  Compression = 6
  | 3)  Orientation = 1
  | 4)  XResolution = 72 (72/1)
  | 5)  YResolution = 72 (72/1)
  | 6)  ResolutionUnit = 2
  | 7)  ThumbnailOffset = 1212
  | 8)  ThumbnailLength = 37030
JPEG APP5 (0 bytes):                    <--- HERE'S THAT BAD BOY !!!!
JPEG APP2 (3158 bytes):
  ICC_Profile chunk 1 of 1
  + [ICC_Profile directory with 17 entries, 3144 bytes]
  | ProfileHeader (SubDirectory) -->
  | + [BinaryData directory, 128 bytes]
  | | ProfileCMMType = Lino
  | | ProfileVersion = 528
  | | ProfileClass = mntr
  | | ColorSpaceData = RGB 
  | | ProfileConnectionSpace = XYZ 
  | | ProfileDateTime = 1998 2 9 6 49 0
  | | ProfileFileSignature = acsp
  | | PrimaryPlatform = MSFT
  | | CMMFlags = 0
  | | DeviceManufacturer = IEC 
  | | DeviceModel = sRGB
  | | DeviceAttributes = 0 0
  | | RenderingIntent = 0
  | | ConnectionSpaceIlluminant = 0.9642 1 0.82491
  | | ProfileCreator = HP  
  | | ProfileID = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  | 0)  ProfileCopyright = Copyright (c) 1998 Hewlett-Packard Company
  | 1)  ProfileDescription = sRGB IEC61966-2.1
  | 2)  MediaWhitePoint = 0.95045 1 1.08905
  | 3)  MediaBlackPoint = 0 0 0
  | 4)  RedMatrixColumn = 0.43607 0.22249 0.01392
  | 5)  GreenMatrixColumn = 0.38515 0.71687 0.09708
  | 6)  BlueMatrixColumn = 0.14307 0.06061 0.7141
  | 7)  DeviceMfgDesc = IEC http://www.iec.ch
  | 8)  DeviceModelDesc = IEC 61966-2.1 Default RGB colour space - sRGB
  | 9)  ViewingCondDesc = Reference Viewing Condition in IEC61966-2.1
  | 10) ViewingConditions (SubDirectory) -->
  | + [BinaryData directory, 36 bytes]
  | | ViewingCondIlluminant = 19.6445 20.3718 16.8089
  | | ViewingCondSurround = 3.92889 4.07439 3.36179
  | | ViewingCondIlluminantType = 1
  | 11) Luminance = 76.03647 80 87.12462
  | 12) Measurement (SubDirectory) -->
  | + [BinaryData directory, 36 bytes]
  | | MeasurementObserver = 1
  | | MeasurementBacking = 0 0 0
  | | MeasurementGeometry = 0
  | | MeasurementFlare = 0.00999
  | | MeasurementIlluminant = 2
  | 13) Technology = CRT 
  | 14) RedTRC = curv.......#(-27;@EJOTY^chmrw|......................................%.[snip]
  | 15) GreenTRC = curv.......#(-27;@EJOTY^chmrw|......................................[snip]
  | 16) BlueTRC = curv.......#(-27;@EJOTY^chmrw|......................................%[snip]
JPEG DQT (65 bytes):
JPEG DQT (65 bytes):
JPEG SOF0 (15 bytes):
  ImageWidth = 1024
  ImageHeight = 768
  EncodingProcess = 0
  BitsPerSample = 8
  ColorComponents = 3
JPEG DHT (29 bytes):
JPEG DHT (179 bytes):
JPEG DHT (29 bytes):
JPEG DHT (179 bytes):
JPEG SOS

您可以像这样使用 exifTool 删除它:

exiftool -APP5:all= YourImage.jpg