atobm - リファレンスマニュアル、オプション、コマンド例


名前

atobm bitmap、bmtoa、atobm - X Window System 用のビットマップ エディタおよびコンバータ ユーティリティ

概要

bitmap [ -options . . . ] [ filename ] [ basename ]

bmtoa [ -chars . . . ] [ filename ]

atobm [ -chars cc ] [ -name variable ] [ -xhot number ] [ -yhot number ] [ filename ]

説明

ビットマップ プログラムは、1 と 0 で構成される長方形のイメージを作成または編集するための基本的なツールです。ビットマップは、クリッピング領域、カーソルの形状、アイコンの形状、タイルと点描のパターンを定義するために X で使用されます。

bmtoa フィルタと atobm フィルタは、ビットマップ ファイル (ファイル形式) と ASCII 文字列を相互に変換します。これらは、ビットマップを素早く印刷したり、テキストに含めるためのバージョンを生成したりするために最も一般的に使用されます。

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

ビットマップは、標準の X ツールキット コマンド ライン引数をサポートしています (X(7) を参照)。次の追加の引数もサポートされています。

-size WIDTHxHEIGHT

グリッドのサイズを正方形で指定します。

-sw dimension

正方形の幅をピクセル単位で指定します。

-sh dimension

正方形の高さをピクセル単位で指定します。

-gt dimension

グリッド許容値。正方形の寸法が指定した値を下回る場合、グリッドは自動的にオフになります。

-grid, +grid

グリッド線をオンまたはオフにします。

-axes, +axes

主軸をオンまたはオフにします。

-dashed, +dashed

フレーム線とグリッド線のダッシュをオンまたはオフにします。

-stippled, +stippled

ハイライトされた正方形の点描をオンまたはオフにします。

-proportional, +proportional

比例モードをオンまたはオフにします。比例モードがオンの場合、正方形の幅は正方形の高さと同じになります。プロポーショナル モードがオフの場合、ビットマップは、最初は異なる正方形の寸法を使用します。

-dashes filename

ダッシュの点描として使用するビットマップを指定します。

-stipple filename

ハイライト用の点描として使用するビットマップを指定します。

-hl color

ハイライトに使用する色を指定します。

-fr color

枠線とグリッド線に使用する色を指定します。

filename

プログラムに最初にロードされるビットマップを指定します。ファイルが存在しない場合、 ビットマップ はそれが新しいファイルであると想定します。

basename

C コード出力ファイルで使用されるベース名を指定します。作業ファイルのベース名と異なる場合は、 ファイルを保存するときにビットマップによって変更されます。

Bmtoa は次のオプションを受け入れます。

-chars cc

