過去に私はNSImageでベクターファイルのPDF画像を使用しましたが、品質を損なうことなくそれらを拡大縮小できるという利点があります。人々は通常jpgファイルとpngファイルを使用することを知っていますが、これはなぜですか?PDFファイルはパフォーマンスを大幅に低下させますか、それとも他の理由がありますか?
よろしくお願いします、ベン
PDFファイルの内容によって異なります。十分な処理が行われている場合は、ラスターイメージの方が高速である可能性があります。もちろん、トレードオフはスケーラビリティです。すべてに1つの画像を使用するのではなく、宛先サイズごとに1xおよび2xのバリアントを作成するか、アイコンファミリ(適切な場合)を作成する必要があります。
しかし、ほとんどの人がラスターリソースを作成するのは、Photoshop、Pixelmator、Acornなどのツールに慣れているからだと思います。ベクターエディタを使用したり、PostScriptでアートを書いたりする人は多くありません。(そして、Macで利用できるベクターエディタの分野はかなり弱いです。)
数年前からの私のおすすめは、 Opacityというアプリです。ベクターに焦点を当てていますが、ラスター画像を複数のサイズ、PDF、さらにはソースコードでエクスポートできます。
私も PDF ファイルを使用しています。これは、PDF ファイルが自動的に拡大縮小されるのとまったく同じ理由からです。Apple も同じことを行います (Xcode.app バンドルの中を見てください。ファイル以外はほとんど見つかりません.pdf
)。
.jpg
または.png
ファイルを使用する理由はまったくありません。