Files
ladybird/Meta/gn/secondary/Userland/Libraries/LibGfx/BUILD.gn
Nicolas Ramz fda5590313 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
2023-08-15 18:36:11 +01:00

88 lines
2.4 KiB
Plaintext

shared_library("LibGfx") {
output_name = "gfx"
include_dirs = [
"//Userland/Libraries",
"//Userland",
]
sources = [
"AffineTransform.cpp",
"AntiAliasingPainter.cpp",
"Bitmap.cpp",
"BitmapMixer.cpp",
"ClassicStylePainter.cpp",
"ClassicWindowTheme.cpp",
"Color.cpp",
"CursorParams.cpp",
"EdgeFlagPathRasterizer.cpp",
"Filters/ColorBlindnessFilter.cpp",
"Filters/FastBoxBlurFilter.cpp",
"Filters/LumaFilter.cpp",
"Filters/StackBlurFilter.cpp",
"Font/BitmapFont.cpp",
"Font/Emoji.cpp",
"Font/Font.cpp",
"Font/FontDatabase.cpp",
"Font/OpenType/Cmap.cpp",
"Font/OpenType/Font.cpp",
"Font/OpenType/Glyf.cpp",
"Font/OpenType/Hinting/Opcodes.cpp",
"Font/ScaledFont.cpp",
"Font/Typeface.cpp",
"Font/WOFF/Font.cpp",
"GradientPainting.cpp",
"ICC/BinaryWriter.cpp",
"ICC/Profile.cpp",
"ICC/TagTypes.cpp",
"ICC/Tags.cpp",
"ICC/WellKnownProfiles.cpp",
"ImageFormats/BMPLoader.cpp",
"ImageFormats/BMPWriter.cpp",
"ImageFormats/BooleanDecoder.cpp",
"ImageFormats/DDSLoader.cpp",
"ImageFormats/GIFLoader.cpp",
"ImageFormats/ICOLoader.cpp",
"ImageFormats/ILBMLoader.cpp",
"ImageFormats/ImageDecoder.cpp",
"ImageFormats/JPEGLoader.cpp",
"ImageFormats/JPEGWriter.cpp",
"ImageFormats/JPEGXLLoader.cpp",
"ImageFormats/PBMLoader.cpp",
"ImageFormats/PGMLoader.cpp",
"ImageFormats/PNGLoader.cpp",
"ImageFormats/PNGWriter.cpp",
"ImageFormats/PPMLoader.cpp",
"ImageFormats/PortableFormatWriter.cpp",
"ImageFormats/QOILoader.cpp",
"ImageFormats/QOIWriter.cpp",
"ImageFormats/TGALoader.cpp",
"ImageFormats/TinyVGLoader.cpp",
"ImageFormats/WebPLoader.cpp",
"ImageFormats/WebPLoaderLossless.cpp",
"ImageFormats/WebPLoaderLossy.cpp",
"Painter.cpp",
"Palette.cpp",
"Path.cpp",
"Point.cpp",
"Rect.cpp",
"ShareableBitmap.cpp",
"Size.cpp",
"StylePainter.cpp",
"SystemTheme.cpp",
"TextDirection.cpp",
"TextLayout.cpp",
"Triangle.cpp",
"VectorGraphic.cpp",
"WindowTheme.cpp",
]
deps = [
"//AK",
"//Userland/Libraries/LibCompress",
"//Userland/Libraries/LibCore",
"//Userland/Libraries/LibCrypto",
"//Userland/Libraries/LibFileSystem",
"//Userland/Libraries/LibIPC",
"//Userland/Libraries/LibTextCodec",
"//Userland/Libraries/LibUnicode",
]
}