Windows 7 でアンチエイリアス グラフィックス用の Cairo ライブラリを使用して、かなり複雑なグラフを R で作成しています。R2.15.1 と cairoDevice バージョン 2.19 を使用しています。Cairo_png() のフォント サイズが単純な画面ベースの Cairo() よりも大きく、マルチテキストの配置が異なるという問題があります。簡単な例を挙げると:
画面バージョンのコード:
> Cairo(4, 4)
> par(bg = "blue")
> plot.new()
> for (x in 1:30) mtext(format(x), line = -x, outer = TRUE, adj = 0, col = "white")
結果:
png バージョンのコード:
> Cairo_png("test.png", 4, 4)
> par(bg = "red")
> plot.new()
> for (x in 1:30) mtext(format(x), line = -x, outer = TRUE, adj = 0, col = "white")
> dev.off()
png コードの結果:
ご覧のとおり、png バージョンではフォントが大きくなり、マルチ テキストの配置が広くなります。これはバグですか、それとも何か間違っていますか?
Cairo_svg() と Cairo_pdf() は Cairo_png() と同じように動作することを付け加えておきます。それらはすべて同じ出力をしますが、画面ベースの Cairo() とは矛盾します。