<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
 <channel>
  <title>R-Forge Project: TikZ Device -  News</title>
  <link>https://r-forge.r-project.org/news/?group_id=440</link>
  <description>R-Forge Project News of TikZ Device</description>
  <language>en-us</language>
  <copyright>Copyright 2026 R-Forge</copyright>
  <webMaster>cls59@users.r-forge.r-project.org (Charlie Sharpsteen)</webMaster>
  <lastBuildDate>Wed, 06 May 2026 13:06:24 GMT</lastBuildDate>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>R-Forge RSS generator</generator>
  <item>
   <title>Announcing tikzDevice 0.6.0</title>
   <link>https://r-forge.r-project.org/forum/forum.php?forum_id=3405</link>
   <description>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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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!&lt;br /&gt;
&lt;br /&gt;
The full changelog is appended to this email. For a detailed diff of changes since 0.5.3, see:&lt;br /&gt;
  https://github.com/Sharpie/RTikZDevice/compare/0.5.3...master&lt;br /&gt;
&lt;br /&gt;
With 80 commits, it is likely we introduced some exciting new bugs. Bug reports are welcomed at the GitHub issue tracker:&lt;br /&gt;
&lt;br /&gt;
  https://github.com/Sharpie/RTikZDevice/issues&lt;br /&gt;
&lt;br /&gt;
The tikzDevice also has a mailing list provided by R-Forge:&lt;br /&gt;
&lt;br /&gt;
  tikzdevice-bugs @at@ lists.r-forge.r-project.org&lt;br /&gt;
&lt;br /&gt;
Which is also accessible via Google Groups:&lt;br /&gt;
&lt;br /&gt;
  https://groups.google.com/forum/#!forum/tikzdevice&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A rough roadmap for future package development can be found at:&lt;br /&gt;
&lt;br /&gt;
  https://github.com/Sharpie/RTikZDevice/wiki/Roadmap&lt;br /&gt;
&lt;br /&gt;
Commentary and discussion is welcomed in the mailing list, patches containing bugfixes or features are welcomed on the issue tracker.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-Charlie&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### Version: 0.6.0&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
#### New Features&lt;br /&gt;
&lt;br /&gt;
- Unicode Support!!!! XeLaTeX may now be used calculate metrics and widths for&lt;br /&gt;
 Unicode characters. PdfLaTeX remains the default LaTeX compiler, but this may&lt;br /&gt;
 be changed by setting the global option `tikzDefaultEngine` to `xetex`.&lt;br /&gt;
&lt;br /&gt;
- New global option `tikzXelatexPackages` which contains packages necessary to&lt;br /&gt;
 use unicode characters with xelatex.  Specifically, the fontspec and the&lt;br /&gt;
 xunicode packages as well as the xetex option to the preview package.&lt;br /&gt;
&lt;br /&gt;
- New global option `tikzUnicodeMetricPackages` which contains the packages&lt;br /&gt;
 necessary to calculate metrics for multibyte unicode characters with xelatex.&lt;br /&gt;
&lt;br /&gt;
- New function anyMultibyteUTF8Characters() which will check if the given&lt;br /&gt;
 string contains any multibyte unicode characters.  Exposed in the package&lt;br /&gt;
 namespace since it is general and may be useful in other applications.&lt;br /&gt;
&lt;br /&gt;
- The TikZ device now fully supports the `Raster` graphics primitive that was&lt;br /&gt;
 added in R 2.11.0 and no longer throws &quot;not implemented&quot; warnings when this&lt;br /&gt;
 functionality is used. This is accompilshed by writing raster images to PNG&lt;br /&gt;
 files, `Rplots_ras#.png`, which are then included in the main TeX file&lt;br /&gt;
 `Rplots.tex`.&lt;br /&gt;
&lt;br /&gt;
- The TikZ device now fully supports the `polypath` graphics primitive that was&lt;br /&gt;
 added in R 2.12.0 and no longer throws &quot;not implemented&quot; warnings when this&lt;br /&gt;
 functionality is used.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#### Bug Fixes&lt;br /&gt;
