無線電子工学および電気工学の百科事典 グラフィック LCD 用のビットマップ フォント エディター。 無線エレクトロニクスと電気工学の百科事典 無線電子工学と電気工学の百科事典 / アマチュア無線デザイナー 著者は、今日一般的なグラフィック LCD 用のフォントを作成および編集するために設計された、独自に設計したコンピューター プログラムを提案します。 近年、アマチュア無線家は、情報を表示するためにグラフィック LCD を開発に使用することが増えています。 これらのデバイスのほとんどの特徴は、外部制御デバイスによって部分的または完全にロードされるキャラクタ ジェネレータが存在するか、まったく存在しないことです。 最初のケースでは、インジケーターを初期化するときに、フォント (シンボル イメージのセット) をキャラクター ジェネレーター メモリにロードする必要があります。 画面上にシンボルを表示するには、プログラムはそのコード (キャラクタ ジェネレータ内のアドレス) のみを LCD コントローラに送信し、画面上のシンボルの表示は LCD コントローラによって提供されます。 XNUMX 番目のケースでは、画面上にシンボルを表示するために必要なすべての操作が制御装置のプログラムによって実行されます。 多くの場合、ソフトウェア開発システムのライブラリには既製のプロシージャが用意されています。 ただし、どちらの場合も、外部フォントが必要です。 一方で、これは、特定の問題を解決するのに最適な文字セットを使用できるようになるため、良いことです。 ただし、必要なフォントを探すか、自分で作成する必要があります。 これは、グラフィック LCD 用のフォント ファイルが珍しいということではありません。 インターネット上で簡単に見つけることができますが、見つかったフォントが必ずしも使用できるとは限りません。 実際のところ、LCD コントローラーが異なれば、親密度マトリックス内のキャラクター イメージが異なる方法で展開されます。 たとえば、WG0107 インジケーターの KS0108 (KS12864) コントローラーは、図に示すように、画像バイトを垂直方向に反転します。 1、およびコントローラ RA6963 インジケータ WG240128 - 水平(図 2)。 最初のケースでは、文字 R はバイト シーケンス 00H、00H、00H、7FH、09H、19H、29H、49H で記述され、1 番目のケースでは 11EH、11H、1H、14EH、12H、11H、00H、XNUMXH で記述される必要があります。 。 その結果、文字イメージの水平バイト スキャンを備えた LCD 用に用意されたフォントは、垂直スキャン インジケーターでは正しく表示されず、またその逆も同様です。
プログラミングの観点から見ると、フォントは定数の配列です。 LCD に情報を表示するプログラムを開発する場合、配列を記述するためのさまざまなルールでさまざまなプログラミング言語が使用されます。 たとえば、アセンブリ言語では、定数は db (バイト定義) ディレクティブによって指定され、BASIC 言語ではデータ演算子によって指定されます。 C では、定数の配列はその値のセットによって簡単に指定できます。 0 進数の表現も異なります。 さまざまなプログラミング言語では、たとえば、XNUMXxNN、&hNN、$NN、NNH の形式が使用されます。NN は XNUMX 進数です。 上記を考慮すると、適切な既製フォントを含むファイルを見つけるのは簡単な作業ではなく、特定の文字をファイル内に含める必要がある可能性を考慮すると、タスクは完全に解決不可能になることがよくあると結論付けることができます。 このような場合は、どこかにあるフォントを修正するか、新しいフォントを一から開発する必要があります。 これを行うには、特殊なプログラム、いわゆるフォントエディターを使用すると便利です。 このようなエディタはインターネット上で見つけることができます。 彼らの主な欠点(少なくとも著者が扱った欠点)は、焦点が狭いことです。 このプログラムは、ある愛好家が特定の問題を解決するために開発したもののようです。 たとえば、あるプログラムは単一のプログラミング言語コンパイラで理解できる形式で出力ファイルを生成しますが、別のプログラムは特定のタイプの LCD にのみ適した文字イメージを生成します。 したがって、彼らの助けを借りて目的のフォントを作成することができないか、たとえばテキストエディタを使用して出力ファイルを修正する必要がありますが、これには多くの時間がかかり、エラーなしで完了することはほとんどありません。 他のエディタで作成されたフォントを編集するこれらのプログラムの機能は、多くの場合非常に制限されています。 提案された CG-Edit プログラムは、より汎用性の高いツールとして著者によって開発されました。 これを使用すると、アマチュア無線の練習で最も一般的に使用される形式で、以前に作成した (「外国語」を含む) フォントを修正して新規開発することができます。 次の親密度の次元が許可されます (最初の要素は水平方向のピクセル数、6 番目の要素は垂直方向): 8x8、8x12、16x16、16x16、24x24、16x24、24xXNUMX。 ポジイメージとネガイメージの両方でフォントをデザインおよび編集できるほか、おなじみのバイトスキャンの方向を垂直から水平、またはその逆に変更できます。 出力情報は、BASIC および C のさまざまなバージョンのアセンブリ言語プログラムで使用できるように最適化できます。 このプログラムは、32 ビットおよび 64 ビット バージョンの Windows を実行するパーソナル コンピュータ用に設計されています。 単一の実行可能ファイル CG-Edit.exe で構成されており、インストールの必要がなく、使いやすく、直感的なユーザー インターフェイスを備えています。 プログラムを開始すると、図に示すウィンドウがコンピュータ画面に開きます。 3. 左上部分には表形式の編集文字の選択領域があり、そのセルには Windows-1251 コード ページの文字が配置されます。 コード 20H ~ 0FFH の文字のみが表示されます。制御コード領域 0H ~ 1FH は、同等のグラフィックがないため欠落しています。 ラテン文字、キリル文字、および数字のすべての主要文字は 7FH-0BFH コード領域の外にあるため、この領域は、Windows-1251 コード ページに従ってそこで利用可能な文字の代わりに、解決するタスクに必要な文字を作成するために使用すると便利です。
ウィンドウの右側には編集領域があり、必要なキャラクターの習熟度が表示されますが、この領域は空です。 画面左下に「キャラクタージェネレーターの作成」と「キャラクタージェネレーターのインポート」ボタンがあります。 そのうちの XNUMX つ目は、プログラムを新しいキャラクタ ジェネレータを作成するモードにします。 これにより、作成したフォントのパラメータを入力するためのウィンドウが開きます。そこで、親密度のサイズとフォント内のバイト スキャンの方向をリストから選択する必要があります。 すべてのサイズのファミリリティで両方向のバイト スキャンが許可されるわけではないことに注意してください。 実際のところ、このプログラムは情報を最大限に詰め込むことに重点を置いています。 結局のところ、その助けを借りて作成されたフォントの主な「消費者」は、比較的少量のメモリを備えたマイクロコントローラデバイスです。 図上。 図 4 から、6x8 ピクセルのよく知られた空間でのバイトの水平スキャンでは、有効に使用されるのは 5 桁だけで、XNUMX 桁は余分なままであることがわかります。 文字画像は合計 XNUMX バイトを占めます。 垂直走査 (図 XNUMX) では、各文字スペース列が XNUMX バイトを占めるため、文字イメージに必要なのは XNUMX バイトだけです。 フォント文字あたり XNUMX バイトの違いは非常に大きいため、列数が XNUMX の倍数ではないすべての文字スペースでは、垂直スキャンのみが許可されます。
フォントオプションを選択した後、「作成」画面ボタンをクリックします。 これによりパラメータ入力ウィンドウが閉じられ、メインウィンドウは図の形式になります。 6.
プログラムは、コンピュータの RAM に空のキャラクタ ジェネレータ イメージを作成します。 [キャラクタ ジェネレータのインポート] 画面ボタンを押して既存のファイルからフォントが読み込まれるまで、または [キャラクタ ジェネレータの作成] 画面ボタンを押して独自の文字を作成するまでは、空のままです。 「文字選択」フィールドの文字は、実際のキャラクタ ジェネレータ イメージの内容を反映しません。 これらは常に変更されず、オリエンテーションのみに使用されます。 編集領域では、プログラムは選択されたサイズの親近性の画像を表示します。 「シンボル選択」テーブルでセルが選択されている、作成または編集したキャラクタジェネレータのシンボル(背景が赤で強調表示されています)が「編集可能な親密度」フィールドに表示されます。 最初は、これはコード 20H のシンボルです。 別のシンボルに移動するには、対応する表のセルをマウスの左ボタンでクリックする必要があります。 親密度の上の碑文は、作成されたフォントのパラメータを特徴付けます。 マウスの左ボタンでピクセルをクリックして、ファミリリティのコンテンツを編集します。 このようなクリックごとに、ピクセルの状態が反転します。 編集フィールドの下部には、グループ ピクセル コントロール用の XNUMX つの画面上のボタンがあります。 そのうちの XNUMX つをクリックすると、親近感の内容がその中で上下左右に XNUMX ピクセルずつ移動します。 画面上の「消去」ボタンを押すと馴染みが完全に消去され、「元に戻す」ボタンを押すと編集中の文字のスタイルが元に戻ります。 削除およびロールバック操作ではシンボルの編集結果が永久に削除されるため、プログラムは実行前に適切な警告メッセージを発行します。 親密度の下の行と右の列は、黄色の背景で強調表示されます。 これは、これらの領域が LCD 画面上の隣接する文字の区切りとして機能するため、ピクセルが含まれることは望ましくないことを思い出させます。 ただし、「望ましくない」という用語は禁止を意味するものではありません。 ピクセルをオンにするには、「D」や「W」などの記号を作成する必要があります。 大きな見慣れたスペースを扱う場合、大きな文字を見やすくするためには、下の XNUMX 行と右端の XNUMX 列が黄色の背景で強調表示されます。これは、それらの間の隙間を増やすことが推奨されるためです。 編集領域の下には XNUMX つの画面ボタンがあり、これを使用すると、キャラクタ ジェネレータを完全にクリアすることも、おなじみのバイトのスキャン方向を変更してキャラクタ ジェネレータを再コード化することもできます。 変更が保存されていないフォントを削除しようとすると、プログラムは警告メッセージを表示します。 シンボル選択の任意の順序と複数の再編集が許可されます。 ピクセルの状態が最初に変化すると、対応する選択セル内の文字が太字で強調表示され、拡大されます。 これは編集されたことを示しています。 編集中にプログラム ウィンドウに表示されるすべてを図に示します。 7. シンボル「3」と「Щ」はすでに編集されており、現在シンボル「Щ」が編集中で、その「尾部」が不要なゾーンにあることがわかります。
必要に応じていつでも、ファミリアリティのバイトのスキャンを垂直方向から水平方向、またはその逆に変更できます。 これを行うには、画面の「フラット パターン ビューの変更」ボタンをクリックします。 この操作は、キャラクタ ジェネレータのすべての文字に同時に作用します。 実行後、対応するメッセージが画面に表示され、親密度の上に表示されるフォントパラメータが変更されます。 フォント イメージのサイズが大きくなる場合、スイープ方向を変更することはできません。 ネガティブ フォントの使用について少し説明します。 最新の LCD コントローラーの多くは画像を自動的に反転できるため、ネガティブ フォントという概念自体がすでに隔世の感があります。 それにもかかわらず、このプログラムにはネガティブ フォントを作成および編集する機能があります。 ポジフォントを使用する場合と違いはありません。 いずれの場合でも、シンボルはコンピューター画面上ではポジティブに見えます。 画像のネガ画像への変換は、作成されたフォントをコンピュータのディスクに書き込む過程で発生します。 今後、編集のためにネガ フォントを含むファイルをロードすると、情報はコンピュータ メモリ内のキャラクタ ジェネレータ イメージに反転 (ポジ) 形式で入力され、ディスクに書き込まれるときに再び反転されることに注意してください。 フォントパラメータを設定すると、「出力ファイル」というタイトルの別のパネルがプログラムウィンドウに表示されます。 これには、キャラクタ ジェネレータ ファイルを必要な形式でディスクに書き込むことができるコントロールが含まれています。 ドロップダウン リスト「行形式」(図 8) で、出力テキスト ファイル内の行の構造を選択します。 コンマで区切られた XNUMX 進数シーケンスの前にキーワード「Data」または「.Db」を付けることも、省略することもできます。
ドロップダウンリスト「数値形式」(図9)でXNUMX進数の表現方法を選択します。 XNUMX つの XNUMX 進数 NN には、リスト内の接頭辞の XNUMX つまたは接尾辞「h」を追加できます。
「ネガフォント」の項目にチェックを入れることで、そのようなフォントでファイルを作成することができます。 ファイルをコンピュータのディスクに書き込むには、[キャラクター ジェネレータの保存] 画面のボタンをクリックします。 そのパスは、Windows の標準ダイアログに表示されます。 ファイルのデフォルト名は FontXXxYYmn.fnt です。ここで、XXxYY はおなじみの形式です。 m - 文字「v」または「h」。それぞれ、バイトの垂直走査または水平走査を意味します。 n は文字「p」または「n」で、それぞれ文字のポジティブまたはネガティブなイメージを示します。 fnt は名前拡張子です。 ファイル名は、先頭または末尾に有効な文字を追加することで変更できます。 ただし、「FontXXxYYmn」構造を破棄することはお勧めできません。 それによると、プログラムはロード時に「その」フォントのパラメータを認識します。 それ以外の場合、プログラムはファイルを「エイリアン」とみなし、パラメータの手動入力を必要とします。 必要に応じて、完成したキャラクタジェネレータファイルを図のウィンドウで編集します。 3、「キャラジェネのインポート」画面ボタンをクリックします。 標準の Windows ファイル アップロード ダイアログが開き、編集するファイルを選択する必要があります。 このファイルのダウンロード プロセスは、その形式によって異なります。 問題のエディタで作成されたファイルは、ユーザーの介入なしでエディタにロードされます。 もちろん、上記の構造がファイル名に保存されていれば、フォント パラメータに関する必要な情報はすべてファイル名で入手できます。 ファイル名に識別に必要な情報が含まれていない場合、プログラムはファイル名を手動で入力するように求め、ウィンドウを開き、親密度のサイズ、スキャンバイトの方向、ポジフォントまたはネガフォントを指定する必要があります。ファイル。 したがって、「外部」ファイルを編集する前に、これらのパラメータについて理解しておく必要があります。 パラメータが正しい場合、「外国の」フォントは高い確率で正常にロードされます。 ファイルに含まれる情報を読み取るアルゴリズムは、さまざまな表現の XNUMX 進数と XNUMX 進数の両方を「理解」し、Data ステートメントと .Db ステートメントから有用な情報を抽出し、コメントを無視します。 おそらく、適切な読み込みの障害となる唯一のことは、コメントされていない形式でファイル内に追加情報が存在することです。 ダウンロードしたフォントを編集するプロセスは、新しいフォントを作成するプロセスと変わりません。 最後のステップは、プログラムにとって「独自の」ファイルとなる作業内容を保存することです。 エディター プログラム ファイル: ftp://ftp.radio.ru/pub/2016/03/CG-Edit.zip。 著者: A. サフチェンコ 他の記事も見る セクション アマチュア無線デザイナー. 読み書き 有用な この記事へのコメント. 科学技術の最新ニュース、新しい電子機器: タッチエミュレーション用人工皮革
15.04.2024 Petgugu グローバル猫砂
15.04.2024 思いやりのある男性の魅力
14.04.2024
その他の興味深いニュース: ▪ 我が家の太陽と風 ▪ 1/4 インチ 8 MP OmniVision OV8856 および OV88565 イメージ センサー
無料の技術ライブラリの興味深い資料: ▪ サイトセクション 色彩と音楽のインスタレーション。 記事の選択 ▪ 記事 クリコヴォの戦いでドミトリー・ドンスコイ率いるロシア軍に反対したのは誰ですか? 詳細な回答 ▪ 記事 超音波深さ計。 無線エレクトロニクスと電気工学の百科事典 ▪ 記事 COM ポートの入力における信号のロジック アナライザーのプログラム。 無線エレクトロニクスと電気工学の百科事典 このページのすべての言語 ホームページ | 図書館 | 物品 | サイトマップ | サイトレビュー www.diagram.com.ua |