新ビューワー実験中

AndroidのJavaアプリでは、Dalvikが使えるメモリが小さくて、高解像度な画像をそのまま読み込む事ができず、リサンプリングで荒くしたものしか表示できない
スマホの画面サイズくらいなら多少荒くしても目立たないのだけど、拡大するとどうしても荒さが目立つ
そうでなくとも、自動着色やらを適用するとエフェクト処理のために使用可能なメモリが半分になって、さらに荒くなるし

これを改善するため、現在NDKの勉強中なんだけど、以前も言ったようにC系統の知識に乏しいので、アプリに組み込めるようになるまで相当時間がかかりそうな気配
NDK関連の参考書やサイトを見ても、既にCの知識がある人がAndroidでアプリを組むための内容ばかりで、逆にAndroidを題材にCを学ぼう、的な文献がほとんどないんだよねぇ
なので、まずは別途Cの勉強をした上で、改めてNDKに、という遠回りを強いられている……
まぁ勉強のネタとしてアプリを作ってる訳で、遠回り自体は個人的に問題ないんだが、既にリリース済みのアプリなので、あまりバージョンアップの間隔が開くのもよろしくない

しかし最近、関連するけど別件でフォーラムに質問を投げた時、思いがけない所からヒントを得た
アプリ内でWebページを表示する標準機能としてWebViewというのがあるのだけど、これは別にインターネット上のページを見るだけでなく、アプリ内に用意したローカル上のHTMLファイルを表示する事もできる
で、この機能を使ってimgタグのソースにSDカード上の画像ファイルを渡してやったら、Javaアプリではメモリ不足で落ちるような画像でもあっさり表示する事ができた!

既存の処理をJavaScriptに移植する必要はあるけど、今からCを覚えるより楽だし早い
とりあえず拡大縮小とドラッグでのスクロールまで組んでみたけど、手持ちの端末では処理速度的な問題は今の所感じられないレベル
JavaScriptなら、画像ギャラリー系の各種ライブラリも色々あるし、表示に関しては色々手抜きした上で機能強化もできるかもしれない
問題点はタッチ操作系とマウス操作系の互換だけど、タッチイベントはJavaで処理してから表示系に引き渡せば行ける感じ

まぁアプリ以上に端末ごとの互換性問題とか出そうだし、ゴテゴテ機能を追加していけば処理速度に問題も出てくるかもしれないけど
なんとなく希望が見えて来た感じだ