Carrierwave を使用して、アップロードされたファイルを 16 個のタイルに分割して処理できることに関する詳細について、私は高低を検索しました。コマンドラインから ImageMagick を使用して、次のようにファイルを分割できることはわかっています。
convert imagename: -crop 4x4@ +repage +adjoin imagename_%d.gif
例えば。これは、ファイルを rose_0.gif から rose_15.gif に並べて保存するのに完全に機能します。
同じ機能を実行するRMagickを使用して何かを見つけることができませんが、Ruby on Railsなどを使用して同じ機能を実行する次のコードに出くわしました:
def split_images
#'image' is a ImageMagick Object
width = image.cols/number_cols
height = image.rows/nubmer_rows
images = []
0.upto(number_rows-1) do |x|
0.upto(number_cols-1) do |y|
images << image.crop( Magick::NorthWestGravity, x*width, y*height, width, height, true)
end
end
end
iOS アプリから画像をアップロードし、Carrierwave で version: ルーチンを作成して処理を処理することで、Carrierwave に画像をタイル表示させようとしています。
これを行うことは可能ですか?その場合、ファイルはどのように保存されますか? さらに重要なことに、ビュー内のファイルを「呼び出す」または参照するにはどうすればよいでしょうか。誰かが私を正しい方向に向けることができますか? または代替アプローチを提案しますか?
おそらく 16 個の異なる version: コマンドを記述できることはわかっていますが、これは少しばかげているように思えます。
CarrierWave や ImageMagick などにあるものはすべて読んだような気がしますが、困惑しています。
どんな助けでもありがたく受け取られます。
前もって感謝します