PyQt で画像のビューアを作る 14

enhancer2

  • ホワイトポイント補正の後で、ボタンで三色独立したベジェにそれぞれ補正値を送れるようにした
    最初は写真のような補正直線になるが、ベジェでいじり直せる
  • ソフトとしては思った通りに動いてるが、操作が難しすぎて使えない

enhancer

  • 実用中、かなり良いです

  • カラーウィジェットを搭載したのでホワイトポイント補正が使いやすく高精度になった(と思う)

  • ベジェのウィジェットはenhancer2 の方でバージョンアップして綺麗にクラス化したので、いずれenhancerに戻したいが、仕様を少し変えたので戻すのも少し面倒かな?

  • 範囲指定してコピーをクリップに送る機能を実装したい、現在は一旦保存してるので

190716

  • 大きい画像の補正用に、enhancer の右側にスクロールバーをつけた
  • 調べたら結構難しそうだったけど、designerでlabelの代わりにScrollAreaを配置して、プログラムの中でlabelをこのScrollAreaにsetWidgetする、簡単だった(・∀・)ノ
  • ラベルにスクロールをつけるんじゃなくて、スクロールできるwidgetにラベルを貼り付ける感じ、逆です
  • スクロールはやはりマウスでグリグリしたいので、サブクラス化することになるかな。マウスはホワイトポイント取得にも使うので書き分ける必要ありだなあ

191029

enhancer マスクをチェックした状態でDDすると落ちるバグフィクス

  • 前から気づいていたがチェックを外せば問題ないので放置していた
    でも最近外し忘れて落ちることが多くそろそろFixしようと思った
  • マスク画像はメイン画像と同じサイズで作る。新たに画像をDDすると当然マスク画像も作り直すけど、メイン画像表示後に多分作ってるんだと思う。なのでチェックがあると古いマスク画像を強引に適用して表示しようとするため落ちるんだと思う
  • マスク画像作成のタイミングを調整しても良いけど、全体への影響が少ない方法として、単純にDD時にプログラム的にチェックをはずすことにした
    確認したらDDではファイル名を取得する程度で、ここに動作を投げていた
    def imagereset(self):
    ここは次の三つから呼ばれている
    drop DD
    imagefix 変換等を固定
    imagerestore 元画像に戻す
    いずれも作ったマスクは必要ないからここではずす
  • QAbstractButton Class
    QAbstractButton.setChecked (self, bool)
    これで false にしてやるだけ
    多分右側だけで良いと思うけど両方やっておく
  • imagereset って関数は良い関数だね
    必要に迫られて作ったんだろうけど
    一度全体を見ながら書き直した方が良いんだろうけどなあ

→ 戻る PyQt で画像のビューア

END

Close