(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、上記のように、プリンタの解像度に適したバーコードの構造を指定したページデータを生成する場合、解像度が異なる他のプリンタでは、バーコードを高い可読性で印刷することができなくなる。したがって、解像度の異なる複数のプリンタにて印刷物を作成する場合、プリンタの解像度毎にページデータを準備する必要がある。また、一の解像度のプリンタにて印刷物を作成する予定であっても、プリンタの故障等により、急遽、他の解像度のプリンタを使用する必要が生じることもあり、この場合、当該他の解像度のプリンタ用にページデータを新たに生成することが必要となる。
【0005】
本発明は上記課題に鑑みなされたものであり、同一のページデータを用いて、異なる2つの解像度において、高い可読性のバーコードを容易に形成することを目的としている。
【課題を解決するための手段】
【0006】
請求項1に記載の発明は、
ラスタライズ処理部において用いられるバーコードフォントデータ
のデータ構造であって、複数のキャラクタのそれぞれを示すとともに、エレメントであるバーとスペースとが交互に並ぶ複数のエレメントの配列をバーコードキャラクタとして、ページデータのプリントに伴うラスタデータの生成時に設定される第1解像度と、前記ページデータにてバーコードキャラクタとして設定されたキャラクタに割り当てられる所定のキャラクタサイズとの組合せに対して専用に準備され、各キャラクタを示すバーコードキャラクタに対して前記ラスタデータにおける各エレメントの幅の画素数を示す第1専用構造情報と、ページデータのプリントに伴うラスタデータの生成時に設定されるとともに、前記第1解像度と相違する第2解像度と、前記ページデータにてバーコードキャラクタとして設定されたキャラクタに割り当てられる前記所定のキャラクタサイズとの組合せに対して専用に準備され、前記各キャラクタを示すバーコードキャラクタに対して前記ラスタデータにおける各エレメントの幅の画素数を示す第2専用構造情報とを備え
、前記ラスタライズ処理部がページデータに対してラスタライズ処理を施してラスタデータを生成する際に、前記ラスタライズ処理に対する解像度が前記第1解像度または前記第2解像度の一方の解像度と一致する場合に、前記ページデータが示す前記所定のキャラクタサイズのバーコードキャラクタに対して前記一方の解像度に対応する専用構造情報が用いられる。
【0007】
請求項2に記載の発明は、請求項1に記載のバーコードフォントデータ
のデータ構造であって、前記各キャラクタを示すバーコードキャラクタに対して、各エレメントのモジュール数を示す標準構造情報をさらに備える。
【0008】
請求項3に記載の発明は、請求項1または2に記載のバーコードフォントデータ
のデータ構造であって、前記第1専用構造情報が、一の種類の対象物に対するプリントに伴うラスタデータの生成時に用いられ、前記各キャラクタを示すバーコードキャラクタに対して前記ラスタデータにおける各エレメントの幅の画素数を示す第1サブ構造情報と、他の一の種類の対象物に対するプリントに伴うラスタデータの生成時に用いられ、前記各キャラクタを示すバーコードキャラクタに対して前記ラスタデータにおける各エレメントの幅の画素数を示す第2サブ構造情報とを備える。
【0009】
請求項4に記載の発明は、ページデータ生成装置であって、請求項1ないし3のいずれかに記載の
データ構造を有するバーコードフォントデータを記憶する記憶部と、一のページのバーコード領域に対して前記バーコードフォントデータが指定される際に、前記バーコードフォントデータを含むページデータを生成するページデータ生成部とを備える。
【0010】
請求項5に記載の発明は、ラスタデータ生成装置であって、
複数のキャラクタのそれぞれを示すとともに、エレメントであるバーとスペースとが交互に並ぶ複数のエレメントの配列をバーコードキャラクタとして、ページデータのプリントに伴うラスタデータの生成時に設定される第1解像度と、前記ページデータにてバーコードキャラクタとして設定されたキャラクタに割り当てられる所定のキャラクタサイズとの組合せに対して専用に準備され、各キャラクタを示すバーコードキャラクタに対して前記ラスタデータにおける各エレメントの幅の画素数を示す第1専用構造情報と、ページデータのプリントに伴うラスタデータの生成時に設定されるとともに、前記第1解像度と相違する第2解像度と、前記ページデータにてバーコードキャラクタとして設定されたキャラクタに割り当てられる前記所定のキャラクタサイズとの組合せに対して専用に準備され、前記各キャラクタを示すバーコードキャラクタに対して前記ラスタデータにおける各エレメントの幅の画素数を示す第2専用構造情報と、を備えるバーコードフォントデータを記憶する記憶部と、ラスタライズ処理に対する解像度の入力を受け付ける入力部と、前記解像度が前記第1解像度または前記第2解像度の一方の解像度と一致する場合に、入力されるページデータが示す前記所定のキャラクタサイズのバーコードキャラクタに対して前記一方の解像度に対応する専用構造情報を用いつつ、前記ページデータに対して前記ラスタライズ処理を施してラスタデータを生成するラスタライズ処理部とを備える。
【0011】
請求項6に記載の発明は、
ラスタデータ生成装置におけるラスタデータ生成方法であって、a)
複数のキャラクタのそれぞれを示すとともに、エレメントであるバーとスペースとが交互に並ぶ複数のエレメントの配列をバーコードキャラクタとして、ページデータのプリントに伴うラスタデータの生成時に設定される第1解像度と、前記ページデータにてバーコードキャラクタとして設定されたキャラクタに割り当てられる所定のキャラクタサイズとの組合せに対して専用に準備され、各キャラクタを示すバーコードキャラクタに対して前記ラスタデータにおける各エレメントの幅の画素数を示す第1専用構造情報と、ページデータのプリントに伴うラスタデータの生成時に設定されるとともに、前記第1解像度と相違する第2解像度と、前記ページデータにてバーコードキャラクタとして設定されたキャラクタに割り当てられる前記所定のキャラクタサイズとの組合せに対して専用に準備され、前記各キャラクタを示すバーコードキャラクタに対して前記ラスタデータにおける各エレメントの幅の画素数を示す第2専用構造情報と、を備えるバーコードフォントデータを準備する工程と、b)ラスタライズ処理に対する解像度の入力を受け付ける工程と、c)前記解像度が前記第1解像度または前記第2解像度の一方の解像度と一致する場合に、入力されるページデータが示す前記所定のキャラクタサイズのバーコードキャラクタに対して前記一方の解像度に対応する専用構造情報を用いつつ、前記ページデータに対して前記ラスタライズ処理を施してラスタデータを生成する工程とを備える。
【0012】
請求項7に記載の発明は、コンピュータにラスタデータを生成させるプログラムであって、前記プログラムをコンピュータのCPUがメモリにおいて実行することにより、前記コンピュータに、a)
複数のキャラクタのそれぞれを示すとともに、エレメントであるバーとスペースとが交互に並ぶ複数のエレメントの配列をバーコードキャラクタとして、ページデータのプリントに伴うラスタデータの生成時に設定される第1解像度と、前記ページデータにてバーコードキャラクタとして設定されたキャラクタに割り当てられる所定のキャラクタサイズとの組合せに対して専用に準備され、各キャラクタを示すバーコードキャラクタに対して前記ラスタデータにおける各エレメントの幅の画素数を示す第1専用構造情報と、ページデータのプリントに伴うラスタデータの生成時に設定されるとともに、前記第1解像度と相違する第2解像度と、前記ページデータにてバーコードキャラクタとして設定されたキャラクタに割り当てられる前記所定のキャラクタサイズとの組合せに対して専用に準備され、前記各キャラクタを示すバーコードキャラクタに対して前記ラスタデータにおける各エレメントの幅の画素数を示す第2専用構造情報と、を備えるバーコードフォントデータを準備する工程と、b)ラスタライズ処理に対する解像度の入力を受け付ける工程と、c)前記解像度が前記第1解像度または前記第2解像度の一方の解像度と一致する場合に、入力されるページデータが示す前記所定のキャラクタサイズのバーコードキャラクタに対して前記一方の解像度に対応する専用構造情報を用いつつ、前記ページデータに対して前記ラスタライズ処理を施してラスタデータを生成する工程とを実行させる。
【発明の効果】
【0013】
本発明によれば、同一のページデータを用いて、異なる2つの解像度において、所定のキャラクタサイズの高い可読性のバーコードを容易に形成することができる。
【発明を実施するための形態】
【0015】
図1は、本発明の第1の実施の形態に係る印刷システム1の構成を示すブロック図である。印刷システム1は、ページデータの生成に用いられるコンピュータ2aと、ラスタデータの生成に用いられるコンピュータ2bと、例えばインクジェット方式のプリンタ11と、を備える。印刷システム1では、公共料金の請求書等のようにページ毎に内容が異なる印刷(いわゆる、バリアブル印刷)が行われる。プリンタ11は、電子写真方式等であってもよい。
【0016】
図2に示すように、各コンピュータ2a,2b(
図2では、符号2を付している。)は、各種演算処理を行うCPU21、基本プログラムを記憶するROM22および各種情報を記憶するRAM23をバスラインに接続した一般的なコンピュータシステムの構成となっている。バスラインにはさらに、情報記憶を行う固定ディスク25、各種情報の表示を行うディスプレイ26、操作者からの入力を受け付けるキーボード27aおよびマウス27b、光ディスク、磁気ディスク、光磁気ディスク等のコンピュータ読み取り可能な記録媒体91から情報の読み取りを行ったり記録媒体91に情報の書き込みを行う読取/書込装置28、並びに、外部と通信を行う通信部29が、適宜、インターフェイス(I/F)を介する等して接続される。
【0017】
コンピュータ2a,2bには、事前に読取/書込装置28を介して記録媒体91からプログラム92が読み出され、固定ディスク25に記憶される。そして、プログラム92がRAM23にコピーされるとともにCPU21がRAM23内のプログラムに従って演算処理を実行することにより(すなわち、コンピュータがプログラムを実行することにより)、コンピュータ2a,2bが、後述の処理を行う。
【0018】
図3は、コンピュータ2aが実現する機能構成を示すブロック図である。コンピュータ2aは、入力部31と、ページデータ生成部32と、記憶部33と、を備える。入力部31は、キーボード27aやマウス27b等により実現される。ページデータ生成部32は、入力部31を介した操作者の入力に従って、多数のページを示すとともにページ記述言語(PDF(Portable Document Format)や、PostScript(登録商標)等)にて記述されるページデータ7を生成する。なお、ページデータ生成部32の全部または一部の機能は、市販の帳票データ生成アプリケーション等のソフトウェアにて実現可能である。記憶部33は、ページデータ7の各ページに含まれるバーコードの表示や印刷に用いられるバーコードフォントデータ8や、各種フォントデータ(図示省略)等を記憶する。
図3では、他方のコンピュータ2bが実現する機能構成であるラスタライズ処理部42を、破線のブロックにて示している。
【0019】
ここで、ページデータ7について説明する。
図4は、ページデータ7が示す一のページ71を例示する図である。
図4に示すページ71は、一の帳票、例えば請求書を示すものであり、絵柄領域711と、テキスト領域712と、バーコード領域713と、を含む。絵柄領域711は、所定の商品を示す写真や企業の標章等の絵柄を示し、テキスト領域712は、顧客の宛名や請求内容の詳細等、主としてキャラクタ列を示す。ここで、キャラクタは文字および記号を含む。テキスト領域712には、所望の種類のフォントを示すフォントデータが指定されるとともに、所望のキャラクタサイズ(文字サイズ)が割り当てられる。バーコード領域713は、顧客毎に割り当てられた識別符号(ID)や請求書に割り当てられた番号等のキャラクタ列を示す。バーコード領域713には、バーコードフォントデータ8が指定されるとともに、バーコードを各種規格(標準)化されたガイドラインに適合させて印刷(形成)するために予め定められたキャラクタサイズ(以下、「事前指定サイズ」という。)が割り当てられる。
【0020】
次に、バーコードフォントデータ8について説明する。
図5は、バーコードフォントデータ8のデータ構造を示す図である。バーコードフォントデータ8は、標準構造情報81と、360dpi(dots per inch)専用構造情報82と、720dpi専用構造情報83と、600dpi専用構造情報84と、を含む。本実施の形態の一例であるバーコードフォントデータ8は、「料金代理収納用GS−128」として知られるコード128(Code128)の応用規格のバーコードをディスプレイ26に表示、または、対象物上に印刷するためのデータである。バーコードフォントデータ8は、他の規格のバーコードを表示、または、印刷するためのデータであってもよい。ここでは、複数のキャラクタのそれぞれを示すとともに、エレメントであるバーとスペースとが交互に並ぶ複数のエレメントの配列をバーコードキャラクタと定義する。標準構造情報81は、各キャラクタを示すバーコードキャラクタに対して、各エレメントのモジュール数を示す。ここで、「モジュール」は、バーコードにおけるエレメントの幅の最小単位(基本単位)である。
【0021】
例えば、キャラクタ番号13のキャラクタは、モジュール数1のバー、モジュール数2のスペース、モジュール数2のバー、モジュール数1のスペース、モジュール数3のバー、モジュール数2のスペースが交互に密に並ぶバーコードキャラクタにて示される。また、キャラクタ番号63のキャラクタは、モジュール数1のバー、モジュール数1のスペース、モジュール数1のバー、モジュール数2のスペース、モジュール数2のバー、モジュール数4のスペースが交互に密に並ぶバーコードキャラクタにて示される。このように、各キャラクタを示すバーコードキャラクタでは、原則として、6個のエレメントが含まれ、総モジュール数は11となる。なお、バーコードにおいて特別な役割を果たすストップキャラクタは、モジュール数2のバー、モジュール数3のスペース、モジュール数3のバー、モジュール数1のスペース、モジュール数1のバー、モジュール数1のスペース、モジュール数2のバーが交互に密に並ぶバーコードキャラクタにて示される。ストップキャラクタを示すバーコードキャラクタでは、7個のエレメントが含まれ、総モジュール数は13となる。
【0022】
ページデータ7におけるバーコード領域713の情報をディスプレイ26に表示する際には、ページデータ7にてバーコードキャラクタとして設定されたキャラクタに割り当てられるキャラクタサイズ(ここでは、事前指定サイズ)等から、標準構造情報81に基づいて表現される理想的なバーコードキャラクタが、ディスプレイ26の解像度に合わせて画素単位に量子化される。
【0023】
一方、360dpi専用構造情報82、720dpi専用構造情報83、および、600dpi専用構造情報84は、ページデータ7の印刷(プリント)に伴うラスタデータの生成に利用される。具体的には、解像度360dpiのプリンタにてページデータ7を印刷する場合、360dpi専用構造情報82が、当該プリンタにて利用されるラスタデータの生成に用いられる。また、解像度720dpiのプリンタにてページデータ7を印刷する場合、720dpi専用構造情報83が、当該プリンタにて利用されるラスタデータの生成に用いられる。さらに、解像度600dpiのプリンタにてページデータ7を印刷する場合、600dpi専用構造情報84が、当該プリンタにて利用されるラスタデータの生成に用いられる。このように、複数の専用構造情報82〜84は、互いに相違する複数の解像度にそれぞれ対応する。以下の説明では、360dpi、720dpiおよび600dpiの解像度を「対象解像度」という。
【0024】
既述のように、ページデータ7において、バーコードキャラクタとして設定されたキャラクタには、事前指定サイズが割り当てられている。後述するように、専用構造情報82〜84は、事前指定サイズのバーコードキャラクタのラスタライズにのみ排他的に用いられる。したがって、各対象解像度に対する専用構造情報82〜84は、ページデータ7の印刷に伴うラスタデータの生成時に設定される当該対象解像度と、ページデータ7にてバーコードキャラクタとして設定されたキャラクタに割り当てられる事前指定サイズとの組合せに対して専用に準備されるデータである。専用構造情報82〜84は、各キャラクタを示すバーコードキャラクタに対して、ラスタデータにおける各エレメントの幅の画素数を示す。
【0025】
図6ないし
図8のそれぞれは、一のキャラクタを示すバーコードキャラクタ80を対象解像度毎に示す図である。
図6ないし
図8の上段は360dpi専用構造情報82が示すバーコードキャラクタ80であり、中段は720dpi専用構造情報83が示すバーコードキャラクタ80であり、下段は600dpi専用構造情報84が示すバーコードキャラクタ80である。
図6は、複数のエレメント801のモジュール数が1、2、2、1、3、2となるキャラクタ番号13のバーコードキャラクタ80を示し、
図7は、複数のエレメント801のモジュール数が1、1、1、2、2、4となるキャラクタ番号63のバーコードキャラクタ80を示し、
図8は、複数のエレメント801のモジュール数が2、3、3、1、1、1、2となるストップキャラクタのバーコードキャラクタ80を示す。
【0026】
図6ないし
図8では、各エレメント801の幅を矢印にて示し、当該矢印の上または下に画素数を示している。例えば、「2px」は、画素数が2であることを示す。360dpi専用構造情報82は、
図6の上段に示すように、キャラクタ番号13のキャラクタを、画素数2のバー(
図6では、2個の濃い色のブロックの集合であるエレメント801)、画素数6のスペース(
図6では、6個の薄い色のブロックの集合であるエレメント801)、画素数5のバー、画素数3のスペース、画素数8のバー、画素数6のスペースが交互に密に並ぶバーコードキャラクタ80にて示す。すなわち、360dpi専用構造情報82では、キャラクタ番号13のキャラクタが、2、6、5、3、8、6の画素数の列にて示される。
【0027】
同様に、
図7の上段に示すように、キャラクタ番号63のキャラクタが、2、3、2、6、5、12の画素数の列にて示され、
図8の上段に示すように、ストップキャラクタが、5、9、8、3、2、3、5の画素数の列にて示される。このように、360dpi専用構造情報82では、各キャラクタを示すバーコードキャラクタ80における各バーの画素数が、標準構造情報81における当該バーのモジュール数をMbとして、((Mb・3)−1)として求められる。また、各スペースの画素数が、標準構造情報81における当該スペースのモジュール数をMsとして、(Ms・3)として求められる。360dpi専用構造情報82では、ストップキャラクタを除き、各バーコードキャラクタ80の幅の総画素数は30となり、ストップキャラクタを示すバーコードキャラクタ80の幅の総画素数は35となる。
【0028】
ここで、「料金代理収納用GS−128」では、モジュール数1に相当する幅が、下限値である0.1524mm以上、かつ、上限値である0.1907mm以下の範囲に含まれることが求められる。すなわち、モジュール数Nのエレメント801の幅は、上記下限値のN倍以上、かつ、上記上限値のN倍以下の範囲(以下、「エレメント幅許容範囲」という。)に含まれることが求められる。対象解像度360dpiのプリンタにてバーコードキャラクタ80を記録する際には、各キャラクタに対して360dpi専用構造情報82が示す画素数の列に従って複数のバーを記録することにより、各エレメント801がエレメント幅許容範囲を(およそ)満たすバーコードキャラクタ80が形成される。換言すると、各エレメント801がエレメント幅許容範囲を満たすバーコードキャラクタ80が解像度360dpiのプリンタにて印刷可能なように、360dpi専用構造情報82では、各キャラクタに対する画素数の列が決定されている(720dpi専用構造情報83および600dpi専用構造情報84において同様)。
【0029】
720dpi専用構造情報83では、
図6の中段に示すように、キャラクタ番号13のキャラクタが、3、12、8、7、13、12の画素数の列にて示される。また、
図7の中段に示すように、キャラクタ番号63のキャラクタが、3、7、3、12、8、22の画素数の列にて示され、
図8の中段に示すように、ストップキャラクタが、8、17、13、7、3、7、8の画素数の列にて示される。このように、720dpi専用構造情報83では、各キャラクタを示すバーコードキャラクタ80における各バーの画素数が、標準構造情報81における当該バーのモジュール数をMbとして、((Mb・5)−2)として求められる。また、各スペースの画素数が、標準構造情報81における当該スペースのモジュール数をMsとして、((Ms・5)+2)として求められる。
【0030】
720dpi専用構造情報83では、ストップキャラクタを除き、各バーコードキャラクタ80の幅の総画素数は55となり、ストップキャラクタを示すバーコードキャラクタ80の幅の総画素数は63となる。対象解像度720dpiのプリンタにてバーコードキャラクタ80を記録する際には、各キャラクタに対して720dpi専用構造情報83が示す画素数の列に従って複数のバーを記録することにより、エレメント幅許容範囲を満たすバーコードキャラクタ80が形成される。
【0031】
600dpi専用構造情報84では、
図6の下段に示すように、キャラクタ番号13のキャラクタが、2、10、6、6、10、10の画素数の列にて示される。また、
図7の下段に示すように、キャラクタ番号63のキャラクタが、2、6、2、10、6、18の画素数の列にて示され、
図8の下段に示すように、ストップキャラクタが、6、14、10、6、2、6、6の画素数の列にて示される。このように、600dpi専用構造情報84では、各キャラクタを示すバーコードキャラクタ80における各バーの画素数が、標準構造情報81における当該バーのモジュール数をMbとして、((Mb・4)−2)として求められる。また、各スペースの画素数が、標準構造情報81における当該スペースのモジュール数をMsとして、((Ms・4)+2)として求められる。
【0032】
600dpi専用構造情報84では、ストップキャラクタを除き、各バーコードキャラクタ80の幅の総画素数は44となり、ストップキャラクタを示すバーコードキャラクタ80の幅の総画素数は50となる。このように、複数の対象解像度においてバーコードキャラクタ80の幅の総画素数は互いに相違する。対象解像度600dpiのプリンタにてバーコードキャラクタ80を記録する際には、各キャラクタに対して600dpi専用構造情報84が示す画素数の列に従って複数のバーを記録することにより、エレメント幅許容範囲を満たすバーコードキャラクタ80が形成される。
【0033】
図6ないし
図8では、720dpi専用構造情報83が示す中段のバーコードキャラクタ80、および、600dpi専用構造情報84が示す下段のバーコードキャラクタ80を、360dpi専用構造情報82が示す上段のバーコードキャラクタ80に合わせて描いている。すなわち、対象解像度360dpiのプリンタ、対象解像度720dpiのプリンタおよび対象解像度600dpiのプリンタにおいて、実際に印刷用紙に印刷されるバーコードキャラクタ80のサイズの比は、
図6ないし
図8の上段、中段および下段に示すものと一致する。ただし、実際の印刷では、インクの滲み等が生じる。
【0034】
図6ないし
図8に示すように、同じ事前指定サイズのバーコードキャラクタ80を印刷する場合でも、印刷用紙上におけるバーコードキャラクタ80の横方向(エレメント801の配列方向)の幅は、対象解像度に応じて相違する。換言すると、各エレメント801がエレメント幅許容範囲を満たすバーコードキャラクタ80が印刷可能なように、一定のキャラクタサイズであっても、対象解像度毎にバーコードキャラクタ80の幅が相違する。なお、バーコードキャラクタ80の縦方向の画素数は、事前指定サイズのポイント数に応じて対象解像度毎に決定される。
【0035】
図9は、印刷システム1が印刷物を作成する処理の流れを示す図である。印刷物の作成では、まず、
図3のページデータ生成部32において、操作者の入力に従って一の帳票、例えば請求書を示すページのテンプレートがデザインされる。テンプレートのデザインでは、全てのページにおいて共通となる、複数の領域のレイアウトが決定されるとともに(ステップS11)、各領域に対して必要に応じてフォントデータおよびキャラクタサイズの指定が行われる(ステップS12)。ここでは、
図4のページ71における絵柄領域711、テキスト領域712およびバーコード領域713のレイアウトが決定される。また、テキスト領域712に対して所望のフォントデータおよびキャラクタサイズが指定されるとともに、バーコード領域713に対してバーコードフォントデータ8および事前指定サイズが指定される。
【0036】
記憶部33には、テキスト領域712に記載すべき情報や、バーコード領域713にバーコードとして記載すべき情報を顧客毎に記録したデータ(図示省略)が予め記憶される。ページデータ生成部32では、各顧客に対してテンプレートを用いて一のページを生成し、テキスト領域712およびバーコード領域713にそれぞれ対応する情報を差し込むことにより、多数の顧客に対する多数のページを示すページデータ7が生成される(ステップS13)。このとき、バーコード領域713にて利用されるバーコードフォントデータ8がページデータ7に埋め込まれる(エンベッドされる)。本実施の形態では、ページデータ生成部32にて生成されるページデータ7の形式が、PDFである。もちろん、ページデータ7は他の形式であってもよい。
【0037】
以上のように、ページデータ生成部32および記憶部33がページデータ生成装置として協働し、一のページのバーコード領域713に対してバーコードフォントデータ8が指定される際に、バーコードフォントデータ8を含むページデータ7が生成される。なお、ページデータの生成途上または生成後に各ページをディスプレイ26に表示する際には、バーコード領域713におけるバーコードキャラクタは標準構造情報81を用いて表示される。
【0038】
ページデータ7は、プリンタ11に接続されたコンピュータ2bに入力される。ラスタライズ処理部42では、当該プリンタ11の解像度が、ラスタライズ処理に対する解像度(以下、「処理解像度」という。)として予め入力されて設定される。そして、処理解像度に合わせてページデータ7に対してラスタライズ処理が施され、ラスタデータが生成される(ステップS14)。
【0039】
このとき、バーコード領域713の各キャラクタに対するラスタライズ処理では、バーコード領域713に割り当てられるキャラクタサイズ(ポイント数)、および、処理解像度から、各キャラクタに割り当てられる縦方向および横方向の画素数(以下、「特定画素数」という。)が演算により求められる。特定画素数が、事前指定サイズおよび解像度360dpiから同様の演算により導かれる画素数に一致する場合には、ページデータ7に含まれるバーコードフォントデータ8において360dpi専用構造情報82が選択される。そして、バーコード領域713の各キャラクタは、360dpi専用構造情報82が示す当該キャラクタのバーコードキャラクタ80としてラスタライズされる。すなわち、ラスタデータにおいて、バーコード領域713の各キャラクタが、幅の総画素数が30または35であるバーコードキャラクタ80にて表される。バーコードキャラクタ80の縦方向の画素数は、例えば、特定画素数に一致する(以下同様)。
【0040】
なお、特定画素数と、360dpi専用構造情報82が示すバーコードキャラクタ80の幅の総画素数とは一致しない(720dpi専用構造情報83および600dpi専用構造情報84が選択される場合において同様)。この場合でも、ラスタライズ処理部42では、ラスタデータが示す画像において、バーコードキャラクタ80の幅の総画素数に合わせて、連続する複数のバーコードキャラクタ80の位置を順次設定することにより、複数のバーコードキャラクタ80を隙間なく配列可能である。
【0041】
また、特定画素数が、事前指定サイズおよび解像度720dpiから導かれる画素数に一致する場合には、ページデータ7に含まれるバーコードフォントデータ8において720dpi専用構造情報83が選択される。そして、バーコード領域713の各キャラクタは、720dpi専用構造情報83が示す当該キャラクタのバーコードキャラクタ80としてラスタライズされる。すなわち、ラスタデータにおいて、バーコード領域713の各キャラクタが、幅の総画素数が55または63であるバーコードキャラクタ80にて表される。
【0042】
さらに、特定画素数が、事前指定サイズおよび解像度600dpiから導かれる画素数に一致する場合には、ページデータ7に含まれるバーコードフォントデータ8において600dpi専用構造情報84が選択される。そして、バーコード領域713の各キャラクタは、600dpi専用構造情報84が示す当該キャラクタのバーコードキャラクタ80としてラスタライズされる。すなわち、ラスタデータにおいて、バーコード領域713の各キャラクタが、幅の総画素数が44または50であるバーコードキャラクタ80にて表される。
【0043】
印刷システム1では、プリンタ11の解像度は、360dpi、720dpiまたは600dpiの対象解像度のいずれかであり、ページデータ7においてバーコード領域713に対して事前指定サイズが割り当てられている。したがって、バーコード領域713のキャラクタに対していずれかの専用構造情報82〜84を用いつつラスタデータが生成される。プリンタ11では、当該ラスタデータに従って印刷用紙上に印刷が行われ、ページデータ7が示す多数のページを示す印刷物が作成される(ステップS15)。印刷システム1では、ラスタデータの連続的な生成と、生成済みのラスタデータ(の部分)に従った印刷とが並行して行われる。
【0044】
ここで、印刷物を作成する比較例の処理について述べる。比較例の処理では、バーコードフォントデータが、各キャラクタを示すバーコードキャラクタに対して各エレメントのモジュール数を示す標準構造情報81のみを含む。この場合、標準構造情報81に基づいて表現される理想的なバーコードキャラクタが、プリンタ11の解像度に合わせて画素単位に量子化される。したがって、
図10の上段に示すように、理想的なバーコードキャラクタのバー901の幅が、プリンタ11の解像度に基づく画素の幅の整数倍とならない場合、量子化誤差が発生する。これにより、
図10の下段に示すように、ラスタデータにおけるバー902の幅、および、バー902間のスペースの幅が、理想的なバーコードキャラクタにおける幅から大きくずれてしまう。その結果、当該ラスタデータに従って印刷された印刷物では、バーコードの可読性が低下する。また、プリンタ11では、
図11の上段に示すラスタデータにおけるバー903の幅に対して、実際に印刷用紙上に形成されるバー904の幅が、
図11の下段に示すようにインクの滲みにより広くなる(すなわち、スペースの幅が細くなる。)。この場合も、印刷物では、バーコードの可読性が低下する。
【0045】
これに対し、印刷システム1では、第1の対象解像度の専用構造情報と、第1の対象解像度と相違する第2の対象解像度の専用構造情報と、を含むバーコードフォントデータ8が準備され、ページデータ7にバーコードフォントデータ8が含められる。各専用構造情報では、対応する対象解像度における量子化誤差、および、インクの滲みを考慮した各エレメント801の幅の画素数が、各キャラクタに対して定められている。そして、ページデータ7を第1の対象解像度のプリンタで印刷する際に、第1の対象解像度の専用構造情報を選択的に用いて事前指定サイズのバーコードキャラクタ80のラスタライズ処理が行われる。また、ページデータ7を第2の対象解像度のプリンタで印刷する際に、第2の対象解像度の専用構造情報を選択的に用いて事前指定サイズのバーコードキャラクタ80のラスタライズ処理が行われる。これにより、同一のページデータ7を用いて、異なる2つの対象解像度において、事前指定サイズの高い可読性のバーコードを、エレメント幅許容範囲を満たしつつ容易に形成する(プリントする)ことが実現される。
【0046】
その結果、一の解像度のプリンタにて印刷物を作成する予定である場合に、プリンタの故障等により、急遽、他の解像度のプリンタを使用する必要が生じたとしても、ページデータを新たに生成する必要はなく、プリンタの急な振り替えに柔軟に対応することができる。換言すると、ページデータ7を印刷する際におけるプリンタの選択の自由度を確保することができる。また、解像度が異なる複数のプリンタにて印刷物を作成する場合でも、当該複数のプリンタに対して個別のページデータを作成する必要もない。
【0047】
ページデータ生成部32では、バーコード領域713に事前指定サイズを割り当てつつページデータ7にバーコードフォントデータ8を埋め込むのみにより、実際に使用するプリンタの解像度やインクの滲み等の印刷特性を意識することなく、高品位なバーコードの印刷が可能なページデータ7を容易に(手間を掛けること無く)生成することができる。このようなページデータ7の生成は、ソフトウェアの種類に依存することもなく、バーコードフォントデータ8は高い汎用性を有しているといえる。
【0048】
図12は、バーコードの印刷品質の評価結果を示す図である。
図12では、360dpi専用構造情報82、720dpi専用構造情報83、および、600dpi専用構造情報84のそれぞれを用いて生成したラスタデータを、解像度360dpiのプリンタ、解像度720dpiのプリンタ、および、解像度600dpiのプリンタにて印刷した際におけるバーコードの印刷品質を、ISO/IEC15416規格に従って評価した結果を示している。評価結果では、「A」が最も可読性が高く、「B」、「C」、「D」の順で可読性が低くなり、「F」は可読性が保証できないことを示す。
図12から、各専用構造情報82〜84を用いて生成したラスタデータを、当該専用構造情報82〜84に対応する解像度のプリンタにて印刷した場合に、高い印刷品質が得られることが判る。バーコードフォントデータ8では、対象解像度のプリンタにて印刷を行う際に、当該対象解像度に対応する専用構造情報82〜84を用いてラスタデータが生成されるため、
図12中の最も下の行に示すように、常に、高い印刷品質が得られる。
【0049】
図13は、バーコードフォントデータの他の例を示す図である。他の例に係るバーコードフォントデータの360dpi専用構造情報82aは、第1サブ構造情報821と、第2サブ構造情報822と、を含む。第1サブ構造情報821は、普通紙である印刷用紙に対する印刷に伴うラスタデータの生成時に用いられる。第2サブ構造情報822は、コート紙である印刷用紙に対する印刷に伴うラスタデータの生成時に用いられる。第1サブ構造情報821および第2サブ構造情報822のそれぞれは、各キャラクタを示すバーコードキャラクタに対してラスタデータにおける各エレメントの幅の画素数を示す。実際には、インクの滲みにより印刷用紙上におけるバーが広がる幅は、普通紙とコート紙とで相違するため、少なくとも一部のバーコードキャラクタにおいてエレメントの幅の画素数が、第1サブ構造情報821と第2サブ構造情報822とで相違する。本実施の形態におけるバーコードフォントデータ8では、720dpi専用構造情報83および600dpi専用構造情報84のそれぞれにおいても、普通紙に対する印刷に伴うラスタデータの生成時に用いられる第1サブ構造情報と、コート紙に対する印刷に伴うラスタデータの生成時に用いられる第2サブ構造情報と、を含む。
【0050】
ラスタライズ処理部42におけるページデータ7のラスタライズ処理では、バーコード領域713における事前指定サイズのキャラクタに対して、処理解像度に対応する専用構造情報82〜84を用いつつラスタデータが生成される。このとき、ラスタライズ処理部42では、プリンタ11にて用いられる印刷用紙の種類(ここでは、普通紙またはコート紙)が予め設定されるため、当該種類に応じて第1サブ構造情報または第2サブ構造情報が選択的に用いられる。プリンタ11では、当該ラスタデータに従って当該種類の印刷用紙上に印刷が行われる。
【0051】
以上のように、バーコードフォントデータ8における専用構造情報が、一の種類の対象物に対する印刷に伴うラスタデータの生成時に用いられる第1サブ構造情報と、他の一の種類の対象物に対する印刷に伴うラスタデータの生成時に用いられる第2サブ構造情報と、を含む。これにより、対象物の種類に合わせて、高い可読性のバーコードを容易に形成することができる。もちろん、バーコードフォントデータ8では、3以上の種類の対象物にそれぞれ対応する3以上のサブ構造情報が含まれてよい。
【0052】
図14は、本発明の第2の実施の形態に係るコンピュータ2bが実現する機能構成を示すブロック図である。既述のように、コンピュータ2b(
図2のコンピュータ2参照)では、事前に読取/書込装置28を介して記録媒体91からプログラム92が読み出され、固定ディスク25に記憶される。そして、プログラム92がRAM23にコピーされるとともにCPU21がRAM23内のプログラムに従って演算処理を実行することにより(すなわち、コンピュータがプログラムを実行することにより)、コンピュータ2bが、ラスタデータ生成部4としての処理を行う。ラスタデータ生成部4は、入力部41と、ラスタライズ処理部42aと、記憶部43と、を備える。
【0053】
図15は、ラスタデータ生成部4がラスタデータを生成する処理の流れを示す図である。ラスタデータ生成部4では、バーコードフォントデータ8が記憶部43に記憶されて準備される(ステップS21)。
図5の例と同様に、バーコードフォントデータ8は、標準構造情報81と、360dpi専用構造情報82と、720dpi専用構造情報83と、600dpi専用構造情報84と、を含む。バーコードフォントデータ8における専用構造情報82〜84が、複数のサブ構造情報を含んでいてもよい。また、操作者による処理解像度の入力が入力部41にて受け付けられ、処理解像度が、ラスタライズ処理部42aに設定される(ステップS22)。
【0054】
続いて、バーコードフォントデータを含まない、または、標準構造情報81のみを有するバーコードフォントデータを含むページデータが、ラスタデータ生成部4に入力される(ステップS23)。ラスタライズ処理部42aでは、ページデータに対してラスタライズ処理が施されラスタデータが生成される(ステップS24)。このとき、処理解像度がいずれかの対象解像度と一致する場合に、入力されるページデータが示す事前指定サイズのバーコードキャラクタに対して当該対象解像度に対応する専用構造情報82〜84を用いてラスタライズ処理が行われる。ラスタデータは、コンピュータ2bに接続されたプリンタ11における印刷にて用いられる。本実施の形態では、ラスタデータの連続的な生成と、生成済みのラスタデータ(の部分)に従った印刷とが並行して行われる。
【0055】
以上に説明したように、ラスタデータ生成装置であるラスタデータ生成部4では、記憶部43にてバーコードフォントデータ8が記憶され、ページデータから、いずれかの対象解像度のラスタデータを生成する際に、バーコードフォントデータ8における当該対象解像度に対応する専用構造情報が選択される。これにより、ラスタデータ生成部4に入力されるページデータがバーコードフォントデータ8を含まない場合であっても、当該対象解像度において、事前指定サイズの高い可読性のバーコードを、エレメント幅許容範囲を満たしつつ容易に形成することが実現される。
【0056】
上記印刷システム1およびラスタデータ生成部4では、様々な変形が可能である。例えば、記憶部33,43では、複数の規格にそれぞれ対応する複数のバーコードフォントデータ8が記憶されてよい。
【0057】
360dpi、720dpiおよび600dpiの対象解像度は、一例に過ぎず、他の解像度が対象解像度に含まれてよい。この場合、当該他の解像度の専用構造情報がバーコードフォントデータ8に含まれる。また、2種類または4種類以上の対象解像度が設定され、2個または4個以上の専用構造情報がバーコードフォントデータ8に含まれてもよい。さらに、バーコードフォントデータ8において、標準構造情報81が省略されてもよく、専用構造情報82〜84を用いて、バーコードキャラクタがディスプレイ26に表示されてもよい。
【0058】
上記実施の形態および各変形例における構成は、相互に矛盾しない限り適宜組み合わされてよい。