TXT2BMP
TXT2BMP.COM
テキストをビットマップに変換する
NIFTY-Serve CXE03706
守屋 正平
1.はじめに
世の中は新しい OS の話題で持ち切りですが、ようやく Windows Ver. 3.1 を使
いはじめたという DOS ジェネリックな私には、あの壁紙が無駄に思えます。そこ
でカレンダーやメモを壁紙にして張り付ければ、少しは役に立つかもしれないと考
え、このコマンドをつくりました。とりあえず、同梱の CALENDAR.BMP, MANUAL,BMP
を壁紙にしてみて下さい。このソフトウェアがなにをするものか分かります。
1 BYTE ASCII 文字は内臓 4X8 ドット・フォント(自作、FIBMJ で公開)を、2
BYTE JIS 文字は内臓 8X8 ドット恵梨沙フォント(恵梨沙フォントPJにより、
FYHPPC で公開)を用いることにより、例えば VGA (640X480) では、最大 160 桁、
60行の情報を壁紙にすることができます。
また、おまけのコマンドとして、
CAL2TXT.COM : カレンダーを標準出力するコマンド
FILEDATE.COM : 指定ファイルのタイム・スタンプを現在と比較するコマンド
を同梱しております。
2.フォントについて
TXT2BMP.COM は恵梨沙フォントPJから承認を得て、恵梨沙フォントを内蔵して
おります。ただし、プログラムの都合から、オリジナルの恵梨沙フォントが水平方
向 8 ドットを 1 バイトとし、8 バイトで 1 文字を構成しているのに対し、垂直方
向 8 ドットを 1 バイトとして格納してあります。その他の改変は一切行っており
ません。
恵梨沙フォントは恵梨沙フォントPJが著作権を所有しておりますので、本プロ
グラムの使用条件、再配布条件、転載条件もまた、オリジナルである ELISA100.LZH
に準じます。同梱の ELISA100.DOC をお読みいただいてから、本コマンドを利用し
て下さい。
また、このアーカイブにはソースも同梱しておりますが、混乱を防止するため、
恵梨沙フォント部分の改変は認めません。
このような得難いフォントを公開され、またこのフリー・ウェアでの利用を快く
承諾していただいた恵梨沙フォントPJの皆様に、改めてお礼を申し上げます。
なお、作者自作の 4X8 ASCII フォント部分については、FONT_4X8.LZH に準じ、
自由な改変を認めます。
3.TXT2BMP.COM
3-1.機能
テキストをビットマップに変換する。
3-2.動作機種等
DOS 汎用(ただし、Windows が動作しないと意味がない?)。
3-3.起動方法
入力(テキスト)と出力(ビットマップ)を指定しコマンドライン、またはバッ
チ・ファイル内で実行する。
>TXT2BMP [/?] [/Xx] [/Yy] [/Hh] [/Cc] [/Bb]
: 入力するテキスト・ファイル(必須)
: 出力するビットマップ・ファイル(必須)
3-4.スイッチ
下記のスイッチが利用可能である。英文字の大小は問わない。
/? : 使用方法を簡易に表示する
/X : 一行の桁数を指定する(デフォールトは 160 桁)
4 の倍数でなければならない。つまり、ビットマップの横幅は 16 の
倍数でなければならない。
/Y : 行数を指定する(デフォールトは 54 行)
/H : 文字のドット単位の高さを指定する(デフォールトは 9 ドット)
内臓フォントの高さは 8 ドットであるが、可読性の向上などを目的
として、このスイッチにより高さを変更することができる。
/C : 文字色番号を指定する(デフォールトは 8: 灰色)
/B : 背景色番号を指定する(デフォールトは 15: 白)
/C, /B により指定できる色は下記の通りである。
0 : 黒 1 : 海老茶 2 : 緑 3 : うぐいす
4 : 紺 5 : 紫 6 : 青緑 7 : 灰
8 : 濃い灰 9 : 朱 10 : 緑 11 : 黄
12 : 青 13 : 赤紫 14 : 水 15 : 白
3-5.実行例
メモを VGA 用の壁紙にする
>TXT2BMP MEMO.TXT MEMO.BMP
>TXT2BMP /X160 /Y54 /H9 /C8 /B15 MEMO.TXT MEMO.BMP ・・・ 上と同じ
3-6.注意事項
テキストは基本的に可読文字で構成されていなければならないが、下記のエ
スケープ・シークエンスを例外とする。
\x1b[7m : 文字色の反転
\x1b[0m : 文字色の反転解除
4.CAL2TXT.COM
4-1.機能
カレンダーを標準出力する。
4-2.動作機種等
DOS 汎用。
なお、画面で出力を見る場合は、下記のエスケープ・シークエンスが利用で
きる環境(ANSI.SYS など)でなければならない。
\x1b[7m : 文字色の反転
\x1b[0m : 文字色の反転解除
ただし、リダイレクトし、TXT2BMP.COM で利用する場合は、この限りでない。
4-3.起動方法
出力をファイルに落とす場合は、リダイレクトすること。
>CAL2TXT [/?] [/Yy] [/Mm] [/Hn,t,m] [/Vn,t,m] [/J]
4-4.スイッチ
下記のスイッチが利用可能である。英文字の大小は問わない。
/? : 使用方法を簡易に表示する
/Y : 表示する最初の年を指定する(デフォールトは今年)
/M : 表示する最初の月を指定する(デフォールトは今月)
/H : 水平方向の出力フォーマットを指定する(デフォールトは /H7,1,3)
n : 水平方向に n 個の月を表示する
t : 左側に t 個のスペースを付加する
m : 月の間を m 個のスペースで区切る
/V : 垂直方向の出力フォーマットを指定する(デフォールトは /V6,0,1)
n : 垂直方向に n 個の月を表示する
t : 上側に t 行の空白を付加する
m : 月の間を m 行の空白で区切る
/J : 曜日を日本語で表示する(デフォールトは英語)
4-5.実行例
カレンダーを VGA 用の壁紙にするためのテキストを出力する
>CAL2BMP>CALENDAR.TXT
1996年5月のカレンダーを標準出力で見る
>CAL2BMP /Y1996 /M5 /H1,0,0 /V1,0,0
4-6.注意事項
カレンダーの出力は月曜から始まるように固定されている。
休日は反転表示される。なお、国民の休日は 1995 年1月1日現在で固定さ
れており、「春分の日」は3月21日に、「秋分の日」は9月23日に固定さ
れている。
5.FILEDATE.COM
5-1.機能
ファイルのタイム・スタンプを現在と比較する。
5-2.動作機種等
DOS 汎用。
5-3.起動方法
タイム・スタンプをチェックするファイルを指定し実行する。
>FILEDATE [/H|/?] [/Y|/M|/D]
5-4.スイッチ
下記のスイッチが利用可能である。英文字の大小は問わない。
/H : 使用方法を簡易に表示する
/? : 同上
/Y : 年だけを比較する(デフォールト)
/M : 年、月を比較する
/D : 年、月、日を比較する
5-5.結果
コマンドは以下の終了コードをシステムに返し、終了する。
0 : 過去のファイル
1 : 現在と同年(月(日))のファイル
2 : 未来のファイル
255 : 使用法を参照した。または、エラーが発生した。
6.コマンドを組み合わせて利用する方法
以上のコマンドは AUTOEXEC.BAT に記述して、その真価を発揮します。下記の例
を参照して、よりよい Windows 生活をお送りください。ただし、初めて実行すると
きには、手動でコマンド・ラインから起動し、あらかじめ BMP ファイルを作成して
おく必要があります。古いタイムスタンプのダミー・ファイルを作っておけばよい
でしょう。
CAL2TXT.COM, TXT2BMP.COM のデフォールトは VGA 用の壁紙作成に好都合なよう
に設定されておりますので、不都合な場合はスイッチで変更します。
6-1.カレンダーを壁紙(CALENDAR.BMP)にする場合(VGA)
FILEDATE /M CALENDAR.BMP ・・・・・・・・・・・・・・・・ カレンダーが既にあれば、
IF ERRORLEVEL 1 GOTO NEXT ・・・・・・・・・・・・・・・ 新たに作成しない
CAL2TXT>CALENDAR.TXT ・・・・・・・・・・・・・・・・・・ なければ、カレンダーをテキストに
TXT2BMP CALENDAR.TXT CALENDAR.BMP ・・・・・ テキストを壁紙に
DEL CALENDAR.TXT ・・・・・・・・・・・・・・・・・・・・・・ テキストを削除
:NEXT
6-2.カレンダーを壁紙(CALENDAR.BMP)にする場合(旧98などのDCGA 640X400)
FILEDATE /M CALENDAR.BMP
IF ERRORLEVEL 1 GOTO NEXT
CAL2TXT /V5,1,2>CALENDAR.TXT
TXT2BMP /Y50 /H8 CALENDAR.TXT CALENDAR.BMP
DEL CALENDAR.TXT
:NEXT
6-3.カレンダーとメモを壁紙(MEMO.BMP)にする場合(VGA)
FILEDATE /M MEMO.BMP
IF ERRORLEVEL 1 GOTO NEXT
CAL2TXT /V1,0,1 >MEMO.TXT ・・・・・・・・・・・・・・・・ カレンダーを1列だけ
TYPE MEMO.TXT >>MEMO.TXT ・・・・・・・・・・・・・・・・ メモを付加
TXT2BMP MEMO.TXT MEMO.BMP
DEL MEMO.TXT
:NEXT
7.謝辞
今一度、恵梨沙フォントPJの皆様に、お礼を申し上げます。
表示可能な情報量が多いこと、壁紙が目立ちすぎないことからいっても、恵梨沙
フォントは、本ソフト・ウェアの目的を実現するために最適なものでした。
8.著作権、転載等について
8-1.著作権者
恵梨沙フォントは恵梨沙フォントPJが著作権を所有しております。恵梨沙
フォントを除いた部分については、守屋正平(NIFTY-Serve CXE03706)が著作
権を保持します。
8-2.著作権
このプログラムはフリー・ソフトウェアであり、著作権は上記著作権者が有
します。
8-3.免責条項
このプログラムを使用して発生した損害について、著作権者は一切の責任を
負いません。
8-4.転載/配付
恵梨沙フォントは恵梨沙フォントPJが著作権を所有しておりますので、本
プログラムの使用条件、再配布条件、転載条件もまた、オリジナルである
ELISA100.LZH に準じます。同梱の ELISA100.DOC をお読みいただいてから、本
コマンドを利用して下さい。
9.サポート
著作権者の技術力と時間的余裕の範囲内で、可能な限りバグ・フィックス、バー
ジョン・アップを行います。感想を含め、メールをいただければ幸いです。
10.FILES
TXT2BMP.DOC このファイル
ELISA100.DOC 恵梨沙フォントに関するファイル(ELISA100.LZH から再掲、必読)
TXT2BMP.COM テキストをビット・マップに変換するコマンド
TXT2BMP.ASM 同ソース
CAL2TXT.COM カレンダーを標準出力するコマンド
CAL2TXT.ASM 同ソース
FILEDATE.COM ファイルのタイム・スタンプを現在と比較するコマンド
FILEDATE.ASM 同ソース
CALENDAR.BMP 出力例(カレンダーを壁紙にしたもの)
MANUAL.BMP 出力例(TXT2BMP.DOC の一部を壁紙にしたもの)
恵梨沙フォントのホームページへ