BMPImageWriter

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

BMPImageWriter

lesbros
Hi,

I load the Geoge Heeg's GHFractalExplorer to get a BMPImageWriter from the Open Store Repository

as says the comment :

This class implements a writer for instances of Image subclasses to files in uncompressed Windows BMP format.
Currently, only Depth16Images and Depth32Images can be stored.



1/ I create an image,
image := Image extent: 256 @ 256 depth: 32 bitsPerPixel: 32 palette: (FixedPalette redShift: 0 redMask: 255 greenShift: 8 greenMask: 255 blueShift: 16 blueMask: 255).
2/ Save it

Heeg.BMPImageWriter writeImage: image.

3/ Try to read it : ImageReader fromFile: filename

and get the error:

Size exceeds implementation limit of 2^28 elements

in
...
readMappedPalette
readColormap
...

---
In fact, I wanted to create 16 bits per pixel images in gray scale. I dont need 2^32 values. I need 2^16 gray scale values, and store them in images.
I can't find how to create images in 16 bits in gray scale in Smalltalk. As the Heeg.BMPImageWriter uses 32 bits and not 24 bits images, I try the above code.


I would apreciate anty help.

V.L.





 

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: BMPImageWriter

Roland Wagener
Hi Vincent

your case was reproducible using a saved BMP from GHFractalExplorer, and
the proposed code to import it. Please find attached a small fix for
BMPImageReader, which fixes a palette issue (it never could read 32Bit
images). I used
        ImageReader displayFromFile: 'test.bmp'

and it worked for the previously exported image.
However, if you try to read BMP images created by other applications,
you may still run into trouble, because the code I attempt to fix
already exposes various other options a BMP file could contain.

So, fingers crossed, hope that helps!

Roland
--
Roland Wagener * Senior Consultant * [hidden email]
Tel: x49-231-9 75 99-26   Fax: x49-231-9 75 99-20
Georg Heeg eK Dortmund
Handelsregister: Amtsgericht Dortmund  A 12812

Am 11.02.12 23:45, schrieb Vincent Lesbros:

> Hi,
>
> I load the Geoge Heeg's GHFractalExplorer to get a BMPImageWriter from
> the /Open Store Repository/
>
> as says the comment :
>
> /This class implements a writer for instances of Image subclasses to
> files in uncompressed Windows BMP format.
> Currently, only Depth16Images and Depth32Images can be stored./
>
>
> 1/ I create an image,
> image := Image extent: 256 @ 256 depth: 32 bitsPerPixel: 32 palette:
> (FixedPalette redShift: 0 redMask: 255 greenShift: 8 greenMask: 255
> blueShift: 16 blueMask: 255).
> 2/ Save it
>
> Heeg.BMPImageWriter writeImage: image.
>
> 3/ Try to read it : ImageReader fromFile: /filename/
>
> and get the error:
>
> Size exceeds implementation limit of 2^28 elements
>
> in
> ...
> readMappedPalette
> readColormap
> ...
>
> ---
> In fact, I wanted to create 16 bits per pixel images in gray scale. I
> dont need 2^32 values. I need 2^16 gray scale values, and store them in
> images.
> I can't find how to create images in 16 bits in gray scale in Smalltalk.
> As the Heeg.BMPImageWriter uses 32 bits and not 24 bits images, I try
> the above code.
>
>
> I would apreciate anty help.
>
> V.L.
>
>
>
>
>
>
> _______________________________________________
> vwnc mailing list
> [hidden email]
> http://lists.cs.uiuc.edu/mailman/listinfo/vwnc

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc

BMPImageReader-readColorMap.st (1K) Download Attachment