2

画質を損なうことなく、rmagick で画像のサイズを現在のサイズから幅 300 の固定幅に変更する必要があります。現在、jpg画像に対して次のことを行っています

 if previewImage.columns > 300
       previewImage.change_geometry!("300x") { |cols, rows, img|
           img.resize!(cols, rows)
       }
   end

結果の画像でシャープネスが失われているため、これが最善の方法かどうかはわかりません。画質をできるだけ落とさずにリサイズできるようにしたいです。

フィルタと圧縮技術があることは知っています: JPG JPEGCompression、LosslessJPEGCompression

しかし、どちらが最良の結果を提供するのかわかりませんか、画像をpngに変換してからサイズを変更できますか?

4

1 に答える 1

3

PNGへの変換はロスレスになります。サイズ変更は常に品質の低下を意味します(さまざまな画像マジックサイズ変更フィルターを試して、画像に最適なフィルターを確認できます...実際には「最適な」フィルターがないため、選択できます。画像の場合扱っているのは一般的に同じですが、実験するだけで最適なものを選択できるはずです。PNGからJPGに戻すと損失が大きくなるため、そのルートを使用する場合は画像をPNGのままにします。

于 2010-09-10T06:48:06.723 に答える