1

アバターに丸みを帯びた角の後処理を実装することができました。私のMacでは問題なく動作しますが、Windowsではサイコロは動作しません。

そう見える

def self.convert_options(px = 10)
  trans = ""
  trans << " \\( +clone -alpha extract "
  trans << "-draw 'fill black polygon 0,0 0,#{px} #{px},0 fill white circle #{px},#{px} #{px},0' "
  trans << "\\( +clone -flip \\) -compose Multiply -composite "
  trans << "\\( +clone -flop \\) -compose Multiply -composite "
  trans << "\\) -alpha off -compose CopyOpacity -composite "
end

http://www.imagemagick.org/Usage/thumbnails/#rounded&RoundedcornerswithPaperclip基づく_

私が始めたエラーの大きなリスト

convert.exe: unable to open image `\\(': No such file or directory @ error/blob.c/OpenBlob/2638.

多分それはWindowsのエスケープ文字と関係があると思いますか?したがって、\を^に変更しましたが、代わりにこのエラーが発生しました

convert.exe: unable to open image `black': No such file or directory @ error/blob.c/OpenBlob/2638.

それ以外の場合、ImageMagickは機能しています。それはより簡単な処理/サイズ変更をうまく管理します。また、GIT BASHを使用してコマンドをシェルに直接入力すると、この行は丸みを帯びた角のファイルを問題なく生成します。

4

1 に答える 1

0

(何千もの組み合わせを何時間も試した後) おやすみなさいの睡眠は私をこれに導いた

def self.convert_options_win(px = 10)
  trans = " "
  trans << " ( +clone -alpha extract -draw \"fill black polygon 0,0 0,#{px} #{px},0 fill white circle #{px},#{px} #{px},0 \"  "
  trans << " ( +clone -flip ) -compose Multiply -composite  "
  trans << " ( +clone -flop ) -compose Multiply -composite ) "
  trans << " -alpha off -compose CopyOpacity -composite  "
end

これは正常に動作します。すべてが単一の行文字列に切り詰められていたため、行頭の継続文字は実際には必要ありません。Windows シェルは「一重引用符」よりも「二重引用符」を好むため、文字列内でそれらをエスケープする必要がありました。たくさんの組み合わせを試しましたが、こんなに簡単だったとは信じられません。

于 2012-07-19T11:23:09.717 に答える