このオプションは、ビットマップの文字列バージョンで使用する文字のペアを指定します。最初の文字は 0 ビットに使用され、2 番目の文字は 1 ビットに使用されます。デフォルトでは、0 にはダッシュ (-) が使用され、1 にはシャープ記号 (#) が使用されます。

Atobm は次のオプションを受け入れます。

-chars cc

このオプションは、文字列ビットマップを数値の配列に変換するときに使用する文字のペアを指定します。最初の文字は 0 ビットを表し、2 番目の文字は 1 ビットを表します。デフォルトでは、0 にはダッシュ (-) が使用され、1 にはシャープ記号 (#) が使用されます。

-name variable

このオプションは、ビットマップ ファイルを書き出すときに使用する変数名を指定します。デフォルトでは、filename コマンド ライン引数のベース名を使用するか、標準入力が読み取られる場合は空白のままにします。

-xhot number

このオプションは、ホットスポットの X 座標を指定します。正の値のみが許可されます。デフォルトでは、ホットスポット情報は含まれません。

-yhot number

このオプションは、ホットスポットの Y 座標を指定します。正の値のみが許可されます。デフォルトでは、ホットスポット情報は含まれません。

使用法

ビットマップには、編集中の画像内の各正方形が 1 つのビットを表すグリッドが表示されます。 Meta-I キーを押すと、ビットマップ イメージの実際のサイズ (通常の反転表示と同様) を取得できます。編集を続けるために、画像ポップアップを邪魔にならない場所に自由に移動できます。ポップアップ ウィンドウでマウスの左ボタンを押すか、 もう一度 メタ-I を押すと、実際のサイズのビットマップ イメージが削除されます。

ビットマップをカーソルの定義に使用する場合、画像内の正方形の 1 つをホット スポットとして指定できます。これにより、カーソルが実際に指す場所が決まります。先端が鋭いカーソル (矢印や指など) の場合、これは通常、先端の端にあります。対称カーソル (十字やブルズアイなど) の場合、これは通常中央にあります。

ビットマップは、アプリケーションに組み込むのに適した小さな C コード フラグメントとして保存されます。これらは、ビットの配列と、カーソル、アイコン、タイルの作成に使用できる幅、高さ、およびホット スポット (指定されている場合) を与えるシンボリック定数を提供します。

編集

ビットマップ画像を編集するには、描画コマンド (点、曲線、線、長方形など) を備えたボタンの 1 つをクリックし、ポインタをビットマップ グリッド ウィンドウに移動するだけです。マウスのいずれかのボタンを押すと、適切なアクションが実行されます。グリッド正方形を設定、クリア、または反転することができます。グリッド正方形の設定は、ビットマップ イメージ内のビットを 1 に設定することに対応します。グリッド正方形をクリアすることは、ビットマップ イメージ内のビットを 0 に設定することに対応します。グリッド正方形を反転することは、ビットマップ イメージ内のビットを 0 から 1 に変更することに対応します。以前の状態に応じて 1 ~ 0。マウス ボタンのデフォルトの動作は次のように指定されています。

		MouseButton1		Set
		MouseButton2		Invert
		MouseButton3		Clear
		MouseButton4		Clear
		MouseButton5		Clear

このデフォルトの動作は、ボタン機能リソースを設定することで変更できます。以下に例を示します。

		bitmap*button1Function: Set
		bitmap*button2Function: Clear
		bitmap*button3Function: Invert
		etc.

ボタン機能は、コピー、移動、貼り付け、塗りつぶし、ホット スポットの設定など、すべての描画コマンドに適用されます。

描画コマンド

以下は、アプリケーションのウィンドウの左側にあるボタンからアクセスできる描画コマンドのリストです。一部のコマンドはビットマップ ウィンドウ内で A を押すと中止でき、ユーザーは必要に応じて別のガイド ポイントを選択できます。

Clear

このコマンドは、ビットマップ イメージ内のすべてのビットをクリアします。グリッドの四角形が背景色に設定されます。ビットマップ ウィンドウ内で C キーを押すと、同じ効果が得られます。

Set

このコマンドは、ビットマップ イメージ内のすべてのビットを設定します。グリッドの正方形は前景色に設定されます。ビットマップ ウィンドウ内で S キーを押すと、同じ効果が得られます。

Invert

このコマンドは、ビットマップ イメージ内のすべてのビットを反転します。グリッドの正方形は適切に反転されます。ビットマップ ウィンドウ内で I キーを押すと、同じ効果が得られます。

Mark

このコマンドは、強調表示色で長方形をドラッグしてグリッドの領域をマークするために使用されます。領域がマークされると、その領域をさまざまなコマンドで操作できます (上、下、左、右、回転、反転、切り取りなどを参照)。マークされた領域は 1 つだけ存在できます。いつでも。別の領域をマークしようとすると、古いマークは消えます。 Shift キーを押しながらマウスボタン 1 を押してグリッド ウィンドウ内で四角形をドラッグすると、同じ効果が得られます。 Shift+マウスボタン 2 を押すと、グリッド領域全体がマークされます。

Unmark

このコマンドにより、マークされた領域が消えます。 Shift+MouseButton3 を押しても同じ効果が得られます。

Copy

このコマンドは、グリッドの領域をある場所から別の場所にコピーするために使用されます。マークされたグリッド領域が表示されていない場合、 コピー は上記の マーク と同様に動作します。マークされたグリッド領域が強調表示色で表示されると、このコマンドには 2 つの代替動作があります。マークされた領域内でマウス ボタンをクリックすると、マークされた領域を表す四角形を目的の位置にドラッグできます。マウスボタンを放すと、その領域がコピーされます。マークされた領域の外側をクリックすると、 コピー はビットマップ イメージの別の領域をマークしたいとみなして、再び マーク と同様に動作します。

Move

このコマンドは、グリッドの領域をある場所から別の場所に移動するために使用されます。この動作は、マークされた領域がコピーではなく移動されることを除いて、 コピー コマンドの動作に似ています。

Flip Horizontally

このコマンドは、ビットマップ イメージを水平軸に対して反転します。グリッドのマークされた領域が強調表示されている場合、マークされた領域内でのみ動作します。ビットマップ ウィンドウ内で H キーを押すと、同じ効果が得られます。

Up

このコマンドは、ビットマップ イメージを 1 ピクセル上に移動します。グリッドのマークされた領域が強調表示されている場合、マークされた領域内でのみ動作します。ビットマップ ウィンドウ内で上矢印キーを押すと、同じ効果が得られます。

Flip Vertically

このコマンドは、ビットマップ イメージを垂直軸に対して反転します。グリッドのマークされた領域が強調表示されている場合、マークされた領域内でのみ動作します。ビットマップ ウィンドウ内で V キーを押すと、同じ効果が得られます。

Left

このコマンドは、ビットマップ イメージを 1 ピクセル左に移動します。グリッドのマークされた領域が強調表示されている場合、マークされた領域内でのみ動作します。ビットマップ ウィンドウ内で左矢印キーを押すと、同じ効果が得られます。

Fold

このコマンドは、ビットマップ イメージを折り畳んで、反対側の角が隣接するようにします。これは、タイリング用のビットマップ イメージを作成する場合に便利です。ビットマップ ウィンドウ内で F キーを押しても同じ効果があります。

Right

このコマンドは、ビットマップ イメージを 1 ピクセル右に移動します。グリッドのマークされた領域が強調表示されている場合、マークされた領域内でのみ動作します。ビットマップ ウィンドウ内で右矢印キーを押すと、同じ効果が得られます。

Rotate Left

このコマンドは、ビットマップ イメージを左 (反時計回り) に 90 度回転します。グリッドのマークされた領域が強調表示されている場合、このコマンドはマークされた領域内でのみ動作します。ビットマップ ウィンドウ内で L キーを押すと、同じ効果が得られます。

Down

このコマンドは、ビットマップ イメージを 1 ピクセル下に移動します。グリッドのマークされた領域が強調表示されている場合、マークされた領域内でのみ動作します。ビットマップ ウィンドウ内で下矢印キーを押すと、同じ効果が得られます。

Rotate Right

このコマンドは、ビットマップ イメージを右 (時計回り) に 90 度回転します。グリッドのマークされた領域が強調表示されている場合、マークされた領域内でのみ機能します。ビットマップ ウィンドウ内で R キーを押すと、同じ効果が得られます。

Point

このコマンドは、マウス ボタンが押されている場合に、マウス ポインターの下のグリッド正方形を変更します。マウス ボタンを継続的にドラッグすると、システムの速度とマウス モーション イベントの頻度によっては、線が連続しない場合があります。

Curve

このコマンドは、マウス ボタンが押されている場合に、マウス ポインターの下のグリッド正方形を変更します。マウス ボタンを継続的にドラッグすると、線が連続するようになります。システムが遅い場合、またはビットマップがマウス モーション イベントをほとんど受信しない場合、動作が非常に奇妙になる可能性があります。

Line

このコマンドは、2 つの正方形の間の直線上の格子正方形を変更します。グリッド ウィンドウでマウス ボタンを押すと、 最初にマウス ボタンが押された四角形からマウス ポインターが置かれている四角形までの線がビットマップによって強調表示されます。マウス ボタンを放すと変更が有効になり、強調表示された行が消えます。

Rectangle

このコマンドは、2 つの正方形の間の長方形内のグリッド正方形を変更します。グリッド ウィンドウでマウス ボタンを押すと、 最初にマウス ボタンが押された正方形からマウス ポインターが置かれている正方形までの長方形がビットマップによって強調表示されます。マウス ボタンを放すと変更が有効になり、強調表示された四角形が消えます。

Filled Rectangle

このコマンドは 長方形 と同じですが、最後に長方形が輪郭ではなく塗りつぶされる点が異なります。

Circle

このコマンドは、2 つの正方形の間の円内の格子正方形を変更します。グリッド ウィンドウでマウス ボタンを押すと、 最初にマウス ボタンが押された四角形からマウス ポインターが置かれている四角形までの円がビットマップによって強調表示されます。マウス ボタンを放すと変更が有効になり、強調表示された円が消えます。

Filled Circle

このコマンドは 円 と同じですが、最後に円が輪郭ではなく塗りつぶされる点が異なります。

Flood Fill

このコマンドは、目的の四角形をクリックすると、マウス ポインターの下の接続された領域を塗りつぶします。斜めに隣接する正方形は接続されているとは見なされません。

Set Hot Spot

このビットマップ イメージをカーソルの定義に使用する場合、このコマンドはグリッド内の 1 つの正方形をホット スポットとして指定します。目的の正方形でマウス ボタンを押すと、ひし形が表示されます。

Clear Hot Spot

このコマンドは、指定されたホット スポットをビットマップ イメージから削除します。

Undo

このコマンドは、最後に実行したコマンドを元に戻します。深さは 1 です。つまり、 元に戻す の後に 元に戻す を押すと自動的に元に戻ります。

ファイルメニュー

[ファイル] メニュー コマンドにアクセスするには、[ファイル] ボタンを押して適切なメニュー エントリを選択するか、Ctrl キーと別のキーを押します。これらのコマンドは、ファイルと、サイズ、ベース名、ファイル名などのグローバル ビットマップ パラメータを処理します。

New

このコマンドは編集領域をクリアし、編集する新しいファイルの名前を入力するよう求めます。新しいファイルにはロードされません。

Load

このコマンドは、新しいビットマップ ファイルをビットマップ エディタにロードするために使用されます。現在の画像が保存されていない場合は、変更を保存するか無視するかを尋ねられます。エディターは一度に 1 つのファイルのみを編集できます。インタラクティブな編集が必要な場合は、いくつかのエディタを実行し、以下で説明するカット アンド ペーストのメカニズムを使用します。

Insert

このコマンドは、現在編集中の画像にビットマップ ファイルを挿入するために使用されます。ファイル名の入力を求められたら、グリッド ウィンドウ内をクリックし、新しいファイルを挿入する場所に輪郭を描かれた四角形をドラッグします。

Save

このコマンドはビットマップ イメージを保存します。 と指定されない限り、ファイル名の入力を求めるプロンプトは表示されません。ファイル名を未指定または - のままにすると、出力は stdout にパイプされます。

Save As

このコマンドは、新しいファイル名の入力を求められた後、ビットマップ イメージを保存します。ファイル名を変更したい場合に使用する必要があります。

Resize

このコマンドは、編集領域のサイズを新しいピクセル数に合わせて変更するために使用されます。サイズは WIDTHxHEIGHT 形式で入力する必要があります。新しいサイズが現在の画像サイズより小さくない限り、編集中の画像内の情報は失われません。エディターは巨大なファイルを編集するように設計されていません。

Rescale

このコマンドは、編集領域を新しい幅と高さに再スケールするために使用されます。サイズは WIDTHxHEIGHT 形式で入力する必要があります。アンチエイリアスは行われず、より小さなサイズに再スケールすると情報が失われます。再スケーリングを改善するために、独自のアルゴリズムを自由に追加してください。

Filename

このコマンドは、ベース名を変更したりファイルを保存したりせずに、ファイル名を変更するために使用されます。ファイル名に - を指定すると、出力は stdout にパイプされます。

Basename

このコマンドは、指定したファイル名とは異なるベース名が必要な場合に、ベース名を変更するために使用されます。

Quit

このコマンドはビットマップ アプリケーションを終了します。ファイルが保存されていない場合は、画像を保存するかどうかを尋ねるプロンプトが表示されます。このコマンドは、プロセスを強制終了するよりも優先されます。

編集メニュー

[編集] メニュー コマンドにアクセスするには、[編集] ボタンを押して適切なメニュー エントリを選択するか、メタ キーと別のキーを押します。これらのコマンドは、グリッド、軸、ズーム、カットアンドペーストなどの編集機能を扱います。

Image

このコマンドは、編集中の画像とその反転画像を別のウィンドウに実際のサイズで表示します。ウィンドウを移動して編集を続けることができます。画像ウィンドウ内でマウスの左ボタンを押すと、画像ウィンドウが画面から消えます。

Grid

このコマンドは編集領域のグリッドを制御します。グリッド間隔が GridTolerance リソースで指定された値 (デフォルトでは 8) より小さい場合、グリッドは自動的にオフになります。このコマンドを明示的にアクティブ化することで強制できます。

Dashed

このコマンドは、グリッド線を描画するための点描を制御します。このコマンドをアクティブにすることで、ダッシュ リソースで指定された点描をオンまたはオフにできます。

Axes

このコマンドは、編集中の画像の主軸の強調表示を制御します。実際の線は画像の一部ではありません。これらは、対称的なイメージを作成するとき、または主軸を強調表示することで編集が容易になる場合に、ユーザーを支援するために提供されています。

Stippled

このコマンドは、ビットマップ イメージのハイライトされた領域の点描を制御します。このコマンドを起動することで、点描リソースで指定した点描をオンまたはオフにすることができます。

Proportional

このコマンドは比例モードを制御します。プロポーショナル モードがオンの場合、ビットマップ ウィンドウの比率に関係なく、すべての画像正方形の幅と高さが強制的に等しくなります。

Zoom

このコマンドはズーム モードを制御します。すでに表示されている画像のマークされた領域がある場合、ビットマップは自動的にその領域にズームインします。それ以外の場合、ユーザーはズーム モードで編集する領域を強調表示する必要があり、ビットマップが自動的にその領域に切り替わります。ズーム モードでは、すべての編集コマンドとその他のユーティリティを使用できます。ズームアウトすると、元に戻すコマンドによりズーム セッション全体が元に戻されます。

Cut

このコマンドは、ハイライトされた画像領域の内容を内部のカット アンド ペースト バッファーに切り取ります。

Copy

このコマンドは、ハイライトされた画像領域の内容を内部のカット アンド ペースト バッファーにコピーします。

Paste

このコマンドは、強調表示された画像領域を持つ他のビットマップ アプリケーションがあるかどうか、または内部のカット アンド ペースト バッファーに何かがあるかどうかを確認して、それを画像にコピーします。コピーした画像を配置するには、編集ウィンドウ内をクリックし、枠線付きの画像を配置したい位置までドラッグし、ボタンを放します。

カット&ペースト

ビットマップは 2 つのカット アンド ペースト メカニズムをサポートしています。内部のカット アンド ペーストとグローバル X 選択のカット アンド ペーストです。内部のカット アンド ペーストは、描画コマンドのコピーと移動、および編集メニューからのカット アンド コピー コマンドを実行するときに使用されます。グローバル X 選択のカット アンド ペーストは、画面上の任意の場所に表示されるビットマップ イメージの強調表示された領域がある場合に常に使用されます。別のビットマップ エディタから画像の一部をコピーするには、Mark コマンドを使用するか、Shift キーを押しながらマウスの左ボタンで領域をドラッグすることにより、目的の領域を強調表示するだけです。選択された領域が強調表示されると、一次選択を使用する他のアプリケーション (xterm など) はその選択値を破棄し、適切な情報の強調表示を解除します。次に、[編集] メニューの [貼り付け] コマンドを使用するか、コントロール マウス ボタンを使用して、画像の選択した部分を別の (または同じ) ビットマップ アプリケーションにコピーします。ハイライト表示されたイメージ領域を表示せずにこれを実行しようとすると、ビットマップは内部のカット アンド ペースト バッファにフォールバックし、その時点でそこに保存されていたものをペーストします。

ウィジェット

以下はビットマップアプリケーションのウィジェット構造です。インデントは階層構造を示します。最初にウィジェット クラス名が指定され、次にウィジェット インスタンス名が続きます。ビットマップ ウィジェットを除くすべてのウィジェットは、標準の Athena ウィジェット セットからのものです。

	Bitmap bitmap
		TransientShell image
			Box box
				Label normalImage
				Label invertedImage
		TransientShell input
			Dialog dialog
				Command okay
				Command cancel
		TransientShell error
			Dialog dialog
				Command abort
				Command retry
		TransientShell qsave
			Dialog dialog
				Command yes
				Command no
				Command cancel
		Paned parent
			Form formy
				MenuButton fileButton
				SimpleMenu fileMenu
					SmeBSB  new
					SmeBSB  load
					SmeBSB  insert
					SmeBSB  save
					SmeBSB  saveAs
					SmeBSB  resize
					SmeBSB  rescale
					SmeBSB  filename
					SmeBSB  basename
					SmeLine line
					SmeBSB  quit
				MenuButton editButton
				SimpleMenu editMenu
					SmeBSB  image
					SmeBSB  grid
					SmeBSB  dashed
					SmeBSB  axes
					SmeBSB  stippled
					SmeBSB  proportional
					SmeBSB  zoom
					SmeLine line
					SmeBSB  cut
					SmeBSB  copy
					SmeBSB  paste
				Label status
			Pane pane
				Bitmap bitmap
				Form form
					Command clear
					Command set
					Command invert
					Toggle  mark
					Command unmark
					Toggle  copy
					Toggle  move
					Command flipHoriz
					Command up
					Command flipVert
					Command left
					Command fold
					Command right
					Command rotateLeft
					Command down
					Command rotateRight
					Toggle  point
					Toggle  curve
					Toggle  line
					Toggle  rectangle
					Toggle  filledRectangle
					Toggle  circle
					Toggle  filledCircle
					Toggle  floodFill
					Toggle  setHotSpot
					Command clearHotSpot
					Command undo

色

ビットマップをカラーで表示したい場合は、xrdb で読み込んだファイルの #ifdef COLOR セクションに次の内容を含めます。

*カスタマイズ: -色


これにより、ビットマップはアプリのデフォルトの色カスタマイズ ファイル内の色を選択します。

/etc/X11/app-defaults/ビットマップカラー

ビットマップウィジェット

ビットマップ ウィジェットは、ラスター イメージを編集するためのスタンドアロン ウィジェットです。大きな画像を編集するように設計されていませんが、その目的でも使用できます。他のアプリケーションと自由に組み込んで標準編集ツールとして使用できます。以下は、ビットマップ ウィジェットによって提供されるリソースです。

Bitmap Widget
Header file Bitmap.h
Class bitmapWidgetClass
Class Name Bitmap
Superclass Bitmap

すべてのシンプル ウィジェット リソースと 。 。 。

Name Class Type Default Value
foreground Foreground Pixel XtDefaultForeground
highlight Highlight Pixel XtDefaultForeground
framing Framing Pixel XtDefaultForeground
gridTolerance GridTolerance Dimension 8
size Size String 32x32
dashed Dashed Boolean True
grid Grid Boolean True
stippled Stippled Boolean True
proportional Proportional Boolean True
axes Axes Boolean False
squareWidth SquareWidth Dimension 16
squareHeight SquareHeight Dimension 16
margin Margin Dimension 16
xHot XHot Position NotSet (-1)
yHot YHot Position NotSet (-1)
button1Function Button1Function DrawingFunction Set
button2Function Button2Function DrawingFunction Invert
button3Function Button3Function DrawingFunction Clear
button4Function Button4Function DrawingFunction Invert
button5Function Button5Function DrawingFunction Invert
filename Filename String None ("")
basename Basename String None ("")

著者

Davor Matic、MIT X コンソーシアム