Herokuは、単体ではファイルをサーバー上に永続的に保存することはできない[^1]ので、RMagickを使って画像を生成してもそれを保存することはできない。ただし、生成した画像をその場で単に表示するだけの目的であれば、永続的に保存する必要はないので、次の2つの方法でRMagickで生成した画像を利用できる。 生成した画像を保存せずにバイナリデータを直接表示する方法 生成した画像を一時保存フォルダに保存して表示する方法 生成した画像を保存せずにバイナリデータを直接表示する方法 生成したRMagickのImageオブジェクトを、to_blobメソッドを使って、直接メモリー上にバイナリデータとして展開し、それを出力する方法。これはメモリーの消費量が多そう。毎回1度だけ表示するようなジェネレータ系には適しているかも。この方法のサンプルコードが以下。 require 'rubygems' requ
![RMagickを使って生成した画像をHerokuで表示する2つの方法 - アインシュタインの電話番号](https://cdn-ak-scissors.b.st-hatena.com/image/square/692733d13025e567cf768f25fb5283e5135bff4f/height=288;version=1;width=512/https%3A%2F%2Fblog.ruedap.com%2Fimages%2Fogp.png)