mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 07:32:44 +00:00 
			
		
		
		
	LibGfx/ILBM: Add an IFF-ILBM decoder :)
IFF was a generic container fileformat that was popular on the Amiga since it was the only file format supported by Deluxe Paint. ILBM is an image format popular in the late eighties/nineties that uses the IFF container. This is a very first version of the decoder that only supports (byterun) compressed files with bpp <= 8. Only the minimal chunks are decoded: CMAP, BODY, BMHD. I am planning to add support for the following variants: - EHB (32 colours + lighter 32 colours) - HAM6 / HAM8 (special mode that allowed to display the whole Amiga 4096 colours / 262 144 colours palette) - TrueColor (24bit) Things that could be fun to do: - Still images could be animated using color cycle information
This commit is contained in:
		
							parent
							
								
									66d6388b8a
								
							
						
					
					
						commit
						fda5590313
					
				
					 12 changed files with 379 additions and 2 deletions
				
			
		|  | @ -9,6 +9,7 @@ | |||
| #include <LibGfx/ImageFormats/DDSLoader.h> | ||||
| #include <LibGfx/ImageFormats/GIFLoader.h> | ||||
| #include <LibGfx/ImageFormats/ICOLoader.h> | ||||
| #include <LibGfx/ImageFormats/ILBMLoader.h> | ||||
| #include <LibGfx/ImageFormats/ImageDecoder.h> | ||||
| #include <LibGfx/ImageFormats/JPEGLoader.h> | ||||
| #include <LibGfx/ImageFormats/JPEGXLLoader.h> | ||||
|  | @ -38,6 +39,7 @@ static OwnPtr<ImageDecoderPlugin> probe_and_sniff_for_appropriate_plugin(Readonl | |||
|         { PGMImageDecoderPlugin::sniff, PGMImageDecoderPlugin::create }, | ||||
|         { PPMImageDecoderPlugin::sniff, PPMImageDecoderPlugin::create }, | ||||
|         { ICOImageDecoderPlugin::sniff, ICOImageDecoderPlugin::create }, | ||||
|         { ILBMImageDecoderPlugin::sniff, ILBMImageDecoderPlugin::create }, | ||||
|         { JPEGImageDecoderPlugin::sniff, JPEGImageDecoderPlugin::create }, | ||||
|         { JPEGXLImageDecoderPlugin::sniff, JPEGXLImageDecoderPlugin::create }, | ||||
|         { DDSImageDecoderPlugin::sniff, DDSImageDecoderPlugin::create }, | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Nicolas Ramz
						Nicolas Ramz