Pango wrapper for PHP
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples Make passing a CairoContext optional on updateLayout, showLayout and Feb 8, 2010
.gitignore Borrow XDebug's .gitignore Jun 23, 2011
README Added compile instructions for W32 Sep 3, 2011
TODO Add more PangoLayout methods Feb 7, 2010
config.m4 Make extension compatible with Pango 1.14, for RHEL 5.x Aug 14, 2011
config.w32 Implemented config.w32 Sep 3, 2011
package.xml Update package.xml for 0.2.2 Jul 23, 2012
pango.c Merge branch 'master' of Aug 14, 2011
pango_context.c Add aleshaczech's patch for compiling on 5.4 Jul 23, 2012
pango_font.c Add aleshaczech's patch for compiling on 5.4 Jul 23, 2012
pango_layout.c Add aleshaczech's patch for compiling on 5.4 Jul 23, 2012
pango_line.c Add aleshaczech's patch for compiling on 5.4 Jul 23, 2012
php_pango.h Add new PangoFontDescription methods from David Marín Jan 5, 2012


This is the start of a Pango binding for PHP. Current requirements are:

 * PHP 5.2+
 * Pango 1.14+ :
 * pecl/cairo. Currently the only functionality I'm wrapping are those required
   to make Cairo rendering work which will suit my own purposes - however, once 
   that works I intend to remove the hard dependency here if I can.

Once this gets up to something usable it will be proposed for PECL.

Compiling on windows

1. Setup build environment

Setup your build environment as described here:

2. Pecl packages

Create a directory called 'pecl' in the 'x86' directory.

 * Download and extract the pecl/cairo extension in the pecl directory
 * Download and extract the pecl/pango extension in the pecl directory 

3. Dependencies

Download the following dependencies from and 
extract them to the 'deps' directory. Make sure you download the 'Dev'

 * Cairo
 * Freetype
 * Fontconfig

You'll also need the GLib Dev package, you can copy the files in the lib 
directory to the deps/lib directory. The files in the include directory need 
special attention. You should extract the include/glib-2.0 directory to
deps/include/glib-pango. Finally you should extract the 
lib/glib-2.0/include/glibconfig.h header file to deps/include/glib-pango. 

4. Compiling pango

 * Run: buildconf.
 * Run: configure.js  --enable-pango=shared --with-cairo=shared
 * Run: nmake

5. Done

You're pango extension is now ready in: Release_TS/php_pango.dll