TIFFReader.st
changeset 3985 3d9f0b1a06d0
parent 3984 e533a09c2c1d
child 3986 a71704884650
--- a/TIFFReader.st	Sun Aug 27 19:59:10 2017 +0200
+++ b/TIFFReader.st	Sun Aug 27 21:36:17 2017 +0200
@@ -1185,7 +1185,7 @@
             bitsPerPixel := 24
         ] ifFalse:[
             (nPlanes ~~ 1) ifTrue:[
-                ^ self fileFormatError:'format not supported'.
+                ^ self fileFormatError:('format (nplanes == %1) not supported' bindWith:nPlanes).
             ].
             bitsPerPixel := bitsPerSample at:1.
         ]
@@ -1231,7 +1231,7 @@
         stripNr := stripNr + 1.
     ]
 
-    "Modified: / 27-08-2017 / 15:38:37 / cg"
+    "Modified: / 27-08-2017 / 21:28:46 / cg"
 !
 
 readPixarFilmTiffImageData
@@ -1527,20 +1527,20 @@
 !
 
 readTiledUncompressedTiffImageData
-    |bytesPerRow   "{ Class: SmallInteger }"
-     bitsPerRow    "{ Class: SmallInteger }"
-     bytesPerTileRow   "{ Class: SmallInteger }"
-     bitsPerTileRow    "{ Class: SmallInteger }" 
+    |bytesPerRow     "{ Class: SmallInteger }"
+     bitsPerRow      "{ Class: SmallInteger }"
+     bytesPerTileRow "{ Class: SmallInteger }"
+     bitsPerTileRow  "{ Class: SmallInteger }" 
      nPlanes 
-     tileNr        "{ Class: SmallInteger }"
-     offset        "{ Class: SmallInteger }"
-     row           "{ Class: SmallInteger }" 
-     nBytes        "{ Class: SmallInteger }"
-     bitsPerPixel 
-     overAllBytes  "{ Class: SmallInteger }"
-     where         "{ Class: SmallInteger }"
-     x             "{ Class: SmallInteger }"       
-     y             "{ Class: SmallInteger }" 
+     tileNr          "{ Class: SmallInteger }"
+     "/ offset          "{ Class: SmallInteger }"
+     "/ row             "{ Class: SmallInteger }" 
+     nBytes          "{ Class: SmallInteger }"
+     bitsPerPixel    "{ Class: SmallInteger }"
+     overAllBytes    "{ Class: SmallInteger }"
+     where           "{ Class: SmallInteger }"
+     x               "{ Class: SmallInteger }"       
+     y               "{ Class: SmallInteger }" 
      imageRowOffset  "{ Class: SmallInteger }" 
      imageOffset     "{ Class: SmallInteger }" 
      tileOffset      "{ Class: SmallInteger }"   
@@ -1566,7 +1566,7 @@
                 ^ self fileFormatError:'only non separate planes supported'.
             ].
             bitsPerSample ~= #(8 8 8 8) ifTrue:[
-                ^ self fileFormatError:'only 8/8/8/8 cmyk images supported'.
+                ^ self fileFormatError:'only 8/8/8/8 images supported (is: ' , bitsPerSample printString , ')'.
             ].
             bitsPerPixel := 32.
         ] ifFalse:[
@@ -1575,7 +1575,7 @@
                     ^ self fileFormatError:'only non separate planes supported'.
                 ].
                 bitsPerSample ~= #(8 8 8) ifTrue:[
-                    ^ self fileFormatError:'only 8/8/8 rgb images supported (is: ' , bitsPerSample printString , ')'.
+                    ^ self fileFormatError:'only 8/8/8 images supported (is: ' , bitsPerSample printString , ')'.
                 ].
                 bitsPerPixel := 24
             ] ifFalse:[
@@ -1649,7 +1649,7 @@
     ].
 
     "Created: / 25-08-2017 / 00:22:31 / cg"
-    "Modified: / 27-08-2017 / 15:39:02 / cg"
+    "Modified (comment): / 27-08-2017 / 20:42:18 / cg"
 !
 
 readUncompressedTiffImageData
@@ -2818,6 +2818,9 @@
             Verbose == true ifTrue:[ 
                 Logger info:'      XMLPACKET: %1' with:value asString
             ].
+            decodeMetaTags == true ifTrue:[
+                metaData at:#xmpData put:value asString.
+            ].    
             ^ self
         ].
     ].
@@ -3041,10 +3044,10 @@
             "/ RICHTIFFIPTC
             "/ IPTC (International Press Telecommunications Council) metadata.
             "/ (see http://www.iptc.org/std/photometadata/specification/IPTC-PhotoMetadata)
-            Verbose == true ifTrue:[ 
-                Logger info:'      RICHTIFFIPTC: %1' with:value
-            ].
             decodeMetaTags == true ifTrue:[
+                Verbose == true ifTrue:[ 
+                    Logger info:'      RICHTIFFIPTC: %1' with:value
+                ].
                 self decodePhotoshopImageResourceBlock:value.
             ] ifFalse:[
                 Verbose == true ifTrue:[ 
@@ -3335,7 +3338,7 @@
     'TIFFReader [warning]: unknown tag type ' errorPrint. tagType errorPrintCR
 
     "Modified (format): / 23-05-2017 / 16:12:58 / mawalch"
-    "Modified: / 27-08-2017 / 19:57:55 / cg"
+    "Modified: / 27-08-2017 / 20:46:36 / cg"
 !
 
 positionToStrip:stripNr