--- a/PNGReader.st Sun Sep 08 16:56:51 2019 +0200
+++ b/PNGReader.st Tue Sep 10 09:38:19 2019 +0200
@@ -164,21 +164,35 @@
"Created: / 19-05-2019 / 20:15:13 / Claus Gittinger"
!
+hasValidImageHeader:someHeaderBytes
+ "return true, if someHeaderBytes
+ (which does not need to be the whole data, but large enough
+ to detect the header) contains a valid TIFF image header"
+
+ |magic|
+
+ magic := (someHeaderBytes copyFrom:1 to:8) asByteArray.
+ ^ (magic = #[137 80 78 71 13 10 26 10])
+
+ "
+ self isValidImageFile:'/home/cg/AudioExplorer_51_files/use_small.png'
+ self isValidImageFile:'C:\Users\cg\Desktop\croquet\cobalt-base-current-build-20090210\cobalt-base-current-build-20090210\content\models\textures\checkerboard.png'
+ self isValidImageFile:'C:\Dokumente und Einstellungen\cg\Desktop\misc\PNGs\Delete.png'
+ "
+
+ "Modified: 21.6.1996 / 20:38:46 / cg"
+!
+
isValidImageFile:aFileName
"return true, if aFileName contains a PNG image"
- |inStream magic|
+ |someBytes inStream|
inStream := self streamReadingFile:aFileName.
inStream isNil ifTrue:[^ false].
-
- inStream binary.
-
- magic := ByteArray new:8.
- inStream nextBytes:8 into:magic.
+ someBytes := inStream nextBytes:8.
inStream close.
-
- ^ (magic = #[137 80 78 71 13 10 26 10])
+ ^ self hasValidImageHeader:someBytes
"
self isValidImageFile:'/home/cg/AudioExplorer_51_files/use_small.png'