&lt;br /&gt;
- Fixed a bug where the `lwd` parameter used to control line widths was&lt;br /&gt;
 declared by tikzDevice to be of type `int` when it is actually a `double`.&lt;br /&gt;
 This was causing line widths to be ignored or miscalculated. Many thanks to&lt;br /&gt;
 Baptiste Auguie for reporting this issue.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#### Depreciation Notices&lt;br /&gt;
&lt;br /&gt;
- Versions of R &amp;lt; 2.11.0 are no longer supported due to lack of required&lt;br /&gt;
 functions for handling Unicode strings.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#### Behind the Scenes&lt;br /&gt;
&lt;br /&gt;
- New Makefile for executing common development tasks.&lt;br /&gt;
&lt;br /&gt;
- Package documentation now handled by `roxygen`.  Many thanks to Hadley&lt;br /&gt;
 Wickham and Yihui Xie for the `Rd2roxygen` package which facilitated this&lt;br /&gt;
 switch.&lt;br /&gt;
&lt;br /&gt;
- Package test suite completely overhauled and now based on Hadley Wickham's&lt;br /&gt;
 `test_that` unit testing framework.&lt;br /&gt;
</description>
   <author>cls59@users.r-forge.r-project.org (Charlie Sharpsteen)</author>
   <pubDate>Thu, 14 Apr 2011 00:36:57 GMT</pubDate>
   <guid>https://r-forge.r-project.org/forum/forum.php?forum_id=3405</guid>
   <comments>https://r-forge.r-project.org/forum/forum.php?forum_id=3405</comments>
  </item>
  <item>
   <title>tikzDevice 0.5.0 released</title>
   <link>https://r-forge.r-project.org/forum/forum.php?forum_id=2770</link>
   <description># tikzDevice&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
## Description&lt;br /&gt;
&lt;br /&gt;
The tikzDevice package new graphics device for R which enables direct&lt;br /&gt;
output of graphics in a LaTeX-friendly way.  Plotting commands issued&lt;br /&gt;
by R functions are transformed into LaTeX code blocks.  These blocks&lt;br /&gt;
are interpreted with the help of TikZ-- a graphics library for TeX and&lt;br /&gt;
friends written by Till Tantau.&lt;br /&gt;
&lt;br /&gt;
The tikzDevice supports three main modes of output:&lt;br /&gt;
&lt;br /&gt;
  - Figure chunks: placed in .tex files and suitable for inclusion in&lt;br /&gt;
    LaTeX documents via the \input{} command.&lt;br /&gt;
&lt;br /&gt;
  - Stand alone figures: Complete LaTeX documents containing figure&lt;br /&gt;
    code that can be compiled into stand-alone images.  Pages are&lt;br /&gt;
    cropped to the size of the figure using the preview package.&lt;br /&gt;
&lt;br /&gt;
  - Console output: TikZ code is returned directly to the R console&lt;br /&gt;
    as a character vector for further manipulation.&lt;br /&gt;
&lt;br /&gt;
## Beta Notice&lt;br /&gt;
&lt;br /&gt;
The tikzDevice is currently flagged as a beta work.  The package is&lt;br /&gt;
reasonably stable and has been used by the authors to produce graphics&lt;br /&gt;
for academic publications for over a year.  The reason for beta status&lt;br /&gt;
is that there are several open design issues- two of which are:&lt;br /&gt;
&lt;br /&gt;
  - Providing support for UTF8 text.&lt;br /&gt;
&lt;br /&gt;
  - Supporting TeX variants other than LaTeX.&lt;br /&gt;
