[Tikzdevice-bugs] tikzDevice 0.6.0

Charlie Sharpsteen chuck at sharpsteen.net
Thu Apr 14 02:35:55 CEST 2011


Cameron and I are pleased to announce version 0.6.0 of the tikzDevice
package which should be available shortly at your local CRAN mirror!
The tikzDevice makes it possible to export R graphics as LaTeX code
that can be included in other documents or compiled into stand alone
figures. The full power of LaTeX is available for typesetting text and
mathematical expressions inside figures produced using the tikzDevice.

Over 80 commits have occurred since the release of 0.5.3 which have
added exciting new features to the device. The most important addition
is 0.6.0 is that the XeLaTeX compiler is officially supported.
Compared to the PdfTeX engine, XeTeX has native support for Unicode
which we hope will make the package more useful for producing graphics
that contain text in languages outside the ASCII symbol table. 0.6.0
also provides support for including raster imagry in graphics and
polypath drawing which catches the `tikz()` graphics device up with
recent developments in the R graphics engine.

There have also been some significant changes under the hood. Our
package has migrated to using Roxygen for function documentation---a
move that was greatly facilitated by the Rd2roxygen package written by
Yihui Xie and Hadley Wickham. Our homebrewed testsuite has also been
re-written on top of Hadley's excellent test_that package.  Many
thanks to the R community for writing great tools to support package
development!

The full changelog is appended to this email. For a detailed diff of
changes since 0.5.3, see:
  https://github.com/Sharpie/RTikZDevice/compare/0.5.3...master

With 80 commits, it is likely we introduced some exciting new bugs.
Bug reports are welcomed at the GitHub issue tracker:

  https://github.com/Sharpie/RTikZDevice/issues

The tikzDevice also has a mailing list provided by R-Forge:

  tikzdevice-bugs @at@ lists.r-forge.r-project.org

Which is also accessible via Google Groups:

  https://groups.google.com/forum/#!forum/tikzdevice


A rough roadmap for future package development can be found at:

  https://github.com/Sharpie/RTikZDevice/wiki/Roadmap

Commentary and discussion is welcomed in the mailing list, patches
containing bugfixes or features are welcomed on the issue tracker.


-Charlie

---

### Version: 0.6.0

---

#### New Features

- Unicode Support!!!! XeLaTeX may now be used calculate metrics and widths for
 Unicode characters. PdfLaTeX remains the default LaTeX compiler, but this may
 be changed by setting the global option `tikzDefaultEngine` to `xetex`.

- New global option `tikzXelatexPackages` which contains packages necessary to
 use unicode characters with xelatex.  Specifically, the fontspec and the
 xunicode packages as well as the xetex option to the preview package.

- New global option `tikzUnicodeMetricPackages` which contains the packages
 necessary to calculate metrics for multibyte unicode characters with xelatex.

- New function anyMultibyteUTF8Characters() which will check if the given
 string contains any multibyte unicode characters.  Exposed in the package
 namespace since it is general and may be useful in other applications.

- The TikZ device now fully supports the `Raster` graphics primitive that was
 added in R 2.11.0 and no longer throws "not implemented" warnings when this
 functionality is used. This is accompilshed by writing raster images to PNG
 files, `Rplots_ras#.png`, which are then included in the main TeX file
 `Rplots.tex`.

- The TikZ device now fully supports the `polypath` graphics primitive that was
 added in R 2.12.0 and no longer throws "not implemented" warnings when this
 functionality is used.


#### Bug Fixes

- Fixed a bug where the `lwd` parameter used to control line widths was
 declared by tikzDevice to be of type `int` when it is actually a `double`.
 This was causing line widths to be ignored or miscalculated. Many thanks to
 Baptiste Auguie for reporting this issue.


#### Depreciation Notices

- Versions of R < 2.11.0 are no longer supported due to lack of required
 functions for handling Unicode strings.


#### Behind the Scenes

- New Makefile for executing common development tasks.

- Package documentation now handled by `roxygen`.  Many thanks to Hadley
 Wickham and Yihui Xie for the `Rd2roxygen` package which facilitated this
 switch.

- Package test suite completely overhauled and now based on Hadley Wickham's
 `test_that` unit testing framework.


More information about the Tikzdevice-bugs mailing list