(57)【要約】【課題】描画経路の全体長に係わらず、断続線を常に適切に描画するための技術を提供する。【解決手段】一点鎖線は、経路上のピッチが異なる２種類の印刷部分が存在する。その一点鎖線で直線を印刷する場合、一点鎖線のピッチの大きいほうの印刷部分である長線の終点側の終端が直線の終点と一致するように、一点鎖線の各構成要素のピッチを変更する。それにより、直線のような開経路では、一点鎖線のような非印刷部分（切れ目）が存在する断続線であっても、終点の位置を常に視認できるように印刷を行う。【選択図】図６
2012121200.tif 000002
【特許請求の範囲】
【請求項１】
描画すべき線の始点、及び終点、並びに該始点と該終点の間の描画経路を特定する描画内容特定手段と、
前記描画すべき線が、前記描画経路に沿って前記描画が行われる描画部分、及び該描画経路に沿って該描画が行われない非描画部分が予め定められた順序に従って配置され、それぞれ一つ以上の該描画部分、及び該非描画部分により１描画パターンが形成される断続線であった場合に、前記始点と前記終点の間の前記描画経路に沿った長さである全体長を特定する全体長特定手段と、
前記全体長特定手段が特定した全体長、前記描画部分の基準とする長さである第１の基準長、及び前記非描画部分の基準とする長さである第２の基準長を用いて、該描画部分に実際に設定すべき長さである第１の実際長、及び該非描画部分に実際に設定すべき長さである第２の実際長を算出して設定する設定手段と、
前記設定手段が設定した前記第１の実際長、及び前記第２の実際長を用いて、前記断続線を描画する描画手段と、
を具備することを特徴とする画像形成装置。
【請求項２】
前記始点と前記終点の位置が異なる場合、前記設定手段は、前記第１の実際長、及び前記第２の実際長の設定により、前記終点の位置に前記描画部分の該終点側の端を一致させる、
ことを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記始点と前記終点の位置が異なる場合、前記設定手段は、前記第１の実際長、及び前記第２の実際長の設定により、２つの前記描画パターンを少なくとも前記描画手段に描画させる、
ことを特徴とする請求項１、または２記載の画像形成装置。
【請求項４】
前記始点と前記終点の位置が同じ場合、前記設定手段は、前記第１の実際長、及び前記第２の実際長の設定により、前記終点の位置に前記非描画部分の該終点側の端を一致させる、
ことを特徴とする請求項１記載の画像形成装置。
【請求項５】
前記始点と前記終点の位置が同じ場合、前記設定手段は、前記第１の実際長、及び前記第２の実際長の設定により、３つの前記描画パターンを少なくとも前記描画手段に描画させる、
ことを特徴とする請求項１、または４記載の画像形成装置。
【請求項６】
コンピュータが、
描画すべき線の始点、及び終点、並びに該始点と該終点の間の描画経路を特定し、
前記描画すべき線が、前記描画経路に沿って前記描画が行われる描画部分、及び該描画経路に沿って該描画が行われない非描画部分が予め定められた順序に従って配置され、それぞれ一つ以上の該描画部分、及び該非描画部分により１描画パターンが形成される断続線であった場合に、前記始点と前記終点の間の前記描画経路に沿った長さである全体長を特定し、
前記特定した全体長、前記描画部分の基準とする長さである第１の基準長、及び前記非描画部分の基準とする長さである第２の基準長を用いて、該描画部分に実際に設定すべき長さである第１の実際長、及び該非描画部分に実際に設定すべき長さである第２の実際長を算出して設定し、
前記設定した前記第１の実際長、及び前記第２の実際長を用いて、前記断続線を描画する、
ことを特徴とする画像形成方法。
【請求項７】
コンピュータに、
描画すべき線の始点、及び終点、並びに該始点と該終点の間の描画経路を特定する描画内容特定機能と、
前記描画すべき線が、前記描画経路に沿って前記描画が行われる描画部分、及び該描画経路に沿って該描画が行われない非描画部分が予め定められた順序に従って配置され、それぞれ一つ以上の該描画部分、及び該非描画部分により１描画パターンが形成される断続線であった場合に、前記始点と前記終点の間の前記描画経路に沿った長さである全体長を特定する全体長特定機能と、
前記全体長特定機能により特定した全体長、前記描画部分の基準とする長さである第１の基準長、及び前記非描画部分の基準とする長さである第２の基準長を用いて、該描画部分に実際に設定すべき長さである第１の実際長、及び該非描画部分に実際に設定すべき長さである第２の実際長を算出して設定する設定機能と、
前記設定機能により設定した前記第１の実際長、及び前記第２の実際長を用いて、前記断続線を描画する描画機能と、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、点線、破線、一点鎖線等の描画が行われる描画部分、及び描画が行われない非描画部分が予め定められた順序に従って配置される断続線を描画（出力）するための技術に関する。
【背景技術】
【０００２】
現在、コンピュータに実行させるアプリケーション・ソフトウェア（以降「アプリケーション」と略記）の多くに線の描画機能が搭載されている。この描画機能により線を描画させる場合、ユーザは、線のスタイル（直線、曲線、図形、等）、線種（実線、点線、破線、一点鎖線、二点鎖線、等）、描画範囲指定、線の太さ指定、等を行うようになっている。
【０００３】
線のスタイルとして選択可能な図形は、比較的に描画される可能性の高い一般的な図形であるのが普通である。その多くは、四角形、円、楕円等の描画経路の始点と終点の位置が一致するもの（以降「閉経路図形」と総称）である。
【０００４】
線種として選択可能な点線、破線等は、描画経路と交差する交差方向に切れ目（非描画部分）の入った線（以降「断続線」と総称）である。点線、及び破線には、描画経路に沿って描画が行われる部分（描画部分）、及び切れ目の部分である非描画部分がそれぞれ１種類、存在し、描画部分、及び非描画部分が描画経路上、交互に配置される。それにより、１描画部分と、１非描画部分とで１描画パターンが形成され、この描画パターンが描画経路上、繰り返される。
【０００５】
一点鎖線は、非描画部分は１種類であるが、描画部分は経路方向上の長さ（ピッチ）の異なる２種類となっている。ピッチの大きいほうを第１の描画部分、ピッチの小さい方を第２の描画部分と表記すると、一点鎖線では、第１の描画部分→非描画部分→第２の描画部分→非描画部分、の順序で配置される２つの非描画部分、並びにそれぞれ１つの第１及び第２の描画部分により１描画パターンが形成される。ここでの順序は、始点側から終点側に向かう方向を想定してのものである。特に断らない限り、順序はこの方向を前提として表現する。
【０００６】
二点鎖線も一点鎖線と同様に、ピッチの異なる２種類の描画部分が存在する。１描画パターンは、第１の描画部分→非描画部分→第２の描画部分→非描画部分→第２の描画部分→非描画部分、により形成される。
【０００７】
描画範囲指定は、線のスタイルとして図形が選択された場合、例えばその図形を描画すべき位置の指定により行われる。線のスタイルとして直線、或いは曲線が選択された場合、始点、及び終点の指定により行われる。曲線では、例えば始点および終点の他に、線が通過する通過点が１つ以上、指定可能となっている。
【０００８】
図形は、多くの場合、大きさが変更可能である。それにより、図形を線で描画するうえでの描画経路は、指定された図形、及び指定された大きさに応じて特定される。直線の描画経路は、始点と終点の指定によって特定される。曲線の描画経路は、始点と終点、及び１つ以上の通過点によって特定される。
【０００９】
直線、及び曲線では、始点および終点としてそれぞれ指定される位置は異なる。それにより、直線、及び曲線の描画経路は、描画された線によって領域を分けない開経路となる。
描画経路に沿った線の描画は、始点から終点に向かって行われる。そのために閉経路図形では、その図形上の１点が始点、及び終点とされる。それにより、閉経路図形でも、直線、及び曲線（閉経路）と同様に描画される。
【００１０】
断続線では、描画部分、及び非描画部分の各ピッチは固定とされている。このため、断続線を描画する場合、描画経路の全体の長さ（全体長）によって、開経路では終点が非描画部分となって終点の位置が分からないものになる、閉経路では例えば始点に描画された描画部分と終点に描画された描画部分が重なって、不自然な描画となる、といった不適切な描画が行われるという問題点があった。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開平８−２６７８７６号公報
【特許文献２】特開平５−２５４２１６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
本発明は、描画経路の全体長に係わらず、断続線を常に適切に描画するための技術を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題は、本発明の請求項１の発明によれば、描画すべき線の始点、及び終点、並びに該始点と該終点の間の描画経路を特定する描画内容特定手段と、描画すべき線が、描画経路に沿って描画が行われる描画部分、及び該描画経路に沿って該描画が行われない非描画部分が予め定められた順序に従って配置され、それぞれ一つ以上の該描画部分、及び該非描画部分により１描画パターンが形成される断続線であった場合に、始点と終点の間の描画経路に沿った長さである全体長を特定する全体長特定手段と、全体長特定手段が特定した全体長、描画部分の基準とする長さである第１の基準長、及び非描画部分の基準とする長さである第２の基準長を用いて、該描画部分に実際に設定すべき長さである第１の実際長、及び該非描画部分に実際に設定すべき長さである第２の実際長を算出して設定する設定手段と、設定手段が設定した第１の実際長、及び第２の実際長を用いて、断続線を描画する描画手段と、を具備する画像形成装置を提供することによって達成できる。
【００１４】
上記課題は、始点と終点の位置が異なる場合、例えば請求項２に記載するように、上記設定手段は、第１の実際長、及び第２の実際長の設定により、終点の位置に描画部分の該終点側の端を一致させる、ことによって達成できる。この場合、設定手段は、例えば請求項３に記載するように、第１の実際長、及び第２の実際長の設定により、２つの描画パターンを少なくとも描画手段に描画させる、ことが望ましい。
【００１５】
上記課題は、始点と終点の位置が同じ場合、例えば請求項４に記載するように、設定手段は、第１の実際長、及び第２の実際長の設定により、終点の位置に非描画部分の該終点側の端を一致させる、ことによって達成できる。この場合、設定手段は、請求項５に記載するように、第１の実際長、及び第２の実際長の設定により、３つの描画パターンを少なくとも描画手段に描画させる、ことが望ましい。
【００１６】
上記課題は、本発明の請求項６の発明によれば、コンピュータが、描画すべき線の始点、及び終点、並びに該始点と該終点の間の描画経路を特定し、描画すべき線が、描画経路に沿って描画が行われる描画部分、及び該描画経路に沿って該描画が行われない非描画部分が予め定められた順序に従って配置され、それぞれ一つ以上の該描画部分、及び該非描画部分により１描画パターンが形成される断続線であった場合に、始点と終点の間の描画経路に沿った長さである全体長を特定し、特定した全体長、描画部分の基準とする長さである第１の基準長、及び非描画部分の基準とする長さである第２の基準長を用いて、該描画部分に実際に設定すべき長さである第１の実際長、及び該非描画部分に実際に設定すべき長さである第２の実際長を算出して設定し、設定した第１の実際長、及び第２の実際長を用いて、断続線を描画する、画像形成方法を提供することによって達成できる。
【００１７】
上記課題は、本発明の請求項７の発明によれば、コンピュータに、描画すべき線の始点、及び終点、並びに該始点と該終点の間の描画経路を特定する描画内容特定機能と、描画すべき線が、描画経路に沿って描画が行われる描画部分、及び該描画経路に沿って該描画が行われない非描画部分が予め定められた順序に従って配置され、それぞれ一つ以上の該描画部分、及び該非描画部分により１描画パターンが形成される断続線であった場合に、始点と終点の間の描画経路に沿った長さである全体長を特定する全体長特定機能と、全体長特定機能により特定した全体長、描画部分の基準とする長さである第１の基準長、及び非描画部分の基準とする長さである第２の基準長を用いて、該描画部分に実際に設定すべき長さである第１の実際長、及び該非描画部分に実際に設定すべき長さである第２の実際長を算出して設定する設定機能と、設定機能により設定した第１の実際長、及び第２の実際長を用いて、断続線を描画する描画機能と、を実現させるためのプログラムを提供することによって達成できる。
【発明の効果】
【００１８】
本発明では、断絶線の全体長に応じて、断絶線の描画部分、及び非描画部分の長さを調節し、その断絶線の描画（出力）を行う。このため、描画経路の全体長に係わらず、断続線を常に適切に描画することができる。
【図面の簡単な説明】
【００１９】
【図１】本実施形態による画像形成装置の回路構成を説明する図である。
【図２】本実施形態による画像形成装置を用いた構築された印刷システムの構成を説明する図である。
【図３】一点鎖線を説明する図である。
【図４】開経路の断続線例を説明する図である。
【図５】閉経路の断続線例を説明する図である。
【図６】開経路の断続線の描画方法を説明する図である。
【図７】閉経路の断続線の描画方法を説明する図である。
【図８】最小限数の印刷パターンによる印刷イメージ例を説明する図である。
【図９】断続線描画処理のフローチャートである。
【図１０】断続線描画処理のフローチャートである（続き１）。
【図１１】断続線描画処理のフローチャートである（続き２）。
【発明を実施するための形態】
【００２０】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
図１は、本実施形態による画像形成装置の回路構成を説明する図である。この画像形成装置１０は、記録紙に印刷を行うことにより、その記録紙上に画像を形成する印刷装置として実現されたものである。このことから以降「印刷装置」と表記する。
【００２１】
この印刷装置１０は、図２に表すように、パーソナルコンピュータ（ＰＣ）３０が接続されたネットワーク３１に接続して用いることが可能なものである。図２に表すようなシステム構成では、印刷装置１０はネットワーク３１を介してＰＣ３０から印刷データを受信し、印刷を行う。
【００２２】
その印刷データとしては、印刷イメージを表すビットマップデータの他に、その印刷イメージを指示するデータ（以降「言語データ」）を用いることができる。印刷装置１０は、この言語データを受信した場合、この言語データが指示する印刷イメージのビットマップデータを生成して印刷を行う。
【００２３】
印刷装置１０は、図１に表すように、ＣＰＵ１１、オペレーションパネル１２、ＲＯＭ（フラッシュメモリ）１３、ＥＥＰＲＯＭ１４、ＲＡＭ１５、プリンター制御ＬＳＩ１６、ネットワークインターフェイス（以下、「ネットワークＩ／Ｆ」と表記）１７、エンジン部１８、セントロインターフェイス（以下、「セントロＩ／Ｆ」と表記）１９、外部記憶装置インターフェイス（以下、「外部記憶装置Ｉ／Ｆ」と表記）２０、及び外部記憶装置２１を備えている。
【００２４】
オペレーションパネル１２は、特には図示していないが、各種キーを有する操作部と、表示パネルとを備えている。操作部は、ユーザのキー操作により、操作されたキー、その操作内容等をＣＰＵ１１に通知する。表示パネルは、ＣＰＵ１１から出力される表示制御信号（表示用の表示データを含む）に従った表示を行う。
【００２５】
ＲＯＭ１３は制御プログラムを記憶し、ＣＰＵ１１はこのプログラムを実行することにより、印刷装置１０全体の制御を行う。
ＥＥＰＲＯＭ１４は、電源オフ時に残すべきデータの保存に用いられる。例えば印刷装置１０が電子写真方式で記録紙上に画像形成を行う場合、そのデータとしては、不図示のトナーユニットの寿命をカウントするカウントデータ等がある。
【００２６】
エンジン部１８は、その電子写真方式で記録紙上に画像形成を行うものである。上記トナーユニットはこのエンジン部１８に含まれる。エンジン部１８は他に、記録紙を搬送する搬送ユニット、感光体上にトナー像を形成し、そのトナー像を記録紙上に転写する画像形成ユニット、記録紙上に転写されたトナー像を定着させる定着ユニット等を備える。
【００２７】
ＲＡＭ１５はＣＰＵ１１のワークに用いられる。受信した印刷データはＲＡＭ１５に確保された領域に格納される。その印刷データが言語データであった場合、その言語データが指示する印刷イメージのビットマップデータは、ＲＡＭ１５をワークに用いて生成される。
【００２８】
プリンター制御ＬＳＩ１６は、エンジン部１８を制御するＬＳＩである。ＣＰＵ１０は、例えばエンジン部１８の電源管理を行い、プリンター制御ＬＳＩ１６は、搬送ユニット、画像形成ユニット、定着ユニット等を制御して、記録紙上への印刷を実現させる。
【００２９】
ネットワークＩ／Ｆ（インターフェイス）１７は、ネットワーク３１に接続させるためのものである。そのネットワーク３１がＬＡＮであった場合には、例えばＬＡＮボードが相当する。
【００３０】
セントロＩ／Ｆ１９は、ホスト機器との間でローカル接続を行う場合のパラレルインターフェイスである。セントロＩ／Ｆ１９を介して印刷装置１０に直接接続されたパーソナルコンピュータ等のホスト機器から印刷データ等を受信する。
【００３１】
外部記憶装置インターフェイス２０は、外部記憶装置２１を接続するためのものである。その外部記憶装置２１は、例えばハードディスク装置（ＨＤＤ）等の大容量の記憶装置である。
【００３２】
以上の構成において、動作を説明する。
ＣＰＵ１０は、電源がオンされると、ＲＯＭ１３に格納されたプログラムをＲＡＭ１５に読み出して実行し、印刷装置１０全体の制御を開始する。それにより、ＣＰＵ１０は、オペレーションパネル１２へのユーザの操作、或いはネットワークＩ／Ｆ１７若しくはセントロＩ／Ｆ１９を介した印刷指示等に対応した処理を行う。
【００３３】
ネットワークＩ／Ｆ１７或いはセントロＩ／Ｆ１９を介して印刷指示を受け取った場合、ＣＰＵ１０は、印刷指示と併せて送信される印刷データをＲＡＭ１５に格納する。その印刷データがビットマップデータであれば、プリンター制御ＬＳＩ１６に出力し、ビットマップデータを用いた画像形成を行わせる。その印刷データが言語データであれば、ＲＡＭ１５を用いて言語データをビットマップデータに変換し、変換後のビットマップデータをプリンター制御ＬＳＩ１６に出力する。
【００３４】
言語データが指示可能な印刷イメージ（画像）として、線がある。その線として、経路に沿って印刷（描画）を行うべき印刷部分、及び印刷を行うべきでない非印刷部分が存在する断続線が指示可能である。そのような断続線を言語データが指示している場合、ＣＰＵ１０は、以下のようにして断続線用のビットマップデータを生成する。
【００３５】
ここでは、便宜的に、断続線としては図３に表す一点鎖線を想定する。この一点鎖線は、経路上の長さ（ピッチ）が異なる２種類の印刷部分４１及び４２、ピッチが同じ２つの非印刷部分４３を１印刷パターンの構成要素とする断続線である。以降、ピッチが大きい印刷部分４１は「長線」、ピッチが小さい印刷部分４２は「短線」とそれぞれ表記する。２つの非印刷部分４３については、以降「切れ目」と表記し、符号としては、１印刷パターンにおいて、長線４１及び短線４２に接するものには４３ａ、短線４２のみに接するものには４３ｂを用いる。図３中のａ〜ｃ及びＡはそれぞれ、長線４１のピッチ、切れ目４３のピッチ、短線４２のピッチ、１印刷パターンのピッチを表している。１印刷パターンのピッチＡは、ａ＋２ｂ＋ｃにより求められる長さである。
【００３６】
線を印刷する経路は、四角形や円等の線によって領域が分けられる、つまり線の両端が視認できない閉経路と、線の両端が視認可能な開経路とに大別される。図４は開経路の断続線例を説明する図であり、図４（ａ）は直線（一点鎖線による直線）、図４（ｂ）は曲線（一点鎖線による曲線）の例をそれぞれ表している。図５は閉経路の断続線例を説明する図であり、図５（ａ）は円（一点鎖線による円）、図５（ｂ）は楕円（一点鎖線による楕円）の例をそれぞれ表している。ここでは、説明上便宜的に、開経路として直線、閉経路（閉経路図形）として円のみを例にとって説明を行う。
【００３７】
始めに、直線（開経路）の一点鎖線の描画方法、つまりその一点鎖線のビットマップデータの生成方法について、図６を参照して具体的に説明する。図６において、６１は言語データから従来、生成される直線イメージ、６２及び６３は本実施形態で生成される直線イメージをそれぞれ表している。
【００３８】
言語データは、線の印刷イメージを指示するために、線のスタイル、線種、描画範囲、線の太さ、等を指定するデータを備えている。直線では、描画範囲は始点、及び終点により指定される。曲線では、描画範囲は始点、及び終点の他に、始点と終点の間の経路が指定される。
【００３９】
直線イメージ６１は、言語データが表す始点、及び終点の間を、始点から固定のピッチで長線４１、短線４２及び２つの切れ目４３（の各イメージ）を図３に表す順序で配置していくことで描画（生成）される。しかし、そのような描画方法では、終点に切れ目４３が配置される場合がある。終点に切れ目４３が配置される場合、直線の終点が視認できなくなる。このことから本実施形態では、直線イメージ６２及び６３から明らかなように、最後に配置する長線４１の終点側の端である終端を終点に一致させるようにしている。終点に長線４１の終端を一致させるようにしたのは、長線４１はピッチが最も大きい、つまり視認性が最も高く、それによって終点の視認も最も容易になるからである。なお、終点と一致させるのは短線４２の終端としても良い。
【００４０】
終点に長線４１の終端を一致させるのは、長線４１、短線４２及び２つの切れ目４３の各印刷イメージの拡大操作、或いは縮小操作により行っている。拡大操作、及び縮小操作からの選択は、言語データを参照して直線（開経路）の全体長を特定し、特定した全体長を１印刷イメージのピッチＡで割って得られる余りｎ（ｎ＜Ａ）を算出して行っている。それにより、余りｎがピッチａの値未満（ｎ＜ａ）であった場合、最後の長線４１の終端を終点に一致させるように拡大操作を行い、そうでない場合、つまり余りｎがピッチａの値以上（ｎ≧ａ）であった場合、長線４１を更に１つ追加し、追加した長線４２の終端を終点に一致させるように縮小操作を行うようにしている。このようなことから、縮小率、及び拡大率はそれぞれ以下のように算出している。
拡大率＝全体長／（全体長−ｎ−２ｂ−ｃ）      ・・・  （１）
縮小率＝全体長／（全体長＋Ａ−ｎ＋ａ）        ・・・  （２）
【００４１】
図６の直線イメージ６２は、上記のように算出される拡大率を用いた拡大操作により生成された例である。直線イメージ６３は、上記のように算出される縮小率を用いた縮小操作により生成された例である。
【００４２】
次に、円（閉経路図形）の一点鎖線の描画方法、つまりその一点鎖線のビットマップデータの生成方法について、図７を参照して具体的に説明する。図７において、７１は言語データから従来、生成される円イメージ、７２及び７３は本実施形態で生成される円イメージをそれぞれ表している。
【００４３】
言語データは、閉経路図形の印刷イメージを指示するために、閉経路図形の形状、大きさ（サイズ）、及び位置を指定するデータを備えている。終点、及び始点は、形状、及び大きさから特定される経路上から抽出された一点とされる。
【００４４】
円イメージ７１は、言語データから特定される閉経路上の一点から、固定のピッチで長線４１、短線４２及び２つの切れ目４３（の各イメージ）を図３に表す順序で配置していくことで生成される。図７中の７１ａは、始点、及び終点として抽出された点（以降「選択点」と表記）である。しかし、そのような生成方法では、選択点７１ａの間の繋がりが不自然になる場合がある。図７に表す円イメージ７１では、選択点７１ａの前後（左右）で長線４１が連続することにより、不自然なイメージとなっている。このことから本実施形態では、円イメージ７２及び７３から明らかなように、一点鎖線を構成する構成要素の並びが変化しないように、且つ各構成要素のなかでピッチが他と異ならないようにして、常に適切な円イメージを生成するようにしている。
【００４５】
構成要素の並びが変化しないように、且つ同じ構成要素のピッチを全て同じにさせるのは、閉経路と同様に、長線４１、短線４２及び２つの切れ目４３の各印刷イメージの拡大、或いは縮小操作により行っている。拡大操作、及び縮小操作からの選択は、円の全体長を１印刷イメージのピッチＡで割って得られる余りｎ（ｎ＜Ａ）を算出して行っている。それにより、余りｎがピッチａの値未満（ｎ＜ａ）であった場合、最後の長線４１を省き、その長線４１の前に位置する切れ目４３ｂの終端を選択点に一致させるように拡大操作を行い、そうでない場合、つまり余りｎがピッチａの値以上（ｎ≧ａ）であった場合、必要に応じて切れ目４３ｂ、短線４２、更には切れ目４３ａを追加し、切れ目４３ｂの終端を終点に一致させるように縮小操作を行うようにしている。このようなことから、縮小率、及び拡大率はそれぞれ以下のようにして算出される。
拡大率＝全体長／（全体長−ｎ）      ・・・  （３）
縮小率＝全体長／（全体長＋Ａ−ｎ）        ・・・  （４）
【００４６】
図７の直線イメージ７２は、上記のように算出される拡大率を用いた拡大操作により生成された例である。円イメージ７３は、上記のように算出される縮小率を用いた縮小操作により生成された例である。
【００４７】
縮小操作時における切れ目４３ｂ、短線４２、及び切れ目４３ａの追加は、余りｎがピッチａの値と等しければ２つの切れ目４３及び短線４２の全ての追加が行われる。余りｎがａ＜ｎ＜ａ＋ｂの間であれば、短線４２及び切れ目４３ｂの追加が行われる。余りｎがａ＋ｂ≦ｎ＜ａ＋ｂ＋ｃの間であれば、切れ目４３ｂのみ追加される。余りｎがａ＋ｂ＋ｃ≦ｎ＜ａ＋２ｂ＋ｃの間であれば、構成要素の追加は行われない。
【００４８】
上記のようにして、一点鎖線の印刷経路が閉経路および開経路の何れかであるかに応じて、一点鎖線の構成要素の並びが調整される。このため、ユーザが印刷（描画）された断続線を見て、視覚的に不適切と感じるようなことは確実に回避される。
【００４９】
ところで、印刷経路全体の長さである全体長が比較的に短い場合、指定した断続線の線種等により、その線種が視認し難くなることが考えられる。このことから本実施形態では、最低限、印刷すべき印刷パターンの数である最低限数を設けている。この最低限数以上の印刷パターンを印刷させることにより、線種が視認し難くなるのをより確実に抑えるようにしている。図８は、最小限数の印刷パターンによる印刷イメージ例を説明する図である。図８（ａ）は、閉経路（円）の場合の印刷イメージ例を表し、図８（ｂ）は開経路（直線）の場合の印刷イメージ例を表している。
【００５０】
図８（ａ）に表すように、本実施形態では、閉経路では最低減数は３、つまり３印刷パターン以上で閉経路の断続線を印刷するように設定している。開経路では、図８（ｂ）に表すように、最低減数は２、つまり２印刷パターン以上で開経路の断続線を印刷するように設定している。開経路では、最後に長線４１を配置するようにしていることから、図８（ｂ）から明らかなように、実際には２印刷パターンと１長線４１が少なくとも印刷されることとなる。
【００５１】
図８（ｂ）に表すような開経路における印刷イメージの生成は、縮小操作を用いて行っている。その縮小操作は、全体長が２Ａ＋ａ未満（全体長＜２Ａ＋ａ）であった場合に行う。その縮小操作に用いる縮小率は、以下のように算出する。
縮小率＝全体長／（２Ａ＋ａ）          ・・・  （５）
【００５２】
一方、図８（ａ）に表すような閉経路における印刷イメージの生成も、縮小操作を用いて行っている。その縮小操作は、全体長が３Ａ未満（全体長＜３Ａ）であった場合に行う。その縮小操作に用いる縮小率は、以下のように算出する。
縮小率＝全体長／（３Ａ）          ・・・  （６）
【００５３】
ＣＰＵ１０は、言語データにより印刷イメージが指示された場合、その言語データが印刷を指示する断続線毎に、その断続線の経路の種類、及び全体長を特定し、必要に応じて、図６〜図８の何れかに表すような拡大操作、或いは縮小操作を行い、断続線の印刷イメージのビットマップデータを生成する。生成した印刷イメージはＲＡＭ１５に随時、保存することにより、１ページ分の印刷イメージのビットマップデータを生成し、生成したビットマップデータをプリンター制御ＬＳＩ１６に出力することにより、１ページ分の印刷を行わせる。適切な状態に断続線が印刷された記録紙が印刷装置１０から排紙されることとなる。
【００５４】
なお、本実施形態では、基本となるビットマップデータに対して拡大操作、或いは縮小操作を行うようにしているが、そのような操作を行うことなく、断絶線のビットマップデータを生成するようにしても良い。つまり、図６〜図８のうちの何れかに表すように断絶線を出力できるのであれば、その断絶線のビットマップデータの生成方法は特に限定されるものではない。
【００５５】
図９〜図１１は、断続線描画処理のフローチャートである。この断続線描画処理は、受信した言語データが印刷を指示する１印刷イメージが断続線のものであった場合に、ＣＰＵ１０がその断続線のビットマップデータを生成するために実行する処理であり、ＲＯＭ１３に格納されたプログラムの実行により実現される。次に図９〜図１１を参照して、この断続線業が処理について詳細に説明する。ここでも便宜的に、断続線としては一点鎖線のみを想定する。
【００５６】
先ず、Ｓ１では、ＣＰＵ１０は断続線の始点と終点が一致する、つまり断続線の印刷経路が閉経路か否か判定する。その断続線が円、四角形等の閉経路のものであった場合、判定はＹＥＳとなって図１０のＳ９に移行する。そうでない場合、つまり断続線が直線、或いは曲線等の開経路のものであった場合、判定はＮＯとなってＳ２に移行する。
【００５７】
Ｓ２では、ＣＰＵ１０は、言語データを参照して、断続線の全体長を特定し、全体長が２Ａ＋ａ（図９中「Ａｘ２＋ａ」と表記）未満の長さか否か判定する。全体長が２Ａ＋ａ以上の長さであった場合、判定はＮＯとなってＳ３に移行する。全体長が２Ａ＋ａ未満の長さであった場合、判定はＹＥＳとなって図１１のＳ１６に移行する。
【００５８】
Ｓ１６では、例えば図８（ｂ）に表すように開経路に沿って一点鎖線を印刷するためのビットマップデータの生成を行う。そのために、一点鎖線の各構成要素４１〜４３のビットマップデータは、それぞれ、（５）式から算出される縮小率で縮小操作する。１断続線分のビットマップデータは、例えば各構成要素４１〜４３の操作後のビットマップデータを経路上の位置に対応するＲＡＭ１４の記憶領域に格納していくことで生成される。そのような生成を行った後、この断続線描画処理を終了する。
【００５９】
図９のＳ３では、ＣＰＵ１０は全体長を１印刷パターンのピッチＡで割ることにより、余りｎを算出する。次のＳ４では、ＣＰＵ１０は、余りｎが長線４１のピッチａの値以上か否か判定する。余りｎがピッチａの値以上であった場合、判定はＹＥＳとなってＳ７に移行する。余りｎがピッチａの値未満であった場合、判定はＮＯとなってＳ５に移行する。
Ｓ５では、ＣＰＵ１０は（１）式により拡大率を算出する。続くＳ６では、ＣＰＵ１０は、算出した拡大率を用いて、一点鎖線の各構成要素４１〜４３のビットマップデータの拡大操作を行い、例えば各構成要素４１〜４３の操作後のビットマップデータを経路上の位置に対応するＲＡＭ１４の記憶領域に格納する。そのようにして１断続線（例えば図６の直線イメージ６２のようなもの）分のビットマップデータを生成した後、この断続線描画処理を終了する。
【００６０】
Ｓ７では、ＣＰＵ１０は（２）式により縮小率を算出する。続くＳ８では、ＣＰＵ１０は、算出した縮小率を用いて、一点鎖線の各構成要素４１〜４３のビットマップデータの縮小操作を行い、例えば各構成要素４１〜４３の操作後のビットマップデータを経路上の位置に対応するＲＡＭ１４の記憶領域に格納する。そのようにして１断続線（例えば図６の直線イメージ６３のようなもの）分のビットマップデータを生成した後、この断続線描画処理を終了する。
【００６１】
このようにして、開経路の断続線のビットマップデータが生成され、ＲＡＭ１５に格納される。それにより、断続線が直線であれば、図６の直線イメージ６１のような印刷は回避され、直線イメージ６２或いは６３のような印刷が行われることとなる。全体長が短い場合には、図８（ｂ）に表すような直線が印刷されることとなる。
【００６２】
上記Ｓ１の判定がＹＥＳとなって移行する図１０のＳ９では、ＣＰＵ１０は、言語データを参照して、断続線の全体長を特定し、全体長が３Ａ（図１０中「Ａｘ３」と表記）未満の長さか否か判定する。全体長が３Ａ以上の長さであった場合、判定はＮＯとなってＳ１０に移行する。全体長が３Ａ未満の長さであった場合、判定はＹＥＳとなって図１１のＳ１７に移行する。
【００６３】
Ｓ１７では、例えば図８（ａ）に表すように開経路に沿って一点鎖線を印刷するためのビットマップデータの生成を行う。そのために、一点鎖線の各構成要素４１〜４３のビットマップデータは、それぞれ、（６）式から算出される縮小率で縮小操作する。１断線分のビットマップデータは、例えば各構成要素４１〜４３の操作後のビットマップデータを経路上の位置に対応するＲＡＭ１４の記憶領域に格納していくことで生成される。そのような生成を行った後、この断続線描画処理を終了する。
【００６４】
図１０のＳ１０では、ＣＰＵ１０は全体長を１印刷パターンのピッチＡで割ることにより、余りｎを算出する。次のＳ１１では、ＣＰＵ１０は、余りｎが長線４１のピッチａの値以上か否か判定する。余りｎがピッチａの値以上であった場合、判定はＹＥＳとなってＳ１４に移行する。余りｎがピッチａの値未満であった場合、判定はＮＯとなってＳ１２に移行する。
【００６５】
Ｓ１２では、ＣＰＵ１０は（３）式により拡大率を算出する。続くＳ１３では、ＣＰＵ１０は、算出した拡大率を用いて、一点鎖線の各構成要素４１〜４３のビットマップデータの拡大操作を行い、例えば各構成要素４１〜４３の操作後のビットマップデータを経路上の位置に対応するＲＡＭ１４の記憶領域に格納する。そのようにして１断続線（例えば図７の円直線イメージ７３のようなもの）分のビットマップデータを生成した後、この断続線描画処理を終了する。
【００６６】
Ｓ１４では、ＣＰＵ１０は（４）式により縮小率を算出する。続くＳ１５では、ＣＰＵ１０は、算出した縮小率を用いて、一点鎖線の各構成要素４１〜４３のビットマップデータの縮小操作を行い、例えば各構成要素４１〜４３の操作後のビットマップデータを経路上の位置に対応するＲＡＭ１４の記憶領域に格納する。そのようにして１断続線（例えば図７の円イメージ７２のようなもの）分のビットマップデータを生成した後、この断続線描画処理を終了する。
【００６７】
このようにして、閉経路の断続線のビットマップデータが生成され、ＲＡＭ１５に格納される。それにより、断続線が円を表すものであれば、図７の円イメージ７１のような印刷は回避され、円イメージ７２或いは７３のような印刷が行われることとなる。全体長が短い場合には、図８（ａ）に表すような直線が印刷されることとなる。
【００６８】
上記説明は、断絶線として一点鎖線を例にとって行っているが、他の線種、つまり点線、破線、に点鎖線等でも同様に断絶線のビットマップデータを作成すれば良い。例えば開経路の二点鎖線では、一点鎖線と同様に、ピッチの最も大きい長線の終端を終点に合わせるようにしても良い。或いは２つの短線のうちの一つの終端を終点に合わせるようにしても良い。
【００６９】
本実施形態では、印刷装置に本発明を適用しているが、適用する装置は印刷装置以外のものであっても良い。例えば表示装置上に形成した画像を出力できるもの、或いはその画像のデータを単に生成できるものであっても良い。このことから、実際に印刷を行うための印刷機能、或いは実際に画像を表示させる表示機能を搭載していないコンピュータ（データ処理装置）にも幅広く適用することができる。
【００７０】
本実施形態では、図９〜図１１に表す断続線描画処理を実行可能なプログラムをＲＯＭ１３に格納しているが、そのプログラム、或いはその一部は、光ディスク、ハードディスク装置、等に記録して配布しても良い。或いは、何らかのネットワークを介して配信しても良い。
【符号の説明】
【００７１】
１０    画像形成装置（印刷装置）
１１    ＣＰＵ
１３    ＲＯＭ
１５    ＲＡＭ
１６    プリンター制御ＬＳＩ
１７    ネットワークＩ／Ｆ
１８    エンジン部
１９    セントロＩ／Ｆ
【図１】
2012121200.tif 000003
【図２】
2012121200.tif 000004
【図４】
2012121200.tif 000005
【図５】
2012121200.tif 000006
【図９】
2012121200.tif 000007
【図１０】
2012121200.tif 000008
【図１１】
2012121200.tif 000009
【図３】
2012121200.tif 000010
【図６】
2012121200.tif 000011
【図７】
2012121200.tif 000012
【図８】
2012121200.tif 000013