mike42 / gfx-php
The pure PHP graphics library
Installs: 672 038
Dependents: 1
Suggesters: 0
Security: 0
Stars: 24
Watchers: 3
Forks: 4
Open Issues: 10
Requires
- php: >=7.0.0
Requires (Dev)
- phpbench/phpbench: @dev
- phpunit/phpunit: ^6.5
- squizlabs/php_codesniffer: ^3.3.1
README
This library implements input, output and processing of raster images in pure PHP, so that image processing extensions (Gd, Imagick) are not required.
This allows developers to eliminate some portability issues from their applications.
Features
- Format support includes PNG, GIF, BMP and the Netpbm formats (See docs: File formats).
- Support for scaling, cropping, format conversion and colorspace transformations (See docs: Image operations).
- Pure PHP: This library does not require Gd, ImageMagick or GraphicsMagick extensions.
Quick start
Requirements
- PHP 7.0 or newer.
zlib
extension, for reading PNG files.
Installation
Install gfx-php
with composer:
composer install mike42/gfx-php
Basic usage
The basic usage is like this:
<?php use Mike42\GfxPhp\Image; $img = Image::fromFile("colorwheel256.png"); $img -> write("test.gif");
Further reading
- Read of the documentation at gfx-php.readthedocs.io
- See the
examples/
sub-folder for snippets.
Contributing
This project is open to all kinds of contributions, including suggestions, documentation fixes, examples, formats and image processing algorithms.
Some ideas for improvement listed in the issue tracker. Code contributions must be releasable under the LGPLv3 or later.
Scope
As a small project, we can't do everything. In particular, gfx-php
is not likely to ever perform non-raster operations:
- vector image formats (PDF, SVG, EPS, etc).
- anything involving vector fonts
Acknowledgements
This repository uses test files from other projects:
Similar projects
- Imagine, which wraps available libraries.