CustomScript

2018年2月6日火曜日

画像ビューアー 「NeeView」1.28 更新しました

  • WPF
画像ビューアー NeeView を 1.28 に更新しました。
久々の更新です。主な更新は、検索機能の追加、圧縮ファイル内圧縮ファイルの個別展開対応、です。

1.28

(2018-02-06)

サイズ指定

  • エフェクトパネルに「サイズ指定」の項目を追加
  • 「サイズ指定のON/OFF」コマンド追加
オリジナルサイズを指定するもので、さらに「ウィンドウサイズに合わせる」等の表示スケール変更が適用されます。 指定サイズ通りに表示させる場合は表示スケール「オリジナルサイズ」にしてください。

フォルダーリストでの検索

  • 検索ボックスをフォルダーリストに追加。フォルダーリスト右上の設定から表示ON/OFFを切り替えます。
  • 「検索ボックスの表示ON/OFF」コマンド追加
現在のフォルダー以下からブックのファイル名検索をします。ただし、圧縮フォルダー内では無効です。
ある程度のあいまい検索を行うようにしています。検索オプション等の詳細は ユーザーガイド の「フォルダーリストの検索ボックスについて」を参照してください。

圧縮ファイルに含まれる圧縮ファイルのブック対応

  • 設定「全般」>「基本」>「圧縮ファイルに含まれる圧縮ファイルを全て展開する」追加
  • 設定「履歴設定」>「保存設定」>「圧縮ファイルに含まれる圧縮ファイルを履歴に保存する」追加
「圧縮ファイルに含まれる圧縮ファイルを全て展開する」設定をOFFにすることで、圧縮ファイルをフォルダーと同じように扱い、圧縮ファイルに含まれる圧縮ファイルをサブフォルダーのように扱います。 ONにすることで以前と同様に全て展開します。

フォルダーリストでの圧縮ファイル内の階層は、圧縮ファイルの有無のみ考慮され、圧縮ファイル内のパス情報は無視されます。
圧縮ファイルに含まれる圧縮ファイルのパスは C:\aaa\main.zip\bbb\sub.zip のようにファイルパス+圧縮ファイル内のパスという表記となります。 外部からパス指定する場合もこの形式に対応しています。パスの区切り記号は/どちらにも対応していますが、表示は全てで統一されます。 重複する圧縮ファイルエントリ名は区別できません。

UNCパス対応

  • 設定「履歴設定」>「保存設定」>「UNCパスを履歴に保存する」追加 (既定OFF)
今までもなんとなく動作していましたが、正式対応しました。 フォルダーリストからネットワークPCを検索することはできませんので、ドラッグ&ドロップするか、直接パスを指定してください。

その他

  • 各種DLL更新 (PDFはV8,XFAをサポートしなくなります)
  • フォルダーリスト更新処理に時間がかかる場合に処理中表示をするようにした
  • フォルダーリストでのコンテキストメニューの「サブフォルダーを読み込む」を切り替え式に変更
  • 既定ページ設定の「サブフォルダーを読み込む」が設定できない制限を解除
  • 「除外する圧縮ファイルのパターン」詳細設定追加。既定ではRAR分割ファイルを除外する設定
  • 「PDF対応」設定追加。PDFファイルの対応ON/OFFを切り替えます
  • 「リサイズフィルター処理にSIMDを使用する」設定追加

バグ修正

  • EXIFの撮影情報計算で0除算が発生することがある不具合修正
  • ブックマーク移動、ページマーク移動でフォルダーリストが追従しない不具合修正
  • 2ページ表示時のブック内ページマーク移動で位置がずれてしまう不具合修正
  • ブックマークに登録されていると履歴の日付削除で誤動作することがある不具合修正
  • RAR5分割ファイルを正常に展開できない不具合修正
  • ネットワークドライブでファイル名変更等のファイル操作が表示に反映されないことがある不具合修正
  • テンキーにコマンドを割り当てるとテキストボックスでの入力よりコマンドが優先されてしまう不具合修正
  • NeeViewSのアセンブリ名、プロダクト名をNeeViewSに変更。これにより、関連付けできない不具合が直るかも?

(追記)

ストアアプリ版では拡張子の設定をしたので既定のアプリに設定できるようになりました。

ファイル検索ツール「RealtimeSearch」1.8 更新しました

  • WPF
ファイル検索ツール RealtimeSearch を 1.8 に更新しました。
メモリ消費量は約1/3に減りましたが、速度はあまり変わらないかも。

1.8

(2018-02-06)
  • 環境を.Net4.6.2に変更
  • ひらがなカタカナ変換にkanaxsを導入。"♥"と"?"が区別されない問題を解消
  • メモリ使用量削減


2017年9月4日月曜日

