Every raster image in
gfx-php implements the
There are several classes that implement this interface, which handle different representations of the image data.
- Holds RGB data.
- Holds monochrome data.
- Holds 1-bit raster data.
- Holds an image and associated palette.
Creating an image¶
Each of these classes has a static method which can be used to create an image of that type.
These only require a
use Mike42\GfxPhp\BlackAndWhiteRasterImage; $image = BlackAndWhiteRasterImage::create(50, 100);
Converting between image types¶
You can convert between image types. This is similar to performing a color-space conversion in an image editor.
use Mike42\GfxPhp\Image; $image = Image::load("tux.ppm"); $image -> toBlackAndWhite();
The methods to use are:
Each of these returns an image of the requested type. They work by instantiating a new image, then copying across the data as accurately as possible. As a result, the original image is unmodified.
Some file formats only accept specific types of raster data, so the
RasterImage::write() method will need to convert it. For example, this
.pbm will be limited to 2 colors, which is achieved by using
RasterImage:toBlackAndWhite in the background:
use Mike42\GfxPhp\Image; $wheel = Image::load("colorwheel.ppm"); $wheel -> write("wheel.pbm");
Since converting the color space creates a new image, the image stored in
$wheel is unmodified.