XBMReader.st
changeset 33 be90784ee668
parent 28 8daff0234d2e
child 41 66edc847b9c8
--- a/XBMReader.st	Thu Nov 17 15:30:22 1994 +0100
+++ b/XBMReader.st	Thu Nov 17 15:31:40 1994 +0100
@@ -14,14 +14,14 @@
 	 instanceVariableNames:''
 	 classVariableNames:''
 	 poolDictionaries:''
-	 category:'Graphics-Support'
+	 category:'Graphics-Images support'
 !
 
 XBMReader comment:'
 COPYRIGHT (c) 1992 by Claus Gittinger
 	      All Rights Reserved
 
-$Header: /cvs/stx/stx/libview2/XBMReader.st,v 1.8 1994-10-10 02:34:18 claus Exp $
+$Header: /cvs/stx/stx/libview2/XBMReader.st,v 1.9 1994-11-17 14:31:40 claus Exp $
 '!
 
 !XBMReader class methodsFor:'documentation'!
@@ -42,7 +42,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libview2/XBMReader.st,v 1.8 1994-10-10 02:34:18 claus Exp $
+$Header: /cvs/stx/stx/libview2/XBMReader.st,v 1.9 1994-11-17 14:31:40 claus Exp $
 "
 !
 
@@ -67,7 +67,9 @@
 save:image onFile:aFileName
     "save image as XBM file on aFileName"
 
-    |reverseBits bits srcIndex rowBytes|
+    |reverseBits bits byte
+     srcIndex "{ Class: SmallInteger }"
+     rowBytes "{ Class: SmallInteger }" |
 
     outStream := FileStream newFileNamed:aFileName.
     outStream isNil ifTrue:[
@@ -108,7 +110,11 @@
 	rowBytes timesRepeat:[
 	    outStream nextPutAll: '0x'.
 	    bits := data at:srcIndex. srcIndex := srcIndex + 1.
-	    (reverseBits at:(bits + 1)) printOn:outStream radix:16.
+	    byte := (reverseBits at:(bits + 1)).
+	    byte < 16 ifTrue:[
+		outStream nextPut:$0
+	    ].
+	    byte printOn:outStream radix:16.
 	    outStream nextPutAll: ', '.
 	].
 	outStream cr
@@ -116,7 +122,14 @@
     outStream nextPutAll: '};'; cr.
     outStream close
 
-    "XBMReader save:(Image fromFile:'bitmaps/SBrowser.xbm') onFile:'test.xbm'"
+    "
+     XBMReader save:(Image fromFile:'bitmaps/SBrowser.xbm') onFile:'test.xbm'
+    "
+    "
+     convert sun icon to XBM format:
+
+     XBMReader save:(Image fromFile:'bitmaps/hello_world.icon') onFile:'test.xbm'
+    "
 ! !
 
 !XBMReader class methodsFor:'testing'!