プロジェクト

全般

プロフィール

Backport(バックポート) #3677

リサイズ後の画像サイズが荒い

誠二 天重9年以上前に追加. 9年以上前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2012-05-24
期日:
進捗率:

100%


説明

Overview (現象)

Bug(バグ) #1931: 透過PNG画像が透過されずに背景が黒くなってしまう - OpenPNE 3 - OpenPNE Issue Tracking System
https://redmine.openpne.jp/issues/1931

の対策後、画像をリサイズした際に画質が荒くなるようになった。

Causes (原因)

#1931imagecopyresampled() の代わりに imagecopyresized() をコールするように変更されたことが原因だが、この変更は truecolor 画像に対してはおこなう必要がなかった。

Way to fix (修正内容)

#1931 でおこなわれた変更をより好ましい形に改善する形で、以下のような対処を実施した。

1. truecolor 時のみ PEAR::Image_Transform のオプションの scaleMethod を指定する (= imagecopyresampled() の代わりに imagecopyresized() をコールする)
2. save() 前の crop() はこれまでにリサイズをおこなわなかったときにのみ実行する

詳しくは https://redmine.openpne.jp/issues/3062#note-5 の記載内容を参考のこと

スクリーンショット.png 表示 (42.2 KB) isao sano, 2014-09-10 17:32


関連するチケット

コピー元 OpenPNE 3 - Bug(バグ) #3062: リサイズ後の画像サイズが荒い Won't fix(対応せず) 2012-05-24

関係しているリビジョン

リビジョン 1e334378 (差分)
Kousuke Ebihara9年以上前に追加

changed to set scaleMethod option only for non-truecolor image (e.g. well-used gif images) (refs #3677, BP from #3062)

Conflicts:
lib/plugins/sfImageHandlerPlugin/lib/image/generator/sfImageGeneratorImageTransform.php

リビジョン 0b6c92db (差分)
Kousuke Ebihara9年以上前に追加

changed not to call crop() method twice (refs #3677, BP from #3062)

履歴

#1 誠二 天重9年以上前に更新

#2 誠二 天重9年以上前に更新

  • ステータスNew(新規) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

#3 誠二 天重9年以上前に更新

  • 対象バージョンOpenPNE 3.8.x から OpenPNE 3.8.13 に変更

#4 Shinichi Urabe9年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

#5 isao sano9年以上前に更新

  • ファイル スクリーンショット.png 表示 を追加
  • ステータスPending Testing(テスト待ち) から Pending Merge(マージ待ち) に変更
  • 進捗率70 から 80 に変更

単体試験完了しました。

スクリーンショット添付しておきます。
左が修正後、右が修正前

#6 Shinichi Urabe9年以上前に更新

  • ステータスPending Merge(マージ待ち) から Fixed(完了) に変更
  • 進捗率80 から 100 に変更

他の形式にエクスポート: Atom PDF