(57)【要約】      （修正有）【課題】表示する画像データの描画座標を、表示装置のドットの位置に合わせることを課題とする。【解決手段】編集画面制御モジュールは、ＯＳに描画命令を入力すべき描画イベントが発生した場合に、描画イベントに対応する第１描画座標を取得する。編集画面制御モジュールは、取得した第１描画座標Ｘ１＝３を、第２描画座標Ｘ２＝３．５にずらす調整を行う。この第２描画座標として、表示処理を実行した場合に、補助線画像８５Ｄの１つの画素データによって、ＬＣＤの表示画面を構成する複数のディスプレイ画素のうち、１つのドットが制御される描画座標を設定する。【選択図】図６
2019053225.tif 000002
【特許請求の範囲】
【請求項１】
ディスプレイと、メモリとを備え、オペレーティングシステムがインストールされた情報処理装置のコンピュータが読み取り可能な制御プログラムであって、前記ディスプレイは、複数のディスプレイ画素から構成されており、
前記オペレーティングシステムは、描画タイプを示すタイプ情報と、前記描画タイプが示す描画を行う対象である描画座標を示す座標情報と、を含む描画命令を前記情報処理装置にインストールされたプログラムから入力された場合に、前記メモリに確保された描画領域に、入力された前記描画命令に従ってラスター画像データを描画することが可能であり、前記ラスター画像データは、複数の画素データから構成される画像データであり、前記画素データは、画素単位の画像データであり、
前記オペレーティングシステムは、前記ディスプレイ画素を前記描画領域に描画された前記ラスター画像データに基づいて制御することで、前記描画領域に描画された前記ラスター画像データが示す画像を前記ディスプレイに表示させる表示処理を実行することが可能であり、
前記制御プログラムは、
前記コンピュータを、
前記オペレーティングシステムに前記描画命令を入力すべき描画イベントが発生した場合に、
前記描画イベントに対応する第１描画座標を取得する取得手段として機能させ、前記第１描画座標は、前記描画イベントに対応する第１タイプ情報と前記第１描画座標とを含む第１描画命令に従って描画された前記ラスター画像データを対象にして前記オペレーティングシステムが前記表示処理を実行した場合には、前記ラスター画像データを構成する前記複数の画素データのうちの前記第１描画命令に対応する第１部分画素データによって、前記ディスプレイを構成する前記複数のディスプレイ画素のうち、第１数よりも多い第２数のディスプレイ画素が制御される描画座標であり、
前記コンピュータを、
前記取得手段が取得した前記第１描画座標を、第２描画座標に調整する調整手段として機能させ、前記第２描画座標は、前記第１タイプ情報と前記第２描画座標とを含む第２描画命令に従って描画された前記ラスター画像データを対象にして前記オペレーティングシステムが前記表示処理を実行した場合には、前記ラスター画像データを構成する前記複数の画素データのうちの前記第２描画命令に対応する第２部分画素データによって、前記ディスプレイを構成する前記複数のディスプレイ画素のうち、前記第１数のディスプレイ画素が制御される描画座標であり、
前記コンピュータを、
前記調整手段が前記第１描画座標を前記第２描画座標に調整した後に、前記第２描画命令を前記オペレーティングシステムに入力する入力手段と、して機能させることを特徴とする制御プログラム。
【請求項２】
前記調整手段は、
前記ディスプレイにおいて第１方向に並ぶ前記第２数の前記ディスプレイ画素が、前記第２部分画素データによって制御されないように、前記第１描画座標を前記第２描画座標に調整することを特徴とする請求項１に記載の制御プログラム。
【請求項３】
前記調整手段は、
前記ラスター画像データが示す画像として、前記第１方向に直交する第２方向に延設される画像を描画する前記描画イベントが発生した場合に、前記第１描画座標を前記第１方向にずらして前記第２描画座標に調整することを特徴とする請求項２に記載の制御プログラム。
【請求項４】
前記第１描画座標は、
前記第１部分画素データによって、前記ディスプレイを構成する前記複数のディスプレイ画素のうち、前記第２方向に並ぶ第３数よりも多い第４数のディスプレイ画素が制御される描画座標であり、
前記第２描画座標は、
前記第２部分画素データによって、前記ディスプレイを構成する前記複数のディスプレイ画素のうち、前記第３数のディスプレイ画素が制御される描画座標であることを特徴とする請求項３に記載の制御プログラム。
【請求項５】
前記調整手段は、
前記ラスター画像データが示す画像として、前記第２方向に沿った複数の直線を示す画像を描画する前記描画イベントが発生した場合に、前記複数の直線の各々を対象に、前記第１描画座標を前記第２描画座標に調整することを特徴とする請求項３又は請求項４に記載の制御プログラム。
【請求項６】
前記描画イベントは、
前記ラスター画像データが示す画像として、描画するフォントサイズが定められたビットマップフォントを描画するイベントであることを特徴とする請求項１に記載の制御プログラム。
【請求項７】
前記制御プログラムは、
前記コンピュータを、
前記第１描画座標を調整する必要があるか否かを判断する判断手段と、して機能させ、
前記調整手段は、前記判断手段により前記第１描画座標を調整する必要があると判断された場合に、前記第１描画座標を前記第２描画座標に調整することを特徴とする請求項１乃至請求項６の何れか１項に記載の制御プログラム。
【請求項８】
前記描画領域は、
前記ディスプレイ画素の１画素の大きさである１画素幅に比べて小さい単位で前記第１描画座標を設定した前記ラスター画像データの描画が可能であり、
前記第１数は、１であり、
前記第２数のディスプレイ画素は、前記ディスプレイを構成する前記複数のディスプレイ画素のうち、隣り合う２つの画素であることを特徴とする請求項７に記載の制御プログラム。
【請求項９】
前記判断手段は、
前記第２部分画素データに含まれる１つの前記画素データによって、隣り合う２つの前記ディスプレイ画素が制御される場合に、前記第１描画座標を前記第２描画座標に調整することを特徴とする請求項８に記載の制御プログラム。
【請求項１０】
前記調整手段は、
前記１画素幅の半分の大きさだけ、前記第１描画座標をずらすことを特徴とする請求項８又は請求項９に記載の制御プログラム。
【請求項１１】
前記ディスプレイは、
第１方向と、前記第１方向に直交する第２方向に沿って前記複数のディスプレイ画素が配置され、
前記調整手段は、
前記ラスター画像データが示す画像として、前記第２方向に沿った直線の画像を描画する前記描画イベントが発生した場合に、
前記直線の前記第１方向における前記第１描画座標をＸ１、
前記直線の前記第１方向における幅をＷ、
小数点以下を切り捨てる関数をｆｌｏｏｒ（）、
前記直線の前記第１方向における調整後の前記第２描画座標をＸ２とした場合に、次式、
Ｘ２＝ｆｌｏｏｒ（Ｘ１）＋Ｗ／２
により前記第２描画座標を算出することを特徴とする請求項１乃至請求項９の何れか１項に記載の制御プログラム。
【請求項１２】
前記情報処理装置は、
ユーザインタフェースを備え、
前記制御プログラムは、
前記ユーザインタフェースの入力に応じて、前記ディスプレイに表示する画像を編集するプログラムであり、
前記調整手段は、
前記ラスター画像データが示す画像として、補助線の画像を描画する前記描画イベントが発生した場合に、前記第１描画座標を前記第２描画座標に調整し、前記補助線は、前記ディスプレイに表示する画像を編集する際に、編集作業の補助となる線であることを特徴とする請求項１乃至請求項５の何れか１項に記載の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、描画を行う制御プログラムに関する。
【背景技術】
【０００２】
下記特許文献には、ラベルプリンタに接続された操作端末によって、ラベルを作成する技術について記載されている。操作端末は、操作者による操作入力に応じて印字オブジェクトを含むテンプレートを作成する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−７１５８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上記したラベル用のテンプレートの作成において、例えば、操作端末のディスプレイ上に直線を表示する際、表示する位置を表す描画座標と、ディスプレイのドットの位置の対応関係に起因して、表示上の不具合が発生する場合がある。例えば、同じ画像データに基づいて表示される画像のサイズが、表示される座標によって異なるサイズとなってしまう虞がある。そこで、表示する画像データの描画座標を、表示装置のドットの位置に合わせることを課題とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、実施例に開示する制御プログラムは、ディスプレイと、メモリとを備え、オペレーティングシステムがインストールされた情報処理装置のコンピュータが読み取り可能な制御プログラムであって、前記ディスプレイは、複数のディスプレイ画素から構成されており、前記オペレーティングシステムは、描画タイプを示すタイプ情報と、前記描画タイプが示す描画を行う対象である描画座標を示す座標情報と、を含む描画命令を前記情報処理装置にインストールされたプログラムから入力された場合に、前記メモリに確保された描画領域に、入力された前記描画命令に従ってラスター画像データを描画することが可能であり、前記ラスター画像データは、複数の画素データから構成される画像データであり、前記画素データは、画素単位の画像データであり、前記オペレーティングシステムは、前記ディスプレイ画素を前記描画領域に描画された前記ラスター画像データに基づいて制御することで、前記描画領域に描画された前記ラスター画像データが示す画像を前記ディスプレイに表示させる表示処理を実行することが可能であり、前記制御プログラムは、前記コンピュータを、前記オペレーティングシステムに前記描画命令を入力すべき描画イベントが発生した場合に、前記描画イベントに対応する第１描画座標を取得する取得手段として機能させ、前記第１描画座標は、前記描画イベントに対応する第１タイプ情報と前記第１描画座標とを含む第１描画命令に従って描画された前記ラスター画像データを対象にして前記オペレーティングシステムが前記表示処理を実行した場合には、前記ラスター画像データを構成する前記複数の画素データのうちの前記第１描画命令に対応する第１部分画素データによって、前記ディスプレイを構成する前記複数のディスプレイ画素のうち、第１数よりも多い第２数のディスプレイ画素が制御される描画座標であり、前記コンピュータを、前記取得手段が取得した前記第１描画座標を、第２描画座標に調整する調整手段として機能させ、前記第２描画座標は、前記第１タイプ情報と前記第２描画座標とを含む第２描画命令に従って描画された前記ラスター画像データを対象にして前記オペレーティングシステムが前記表示処理を実行した場合には、前記ラスター画像データを構成する前記複数の画素データのうちの前記第２描画命令に対応する第２部分画素データによって、前記ディスプレイを構成する前記複数のディスプレイ画素のうち、前記第１数のディスプレイ画素が制御される描画座標であり、前記コンピュータを、前記調整手段が前記第１描画座標を前記第２描画座標に調整した後に、前記第２描画命令を前記オペレーティングシステムに入力する入力手段と、して機能させることを特徴とする。
【発明の効果】
【０００６】
実施例に開示する制御プログラムでは、調整手段は、第１描画座標を第２描画座標に調整することによって、第１数より多い第２数のディスプレイ画素が制御されないように調整する。これにより、表示する画像データの第１描画座標を、表示装置のドットの位置に合わせた第２描画座標にすることができる。
【図面の簡単な説明】
【０００７】
【図１】プリンタシステム１のブロック図である。
【図２】各プログラムやデバイスの関係を概念的に示すブロック図である。
【図３】ＬＣＤ１６に表示したラベルの編集画面６１を示す図である。
【図４】補助線を表示する描画処理のフローチャートである。
【図５】デバイスコンテキスト３５の描画領域８１と、高解像度の表示画面８２と、低解像度の表示画面８３における描画座標、ドットの位置関係、表示画像の状態を示す図である。
【図６】描画座標を変換した場合の補助線画像８５の状態を示す図である。
【図７】第１描画座標Ｘ１＝３．５、幅Ｗ＝１の描画例を示す図である。
【図８】第１描画座標Ｘ１＝３、幅Ｗ＝３の描画例を示す図である。
【図９】ビットマップフォントの描画座標を変換する描画例を示す図である。
【発明を実施するための形態】
【０００８】
＜プリンタシステムの構成＞
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明する実施形態は、本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更できる。
【０００９】
図１は、本実施形態に係るプリンタシステム１のブロック図である。図１に示すプリンタシステム１は、ＰＣ１０、プリンタ５０、無線プリンタ５１を備える。ＰＣ１０は、ＣＰＵ（コンピュータの一例）１２、メモリ１４、ディスプレイＩ／Ｆ（インタフェースの略）１５、ＬＣＤ（ディスプレイの一例）１６、入力Ｉ／Ｆ（ユーザインタフェースの一例）１８、ネットワークＩ／Ｆ２０を主に備えている。これらの構成要素は、バス２２を介して互いに通信可能とされている。
【００１０】
ＰＣ１０及びプリンタ５０は、ネットワークＩ／Ｆ２０及びネットワーク５６を通じて有線により通信可能となっている。有線としては、例えば、ＬＡＮケーブルを採用することができる。なお、有線は、ＬＡＮケーブルに限らず、ＵＳＢケーブル等でもよい。また、ＰＣ１０及び無線プリンタ５１は、ネットワークＩ／Ｆ２０及びネットワーク５６を通じて無線通信が可能となっている。無線通信の方式としては、例えば、Ｗｉ−Ｆｉ（登録商標）やＢｌｕｅｔｏｏｔｈ（登録商標）の規格を採用できる。また、ネットワーク５６は、例えば、ＬＡＮ（有線ＬＡＮ、無線ＬＡＮを含む）、あるいはＷＡＮ（インターネットを含む）でも良い。
【００１１】
プリンタ５０，５１は、例えば、ラベルプリンタであり、ＰＣ１０との間で各種の情報や指示信号を送受信し、ＰＣ１０による制御に基づいて、所望のテキストや画像等を印字したラベルを作成する。プリンタ５０，５１は、例えば、ラミネートフィルム等の長尺状のテープにテキスト等を印刷してラベルを作成する。
【００１２】
ＣＰＵ１２は、メモリ１４内のアプリケーションプログラム２６（制御プログラムの一例）、ＯＳ３２に従って処理を実行する。アプリケーションプログラム２６は、画像を編集し、編集した画像をプリンタ５０，５１によってラベルを作成するためのプログラムである。アプリケーションプログラム２６は、処理モジュールとして、編集画面制御モジュール２７、画像データ作成モジュール２８、デバイス制御モジュール２９を備えている。尚、アプリケーションプログラム２６を、上記したように複数のプログラムの集合体で構成せず、単一のプログラムで構成しても良い。また、アプリケーションプログラム２６は、編集した画像を、ラベルに印刷させるプログラムに限定されない。例えば、アプリケーションプログラム２６は、編集した画像を、Ａ４紙やＡ３紙に印刷するよう、ページプリンタに指示するプログラムでも良い。また、アプリケーションプログラム２６は、編集した画像を、金属、ガラス、あるいは木材の表面に再現するよう、加工機器に指示するプログラムでも良い。レーザーマーカは、加工機器の一例である。また、アプリケーションプログラム２６は、編集した画像を、立体で再現するよう、３Ｄプリンタや工作機器に指示するプログラムでも良い。
【００１３】
ＯＳ３２は、アプリケーションプログラム２６に利用される基本的な機能を提供するプログラムである。ＯＳ３２は、例えば、Ｗｉｎｄｏｗｓ（登録商標）、ＭａｃＯＳ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ａｎｄｒｏｉｄ（登録商標）、ｉＯＳ（登録商標）等のオペレーティングシステムである。なお、以下の説明では、アプリケーションプログラム２６等を実行するＣＰＵ１２のことを、単にプログラム名でも記載する場合がある。例えば、「アプリケーションプログラム２６が」という記載は、「アプリケーションプログラム２６を実行するＣＰＵ１２が」ということを意味する場合がある。
【００１４】
図２は、各プログラムやデバイスの関係を概念的に示している。編集画面制御モジュール２７は、例えば、ラベルの作成やラベルの編集を行うための編集画面をＬＣＤ１６に表示するプログラムである。編集画面制御モジュール２７は、例えば、ＯＳ３２が提供するＡＰＩによりＯＳ３２へ表示指示を実行し、ＯＳ３２の表示プログラムを利用して表示処理を実行する。ＯＳ３２は、編集画面制御モジュール２７からの指示に応じてディスプレイＩ／Ｆ１５を制御し、ＬＣＤ１６への表示を行う。編集画面制御モジュール２７は、編集対象のラベルを示すオブジェクトを編集画面に表示するための画像を示す画像データの作成を画像データ作成モジュール２８に指示し、画像データ作成モジュール２８が作成した画像データを画像データ作成モジュール２８から受け取り、受け取った画像データに基づく画像をＬＣＤ１６へ表示させる。ここでいうオブジェクトとは、ラベルを構成するテキスト、図形（直線や四角形など）、画像などである。編集画面制御モジュール２７は、オブジェクトを編集する入力操作を入力Ｉ／Ｆ１８から受付けたとき、編集されたオブジェクトを編集画面に表示するための画像を示す画像データの作成を画像データ作成モジュール２８に指示する。オブジェクトの追加、削除、サイズ変更、移動、テキストの変更、色の変更などが、オブジェクトの編集の一例である。編集画面制御モジュール２７は、編集画面で編集されたラベルをプリンタから印刷するための画像を示す画像データの作成を画像データ作成モジュール２８に指示し、画像データ作成モジュール２８が作成した画像データを画像データ作成モジュール２８から受け取り、受け取った画像データと印刷指示とをデバイス制御モジュール２９に受け渡すことで、プリンタ５０又は無線プリンタ５１からラベルを印刷させる。なお、編集画面制御モジュール２７は、画像データ作成モジュール２８から受け取った画像データと印刷指示とをＯＳ３２が備える汎用印刷モジュール１７に受け渡すことで、無線プリンタ５１からラベルを印刷させる。ＭａｃＯＳが備えるＡｉｒＰｒｉｎｔ（登録商標）モジュールは、汎用印刷モジュール１７の一例であり、編集画面制御モジュール２７から受け取った画像データの印刷指示を、ネットワークＩ／Ｆ２０を介してプリンタ５０，５１を含む、汎用印刷モジュール１７に対応するプリンタに送信する。
【００１５】
画像データ作成モジュール２８は、ラベルを作成するための画像データの作成や編集を行うためのライブラリを備えており、画像データの作成、編集等を実行するプログラムである。画像データ作成モジュール２８は、編集画面制御モジュール２７からの指示に応じて、ＬＣＤ１６にラベルを示す画像を表示するための画像データや、ラベルを示す画像をプリンタ５０，５１で印刷するための画像データを作成する。
【００１６】
デバイス制御モジュール２９は、ネットワークＩ／Ｆ２０を介してプリンタ５０に印刷を実行させるためのプログラムである。デバイス制御モジュール２９は、例えば、ラベルをプリンタから印刷するための画像を示す画像データと印刷指示とを編集画面制御モジュール２７から受け取り、受け取った印刷指示に従って、画像データを、印刷に用いられる画像データである印刷データに変換し、変換した印刷データを、プリンタ５０または無線プリンタ５１に送信することで、ラベルを示す画像をプリンタ５０または無線プリンタ５１に印刷させる。なお、デバイス制御モジュール２９は、ＯＳ３２に指示することで、ネットワークＩ／Ｆ２０を介して印刷データを送信する。
【００１７】
また、メモリ１４は、データ記憶領域３４を備える。データ記憶領域３４は、アプリケーションプログラム２６等の実行に必要なデータなどを記憶する領域である。なお、メモリ１４は、ＲＡＭ、ＲＯＭ、フラッシュメモリ、ＨＤＤ、ＰＣ１０に着脱されるＵＳＢメモリ等の可搬記憶媒体、ＣＰＵ１２が備えるバッファなどが組み合わされて構成されている。
【００１８】
また、図１に示すメモリ１４は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体である。ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体には、上記の例の他に、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記録媒体も含まれる。また、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙな媒体は、ｔａｎｇｉｂｌｅな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、ｎｏｎ−ｔｒａｎｓｉｔｏｒｙなコンピュータが読み取り可能なストレージ媒体には含まれない。
【００１９】
また、メモリ１４は、デバイスコンテキスト３５を備える。デバイスコンテキスト３５は、ＯＳ３２がメモリ１４に確保する領域であり、描画のための記憶領域である。ＯＳ３２は、例えば、編集画面制御モジュール２７からの要求に応じてデバイスコンテキスト３５を確保してもよい。デバイスコンテキスト３５は、画像データ作成モジュール２８によるオブジェクトの描画に用いられる描画領域を備える。また、デバイスコンテキスト３５は、描画領域の他に、描画する直線の太さなどの描画に係わる設定情報（タイプ情報の一例）を記憶する記憶領域を備える。画像データ作成モジュール２８は、ＯＳ３２が確保したデバイスコンテキスト３５の描画領域の編集や、設定情報の変更等を可能にする権限をＯＳ３２から取得する。画像データ作成モジュール２８は、権限を取得した後、例えば、ＯＳ３２が提供するＡＰＩを利用してデバイスコンテキスト３５の描画領域にオブジェクトのラスター画像データを描画する。尚、本願における「描画」とは、ラスター画像データをデバイスコンテキスト３５に記憶させることをいう場合がある。また、ラスター画像データは、複数の画素データから構成される画像データである。画素データは、画素単位の画像データである。画素とは、画像データの単位であり、例えば、画像データの最小単位である。
【００２０】
ＯＳ３２は、デバイスコンテキスト３５に描画されたラスター画像データや設定情報に基づいて、ＬＣＤ１６への表示処理を実行する。ＯＳ３２は、描画領域に描画されたラスター画像データに基づいてＬＣＤ１６のドットを制御することで、ラスター画像データが示す画像をＬＣＤ１６に表示させる表示処理を実行する。
【００２１】
ＬＣＤ１６は、ＰＣ１０の各種情報を表示する。ＬＣＤ１６は、ディスプレイＩ／Ｆ１５を介してバス２２に接続されている。ＬＣＤ１６は、ディスプレイＩ／Ｆ１５を介して表示データを取得する。ＬＣＤ１６は、後述する複数のドット（ディスプレイ画素の一例）によって表示画面を構成されている。尚、本願のディスプレイは、液晶ディスプレイに限らず、有機ＥＬディスプレイ等の他の表示方式のディスプレイでも良い。
【００２２】
入力Ｉ／Ｆ１８は、キーボード、マウス等を含み、ユーザ操作を入力するためのインタフェースである。尚、入力Ｉ／Ｆ１８は、キーボード等に限らず、ＬＣＤ１６の表示画面に重畳された膜状のタッチセンサでも良い。
【００２３】
＜補助線の表示作動について＞
次に、ラベルの編集画面に補助線を表示する場合におけるアプリケーションプログラム２６の作動について説明する。図３は、ＬＣＤ１６に表示したラベルの編集画面６１の一例を示している。図３に示すように、編集画面６１には、ラベルの編集を行うための編集領域６３が表示されている。編集領域６３は、例えば、作成するラベルの長さ方向に延びる長方形状をなしている。
【００２４】
編集領域６３には、一例として、「新規ラベル」のテキストを入力したテキストオブジェクト６５が表示されている。テキストオブジェクト６５を囲む枠は、テキストオブジェクト６５の位置を示すオブジェクト枠６６である。オブジェクト枠６６は、設定によって表示、非表示を選択可能となっている。また、編集領域６３には、ラベル用画像６７が表示されている。ラベル用画像６７は、ラベルに印刷する写真やロゴなどの画像である。
【００２５】
また、編集領域６３には、グリッド線６８が表示されている。グリッド線６８は、長方形状の編集領域６３を正方形のマス目で区画するようにマトリックス状に表示されている。また、編集画面６１には、編集領域６３の上下方向の中央の位置と、左右方向の中央の位置とを示すガイド線６９が表示されている。また、編集領域６３の上部と、左側には、ルーラ７１が表示されている。上部のルーラ７１には、左端を基点とした目盛りが表示されている。左側のルーラ７１には、上端を基点とした目盛りが表示されている。ルーラ７１の目盛りは、数字や直線を用いて表示されている。ルーラ７１の目盛りに用いられる直線は、上下方向に沿った複数の直線であり、例えば、左右方向において所定の間隔で配置され、且つ互いに同一の太さで表示されている。また、編集領域６３には、入力Ｉ／Ｆ１８のマウスの位置を示すアイコン７３が表示されている。上部のルーラ７１には、このアイコン７３の位置を示す、あるいはアイコン７３で選択されたオブジェクトの位置を示す表示線７５が表示されている。表示線７５は、アイコン７３の左右方向への移動に合わせて、上部のルーラ７１に沿って左右方向へ移動する。
【００２６】
上記したオブジェクト枠６６に用いる直線、グリッド線６８、ガイド線６９、ルーラ７１の目盛りに用いる直線、表示線７５は、ラベルの編集作業において、編集作業の補助となる補助線である。本実施形態のアプリケーションプログラム２６は、これらの補助線の表示処理において、表示位置の調整を実行する。
【００２７】
図４は、補助線を表示する描画処理のフローチャートの一例を示している。なお、本明細書のフローチャートなどは、基本的に、プログラムに記述された命令に従ったＣＰＵ１２の処理を示す。すなわち、以下の説明における「判断」「取得」、「受付」、「制御」「設定」、「算出」等の処理は、ＣＰＵ１２の処理を表している。ＣＰＵ１２による処理は、ＯＳ３２を介したハードウェア制御も含む。なお、「取得」は要求を必須とはしない概念で用いる。すなわち、ＣＰＵ１２が要求することなくデータを受信するという処理も、「ＣＰＵ１２がデータを取得する」という概念に含まれる。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。また、「命令」「応答」「要求」等の処理は、「命令」「応答」「要求」等を示す情報を通信することにより行われる。また、「命令」「応答」「要求」等の文言を、「命令」「応答」「要求」等を示す情報そのものという意味で記載してもよい。
【００２８】
図４に示す描画処理は、例えば、編集画面制御モジュール２７によって実行される。まず、図４のＳ１１において、編集画面制御モジュール２７は、編集画面６１に画像を表示する描画イベントが発生したか否かを判断する。具体的には、イベント情報を出力すべき状況、例えば、入力Ｉ／Ｆ１８を介した操作入力によってオブジェクトがクリックされた、オブジェクトが移動された、編集画面全体が移動された、などを検知したＯＳ３２は、イベント情報を出力する。編集画面制御モジュール２７は、ＯＳ３２が出力したイベント情報を受付けるようプログラミングされている。具体的には、編集画面制御モジュール２７は、Ｓ１１で、ＯＳ３２が出力したイベント情報を受付けたか否かを判断し、かつ、イベント情報に基づいて、発生したイベントが描画イベントであるか否かを判断している。
【００２９】
即ち、編集画面制御モジュール２７が、入力Ｉ／Ｆ１８を介した操作入力により、編集画面６１の表示を変更する指示を受け付けるとは、編集画面６１を対象とした操作入力を示すイベント情報を編集画面制御モジュール２７が受付けることである。編集画面を対象とした操作入力とは、テキストの入力に伴うテキストオブジェクト６５の表示変更、非表示状態のグリッド線６８を表示状態に変更する表示変更、表示線７５の位置の変更する表示変更などを指示する操作入力である。従って、編集画面制御モジュール２７は、起動時の処理や、起動後の処理において、描画イベントが発生したか否かを判断している。
【００３０】
描画イベントには、編集画面制御モジュール２７の起動時に発生する起動イベントが含まれる。また、描画イベントには、複数の種類が存在する。なお、編集画面制御モジュール２７は、イベント情報だけでなく、イベント情報に含まれる操作入力がされた位置などを示す情報と、編集画面制御モジュール２７のステータス情報との比較も加味して、どのイベントが発生しているかを判断してもよい。ステータス情報とは、編集画面制御モジュール２７が随時更新している、ＬＣＤ１６に表示している各オブジェクトの位置やサイズを示す情報を含んでよい。なお、本実施例では、便宜上、起動イベントも、複数種類存在する描画イベントも「描画イベント」としてまとめて説明するものとする。
【００３１】
編集画面制御モジュール２７には、起動イベントおよび、複数の描画イベントそれぞれに対して、どの描画処理を実行するのか予め対応付けてプログラミングされている。起動イベントには、補助線の一種である、ルーラ７１を示す縦直線を描画する描画処理が複数対応付けられている。描画イベントには、発生した場合に補助線の描画処理が実行されるイベントと、実行されないイベントとがある。また、１つの描画イベントに、補助線の描画処理が複数と、補助線以外の描画処理（非補助線の描画処理とも記載する）が複数と、を対応付けている場合もある。
【００３２】
例えば、編集画面制御モジュール２７は、発生した描画イベントに、テキストオブジェクト６５の画像の描画のみが対応付けられている場合やラベル用画像６７の描画のみが対応付けられている場合、補助線の描画処理を実行しない。一方で、編集画面制御モジュール２７は、発生した描画イベントに、ガイド線６９の描画が対応付けられている場合に、ガイド線６９を示す縦直線の描画処理と、同じくガイド線６９を示す横直線の描画処理とを実行する。
【００３３】
なお、本実施例では、便宜上、図４において、Ｓ１３〜Ｓ１７に示される描画処理を１回だけ説明するが、Ｓ１１で発生したと判断された描画イベントに複数の描画処理が対応している場合、Ｓ１３〜Ｓ１７の処理が、対応する描画処理の数だけ、繰り返されることになる。例えば、起動イベントの場合、ルーラ７１を示す複数の補助線それぞれについて、Ｓ１７にて初期描画座標を取得して変換し、Ｓ１５にて、変換後の描画座標への縦直線の描画を実行する。Ｓ１７にて取得する初期描画座標は、複数の補助線それぞれについて異なる座標である。
【００３４】
編集画面制御モジュール２７は、描画処理が発生したと判断すると（Ｓ１１：ＹＥＳ）、描画する画像が補助線であるか否かを判断する（Ｓ１３）。例えば、編集画面制御モジュール２７は、Ｓ１１で発生したと判断されたイベントに対応付けられた描画処理が、補助線の描画処理であるか否かを判断する。編集画面制御モジュール２７は、描画する画像が補助線でないと判断すると（Ｓ１３：ＮＯ）、指示された画像の描画を実行する（Ｓ１５）。例えば、編集画面制御モジュール２７は、Ｓ１３において描画する画像がテキストオブジェクト６５の画像やラベル用画像６７である場合（Ｓ１３：ＮＯ）、後述するＳ１７の変換処理を実行せず、Ｓ１５において指示された描画を実行する。
【００３５】
編集画面制御モジュール２７は、例えば、命令を受け付けた画像の描画を、画像データ作成モジュール２８（図１参照）へ指示する。画像データ作成モジュール２８は、ＡＰＩ等を利用してデバイスコンテキスト３５の描画領域に、指示された画像を描画するようにＯＳ３２へ命令する。画像データ作成モジュール２８は、デバイスコンテキスト３５への描画を完了させると、編集画面６１へ表示する画像の準備が完了した旨を編集画面制御モジュール２７へ通知する。編集画面制御モジュール２７は、デバイスコンテキスト３５の描画領域に描画したラスター画像データが示す画像を、ＬＣＤ１６へ表示させる指示をＯＳ３２に行う。ＯＳ３２は、デバイスコンテキスト３５のラスター画像データに基づいてＬＣＤ１６のドットを制御する。これにより、編集画面６１には、新たなテキストや画像が表示される。
【００３６】
一方で、編集画面制御モジュール２７は、Ｓ１３において、描画する画像が補助線であると判断すると（Ｓ１３：ＹＥＳ）、補助線の初期描画座標を取得し、取得した初期描画座標の変換を実行する（Ｓ１７）。ここで、編集画面６１に上記した補助線を表示する際、デバイスコンテキスト３５に補助線を描画する位置を示す描画座標と、ＬＣＤ１６のドットの位置の対応関係に起因して、表示上の不具合が発生する場合がある。図５は、描画座標、ドットの位置関係と、表示される画像の状態を示している。また、図５は、描画イベントにともなって命令を受け付けた補助線の画像（以下、補助線画像という）８５を、初期描画座標に基づいてデバイスコンテキスト３５の描画領域８１に描画した状態を示している。描画領域８１に示すＸＹ座標は、描画領域における位置を示す描画座標である。この描画座標は、実際に描画されるものではなく、説明の便宜上、図５に図示している。また、図５は、一例として、８×８の描画座標を示している。
【００３７】
例えば、補助線画像８５の描画イベントとして、Ｘ＝３の描画座標に、幅Ｗ＝１の直線を引く命令（タイプ情報の一例）を受け付けた場合について説明する。なお、描画イベントで命令を受け付けた初期描画座標を、第１描画座標と称して説明する。また、幅Ｗは、描画座標のＸ方向における１目盛りの大きさに対応しており、後述する低解像度のＬＣＤ１６の表示画面８３の１ドットの幅Ｗ２に対応している。１ドットとは、例えば、ＬＣＤ１６の１ピクセルであり、表示デバイスであるＬＣＤ１６で表現できる最小単位である。
【００３８】
例えば、アプリケーションプログラム２６の起動時に編集画面６１を表示するイベントが発生すると、編集画面制御モジュール２７は、起動プログラムから編集画面６１に直線を描画する命令を受け付ける。編集画面制御モジュール２７は、例えば、描画イベントの発生にともなって、ルーラ７１を示す１ドットの幅Ｗの縦直線、あるいは最小の細さの縦直線を引く命令を受け付ける。編集画面制御モジュール２７は、この命令に対応する第１描画座標を取得する。例えば、編集画面制御モジュール２７は、ルーラ７１（図３参照）の線を引くための第１描画座標の初期値を取得し、メモリ１４のデータ記憶領域３４内に一時的に記憶する。
【００３９】
図５の描画領域８１に示すように、仮に、第１描画座標の変換を実行しなかった場合、補助線画像８５は、Ｘ＝３の描画座標を中心として、幅Ｗ＝１で描画される。図５には、このＸ＝３の描画座標に描画された補助線画像８５を、高解像度のＬＣＤ１６の表示画面８２に表示した状態と、低解像度のＬＣＤ１６の表示画面８３に表示した状態とを示している。表示画面８２，８３のマス目は、ドットの１つ１つを示している。高解像度の表示画面８２は、例えば、低解像度の表示画面８３に比べて２倍のドット数を有する。例えば、描画座標の１目盛りの大きさは、低解像度の表示画面８３の１ドットの幅Ｗ２（１画素幅）と同一となっている。換言すれば、高解像度の表示画面８２の１ドットの幅Ｗ１は、描画座標の１目盛りの大きさの半分となっている。
【００４０】
例えば、図５に示すように、ＯＳ３２の種類によっては、描画領域８１における描画座標の整数の位置と、表示画面８２，８３の隣り合う２つのドットの境界線、即ち、ドットの位置を示す物理座標の整数の位置とを同じ位置に設定するものがある。この場合、Ｘ＝３の描画座標に幅Ｗ＝１の直線を描画すると、物理座標のＸ＝３、即ち、ドットの境界線を中心として幅Ｗ＝１の直線が描画される。
【００４１】
表示画面８２に示すように、高解像度のＬＣＤ１６であれば、物理座標のＸ＝３を中心として、Ｘ＝２．５〜Ｘ＝３．５の間において、Ｙ方向に沿った補助線画像８５Ａを描画することができる。物理座標のＸ＝２．５〜３．５のドットは、補助線画像８５Ａを表示する状態となる。また、物理座標のＸ＝２〜２．５、３．５〜４のドットは、補助線画像８５Ａを表示しない状態となる。即ち、描画領域８１に描画した補助線画像８５を、そのままの位置で表示できる。
【００４２】
一方、低解像度のＬＣＤ１６では、物理座標のＸ＝２．５〜３などの高解像度に対応するドットが存在しない。このため、補助線画像８５は、物理座標のＸ＝２〜４の２つのドットに跨がる位置となる。補助線画像８５のＸ方向における両端部は、表示画面８３におけるドットのＸ方向における中心位置となる。換言すれば、ドット数が少ないため、補助線画像８５をそのまま表示できるドットが存在しない。そこで、ＯＳ３２は、例えば、幅Ｗ＝１の補助線画像８５を、幅Ｗ＝２に広げた補助線画像８５Ｂとして、表示画面８３に表示する補正処理を行う。また、ＯＳ３２は、指示された幅Ｗに比べて補助線画像８５を太くする補正処理を実行したため、補助線画像８５Ｂの色の濃さを、描画イベントで設定された補助線画像８５の色の濃さに比べ薄くする補正処理を実行する（図５のドット参照）。しかしながら、このような補正処理がＯＳ３２によって実行されると、描画イベントに対応する第１描画座標の位置、即ち、表示する位置によって補助線の太さや色が変更され、補助線の表示に統一感がなくなる虞がある。
【００４３】
そこで、本実施形態の編集画面制御モジュール２７は、描画する画像が補助線であると判断すると（図４のＳ１３：ＹＥＳ）、描画イベントに対応する第１描画座標を変換する処理を実行する（Ｓ１７）。編集画面制御モジュール２７は、第１描画座標のＸ方向における位置をＸ１、Ｘ方向における補助線の幅をＷ、小数点以下を切り捨てる関数をｆｌｏｏｒ（）、変換後の描画座標（以下、第２描画座標という）のＸ方向における位置をＸ２とした場合に、次式（１）により変換後の第２描画座標Ｘ２を算出する。
Ｘ２＝ｆｌｏｏｒ（Ｘ１）＋Ｗ／２・・・・・（１）
【００４４】
図６は、描画座標を変換した場合の補助線画像８５の状態を示している。例えば、補助線画像８５の変換前の第１描画座標Ｘ１＝３、幅がＷ＝１とした場合、変換後の第２描画座標Ｘ２は、３．５（＝ｆｌｏｏｒ（３）＋１／２）となる。その結果、図６に示すように、変換後の補助線画像８５Ｄは、Ｘ方向において＋０．５だけ移動し、Ｘ＝３．５をＸ方向の中心として、幅Ｗ＝１で描画される。換言すれば、補助線画像８５Ｄは、低解像度の表示画面８３（図５参照）における１ドットの幅Ｗ２の半分だけ、Ｘ座標のプラス方向へ移動する。Ｘ＝３．５をＸ方向の中心としたことで、補助線画像８５Ｄは、描画座標のＸ＝３〜４の間に収まって描画される。即ち、低解像度の表示画面８３（図５参照）において、物理座標のＸ＝３〜４の間のドットによって表示することが可能となる。ＯＳ３２は、上記した補助線画像８５の幅や色の補正が不要となる。
【００４５】
編集画面制御モジュール２７は、図４のＳ１７において第１描画座標の変換を実行すると、変換後の第２描画座標Ｘ２を設定した補助線画像８５の描画命令（第２描画命令の一例）を、画像データ作成モジュール２８に対して指示する（Ｓ１５）。画像データ作成モジュール２８は、補助線画像８５Ｄのラスター画像データをデバイスコンテキスト３５に描画する命令をＯＳ３２に行う。ＯＳ３２は、デバイスコンテキスト３５に描画したラスター画像データに基づいてＬＣＤ１６のドットを制御することで、デバイスコンテキスト３５に描画されたラスター画像データの画像、即ち、補助線画像８５ＤをＬＣＤ１６表示させる。これにより、図６に示す補助線画像８５Ｄが、ＬＣＤ１６に表示される。
【００４６】
また、本実施形態の編集画面制御モジュール２７は、補助線の描画に対して、一律にＳ１７の変換処理を実行する。図７は、別の描画例を示しており、補助線画像８５の変換前の第１描画座標Ｘ１＝３．５、幅Ｗ＝１の場合を示している。この場合、図７に示すように、変換前の補助線画像８５は、描画座標のＸ＝３．５を中心として、Ｘ＝３〜４の間に収まっている。このため、描画座標の変換は必要ない。しかしながら、変換後の第２描画座標Ｘ２も、３．５（＝ｆｌｏｏｒ（３．５）＋１／２）となる。即ち、仮にＳ１７の変換処理を実行したとしても、第１描画座標と第２描画座標のＸ座標の位置は同一となる。これにより、第１描画座標の変換の必要性を判断することなく、一律にＳ１７を実行することで、補助線の描画処理を高速に実行することが可能となる。
【００４７】
尚、編集画面制御モジュール２７は、補助線の全てについてＳ１７の変換処理を一律に実行しなくとも良い。例えば、編集画面制御モジュール２７は、描画イベントの発生にともなって命令を受け付けた補助線の第１描画座標を判断し、変換処理の要否を決定しても良い。即ち、第１描画座標と、ドットの位置がずれている場合のみ調整処理を実行しても良い。例えば、編集画面制御モジュール２７は、描画座標がＸ＝３．５を中心とした直線など、整数座標の中間、即ち、低解像度の表示画面８３（図５参照）のドットの中心に沿った直線である場合、Ｓ１７の変換処理を実行しなくとも良い。この場合、図７に示すような変換処理が必要ない補助線画像８５については、Ｓ１７の変換処理を実行せずに、描画処理（Ｓ１５）を実行できる。
【００４８】
また、図８は、別の描画例を示しており、補助線画像８５の変換前の第１描画座標Ｘ１＝３、幅Ｗ＝３の場合を示している。この場合、変換後の第２描画座標Ｘ２は、４．５（＝ｆｌｏｏｒ（３）＋３／２）となる。従って、図８に示すように、変換後の補助線画像８５Ｄは、Ｘ方向において＋１．５だけ移動し、Ｘ＝４．５をＸ方向の中心として、幅Ｗ＝３で描画される。Ｘ＝４．５をＸ方向の中心としたことで、補助線画像８５Ｄは、描画座標のＸ＝３〜６の間に収まって描画される。即ち、低解像度の表示画面８３（図５参照）において、物理座標のＸ＝３〜６の間のドットによって表示することが可能となる。
【００４９】
＜ビットマップフォントの表示作動について＞
上記した例では、Ｘ方向における描画座標の変換処理について説明したが、Ｙ方向における描画座標についても、同様の変換処理を実行することができる。以下の説明では、Ｘ方向及びＹ方向の２方向において、描画座標の変換処理を行う一例として、ビットマップフォントの描画座標の変換について説明する。ビットマップフォントとは、例えば、所定サイズの格子内に配置されたドットの集合として、文字の形状を保持するフォントのデータ形式である。
【００５０】
図９は、ビットマップフォントの描画座標を変換する描画例を示している。図９には、ビットマップフォントの画像の一例として、「Ｔ」の文字のフォント画像８９が図示されている。フォント画像８９は、２つの直線で構成されている。即ち、フォント画像８９には、Ｘ方向に沿った直線画像８９Ａと、Ｙ方向に沿った直線画像８９Ｂが含まれている。このため、編集画面制御モジュール２７は、例えば、２つの直線画像８９Ａ，８９Ｂの各々について、順番に描画座標を変換することで、Ｘ，Ｙの２方向の変換処理を実行する。
【００５１】
直線画像８９ＡのＸ方向における第１描画座標Ｘ１は、Ｘ１＝４となっている。Ｘ方向における幅Ｗｘは、Ｗｘ＝１となっている。また、直線画像８９ＡのＹ方向の下端は、Ｙ＝２．５の位置となっている。また、直線画像８９ＢのＹ方向における第１描画座標Ｙ１は、Ｙ１＝５となっている。Ｙ方向における幅Ｗｙは、Ｗｙ＝１となっている。また、直線画像８９ＢのＸ方向の左端は、Ｘ＝２．５となっている。
【００５２】
まず、編集画面制御モジュール２７は、例えば、Ｘ方向において変換処理を実行し、第２描画座標Ｘ２として、Ｘ＝４．５（＝ｆｌｏｏｒ（４）＋１／２）を設定する。編集画面制御モジュール２７は、直線画像８９Ａ，８９Ｂを含むフォント画像８９の全体を、Ｘ方向において＋０．５だけ移動させる。変換後の直線画像８９Ａは、第２描画座標Ｘ２＝４．５を中心として、Ｘ方向における幅Ｗｘ＝１で描画され、Ｘ＝４〜５の間に収まっている。また、変換後の直線画像８９Ｂの左端は、Ｘ＝３となっている。
【００５３】
次に、編集画面制御モジュール２７は、Ｙ方向において変換処理を実行し、第２描画座標Ｙ２として、Ｙ２＝５．５（＝ｆｌｏｏｒ（５）＋１／２）を設定する。編集画面制御モジュール２７は、直線画像８９Ａ，８９Ｂを含むフォント画像８９の全体を、Ｙ方向において＋０．５だけ移動させる。変換後の直線画像８９Ｂは、第２描画座標Ｙ２＝５．５を中心として、Ｙ方向における幅Ｗｙ＝１で描画され、Ｙ＝５〜６の間に収まっている。また、変換後の直線画像８９Ａの下端は、Ｙ＝３となっている。このように、編集画面制御モジュール２７は、Ｘ方向と同様にＹ方向においても描画座標の変換処理を実行することで、フォント画像８９の描画座標を、ＬＣＤ１６のドットの位置に一致させることが可能となる。
【００５４】
尚、Ｘ方向及びＹ方向の２方向において描画座標を変換する対象の画像は、ビットマップフォントに限らない。例えば、図３に示すオブジェクト枠６６のように４つの直線を用いた四角枠状の画像でもよい。この場合、オブジェクト枠６６の各辺の描画において、上記した変換処理を適用することで、描画座標とドットの位置を一致させることができる。また、補助線や「Ｔ」のビットマップフォントのように直線のみで構成される画像に限らず、その一部に直線を含む画像について、上記した変換処理を実行しても良い。
【００５５】
因みに、ＰＣ１０は、情報処理装置の一例である。ＬＣＤ１６は、ディスプレイの一例である。アプリケーションプログラム２６は、制御プログラムの一例である。編集画面制御モジュール２７は、取得手段、調整手段、入力手段、判断手段の一例である。Ｘ方向は、第１方向の一例である。Ｙ方向は、第２方向の一例である。幅Ｗ２は、１画素幅の一例である。
【００５６】
上記した実施形態によれば、以下の効果を奏する。
本実施形態の編集画面制御モジュール２７は、第１描画座標Ｘ１＝３を、第２描画座標Ｘ２＝３．５に調整する。第２描画座標は、調整後の第２描画命令に従って描画されたラスター画像データを対象にしてＯＳ３２が表示処理を実行した場合には、ラスター画像データを構成する複数の画素データのうちの第２描画命令に対応する補助線画像８５Ｄの画素データ（第２部分画素データの一例）によって、ＬＣＤ１６を構成する複数のディスプレイ画素のうち、第１数（１つ）のドットが制御される描画座標である。即ち、編集画面制御モジュール２７は、第１数（１）より多い第２数（２つ）のドットが制御されないように調整する。これにより、表示する画像データの第１描画座標を、ＬＣＤ１６のドットの位置に合わせた第２描画座標に調整し表示することができる。
【００５７】
＜実施例の効果＞
また、上記した実施形態によれば、以下の効果を奏する。
【００５８】
編集画面制御モジュール２７は、Ｘ方向に並ぶ２つのドットが、補助線画像８５Ｄの画素データによって制御されないように、第１描画座標Ｘ１を第２描画座標Ｘ２に調整する。これにより、Ｘ方向に並ぶ２つのドットが、補助線画像８５の１つの画素データによって制御されないように調整することができる。
【００５９】
また、図９に示すように、編集画面制御モジュール２７は、Ｘ方向及びＹ方向における描画領域の調整が可能である。これにより、Ｘ方向に直交するＹ方向に延設される直線の画像データの第１描画座標を、ＬＣＤ１６のドットの位置に合わせることができる。
【００６０】
また、編集画面制御モジュール２７は、図９に示すように、Ｘ方向に加え、Ｙ方向で隣り合う２つのドットの一方をフォント画像８９が含まないように、第１描画座標をずらした座標を第２描画座標として設定する。従って、第１描画座標を、Ｘ，Ｙの２方向においてＬＣＤ１６のドットの位置に合わせることができる。
【００６１】
また、編集画面制御モジュール２７は、Ｙ方向に沿った複数の直線を示す画像を描画する描画イベントが発生した場合に、複数の直線の各々を対象に、描画座標に調整する。これにより、例えば、図３に示すルーラ７１の目盛りのようにＹ方向に沿った複数の細い直線の各々について、第１描画座標を、ＬＣＤ１６のドットの位置に合わせることができる。
【００６２】
また、編集画面制御モジュール２７は、図９に示すビットマップフォントのフォント画像８９について、第１描画座標を、ＬＣＤ１６のドットの位置に合わせることができる。
【００６３】
また、編集画面制御モジュール２７は、図４のＳ１３において、描画する画像が補助線であると判断すると（Ｓ１３：ＹＥＳ）、指示された画像を描画する描画座標の変換を実行する（Ｓ１７）。従って、第１描画座標の調整が必要か否かを判断し、不要な調整処理の発生を抑制することができる。
【００６４】
デバイスコンテキスト３５の描画領域は、表示画面８２の１画素の大きさである幅Ｗ２（図５参照）に比べて小さい単位で第１描画座標を設定してラスター画像データの描画が可能である。このようなデバイスコンテキスト３５において、第１描画座標をＬＣＤ１６のドットの位置に合わせることは極めて有効である。
【００６５】
また、編集画面制御モジュール２７段は、補助線画像８５Ｄに含まれる１つの画素データによって、隣り合う２つのドットが制御される場合に、描画座標を調整しても良い。これにより、幅Ｗ２（幅Ｗ＝１）の直線が２つのドットに跨がる場合のみ調整処理を実行することで、不要な調整処理の発生を抑制することができる。
【００６６】
編集画面制御モジュール２７は、Ｓ１７において、１ドットの幅Ｗ２の半分の大きさだけ、第１描画座標をずらす。これにより、第１描画座標をドットの位置に合わせる処理の処理内容の簡易化を図り、調整処理をより高速に実行できる。
【００６７】
編集画面制御モジュール２７は、式（Ｘ２＝ｆｌｏｏｒ（Ｘ１）＋Ｗ／２）により第２描画座標を算出する。これにより、編集画面制御モジュール２７は、調整後の第２描画座標Ｘ２を、上記した式を用いて適切に算出できる。
【００６８】
編集画面制御モジュール２７は、補助線の画像を対象に描画座標を調整する。図３に示すルーラ７１、ガイド線６９、グリッド線６８など、様々な補助線は、例えば、見栄えや編集作業を阻害しないように、同一の太さで、且つ細い線を採用される場合がある。従って、このような補助線に対して第１描画座標の調整作業を実行することで、補助線の太さを統一するなど、編集画面６１を見易くすることができる。結果として、編集作業の効率を向上させることができる。
【００６９】
また、本発明は、上記実施形態に限定されるものではなく、当業者の知識に基づいて種々の変更、改良を施した種々の態様で実施することが可能である。
例えば、上記実施形態では、図４に示す描画処理を編集画面制御モジュール２７が実行したがこれに限らない。例えば、図４に示す描画処理の一部、又は全部を、画像データ作成モジュール２８等の他のプログラムにより実行しても良い。
また、上記実施形態における描画座標を変換する式（１）は、一例であり、適宜変更可能である。例えば、変換する式は、Ｘ２＝ｆｌｏｏｒ（Ｘ１）−Ｗ／２でもよい。
【００７０】
また、編集画面制御モジュール２７は、図４のＳ１３において、描画する画像が補助線であるか否かを判断したが、例えば、描画する画像がビットマップフォントであるか否かを判断しても良い。
また、編集画面制御モジュール２７は、Ｓ１３の判断処理を実行せず、描画イベントの発生にともなって命令を受け付けた画像について、一律に描画座標を調整する処理を実行しても良い。
【００７１】
また、本願における制御プログラムは、編集画面制御モジュール２７のみで構成されるプログラムでも良い。
また、上記実施形態では、ＣＰＵ１２によって描画処理が実行される例を説明したが、これに限らない。図４に示す描画処理を、ＣＰＵ１２に限らず、ＡＳＩＣや他の論理集積回路により実行しても良いし、ＣＰＵ等やＡＳＩＣ、他の論理集積回路を協働させて実行しても良い。
上記実施形態では、デバイスコンテキスト３５を、メモリの領域として記載したが、デバイスコンテキスト３５は、所定の処理を実行するプログラムを備えても良い。例えば、デバイスコンテキスト３５は、オブジェクト指向プログラミング言語におけるオブジェクト（クラス）でも良く、外部からの指示を受け付けるメソッドを備えても良い。
【符号の説明】
【００７２】
１４  メモリ、１６  ＬＣＤ、２６  アプリケーションプログラム、２７  編集画面制御モジュール、３２  ＯＳ、Ｘ１  第１描画座標、Ｘ２  第２描画座標、Ｙ１  第１描画座標、Ｙ２  第２描画座標。
【図１】
2019053225.tif 000003
【図２】
2019053225.tif 000004
【図３】
2019053225.tif 000005
【図４】
2019053225.tif 000006
【図５】
2019053225.tif 000007
【図６】
2019053225.tif 000008
【図７】
2019053225.tif 000009
【図８】
2019053225.tif 000010
【図９】
2019053225.tif 000011