<div dir="ltr"><div><font face="arial, helvetica, sans-serif">Dear all,</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">I am pleased to announce the release of mplcairo 0.1</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"># Description</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">mplcairo is a Matplotlib backend based on the well-known cairo library,</font></div><div><font face="arial, helvetica, sans-serif">supporting output to both raster (including interactively) and vector</font></div><div><font face="arial, helvetica, sans-serif">formats.  In other words, it provides the functionality of Matplotlib's</font></div><div><font face="arial, helvetica, sans-serif">{,qt5,gtk3,wx,tk,macos}{agg,cairo}, pdf, ps, and svg backends.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">Per Matplotlib's standard API, the backend can be selected by calling</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">    matplotlib.use("module://mplcairo.qt")</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">or setting your MPLBACKEND environment variable to `module://mplcairo.qt` for</font></div><div><font face="arial, helvetica, sans-serif">Qt5, and similarly for other toolkits.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">The source tarball, and Py3.6 manylinux and Windows wheels, are available on</font></div><div><font face="arial, helvetica, sans-serif">PyPI (I am looking for help to generate the OSX wheels).</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">See the README for more details.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"># Why a new backend?</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">Compared to Matplotlib's builtin Agg and cairo backends, mplcairo presents the</font></div><div><font face="arial, helvetica, sans-serif">following features:</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">- Improved accuracy (e.g., with marker positioning, quad meshes, and text</font></div><div><font face="arial, helvetica, sans-serif">  kerning).</font></div><div><font face="arial, helvetica, sans-serif">- Support for a wider variety of font formats, such as otf and pfb, for vector</font></div><div><font face="arial, helvetica, sans-serif">  (PDF, PS, SVG) backends (Matplotlib's Agg backend also supports such fonts).</font></div><div><font face="arial, helvetica, sans-serif">- Optional support for complex text layout (right-to-left languages, etc.)</font></div><div><font face="arial, helvetica, sans-serif">  using Raqm.  **Note** that Raqm depends on Fribidi, which is licensed under</font></div><div><font face="arial, helvetica, sans-serif">  the LGPLv2.1+.</font></div><div><font face="arial, helvetica, sans-serif">- Support for embedding URLs in PDF (but not SVG) output (requires</font></div><div><font face="arial, helvetica, sans-serif">  cairo≥1.15.4).</font></div><div><font face="arial, helvetica, sans-serif">- Support for multi-page output both for PDF and PS (Matplotlib only supports</font></div><div><font face="arial, helvetica, sans-serif">  multi-page PDF).</font></div><div><font face="arial, helvetica, sans-serif">- Support for custom blend modes (see `examples/operators.py`).</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">See the README for more details.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"># Changelog from mplcairo 0.1a1 to mplcairo 0.1</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">- Integration with libraqm now occurs via dlopen() rather than being selected</font></div><div><font face="arial, helvetica, sans-serif">  at compile-time.</font></div><div><font face="arial, helvetica, sans-serif">- Various rendering and performance improvements.</font></div><div><font face="arial, helvetica, sans-serif">- On Travis, we now run Matplotlib's test suite with mplcairo patching the</font></div><div><font face="arial, helvetica, sans-serif">  default Agg renderer.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">Enjoy,</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">Antony Lee</font></div></div>