画像ビューアー 「NeeView」1.27 更新しました

  • WPF
画像ビューアー NeeView を 1.27 に更新しました。(※ストア版は申請中です)
主な更新は、リサイズフィルターの実装です。

1.27

(2017-09-04)

■ リサイズフィルター実装

リサイズフィルターは表示サイズで画像を再レンダリングする処理です。 画像によってはにじみの少ない高品質の表示になります。
重い処理ですので必要に応じて有効化してください。
  • リサイズフィルターの設定はエフェクトパネルで行います。
  • 「リサイズフィルターON/OFF」コマンド追加(Ctrl+R)
  • リサイズの補完アルゴリズム、アンシャープマスク処理の設定が可能です。
  • 最大画像サイズ設定があります (詳細設定 > 最大画像サイズ)
    • 処理速度の問題のため、フィルター適用画像サイズはこの設定で制限されます。これ以上の拡大はこの最大画像サイズを引き伸ばした表示になります。
    • 読み込み画像自体にこの最大画像サイズを適用することでメモリ消費を抑えることも可能です (詳細設定 > 読み込み画像サイズ制限)
      • 読み込みでサイズ制限された場合、ファイル情報のサイズに * が追加表示されます
    • PDFの最大画像サイズと共通の設定になります (PDFページ最大サイズ設定廃止)

 エフェクトパネル整備

画像加工に関連する情報をまとめました。
  • 「ドットのまま拡大」をエフェクトパネルにも追加しました。
  • リサイズフィルターの設定を追加しました。
  • エフェクト自体の有効/無効を切り替えられるようにしました。
    • 「エフェクトON/OFF」コマンド追加 (Ctrl+E)
    • エフェクトON/OFF状態は保存されます。このため、前回使用していたエフェクトを復元する設定は廃止となります。

 ソリッド圧縮ファイルのページ送り速度改善

ソリッド圧縮ファイルの場合、1つのファイルを取り出す処理に時間がかかります。 このため、テンポラリフォルダーに事前に展開することでページ送り速度を改善しました。
  • rar,7z等でソリッド圧縮ファイルの可能性があります。zipはソリッド圧縮ファイルではありません。
  • 展開するソリッド圧縮ファイルの上限を設定可能 (詳細設定 > 7z.dllで事前展開する最大ファイルサイズ)
  • ソリッド圧縮ファイル以外も事前展開できるようにする設定可能 (詳細設定 > 7z.dllでは全て事前展開する)

 ページ操作回数での履歴登録

今まではブックを表示するだけで履歴に登録されましたが、これをページ操作が行われたタイミングで登録するように変更しました。 既定では1回の操作で履歴登録を行うようになります。
  • 履歴登録を行うページ操作数の設定 (詳細設定 > 履歴登録開始ページ操作回数)

 その他

  • パネルでの左右キー有効/無効設定 (詳細設定 > パネルでの左右キー有効)
    • フォルダーリストでは左右キーでフォルダー階層を移動しますが、これを無効にすると左右キーに関連付けられたコマンドが優先されます
  • EXIF回転反映を高速化した
  • EXIF回転設定廃止 (常に有効)
  • マウスジェスチャー自体の有効設定追加 (詳細設定 > マウスジェスチャー有効)
  • サムネイル画像生成アルゴリズム変更
  • サムネイルをPNGで保存できるようにした (詳細設定 > サムネイルフォーマット)
  • 先読みでPDF表示でのリサイズ処理を行うようにした
  • 2つめのウィンドウに座標復元を適用するかを設定できるようにした(詳細設定 > 2つめのウィンドウ座標の復元)
  • コンテンツ表示のサムネイルサイズ設定追加 (詳細設定 > ブックサムネイルサイズ)
  • コンテンツ表示のサムネイルポップアップ設定 (詳細設定 > ブックサムネイルのポップアップ)
  • コマンドでブックの並びをシャッフルに再度設定した場合にも並び替えを行うようにした

 バグ修正

  • マルチモニターでのウィンドウ座標復元バグ修正
  • フォルダーリストでファイルが削除された時に稀にハングするバグ修正



WPFは表示をGPUで処理しているので、画像表示の実体はテクスチャの貼られたポリゴンだったりします。そのため拡大縮小もリアルタイムでとても高速なのですが、品質はそれほど高くないようです(高品質設定でも拡大品質はバイリニアとほとんどかわらない)。

ということで、このバージョンからリサイズフィルターを実装しています。表示サイズでテクスチャを作り直す処理となります。CPU処理なのでとても重いです。なので、拡大縮小等は操作が終わってからリサイズ処理を行うようにしています。

