(57)【特許請求の範囲】
【請求項１】
伝達位置を変えながらエネルギーを断続的に伝達して媒体に可視情報を記録する装置を制御する制御装置であって、
文字、数字、記号等の線画が含む線分の描画情報を記憶する描画情報記憶手段と、
前記描画情報記憶手段から、描画対象となる線画の描画情報を取得する描画情報取得手
段と、
線画の太さを指定する太さ情報を取得する太さ情報取得手段と、
前記太さ情報、及び、描画すべき線画サイズに応じて変倍された前記描画情報に基づき、前記線分の太さを含めた描画範囲が互いに重なり合う、対の線分を検出する重複線分検出手段と、
前記描画範囲が互いに重なり合う１対の線分の少なくとも一方の線分を、重なり合わないように短縮又は分割する描画情報調整手段と、
を有することを特徴とする制御装置。
【請求項２】
前記重複線分検出手段は、
１対の線分の交点を検出する交点検出手段と、
１対の線分の端点から他方の線分への垂線を算出する垂線算出手段と、
垂線が他方の線分と交差するか否かを判定する垂線交差判定手段と、
１対の線分が交点を有する場合は交点から１対の線分までの距離がゼロであると検出し、
１対の線分の端点と他方の線分の端点との端点間の距離を検出し、及び、垂線が他方の線分と交差する場合、垂線の足の長さを検出する距離検出手段と、を有する、
ことを特徴する請求項１記載の制御装置。
【請求項３】
前記描画情報調整手段は、
予め定められた規則に基づき、前記描画範囲が互いに重なり合う１対の線分のうち、どちらの線分を短縮又は分割するかを判定する、
ことを特徴とする請求項１記載の制御装置。
【請求項４】
前記描画情報調整手段は、
前記描画範囲が互いに重なり合う１対の線分の端点の座標と太さ情報に基づき求めた、前記描画範囲の重複量から、分割又は短縮した場合の線分の短縮量を線分毎に算出し、
１対の線分のいずれかを分割又は短縮すると仮定した場合に、分割又は短縮することにより消失する線分がある場合、消失しない方の線分を分割又は短縮すると決定する、
ことを特徴とする請求項３記載の制御装置。
【請求項５】
前記描画情報調整手段は、
前記描画範囲が互いに重なり合う１対の線分の端点の座標と太さ情報に基づき求めた、
前記描画範囲の重複量から、分割又は短縮した場合の線分の短縮量を線分毎に算出し、短縮量の少ない方の線分を分割又は短縮すると決定する、
ことを特徴とする請求項３記載の制御装置。
【請求項６】
前記描画情報調整手段は、
前記描画範囲が互いに重なり合う１対の線分の端点の位置が互いに略一致する場合、
１対の線分のなす角があらかじめ定めた値より小さい場合にのみ、１対の線分の少なくとも一方の線分を、重なり合わないように短縮又は分割する、
ことを特徴とする請求項３記載の制御装置。
【請求項７】
前記エネルギーを継続して伝達することで描画される一筆部品の２つの端点の位置を、
該端点を含む線分の延長上に移動する一筆部品延長手段、
を有することを特徴とする請求項１記載の制御装置。
【請求項８】
前記一筆部品延長手段は、線分の前記太さ情報のおよそ半分程度の長さ、一筆部品の２つの端点の位置を移動する、
ことを特徴とする請求項７記載の制御装置。
【請求項９】
前記エネルギーを継続して伝達することで描画される一筆部品の描画順を決定する描画順整理手段、を有することを特徴とする請求項１記載の制御装置。
【請求項１０】
前記描画順整理手段は、
線分の端点の位置が略一致する線分同士をグループ化して一筆部品を生成し、各一筆部品の描画順、及び、一筆部品毎に描画する際の始点及び終点を決定する、
ことを特徴とする請求項９に記載の制御装置。
【請求項１１】
前記描画順整理手段は、
一筆部品の終点から所定距離内の、他の一筆部品の端点を抽出し、
該他の一筆部品の端点が終点の場合、該他の一筆部品の始点と終点を互いに入れ替える、
ことを特徴とする請求項１０記載の制御装置。
【請求項１２】
前記描画順整理手段は、
１つの線画の描画情報が含む一筆部品の数、及び、一筆部品毎の描画方向、の全ての組み合わせ毎に、
一筆部品の終点から、エネルギーを伝達することなく次に描画される一筆部品の始点までの移動距離の、該線画における合計を算出し、
移動距離の合計が最も小さい組み合わせを、該線画の一筆部品の描画順及び各一筆部品の描画方向に決定する、ことを特徴とする請求項１０記載の制御装置。
【請求項１３】
請求項１〜１２いずれか１項記載の制御装置と、
レーザを照射するレーザ発振器と、
レーザの照射方向を変える方向制御ミラーと、
方向制御ミラーを駆動する方向制御モータと、
を有することを特徴とするレーザ照射装置。
【請求項１４】
線画の描画情報を記憶した最適化フォントデータＤＢであって、
文字、数字、記号等の線画が含む線分の描画情報を記憶する描画情報記憶手段と、
前記描画情報記憶手段から、描画対象となる線画の描画情報を取得する描画情報取得手段と、
線画の太さを指定する太さ情報を取得する太さ情報取得手段と、
前記太さ情報、及び、描画すべき線画サイズに応じて変倍された前記描画情報に基づき、前記線分の太さを含めた描画範囲が互いに重なり合う、対の線分を検出する重複線分検出手段と、
前記描画範囲が互いに重なり合う１対の線分の少なくとも一方の線分を、重なり合わないように短縮又は分割する描画情報調整手段と、を有する情報処理装置が生成した、
重複が解消された線画の最適化描画情報を記憶していることを特徴とする、
最適化フォントデータＤＢ。
【請求項１５】
伝達位置を変えながらエネルギーを断続的に伝達して媒体に可視情報を記録する記録方法であって、
描画情報取得手段が、文字、数字、記号等の線画が含む線分の描画情報を記憶する描画情報記憶手段から、描画対象となる線画の描画情報を取得するステップと、
太さ情報取得手段が、線画の太さを指定する太さ情報を取得するステップと、
重複線分検出手段が、前記太さ情報、及び、描画すべき線画サイズに応じて変倍された前記描画情報に基づき、前記線分の太さを含めた描画範囲が互いに重なり合う、対の線分を検出するステップと、
描画情報調整手段が、前記描画範囲が互いに重なり合う１対の線分の少なくとも一方の線分を、重なり合わないように短縮又は分割するステップと、
を有することを特徴とする記録方法。
【請求項１６】
前記媒体は、前記可視情報の消去及び再記録が可能なリライタブル媒体である、
ことを特徴とする請求項１５記載の記録方法。
【請求項１７】
コンピュータに、
文字、数字、記号等の線画が含む線分の描画情報を記憶する描画情報記憶手段から、描画対象となる線画の描画情報を取得するステップと、
線画の太さを指定する太さ情報を取得するステップと、
前記太さ情報、及び、描画すべき線画サイズに応じて変倍された前記描画情報に基づき、前記線分の太さを含めた描画範囲が互いに重なり合う、対の線分を検出するステップと、
前記描画範囲が互いに重なり合う１対の線分の少なくとも一方の線分を、重なり合わないように短縮又は分割するステップと、
を実行させることを特徴とするプログラム。
【請求項１８】
請求項１７記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字などの線画を非接触又は接触に描画する装置の制御装置等に関し、特に、情報の記録、消去を繰り返し行っても、記録材料の記録面へ与える損傷が少ない制御装置、レーザ照射装置、最適化フォントデータＤＢ、記録方法、プログラム及び記憶媒体に関するものである。
【背景技術】
【０００２】
対象物にレーザ光を照射して対象物がレーザ光を吸収して加熱されることで、対象物に文字や記号を書き込む技術を活用したレーザ照射装置（レーザマーカー）が市販されている。
レーザ照射装置のレーザ光源にはガスレーザ、固体レーザ、液体レーザ、半導体レーザ等を用いて、レーザ光の発振波長により、対象物を金属、プラスチック、感熱紙、サーマルリライタブル媒体等に書き込むことが出来る。
金属やプラスチックは、レーザ光を照射して加熱することで削ったり、焦がしたりすることで対象物に印字を行う。一方、感熱紙、サーマルリライタブル媒体では、レーザ光照射による加熱で記録層が発色することで印字を行う。
物品のあて先や物品名を印字する媒体に感熱紙を用いられることがある。例えば工場で使われるプラスチック製のコンテナにはこのような感熱型の媒体が貼付されている。感熱紙の媒体は、熱により変色する性質をもっており、熱ヘッド等を利用して文字や記号を書き込むことができる。
【０００３】
そして、このような感熱紙でも書き込み、消去を繰り返し行えるリライタブルタイプのものが登場してきた。物流で利用する際には、コンテナに媒体を貼ったまま書き込み、消去ができることが望ましいため、非接触でレーザ光を媒体に照射して発熱させることで文字等を描く方法が提案されている（例えば、特許文献１参照。）。特許文献１には、フレキシブルジョイントにより構成された複数のレンズ系の一端から入射したレーザ光による画像を他端まで伝達するリレーレンズ系が記載されている。
【０００４】
なお、レーザによる画像形成は従来から知られており（例えば、特許文献２参照。）、特許文献２には、１つの原画像データを複数のラインに分割して、ライン毎に感光ドラムにレーザを照射する画像形成方法が記載されている。
【０００５】
ところで、このサーマルリライタブル媒体は、ある温度の熱で発色が消去され、さらに高熱をかけると発色する性質を持っている。しかし、過大な熱負荷を加えるとサーマルリライタブル媒体が変質し、媒体の寿命が短くなったり、消去が完全に行えなくなったりするなどの劣化が現れやすくなる。
【０００６】
ここでサーマルリライタブル媒体に文字を描画することを考える。文字のストロークをレーザでなぞることで発熱し文字が媒体上に浮き上がる。図１は、サーマルリライタブル媒体にレーザで描画された文字の一例を示す。図1の文字は例えば数字の「７」を変形したものであるが、交点２１０でストロークが交差している。ストローク同士が交差していると、直前に描いたストロークの余熱があるうちに、再度レーザがあたることになり、結果として交点２１０がより高熱になってしまうため、サーマルリライタブル媒体に悪影響が出てしまう。
【０００７】
また、交点がなくても数字の「７」では折り返し部分２２０が存在するが、レーザの照射方向を制御するミラーの慣性の影響により、折り返し部分２２０では比較的長時間折り返し点付近にレーザが照射されるのでやはり高熱になってしまい、サーマルリライタブル媒体に悪影響をもたらす。
【０００８】
そこで、レーザを重複して照射することを回避する技術が提案されている（例えば、特許文献３，４，５参照。）。特許文献３には、レーザで描画するに際し、線が重複する箇所は、前に描いた線を通り越してから次の線を描くようにレーザを走査する記録方法が開示されている。特許文献４には、レーザの描画線が交差する場合に、交差する描画点に照射されるレーザのパワー及び照射時間の少なくとも一方を少なくするように制御する記録消去装置が開示されている。特許文献５には、文字などの描画線が重なる部分では、一方の描画線ではレーザ光を照射しない交点除去の記録方法が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献３、４、５には、重複箇所や折り返し部分の具体的な検出方法が記載されていない。また、レーザ光は点ではなくある程度の幅を持ってレベルに文字等を印字するため、ストロークも有限の太さを持っている。このため、レーザの太さによってストロークが重複するか否かが影響される。図２は、ストロークの太さにより影響されるストロークの重複の一例を示す図である。図２（ａ）（ｂ）はいずれも「にんべん」でありストロークを構成する座標点は同じであるが、図２（ａ）は太さが細く図２（ｂ）は太さが太い。図２（ｂ）ではストロークが太いため、重複点２３０が生じている。また図２（ｃ）は文字の大きさにより重複度合いが変化することを示す図である。従来技術は重複を防ぐために前に描いた線を通り越しているが、どの程度通り越すかは文字の大きさを考慮することなく予め決定されている。その場合、このデータを元に異なる大きさの文字を同じストローク太さで描く場合は、文字サイズが拡大すると通り越す長さが変倍されて大きくなるのに対して、ストロークの太さが一定であるために隙間が開くことになる。逆に、文字サイズを縮小すると、通り越す長さが変倍されて小さくなるのにストロークの太さが一定であるので重複が残存することになる。レーザ光による描画線は幅を持つため、特許文献２、３、５の技術では、文字のサイズ、線幅により、交点だけでなく折り返し点やその他の部位で、ストロークの隙間、重複を十分に回避できないという問題がある。
【００１０】
上記課題に鑑み、本発明は、ストロークの太さ、文字の大きさを考慮して、ストロークの隙間や重複による過大な熱が加わることによる媒体への影響を抑制することができる制御装置、レーザ照射装置、最適化フォントデータＤＢ、記録方法、プログラム及び記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【００１１】
伝達位置を変えながらエネルギーを断続的に伝達して媒体に可視情報を記録する装置を制御する制御装置であって、文字、数字、記号等の線画が含む線分の描画情報を記憶する描画情報記憶手段と、前記描画情報記憶手段から、描画対象となる線画の描画情報を取得する描画情報取得手段と、線画の太さを指定する太さ情報を取得する太さ情報取得手段と、前記太さ情報、及び、描画すべき線画サイズに応じて変倍された前記描画情報に基づき、前記線分の太さを含めた描画範囲が互いに重なり合う、対の線分を検出する重複線分検出手段と、描画範囲が互いに重なり合う１対の線分の少なくとも一方の線分を、重なり合わないように短縮又は分割する描画情報調整手段と、を有することを特徴とする。
【００１２】
本発明によれば、描画範囲が互いに重なり合う１対の線分の少なくとも一方の線分を、重なり合わないように短縮又は分割することで、文字サイズ、線幅に依存せず、隙間が開いたり、ストロークが重複することを抑制出来る。
ストロークの重複により、交点、重複点、折り返し点で過剰な熱で線が太くなることを防ぐことで文字潰れを抑制出来、また、隙間が空くことで文字品質が低下することを防ぐことが出来る。
更に、リライタブル媒体では、ストロークの重複を防ぐことで、交点、重複点、折り返し点で過剰な熱が加わることを防ぎ、繰返し書き換えによる劣化での消え残り（消去しても消えない）や発色部の濃度低下を抑制することが出来る。
【発明の効果】
【００１３】
ストロークの太さを考慮して過大な熱による媒体への影響を抑制することができる制御装置、レーザ照射装置、最適化フォントデータＤＢ、記録方法、プログラム及び記憶媒体を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】サーマルリライタブル媒体にレーザで描画された文字の一例を示す図である。
【図２】ストロークの太さ、文字のサイズにより影響されるストロークの重複の一例を示す図である。
【図３】描画制御装置により描画される文字の一例を示す図である。
【図４】レーザ照射装置のハードウェア構成図の一例である。
【図５】レーザ光により描画した例の一例を示す図である。
【図６】全体制御装置のハードウェア構成図の一例である。
【図７】従来のレーザ照射装置の機能ブロック図の一例である。
【図８】従来のレーザによるストロークフォントの描画手順を示すフローチャート図の一例である。
【図９】フォントデータの一例を示す図である。
【図１０】レーザ照射装置の機能ブロック図の一例である。
【図１１】重複ストローク算出手段の機能をより詳細に説明する図の一例である。
【図１２】円形状の文字を直線に変換する手順を模式的に示す図の一例である。
【図１３】線分同士の最短距離の検出を模式的に説明する図の一例である。
【図１４】分割・短縮される線分を模式的に説明する図の一例である。
【図１５】分割・短縮される線分の別の例を模式的に説明する図の一例である。
【図１６】分割・短縮した場合としない場合の線分の例を模式的に説明する図の一例である。
【図１７】描画順の最適化を模式的に説明する図の一例である。
【図１８】線分グループの描画順の決定を模式的に説明する図の一例である。
【図１９】重複が排除された文字の描画例とその描画命令の一例を示す図である。
【図２０】レーザを用いてリライタブル媒体に描画する手順を示すフローチャート図の一例である。
【図２１】重複した線分を検出する手順を示すフローチャート図の一例である。
【図２２】描画順整理の前半部の流れを示すフローチャート図の一例である。
【図２３】描画順整理の後半部の流れを示すフローチャート図の一例である。
【図２４】描画を行わずにただ描画対象位置が動く際の距離の合計から、描画順を決定する手順を示すフローチャート図の一例である。
【図２５】レーザ照射装置の機能ブロック図の一例である（実施例２）。
【図２６】最適化フォントデータの一例と、最適化フォントデータから生成される描画命令の一例を、それぞれ示す図である。
【図２７】最適化フォントデータの生成手順と、最適化フォントデータを用いた文字の描画手順をそれぞれ示すフローチャート図の一例である。
【図２８】線分の端点の発色について説明する図の一例である。
【図２９】レーザ照射装置の機能ブロック図の一例である（実施例３）。
【図３０】端点の延長手順を含む描画命令生成処理のフローチャート図の一例である。
【図３１】「Ｙ」という文字に対し、一部の線分の短縮結果の一例を示す図である。
【図３２】一筆部品において延長されない線分を説明する図の一例である。
【図３３】延長により重複が生じた文字の一例を示す図である。
【図３４】アウトラインフォントのフォントデータからそのまま描画した「ま」という文字の一例を示す図である。
【図３５】レーザ照射装置の機能ブロック図の一例である（実施例４）。
【図３６】直線近似の手順を示す図の一例である。
【図３７】内部を塗りつぶされた袋文字、及び、白黒反転文字の一例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明を実施するための最良の形態について図面を参照しながら実施例を挙げて説明する。
【００１６】
なお、以下では、遍（へん）や旁（つくり）、又は、更にその一部など文字の一部を区別せずに文字という。また、レーザの１回の照射開始点から終了点までにより描画される文字の一画を一筆部品という。したがって、文字は１以上の一筆部品から構成される。なお、後述するように一筆部品は１以上の線分から構成される。
【００１７】
本実施形態の一筆部品（一画）は従来のストロークフォントのストロークに対応するが、本実施形態の一筆部品は、レーザ照射装置２００による文字の描画に最適化されてものであって、公的機関（例えば、日本規格協会、ＩＳＯ等）等が定める一画と同じであってもよいし異なっていてもよい。本実施形態のレーザ照射装置２００は、レーザ光により媒体を発色させて一筆部品を描画するため、一筆部品を適切な形状に調整する。
【００１８】
図３は、本実施形態のレーザ照射装置２００により描画される文字の一例を示す。図３（ａ）のように交点２１０が生じる文字の場合、レーザ照射装置２００は交点２１０が生じないよう一方の一筆部品を分割する。図３（ａ）では縦の一筆部品１１０を一筆部品１１０ａと１１０ｂに分割することで、交点２１０を解消している。
【００１９】
図３（ｂ）のように文字の太さのため重複点２３０が生じる文字の場合は、レーザ照射装置２００は重複点２３０が生じないよう一筆部品１３０を分割するか、一筆部品１４０を短縮する。図３（ｂ）では一筆部品１４０を一筆部品１４１に短縮することで、重複点２３０を解消している。
【００２０】
図３（ｃ）のように折り返しのため折り返し点２２０と複数の折り返し点２２１が存在する文字の場合、２通りの対応が考えられる。１つは折り返し点２２０と２２１を全て解消して図３（ｃ）の右上のように一筆部品１５０から一筆部品１５１と複数の一筆部品１５２を形成する方法である。もう１つは、折り返し点２２０、２２１の折り返し角度を考慮して、図３（ｃ）の右下のように、折り返し角度が浅い折り返し点２２１ついては重複を解消しない文字の形成方法である。折り返し角度が浅い場合、リライタブル媒体２０の劣化は大きくないので、このように文字を構成することで文字の美観を維持しやすくできる。
【００２１】
以下では、交差、重複、折り返しを区別しない場合、単に文字（又は一筆部品）の重複と表現する。本実施形態のレーザ照射装置２００は、このように文字の太さを考慮して、あらゆる形状の文字に生じうる重複を適切に抑制することができる。
【実施例１】
【００２２】
図４は、本実施形態のレーザ照射装置２００のハードウェア構成図の一例を示す。レーザ照射装置２００は、全体を制御する全体制御装置１００と、レーザを照射するレーザ照射部１６０とを有する。また、レーザ照射部１６０は、レーザを照射するレーザ発振器１１と、レーザの照射方向を変える方向制御ミラー１３と、方向制御ミラー１３を駆動する方向制御モータ１２と、光学レンズ１４と、集光レンズ１５と、を有する。
【００２３】
レーザ発振器１１は、半導体レーザ（LD（Laser  Diode））であるが、気体レーザ、固体レーザ、液体レーザ等でもよい。方向制御モータ１２は、方向制御ミラー１３の反射面の向きを２軸に制御する例えばサーボモータである。方向制御モータ１２と方向制御ミラー１３とによりガルバノミラーを構成する。光学レンズ１４は、レーザ光のスポット径を大きくするレンズであり、集光レンズ１５はレーザ光を収束させるレンズである。
【００２４】
リライタブル媒体２０は、１８０℃以上の温度に加熱して急冷することで発色し、１３０〜１７０℃の温度に加熱することで消色する書き換え可能な感熱媒体である。通常の感熱紙やサーマルリライタブル媒体は近赤外領域のレーザ光を吸収しないので、近赤外レーザ波長を発振するレーザ光源（半導体レーザや固体レーザのＹＡＧなど）を用いる場合は、感熱紙、サーマルリライタブル媒体にレーザ光を吸収する材料の添加や層を追加する必要がある。
本実施形態では、文字サイズ、線幅に依存せず、隙間が開いたり、ストロークが重複することを抑制出来る。書き換え可能なリライタブル媒体２０では、ストロークの重複により、交点、重複点、折り返し点で過剰な熱で線が太くなる現象を防ぐことで文字潰れを抑制出来、また、隙間が空くことで文字品質が低下することを防ぐことが出来、また、ストロークの重複を防ぐことで、交点、重複点、折り返し点で過剰な熱が加わることを防ぎ、繰返し書き換えによる劣化での消え残り（消去しても消えない）や発色部の濃度低下を抑制することが出来る。書き換えとは、レーザ光で加熱して記録を行い、レーザ光又は温風、ホットスタンプ等で加熱して消去することである。
また、本実施形態では、サーマルペーパ、プラスチック、金属等のように書き換えが可能でない媒体に対しても、ストロークの重複により、交点、重複点、折り返し点で過剰な熱で線が太くなる現象を防ぐことで文字潰れを抑制出来、また、隙間が空くことで文字品質が低下することを防ぐことが出来、好適に適用できる。
なお、書き換えができないサーマルペーパとは、加熱により消色が困難な感熱紙をいう。
【００２５】
図５を用いて具体例を説明する。図５はレーザ光により描画した例の一例を示す図である。
【００２６】
図５（ａ）は、交差した２本の線分の一例を示す。正方形で示した交差部分２１０は、短い時間で２度レーザ光が照射されるため他の部分より高温になる。高温になった交差部２１０の周りも発色に必要な温度に到達するため、図の斜線で示した部分２１０ａ〜２１０ｄも発色してしまう。そのため、交差部分２１０が不明瞭になり、文字が小さい場合は、線との間の本来あるべき隙間（印字されていない部分）がなくなり、文字が潰れてしまう。
【００２７】
また、図５(ｂ)は２本の線分を連続して描いた例である。方向変化が急であるため、折り返し部２２０が高温になることは既に説明した通りである。しかし、折り返し部２２０にレーザ光が長時間照射されることになり、高温になった折り返し部２２０の周りも発色に必要な温度に到達するため、図の斜線で示した部分２２０ａも発色してしまう。このため、文字の輪郭が崩れ、周囲の斜線部２２０ａが玉のような形状になってしまう。
【００２８】
図５（ａ）（ｂ）のような現象は、書き換えできないサーマルペーパ、プラスチック、金属などにおいても発生しうる。本実施形態のレーザ照射装置２００は、交差部２１０や急角度での折れ曲がり部２２０を解消することで、こういった周囲の加熱も防ぐことができるので、リライタブル媒体２０でない書き換えできないサーマルペーパ、プラスチック、金属などにおいても、図５（a）（b）で示すような現象が発生せず、また、図２（ｃ）で文字サイズを拡大したときに発生する隙間を抑制出来、結果として文字等の描画品質を向上させることができる。
【００２９】
図４に戻り、レーザ発振器１１で発生したレーザ光は、光学レンズ１４を通過してスポット径が拡大される。そして、ガルバノミラーにより文字の形状に応じた方向に進行方向が調整された後、集光レンズ１５により所定の焦点距離に集光され、リライタブル媒体２０に照射される。レーザ光が照射されるとリライタブル媒体２０が熱を持ち、その熱で発色して文字などを描画できることになる。なお、消去パワーは抑制されている。
【００３０】
照射位置の調整は、全体制御装置１００が方向制御モータ１２を駆動して方向制御ミラー１３を動かすことで行う。レーザのＯＮ、ＯＦＦやパワーは全体制御装置１００がレーザ発振器１１を制御して行う。照射パワーの制御や光学レンズ１４、集光レンズ１５のレンズ位置又は焦点距離、リライタブル媒体の位置を調整することで、描画する線分の線幅を変化させることもできる。
【００３１】
図６は、全体制御装置１００のハードウェア構成図の一例を示す。図６は、主にソフトウェアによって全体制御装置１００を実装する場合のハードウェア構成図であり、コンピュータを実体としている。コンピュータを実体とせず全体制御措置１００を実現する場合、ＡＳＩＣ（（Application Specific Integrated Circuit））等の特定機能向けに生成されたＩＣを利用する。
【００３２】
全体制御装置１００は、ＣＰＵ３１、メモリ３２、ハードディスク３５、入力装置３６、ＣＤ−ＲＯＭドライブ３３、ディスプレイ３７及びネットワーク装置３４を有する。ハードディスク３５には、ストロークフォントの一連の文字のフォントデータを記憶するフォントデータＤＢ４１、フォントデータから重複を排除した描画命令を生成しレーザ照射部１６０を制御する文字描画プログラム４２が記憶されている。
【００３３】
ＣＰＵ３１は、ハードディスク３５から文字描画プログラム４２を読み出し実行し、後述する手順で、リライタブル媒体２０に文字を描画する。メモリ３２は、ＤＲＡＭなどの揮発性メモリで、ＣＰＵ３１が文字描画プログラム４２を実行する際の作業エリアとなる。入力装置３６は、マウスやキーボードなどレーザ照射部１６０を制御する指示をユーザが入力するための装置である。ディスプレイ３７は、例えば文字描画プログラム４２が指示する画面情報に基づき所定の解像度や色数で、ＧＵＩ（Graphical User Interface）画面を表示するユーザインターフェイスとなる。例えば、リライタブル媒体２０に描画する文字の入力欄が表示される。
【００３４】
ＣＤ−ＲＯＭドライブ３３は、ＣＤ-ＲＯＭ３８を脱着可能に構成され、ＣＤ−ＲＯＭ３８からデータを読み出し、また、記録可能な記録媒体にデータを書き込む際に利用される。文字描画プログラム４２及びフォントデータＤＢ４１は、ＣＤ-ＲＯＭ３８に記憶された状態で配布され、ＣＤ-ＲＯＭ３８から読み出されハードディスク３５にインストールされる。ＣＤ−ＲＯＭ３８は、この他、ＤＶＤ、ブルーレイディスク、ＳＤカード、メモリースティック（登録商標）、マルチメディアカード、ｘＤカード等、不揮発性のメモリで代用することができる。
【００３５】
ネットワーク装置３４は、ＬＡＮやインターネットなどのネットワークに接続するためのインターフェイス（例えばイーサネット（登録商標）カード）であり、OSI基本参照モデルの物理層、データリンク層に規定されたプロトコルに従う処理を実行して、レーザ照射部１６０に文字コードに応じた描画命令を送信することを可能とする。文字描画プログラム４２及びフォントデータＤＢ４１は、ネットワークを介して接続した所定のサーバからダウンロードすることができる。なお、ネットワーク経由でなく、ＵＳＢ（Universal Serial Bus）、ＩＥＥＥ１３９４、ワイヤレスＵＳＢ、Ｂｌｕｅｔｏｏｔｈ等で直接、全体制御装置１００とレーザ照射部１６０を接続してもよい。
【００３６】
リライタブル媒体２０に描画される描画対象の文字は、例えばリスト状にハードディスク３５に記憶されているか、入力装置３６から入力される。文字は、ＵＮＩＣＯＤＥやＪＩＳコードなどの文字コードで特定され、全体制御装置１００は文字コードに対応する文字のフォントデータをフォントデータＤＢ４１から読み出し、それを描画命令に変換することでレーザ照射部１６０を制御する。
【００３７】
〔従来の描画〕
図７は、従来のレーザ照射装置２００の機能ブロック図の一例を示す。各ブロックをソフトウェアで実現する場合、各ブロックはＣＰＵ３１が文字描画プログラム４２を実行することで実現される。
【００３８】
まず従来の、レーザによるストロークフォントの描画について、図８のフローチャート図に基づき説明する。まず、対象文字コード取得手段１０１は、描画対象の文字の文字コードを取得する（Ｓ１０００）。
【００３９】
描画対象の文字の文字コードは、入力装置３６から入力される場合と、予めハードディスク３５に記憶されている場合（ネットワーク経由で入力される場合を含む）とがある。
入力装置３６から入力される場合はキーボードのキーを押下することで入力されるキーコードに対応した文字コード、又は、ＩＭＥ（Input Method Editor）が起動している場合にキーコードからＩＭＥが変換した文字コードが対象文字コード取得手段１０１に入力される。また、ハードディスク３５に予め記憶されている場合、例えば宛先などの文字列がリスト状に記憶されているので、文字列の文字を指定する文字コードが読み出され、対象文字コード取得手段１０１に入力される。
【００４０】
ついで、フォントデータ取得手段１０２は、文字コードに基づきフォントデータＤＢ４１を参照し、文字コードに対応づけられたフォントデータを読み出す（Ｓ２０００）。
【００４１】
図９（ａ）はフォントデータの一例を示す。図９（ａ）のフォントデータは「１」という文字のフォントデータであり、線分（直線又は曲線のいずれでもよい）で定義される文字の例である。フォントデータは線分の端点の座標、及び、描画順を有する。この座標は、文字をビットマップに配置した場合のビットマップの所定画素を原点に指定されている。
【００４２】
ストロークフォントをレーザなどで描画する場合、座標だけではレーザを照射しながら移動するのか、レーザを照射しないで移動するのかを判別できない。このため、ストロークフォントのフォントデータには、レーザの描画開始位置（人間が書くとすると筆をおろす位置）と移動命令、レーザの描画終了位置（人間が書くとすると筆を上げる位置）と移動命令が含まれている。図９（ａ）では、「ｍ」がレーザの描画開始位置とその座標までの移動命令を、「ｄ」が描画終了位置とその座標までの移動命令をそれぞれ示す。したがって、「ｍ」は筆を上げて移動すること、「ｄ」は筆を下ろして移動すること、を意味する。このように、フォントデータは、座標による文字の形状、描画の順番、描画の方向（図では矢印を有する線分）を規定し、「ｍ」「ｄ」によりレーザ照射の有無を規定する。すなわち、一以上の連続した「ｄ」に対応づけられた座標により表される直線が一筆部品である。
【００４３】
したがって、図示するフォントデータの場合、座標（２４，２４）から座標（８８、２４）まで線分が描かれ、座標（８８，２４）から座標（５６、２４）までは線分を描かずに移動し、座標（５６、２４）から座標（５６、２２４）まで線分が描かれ、座標（５６、２２４）から座標（２４、１７６）まで線分が描かれる。
【００４４】
一方、描画される文字の形状は、線分を指定する２点の座標が線分の数だけあれば特定できることになる。図９（ｂ）は描画される文字を構成する各線分の座標の一例を示す。
後述するように本実施形態では、この描画される線分の座標と文字の太さから、重複の有無を判定する。
【００４５】
なお、図９（ｂ）では、フォントデータに基づき文字の大きさ２倍に拡大した。ストロークフォントは、アウトラインフォントようにスケーラブルフォントの一種なので、例えばリライタブル媒体２０に描画する際の文字の大きさを指定できるようになっている。
【００４６】
ストロークフォントの文字の大きさの調整方法はいくつか知られているが、ここでは説明のため単にフォントデータの座標をそれぞれ２倍にした。例えば文字の中心からの距離に応じて線分の座標を調整してもよい。
【００４７】
「１」のように３本の直線で描画される文字の場合、線分の座標は３対となる。[  ]で囲まれた数字は描画の順番であり、続く４つの数字のうち最初の２点は線分の始点を、後ろの２点は線分の終点を表す。
【００４８】
次いで、図８に戻り、太さ情報取得手段１０３はフォントデータの太さの情報を取得する（Ｓ３０００）。太さの情報は、フォントデータＤＢ４１に登録されているか、ユーザが入力装置３６から入力する。文字の太さはレーザがリライタブル媒体２０に照射される際の径に依存するので、太さの情報により、レーザ発振器１１の出力や光学レンズ１４、集光レンズ１５のレンズ位置又は焦点距離やリライタブル媒体２０の位置が制御される。
【００４９】
ついで、描画命令生成手段１０７は、フォントデータに基づき描画命令を生成する（Ｓ４０００）。描画命令については後述するが、文字の太さ、筆をおろして移動する２点の座標、及び、筆を上げて移動する２点の座標等を含む。
【００５０】
レーザ照射部１６０は、描画命令を受け取ると、太さの情報に基づきレーザ発振器１１の出力や光学レンズ１４、集光レンズ１５の焦点距離やリライタブル媒体２０の位置を必要に応じて調整し、リライタブル媒体２０の指定された座標から座標までレーザ光を照射する（Ｓ５０００）。これにより、発熱によりリライタブル媒体２０が発色して文字が描画される。
【００５１】
図９（ｃ）は、レーザ用フォントデータにより描画された文字の一例を示す。ここではまだ重複を排除していない。線分９１〜９３がレーザ光の中心が通過した軌跡に対応し、矢印の向きが描画の方向を示す。また、文字中に記された数字は、各線分９１〜９３の描画の順番である。レーザ光の照射パワーや光学レンズ１４、集光レンズ１５のレンズ位置又は焦点距離やリライタブル媒体２０の位置に応じてえられた太さの文字「１」が描画されている。
【００５２】
〔本実施形態の描画〕
図１０は、本実施形態のレーザ照射装置２００の機能ブロック図の一例を示す。各ブロックをソフトウェアで実現する場合、各ブロックはＣＰＵ３１が文字描画プログラム４２を実行することで実現される。図１０において、図７と同一部には同一の符号を付しその説明は省略する。図１０のレーザ照射装置２００は、重複ストローク算出手段１０４、ストローク分割・短縮手段１０５及び描画順整理手段１０６、を有する。
【００５３】
〔重複の判定〕
本実施形態の描画について説明する。重複ストローク算出手段１０４は、フォントデータに基づき、線分の位置と線の太さに起因して重複する可能性のある線分を検出する。
【００５４】
まず、重複の判定について説明する。図１１は、重複ストローク算出手段１０４の機能をより詳細に説明する図の一例である。線分検出手段１１１は、フォントデータに基づき図９（ｂ）の如く線分の座標を決定する。この線分の座標から、文字に重複が生じるか否かが判定される。
【００５５】
ところで、数字の「１」のように、文字が全て直線で形成されている場合、線分の座標を容易に抽出することができる。しかしながら、アウトラインフォントでは曲線をスケーラブルに描画できるように、例えばベジェ曲線のような曲線で描画できるようになっている。曲線で描画されていると、線分間の距離の算出が複雑になるので、曲線を含む文字であっても直線に変換して描画することが好適になる。
【００５６】
そこで、線分検出手段１１１は、フォントデータが曲線を含む場合、曲線部分を直線に変換し、各直線の線分の座標を検出する。なお、文字が曲線を含む場合、フォントデータには曲線制御用のデータが含まれているので、その文字が曲線を含むか否かはフォントデータから判定される。
【００５７】
図１２（ａ）は、円形状の文字から生成される線分を模式的に示す図の一例である。始点の座標（Ａ，Ｂ）と終点の座標（Ｃ，Ｄ）に曲線制御が施され、円形状の一筆部品３１０が得られる。このような文字の場合、線分検出手段１１１は、所定距離ｓ毎に一筆部品３１０の線分の座標を検出する。描画される線分の座標は、スケールを調整した後の座標である（2倍なら2倍した後）。
【００５８】
線分検出手段１１１は、微少間隔毎に距離を蓄積し、距離ｓ毎にその座標を取得する。図１２（ａ）では、５つの座標が得られている。この座標を元に、図９（ｂ）のような描画される線分の座標を決定する。図１２（ｂ）は、曲線を直線に変換した後の、線分の座標の一例を示す。
【００５９】
図１１に戻り、距離算出手段１１５は、線分同士の最短距離を求める。最短距離の求め方は次の手順に従う。
・線分同士に交点がある場合、距離はゼロ
・交点がない場合は、
- １対の線分の端点間距離
- 一方の線分の端点から他方の線分に下ろした垂線の足までの距離（垂線が設定できる場合）のいずれかにより距離を求める。すなわち、交点がない場合は、２つの方法でそれぞれ距離を求め、最も短い距離により重複の有無を判定する。
【００６０】
図１３は、線分同士の最短距離の検出を模式的に説明する図の一例である。図１３（ａ）は交点のある２つの線分の一例を示す。交点は、２つの線分を直線の方程式で表し、その連立方程式を解くことで、求めることができる。
【００６１】
ｙ＝ａ１ｘ＋ｂ１
ｙ＝ａ２ｘ＋ｂ２
の場合、交点を（ｘｐ，ｙｐ）とすると、
（ｘｐ,ｙｐ）＝（  （ｂ２−ｂ１）／（ａ１−ａ２），ａ１ｘｐ＋ｂ１  ）
２つの直線は平行でない限り交点が得られるが、本実施形態では交点（ｘｐ,ｙｐ）が線分内に含まれる場合にのみ、交点があると判定する。
【００６２】
図１３（ｂ）は、一方の線分の端点から降ろした垂線の足の長さの算出を模式的に説明する図の一例である。図１１の垂線算出手段１１３は、図示するような垂線を算出する。垂線は、他方の線分に直交する線分で、一方の線分の端点を通る線分である。したがって、垂線算出手段１１３は、まず、他方の線分に直交する傾きの直線であって、一方の線分の端点を通過する垂線の式を算出する。
【００６３】
ｙ＝ｃｘ＋ｄ
この直線が他方の線分と交差すれば、一方の線分の端点から他方の線分に垂線を降ろすことができることになる。図１３（ａ）と同様に、垂線の足存在範囲算出手段１１４は、例えば垂線と他方の線分の交差する点を求め、それが線分内であれば垂線が引けたと判定する。この場合、距離算出手段１１５は、一方の線分の２つの端点から、他方の線分まで降ろした垂線の足の長さを算出する。これは端点と交点までの距離として求めることができる。
【００６４】
２つの線分の関係によっては、垂線を引くことができない場合がある。図１３（ｃ）は２つの線分の端点間の距離の算出を模式的に説明する図の一例である。距離算出手段１１５は、一方の線分の２つ端点と、他方の端点の２つの端点の距離をそれぞれ（すなわち４つの距離）算出する。距離算出手段１１５は、垂線算出手段１１３が垂線を算出できないと判定した場合のみ算出してもよいし、垂線の算出の是非に関わらす端点間の距離を算出してもよい。
【００６５】
このようにして検出されたいくつかの距離のうち、文字の太さよりも短い距離がある場合、線分が互いに重複することになる。すなわち、最短距離が文字の太さよりも短くなければ交差しないので、いくつかの距離のうち最短距離を決定する。距離比較手段１１６は、太さ情報取得手段１０３が取得した太さの情報と、最短距離を比較する。そして、最短距離が太さ以下であれば、その最短距離が検出された１対の線分を抽出する。これにより、重複ストローク算出手段１０４は、当該文字のその１対の線分には重複が生じることを検出することができる。なお、この場合、重複ストローク算出手段１０４は、「重複量  
＝  太さ−最短距離」を検出する。
【００６６】
〔線分の分割・短縮〕
図１０に戻り、ストローク分割・短縮手段１０５は、距離がゼロの一対の線分、端点と線分の距離又は端点間の最短距離が文字の太さ以下の距離となった一対の線分について、一方の線分を分割又は短縮する。一方の線分としたのは、どちらか一方の分割又は短縮することで重複を解消できるからである。
【００６７】
どちらの線分を、分割・短縮するかは次のルールにより決定する。
Ｒ１）分割・短縮することで一方のストロークのみが完全に消失する場合、他方のストロークを分割・短縮する。
Ｒ２）どちらの線分も完全には消失しない、又は、どちらの線分も完全に消失する場合、分割・短縮により消失する線分長が短いほうを分割又は短縮対象とする（これは、消失長が短いほうが情報量の欠落が小さいとの考えに基づくものである。）。
【００６８】
図１４は、分割・短縮される線分を模式的に説明する図の一例である。図１４（ａ）は分割又は短縮する前の線分により描画された文字を示す。線分５１の端点は（Ｅ，Ｆ）と（Ｇ,Ｈ）であり、線分５２の端点は（Ｇ，Ｈ）と（Ｊ,Ｋ）であり、線分５３の端点は（Ｌ，Ｍ）と（Ｎ,Ｏ）である。
【００６９】
重複ストローク算出手段１０４は、線分５１の端点（Ｇ，Ｈ）と線分５３の端点（Ｌ、Ｍ）との距離、線分５２の端点（Ｇ，Ｈ）と線分５３の端点（Ｌ、Ｍ）との距離、がそれぞれ文字の太さ以下であることを検出する。なお、厳密には、線分５１と５２の端点（Ｇ，Ｈ）が一致するのでここでも重複すると判定されるが、このように交差の角度が小さい重複は後述するように無視できる。
【００７０】
まず、ストローク分割・短縮１０５は、交点がないこと、及び、どちらを短縮しても一方のストロークのみが完全に消失しないので、ルールＲ２が適用されると判定する。このため、ストローク分割・短縮手段１０５は、仮に、線分５１と５２を両方とも短縮した場合と、線分５３を短縮した場合とで、短縮量を比較する。
【００７１】
図１４（ｂ）は、線分５３を短縮して描画された文字の一例を、図１４（ｃ）は、線分５１，５２を短縮して描画された文字の一例を、それぞれ示す。重複ストローク算出手段１０４は、分割・短縮により消失する線分長が短いほうを分割又は短縮対象とする。
【００７２】
ストローク分割・短縮手段１０５は、線分５３を短縮する場合の短縮量と、線分５１、５２をそれぞれ短縮する場合の短縮量を算出し、どちらを短縮するかを決定する。線分５１と線分５３の重複量と、線分５２と線分５３の重複量が等しい場合、線分５３を短縮する場合は、「1×重複量」が短縮量になるのに対し、線分５１、５２を短縮する場合は、「２×重複量」が短縮量になる。したがって、線分５３を短縮した方が、消失する線分長が短い。
【００７３】
ストローク分割・短縮手段１０５は、かかる計算に基づき線分５３を短縮すると決定する。短縮量は重複量と同じである。したって、ストローク分割・短縮手段１０５は、線分５３の端点（Ｌ、Ｍ）を短縮量だけ短縮して、その線分５３の短縮後の座標を決定する。
【００７４】
図１５は、分割・短縮される線分の別の例を模式的に説明する図の一例である。図１５（ａ）は分割又は短縮する前の線分により描画された文字をしめす。重複ストローク算出手段（正確にはストローク交点検出手段）１０４は、線分５４と線分５５が交差することを検出する。
【００７５】
このため、ストローク分割・短縮手段１０５は、線分５４又は５５のいずれかを分割又は短縮する。交点の場合は、分割することになる。
【００７６】
まず、ストローク分割・短縮１０５は、仮に、両方の線分をそれぞれ分割してみて、重複量だけ分割後の線分を短縮した場合に、一方のストロークのみが完全に消失するか否かを判定する。
【００７７】
図１５（ｂ）は、線分５５を仮に分割して、重複量を短縮して描画された文字の一例を、図１５（ｃ）は、線分５４を仮に分割して重複量を短縮して描画された文字の一例を、それぞれ示す。図１５（ｂ）に示すように、線分５５を、線分５４と重複しないように分割すると、線分５５が完全に消失してしまう。したがって、図１５の文字の場合、ルールＲ１が適用されるので、重複ストローク算出手段１０４は、線分５４を分割対象とする。
【００７８】
なお、完全に消失してしまうことは、線分５５の端点（Ｖ，Ｗ）と交点（Ｐ，Ｑ）の距離が、文字の太さより短いことから検出される。
【００７９】
交差する場合、ストローク分割・短縮手段１０５は、交点を線分の一方の端点として線分５４を分割し、端点が（Ｒ，Ｓ）（Ｐ，Ｑ）の線分５４ａと端点が（Ｐ，Ｑ）（Ｔ，Ｕ）の線分５４ｂを生成し、線分５５との重複量を算出する。交差している場合、端点（Ｐ，Ｑ）が線分５５と重複する重複量は文字の太さの半分と同じなので、特に算出することなく重複量を検出できる。短縮量は、短縮して移動した端点の広がりを考慮して文字の太さに等しい。
【００８０】
したがって、ストローク分割・短縮手段１０５は、線分５４を分割した線分５４ａの２つの端点の座標を（Ｒ，Ｓ）（Ｐ，Ｑ＋太さ）に決定する。同様に、線分５４を分割した線分５４ｂの2つの端点の座標を（Ｐ，Ｑ−太さ）（Ｔ，Ｕ）に決定する。以上から、図１５（ｃ）のように、交差を解消した文字を描画することができる。
【００８１】
このように、線分の分割・短縮を、重複がなくなる最低限度行うことで、図２（ｃ）に示したように隙間が空いたり、ストロークの重複により交点、重複点、折り返し点で過剰な熱で線が太くなる現象を防ぐことで文字潰れを抑制出来、文字の品質低下を最小限に抑制することができる。更に、リライタブル媒体２０では、ストロークの重複を防ぐことで、交点、重複点、折り返し点で過剰な熱が加わることを防ぎ、繰返し書き換えによる劣化での消え残り（消去しても消えない）や発色部の濃度低下を抑制することが出来る。
【００８２】
〔重複回避の例外〕
この文字の品質を確保する考え方に従い、重複していても分割又は短縮しない場合について説明する。図１６は、分割・短縮した場合としない場合の線分の例を模式的に説明する図の一例である。図１６（ａ）は分割又は短縮する前の線分により描画された文字を示す。図１６（ａ）の文字「Ｃ」が、直線のみから構成されるフォントデータの場合はそのまま描画すればよく、曲線を含むフォントデータの場合は、線分検出手段１１１が距離ｓ毎に決定した線分の座標を利用する。
【００８３】
図１６（ａ）では、線分５６〜６９の端点が一致している。したがって、重複ストローク算出手段１０４は、線分同士が交差していること又は端点間の距離が太さ以下であることを検出する。上記のルールＲ２が適用されるとすると、各線分５６〜６９が短縮され図１６（ｂ）に示す文字を描画することができる。
【００８４】
しかしながら、このように短い距離で文字が途切れるとユーザが見づらいと感じる場合がある。そこで、ストローク分割・短縮手段１０５は、新たなルールＲ３を定義し、文字を描画する。
Ｒ３）２本の線分が連続しており、かつ、それらが交わる角度が浅い場合には分割・短縮を行わない。
【００８５】
図１６（ｄ）は線分が交わる角度を説明する図である。例えば、線分５７と５８は図示するように交わる角度が大きい。線分が交わる角度が大きい場合、方向制御モータ１２や方向制御ミラー１３の慣性の影響が少なくレーザが重複した部分が過度に高温となることは少ない。そこで、ストローク分割・短縮手段１０５は、線分が連続している場合には、線分が交わる角度を算出し、交わる角度が所定値（例えば４５度）以下の場合のみ、線分を短縮する。
【００８６】
線分の交わる角度は、２つの線分をベクトル（原点はどこでもよい）ｖ１、ｖ２で表し、ベクトルの内積をベクトルの大きさで割ることで得られる。
【００８７】
ｃｏｓθ＝ （ｖ１・ｖ２）／（｜ｖ１｜｜ｖ２｜） 
ルールＲ３を図１６（ａ）の文字に適用すると、線分５６と５７以外の重複部では線部を短縮する必要がないと判定される。線分５６と５７で、ストローク分割・短縮手段１０５が例えば線分５６を短縮することで、図１６（ｃ）に示す文字が描画される。ルールＲ３により、交わる角度が深い場合には、レーザの向きを制御する方向制御モータ１２と方向制御ミラー１３の慣性の影響を考慮して重複を解消でき、交わる角度が小さい場合には重複したまま描画できるので図１６（ｂ）のように太さが頻繁に変化するような文字の品質低下を防止できる。
【００８８】
〔描画順の最適化〕
線分が重複しないように各線分の端点の座標が決定されたら描画命令生成手段１０７が、描画命令を生成することで、文字を描画することができるが、描画順を最適化することで描画速度を向上させることができる。
【００８９】
図１０に戻り、描画順整理手段１０６は、線分の座標に基づき線分の描画順を最適化する。最適化とは、例えば方向制御ミラー１３の移動距離が最小となることをいう。
【００９０】
図１７（ａ）は、分割・短縮までが完了した文字「Ｂ」の線分と描画結果の一例を示す。文字「Ｂ」は線分７１〜８５により構成されている。この状態では、分割や曲線の線形化により線分が増えた場合、その線分をいつどのように描画するかの情報が含まれていないとしてよい。このため、各線分に対し改めて描画順を整理する。
【００９１】
描画順整理手段１０６は、次の手順で描画順を最適化する。
ｓ１）所定の線分（どの線分でもよい）の端点と同じ座標を持つ他の線分の端点を数珠繋ぎ的に探し、配置順に並べ替えた上で１つの線分グループを決定する。
【００９２】
例えば、図１７（ａ）では、線分７１の端点は線分７２の端点と一致し、線分７２の端点は線分７３の端点と一致し、線分７３の端点は線分７４の端点と一致し、線分７４の端点は線分７５の端点と一致し、線分７５の端点は線分７６の端点と一致し、線分７６の端点は線分７７の端点と一致する。したがって、線分７１〜７７は、１つの線分グループであり、線分７９〜８４は、１つの線分グループである。
【００９３】
ｓ２）端点が同じ他の線分がない場合は、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は線分の順番と方向（方向のみ）が反転させられ、線分グループVIの線分は反転されない。
【０１４４】
そして、描画順整理手段１０６は、次の線分グループを１つ選択してステップＳ６１２から繰り返す（Ｓ６１６）。ここで選択する線分グループは、端点が終点か否かを判定した線分グループである。図１７の文字「Ｂ」の線分グループII・VIのように対象の線分が複数ある場合は、抽出しておいた端点を順番に選択して同様に処理すればよい。
【０１４５】
全ての線分グループの登録が完了した場合（Ｓ６１２のＹｅｓ）、線分グループの描画順を並べ替える（Ｓ６１７）。すなわち、端点が終点か否かを判定した線分グループの順番に、線分グループの描画順を決定する。
【０１４６】
以上により、線分がグループ化された線分グループの描画順を最適化することができた。なお、図２３の処理の代わりに、図１８で説明した端点間の距離に基づき描画順を最適化してもよい。
【０１４７】
図２４は、描画を行わずにただ描画対象位置が動く際の距離の合計から、描画順を決定する手順を示すフローチャート図の一例である。
【０１４８】
まず、描画順整理手段１０６は、一筆部品の数に基づき、全ての描画順の組み合わせを作成する（Ｓ７０１）。組み合わせの数は、「n ! × 2^(n-1)」個である。
【０１４９】
ついで、描画順整理手段１０６は、１つの描画順の組み合わせについて、描画を行わずにただ描画対象位置が動く際の距離の合計を求める（Ｓ７０２）。
【０１５０】
そして、全ての描画順の組み合わせについて、距離の合計を求めたか否かを判定し（Ｓ７０３）、全ての描画順の組み合わせについて距離の合計を求めると、最も距離の小さいものを描画順に決定する（Ｓ７０４）。
【０１５１】
これにより、描画を行わずにただ描画対象位置が動く際の距離が最も小さい描画順を決定することができる。
【０１５２】
本実施例のレーザ照射装置２００は、文字の太さを考慮して重複が生じる場合には、分割又は短縮することで、あらゆる形状の文字に生じうる重複を抑制することができる。描画すべき文字サイズが変化する場合でも、変倍を行ってからその重複除去の量を決定するので、隙間や重複残が発生することがない。また、描画順を最適化するので、分割・短縮しても文字の描画にかかる時間を短くすることができる。更に、リライタブル媒体では、ストロークの重複を防ぐことで、交点、重複点、折り返し点で過剰な熱が加わることを防ぎ、繰返し書き換えによる劣化での消え残り（消去しても消えない）や発色部の濃度低下を抑制することが出来る。
【０１５３】
なお、本実施例では、文字を対象に説明したが、線分の組み合わせで表現できるものであれば文字に限られず、例えば線画なども重複を排除して描画することができる。また、文字には、数字や「！、＄、％、＆、？」等の記号が含まれ、絵文字や顔文字を含む。
【０１５４】
また、本実施例ではレーザ光で描画する場合を例に説明したが、電子線や放射線を用いてこれらに反応する媒体に描画してもよい。また、レーザは非接触で描画することができるが、プローブ（スタイラス）等を直接リライタブル媒体２０に接触させて描画してもよい。
【実施例２】
【０１５５】
実施例１では、レーザ照射部１６０を用いてリライタブル媒体２０に描画する際に、フォントデータから重複を排除し、描画順を最適化して描画命令を生成したが、文字の形状が固定であることを考慮すると、重複を排除し描画順を最適化したフォントデータ（以下、最適化フォントデータという）を予め記憶しておくことができる。予め最適化フォントデータを記憶しておくことで、描画時の処理負荷を低減できる。
【０１５６】
図２５（ａ）は最適化フォントデータを生成する装置１７０の機能ブロック図の一例を示し、図２５（ｂ）はレーザ照射装置２００の機能ブロック図を示す。なお、図２５において図１０と同一部には同一の符号を付しその説明は省略する。
【０１５７】
図２５（ａ）では、最適化フォントデータ生成手段１２３と最適化フォントデータＤＢ１２１を有し、図２５（ｂ）では最適化フォントデータ取得手段１２２を有する点で図１０と異なる。最適化フォントデータを生成する装置１７０は、全体制御装置１００と同様にコンピュータを実体とする。図２５（ａ）と図１０を比較すると明らかなように、最適化フォントデータの生成手順は実施例１と同様である。
【０１５８】
このうち、最適化フォントデータ生成手段１２３は、重複を排除した最適化フォントデータを再利用可能な態様で生成し、最適化フォントデータＤＢ１２１に格納する。
【０１５９】
本実施例では、最適化フォントデータＤＢ１２１がハードディスク３５に実装されている。最適化フォントデータＤＢ１２１は、記憶媒体に記憶したりネットワークを介して配布可能である。最適化フォントデータＤＢ１２１には、最適化フォントデータが文字コードに対応づけて記憶されており、最適化フォントデータ取得手段１２２は、最適化フォントデータＤＢ１２１から文字コードに対応づけられた最適化フォントデータを読み出す。
【０１６０】
図２６（ａ）は、最適化フォントデータの一例を、図２６（ｂ）は最適化フォントデータから生成される描画命令の一例を、それぞれ示す。最適化フォントデータは、例えば、図１９（ｄ）から「ｗ」「ｔ」の制御コードを除いたものであるが、図１８（ｂ）〜(ｅ)のような線分の座標であってもよい。
【０１６１】
最適化フォントデータ生成手段１２３は、描画順整理手段１０６が生成した線分の座標から、描画命令を生成するのと同様の手順で（制御コードである「ｗ」を考慮せずに）最適化フォントデータを生成する。図２６（ａ）の最適化フォントデータが、重複を排除するために分割・短縮された線分の座標に基づき、描画順を最適化したものである。「ｍ」「ｄ」の意味は実施例１と同様である。
【０１６２】
最適化フォントデータは線の太さにより異なるので、線の太さ毎に用意し、予めハードディスク３５に記憶されていることが好適となる。また、線の太さに幅を設け、太さｔ１〜ｔ２、ｔ２〜ｔ３、…のように、最適化フォントデータを用意しておいてもよい。これにより、容量を低減できる。なお、最適化フォントデータＤＢ１２１又は最適化フォントデータをサーバに登録しておき、描画の際にハードディスク３５にダウンロードしてもよい。
【０１６３】
同様に、ストロークフォントデータはスケーラブルフォントなので、文字の大きさによって最適化フォントデータが異なる。このため、文字の大きさ毎に最適化フォントデータを用意しておくことが好適となる。
【０１６４】
描画命令生成手段１０７は、１文字ごとに最適化フォントデータを読み出し、図２６（ｂ）の描画命令を生成する。図２６（ｂ）の描画命令は、図１９（ｄ）と同じものである。描画命令生成部は、動いた方向制御ミラー１３が完全停止するまでまって描画を安定させるための制御コードである「ｗ」をハードディスク３５又はレーザ照射部１６０から読み出す。そして、取得した文字の太さ「ｔ」と、「ｗ」を用いて描画命令を生成する。
【０１６５】
本実施形態のレーザ照射部１６０では、最適化フォントデータの「ｍ」の後に、「ｗ  ５０」を挿入することで描画命令を生成することができる。
【０１６６】
〔動作手順〕
図２７（ａ）は最適化フォントデータの生成手順を、図２７（ｂ）は最適化フォントデータを用いた文字の描画手順をそれぞれ示す。
【０１６７】
最適化フォントデータの生成手順は、実施例１で説明した手順と同じである。すなわち、太さの情報と大きさの情報を設定し（Ｓ８０１）、対象文字コード取得手段１０１が対象となる文字の文字コードを取得する（Ｓ８０２）。太さや大きさの情報はユーザにより入力装置３６から入力され、文字コードは文字コード表に従い順番に読み出せばよい。
【０１６８】
そして、フォントデータ取得手段１０２が、文字コードに対応づけられたフォントデータを読み出し（Ｓ８０３）、重複ストローク算出手段１０４が重複ストロークを検出する（Ｓ８０４）。ついで、ストローク分割・短縮手段１０５がストロークを分割又は短縮する（Ｓ８０５）。
【０１６９】
そして、描画順整理手段１０６が描画順を整理する（Ｓ８０６）。そして、描画順に基づき、最適化フォントデータ生成手段１２３が、最適化フォントデータを生成し（Ｓ８０７）、最適化フォントデータＤＢ１２１に格納する（Ｓ８０８）。全ての文字を処理すると終了する（Ｓ８０９）。
【０１７０】
続いて、文字の描画手順について説明する。文字コード取得手段は、描画対象の文字の文字コードを取得する（Ｓ９０１）。また、最適化フォントデータ取得手段１２２は、文字の太さと大きさの情報を取得する（Ｓ９０２）。
【０１７１】
そして、最適化フォントデータ取得手段１２２は、文字コード、太さ、大きさに基づき最適化フォントデータＤＢ１２１を参照し、最適化フォントデータを読み出す（Ｓ９０３）。描画命令生成手段１０７は、最適化フォントデータから図２６（ｂ）のような描画命令を生成する（Ｓ９０４）。
【０１７２】
そして、描画対象の全ての文字の描画命令を生成したか否かを判定し（Ｓ９０５）、描画対象の全ての文字を処理するとレーザ照射部１６０によりリライタブル媒体２０に文字を描画する（Ｓ９０６）。
【０１７３】
本実施例のレーザ照射装置２００によれば、重複を排除し描画順を最適化した最適化フォントデータを予め記憶しておくことで、文字の描画時に処理負荷を低減し、描画時間を短縮することができる。
【実施例３】
【０１７４】
本実施例では、線分の端点の形状について説明する。
図２８は、線分の端点の発色について説明する図の一例である。図２８（ａ）はレーザ光の中心とレーザ光が形成する円の動きの関係を説明する図を、図２８（ｂ）はレーザ光の軌跡と温度の関係を説明する図を、それぞれ示す。
【０１７５】
線分の端点は、リライタブル媒体２０の外部から加えられた熱に対する昇温感度がやや低く、レーザ光で熱を加えてもすぐには発色温度に到達しない場合がある。この場合は図２８（ｂ）に示すように、レーザ光の径によりカバーされた領域であっても、線分の端点付近の領域４１０が十分に加熱されず、発色しない場合がある。
【０１７６】
図２８（ａ）は横向きの線分を描く場合を示すが、中心線の周りにもレーザ光の径分の照射領域があり、レーザ光の円が通過する領域は全て加熱されて媒体が発色することが期待される。しかしながら、図２８（ｂ）に示すように、線分の端点付近の領域４１０は、熱がレーザ光のあたらない方向へ逃げるため発色に必要な量の加熱が得られない。これに対し、線分の内側の領域４２０は、線分の左右方向に均等に加熱されるため、熱の流出が左右方向に生じないことになり結果として発色に必要な加熱が得られる。このようにして、昇温感度が低いリライタブル媒体２０では、線分の内側の領域４２０だけが発色し、レーザ光の走査距離よりも線分が短くなることになる。例えば、フォントデータによる線分の長さがＬであっても、発色した線分の長さはＬより短くなってしまう。
【０１７７】
そこで、本実施例のレーザ照射装置２００は、線分の端点を移動することで線部を延長し、線分の長さを補正する。図２８（ｃ）は、線分の端点を移動した場合の発色領域を説明する図の一例である。図２８（ｃ）では、線分の左側にＥ１，右側にＥ２だけ端点の位置をずらしている。Ｅ１、Ｅ２をどの程度にするかは、リライタブル媒体２０の熱に対する昇温感度に応じて調整するが、図では線幅の半分程度とした。また、図ではＥ１とＥ２は同じであるが、両者を異ならせてもよい。
【０１７８】
端点の位置を移動することで、発色した領域をフォントデータによる線分の長さＬと同程度にすることができる。
【０１７９】
図２９は、本実施例のレーザ照射装置２００の機能ブロック図の一例である。図２９において図１０と同一部には同一の符号を付しその説明は省略する。図２９のレーザ照射装置２００は一筆部品延長手段１３１を有する。一筆部品延長手段１３１は、一筆部品の端点を移動して一筆部品を延長する。一筆部品延長手段１３１は、一筆部品の端点を特定し、端点の位置を線分が延長される方向に移動する。
【０１８０】
図３０に、端点の延長手順を含む描画命令生成処理のフローチャート図の一例を示す。なお、図３０において図２０と同一部のステップの説明は省略する。図３０では、ステップＳ５５に一筆部品の端点を延長する処理が加わっている。
【０１８１】
まず、ステップＳ１０〜Ｓ５０により、線分の分割、短縮処理の後、重複のない一筆部品群が生成される。
【０１８２】
次に、一筆部品延長手段１３１は、注目しているフォントデータから、一筆部品をひとつ選択する。まず、線分の分割を施さない、元のフォントデータにおいて一筆部品となるものが、一筆部品の候補となる。候補の一筆部品が分割されない場合、候補の一筆部品が端点の移動対象の一筆部品となる。この場合、一筆部品は短縮されていてもいなくてもよい。例えば、図１４（ｂ）では、線分５１と５２が両者で１つの一筆部品で、線分５３が１つの一筆部品である。上記のようにフォントデータにおける連続した「ｄ」が、１つの一筆部品である。
【０１８３】
また、候補の一筆部品が、分割されていた場合、分割により複数の一筆部品が生成されるので、それぞれの一筆部品が端点の移動対象の一筆部品となる。例えば、図１９（ｃ）では、線分９１ａ、線分９１ｂ、線分９２、線分９３ａが、それぞれ端点の延長対象の一筆部品となる。また、図１６の「Ｃ」の文字の場合、線分５６が端点の移動対象の一筆部品で、線分５７〜６９がそれら全体で端点の移動対象の一筆部品となる。
【０１８４】
こうすることで、図３１に示すように、移動すべき端点が明確になる。図３１は「Ｙ」という文字に対し、一部の線分の短縮結果の一例を示す。短縮処理の結果、「Ｙ」は２つの一筆部品５２０と５３０を有する。
【０１８５】
一筆部品５２０は２つの線分から構成されているが、２つの線分の端点が重複する端点５２５，５２６では、端点を移動する必要がない。図３２（ａ）（ｂ）は、一筆部品において移動されない端点を説明する図の一例である。「Ｙ」の一筆部品５２０のように、端点５２５，５２６が重複した線分５４０、５５０を延長すると、図３２（ｂ）のように、延長した線分５４０、５５０の周囲で重複部分が発生してリライタブル媒体２０が加熱してしまう。また、書き換えできないサーマルペーパ、プラスチック、金属であっても、線分５４０，５５０を延長すると文字の形状が変わってしまう。
【０１８６】
このため、一筆部品延長手段１３１は、図３２（ａ）に示すように、特定した一筆部品の、最初の端点と、最後の端点だけを移動する。
【０１８７】
図３２（ｃ）は、３つの線分５６０〜５８０からなる一筆部品の延長の一例を示す図である。一筆部品延長手段１３１は、検出した一筆部品の両端の線分５６０、５８０の向きに線分を延長する（端点の位置を移動する）。延長する長さは、およそ線幅の半分程度で良い。実際に、どの程度延長すべきかは、リライタブル媒体２０の熱に対する昇温感度に応じて決定する。例えば、フォントデータによる線分の長さＬと、実際に発色した線分の長さを比較することで決定できる。なお、この値はユーザがパラメーターとしてレーザ照射装置２００に与えるようにすることが好適である。
【０１８８】
具体的には、一筆部品延長手段１３１は、線分５６０、５８０の向きを検出する。そして、一筆部品延長手段１３１は、線分５６０、５８０の向きに端点５６１，５８１から、線幅の半分程度の位置にある座標を決定する。該座標を、端点５６１、５８１の新たな座標とする。一筆部品延長手段１３１は、注目している文字の全ての一筆部品に延長処理を施したら、延長処理を終了する。
【０１８９】
図３０に戻り、レーザ照射装置２００はステップＳ６０以降の処理を実施する。以降の処理は実施例１と同様である。
【０１９０】
なお、この延長処理をフォントデータに施す場合、延長により、一筆部品に重複が生じる場合がある。図３３は、延長により重複が生じた文字の一例を示す。図３３のように「Ｔ」という文字では、ストローク分割・短縮部１０５が重複を解消する。しかしながら、一筆部品延長手段１３１により、「Ｔ」の横線の中心部に２度レーザ光が照射される部分が発生する。
【０１９１】
しかし延長処理は、元々、加熱が不十分なため発色が不良となることを解消するための処理なので、２度レーザ光が照射される部分は、発色に必要な温度以下にしか加熱されない。このため、延長処理によりレーザ光で二度描画する部分が存在しても、リライタブル媒体２０が劣化する温度には達しない。
【０１９２】
なお、本実施例では一旦、分割、短縮してえられた一筆部品の座標値を延長する処理を施しているが、一筆部品が得られた段階（例えば、分割、短縮された段階）で、延長分を加味した座標を、短縮・分割時にフォントデータに設定してもよい。
【０１９３】
以上説明したように、本実施例のレーザ照射装置２００は、一筆部品の端点を線分方向に移動することで、リライタブル媒体２０の熱の昇温感度が低くても、一筆部品の長さが短くなることを防止できる。
【実施例４】
【０１９４】
実施例１では、ストロークフォントのフォントデータから描画命令を生成する例について説明したが、レーザ照射装置２００の描画命令は、アウトラインフォントからも生成することができる。
【０１９５】
アウトラインフォントのフォントデータには、一般に、ベジエ曲線などの曲線情報による輪郭情報が格納されている。したがって、輪郭情報にしたがって、レーザ光を照射すれば、文字や数字を描くことができる。
【０１９６】
図３４（ａ）は、アウトラインフォントのフォントデータからそのまま描画した「ま」という文字の一例を示す。外観からは、「ま」の文字が描画されているが、アウトラインフォントからそのままフォントデータを描画すると、折り返し部６１０〜６２４が発生してしまう。そこで、本実施例のレーザ照射装置２００は、アウトラインフォントのフォントデータに重複除去処理を行ってから描画命令を生成する。
【０１９７】
図３５は、本実施例のレーザ照射装置２００の機能ブロック図の一例である。図３５において図２９と同一部には同一の符号を付しその説明は省略する。図３５のレーザ照射装置２００は、直線近似手段１０２１を有する。直線近似手段１０２１は、アウトラインフォントのフォントデータから得られる曲線を直線に近似する。  
図３６は、直線近似の手順を示す図の一例である。ベジェ曲線では、４つの制御点Ｐ０〜Ｐ３で曲線を表現する。制御点Ｐ０とＰ３はベジェ曲線の始点と終点になり、制御点Ｐ０とＰ３を結ぶ直線を、本実施形態ではベースラインと称す。
【０１９８】
まず、直線近似手段１０２１は、図３６（ａ）に示すように、ベースラインＰ0 −Ｐ3 からベジェ曲線Ｐ(t) の頂点までの距離、すなわちベースラインＰ0 −Ｐ3 からベジェ曲線Ｐ(t) までの最大距離ｄを求める。この距離ｄが与えられた許容値δ以下であれば、ベースラインＰ0 −Ｐ3 はベジェ曲線Ｐ(t) を補間近似する直線そのものとする。すなわち、直線近似しない。
【０１９９】
距離ｄがトレランスδを超えている場合、図３６（ｂ）に示すように、直線近似手段１０２１は、ベジェ曲線Ｐ(t) を２分割する点とベジェ曲線Ｐ(t) の始点Ｐ0 および終点Ｐ3 をそれぞれ結ぶ２本の直線分で近似する。こうすることで、ベースラインの直線よりもよい近似が得られる。
【０２００】
次に、直線近似手段１０２１は、図３６（ｃ）に示すように、これら２本の直線とベジェ曲線Ｐ(t) との間の最大距離ｄ１およびｄ２をそれぞれ求め、これらが許容値δ以下であれば補間近似処理を終了とする。
【０２０１】
最大距離ｄ１又はｄ２が許容値δを超えている場合、図３６（ｄ）に示すように、直線近似手段１０２１は、さらに２本の直線で補間する。
【０２０２】
直線近似手段１０２１は、アウトラインフォントのフォントデータから得られる曲線の１つ１つに、以上のような処理を近似直線とベジェ曲線Ｐ(t) との間の最大距離がすべて許容値δ以下になるまで繰り返し行う。これにより、曲線を直線に近似して、文字を構成する線分を得ることができる。
【０２０３】
線分が得られれば、実施例１と同じ手順で、線分の重複を解消するため、分割、短縮処理を施す。すなわち、ストロークフォントのフォントデータの代わりに、直線近似されたアウトラインフォントの輪郭情報を使うことだけが違いとなる。
【０２０４】
例えば、図３４（ａ）のアウトラインフォントでは、折り返し部６１０〜６２４で輪郭が途切れ、各折り返し部で挟まれた複数の線分に近似されることになる。図３４（ｂ）は、直線近似後の「ま」という文字の描画例を示す図である。図３４の（ａ）では折り返し部６１０〜６２４で急角度の折れ曲がりとなり媒体が加熱により損傷する可能性があった。これに対し、アウトラインフォントのフォントデータを直線に近似し、重複を解消することで、加熱が発生することを防止できる。
【０２０５】
また、図３４（ｂ）をみると分かるように、アウトラインフォントのフォントデータから「袋文字」が得られることがわかる。すなわち、比較的大きな文字や数字を描画する場合に、文字や数字の表現を多様化することができる。
【０２０６】
また、図３４（ｂ）に示した「袋文字」の、内部を塗りつぶしてもよい。図３７（ａ）は内部を塗りつぶされた袋文字の一例を示す図である。すなわち、輪郭を描いたあとに内部を横方向に重ならないように線を描いていくことで塗りつぶすことができる。あるいは、輪郭部の座標を予め求めておいてから内部を塗りつぶし、その後に輪郭部を描いても良い。
【０２０７】
一方、内部を塗りつぶさず外部を塗りつぶせば白黒反転文字となる。図３７（ｂ）は白黒反転文字の一例を示す図である。輪郭を描いたあとに外部を横方向に、重ならないように線を描いていくことで塗りつぶすことができる。白黒反転文字の場合は、輪郭を描くことなく、輪郭部を端点とする横方向の線を描画しても良い。
【０２０８】
以上説明したように、本実施例のレーザ照射装置２００は、アウトラインフォントから生成したフォントデータを用いて、レーザ光でリライタブル媒体２０に文字等を描画することができる。また、容易に袋文字を描画することができる。
【符号の説明】
【０２０９】
１１        レーザ発振器
１２        方向制御モータ
１３        方向制御ミラー
１４        光学レンズ
１５        集光レンズ
２０        リライタブル媒体
３８        ＣＤ−ＲＯＭ（記憶媒体）
４１        フォントデータＤＢ
４２        文字描画プログラム
１００      全体制御装置
１０１      対象文字コード取得手段
１０２      フォントデータ取得手段
１０３      太さ情報取得手段
１０４      重複ストローク算出手段
１０５      ストローク分割・短縮手段
１０６      描画順整理手段
１０７      描画命令生成手段
１１１      線分検出手段
１１２      ストローク交点検出手段
１１３      垂線算出手段
１１４      垂線の足存在範囲算出手段
１１５      距離算出手段
１１６      距離比較手段
１２１      最適化フォントデータＤＢ
１３１      一筆部品延長手段
１６０      レーザ照射部
２００      レーザ照射装置
１０２１    直線近似手段
【先行技術文献】
【特許文献】
【０２１０】
【特許文献１】特開２００４−９００２６号公報
【特許文献２】特開２００４−３４１３７３号公報
【特許文献３】特開２００６−３０６０６３号公報
【特許文献４】特許第３９９０８９１号公報
【特許文献５】特開２００８−１７９１３５号公報
【図１】
0005397070.tif 000002
【図２】
0005397070.tif 000003
【図３】
0005397070.tif 000004
【図４】
0005397070.tif 000005
【図５】
0005397070.tif 000006
【図６】
0005397070.tif 000007
【図７】
0005397070.tif 000008
【図８】
0005397070.tif 000009
【図９】
0005397070.tif 000010
【図１０】
0005397070.tif 000011
【図１１】
0005397070.tif 000012
【図１２】
0005397070.tif 000013
【図１３】
0005397070.tif 000014
【図１４】
0005397070.tif 000015
【図１５】
0005397070.tif 000016
【図１６】
0005397070.tif 000017
【図１７】
0005397070.tif 000018
【図１８】
0005397070.tif 000019
【図１９】
0005397070.tif 000020
【図２０】
0005397070.tif 000021
【図２１】
0005397070.tif 000022
【図２２】
0005397070.tif 000023
【図２３】
0005397070.tif 000024
【図２４】
0005397070.tif 000025
【図２５】
0005397070.tif 000026
【図２６】
0005397070.tif 000027
【図２７】
0005397070.tif 000028
【図２８】
0005397070.tif 000029
【図２９】
0005397070.tif 000030
【図３０】
0005397070.tif 000031
【図３１】
0005397070.tif 000032
【図３２】
0005397070.tif 000033
【図３３】
0005397070.tif 000034
【図３４】
0005397070.tif 000035
【図３５】
0005397070.tif 000036
【図３６】
0005397070.tif 000037
【図３７】
0005397070.tif 000038