&lt;br /&gt;
Resolving these issues may require changes to the tikzDevice that&lt;br /&gt;
break backwards compatibility with previous versions.  The beta flag&lt;br /&gt;
is a reminder that such changes may occur- although we will strive to&lt;br /&gt;
avoid them if possible.&lt;br /&gt;
&lt;br /&gt;
The beta flag will be removed upon release of version 1.0. At this&lt;br /&gt;
time maintaining backwards compatibility will become a primary concern.&lt;br /&gt;
&lt;br /&gt;
## Obtaining the Package&lt;br /&gt;
&lt;br /&gt;
Stable versions of the tikzDevice may be downloaded from CRAN:&lt;br /&gt;
&lt;br /&gt;
    install.packages( 'tikzDevice' )&lt;br /&gt;
&lt;br /&gt;
Development versions may be obtained from R-Forge:&lt;br /&gt;
&lt;br /&gt;
    install.packages( 'tikzDevice', &lt;br /&gt;
      repos='http://r-forge.r-project.net' )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
## Reporting Bugs and Getting Help&lt;br /&gt;
&lt;br /&gt;
The tikzDevice has a dedicated mailing list courtesy of R-Forge.  The&lt;br /&gt;
mailing list is the easiest way to get answers for questions related&lt;br /&gt;
to usage:&lt;br /&gt;
&lt;br /&gt;
  tikzdevice-bugs @at@ lists.r-forge.r-project.org &lt;br /&gt;
&lt;br /&gt;
Primary development takes place on GitHub.  Bugs and feature requests&lt;br /&gt;
may be made by opening issues at the primary repository:&lt;br /&gt;
&lt;br /&gt;
  http://github.com/Sharpie/RTikZDevice/issues&lt;br /&gt;
&lt;br /&gt;
Adventurous users are encouraged to fork the repository and contribute&lt;br /&gt;
to the development of the device!&lt;br /&gt;
&lt;br /&gt;
## Latest Changes&lt;br /&gt;
*See the CHANGELOG for changes that occurred in previous releases*&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
### Version 0.5.0 Beta&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
#### Contributors&lt;br /&gt;
The following people contributed to this release of the tikzDevice:&lt;br /&gt;
&lt;br /&gt;
- Lorenzo Isella contributed bug reports and examples that led to the&lt;br /&gt;
  discovery of a bug in fontsize calculations that appeared when&lt;br /&gt;
  certain LaTeX commands were used to change the active font.&lt;br /&gt;
&lt;br /&gt;
- Vivianne Vilar for spotting spelling and grammar errors in the&lt;br /&gt;
  vignette.&lt;br /&gt;
&lt;br /&gt;
- Gabor Grothendieck for the idea for sending output to the screen &lt;br /&gt;
  for use with sink() (i.e. the &quot;console&quot; option)&lt;br /&gt;
&lt;br /&gt;
#### New Features&lt;br /&gt;
&lt;br /&gt;
- &quot;console&quot; option for directing tikz() output back into the R console&lt;br /&gt;
  instead of to a file.&lt;br /&gt;
&lt;br /&gt;
- Preliminary support for a &quot;sanitize&quot; option which allows automatic&lt;br /&gt;
  escaping of characters that have special meaning to TeX like &quot;$&quot; and&lt;br /&gt;
  &quot;%&quot;.&lt;br /&gt;
&lt;br /&gt;
- tikzAnnotate() and tikzCoord() functions.  tikzAnnotate() allows&lt;br /&gt;
  arbitrary LaTeX code to be injected into the output stream of an&lt;br /&gt;
  active tikz() graphics device.  tikzCoord() is a wrapper for&lt;br /&gt;
  tikzAnnotate() that inserts named locations into the graphics code.&lt;br /&gt;
  These locations may be referenced by other TikZ drawing commands.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#### Bug Fixes&lt;br /&gt;
&lt;br /&gt;
- Removed bad colon in the DESCRIPTION file.&lt;br /&gt;
&lt;br /&gt;
- Proper fontsize calculations now include ps from par() and fontsize&lt;br /&gt;
  from gpar().  This fixes issues with lattice-based graphics such as&lt;br /&gt;
  ggplot2.&lt;br /&gt;