リサイズフィルターは文字などが滲むような場合には効果が高いですが、画像によっては逆に荒が目立ってしまうため、一律に効果があるとは言えないようです。あと、ディスプレイの解像度が高い環境では効果が実感しにくいかと思われます。

2017年7月30日日曜日

画像ビューアー 「NeeView」1.26 更新しました

  • WPF
画像ビューアー NeeView を 1.26 に更新しました。
主な更新は、ストアアプリ版の公開です。

1.26

(2017-07-30)

ストアアプリ公開

ストアアプリを公開しました。基本的な動作は通常版と同じです。
詳細は こちら を参照してください。

アプリアイコン変更

アプリアイコンのデザインを変更しました。
NeeView と NeeViewS で色違いのアイコンになるようにしました。

PDFを表示サイズで描写

PDFページを表示サイズに応じて描写し直すようにしました。
処理負荷等の兼ね合いもあり、最大描写サイズを設定しています。[設定 > ページ設定 > PDF設定 > PDFページ最大サイズ]

読み込み中ページの表示方法を変更

読み込み完了前のページ表示を灰色にしていたのを、それまで表示していた画像のサムネイルの拡大表示で代用するようにしました。 [設定 > 詳細設定 > 読み込み中表示の表示方法] でこの表示方法を変更できます。

タッチ操作の設定

タッチ操作をある程度設定できるようにしました。[設定 > 画像操作 > タッチ操作] タッチドラッグとタッチ長押しからのドラッグで挙動を変更できます。

設定のバックアップ

「全設定をインポート」「全設定をエクスポート」コマンドを追加しました。 (メニュー > その他)
履歴やブックマークを含む全てのユーザデータのバックアップになります。 インポート時に復元するデータの種類を選択します。
.nvzip という拡張子のファイルがバックアップファイルになります。 中身は設定ファイルをzipでまとめただけのものです。

その他

  • NeeViewS のアセンブリ名(内部的な名前)を NeeViewS に変更し、区別できるようにした
  • 64bitOSでの NeeVireS で使用可能メモリサイズを 2BG から 4GB に増やした。メモリー不足エラーが起こりにくくなります
  • サムネイルリストの選択項目が中央になるようにスクロールする挙動をON/OFFできるようにした。標準でOFFに変更しています [設定 > 表示設定 > サムネイルリスト > 選択した項目が中央に表示されるようにスクロールする]
  • 「スクロール←」「スクロール→」コマンド追加。スクロールコマンドパラメータに「垂直方法へのスクロール許可」フラグ追加
  • [設定 > 全般 > フルスクリーン状態を復元する] の動作を [ウィンドウ座標を復元する]に依存しないようにした
  • [サポート外ファイルもページに含める]設定の場合に、アーカイブ内の空フォルダーも含めるようにした。ただし、Susie書庫プラグインによっては正確に取得できない場合があります
  • メニューエリア、パネルエリア上にマウスがあるときはサイドパネルの自動表示判定がされないようにした
  • 表示サイズモードに同じモードを指定した場合でも再設定されるようにした
  • Susieアーカイブエントリーの取得方法変更。使用できなかったSusie書庫プラグインが使えるようになるかもしれません

バグ修正

  • サブフォルダー読み込み設定が保存されないバグ修正
  • 表示の切り替えでサムネイルリストが更新されないバグ修正
  • ページの並び順変更がサムネイルリストに反映しないバグ修正
  • 画像読み込み失敗時にサムネイル画像からエラーメッセージ画像に切り替わらないバグ修正
  • ハイコントラストでメニューが読めなくなる不具合修正
  • Shift起動での多重起動が機能しなくなっていたバグを修正
  • axgif.spi で画像が取得できなくなっていたバグ修正
  • 前のページへ高速移動したときのページ順番ずれを軽減



通常版のみですが、ストアアプリで公開してみました。マイクロソフトの審査を通過していますので多少は信頼度UPかも?

2017年7月24日月曜日

ファイル検索ツール「RealtimeSearch」1.7 更新しました

  • WPF
ファイル検索ツール RealtimeSearch を 1.7 に更新しました。
拡張キーワードによる検索への変更が主な更新です。文法はこちらを参照してください。

1.7

(2017-07-24)
  • 拡張キーワードにより検索方法を制御するように変更
  • 外部アプリのプロトコル起動対応
  • 存在しない検索パスで処理が停止していたバグ修正


2017年7月12日水曜日

眼鏡依存色収差錯視

以前から、NeeViewのアイコンは収まりが悪いなーと感じていました。
いろいろ試してみたところ、頭をぐりぐり動かしながら見ると顔の向きによってアイコンの白い部分が右によったり左によったりするんです。


これ、メガネを掛けた人だけに現れる錯覚で「眼鏡依存色収差錯視」というらしいです。おそらく色ごとのレンズの屈折率の違いによってずれて見えるんだと思います。

