2006-10-27

Excel は PDF より PICT か TIFF を優先してしまう

OminiGraffle で作った図を Excel に貼りつけて、Excel 上でサイズを変更したらなんだかぼやけているような気がした。ディスプレイの解像度のせいだと思ってそのままプリントアウトしたら、図の中の文字が縮小によってつぶれていた。Excel にもどって拡大表示してみると、なるほど貼り付けられた図の中にある文字がギザギザになっている。

昔作ったプログラムでクリップボード(というか Mac OS X だと Pasteboard か)中のデータの種類を調べてみると、

% pbdutil -lvvv
Available type(s):
OmniGraffle Graphic Format (size: 109526)
Apple PICT pasteboard type (size: 88164)
Apple PDF pasteboard type (size: 67241)
NeXT TIFF v4.0 pasteboard type (size: 86404)
LinkBackData (size: 113544)

となっている。試しに pbdutil -r pdf | pbdutil -w pdfして、Pasteboard の中身を PDF だけにしてみると、Excel には貼り付けられなかった。また、PDF ファイルを Excel の「挿入」→「図」→「ファイルから……」で読み込んでも同じ。要は Excel が Mac OS X に十分にネイティブに対応できてないということなのだろう。

ふつうは、何か絵をコピーすると PICT と TIFF が Pasteboard に入って、それで十分なことが多いと思う。他のベクタ系のソフトウェアで描いた細かいものを貼りつけるのには注意が必要かも。

2 comments:

Anonymous said...

Office 製品は、PostScript ファイルに対応していなくて、PS ファイル内にうめ込まれた Tiff 画像を表示するという仕様でした。PDF でも同じなんでしょうね。考えてみると、PS も PDF も、どちらのレンダリング・エンジンも Microsoft は作っていないので、PS and PDF に対応していないのも無理ないのかもしれません。

rok said...

Mac OS X では、ネイティブないわゆる Cocoa 環境のアプリケーションで PDF を容易に扱えるのですが、Office 製品はどちらかというと Legacy な作りで、そのへんが効いているのでしょうね。Windows 版との互換性の問題もあって、あえてそうしているという可能性もあるでしょうかね。