equal
deleted
inserted
replaced
40 |
40 |
41 ! |
41 ! |
42 |
42 |
43 documentation |
43 documentation |
44 " |
44 " |
45 this class provides methods for loading PNG pictures. |
45 This class will provide methods for loading PNG pictures. |
46 It is currenty untested. |
46 It is currenty unfinished and untested (need a Zlib inflater). |
|
47 In the meantime, use a pngtoXXX converter. |
47 |
48 |
48 [See also:] |
49 [See also:] |
49 Image Form Icon |
50 Image Form Icon |
50 BlitImageReader FaceReader GIFReader JPEGReader PBMReader PCXReader |
51 BlitImageReader FaceReader GIFReader JPEGReader PBMReader PCXReader |
51 ST80FormReader SunRasterReader TargaReader TIFFReader WindowsIconReader |
52 ST80FormReader SunRasterReader TargaReader TIFFReader WindowsIconReader |
52 XBMReader XPMReader XWDReader |
53 XBMReader XPMReader XWDReader |
53 |
54 |
54 [author:] |
55 [author:] |
55 Claus Gittinger |
56 Claus Gittinger |
56 " |
57 " |
57 |
58 ! |
|
59 |
|
60 examples |
|
61 " |
|
62 PNGReader fromFile:'/home/cg/AudioExplorer_51_files/use_small.png' |
|
63 " |
58 ! ! |
64 ! ! |
59 |
65 |
60 !PNGReader class methodsFor:'initialization'! |
66 !PNGReader class methodsFor:'initialization'! |
61 |
67 |
62 initialize |
68 initialize |
84 magic := ByteArray new:8. |
90 magic := ByteArray new:8. |
85 inStream nextBytes:8 into:magic. |
91 inStream nextBytes:8 into:magic. |
86 inStream close. |
92 inStream close. |
87 |
93 |
88 ^ (magic = #[137 80 78 71 13 10 26 10]) |
94 ^ (magic = #[137 80 78 71 13 10 26 10]) |
|
95 |
|
96 " |
|
97 self isValidImageFile:'/home/cg/AudioExplorer_51_files/use_small.png' |
|
98 " |
89 |
99 |
90 "Modified: 21.6.1996 / 20:38:46 / cg" |
100 "Modified: 21.6.1996 / 20:38:46 / cg" |
91 ! ! |
101 ! ! |
92 |
102 |
93 !PNGReader methodsFor:'private'! |
103 !PNGReader methodsFor:'private'! |
228 ! |
238 ! |
229 |
239 |
230 processNonInterlacedDATA:len |
240 processNonInterlacedDATA:len |
231 | zlibReader filter temp prevScanline thisScanline bytesPerScanline filtersSeen| |
241 | zlibReader filter temp prevScanline thisScanline bytesPerScanline filtersSeen| |
232 |
242 |
233 zlibReader := Net.ZLibReadStream on:inStream from: 1 to:len. |
243 zlibReader := ZLibReadStream on:inStream from: 1 to:len. |
234 prevScanline := ByteArray new: bytesPerScanline. |
244 prevScanline := ByteArray new: bytesPerScanline. |
235 thisScanline := ByteArray new: bytesPerScanline. |
245 thisScanline := ByteArray new: bytesPerScanline. |
236 0 to: height - 1 do: |
246 0 to: height - 1 do: |
237 [:index | |
247 [:index | |
238 filter := (zlibReader next: 1) first. |
248 filter := (zlibReader next: 1) first. |
429 ! ! |
439 ! ! |
430 |
440 |
431 !PNGReader class methodsFor:'documentation'! |
441 !PNGReader class methodsFor:'documentation'! |
432 |
442 |
433 version |
443 version |
434 ^ '$Header: /cvs/stx/stx/libview2/PNGReader.st,v 1.4 2002-11-15 21:13:43 cg Exp $' |
444 ^ '$Header: /cvs/stx/stx/libview2/PNGReader.st,v 1.5 2003-02-04 08:57:23 cg Exp $' |
435 ! ! |
445 ! ! |
436 |
446 |
437 PNGReader initialize! |
447 PNGReader initialize! |