どうやらこの白、オレンジ、青(または黒)という組み合わせはよろしくないようです。特にこのアイコンの場合は左右スペースが等しいことを前提したデザインなので余計におかしく見えているのかもしれません。


てことで次から新しいアイコンに変更する予定です。


配色かわってないやん!うごくやん!
・・いやまあ、そうなんですけどね。色まで変えると完全に別物になってしまうように思われたので、動いてしまうのは許容して左右の間隔に依存しないようなデザインにして違和感を軽減しているつもりです。

なかなか難しいものです。

2017年7月2日日曜日

画像ビューアー 「NeeView」1.25 更新しました

  • WPF
画像ビューアー NeeView を 1.25 に更新しました。
主な更新は、タッチ操作対応、PDF対応となります。

1.25

(2017-07-02 予定)

タッチ操作対応

基本的なタッチ操作に対応しました。
ジェスチャーはシングルタッチ操作になります。 画像の移動、回転、拡大縮小はマルチタッチで行います。 ビューエリアでのタッチ長押しは非対応です。
ビューエリアでのシングルタッチはコマンド実行操作になります。 コマンド設定の「タッチ設定」でコマンドにタッチ位置を割り当てます。標準では以下のように設定されています。
  • 右エリア --「前のページに戻る」
  • 左エリア --「次のページへ進む」
  • 中央エリア --「パネルを一時的に表示する」※自動非表示パネルを一時的に表示させる新しく追加されたコマンドです
タッチ操作に関係する以下の設定が追加されています。
  • 画像操作>タッチ操作 -- タッチ操作での回転、拡大縮小を有効/無効
  • 詳細設定>タッチジェスチャー判定の最小移動距離(X) -- タッチジェスチャーでの判定移動距離です
  • 詳細設定>タッチジェスチャー判定の最小移動距離(Y)
  • 詳細設定>タッチ操作ピンチ最小判定距離 -- 2タッチの距離がこの値を超えたときのみ回転、拡大縮小操作が有効になります
  • 詳細設定>タッチ操作ピンチ最小変化距離 -- 回転、拡大縮小操作しきい値。2タッチ操作でこの距離変化を超たときに回転、拡大縮小操作が有効になります
  • 詳細設定>パネルタッチスクロールの終端バウンド -- パネルのリストスクロール終端での跳ね返り挙動
  • 詳細設定>サムネイルリストタッチスクロールの終端バウンド -- サムネイルリストスクロール終端での跳ね返り挙動

PDF対応

PDFに対応しました。
現状の実装では展開する画像サイズは固定です。(設定>ページ設定>PDF設定>PDFページサイズ)で展開する画像最大サイズを指定してください。

コマンドラインオプション

1.23から仕組みを変更していましたが、いくつか修正したため、あらためてお知らせいたします。
オプションの詳細は こちら を参照してください。
  • コマンドラインヘルプ表示対応。 "--help" もしくは "-h" で説明を表示するようにしました。
  • 短いオプション名("-h"等)追加。
  • "--" 以降はすべてファイル名として解釈するようにした。これによりハイフンから始まるファイル名にも対応
  • 絶対パスでしか受け付けなかったのを相対パスでも指定可能にした。

インストーラーでNeeView,NeeViewSを選択可能に

NeeView, NeeViewS のインストールを選択できるようにしました。
「標準」では NeeView のみのインストールとなります。

バグ修正

  • コマンドライン引数で"="がファイル名に含まれると不正になるバグ修正
  • ダブルクリックコマンド実行後にクリック操作が実行されるバグ修正
  • フルスクリーン解除でフォルダーリスト等にフォーカスが移動してしまうことがあるバグ修正
  • 設定ファイルが読み込めないときにそのまま終了してしまうバグ修正

その他

  • 7zでの標準対応拡張子に .cbr .cbz を追加
  • ページスライダーのデザイン変更。
  • ファイル情報にアーカイブファイルパスを表示する設定追加 (設定>表示設定>ファイル情報>ファイルパスを表示する)
  • 処理中マークの表示設定追加 (設定>詳細設定>処理中マークの表示)
  • 「スクロール+次のページに進む」にもスクロール量のパラメータ実装


最近頻繁に更新していますが、通常は1~2ヶ月に1度程度の更新予定です。バグがなければ・・・

デスクトップアプリをタッチ操作対応させるのはなかなか難しいですね。まずボタンの大きさとかがタッチに合わない。今回の実装ではそのあたり総スルーです・・・

パッケージサイズが倍増しているのはPDF用のライブラリ追加のためです。ですが、このおかげで比較的簡単にPDF対応できました。ライブラリ作者様さまさまです。