Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
ToBitmap 説明書
Document: kana
Date: 2001/8/2
1. 始めに
spi_wrapper rev0.06に付属のSusie Plug-inを使って画像ファイルをBitmap
形式へ変換するプログラム「ToBitmap」の機能追加 & Bug Fix版 です。JPEG
保存機能の追加とBitmap->Bitmap変換などが追加されています。
2. 動作環境
ソース作成、動作確認は以下の環境にて行ないました。
Windows NT 4.0 Workstaion SP6a
Visual C++ 6.0 ServicePack 4
IE 4.01SP2 / etc.
Susie 0.45g
特にOSに依存するようなコードは書いていませんのでWin95/98系でも動作す
ると思いますが、潜在的なバグにより動作しない可能性もあります。
3. ファイル
ToBitmap.txt このファイルです。
bin\ToBitmap.exe プログラムです。相変わらずHelpファイルはありま
せん。
src\* Susie Plug-inを扱うwrapperライブラリです。
src\ToBitmap\* Wrapperライブラリを使って作ったToBitmapのUI部分
のソースです。
src\libjpeg\* IJGのjpegsrc6bのソースでToBitmapが利用している
ものですが、今回は付属していません。リコンパイ
ルする場合には各自で入手してください。
jconfig.hはjconfig.vcを使ってください。
4. 再コンパイル
VisualC++6.0用のプロジェクトファイルがあるのでロードしてコンパイルし
てください。Visual C++5.0での再コンパイルを行なう際は、STLの不具合が
(たぶん)多いのでSTLの修正を行なっておくか、std::vecotr/std::stringを使
わない形に修正してください。ヘッダなどの調整は適宜行なってください。
5. 使い方[ToBitmap]
・[変換したいファイルの指定方法]
SusieのカタログやエクスプローラからD&DしてBitmapファイルに変換したい
ファイルをDropします。するとファイルリスト一覧に追加されます。ToBitmap
自身にはファイルを指定する機能は必要が無いと思いましたので付けていませ
ん。
実際に変換対象となるのはファイル名の先頭にチェックが付いているものと
なります。変換に成功するとチェックは自動的に外されます。変換中の進行状
況はウィンドウ下部に表示されます。
・[変換した結果を出力するディレクトリまたはフォルダ]
結果を出力するディレクトリ(以下フォルダも同じ意味)も[output directory]
の編集可能なところへDropするか、キーボードから入力する事で変更できます。
指定したディレクトリは次回以降も記憶しています。
・[各ボタンの説明]
[Convert] 変換開始します。
[Cancel] 変換動作を中止します。
[Delete] ファイルリストから選択したファイルを削除します。
[Close] プログラムを終了します。ESCキーを押しても終了します。
Save[] 出力形式を選択します。標準ではBitmapとJPEGが選択できます。
先頭が"EXT:"で始まる形式は出力Plug-in(後述)を使うことを
意味しています。
[Option] 選択した出力形式での詳細を変更します。
変換先に同じファイルがあるかどうかを確認していないので異なるディレクト
リに同じファイル名があると上書きしてしまうので注意してください。
・ToBitmapが使うPlug-inの一覧はaboutダイアログで確認できます。
Plug-inの固有の設定はこのダイアログの[Config]ボタンで呼び出せます
6. 出力Plug-in
Ver 0.14より43TさんのA to B Converter用の出力Plug-inを使えるようにな
りました。出力Plug-inのインストール方法などはA to B Converterに準じて
ます。以下のようにToBitmapの実行ファイルのあるディレクトリに"exp_plug"
というディレクトリを作りそこに出力Plug-in(expng.dllなど)を置いてくださ
い。
例)
...\tobitmap.exe
...\exp_plug\expng.dll
7. 制限
Susie 0.45c以降に導入されたPlug-in優先順位やPlug-inロード種別には対応
していません。このためSusieのカタログからDrag&Dropして指定ファイルでも
ToBitmapでは読み込めない(または誤動作する)可能性があります。ご了承くだ
さい。
それと元画像にコメントがあっても出力していません。
A. 連絡先
バグの報告/感想/要望は以下のアドレスにお願いします。
Internet E-Mail: inokuchi@mvg.biglobe.ne.jp
URL: http://www2f.biglobe.ne.jp/~kana/
NiftyServe: PXB13767
B. 配布について
個人的な手渡し、転載などに関してはアーカイブを変更しない限りには制限
しません。配布範囲を把握しておきたいので転載などの際は事後でよいので連
絡をください。その時は「どこに転載した」ぐらいの文面で結構です。
ただし(無いと思いますが)雑誌などへの収録は一度連絡をください。
お約束ですが、このプログラム、ソースファイルの使用に起因するいかなる事
態も責任を負いかねます。利用者の責任でお使いください。
C. ソースの利用について
・お願いで義務事項でないこと:
同梱のソースを(ソースの修正も含めて)再利用する際には、再利用したツール
のドキュメントに出典を記述してくれると嬉しい。その時にも連絡をくれるとと
っても嬉しいです(返事はしない可能性が高いですけど_o_)。
・義務事項:
修正したソースを公開する際には、ソース中に修正箇所を明示するか同梱する
ドキュメントなどに修正箇所(または目的)がわかるようにしてください。破壊的
活動を目的としたソースの再利用・修正はおやめください。
・リコンパイル:
コンパイル時にはIJGのjpegライブラリが必要となりますので、別途入手して
ください。JPEG保存機能が必要なければIJGのライブラリも必要ありませんが、
ソースの構成はそれを考慮していませんので修正が必要となります。
D. 謝辞
最後に、Susieという素晴らしいツールを作られた「たけちん」さんに感謝
します。これからも頑張ってください。
E. ライセンスとか
"this software is based in part on the work of the Independent JPEG Group".
Z. 履歴
01/08/02版(0.15)
拡張子に"."を含まないパターンを返却するPlug-inがあると落ちるのを修正
00/12/02版(0.14)
出力Plug-inとしてA to B Converterのものを使えるように修正。
内部クラスとのI/F上の相違のため速度効率はよくありません。
00/11/25版(0.13)
出力形式にJPEGを選択した場合Quality設定を出力ファイルに反映してないことを修正
00/09/03版(0.12)
内部メモリの管理がおかしく変換できないことがあったのを修正(SpiInputStreamの問題)
Plug-inが32bppを返すと対応できないのを修正
出力Bitmap:OK, 出力JPEG:BI_RGBのみ、BI_BITFIELDSはカラーマスクを見てないけど、
通常のBI_BITFIELDSのマスクであれば結果的にOKのはず。
Plug-inが32bppを返し、かつBitmapに変換する場合に24bppなどへ変換できるようにした。
aboutダイアログのPlug-inの一覧からPlug-inの設定ダイアログを呼び出せるようにした。
00/06/26版(0.11)
えっと公開するの忘れてました。そんで誰からも動作報告も無いのでこれを
正式版にしておきます。
00/02/20版(0.1x) - 未公開
出力先ディレクトリをキーボードから変更した場合に変更を記憶できて
いなかった。
ロードしているPlug-inの一覧をaboutに出力。
#if 0
拡張子に依るPlug-inの優先度変更(一致する拡張子を持つPlug-inが優
先的に利用される)。
Susie0.45c以降のPlug-in設定を一部導入(A/B/Cタイプへの対応)。
#endif
00/01/16版(0.10)
spi_wrapperより分離。今後spi_wrapperサンプル版は保守しないかも。
ファイルリストの削除周りの挙動がおかしかったのを修正
JPEG出力を追加。
------------- (spi_wrapper付属版)
00/01/03版(Rev0.06):
AM Plug-in関係のバグ取り
書庫内ファイルをオープンする関数とか追加(その関係でI/Fが増えた)
サンプルでToBitmap/CnvBmpを追加。amopenは破棄されました。
(履歴が2桁だけど、わかるよね。)