&lt;br /&gt;
- Metrics are now calculated properly when commands like&lt;br /&gt;
  \renewcommand\rmdefault are used to adjust the active font.&lt;br /&gt;
&lt;br /&gt;
- Sanitization of % signs in labels.&lt;br /&gt;
&lt;br /&gt;
- The package no longer overwrites user customizations set in places like&lt;br /&gt;
  .Rprofile with default values when loaded.&lt;br /&gt;
&lt;br /&gt;
- Attempting to use new graphics functions such as rasterImage() now&lt;br /&gt;
  produces error messages instead of fatal crashes in R 2.11.0 and&lt;br /&gt;
  above.</description>
   <author>cls59@users.r-forge.r-project.org (Charlie Sharpsteen)</author>
   <pubDate>Tue, 10 Aug 2010 15:51:57 GMT</pubDate>
   <guid>https://r-forge.r-project.org/forum/forum.php?forum_id=2770</guid>
   <comments>https://r-forge.r-project.org/forum/forum.php?forum_id=2770</comments>
  </item>
  <item>
   <title>Beta Verson of tikzDevice Released!</title>
   <link>https://r-forge.r-project.org/forum/forum.php?forum_id=1596</link>
   <description>The tikzDevice package provides a new graphics device for R which enables direct output of graphics in a LaTeX-friendly way. The device output consists of files containing instructions for the TikZ graphics language and may be imported directly into LaTeX documents using the \input{} command. &lt;br /&gt;
&lt;br /&gt;
The beta version of tikzDevice is now available here: https://r-forge.r-project.org/R/?group_id=440  &lt;br /&gt;
&lt;br /&gt;
An additional location for downloading source tarballs and windows binaries is: http://github.com/Sharpie/RTikZDevice/downloads&lt;br /&gt;
&lt;br /&gt;
There are many significant improvements compared to the alpha version:&lt;br /&gt;
&lt;br /&gt;
Features:&lt;br /&gt;
&lt;br /&gt;
- Rd documentation&lt;br /&gt;
- A vignette&lt;br /&gt;
- Proper string placement (because of string width and character metric calculations via latex)&lt;br /&gt;
- Custom LaTeX headers, footers and typesetting engines&lt;br /&gt;
- R-Level Annotation of graphics with TikZ commands (see http://www.texample.net for great examples of using TikZ commands)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Limitations:&lt;br /&gt;
&lt;br /&gt;
- ASCII character support only&lt;br /&gt;
- No recognition of the R symbol font (i.e. no plotmath symbols)&lt;br /&gt;
- A bevy of other quirks and &amp;quot;personality traits&amp;quot; that will make themselves known in time&lt;br /&gt;
&lt;br /&gt;
The device requires a working installation of  LaTeX and the TIkZ package in order to function. This is because font metrics are currently calculated through direct calls to the LaTeX compiler. Unfortunately, this results in some significant computational overhead- it may take several seconds to create a plot that contains a lot of text. In an attempt to offset this behavior, the tikzDevice uses the filehash package to store font metrics that it has already computed. Hopefully the more the device is used, the faster it will be. We suggest reviewing the package vignette, especially the section &amp;quot;R Options That Aﬀect Package Behavior &amp;quot; for more information on how the caching process works.&lt;br /&gt;
&lt;br /&gt;
We think the package is quite usable as it is, but there are surely many bugs that we don't know about. We welcome bug reports at our R-Forge tracker: https://r-forge.r-project.org/tracker/?group_id=440&lt;br /&gt;
&lt;br /&gt;
Enjoy!&lt;br /&gt;
&lt;br /&gt;
- The tikzDevice Team</description>
   <author>cameronbracken@users.r-forge.r-project.org (Cameron Bracken)</author>
   <pubDate>Mon, 27 Jul 2009 11:44:34 GMT</pubDate>
   <guid>https://r-forge.r-project.org/forum/forum.php?forum_id=1596</guid>
   <comments>https://r-forge.r-project.org/forum/forum.php?forum_id=1596</comments>
  </item>
 </channel>
</rss>
