PDF を非常に高解像度の画像 (最大 100,000 * 80,000 ピクセル以上) にレンダリングする必要があります。
レンダリングをいくつかのスライスに分割し、NSOperationQueue を使用してそれぞれをレンダリングし、基本的に drawInRect:fromRect:operation:fraction: を使用して NSImage pdf 表現を新しい NSImage に描画し、TIFFRepresentation をファイル。
すべてが良好で、マルチコアで高速で、ほぼ満足しています。いずれにせよ、それらのスライスをレンダリングした後で再度結合して、単一の TIFF ファイルを取得する必要があります。
NSInputStream と NSOutputStream を使用してファイルをマージしようとしますが、各ファイルは完全な tiff 表現であるため、未加工のバイトをマージすると、画像ファイルが読み取れなくなります。イメージ ファイルを RAM に完全にロードせずに、つまり NSImage メソッドを使用せずにマージする方法はありますか?
それ以外の場合は、tiff 表現の代わりに生のピクセル バイトを保存し、それらを NSInputStream/NSOutputStream に結合できますが、巨大なものを RAM にロードすることなく、バイト ファイル全体を認識可能な TIFF に変換するにはどうすればよいでしょうか?