自炊用画像編集ツール
2017.07.01 (土) 02:41
ugnag
とにかく困ったのが、ImageMagikとの連携。
例えば、傾き補正をアプリで行っても、実際にImageMagikに処理させると、違っていたりする。
他にも、コントラストや明度なども同じようなことが発生するため、
ここは諦めて全てImageMagikに処理させることにした。
その場合、処理時間が多少かかってしまうのだが、それはやむを得ないこととした。
次に、ImageMagikをプロセス実行させて、結果の画像を画面に表示するわけだが、
例えば、傾き補正の値は、マウスのホイールで増減出来るようにしたのだが、
そうすると値の変化が連続して発生する。
発生したイベントに対する処理はImageMagikで行うのだが、マウスのイベント発生の方が
処理よりも速いため処理がキューにたまってしまい、操作性がイマイチとなる。
そこで、後から発生したイベントのみを処理し、処理中のものやキューに溜まっていたものは
破棄するというスレッドサービスを作成した。
また、一連の処理の最初と最後にメッセージを飛ばして、その間は「処理中」のメッセージを
表示するようにした。
これがなかなか手こずった。
pure javaなら問題はないのだが、プロセス起動をしていることと、それの結果を
標準出力から読み取るスレッドが絡んできて、わけわからない状態。
その他には、データを操作する入力画面が複数あり、1箇所から変更すると、別の箇所にも
結果を反映させるのだが、そのうちの1つであるテーブルが絡むとイベントがループしてしまう。
まあ、これもなんとか解決したのだが、これにはどうやって解決するか結構悩んだ。
このアプリでは、処理モードが3つあり、そのうちの1つ(メインの処理)は、結構出来てきた
。
とりあえず、書き出してみると、
・カバーイメージ処理モード 未処理
・グラビア分割モード 未処理
・補正処理 ??(後、何が残っているだろ?)
・プロジェクトの保存/読み込み 未処理
大きく分けるとこんな感じだ。
もう少ししたら、画像も公開出来る予定。
[7] beginning...
[1] comments (0)
-
[0] [top]