(57)【特許請求の範囲】
【請求項１】
円形状ドットを用いるプリンタと、プリンタのドット円の直径と、制御密度（プリンタのドットの最小移動距離）とによってプリンタの印字ステップ数（ドット幅数）を変更して、バーコードのスリットを印字する、バーコード作成方法。
【請求項２】
印字ステップ数＝（ドット円の直径）／（制御密度）を算出し、バーコード印字の際に前記印字ステップ数だけステップ数を減少させた請求項１記載のバーコード作成方法。
【請求項３】
設定したプリンタの印字ステップ数を、バーコード印字と非印字の両方に適用する請求項１及び２記載のバーコード作成方法。
【請求項４】
予め分類した文字に、文書中の位置を指定する情報を設定したバーコードを付ける、請求項1〜３のいずれか１項記載の方法を用いたバーコード作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スリットが均等、且つコンパクトな大きさのバーコードを、機種を問わず、特殊なフォントも必要とせず簡単に、一般のレーザープリンタで印刷する方法、及びそれを適用した、ワープロ入力を簡便化するためのコンピュータシステムに関する。
【背景技術】
【０００２】
バーコードとは、2進数について、「１」を黒線、「0」を白線で表す方法である。
【０００３】
バーコードの印刷について、従来市販のパーソナルコンピューター用プリンタでは、その横幅を小さく印刷することは困難であった。その為、バーコード印刷用の装置が数々考案されてきた。
【０００４】
バーコードを印刷するために考案された専用のプリンタは、四角状のドットの集合で印刷を行う。それに対して、一般的なレーザープリンタは、円状のドットの集合で印刷を行う。
【０００５】
特開平10-217548のように、特別な装置を用いずに、市販のドットインパクトやインクジェット等のプリンタでバーコードを印刷する方法も、考案されてきた。しかし、バーコードのサイズが大きく、一定サイズの用紙の中に印刷できるバーコードの数が少なくなってしまう。
【０００６】
バーコードをコンパクトなサイズで印刷できないということは、個別の商品にバーコードを添付する場合を除き、一覧表のような中からバーコードを選択する場合、多量のデータ処理を可能にするというバーコードの特性を生かす上で、問題であると言える。
【０００７】
特開2000-103042・特開平6-124356では、プリンタの設計上やむを得ず発生するにじみに対応する印刷方法が、考案されている。しかし、現在一般的に使用されているレーザープリンタは、ドットインパクトやインクジェット等のようなにじみは生じにくい。従って、レーザープリンタでバーコードを印刷する場合には、特開2000-103042の方法は適用できない。
【０００８】
また、特開2000-105794・特開2004-98695においても、レーザープリンタを含む市販のプリンタでバーコードを印刷する方法が考案されているが、応用に際しては、特殊なフォントを必要とする。
【０００９】
スリットが均等で、且つコンパクトな大きさのバーコードを、機種を問わず、特殊なフォントも必要とせず簡単に、市販のレーザープリンタで印刷する方法は、未だ発表されていない。
【００１０】
ドットインパクトやインクジェット等のプリンタの制御密度（プリンタのドットの最小移動距離）は、ドット円に内接する四角形の一辺とほぼ等しいか、やや小さい程度で設計されており、文字はフォントドットで印刷されていた。その為、曲線や直線を印刷すると、その輪郭線には凸凹が生じる。対するレーザープリンタは、この凸凹を解消し、滑らかな輪郭線を実現するため、図１のように、制御密度がドットの大きさより遥かに小さく設計されており、文字はドットフォントではなく、アウトラインの直線と曲線とで描画されている。縦軸と横軸の最小制御寸法については、レーザープリンタの機種によって異なり、ドットの大きさ（直径）は、制御密度の５〜６倍で設計されているのが一般的である。以下、制御密度をドット幅と称する。
【００１１】
バーコードリーダからの出力は、かつてRS232Cが多かったが、一般的な仕様では、伝送スピードが遅い。キーボード入力と並行して入力させるものもあったが、USBが普及している現在は、USB入力が主流である。しかし、IOポートから入力を選択してこのプログラムを処理するのは、コンピュータの機種に関する融通性の点において避けるべきであり、OSの上でのプログラム処理が望ましい。
【００１２】
バーコードの用途は、バーコードを単に何かの置き換え・或いは代替として限定されており、そこに創造性を許容する余地はなかった。
【００１３】
従来のワープロ入力は、カナ入力で最低48ヶ所、ローマ字入力で26文字という多くのキー位置を体で覚える努力を強いるものであった。
【００１４】
従来のワープロ入力では、カーソル位置を目で追い、マウス、又はキーボードで位置を合わせながらでないと、任意の位置へ入力することができなかった。
【特許文献１】特開平10-217548
【特許文献２】特開2000-103042
【特許文献３】特開平6-124356
【特許文献４】特開2000-105794
【特許文献５】特開2004-98695
【発明の開示】
【発明が解決しようとする課題】
【００１５】
スリットが均等、且つコンパクトな大きさのバーコードを、機種を問わず、特殊なフォントも必要とせず簡単に、市販のレーザープリンタで印刷する。
【００１６】
その方法を適用して、会話しながら、或いは立ったままでも、迅速且つ正確に文章作成・入力ができるレベルまで、ワープロ入力に対する負担を軽減する。
【課題を解決するための手段】
【００１７】
円形状ドットを用いるプリンタと、プリンタのドットの直径と、制御密度（プリンタのドットの最小移動距離）とによってプリンタの印字ステップ数（ドット幅数）を変更して、バーコードのスリットを印字する、バーコード作成方法を発明した。
【００１８】
ドットの直径/制御密度だけ印字ステップ数を減少させる、バーコード作成方法を発明した。
【００１９】
設定したプリンタの印字ステップ数を、印字と非印字の両方に適用するバーコード作成方法を発明した。
【００２０】
予め分類した文字に、文書中の位置を指定する情報を設定したバーコードを付ける、上記バーコード作成方法を用いたバーコードワープロを発明した。
【発明の効果】
【００２１】
従来、特別な装置、フォント、あるいは複雑な手順を要し、更にリードミスも多かったバーコードが、円形状のドットでも、ドット幅数を設定するだけで、スリットが均等、且つコンパクトな大きさのバーコードを、機種を問わず、特殊なフォントも必要とせず簡単に作成できる。
【００２２】
このことにより、バーコードワープロの簡便性が向上する。
【００２３】
バーコードを読み取った際に、各バーコードに予め設定されている入力位置へカーソルを移動させる機能によって、キーボードのブラインドタッチも、コンピュータ画面を常時注視する必要も無くなる。このことは、ワープロ入力にかかる負担を大きく軽減する。
【００２４】
また、従来のように、手作業でワープロ入力を行うのに比して、迅速且つ正確に文章作成・ワープロ入力が可能となる。
【発明を実施するための最良の形態】
【００２５】
バーコードのスリット幅と、後掲の式に基づいて算出したスリム幅を、使用するレーザープリンタにとって最適の数値に、設定する。
【００２６】
目的別に使用頻度の高い文言・慣用句を分類し、その語群を作成する。次に、それらが入力される場所等について、番号や記号によってデータ補強をし、これらを重複しないコード、またはアドレスで各々ナンバリングして、ランダムアクセスファイル、またはバーコードナンバーインデックス付ファイルとしてコンピュータの記憶装置に記憶させる。続いて、この中から、用途別に各文言を選定し、レイアウトを適宜決め、バーコード表にして印刷する。
【００２７】
先述表中のバーコードを読取装置で読み取ると、コンピュータのプログラムが、入力されたコードデータからファイルにある文字を取り出し、目的の場所に文章にして書き連ねる。
【実施例】
【００２８】
先述の通り、レーザープリンタでバーコードを印刷しようとする場合、その直線は、連続する円状ドットで表され、ドットの6分の1程度の大きさの方眼寸法を、制御密度（ドット幅）として設計されているのが一般的である。
【００２９】
直線は、この方眼の対角線の交点を中心とするドットの連続によって印刷される。しかし、例えば図２のように、ドットを連続させて直線を印刷しようとすると、直線の左右に弧が余分に印刷される。これが、バーコードの白色部分、つまり二進法における「０」の領域を侵害する。この、白色を侵害する部分は、ドット円1個分とほぼ等しい。
【００３０】
そこで、バーコードを印刷する際、黒色から白色部分へ、つまり二進数の「１」から「０」へ変わる時のみ、余分に印刷されてしまう弧の部分について、その最大幅の値を予め減じて印刷するよう設定する。この値を、以下スリム幅と称する。
【００３１】
例えば図２のように、バーコードを構成するひとつのスリットを、図中位置１から１３までの12ドット幅とする場合、そのスリットの左右に3ドット幅ずつ、計６ドット幅、余分な弧が印刷される。つまり、実際は１８ドット幅印刷されたことになる。そこで、図３のように、スリム幅を６と設定することで、印刷段階で６ドット幅減じて１２ドット幅で印刷され、均等な横幅をもつスリットが印刷される。その際、白色・黒色、つまり二進法の「１」「０」に関わらず、バーコードを構成する単位として、一つのスリットの幅を、ドット幅数で決めておく必要がある。この値を、以下スリット幅と称する。
【００３２】
スリット幅１２に対するスリム幅は６であるが、スリット幅が大きくなっても、スリム幅の値はほぼ一定である。これは、ドットの大きさと、ドット幅によって、スリム幅が決定するからである。両者の関係は、次のように表すことが出来る。
【００３３】
尚、単にスリム幅を設定しただけで印刷すると、その分バーコードの印刷開始位置が左方向にずれてしまう。そこで、図３のように、スリム幅の半分だけ、印刷開始位置を右方向にずらすよう、設定する。つまり、2進数の１から０に変わるときだけスリム幅で調整した幅の印刷をする。
【００３４】
スリム幅＝ドット円の直径/ドット幅
【００３５】
以上のように、スリット幅を設定し、それに対するスリム幅を算出し、設定するだけでバーコード印刷が可能となる。「１」「０」に関わらず、そのスリット幅を予め設定するので、バーコードの全長は自在に変えられ、コンパクトなサイズのバーコードも印刷できる。図７のように、Ａ４サイズの用紙一枚に２００個以上のバーコードを、文章付きで一覧にして印刷することが可能である。
【００３６】
図4図5のように、まず、バーコードリーダから送られる機械的な信号と、キーボードなどからくる手作業による入力のキー間隔とについて、各々そのデータ間の時間が規則的か否かを、コンピュータのプログラムが調べる。そして、各データ間隔が規則的である、換言すれば、機械的精度を有する入力データについて、バーコードからのデータであると判別する。図４中にあるようにタイマーを10msecにセットし、１０msec程度の連続するデータが、バーコードのtop識別データから末端のデータまで途切れずに入力されるのを、識別するのである。
【００３７】
２of５のバーコードは、バーコードリーダーからの識別を、”T“からデータの終了”改行”までとされているのが一般的である。この識別は、例えばJANコードの場合は“J”などとなる。ここでは、２of５を利用する場合を想定する。
【００３８】
バーコードからのデータであると識別した情報については、即時に画面に表示するのではなく、そのバーコードの桁数やバーコードの頭２桁の区分、最終的にはそのバーコードをインデックスとして、各バーコードについて予め記憶されているファイルの中から様々な補助情報を取り出す。
【００３９】
これによって、バーコードリーダが読み取ったバーコードは、その数字データが画面に表示されることなく、予め設定されている場所等へカーソルが自動的に移動した後、データとして処理される。
【００４０】
以下、図４・５に沿って詳述する。まず、キー割り込みイベントが発生したら、バーフラッグがtrueかを確認し、falseであれば、通常キーボードからの割り込みイベントとして処理する。
【００４１】
バーフラッグがtrueであれば、積込禁止フラッグがtrueかを確認する。trueであれば、通常にキャラクターを処理した上で、バーコードを画面に表示し、タイマーEnableをfalseにする。また、積込禁止フラッグがfalseであっても、キャラクターが”T“であれば、同様に通常にキャラクターを処理した上で、バーコードを画面に表示し、タイマーEnableをfalseにする。
【００４２】
キャラクターが”T“でなければ、キーバッファが空かを確認する。空であれば、キーバッファ先頭に”T“を置いてバーフラッグをtrueにし、タイマーを10msecにセットするところから再度以上の動作を繰り返す。
【００４３】
キーバッファが空でなければ、キャラクターが”改行“であるかを確認し、”改行“であれば、桁数が12桁、8桁もしくは10桁かを確認し、いずれでもなければ、エラー表示して、バーコードとして処理できない旨を通告して中断する。
【００４４】
桁数が12桁であれば、図６に示すように例えばそれは患者コードであるとする。現在画面に取り出しているカルテを格納してから、バーコードで指定された患者コードのカルテを画面に取り出す。そしてカルテ画面内の前回記載最終行を3〜5行表示したのち、カーソルをその直下に置き、次の入力に備える。
【００４５】
桁数が8桁であれば、図６に示すように日付をカルテに記述する。例えば図６のように、「20050910」というバーコードは、「日付」を「日付欄」に入力するよう記憶されている。従って、「20050910」というバーコードを読み取ると、今日の「日付」が「日付欄」に入力される。
【００４６】
桁数が10桁であれば、バーコード10桁をインデックスキーとして図６に示すような補助ファイルを読み込む。
【００４７】
補助ファイルは、予め、使用頻度の高い文節・慣用句等を分類し、図６のように、その文章が各々入力される場所等について、番号や記号によってデータ補強をし、これらを重複しないコード、またはアドレスで各々ナンバリングして、ランダムアクセスファイル、またはバーコードナンバーインデックス付ファイルとしてコンピュータの記憶装置に記憶させているものである。
【００４８】
例えば図6中「0112703710」というバーコードには、「再診」という入力内容、その入力内容が「診療位置」という区分のカルテ記載位置に記述されること、この入力内容が「メモ」、「病名」区分に属していないということ、「内服薬・外用薬・注射他」の分類中01というグループに所属しており、「有料」で診療報酬は「73」点であることが記憶されている。
【００４９】
また、同じく図6中「2111140694」というバーコードには、「ロキソニン錠60ｍｇ」という入力内容、その入力内容が「投薬欄」という区分のカルテ記載位置に記述されること、この入力内容が「メモ」、「病名」区分に属していないということ、「内服薬・外用薬・注射他」の分類中「21」というグループに所属しており、「有料」で診療報酬は「25.2」点であることが記憶されている。
【００５０】
同様に、図6中「1700009200」というバーコードには、「診断書（普通）」を「自費記載欄」に入力、「有料」で診療報酬は「100」点と表示する、というバーコード固有の情報を持たせているし、「1700009255」というバーコードには、「1日2度来院」を「摘要欄」に入力、「1700009261」というバーコードには、「保険証変更」を「メモ欄」に入力、「1104389014」というバーコードには、「脳梗塞後遺症」を「病名欄」に入力、というように、それぞれのバーコードナンバーに、「入力内容」、「カルテ記載位置」を初めとする様々な情報を持たせている。
【００５１】
キャラクターが”改行“でなければ、キャラクターが0〜9であるかを確認する。0〜9のいずれかであれば、キーバッファに連結して留め、再度タイマーを10msecにセットするところから以上の動作を繰り返す。
【００５２】
キャラクターが0〜9のいずれでもなければ、タイマーEnableをfalseにしてバーフラッグをfalseにする。そして、キーバッファが空かを確認し、空であればキーバッファ積込禁止フラッグをtrueにする。
【００５３】
キーバッファが空でなければ、キーバッファ先頭の１文字をキャラクターとする。次にキーバッファ積込禁止フラッグをtrueにしてから、キーキャラクターをセンドキーしてキーバッファから今送出したキャラクターを除き、再度タイマーEnableをfalseにしてバーフラッグをfalseにするところから以上の動作を繰り返す。
【００５４】
以上述べてきた、バーコード印刷方法と、その読み取りに関する機能を、ワープロ入力に適用する。以下詳述する。
【００５５】
例えば図７のように、頭語とそれに対応する結語、時候の挨拶等を予めバーコード化しておく。そしてそれらバーコードを紙面上で自在にレイアウトして、文字と共に印刷する。
【００５６】
バーコードワープロを電子カルテに応用し、医療機関に普及させる。
【００５７】
カルテに記載される内容には、専門的且つ繰り返しや類似表現が多く、また病名には画数の多い複雑な漢字も少なくない。
【００５８】
そこで、こうした記述内容を分類し、バーコード化することで、電子カルテの入力作業の効率化を図る。
【００５９】
例えば、図７のように、「リプレイ」「歯式・処置欄」「メモ欄」「ROLL-UP」、「ROLL-DOWN」と名称をつけてバーコードを印刷する。
【００６０】
また、図８のように、このバーコードワープロを応用すれば、患者のマーキングしたところをバーコード読取装置でなぞるだけで、主訴の文章がそのまま入力できる。例えば「いつ頃から」、「どんな時に」、「どのあたりに」、「どの程度」、「どんな症状」が出るのかについての患者の選択肢である各文節を予めそれぞれバーコード化する。バーコードリーダーの照射色は赤色が一般的であるから、患者に赤色のペンで問診表に記入してもらえば、バーコードの読み取りには支障がない。
【００６１】
カルテへの入力だけでなく、図４・５に示したように、現在画面に取り出しているカルテを格納してから、バーコードで指定された番号のカルテを画面に取り出し、カルテ画面中前回の記載最終行を3〜5行表示したのち、カーソルをその直下に置き、次の入力に備える、といった一連の作業も、ひとつのバーコードに記憶させておき、そのバーコードを読み取るだけで実行する。
【００６２】
さらに、紙ベースのカルテが主流だった頃、カルテは概ね、医師の斜め右でメモをとるようにして書かれていたが、バーコードワープロで、ペン型の読取装置を使用すれば、その筆記スタイルを変える必要すらない。
【図面の簡単な説明】
【００６３】
【図１】レーザープリンタにおいて設計されているドットの大きさと、制御密度の大きさについて、例示した図である。
【図２】１２ドットの直線を印刷する場合を例に、実際に印刷される範囲が、指定されたドット数と等しくならないことについて示した図。
【図３】１２ドットのスリット幅のバーコードを例に、スリット幅・スリム幅を設定してバーコードを印刷した場合を示した図。
【図４】バーコードリーダーが読み取ったバーコードを読み取った時点から、その数字データが画面に表示されることなく、予め設定されている場所等へカーソルが自動的に移動した後、データとして処理されるまでをフローチャートで示した図。
【図５】図４の半分。
【図６】バーコード化された文節・慣用句等について、ランダムアクセスファイルまたはインデックス付ファイルとしてコンピュータの記憶装置に記憶させる内容について、例示した図。
【図７】バーコード化された文節・慣用句群を自在にレイアウトし、文字と共に実際に印刷した例を示した図。
【図８】バーコード作成方法及びバーコードワープロを問診表に応用した例を示した図。
【図１】
0004719920.tif 000002
【図２】
0004719920.tif 000003
【図３】
0004719920.tif 000004
【図４】
0004719920.tif 000005
【図５】
0004719920.tif 000006
【図６】
0004719920.tif 000007
【図７】
0004719920.tif 000008
【図８】
0004719920.tif 000009