(57)【要約】      （修正有）【課題】高画質な太線描画が可能で、メディアを損傷することのない情報処理装置等を提供する。【解決手段】線画の描画情報を生成する情報処理装置１００であって、線画を構成する一以上のストロークの形状情報を記憶する形状情報記憶手段と、形状情報記憶手段から、描画対象の線画の形状情報を取得する形状情報取得手段１０２と、線画の太さ情報を取得する太さ情報取得手段１０３と、太さ情報に応じた数の、ストロークと略平行な複数の平行ストロークを生成し、複数の平行ストローク間の間隔を、太さ情報に基づいて定めるストローク生成手段１０５と、第１のストロークの第１の平行ストローク、又は、第１のストロークと接続されている第２のストロークの第２の平行ストローク、の少なくとも一方の長さを、調整するストローク長さ調整手段１０６と、長さの調整された平行ストロークの形状情報を含む、描画情報を登録する描画情報生成手段１１３、を有する。【選択図】図１０
2010264691.tif 000002
【特許請求の範囲】
【請求項１】
発色する媒体に伝達位置を変えながらエネルギーを断続的に伝達することで描画される、線画の描画情報を生成する情報処理装置であって、
線画を構成する一以上のストロークの形状情報を記憶する形状情報記憶手段と、
前記形状情報記憶手段から、描画対象の線画の形状情報を取得する形状情報取得手段と、
線画の太さ情報を取得する太さ情報取得手段と、
前記太さ情報に応じた数の、前記ストロークと略平行な複数の平行ストロークを生成し、複数の平行ストローク間の間隔を、前記太さ情報に基づいて定めるストローク生成手段と、
第１のストロークの第１の平行ストローク、又は、第１のストロークと接続されている第２のストロークの第２の平行ストローク、の少なくとも一方の長さを、調整するストローク長さ調整手段と、
長さの調整された前記平行ストロークの形状情報を、描画対象の線画の描画情報に登録する描画情報生成手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記太さ情報と前記形状情報に基づき、太さを含めた描画範囲が互いに重なり合う対のストロークを検出する重複線分検出手段と、
接続された２つのストロークのなす角を算出し、なす角が所定値以上の対のストロークを検出する急角度線分検出手段と、
対のストロークの重複、又は、なす角が所定値以上の対のストロークの重複、が解消されるよう、対のストロークの少なくとも一方を、短縮又は分割する形状情報調整手段と、
を有することを特徴とする請求項１の情報処理装置。
【請求項３】
前記太さ情報と前記形状情報に基づき、太さを含めた描画範囲が互いに重なり合う対のストロークを検出する重複線分検出手段と、
接続された２つのストロークのなす角を算出し、なす角が所定値以上の対のストロークを検出する急角度線分検出手段と、
互いに重なり合う対のストローク、及び、なす角が所定値以上の対のストローク、の重複部分を描画する際、前記エネルギーの出力を低減する出力低減手段と、
を有することを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記ストローク生成手段は、前記平行ストロークを、元のストロークと平行、かつ、元のストロークと直交する方向の両側に同じ数ずつ配置する、
ことを特徴とする請求項１〜３いずれか１項記載の情報処理装置。
【請求項５】
前記平行ストロークを生成した後、元のストロークの形状情報を描画情報から除去するストローク除去手段、
を有することを特徴とする請求項１〜４いずれか１項記載の情報処理装置。
【請求項６】
前記ストローク除去手段は、
前記平行ストロークの数が偶数である場合にのみ、元のストロークの形状情報を描画情報から除去する、
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記ストローク除去手段は、
複数の前記平行ストロークのうち、元のストロークから最も遠い位置の、元のストロークの両側の前記平行ストロークのみを残し、残りの前記平行ストロークを描画情報から除去する、
ことを特徴とする請求項４記載の情報処理装置。
【請求項８】
複数のストロークの描画順を整理する描画順整理手段を有し、
前記描画順整理手段は、同じストロークから生成された複数の前記平行ストロークを、別のストロークから生成された前記平行ストロークを描画することなく、描画するよう描画順を決定する、
ことを特徴とする請求項１〜７いずれか１項記載の情報処理装置。
【請求項９】
複数のストロークの描画順を整理する描画順整理手段を有し、
前記第１の平行ストロークと前記第２の平行ストロークの端点が接続されている場合、
前記描画順整理手段は、前記第１の平行ストロークと前記第２の平行ストロークを１つのストローク群として扱い、
第１のストローク及び第２のストロークから生成された複数のストローク群を、第１及び第２以外のストロークから生成された前記平行ストロークを描画することなく、描画するよう描画順を決定する、
ことを特徴とする請求項１〜７いずれか１項記載の情報処理装置。
【請求項１０】
描画情報に基づき描画命令を生成する際、
直前のストロークの描画時間が所定値以下の場合、直前のストロークの描画後、次のストロークの描画までに待ち時間を挿入する描画命令生成手段、
を有することを特徴とする請求項８又は９項記載の情報処理装置。
【請求項１１】
直前のストローク群の描画時間が所定値以下の場合、
次のストローク群の描画の際、前記エネルギーの出力を低減する出力低減手段、
を有することを特徴とする請求項９記載の情報処理装置。
【請求項１２】
前記形状情報に曲線が含まれている場合、
該曲線を複数の直線で近似して直線の形状情報を生成する直線近似手段、
を有することを特徴とする請求項１〜１１いずれか１項記載の情報処理装置。
【請求項１３】
前記ストローク長さ調整手段は、
前記第１の平行ストロークと前記第２の平行ストロークの端点が一致するように、前記第１の平行ストローク又は第２の平行ストローク、の少なくとも一方の長さを調整する、
ことを特徴とする請求項１〜１１いずれか１項記載の情報処理装置。
【請求項１４】
請求項１〜１３いずれか１項記載の情報処理装置と、
レーザを照射するレーザ発振器と、
レーザの照射方向を変える方向制御ミラーと、
方向制御ミラーを駆動する方向制御モータと、
スポット径調整レンズと、
焦点距離調整レンズと、
を有することを特徴とするレーザ照射装置。
【請求項１５】
発色する媒体に伝達位置を変えながらエネルギーを断続的に伝達することで描画される、線画の描画情報を生成する描画情報生成方法であって、
形状情報取得手段が、線画を構成する一以上のストロークの形状情報を記憶する形状情報記憶手段から、描画対象の線画の形状情報を取得するステップと、
太さ情報取得手段が、線画の太さ情報を取得するステップと、
ストローク生成手段が、前記太さ情報に応じた数の、前記ストロークと略平行な複数の平行ストロークを生成し、複数の平行ストローク間の間隔を、前記太さ情報に基づいて定めるステップと、
ストローク長さ調整手段が、第１のストロークの第１の平行ストローク、又は、第１のストロークと接続されている第２のストロークの第２の平行ストローク、の少なくとも一方の長さを、調整するステップと、
描画情報生成手段が、長さの調整された前記平行ストロークの形状情報を、描画対象の線画の描画情報に登録するステップと、
を有することを特徴とする描画情報生成方法。
【請求項１６】
伝達位置を変えながらエネルギーを断続的に伝達して媒体を発色させる装置と、描画対象の線画の描画情報を生成する情報処理装置と、を有する制御システムであって、
前記情報処理装置は、
前記形状情報記憶手段から、描画対象の線画の形状情報を取得する形状情報取得手段と、
線画の太さ情報を取得する太さ情報取得手段と、
前記太さ情報に応じた数の、前記ストロークと略平行な複数の平行ストロークを生成し、複数の平行ストローク間の間隔を、前記太さ情報に基づいて定めるストローク生成手段と、
第１のストロークの第１の平行ストローク、又は、第１のストロークと接続されている第２のストロークの第２の平行ストローク、の少なくとも一方の長さを、調整するストローク長さ調整手段と、
長さの調整された前記平行ストロークの形状情報を、描画対象の線画の描画情報に登録する描画情報生成手段と、
描画情報から前記装置が解釈する描画命令を生成する描画命令生成手段と、を有し、
前記装置は、描画命令に基づき伝達位置を変えながらエネルギーを断続的に伝達して媒体を発色させる、
ることを特徴とする制御システム。
【請求項１７】
発色する媒体に伝達位置を変えながらエネルギーを断続的に伝達することで描画される、線画の描画情報を生成するプログラムであって、
コンピュータを、
線画を構成する一以上のストロークの形状情報を記憶する形状情報記憶手段から、描画対象の線画の形状情報を取得する形状情報取得手段と、
線画の太さ情報を取得する太さ情報取得手段と、
前記太さ情報に応じた数の、前記ストロークと略平行な複数の平行ストロークを生成し、複数の平行ストローク間の間隔を、前記太さ情報に基づいて定めるストローク生成手段と、
第１のストロークの第１の平行ストローク、又は、第１のストロークと接続されている第２のストロークの第２の平行ストローク、の少なくとも一方の長さを、調整するストローク長さ調整手段と、
長さの調整された前記平行ストロークの形状情報を、描画対象の線画の描画情報に登録する描画情報生成手段と、
として機能させることを特徴とするプログラム。
【請求項１８】
請求項１７記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【請求項１９】
請求項１〜１３いずれか１項記載の情報処理装置により生成された描画情報を記憶した描画情報記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字などの線画を非接触又は接触に描画する際の描画情報を生成する、情報処理装置、レーザ照射装置、描画情報生成方法、制御システム、プログラム、記憶媒体及び描画情報記憶装置に関する。
【背景技術】
【０００２】
物品のあて先や物品名を印字するラベルに感熱紙が用いられることがある。例えば、工場で使われるプラスチック製のコンテナにはこのような感熱型のラベルが貼付されている。感熱紙のラベルは、熱により発色する性質をもっており、熱ヘッド等を利用して文字や記号を書き込むことができる。
【０００３】
そして、このような感熱紙でも書き込み、消去を繰り返し行えるリライタブルタイプのものが登場してきた。物流で利用する際には、コンテナにラベルを貼ったまま書き込み、消去ができることが望ましいため、非接触でレーザ光をラベルに照射して発熱させることで文字等を描く方法が提案されている（例えば、特許文献１参照。）。特許文献１には、フレキシブルジョイントにより構成された複数のレンズ系の一端から入射したレーザ光による画像を他端まで伝達するリレーレンズ系が記載されている。
【０００４】
なお、レーザによる画像形成は従来から知られており（例えば、特許文献２参照。）、特許文献２には、１つの原画像データを複数のラインに分割して、ライン毎に感光ドラムにレーザを照射する画像形成方法が記載されている。
【０００５】
ところで、一般にレーザ光のビーム径は細くても0.3mm程度であり、比較的太いため、レーザによる文字等の描画では、ストロークフォントが用いられることが多い。すなわち、一般的に文字等の描画に用いられるアウトラインフォントのように、輪郭を決定し輪郭内を塗りつぶす作業が不要である。ストロークフォントは文字の芯線データで定義された座標に応じてレーザを走査すれば、鉛筆で文字を描く如くに文字を描画できる。また、一筆が複数の線分の連続から成ることも多く、この場合は、折れ線をなぞるように互いに接続した線分を連続的に描画していくことになる。
【０００６】
一方、レーザ光とストロークフォントを用いて、感熱紙に太い線を描きたい場合がある。太い線とはレーザ光のビーム径で決まる線幅よりも太い線で、文字を強調したり、バーコードを描く場合に有効である。太い文字を描くには大きく３つの手法が知られている。
（１）アウトラインフォントデータや、ストロークフォントデータを利用して輪郭線データを取得する。そして、この輪郭線を描画し、内部をラスタースキャンにより塗りつぶす方法（例えば、特許文献３参照。）。
（２）ストロークに直交する法線ベクトルをストロークデータ上に隙間なく発生させ、この法線ベクトルデータを描画することにより太線を描く方法（例えば、特許文献４〜６参照。）。
（３）元のストロークに平行な別のストロークをすき間なく発生させ、これら複数のストロークを１本の線とみなして太線を描く方法（例えば、特許文献７参照。）。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、（１）の方法は、ビーム径が太い場合にはかなり大きな文字でないと太線が描画できない。例えば0.3mmのビーム径で5mm角程度の文字を描こうとする場合には文字が潰れるなどの不都合が発生するため適さない。
【０００８】
また、（２）の方法も同様で、生成されたストロークのエッジ部分が凸凹になってしまう。図１は、（２）の方法で描画した１本のストロークの一例を示す。レーザ光のビーム径が円形に近いのでストロークに直交する複数の法線の端点により、外郭に凸凹が生じる。
【０００９】
（３）の方法には、（１）（２）のような欠点はない。しかしながら、引用文献７に記載されているように、元のストロークに平行な別のストロークをすき間なく発生させるだけでは、折れ線のある文字に適用できないという問題がある。
図２は引用文献７の方法の問題を説明する図である。図２（ａ）は太線のストロークの一例を、図２（ｂ）はストロークをレーザ光で描画した場合の描画例を、それぞれ示す。図２（ａ）では、元のストロークを上下に平行移動して、折れ線部を挟んでそれぞれ３本のストロークが生成されている。
【００１０】
しかし、単に元のストロークを平行移動すると、折れ線部の内側はストロークが長すぎ、外側は短すぎることになる。このため、折れ線部の内側のストロークは重複が生じており、折れ線部の外側のストロークは断絶が生じている。図２（ｂ）の描画結果では、内側ではレーザ光の重複による熱負荷がかかり、外側では文字の一部が欠けて画質が低下するという問題がある。
【００１１】
また、文字は交差したりストロークが急角度で折れ曲がったりすることも多々ある。このような場合、交差部分には重複してレーザ光が照射されるために過度な熱負荷が加わる。また、急角度での折れ線部は、装置の慣性によりマーキング速度が一時的に低下するため、長い時間レーザ光が照射されることになり、やはり過熱する。
図３は、２本のストロークで描画された「ヌ」という文字を示す。このような文字の急角度な折れ線部２２０と交差部２１０には過度な熱負荷が加わってしまう。
【００１２】
また、レーザ光による描画では、ビーム径の影響を考慮する必要がある。
図４は、２本のストロークで描画された「イ」という文字を示す。図４（ａ）は、ビーム径が充分に細い場合であるので、描画された２つのストロークが重複することはない。しかし、ビーム径がある程度大きくなると、２つのストロークの接近部において重複部２３０が発生し、重複部に過度な熱負荷が加わってしまう。
【００１３】
本発明は、上記課題に鑑み、描きたい図形や文字のサイズに比べてビーム径が比較的太い場合でも、高画質な太線描画が可能で、メディアを損傷することのない情報処理装置、レーザ照射装置、描画情報生成方法、制御システム、プログラム、記憶媒体及び描画情報記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記課題に鑑み、本発明は、発色する媒体に伝達位置を変えながらエネルギーを断続的に伝達することで描画される、線画の描画情報を生成する情報処理装置であって、線画を構成する一以上のストロークの形状情報を記憶する形状情報記憶手段と、形状情報記憶手段から、描画対象の線画の形状情報を取得する形状情報取得手段と、線画の太さ情報を取得する太さ情報取得手段と、太さ情報に応じた数の、ストロークと略平行な複数の平行ストロークを生成し、複数の平行ストローク間の間隔を、太さ情報に基づいて定めるストローク生成手段と、第１のストロークの第１の平行ストローク、又は、第１のストロークと接続されている第２のストロークの第２の平行ストローク、の少なくとも一方の長さを、調整するストローク長さ調整手段と、長さの調整された平行ストロークの形状情報を含む、描画対象の線画の描画情報を生成する描画情報生成手段と、を有することを特徴とする。
【発明の効果】
【００１５】
描きたい図形や文字のサイズに比べてビーム径が比較的太い場合でも、高画質な太線描画が可能で、メディアを損傷することのない情報処理装置、レーザ照射装置、描画情報生成方法、制御システム、プログラム、記憶媒体及び描画情報記憶装置を提供することができる。
【図面の簡単な説明】
【００１６】
【図１】従来の方法で描画した１本のストロークの一例を示す図である。
【図２】従来の方法の問題を説明する図である。
【図３】２本のストロークで描画された際の問題を説明するための図である。
【図４】２本のストロークで描画された際の問題を説明するための図である。
【図５】レーザ照射装置のハードウェア構成図の一例である。
【図６】全体制御装置のハードウェア構成図の一例である。
【図７】従来のレーザ照射装置の機能ブロック図の一例である。
【図８】従来のレーザ照射装置によるストロークフォントの描画手順を示すフローチャート図の一例である。
【図９】フォントデータ、描画命令の一例を示す図である。
【図１０】レーザ照射装置の機能ブロック図の一例である。
【図１１】レーザ照射装置がストロークフォントの文字を描画する手順を示すフローチャート図の一例である。
【図１２】ストロークの本数の決定方法を説明する図の一例である。
【図１３】描画する合計のストロークの本数が奇数の場合において、各ストロークの位置の決定を説明する図の一例である。
【図１４】描画する合計のストロークの本数が偶数の場合において、各ストロークの位置の決定を説明する図の一例である。
【図１５】平行ストロークの座標の決定を模式的に説明する図の一例である。
【図１６】折れ曲がりの不都合を説明する図の一例である。
【図１７】重複ストローク算出手段の機能をより詳細に説明する図の一例である。
【図１８】ストローク同士の最短距離の検出を模式的に説明する図の一例である。
【図１９】太文字の場合の交点を模式的に示す図の一例である。
【図２０】ステップＳ９０の重複ストロークの算出処理の手順を、詳細に説明するフローチャート図の一例である。
【図２１】円形状の文字から生成されるストロークを模式的に示す図の一例である。
【図２２】分割・短縮されるストロークを模式的に説明する図の一例である。
【図２３】分割・短縮されるストロークの別の例を模式的に説明する図の一例である。
【図２４】太文字の短縮を模式的に説明する図の一例である。
【図２５】分割・短縮した場合としない場合のストロークの例を模式的に説明する図の一例である。
【図２６】ストローク群グループの描画順を説明する図の一例である。
【図２７】グループ化まで完了した文字「Ｂ」の各ストロークと描画結果の一例を示す。
【図２８】ストローク群の描画順の決定を模式的に説明する図の一例である。
【図２９】重複が排除された文字の描画例とその描画命令の一例を示す図である。
【図３０】太文字の描画命令の生成を模式的に示す図の一例である。
【図３１】太文字の描画例を示す図である。
【図３２】内部が塗りつぶされた太文字と、内部が塗りつぶされていない太文字を示す図の一例である。
【図３３】レーザ照射システムのハードウェア構成図の一例である（実施例２）。
【図３４】レーザ照射システムの機能ブロック図の一例である（実施例２）。
【図３５】描画命令生成用ＰＣのハードウェア構成図の一例である。
【図３６】準備処理の手順を示すフローチャート図の一例である（実施例３）。
【図３７】最適化フォントデータを生成するフォントデータ生成装置の機能ブロック図の一例である。
【図３８】最適化フォントデータの生成手順を示すフローチャート図の一例である。
【発明を実施するための形態】
【００１７】
以下、本発明を実施するための形態について図面を参照しながら説明する。
本実施形態のレーザ照射装置により描画について概略を説明する。
Ａ．ストロークフォントのフォントデータを使用する
これにより、小さな文字でもストロークフォントならレーザ光により描画できる
Ｂ．太字を描画する場合、ストロークに平行な新たなストロークを発生させる
これにより、太い文字を描画しても外郭が凸凹することを防止できる
Ｃ．太くする前の元のストロークが折れ線部を有する場合、新たに生成したストローク同士が連続するように、新たに生成したストロークの長さを調整する
これにより、重複部においてサーマルリライタブルメディア（又は、リライタブルメディアでもよい）の過熱を防止すると共に、文字の美観を維持することができる。
Ｄ．１つのストロークが急角度で折れ曲がっている場合には、折れ線部分でストロークを分割する、又は、折れ線部で照射パワーを低下させる
これにより、折れ線部でサーマルリライタブルメディアが過熱することを防止できる
Ｅ．ストローク同士が交差している場合には、交差部でストロークを分割する、又は、照射パワーを低下させる
これにより、交差部でサーマルリライタブルメディアが過熱することを防止できる
なお、以下では、遍（へん）や旁（つくり）、又は、更にその一部など文字の一部を区別せずに文字という。また、ストロークフォントのフォントデータによる文字の一画をストロークという。したがって、文字は１以上のストロークから構成される。また、文字には、数字や「！、＄、％、＆、？」等の記号が含まれ、絵文字や顔文字を含む。
【００１８】
また、本実施形態において、ストロークは、１対の始点と終点を有する直線又は曲線であるとする。終点と、次のストロークの始点が一致するか否かは問わない。また、ストロークは、レーザ光による描画に好適となるよう分割されたり、曲線を直線化する等の処理が施され、１つのストロークが複数のストロークになることがある。この場合、１対の始点と終点を有する、複数のストロークはそれぞれが１つのストロークである。
【００１９】
ストロークフォントのフォントデータは、レーザ照射装置２００による文字の描画に予め最適化されてものであってもよいし、公的機関（例えば、日本規格協会、ISO等）等が定めるものを利用してもよい。
【００２０】
また、以下では、交差、重複、折り返しを区別しない場合、単に文字やストロークの重複と表現する。
【実施例１】
【００２１】
図５は、本実施例のレーザ照射装置２００のハードウェア構成図の一例を示す。レーザ照射装置２００は、全体を制御する全体制御装置１００と、レーザを照射するレーザ照射部１６０とを有する。また、レーザ照射部１６０は、レーザを照射するレーザ発振器１１と、レーザの照射方向を変える方向制御ミラー１３と、方向制御ミラー１３を駆動する方向制御モータ１２と、スポット径調整レンズ１４と、焦点距離調整レンズ１５と、を有する。
【００２２】
レーザ発振器１１は、半導体レーザ（ＬＤ（Laser  Diode））であるが、気体レーザ、固体レーザ、液体レーザ等でもよい。方向制御モータ１２は、方向制御ミラー１３の反射面の向きを２軸に制御する例えばサーボモータである。方向制御モータ１２と方向制御ミラー１３とによりガルバノミラーを構成する。スポット径調整レンズ１４は、レーザ光のスポット径を大きくするレンズであり、焦点距離調整レンズ１５はレーザ光を収束させて焦点距離を調整するレンズである。
【００２３】
また、サーマルリライタブルメディア２０は、例えばロイコ染料と顕色剤が分離した状態で膜を形成し、そこに所定温度Ｔaの熱を加え急冷することでロイコ染料と顕色在が結合して発色し、所定温度Ｔaよりも低い所定温度Ｔbを加えるとロイコ染料と顕色剤が分離した状態に戻ることで消色するメディア、例えば書き換え可能な感熱タイプの紙である。本実施形態では、このような書き換え可能なサーマルリライタブルメディア２０の劣化抑制を可能とするが、サーマルペーパのように書き換えが可能でないメディアに対しても好適に適用できる。
【００２４】
レーザ発振器１１で発生したレーザ光は、スポット径調整レンズ１４を通過してスポット径が拡大される。そして、ガルバノミラーにより文字の形状に応じた方向に進行方向が調整された後、焦点距離調整レンズ１５により所定の焦点距離に集光され、サーマルリライタブルメディア２０に照射される。レーザ光が照射されるとサーマルリライタブルメディア２０が熱を持ち、その熱で発色して文字などを描画できることになる。なお、消去パワーは抑制されている。
【００２５】
照射位置の調整は、全体制御装置１００が方向制御モータ１２を駆動して方向制御ミラー１３を動かすことで行う。レーザのＯＮ、ＯＦＦやパワーは全体制御装置１００がレーザ発振器１１を制御して行う。パワーの制御や焦点距離調整レンズ１５の位置を制御することで、描画するストローク幅を変化させることもできる。
【００２６】
図６は、全体制御装置１００のハードウェア構成図の一例を示す。図６は、主にソフトウェアによって全体制御装置１００を実装する場合のハードウェア構成図であり、コンピュータを実体としている。コンピュータを実体とせず全体制御措置１００を実現する場合、ＡＳＩＣ（（Application Specific Integrated Circuit））等の特定機能向けに生成されたＩＣを利用する。
【００２７】
全体制御装置１００は、ＣＰＵ３１、メモリ３２、ハードディスク３５、入力装置３６、ＣＤ−ＲＯＭドライブ３３、ディスプレイ３７及びネットワーク装置３４を有する。ハードディスク３５には、ストロークフォントの一連の文字のフォントデータを記憶するフォントデータＤＢ４１、フォントデータから重複を排除した描画命令を生成しレーザ照射部１６０を制御する文字描画プログラム４２が記憶されている。
【００２８】
ＣＰＵ３１は、ハードディスク３５から文字描画プログラム４２を読み出し実行し、後述する手順で、描画命令を生成する。メモリ３２は、ＤＲＡＭなどの揮発性メモリで、ＣＰＵ３１が文字描画プログラム４２を実行する際の作業エリアとなる。入力装置３６は、マウスやキーボードなどレーザ照射部１６０を制御する指示をユーザが入力するための装置である。ディスプレイ３７は、例えば文字描画プログラム４２が指示する画面情報に基づき所定の解像度や色数で、ＧＵＩ（Graphical User Interface）画面を表示するユーザインターフェイスとなる。例えば、サーマルリライタブルメディア２０に描画する文字の入力欄が表示される。
【００２９】
ＣＤ−ＲＯＭドライブ３３は、ＣＤ-ＲＯＭ３８を脱着可能に構成され、ＣＤ−ＲＯＭ３８からデータを読み出し、また、記録可能な記録媒体にデータを書き込む際に利用される。文字描画プログラム４２及びフォントデータＤＢ４１は、ＣＤ-ＲＯＭ３８に記憶された状態で配布され、ＣＤ-ＲＯＭ３８から読み出されハードディスク３５にインストールされる。ＣＤ−ＲＯＭ３８は、この他、ＤＶＤ、ブルーレイディスク、ＳＤカード、メモリースティック（登録商標）、マルチメディアカード、ｘＤカード等、不揮発性のメモリで代用することができる。
【００３０】
ネットワーク装置３４は、ＬＡＮやインターネットなどのネットワークに接続するためのインターフェイス（例えばイーサネット（登録商標）カード）であり、OSI基本参照モデルの物理層、データリンク層に規定されたプロトコルに従う処理を実行して、レーザ照射部１６０に文字コードに応じた描画命令を送信することを可能とする。文字描画プログラム４２及びフォントデータＤＢ４１は、ネットワークを介して接続した所定のサーバからダウンロードすることができる。なお、ネットワーク経由でなく、ＵＳＢ（Universal Serial Bus）、ＩＥＥＥ１３９４、ワイヤレスＵＳＢ、Ｂｌｕｅｔｏｏｔｈ等で直接、全体制御装置１００とレーザ照射部１６０を接続してもよい。
【００３１】
サーマルリライタブルメディア２０に描画される描画対象の文字は、例えばリスト状にハードディスク３５に記憶されているか、入力装置３６から入力される。文字は、ＵＮＩＣＯＤＥやＪＩＳコードなどの文字コードで特定され、全体制御装置１００は文字コードに対応する文字のフォントデータをフォントデータＤＢ４１から読み出し、それを描画命令に変換することでレーザ照射部１６０を制御する。
【００３２】
〔従来の描画〕
まず従来の、レーザによるストロークフォントの描画について説明する。図７は、従来の、レーザ照射装置２００の機能ブロック図の一例を、図８はレーザ照射装置２００によるストロークフォントの描画手順を示すフローチャート図の一例をそれぞれ示す。
【００３３】
まず、対象文字コード取得手段１０１は、描画対象の文字の文字コードを取得する（Ｓ１０００）。描画対象の文字の文字コードは、入力装置３６から入力される場合と、予めハードディスク３５に記憶されている場合（ネットワーク経由で入力される場合を含む）とがある。入力装置３６から入力される場合はキーボードのキーを押下することで入力されるキーコードに対応した文字コード、又は、ＩＭＥ（Input Method Editor）が起動している場合にキーコードからＩＭＥが変換した文字コードが対象文字コード取得手段１０１に入力される。また、ハードディスク３５に予め記憶されている場合、例えば宛先などの文字列がリスト状に記憶されているので、文字列の文字を指定する文字コードが読み出され、対象文字コード取得手段１０１に入力される。
【００３４】
ついで、フォントデータ取得手段１０２は、文字コードに基づきフォントデータＤＢ４１を参照し、文字コードに対応づけられたフォントデータを読み出す（Ｓ２０００）。
【００３５】
図９（ａ）はフォントデータの一例を示す。図９（ａ）のフォントデータは「１」という文字のフォントデータであり、ストローク（直線又は曲線のいずれでもよい）で定義される文字の一例である。フォントデータはストロークの端点の座標、及び、描画順を有する。この座標は、文字をビットマップに配置した場合のビットマップの所定画素を原点に指定されている。
【００３６】
ストロークフォントをレーザなどで描画する場合、座標だけではレーザを照射しながら移動するのか、レーザを照射しないで移動するのかを判別できない。このため、ストロークフォントのフォントデータには、レーザの描画開始位置（人間が書くとすると筆をおろす位置）と移動命令、レーザの描画終了位置（人間が書くとすると筆を上げる位置）と移動命令が含まれている。図９（ａ）では、「ｍ」がレーザの描画開始位置と次の座標までの移動命令を、「ｄ」が描画終了位置と次の座標までの移動命令をそれぞれ示す。したがって、「ｍ」は筆をおろして移動すること、「ｄ」は筆を上げて移動すること、を意味する。このように、フォントデータは、座標による文字の形状、描画の順番、描画の方向（図では矢印を有する線分）を規定し、「ｍ」「ｄ」によりレーザ照射の有無を規定する。
【００３７】
したがって、図示するフォントデータの場合、座標（２４，２４）から座標（８８、２４）までストロークが描かれ、座標（８８，２４）から座標（５６、２４）まではストロークを描かずに移動し、座標（５６、２４）から座標（５６、２２４）までストロークが描かれ、座標（５６、２２４）から座標（２４、１７６）までストロークが描かれる。
【００３８】
ストロークフォントは、アウトラインフォントと同様にスケーラブルフォントの一種なので、例えばサーマルリライタブルメディア２０に描画する際の文字の大きさを指定できるようになっている。ストロークフォントの文字の大きさの調整方法はいくつか知られているが、ここでは説明のため単にフォントデータの座標をそれぞれ２倍にした。例えば文字の中心からの距離に応じてストロークの座標を調整してもよい。
【００３９】
図９（ｂ）は２倍された各ストロークの座標の一例を示す。後述するように本実施形態では、この描画されるストロークの座標と文字の太さから、重複の有無を判定する。「１」のように３本の直線で描画される文字の場合、ストロークの座標は３対となる。[  ]で囲まれた数字は描画の順番であり、続く４つの数字のうち最初の２点はストロークの始点を、後ろの２点はストロークの終点を表す。描画の順番は、後に最適化されるので、図９（ｂ）では、フォントデータにおける登録順をそのまま採用している。
【００４０】
図９（ｃ）は、レーザ用フォントデータにより描画された文字の一例を示す。線分９１〜９３がレーザ光の中心が通過した軌跡に対応し、矢印の向きが描画の方向を示す。矢印を囲む領域は、レーザ光によって描かれた（発色した）部分であり、矢印を囲む領域の幅が文字の太さである。また、文字中に記された数字は、各線分９１〜９３の描画の順番である。レーザのパワーや焦点距離調整レンズ１５の焦点位置に応じてえられた太さの文字「１」が描画されている。
【００４１】
次いで、図８に戻り、太さ情報取得手段１０３はフォントデータの太さの情報を取得する（Ｓ３０００）。太さの情報は、フォントデータＤＢ４１に登録されているか、ユーザが入力装置３６から入力する。文字の太さはレーザがサーマルリライタブルメディア２０に照射される際の径に依存するので、太さの情報によりレーザ発振器１１の出力や焦点距離調整レンズ１５が制御される。
【００４２】
〔本実施形態の描画〕
続いて、本実施形態の文字の描画について説明する。
図１０は、本実施例のレーザ照射装置の機能ブロック図の一例を示す。各ブロックをソフトウェアで実現する場合、各ブロックはＣＰＵ３１が文字描画プログラム４２を実行することで実現される。
【００４３】
図１１は、本実施例の全体制御装置１００がストロークフォントのレーザによる描画に最適なフォントデータを生成する手順を示すフローチャート図の一例である。以下、図１１に基づいて、順番に説明する。
【００４４】
＜Ｓ１０〜Ｓ３０＞
ステップＳ１０〜Ｓ３０までの処理は、図７〜図９を用いて説明したので省略する。
【００４５】
＜Ｓ４０：文字属性情報の取得＞
文字属性取得手段１０４は、描画対象となっている文字の文字属性情報を取得する。ここでいう文字属性とは、通常の太さの文字か、太文字かの属性である。後述するような袋文字、斜体、白抜き文字などを文字属性に含めてもよい。文字属性は、文字毎に指定可能であり、ユーザが入力装置３６から入力することで指定される。文字属性が太文字の場合、さらに太文字太さ指定情報をユーザが入力装置３６から入力してもよいし、太文字の場合の文字の太さ（太文字太さ指定情報）を予め定めておいてもよい。
【００４６】
なお、ステップＳ３０の文字の太さはレーザ光のビーム径を指定するものであり、文字属性が通常の太さの文字である場合は、ステップＳ３０で指示された文字の太さで描画対象の文字が描画される。
【００４７】
＜Ｓ５０のＹｅｓ＞
文字属性が太文字であった場合、ステップＳ６０〜Ｓ８０の処理が実行される。
【００４８】
＜Ｓ６０＞
まず、平行ストローク発生手段１０５は、図９（ｂ）のような元のストロークに平行な、平行ストロークを発生させる。具体的には以下のようにして平行ストロークを求める。
【００４９】
平行ストローク発生手段１０５は、太文字太さ指定情報に指示されている太さに従って、描画すべきストロークの本数を決める。ここでは太文字太さ指定情報として、描画すべき本数が与えられているものとする。元のストロークが１本あるが、後に除去するので「太文字太さ指定情報」の数だけ平行ストロークを発生させる。ここで、「発生させる」とは、元のストロークと同じストローク（以下、平行ストロークという）を生成することをいう。同じストロークを発生させると座標も同じになるので、次述するようにストロークの位置を調整する。
【００５０】
なお、太文字太さ指定情報として、描画すべき太文字の太さが与えられている場合も考えられる。この場合、次のようにしてストロークの本数を決定すればよい。
図１２は、ストロークの本数の決定方法を説明する図の一例である。太文字を描画する際のストロークの重なり幅を「μ」、各ストローク（ビーム径）の太さを「t」、求められている太文字の太さを「Ｔ」、描画すべき平行ストロークの本数を「ｎ」とする。
【００５１】
図から、次の関係が得られる。
ｎ（ｔ−μ）＋μ＝Ｔ
ｎ＝（Ｔ−μ）／（ｔ−μ）
「ｎ」は整数だから、算出された「ｎ」に最も近い整数値を選ぶ。
【００５２】
次に、平行ストローク発生手段１０５は、新たに加えるストロークの位置を求める。可能な限り元のストロークフォントの形状を維持するためには、元になるストロークの両側に同じ本数だけ平行ストロークを追加することが好ましい。この場合、描画する合計のストロークの本数が奇数か偶数かによって処理が異なる。
【００５３】
・奇数の場合
図１３は、発生させた平行ストロークの本数が奇数の場合において、各平行ストロークの位置の決定を説明する図の一例を示す。図示するように、平行な各ストロークは、熱負荷を与えない程度に端が重畳するように描画される。重畳分を設けることで、ストローク間にすき間が生じることを防止しやすい。なお、重畳分「μ」をどのくらいにするかに設定するかは、サーマルリライタブルメディアや環境温度により適切に決定すればよい。
【００５４】
この重複分「μ」を考慮して、平行ストローク発生手段１０５は、新たに発生させたストロークを、元のストロークから「ｋ（ｔ−μ）」の位置に決定する。ただし、「ｋ」は、０以上の整数であり、描画すべきストロークの本数により「ｋ」が取り得る値が決まる。例えば、３本の平行ストロークを描画する場合、「ｋ＝０、１」、５本描画する場合、「ｋ＝０、１、２」となる。「ｋ＝０」の場合、「ｋ（ｔ−μ）」は元のストロークの位置を意味する。したがって、平行ストロークという場合、元のストロークの位置にある平行ストロークを含む。また、平行ストロークの位置は、元のストロークの位置、元のストロークから「ｔ−μ」、「２（ｔ−μ）」…離れた位置になる。なお、平行ストローク発生手段１０５は、元のストロークに線対称に平行ストロークを配置する。
【００５５】
・偶数の場合
図１４は、発生させた平行ストロークの本数が偶数の場合において、各平行ストロークの位置の決定を説明する図の一例を示す。奇数の場合と同様に、平行な各ストロークは、熱負荷を与えない程度に端が重畳するように描画される。偶数の場合、元のストロークを中心に上下対称に新たに発生したストロークを配置する。このため、新たに加える平行ストロークと、元のストロークとの距離は次式で表される。
ｋ（ｔ−μ）＋（ｔ−μ）／２
ただし、「ｋ」は、０以上の整数であり、発生させた平行ストロークの本数により「ｋ」が取り得る値が決まる。例えば、平行ストロークを２本描画する場合、「ｋ=０」のみ、４本描画する場合、「ｋ＝０、１」、６本描画する場合、「ｋ＝０、１、２」となる。したがって、平行ストロークの位置は、元のストロークから「（ｔ−μ）／２」、「（ｔ−μ）＋（ｔ−μ）／２」、「２（ｔ−μ）＋（ｔ−μ）／２」…離れた位置になる。偶数の場合、元のストロークと同じ位置に、平行ストロークは配置されない。なお、平行ストローク発生手段１０５は、元のストロークに線対称に平行ストロークを配置する。
【００５６】
このようにして平行ストロークの位置を決定すると、平行ストローク発生手段１０５は、太文字のための各ストロークの座標値を決定する。
図１５は、平行ストロークの座標の決定を模式的に説明する図の一例である。元のストロークを移動させる距離が決定しているので、平行ストローク発生手段１０５は、元のストロークの法線方向にその距離だけ、元のストロークと同一長さの平行ストロークをシフトさせ、座標値を仮に決定する。
【００５７】
図では、ｎを単位法線ベクトル、ｖ１を元のストロークの座標の元ベクトル、Ｍを移動ベクトル、ｖを移動後の平行ストロークの座標のベクトルとした。したがって、平行ストロークの数が奇数の場合「Ｍ＝ｎ×ｋ（ｔ−μ）」、平行ストロークの数が偶数の場合「Ｍ＝ｋ（ｔ−μ）＋（ｔ−μ）／２」、である。移動後の平行ストロークの座標のベクトルｖは次式で決定できる。
ｖ＝ｖ１＋Ｍ
元のストロークに対し反対側の、移動後の平行ストロークの座標のベクトルｖは、単位法線ベクトルｎを「−ｎ」とすればよい。
【００５８】
＜Ｓ７０：平行ストロークの長さ調整＞
新たに発生した全ての平行ストロークの座標が決定されると、平行ストローク長さ調整手段１０６は、発生させた平行ストロークの長さを調整する。ステップＳ６０で求めた平行ストロークは、元のストロークと同じ長さを持つので、元のストロークが他のストロークと接続して折れ線状になっている場合、描画方向に隣接した平行ストローク同士は、折れ曲がりの内側では重複、外側では断絶が発生する。
【００５９】
図１６（ａ）は、折れ曲がりの不都合を説明する図の一例である。新たに発生させたストロークは平行移動しただけなので、折れ線部の内側で重複が、外側で断絶が、それぞれ発生していることが分かる。
【００６０】
そこで、平行ストローク長さ調整手段１０６は、折れ線部の平行ストロークが連続するよう、折れ線部の内側は短く、外側は長くなるように、平行ストロークの長さを調整する。すなわち、平行ストロークが描画方向に連続するよう、折れ線部の一方の平行ストロークの始点と、他方の平行ストロークの終点の座標値を変更する。変更後の座標は、２つの平行ストロークの交点である。
【００６１】
折れ線部の内側は、すでに重複が発生しているので、描画方向に隣接した２つの平行ストロークの交点を求め、交点を、折れ線部を構成する内側の２つのストロークの新たな座標に決定する。折れ線部の外側は、断絶しているため交点が不明なので、２つの平行ストロークを延長し（線分として限定しない）、描画方向に連続した２つの平行ストロークの交点を求める。そして、交点を、折れ線部を構成する外側の２つの平行ストロークの新たな座標に決定する。
【００６２】
図１６（ｂ）は、平行ストロークの座標が変更された折れ線部の一例を示す図である。重複と断絶が解消されていることが分かる。なお、２つの平行ストロークの交点を新たな座標とするのでなく、折れ線部の内側で交差する２つの平行ストロークのうち、一方の平行ストロークの座標だけを他方の最近接部まで変更してもよいし、折れ線部の外側で断絶した２つの平行ストロークのうち、一方の平行ストロークの座標だけを他方の最近接部まで変更してもよい。この場合、２つの平行ストロークの端点が一致しないが、重複もしないのでサーマルリライタブルメディア２０を過熱することがなく、発色により断絶も回避される。
【００６３】
平行ストローク長さ調整手段１０６は、１つの文字から全ての折れ線部を検出し、折れ線部ごとにステップＳ７０の処理を行う。なお、折れ線部は、図９（ｂ）のようなフォントデータにおいて、終点の座標と、次のストロークの始点の座標が一致するものとして検出される。
【００６４】
＜Ｓ８０：元のストロークの削除＞
ついで、ストローク除去手段１０７は、元のストロークを描画対象から除去する。この除去とは元のストロークの座標情報を図９（ｂ）のようなフォントデータから消去することをいう。すなわち、平行ストロークの数が奇数の場合、元のストロークとｋ＝０の平行ストロークが重複しているので、元のストロークを削除することで、重複した描画を回避する。なお、平行ストロークの数が奇数の場合、平行ストロークを元のストロークの位置に発生させず（すなわち「ｋ＝０」の位置に発生させない）、元のストロークを除去することなく描画に利用してもよい。
【００６５】
また、平行ストロークが偶数の場合、元のストロークは不要なのでストローク除去手段１０７は、元のストロークを削除する。
【００６６】
＜Ｓ９０：重複ストロークの算出＞
〔重複の判定〕
まず、重複の判定について説明する。図１７は、重複ストローク算出手段１０８の機能をより詳細に説明する図の一例である。フォントデータ取得手段１０２は、フォントデータに基づき図９（ｂ）の如きストロークの座標を読み出す。このストロークの座標から、文字に重複が生じるか否かが判定される。
【００６７】
まず、距離算出手段１０８４は、ストローク同士の最短距離を求める。最短距離の求め方は次の手順に従う。
【００６８】
なお、ステップＳ９０の判定では、通常の太さの文字について重複を判定する場合と、太文字について重複を判定する場合がある。しかし、太文字の場合でも、新たな各平行ストロークが他の平行ストロークと重複すべきでないことは通常の太さの文字と同じなので、新たな各平行ストロークの全てについて、他の平行ストロークとの重複を判定する。
・ストローク同士に交点がある場合、距離はゼロ
・交点がない場合は、
- １対のストロークの端点間距離
- 一方のストロークの端点から他方のストロークに下ろした垂線の足までの距離（垂線が設定できる場合）
のいずれかにより距離を求める。すなわち、交点がない場合は、２つの方法でそれぞれ距離を求め、最も短い距離により重複の有無を判定する。
【００６９】
図１８は、ストローク同士の最短距離の検出を模式的に説明する図の一例である。図１８（ａ）は交点のある２つのストロークの一例を示す。交点は、２つのストロークを直線の方程式で表し、その連立方程式を解くことで、求めることができる。
【００７０】
ｙ＝ａ１ｘ＋ｂ１
ｙ＝ａ２ｘ＋ｂ２
の場合、交点を（ｘｐ，ｙｐ）とすると、
（ｘｐ,ｙｐ）＝（  （ｂ２−ｂ１）／（ａ１−ａ２），ａ１ｘｐ＋ｂ１  ）
２つの直線は平行でない限り交点が得られるが、本実施形態では交点（ｘｐ,ｙｐ）がストローク内に含まれる場合にのみ、交点があると判定する。
【００７１】
図１８（ｂ）は、一方のストロークの端点から降ろした垂線の足の長さの算出を模式的に説明する図の一例である。図１７の垂線算出手段１０８２は、図示するような垂線を算出する。垂線は、他方のストロークに直交する線分で、一方のストロークの端点を通る線分である。したがって、垂線算出手段１０８２は、まず、他方のストロークに直交する傾きの直線であって、一方のストロークの端点を通過する垂線の式を算出する。
【００７２】
ｙ＝ｃｘ＋ｄ
この直線が他方のストロークと交差すれば、一方のストロークの端点から他方のストロークに垂線を降ろすことができることになる。図１８（ａ）と同様に、垂線の足存在範囲算出手段１０８３は、例えば垂線と他方のストロークの交差する点を求め、それがストローク内であれば垂線が引けたと判定する。この場合、距離算出手段１０８４は、一方のストロークの２つの端点から、他方のストロークまで降ろした垂線の足の長さを算出する。これは端点と交点までの距離として求めることができる。
【００７３】
２つのストロークの関係によっては、垂線を引くことができない場合がある。図１８（ｃ）は２つのストロークの端点間の距離の算出を模式的に説明する図の一例である。距離算出手段１０８４は、一方のストロークの２つ端点と、他方の端点の２つの端点の距離をそれぞれ（すなわち４つの距離）算出する。距離算出手段１０８４は、垂線算出手段１０８２が垂線を算出できないと判定した場合のみ算出してもよいし、垂線の算出の是非に関わらす端点間の距離を算出してもよい。
【００７４】
このようにして検出されたいくつかの距離のうち、文字の太さよりも短い距離がある場合、ストロークが互いに重複することになる。すなわち、最短距離が文字の太さよりも短くなければ交差しないので、いくつかの距離のうち最短距離を決定する。距離比較手段１０８５は、太さ情報取得手段１０３が取得した太さの情報と、最短距離を比較する。そして、最短距離が太さ以下であれば、その最短距離が検出された１対のストロークを抽出する。これにより、重複ストローク算出手段１０８は、当該文字のその１対のストロークには重複が生じることを検出することができる。なお、この場合、重複ストローク算出手段１０８は、「重複量  ＝  太さ−最短距離」を検出する。
【００７５】
図１９は、太文字の場合の交点を模式的に示す図の一例である。太文字の場合、重複ストローク算出手段１０８は、ストローク１とストロークａｂｃそれぞれの交点を算出し、ストローク２とストロークａｂｃそれぞれの交点を算出し、ストローク３とストロークａｂｃそれぞれの交点を算出する。複数の交点が算出されるが、交点毎に重複量を調整すればよい。したがって、通常の太さの文字と同様に交点を検出して、重複を検出することができる。垂線を下ろす場合、２つのストロークの端点間の距離を算出する場合、も同様である。
【００７６】
図２０は、ステップＳ９０の重複ストロークの算出処理の手順を、詳細に説明するフローチャート図の一例である。
【００７７】
まず、フォントデータ取得手段１０２は、１文字のフォントデータからストロークの座標を抽出し、任意の２つのストロークの座標を読み出す（Ｓ４０１）。
【００７８】
そして、ストローク交点検出手段１０８１は、２つのストロークに交点があるか否かを判定する（Ｓ４０２）。
【００７９】
交点がない場合（Ｓ４０２のＮｏ）、端点間の距離を検出するため、２つのストロークの４つの端点のうち、１つの端点を選択する（Ｓ４０３）。そして、距離算出手段１０８４は、他方の（注目している端点を有さない方の）ストロークの端点との距離を検出する（Ｓ４０４）。
【００８０】
次に、垂線算出手段１０８２は、他方のストロークまで垂線を降ろす（Ｓ４０５）。垂線が他方のストロークと交わらないことがあるので、垂線の足存在範囲算出手段１０８３は垂線の足が他方のストロークと交差するか否かを判定する（Ｓ４０６）。
【００８１】
垂線が他方のストロークと交わる場合は（Ｓ４０６のＹｅｓ）、距離算出手段１０８４は、端点と他方のストロークまでの垂線の長さを検出し（Ｓ４０７）、交わらない場合は（Ｓ４０６のＮｏ）、次の端点の処理に移行する。
【００８２】
２つのストロークの４つの端点について端点間又は垂線の足の長さの検出が終了すると（Ｓ４０８のＹｅｓ）、４つの端点について求めた距離のうち最小の距離を決定する（Ｓ４０９）。これにより、交点がない２つのストロークについて最も接近している部分の距離を決定することができる。
【００８３】
なお、ステップＳ４０２で交点があると判定された場合、ストローク間の距離はゼロと判定される（Ｓ４１３）。
【００８４】
ついで、距離比較手段１０８５は、距離が文字の太さ以下か否かを判定する（Ｓ４１０）。距離が太さ以下でない場合（Ｓ４１０のＮｏ）、重複ストローク算出手段１０８は、その２つのストロークについては分割・短縮処理が不要であると判定する（Ｓ４１４）。
【００８５】
距離が太さ以下の場合（Ｓ４１０のＹｅｓ）、重複ストローク算出手段１０８は、その２つのストロークについては分割・短縮処理が必要であると判定する（Ｓ４１１）。
【００８６】
ついで、重複ストローク算出手段１０８は、全てのストロークの２つの組み合わせについて吟味したか否かを判定し（Ｓ４１２）、吟味した場合には処理を終了する。
【００８７】
ところで、数字の「１」のように、文字が全て直線で形成されている場合、ストロークの座標を容易に抽出することができる。しかしながら、ストロークフォントのようなスケーラブルフォントでは曲線をスケーラブルに描画できるように、例えばベジェ曲線のような曲線で描画できるようになっている。曲線で描画されていると、ストローク間の距離の算出が複雑になるので、曲線を含む文字であっても直線に変換して描画することが好適になる。
【００８８】
そこで、直線近似手段１１１は、フォントデータが曲線を含む場合、曲線部分を直線に変換し、各直線のストロークの座標を検出する。なお、文字が曲線を含む場合、フォントデータには曲線制御用のデータが含まれているので、その文字が曲線を含むか否かはフォントデータから判定される。
【００８９】
図２１（ａ）は、円形状の文字から生成されるストロークを模式的に示す図の一例である。始点の座標（A,B）から終点の座標（C,D）までいくつかの曲線制御が施され、円形状のストローク３１０が得られる。このような文字の場合、直線近似手段１１１は、所定距離ｓ毎にストローク３１０の座標を検出する。描画されるストロークの座標は、スケールを調整した後の座標である（２倍なら２倍した後）。
【００９０】
直線近似手段１１１は、微少間隔毎に距離を蓄積し、距離ｓに達するとその時の座標を取得する。図２１（ａ）では、５つの座標が得られている。この座標を元に、図９（ｂ）のような描画されるストロークの座標を決定する。図２１（ｂ）は、曲線を直線に変換した後の、ストロークの座標（フォントデータ）の一例を示す。
【００９１】
＜Ｓ１００：ストロークの分割・短縮＞
図１０に戻り、ストローク分割・短縮手段１０９は、距離がゼロの一対のストローク、端点とストロークの距離又は端点間の最短距離が文字の太さ以下の距離となった一対のストロークについて、一方のストロークを分割又は短縮する。一方のストロークとしたのは、どちらか一方の分割又は短縮することで重複を解消できるからである。
【００９２】
どちらのストロークを、分割・短縮するかは次のルールにより決定する。
Ｒ１）分割・短縮することで一方のストロークのみが完全に消失する場合、他方のストロークを分割・短縮する。
Ｒ２）どちらのストロークも完全には消失しない、又は、どちらのストロークも完全に消失する場合、分割・短縮により消失するストローク長が短いほうを分割又は短縮対象とする（これは、消失長が短いほうが情報量の欠落が小さいとの考えに基づくものである。）。例えば、過度に短縮すると、接触しているべきストローク同士が離れてしまい、文字の品質は低下する。どの位置に新たな（分断・縮小された）ストロークの端点を決めるかは、ストロークの太さに依存する。
【００９３】
図２２は、分割・短縮されるストロークを模式的に説明する図の一例である。図２２（ａ）は分割又は短縮する前のストロークにより描画された文字を示す。ストローク５１の端点は（Ｅ，Ｆ）と（Ｇ,Ｈ）であり、ストローク５２の端点は（Ｇ，Ｈ）と（Ｊ,Ｋ）であり、ストローク５３の端点は（Ｌ，Ｍ）と（Ｎ,Ｏ）である。
【００９４】
重複ストローク算出手段１０８は、ストローク５１の端点（Ｇ，Ｈ）とストローク５３の端点（Ｌ、Ｍ）との距離、ストローク５２の端点（Ｇ，Ｈ）とストローク５３の端点（Ｌ、Ｍ）との距離、がそれぞれ文字の太さ以下であることを検出する。なお、厳密には、ストローク５１と５２の端点（Ｇ，Ｈ）が一致するのでここでも重複すると判定されるが、このように交差の角度が小さい重複は後述するように無視できる。
【００９５】
まず、ストローク分割・短縮１０５は、交点がないこと、及び、どちらを短縮しても一方のストロークのみが完全に消失しないので、ルールＲ２が適用されると判定する。このため、ストローク分割・短縮手段１０９は、仮に、ストローク５１と５２を両方とも短縮した場合と、ストローク５３を短縮した場合とで、短縮量を比較する。
【００９６】
図２２（ｂ）は、ストローク５３を短縮して描画された文字の一例を、図２２（ｃ）は、ストローク５１，５２を短縮して描画された文字の一例を、それぞれ示す。重複ストローク算出手段１０８は、分割・短縮により消失するストローク長が短いほうを分割又は短縮対象とする。
【００９７】
ストローク分割・短縮手段１０９は、ストローク５３を短縮する場合の短縮量と、ストローク５１、５２をそれぞれ短縮する場合の短縮量を算出し、どちらを短縮するかを決定する。ストローク５１とストローク５３の重複量と、ストローク５２とストローク５３の重複量が等しい場合、ストローク５３を短縮する場合は、「1×重複量」が短縮量になるのに対し、ストローク５１、５２を短縮する場合は、「２×重複量」が短縮量になる。したがって、ストローク５３を短縮した方が、消失するストローク長が短い。
【００９８】
ストローク分割・短縮手段１０９は、かかる計算に基づきストローク５３を短縮すると決定する。短縮量は重複量と同じである。したって、ストローク分割・短縮手段１０９は、ストローク５３の端点（L、M）を短縮量だけ短縮して、そのストローク５３の短縮後の座標を決定する。
【００９９】
図２３は、分割・短縮されるストロークの別の例を模式的に説明する図の一例である。図２３（ａ）は分割又は短縮する前のストロークにより描画された文字を示す。重複ストローク算出手段（正確にはストローク交点検出手段）１０８は、ストローク５４とストローク５５が交差することを検出する。
【０１００】
このため、ストローク分割・短縮手段１０９は、ストローク５４又は５５のいずれかを分割又は短縮する。交点の場合は、分割することになる。
【０１０１】
まず、ストローク分割・短縮１０５は、仮に、両方のストロークをそれぞれ分割してみて、重複量だけ分割後のストロークを短縮した場合に、一方のストロークのみが完全に消失するか否かを判定する。
【０１０２】
図２３（ｂ）は、ストローク５５を仮に分割して、重複量を短縮して描画された文字の一例を、図２３（ｃ）は、ストローク５４を仮に分割して重複量を短縮して描画された文字の一例を、それぞれ示す。図２３（ｂ）に示すように、ストローク５５を、ストローク５４と重複しないように分割すると、ストローク５５が完全に消失してしまう。したがって、図２３の文字の場合、ルールＲ１が適用されるので、重複ストローク算出手段１０８は、ストローク５４を分割対象とする。
【０１０３】
なお、完全に消失してしまうことは、ストローク５５の端点（V,W）と交点（P，Q）の距離が、文字の太さより短いことから検出される。
【０１０４】
交差する場合、ストローク分割・短縮手段１０９は、交点をストロークの一方の端点としてストローク５４を分割し、端点が（R,S）（P,Q）のストローク５４ａと端点が（P，Q）（T,U）のストローク５４ｂを生成し、ストローク５５との重複量を算出する。交差している場合、端点（P,Q）がストローク５５と重複する重複量は文字の太さの半分と同じなので、特に算出することなく重複量を検出できる。短縮量は、短縮して移動した端点の広がりを考慮して文字の太さに等しい。
【０１０５】
したがって、ストローク分割・短縮手段１０９は、ストローク５４を分割したストローク５４ａの２つの端点の座標を（R,S）（P、Q＋太さ）に決定する。同様に、ストローク５４を分割したストローク５４ｂの２つの端点の座標を（P、Q−太さ）（T,U）に決定する。以上から、図２３（ｃ）のように、交差を解消した文字を描画することができる。
【０１０６】
このように、ストロークの分割・短縮を、重複がなくなる最低限度行うことで、文字の品質低下を最小限に抑制することができる。
【０１０７】
図２４は、太文字の短縮を模式的に説明する図の一例である。図２４（ａ）は、図１６(a)（ｂ）にて説明したように、すでに重複と断絶が解消されている。ストローク分割・短縮手段１０９は、例えば、平行ストローク１〜６から平行ストロークａに最も近い平行ストロークを決定し、その平行ストロークと重複している分だけ、平行ストロークａを短縮する。これを、平行ストロークｂ、ｃについて繰り返す。こうすることで、太文字を構成する各平行ストロークを短縮できる。
【０１０８】
また、同様に、図２４（ｂ）のような太文字同士が重複している場合、ストローク分割・短縮手段１０９は、例えば、平行ストロークａ〜ｃから最も外側で平行ストローク１と交差する平行ストロークが平行ストロークａ、ｃであることを決定する。ストローク分割・短縮手段１０９は、平行ストローク１と平行ストロークａの交点でストローク1を分割し、交点から太さ分だけ短いストローク１'を生成する。また、ストローク分割・短縮手段１０９は、ストローク１とストロークｃの交点でストローク1を分割し、交点から太さ分だけ短いストローク１''を生成する。これを、ストローク２，３について繰り返すことで、交差する太いストローク同士を分割できる。
【０１０９】
〔短縮・分割以外の過熱防止方法〕
ストロークを短縮したり分割することなく、交差部や急な折れ線部でレーザ出力を一時的に弱めてもよい。この場合、短縮・分割してストロークの新たな座標を決定する必要がないので、全体制御装置１００の処理負荷を低減できる。
【０１１０】
パワー調整手段１１２は、予めストローク同士や平行ストローク同士が発色により重複するストローク部分を例えばフォントデータに登録する。重複するストローク部分は、短縮・分割する場合と同様に、重複ストローク算出手段１０８が検出できる。すなわち、ストロークの一部を重複するストローク部分とすればよい。
【０１１１】
そして、ストロークを描画する際に、重複するストローク部分か否かを判定し、重複するストローク部分を描画する時、パワー調整手段１１２はレーザ出力を弱める。弱め方は、例えば、重複するストローク部分を描画する時間に伴い徐々にレーザ出力に低減していく方法、又は、重複するストローク部分の中心部に向かうにつれて徐々にレーザ出力に低減していく方法、を採用することができる。こうすることで、熱が留まりやすい領域ほど、レーザ出力を低減できる。また、重複するストローク部分を描画する場合、予め定めたレーザ出力に低減してもよい。この場合は、レーザ出力を高精度に制御する必要がないので、処理負荷を低減できる。
【０１１２】
〔重複回避の例外〕
文字の品質を確保する考え方に従い、重複していても分割又は短縮しない場合について説明する。図２５は、分割・短縮した場合としない場合のストロークの例を模式的に説明する図の一例である。図２５（ａ）は分割又は短縮する前のストロークにより描画された文字を示す。図２５（ａ）の文字「Ｃ」が、直線のみから構成されるフォントデータの場合はそのまま描画すればよく、曲線を含むフォントデータの場合は、直線近似手段１１１が距離ｓ毎に決定したストロークの座標を利用する。
【０１１３】
図２５（ａ）では、ストローク５６〜６９の端点が一致している。したがって、重複ストローク算出手段１０８は、ストローク同士が交差していること又は端点間の距離が太さ以下であることを検出する。上記のルールＲ２が適用されるとすると、各ストローク５６〜６９が短縮され図２５（ｂ）に示す文字を描画することができる。
【０１１４】
しかしながら、このように短い距離で文字が途切れるとユーザが見づらいと感じる場合がある。そこで、ストローク分割・短縮手段１０９は、新たなルールＲ３を定義し、文字を描画する。
Ｒ３）２本のストロークが連続しており、かつ、それらが交わる角度が浅い場合には分割・短縮を行わない。
【０１１５】
図２５（ｄ）はストロークが交わる角度を説明する図である。例えば、ストローク５７と５８は図示するように交わる角度が大きい。ストロークが交わる角度が大きい場合、方向制御モータ１２や方向制御ミラー１３の慣性の影響が少なくレーザが重複した部分が過度に高温となることは少ない。そこで、ストローク分割・短縮手段１０９は、ストロークが連続している場合には、ストロークが交わる角度を算出し、交わる角度が所定値（例えば４５度〜９０度）以下の場合のみ、ストロークを短縮する。
【０１１６】
ストロークの交わる角度は、２つのストロークをベクトル（原点はどこでもよい）ｖ１、ｖ２で表し、ベクトルの内積をベクトルの大きさで割ることで得られる。ストロークの交わる角度を算出するのは、直線近似手段１１１である。
【０１１７】
ｃｏｓθ＝ （ｖ１・ｖ２）／（｜ｖ１｜｜ｖ２｜） 
ルールＲ３を図２５（ａ）の文字に適用すると、ストローク５６と５７以外の重複部では線部を短縮する必要がないと判定される。ストローク５６と５７で、ストローク分割・短縮手段１０９が例えばストローク５６を短縮することで、図１４（ｃ）に示す文字が描画される。ルールＲ３により、交わる角度が深い場合には、レーザの向きを制御する方向制御モータ１２と方向制御ミラー１３の慣性の影響を考慮して重複を解消でき、交わる角度が小さい場合には重複したまま描画できるので文字の品質低下を防止できる。なお、このような描画の態様を人が筆で文字を描く場合に例えると、角度が深い場合は一旦「筆を上げる」こととし、角度が浅い場合は、「筆をあげず」に続けて描き続ける、というイメージになる。
【０１１８】
＜Ｓ１１０：描画順の整理＞
ストロークが重複しないように各ストロークの端点の座標が決定されたら、描画順整理手段１１０が、各ストロークの描画順を整理する。描画順を整理するのは、描画時間を短縮するためと、太文字を美しくかつサーマルリライタブルメディア２０を損傷することなく描画するためである。
【０１１９】
描画順について説明するため、ストローク群を定義する。ストローク群とは、「筆をあげずに描き続ける一連のストロークをいう。したがって、例えば、図２５（ｃ）の、ストローク５６が１つのストローク群、ストローク５７〜６９が１つのストローク群である。
【０１２０】
そして、太文字を描画する場合、ストローク群も複数になるので、これをストローク群グループと呼ぶ。描画順整理手段１１０は、１つのストローク群グループ内のストローク群を連続で描画するものとする。すなわち、ストローク群グループの１つのストローク群を描画し始めたら、他のストローク群グループの描画を挟まない。
【０１２１】
図２６は、ストローク群グループの描画順を説明する図の一例である。太文字化により３つのストローク群１，２，３が得られている。この３つのストローク群１、２、３に対し、描画順整理手段１１０は最も端のストローク群１又は３から、法線方向に隣接した順番にレーザ光で描画する。図２６（ａ）は上から順番にストローク群１、２、３を描画する場合のストローク群の描画順を、図２６（ｂ）は下から順番にストローク群３、２、１を描画する場合のストローク群の描画順を、それぞれ示す。なお、最も端のストローク群は、平行ストローク発生手段１０５が平行ストロークを発生した際の、「ｋ」が最大値のストロークを含むストローク群である。
【０１２２】
ストローク群グループを連続して描画するのは、サーマルリライタブルメディア２０の発色特性を考慮したためである。サーマルリライタブルメディア２０は、温度Ｔａで発色し、低い温度に冷えた状態から温度Ｔｂ（＜Ｔａ）に熱した後に冷却すると色が消える性質がある。このため、例えば最も端のストローク群１を描画後、十分に冷えてから隣接したストローク群２を描画すると、既に発色したストローク群１の外側部分が、ストローク群２の熱にさらされ、この熱によりＴａ程度になると、既に発色したストローク群１の領域では、色が消えてしまう可能性があるからである。
【０１２３】
したがって、ストローク群１を描画してからストローク群２を描画するまでの時間をあまり空けなければ、ストローク群１の色が消えることはない。このため、ストローク群グループの描画順は隣接した順番とすることが好ましい。
【０１２４】
しかしながら一方で、ストローク群１の長さが短い場合は、ストローク群１の冷却がほとんど行われないままストローク群２の熱が追加されるため、サーマルリライタブルメディアに過度な熱負荷が加わる可能性がある。
【０１２５】
以上から、ストローク群グループを描画する場合は、全体制御装置１００は、ストローク群１を描画してからストローク群グループ２の描画を開始するまでの時間を制御する。冷却のために最小限確保すべき時間をＴｍｉｎ、それ以上の冷却が好ましくない最大の冷却時間をＴｍａｘとする。後述する描画命令生成手段１１４は、描画速度（レーザ光の走査速度）とストローク群１の長さから、Ｔｍｉｎ以下でストローク群２の描画を開始すると判定した場合、Ｔｍｉｎまで時間をおいてから、ストローク群２の描画を開始する。また、描画命令生成手段１１４は、描画速度とストローク群１の長さから、ストローク群２の描画を開始するまでにＴｍａｘ以上の時間がかかると判定した場合、ストローク群１を描画しきらずに、ストローク群２の描画を開始する。後者の場合、ストローク群を連続して描画するのでなく、ストローク毎に描画することが考えられる。なお、５ミリ角程度の文字を描画する上で、Ｔｍａｘの制約を考慮して描画順を再構成する必要はない。
【０１２６】
また、時間調整の代わりにレーザ出力を調整してもよい。この場合、例えば、パワー調整手段１１２は、ストローク群１を描画してからストローク群２の描画を開始するまでの時間がＴｍｉｎ以下の場合、レーザ出力を低減する。また、パワー調整手段は、ストローク群１を描画してからストローク群２の描画を開始するまでの時間がＴｍａｘ以上の場合、レーザ出力を大きくする。
【０１２７】
また、一次元バーコードは全て直線で構成されている。したがって、バーコードを描画する場合は折れ線を描くことがないので、ストローク群にまとめた取り扱いが不要である。したがって、一次元バーコードの太い線を描画する場合は、この太い線を構成するストロークを最も端から順に描いていけばよい。
【０１２８】
ストローク群グループの描画の連続性を確保した後、描画順整理手段１１０は、描画時間が短くなるよう、換言すると、ストローク群の終点から次のストローク群の始点までの移動距離の総和が短くなるように描画順を調整する。
【０１２９】
ストロークが重複しないように各ストロークの端点の座標が決定されたら描画命令生成手段１１４が、描画命令を生成することで、文字を描画することができるが、描画順を最適化することで描画速度を向上させることができる。
【０１３０】
図１０に戻り、描画順整理手段１１０は、ストロークの座標に基づきストロークの描画順を最適化する。最適化とは、例えばレーザ光の移動距離が最小となることをいう。
【０１３１】
図２７（ａ）は、グループ化まで完了した文字「Ｂ」の各ストロークと描画結果の一例を示す。文字「Ｂ」はストローク７１〜８５により構成されている。この状態では、分割や曲線の線形化によりストロークが増えた場合、そのストロークの描画順はフォントデータが有していた順番を承継したもの，又は、描画順の情報が含まれていないとしてよい。このため、各ストロークに対し改めて描画順を整理する。図２７（ａ）では、Ｂの元の書き順（筆順）は、I、II、III,IVの順であり、ストローク又はストローク群内の描画方向は、矢印で示したとおりである。
【０１３２】
描画順整理手段１１０は、次の手順で描画順を最適化する。
ｓ１）所定のストローク（どのストロークでもよい）の端点と同じ座標を持つ他のストロークの端点を数珠繋ぎ的に探し、数珠繋ぎの順に並べ替えた上で１つのストローク群を決定する。
【０１３３】
例えば、図２７（ａ）では、ストローク７１の端点はストローク７２の端点と一致し、ストローク７２の端点はストローク７３の端点と一致し、ストローク７３の端点はストローク７４の端点と一致し、ストローク７４の端点はストローク７５の端点と一致し、ストローク７５の端点はストローク７６の端点と一致し、ストローク７６の端点はストローク７７の端点と一致する。したがって、ストローク７１〜７７は、１つのストローク群であり、ストローク７９〜８４は、１つのストローク群である。
【０１３４】
ｓ２）端点が同じ他のストロークがない場合は、1本のストロークのみで１つのストローク群とする。
例えば、図２７（ａ）では、ストローク７８，８５が１つのストローク群である。
【０１３５】
ｓ３）すべてのストロークをいずれかのストローク群に所属させる。
図２７（ａ）では４つのストローク群が形成される。
【０１３６】
ｓ４）ストロークがグループ化されると、描画順整理手段１１０は、ストローク群の間で描画順を決定する。所定のストローク群の終点にもっとも近い、他のストローク群の始点・終点を次々に探し、その順にストローク群の描画順を並べ替える。
並べ替えるとしたのは、元の描画順が残っているからであるが、元の描画順を初期化してから描画順を決定してもよい。
【０１３７】
例えば、ストローク群Ｉから始めると、ストローク群II（又はVIだがここではIIを選択する）があり、ストローク群IIの他方の端点の近くにはストロークグループIIIの端点がある。したがって、ストローク群Ｉ，II、III、VIの順番にストローク群の描画順を並べる。
【０１３８】
ｓ５）注目しているストローク群の終点が、その先にあるストローク群の終点に近いと判断された場合は、その先にあるストローク群のストロークの順番およびその向きを反転させる。
【０１３９】
ストローク群内の描画方向は、ストローク群毎にストロークに一様な方向であればよく、元の描画順に基づき、ストローク群内の描画方向が既に定められている。図２７（ａ）ではこれを矢印の方向で示したが、描画順を並べ替えた結果、元の描画順に基づく描画方向が適切でない場合がある。そこで、ストローク郡内の各ストロークの描画方向を最適化する。
【０１４０】
例えば、図２７（ａ）ではストローク群Ｉの終点に最も近い、始点・終点を持つストローク群はストローク群VIとIIである。ストローク群VIは端点が始点なので、ストローク８５の方向を変える必要はないが、ストローク群IIは端点が終点なのでストローク７８の方向を逆にする。
【０１４１】
次に、方向が逆になったストローク群IIの終点に最も近い、始点・終点を持つストロークグループはストローク群IIIである。そのストローク群IIIの端点は終点なので、描画順整理手段１１０は、ストロークの順番及び方向を並べ替える。図２７（ｂ）は、以上のようにして描画方向が変更された描画方向の一例を示す。  
ｓ６）ストローク群の描画順、ストローク群内の描画方向を更新する。
以上の処理によりフォントデータに含まれる、ストローク群の描画順、ストローク群内の描画方向が変更されたので、描画順整理手段１１０は、新たな描画順及び描画方向でフォントデータを更新する。
【０１４２】
すなわち、描画順を整理する際、連続描画するストローク群を定め、その後、無駄な方向制御ミラー１３の動きがないように、ストローク群間の距離が近いものを次の描画対象にし、描画順に応じて描画方向を決定することで、描画にかかる時間を短く（方向制御ミラー１３の移動距離が最小となる）することができる。
【０１４３】
なお、太文字の場合は、ストローク群グループ間の描画順は、通常の太さの文字と同様に決定できる。１つのストローク群グループの描画順は同じになるためである。また、各ストローク群の描画方向は、１つのストローク群グループ内で共通にすればよい。
【０１４４】
〔描画順の更なる最適化〕
ストローク群の描画順を決定し、ストローク群内の各ストロークの順番及び方向を替える手順に代えて、端点間の距離を指標にしてストローク群の描画順を決定することができる。
図２８は、ストローク群の描画順の決定を模式的に説明する図の一例である。図２８（ａ）は「ナ」という文字であるが、重複を排除した結果、第１画が分割され、３つのストロークから構成されている。ここでは、説明のためi番目のストロークをSiと表現する。但し、ｎ＝ストロークの数として、i (0≦i≦n-1)である。
【０１４５】
ｎ本のストロークがある場合、書き順の組み合わせは「ｎ！」通りである。しかし、ストローク毎に、始点と終点のどちらから描画してもよいので、それを考慮すると、1組の描画順について、2^(n-1)通りの並び方が存在する。(^ はべき乗を表す)。
【０１４６】
したがって、ｎ個のストロークを有する文字について、始点と終点を考慮した書き順の組み合わせは、「n ! × 2^(n-1)」通りの並び方がある。「ナ」についてｎ＝３とすると、書き順は２４通り存在する。
【０１４７】
図２８では、例として３通りの並べ方を示した。重複を排除した直後の、ストロークの座標は３つなので、図２８（ｂ）に各ストロークの座標を示した。この座標に基づき描画順を最適化する。
図２８（ｃ）は、並べ替えを行っていない状態である。
図２８（ｄ）は並べ替えを行ったものである。
図２８（ｅ）は、始点・終点の逆転したものを交えて並べ替えを行ったものである。図２８（ｃ）〜（ｅ）の先頭の[  ]は、「＋」が始点と終点を逆転していないものを、「−」が始点と終点を逆転したものをそれぞれ示す。
【０１４８】
描画順整理手段１１０は、それぞれの並び方に対し、ストローク群間の距離の和を求める。すなわち、描画を行わずにただ描画対象位置が動く際の距離の合計を求める。
【０１４９】
図２８（ｃ）の例では、（１６０、３２）から（２７２、４８０）に描画した後、（１６，３５２）から（２４０、３５２）へ描画し、（３０４、３５２）から（４４８、３５２）に描画する。したがって、描画を行わずにただ描画対象位置が動く際の距離の合計は次のようになる。
【０１５０】
距離の合計＝Ｌ１＋Ｌ３
＝√｛（２７２−１６）２＋（４８０−３５２）｝２＋√｛（２４０−３０４）２＋（３５２−３５２）２  ｝＝  ３５０．２ 
図２８（ｄ）の例では、（１６、３５２）から（２４０、３５２）に描画した後、（３０４，３５２）から（４４８、３５２）へ描画し、（１６０、３２）から（２７２、４８０）に描画する。したがって、描画を行わずにただ描画対象位置が動く際の距離の合計は次のようになる。
【０１５１】
距離の合計＝Ｌ３＋Ｌ２
＝√｛（２４０−３０４）２＋（３５２−３５２）２  ｝＋√｛（４４８−１６０）２＋（３５２−３２）２  ｝   ＝  ４９４．５
図２８（ｅ）の例では、（１６、３５２）から（２４０、３５２）に描画した後、（３０４，３５２）から（４４８、３５２）へ描画し、（２７０、４８０）から（１６０、３２）に描画する。したがって、描画を行わずにただ描画対象位置が動く際の距離の合計は次のようになる。
【０１５２】
距離の合計＝Ｌ３＋Ｌ４
＝√｛（２４０−３０４）２＋（３５２−３５２）２  ｝＋√｛（４４８−２７２）２＋（３５２−４８０）２   ｝  ＝  ２８１．６
描画順整理手段１１０は、最も距離の合計が小さい描画順を選択する。図２８の例では、例示した以外も含めた２４通りの組み合わせの中で図２８（ｅ）の描画順が最も距離の合計が短い。
【０１５３】
なお、図２８の例は、１文字だけの最適化であるが、２文字以上を連続して描画する場合、１つ前の文字の最後の描画位置と、次の文字の最初の描画位置まで、描画を行わずにただ描画対象位置が動くことになる。したがって、図２８の処理を1文字ずつではなく、1枚のサーマルリライタブルメディア２０全体の文字列に対し行うことで、処理時間は増大するが、描画そのものにかかる時間をより短くすることができる。
【０１５４】
フォントデータ生成手段１１３は、最終的に、描画順が最適化された文字のフォントデータをハードディスク３５やメモリ３２に記憶する。
【０１５５】
＜Ｓ１３０：描画命令の生成＞
図１０に戻り、描画命令について説明する。図２９は、重複が排除された文字の描画例とその描画命令の一例を示す。この文字「１」は図９に示したように３つのストロークから構成されていたが、ストローク９１は交点（１１２、４８）によりストローク９１ａ、９１ｂに分割され、ストローク９３は折り返し点（１１２、４４８）により短縮されストローク９３ａとなっている。したがって、重複が排除された結果、ストロークは４つになっている。
【０１５６】
図２９（ａ）は図９（ｂ）と同じものであり、図２９（ｂ）は描画命令の生成対象となるストロークの座標である。フォントデータ生成手段１１３が生成したフォントデータが図２９（ａ）に相当する。図２９（ｃ）は、図２９（ｂ）に基づく描画例を示す。なお、すでに描画順の最適化は終了しているものとする。
【０１５７】
このように、ストロークの座標、描画順、が定まれば、図９で説明した「ｍ」と「ｄ」を座標に対応づけることで描画命令を生成することができる。
図２９（ｄ）は、描画命令の一例を示す。図２９（ｄ）において「ｍ」と「ｄ」は図９と同じ制御コードであり、「ｚ」は文字属性情報、「ｔ」は文字の太さ、「w」は描画までの待ち時間（動いた方向制御ミラー１３が完全停止するまでまって描画を安定させるための制御コード）を含んでいる。なお、「ｗ」はレーザ照射部１６０に適した固定値が予め与えられており、例えばミリ秒やマイクロ秒、又は、レーザ照射部１６０に特有のユニット時間を単位とする。文字属性情報「ｚ」は、太文字の場合に所定値（例えばストローク数）が入力される。文字の太さ「ｔ」はユーザにより入力された値である。
【０１５８】
図２９（ｂ）によれば、最初に座標（４８，４８）まで描画せずに移動し、その後、所定時間「ｗ  ５０」待つので、「ｍ  ４８  ４８」「ｗ  ５０」となる。
【０１５９】
次に、座標（４８，４８）から（８０，４８）まで筆をおいて描画し、その後、描画せずに座標（１１２，４８）に移動し、その後、所定時間「ｗ  ５０」待つので、「ｄ  ８０  ４８」「ｍ  １１２  ４８」  「ｗ  ５０」となる。
【０１６０】
次に、座標（１１２，４８）から座標（１１２，４４８）まで筆をおいて描画し、その後、描画せずに座標（８０，４００）に移動するので、「ｄ  １１２  ４４８」「ｍ  ８０  ４００」「ｗ  ５０」となる。
【０１６１】
次に、座標（８０，４００）から座標（４８，３５２）まで筆をおいて描画し、その後、描画せずに座標（１４４，４８）に移動するので、「ｄ  ４８  ３５２」「ｍ  １４４  ４８」「ｗ  ５０」となる。
【０１６２】
次に、座標（１４４，４８）から座標（１７６，４８）まで筆をおいて描画し、終了なので、「ｄ  １７６  ４８」となる。
【０１６３】
このような描画命令により、図２９（ｃ）のように重複のない文字を最短時間で描画することができる。
【０１６４】
図３０は、太文字の描画命令の生成を模式的に示す図の一例を、図３１は描画例をそれぞれ示す。描画対象の文字は「イ」であり、フォントデータから取り出した各ストロークの座標は図３０（ａ）のようになる。
【０１６５】
文字属性情報として太文字が指定されているので、平行ストローク発生手段１０５が元のストロークから３つの平行なストロークを発生させた。図３１では、元のストロークが、ストローク２，ストローク５、ストローク８である。また、太字の一画を構成するストローク又はストローク群は、ストローク群グループとなるので、「イ」では２つのストローク群グループＩ、IIが生成される。
【０１６６】
この文字には折れ線部があるので、平行ストローク６、９には重複が、平行ストローク４，７には断絶が発生する。平行ストローク長さ調整手段１０６は、平行ストローク６、９の重複、平行ストローク４，７の断絶を解消し、平行ストローク６、９、４，７に新たな座標を設定する。図３０（ｂ）に示すように、この座標が平行ストローク６、９の（３８，２６０）、平行ストローク４、７の（４２，２４０）、である。実際には元のストローク２，５、８は除去されるが、３本の場合は、元のストロークと同じ位置に新たに発生された平行ストロークが描画されるので、除去のステップは省略する。
【０１６７】
次に、重複ストローク算出手段１０８は、平行ストローク１とストローク４〜９の重複、ストローク２とストローク４〜９の重複、平行ストローク３とストローク４〜９の重複、を検出する。そして、ストローク分割・短縮手段１０９は、平行ストローク１〜３を短縮する。図３０（ｃ）に示すように、短縮後の平行ストローク１〜３の終点の座標がそれぞれ（５０，２００）、（４８,１９０）、（５２,２１０）である。
【０１６８】
次に、描画順整理手段１１０が、ストロークが連続しており、かつ、それらが交わる角度が浅い部分を検出し、ストローク群に区分する。平行ストローク４，７が１つのストローク群、元のストローク５，８が１つのストローク群、平行ストローク６，９が１つのストローク群である。図３０（ｄ）に示すように、描画順整理手段１１０はストローク群毎に座標を集約する。
【０１６９】
次に描画順整理手段１１０は、描画順を整理する。図３１では、図示する矢印の方向が最も描画時間が短いとする。
【０１７０】
次に、描画順整理手段１１０は、１つのストローク群グループ内のストローク群を連続で描画する。図３０（ｅ）に示すように、ストローク１、２、３、ストローク４，７、ストローク５，８、ストローク６，９の順に、描画順が整理された。図３０（ｅ）が、最終的なフォントデータに相当する。フォントデータ生成手段１１３はこのフォントデータをハードディスク３５又はメモリ３２に記憶させる。
【０１７１】
描画命令生成手段１１４は、図３０（ｅ）に基づき描画命令を生成する。描画命令生成手段１１４は、描画順に「ｍ」「ｄ」と座標を組み合わせて描画命令を生成する。図３０（ｆ）は、太文字の「イ」の描画命令の一例を示す。
【０１７２】
＜Ｓ１４０：レーザによる描画＞
かかる描画命令に従い、全体制御装置は文字を描画する。
Ｉ）全体制御装置は、座標（４８，４８）にて「５０」単位時間待機した後、座標（８０、４８）までレーザ光で描画する。
II)その後、座標（８０，４８）から座標（１１２，４８）まで、全体制御装置はレーザを照射せずに方向制御ミラーを駆動してレーザの照射位置を（１１２，４８）まで移動させ、「５０」単位時間待機した後、座標（１１２、４４８）までレーザ光で描画する。
III)その後、全体制御装置はレーザを照射せずに方向制御ミラーを駆動してレーザの照射位置を（８０，４００）までレーザを照射せずに移動し、座標（８０，４００）で「５０」単位時間待機した後、座標（４８、３５２）まで描画する。
IV)その後、全体制御装置はレーザを照射せずに方向制御ミラーを駆動してレーザの照射位置を、座標（１４４，４８）まで移動させ、座標（１４４，４８）で「５０」単位時間待機した後、座標（１７６、４８）まで描画する。
以上で図１１の処理が終了する。
【０１７３】
〔太文字の描画方法の適用例〕
平行ストローク発生手段１０５が発生させた平行ストロークから、ストローク除去手段１０７が、最も端の２つの平行ストロークのみを残して、除去することで、内部が塗りつぶされない太文字、又は、袋文字を描画することができる。
図３２は、内部が塗りつぶされた太文字と、内部が塗りつぶされていない太文字を示す図の一例である。図３２（ａ）では「３」という文字が３本の平行ストロークで太文字にされている。
【０１７４】
図３２（ａ）の「３」から、中心部の平行ストロークを削除し、外側だけ残すことにより、内部が塗りつぶされていない太文字が描画される 。「３」の中心部のように折れ線部の角度が深いと、重複を解消することに伴い塗りつぶされない空白部が生じるが、中心部のストロークを削除することで意匠性が向上する。
【０１７５】
また、図３２（ｂ）において、さらに他と接続しない平行ストロークの端部（点線部）に、平行ストロークとは垂直の方向のストロークを新たに発生させることで、輪郭のみからなる「袋文字」を描画することができる。例えば、平行ストローク発生手段１０５は、他と接続しない平行ストロークの端部から、太文字の太さ程度の距離内に別の、他と接続しない平行ストロークの端部を検出する。そして、それぞれの端部から重複しないように離れた位置に、平行ストロークの座標を決定することで、平行ストロークの端部に、平行ストロークとは垂直の方向のストロークを新たに発生させることができる。
【０１７６】
以上説明したように、本実施例のレーザ照射装置２００は、太文字のためにストロークを発生させ、さらに、レーザ光の太さを考慮して、重複又は断絶を解消するので、サーマルリライタブルメディア２０を過熱せずにかつ優れた美観の太文字を描画できる。
【０１７７】
なお、本実施例ではレーザで描画する場合を例に説明したが、熱風や冷風により描画してもよいし、電子線や放射線を用いてこれらに反応するメディアに描画してもよい。また、レーザは非接触で描画することができるが、プローブ（スタイラス）等を直接サーマルリライタブルメディアに接触させて描画してもよい。
【実施例２】
【０１７８】
実施例１では、レーザ照射装置が単体で文字を描画したが、レーザ照射装置をシステムとして実装してもよい。
図３３は、本実施例のレーザ照射システム３００のハードウェア構成図の一例を示す。図３３において図５と同一部には同一の符号を付しその説明は省略する。図５の全体制御装置１００が、図３３の制御装置３４０、及び、描画命令生成用ＰＣ３２０に対応している。基幹システム３３０と描画命令生成用ＰＣ３２０はネットワーク又は専用線で接続されており、描画命令生成用ＰＣ３２０と制御装置３４０はネットワーク又は専用線で接続されている。
【０１７９】
基幹システム３３０は、例えば、コンテナで搬送する商品を管理するシステムで、各サーマルリライタブルメディア２０に印刷する文字を、描画命令生成用ＰＣ３２０に指示する。指示には、商品名、日時情報、等、商品を管理するための描画対象データが含まれる。描画命令生成用ＰＣ３２０は、描画対象データを受信し、描画命令を生成する。描画命令の生成方法は実施例１と同様である。描画命令生成用ＰＣ３２０は、生成した描画命令を制御装置３４０に送信する。
【０１８０】
図３４は、本実施例のレーザ照射システム３００の機能ブロック図の一例を示す。図３４において図１０と同一部には同一の符号を付しその説明は省略する。図３４では、描画命令生成用ＰＣ３２０が、図１０の各機能を提供する。すなわち、描画命令を生成する機能を描画命令生成用ＰＣ３２０で行い、描画命令をレーザマーカ３１０に送信することになる。レーザマーカ３１０は描画命令を解釈し、方向制御ミラー１３を駆動したり、レーザ光のON/OFFを切り替えてサーマルリライタブルメディア２０に描画する。
【０１８１】
図３５は、描画命令生成用ＰＣ３２０のハードウェア構成図の一例を示す。図３５において図６と同一部には同一の符号を付しその説明は省略する。描画対象の元になるデータ(例えば描画したい文字の文字コード、文字の太さや大きさ、書体などの文字属性)は、基幹システム３３０からネットワーク装置１を介してハードディスク３５などに記憶されている。また、文字を描く際に必要なフォントデータは、予めCD-ROM３３から読み出され、ハードディスクに格納されている。
【０１８２】
ＣＰＵ３１は、記録媒体３８から上述した処理機能、手順を実現する文字描画プログラム４２を必要なデータとともに読み出し、処理の結果を、ネットワーク装置２を介してレーザマーカ３１０に送信する。必要に応じて処理結果をハードディスク３５に保存したり、ディスプレイ３７に出力したりすることもできる。
【０１８３】
本実施例によれば、描画命令生成用ＰＣ３２０とレーザマーカ３１０を別体にしたので、１つのレーザマーカ３１０に複数の描画命令生成用ＰＣ３２０を接続したり、描画命令生成用ＰＣ３２０だけを移動したり交換するなど、システムの柔軟性を向上できる。
【実施例３】
【０１８４】
実施例１、２では、文字の描画毎に、曲線を含む文字を直線化してから描画命令を生成した。しかし、フォントデータが曲線描画用のものであった場合（例えば、ベジェ曲線で表示されたスケラーブルフォントの場合）、ラスター処理して文字の形状が得られるまで座標が不明であり、その後、得られた曲線の文字を直線近似するため、処理負荷が大きい。
【０１８５】
そこで、本実施例では、描画命令を生成する・しないに関係なく、準備処理として、曲線を含む文字について曲線を直線に変換する準備処理を行うレーザ照射装置２００又はレーザ照射システム３００、について説明する。
【０１８６】
図３６は、準備処理の手順を示すフローチャート図の一例を示す。準備処理は曲線の直線化なので、図１０の直線近似手段１１１が実行する。
【０１８７】
直線近似手段１１１は、曲線ストロークフォント情報を取得する（Ｓ５０１）。曲線ストロークフォント情報は、ハードディスク３５に記憶されている。曲線ストロークフォント情報は、曲線を有する文字のフォントデータである。曲線を有する文字には、予め、曲線を有する旨の識別情報が与えられている。
【０１８８】
直線近似手段１１１は、曲線ストロークフォント情報が有する曲線を直線化する（Ｓ５０２）。直線化の方法は図２１で説明したとおりである。文字の大きさによって、同じストローク（曲線の）でも何本の直線により直線化されるかは異なるので、直線化は文字のサイズ毎に（例えば、５ミリ角、７ミリ角、１０ミリ角等）行っておくことが好ましい。
【０１８９】
直線化近似手段１１１は、準備処理を施したフォントデータを、例えばハードディスク３５に記憶する（Ｓ５０３）。直線近似手段１１１は、以上の処理を全ての曲線ストロークフォント情報に対し繰り返す。
【０１９０】
図３６の処理により直線近似が終了したことになるので、以降は図１１のステップＳ３０以下を各手段が実行する。処理負荷の大きい曲線の文字を直線化を予め終了させておくことで、描画命令の生成時間を短縮でき、描画が終了するまでの時間も短縮できる。
【実施例４】
【０１９１】
実施例３の準備処理だけでなく、実施例１と同じ手順でさらにフォントデータから重複を排除し描画順を最適化したフォントデータ（以下、最適化フォントデータという）を予め生成し、記憶しておくことができる。最適化フォントデータを予め用意しておくことで、最適化フォントデータから容易に描画命令を生成できる。したがって、描画時の処理負荷や描画完了時間を低減できる。
【０１９２】
図３７（ａ）は最適化フォントデータを生成するフォントデータ生成装置１７０の機能ブロック図の一例を示し、図３７（ｂ）はレーザ照射装置２００の機能ブロック図を示す。なお、図３７（ａ）において図１０と同一部には同一の符号を付しその説明は省略する。
【０１９３】
図３７（ａ）では、最適化フォントデータ生成手段１２３と最適化フォントデータ格納手段１２１を有し、図３７（ｂ）では最適化フォントデータ格納手段１２１を有する点で図１０と異なる。フォントデータ生成装置１７０は、全体制御装置１００と同様にコンピュータを実体とする。図３７（ａ）と図１０を比較すると明らかなように、最適化フォントデータの生成手順は実施例１と同様である。
【０１９４】
このうち、最適化フォントデータ生成手段１２３は、フォントデータ生成手段１１３と同様に、重複を解消した最適化フォントデータを最適化フォントデータ格納手段１２１に格納する。
【０１９５】
本実施例では、最適化フォントデータ格納手段１２１がハードディスク３５に実装されている。最適化フォントデータ格納手段１２１は、記憶媒体に記憶したりネットワークを介して配布可能である。最適化フォントデータ格納手段１２１には、最適化フォントデータが文字コードに対応づけて記憶されており、最適化フォントデータ取得手段１２２は、最適化フォントデータ格納手段１２１から文字コードに対応づけられた最適化フォントデータを読み出す。
【０１９６】
最適化フォントデータは、例えば、図２９（ｂ）、図３０（ｅ）である。最適化フォントデータは、そのフォントデータから直接（複雑な演算処理することなく）、描画命令を生成できるフォントデータであれば、図２９（ｂ）、図３０（ｅ）とフォーマットが異なっていてもよい。
【０１９７】
最適化フォントデータは線の太さにより異なるので、最適化フォントデータ生成手段１２３は、線の太さ毎に最適化フォントデータを生成し、ハードディスク３５に記憶する。また、線の太さに幅を設け、太さｔ１〜ｔ２、ｔ２〜ｔ３、…のように、最適化フォントデータを用意しておいてもよい。これにより、ハードディスク３５の容量を低減できる。なお、最適化フォントデータ格納手段１２１又は最適化フォントデータをサーバに登録しておき、描画の際にハードディスク３５にダウンロードしてもよい。
【０１９８】
同様に、ストロークフォントデータはスケーラブルフォントなので、文字の大きさによって最適化フォントデータが異なる。また、太文字と通常の太さの文字も、最適化フォントは異なる。このため、文字の大きさ、太さ、文字属性毎に、最適化フォントデータを用意しておくことが好適となる。
【０１９９】
最適化フォントデータが生成されていれば、描画命令生成手段１１４は、１文字ごとに最適化フォントデータを読み出し、図２９（ｄ）、３０（ｆ）の描画命令を生成する。描画命令生成手段１０７は、方向制御ミラー１３が完全停止するまでまって描画を安定させるための制御コードである「ｗ」を、ハードディスク３５又はレーザ照射部１６０から読み出す。そして、取得した文字の太さ「ｔ」と、「ｗ」を用いて描画命令を生成する。
【０２００】
〔動作手順〕
図３８（ａ）は最適化フォントデータの生成手順を、図３８（ｂ）は最適化フォントデータを用いた文字の描画手順をそれぞれ示す。
【０２０１】
最適化フォントデータの生成手順は、実施例１で説明した手順と同じである。すなわち、太さの情報と大きさの情報を設定し（Ｓ６０１）、対象文字コード取得手段１０１が対象となる文字の文字コードを取得する（Ｓ６０２）。太さや大きさの情報はユーザにより入力装置３６から入力され、文字コードは文字コード表に従い順番に読み出せばよい。
【０２０２】
そして、フォントデータ取得手段１０２が、文字コードに対応づけられたフォントデータを読み出す（Ｓ６０３）。直線近似手段１１１は、読み出した文字のフォントデータに曲線が含まれていれば、直線化を施す（Ｓ６０４）。
【０２０３】
次に、太さ情報取得手段１０３は、文字属性情報（Ｓ６０５）を取得する。
【０２０４】
そして、文字属性取得手段１０４は、属性が太文字か否かを判定する（Ｓ６０６）。属性が太文字の場合（Ｓ６０６のＹｅｓ）、平行ストローク発生手段１０５は平行ストロークを発生させ（Ｓ６０７）、平行ストローク長さ調整手段１０６は平行ストロークの長さを調整し（Ｓ６０８）、ストローク除去手段１０７は元のストロークを除去する（Ｓ６０９）。
【０２０５】
次に、重複ストローク算出手段１０８が重複ストロークを検出する（Ｓ６１０）。ついで、ストローク分割・短縮手段１０９がストロークを分割又は短縮する（Ｓ６１１）。
【０２０６】
そして、描画順整理手段１１０が描画順を整理する（Ｓ６１２）。そして、描画順に基づき、最適化フォントデータ生成手段１２３が、最適化フォントデータを生成し（Ｓ６１３）、最適化フォントデータ格納手段１２１に格納する（Ｓ６１４）。全ての文字を処理すると終了する（Ｓ６１５）。
【０２０７】
続いて、文字の描画手順について説明する。文字コード取得手段は、描画対象の文字の文字コードを取得する（Ｓ７０１）。また、最適化フォントデータ取得手段１２２は、文字の太さと大きさの情報を取得する（Ｓ７０２）。
【０２０８】
そして、最適化フォントデータ取得手段１２２は、文字コード、太さ、大きさに基づき最適化フォントデータ格納手段１２１を参照し、最適化フォントデータを読み出す（Ｓ７０３）。描画命令生成手段１１４は、最適化フォントデータから図２４（ｂ）のような描画命令を生成する（Ｓ７０４）。
【０２０９】
そして、描画対象の全ての文字の描画命令を生成したか否かを判定し（Ｓ７０５）、描画対象の全ての文字を処理するとレーザ照射部１６０によりサーマルリライタブルメディア２０に文字を描画する（Ｓ７０６）。
【０２１０】
本実施例のレーザ照射装置２００によれば、重複を排除し描画順を最適化した最適化フォントデータを予め記憶しておくことで、文字の描画時に処理負荷を低減し、描画時間を短縮することができる。
【符号の説明】
【０２１１】
１１        レーザ発振器
１２        方向制御モータ
１３        方向制御ミラー
１４        スポット径調整レンズ
１５        焦点距離調整レンズ
２０        サーマルリライタブルメディア
３８        ＣＤ−ＲＯＭ（記憶媒体）
４１        フォントデータＤＢ
４２        文字描画プログラム
１００      全体制御装置
１０１      対象文字コード取得手段
１０２      フォントデータ取得手段
１０３      太さ情報取得手段
１０４      文字属性取得手段
１０５      平行ストローク発生手段
１０６      平行ストローク長さ調整手段
１０７      ストローク除去手段
１０８      重複ストローク算出手段
１０９      ストローク分割・短縮手段
１１０      描画順整理手段
１１１      直線近似手段
１１２      パワー調整手段
１１３      フォントデータ生成手段
１１４      描画命令生成手段
１２１      最適化フォントデータ格納手段
１６０      レーザ照射部
２００      レーザ照射装置
１０８１    ストローク交点検出手段
１０８２    垂線算出手段
１０８３    垂線の足存在範囲算出手段
１０８４    距離算出手段
１０８５    距離比較手段
【先行技術文献】
【特許文献】
【０２１２】
【特許文献１】特開２００４−９００２６号公報
【特許文献２】特開２００４−３４１３７３号公報
【特許文献３】特開昭６１‐０６０１７７号公報
【特許文献４】特開平０８‐２７９０３８号公報
【特許文献５】特開平０９‐２７００１８号公報
【特許文献６】特開平０９‐３０５７７９号公報
【特許文献７】特開２００８‐０６２５０６号公報
【図１】
2010264691.tif 000003
【図２】
2010264691.tif 000004
【図３】
2010264691.tif 000005
【図４】
2010264691.tif 000006
【図５】
2010264691.tif 000007
【図６】
2010264691.tif 000008
【図７】
2010264691.tif 000009
【図８】
2010264691.tif 000010
【図９】
2010264691.tif 000011
【図１０】
2010264691.tif 000012
【図１１】
2010264691.tif 000013
【図１２】
2010264691.tif 000014
【図１３】
2010264691.tif 000015
【図１４】
2010264691.tif 000016
【図１５】
2010264691.tif 000017
【図１６】
2010264691.tif 000018
【図１７】
2010264691.tif 000019
【図１８】
2010264691.tif 000020
【図１９】
2010264691.tif 000021
【図２０】
2010264691.tif 000022
【図２１】
2010264691.tif 000023
【図２２】
2010264691.tif 000024
【図２３】
2010264691.tif 000025
【図２４】
2010264691.tif 000026
【図２５】
2010264691.tif 000027
【図２６】
2010264691.tif 000028
【図２７】
2010264691.tif 000029
【図２８】
2010264691.tif 000030
【図２９】
2010264691.tif 000031
【図３０】
2010264691.tif 000032
【図３１】
2010264691.tif 000033
【図３２】
2010264691.tif 000034
【図３３】
2010264691.tif 000035
【図３４】
2010264691.tif 000036
【図３５】
2010264691.tif 000037
【図３６】
2010264691.tif 000038
【図３７】
2010264691.tif 000039
【図３８】
2010264691.tif 000040