IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特許7471865情報処理装置、情報処理方法およびプログラム
<>
  • 特許-情報処理装置、情報処理方法およびプログラム 図1
  • 特許-情報処理装置、情報処理方法およびプログラム 図2
  • 特許-情報処理装置、情報処理方法およびプログラム 図3
  • 特許-情報処理装置、情報処理方法およびプログラム 図4
  • 特許-情報処理装置、情報処理方法およびプログラム 図5
  • 特許-情報処理装置、情報処理方法およびプログラム 図6
  • 特許-情報処理装置、情報処理方法およびプログラム 図7
  • 特許-情報処理装置、情報処理方法およびプログラム 図8
  • 特許-情報処理装置、情報処理方法およびプログラム 図9
  • 特許-情報処理装置、情報処理方法およびプログラム 図10
  • 特許-情報処理装置、情報処理方法およびプログラム 図11
  • 特許-情報処理装置、情報処理方法およびプログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-12
(45)【発行日】2024-04-22
(54)【発明の名称】情報処理装置、情報処理方法およびプログラム
(51)【国際特許分類】
   G06F 3/12 20060101AFI20240415BHJP
   B41J 3/01 20060101ALI20240415BHJP
   H04N 1/387 20060101ALI20240415BHJP
【FI】
G06F3/12 343
B41J3/01
G06F3/12 308
G06F3/12 344
H04N1/387
【請求項の数】 17
(21)【出願番号】P 2020033757
(22)【出願日】2020-02-28
(65)【公開番号】P2021135928
(43)【公開日】2021-09-13
【審査請求日】2023-02-16
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】橋本 佳典
【審査官】征矢 崇
(56)【参考文献】
【文献】特開2014-100874(JP,A)
【文献】特開2000-105794(JP,A)
【文献】特開2015-024526(JP,A)
【文献】特開2008-305137(JP,A)
【文献】特開2016-053760(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F3/12
B41J3/01
H04N1/387
(57)【特許請求の範囲】
【請求項1】
バーコードに変換される情報を取得する取得手段と、
所定の設定における設定内容と、前記取得手段が取得した前記情報に基づいて、当該情報を示すバーコードとして印刷装置により印刷される画像データを生成する生成手段と、
前記設定内容に対応するバー幅が条件を満たす場合、警告メッセージを出力する警告手段と、
を備え、
前記生成手段は、前記設定内容が第1の設定である場合、前記設定内容が第2の設定である場合よりもバーコードに含まれるバーの幅が狭く且つバーの間のスペースが広い画像データを生成し、
前記条件は、前記設定内容に対応するバー幅と、バー間の余白の幅との差分が閾値を上回ることを含む、
とを特徴とする情報処理装置。
【請求項2】
前記設定内容としての変更量を設定する設定手段、をさらに備え、
前記生成手段は、前記設定手段により設定された前記変更量に従って、前記バーコードのバー幅を変更する、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記設定手段は、ユーザ操作により受け付けた前記変更量を設定することを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記設定手段は、前記印刷装置における印刷に関する情報に基づいて、前記変更量を設定することを特徴とする請求項2に記載の情報処理装置。
【請求項5】
前記印刷装置における印刷に関する情報は、前記印刷装置の識別情報、画質、印刷解像度、の少なくともいずれかを含むことを特徴とする請求項4に記載の情報処理装置。
【請求項6】
前記設定手段は、印刷用紙に関する情報に基づいて、前記変更量を設定することを特徴とする請求項4又は5に記載の情報処理装置。
【請求項7】
前記印刷用紙に関する情報は、前記印刷用紙の種類、バーコードフォント、の少なくともいずれかを含むことを特徴とする請求項6に記載の情報処理装置。
【請求項8】
前記印刷装置における印刷に関する情報に基づいて設定される前記変更量と、前記印刷用紙に関する情報に基づいて設定される前記変更量との間に優先順位が定められていることを特徴とする請求項6又は7に記載の情報処理装置。
【請求項9】
前記条件は、前記設定内容に対応するバー幅が閾値を下回ることを含むことを特徴とする請求項に記載の情報処理装置。
【請求項10】
前記条件は、読取装置における読取に関する情報に基づいて定められることを特徴とする請求項乃至のいずれか1項に記載の情報処理装置。
【請求項11】
前記読取装置における読取に関する情報は、前記読取装置の識別情報、分解能、の少なくともいずれかを含むことを特徴とする請求項10に記載の情報処理装置。
【請求項12】
前記条件は、印刷用紙に関する情報に基づいて定められることを特徴とする請求項10又は11に記載の情報処理装置。
【請求項13】
前記印刷用紙に関する情報は、前記印刷用紙の種類バーコードフォントとの組み合わせを含むことを特徴とする請求項12に記載の情報処理装置。
【請求項14】
前記印刷装置における印刷に関する情報に基づいて定められる条件と、前記印刷用紙に関する情報に基づいて定められる条件との間に優先順位が定められていることを特徴とする請求項12又は13に記載の情報処理装置。
【請求項15】
前記バーコードに含まれるバーの幅が狭くなることによって、バー間のスペースが広くなることを特徴とする請求項1乃至14のいずれか1項に記載の情報処理装置。
【請求項16】
情報処理装置において実行される情報処理方法であって、
バーコードに変換される情報を取得する取得工程と、
所定の設定における設定内容と、前記取得工程で取得した前記情報に基づいて、当該情報を示すバーコードとして印刷装置により印刷される画像データを生成する生成工程と、
前記設定内容に対応するバー幅が条件を満たす場合、警告メッセージを出力する警告工程と、
を有し、
前記生成工程では、前記設定内容が第1の設定である場合、前記設定内容が第2の設定である場合よりもバーコードに含まれるバーの幅が狭く且つバーの間のスペースが広い画像データを生成し、
前記条件は、前記設定内容に対応するバー幅と、バー間の余白の幅との差分が閾値を上回ることを含む、
とを特徴とする情報処理方法。
【請求項17】
請求項1乃至15のいずれか1項に記載の情報処理装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、バーコードを生成する情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【0002】
印刷されたバーコードをバーコードリーダで読み取ることで、各種情報を取得することができる。このような構成で用いられるバーコードにはCODE39やCODE128のように様々な規格のものがあり、それぞれ異なる特徴や表示形式を有している。
【0003】
バーコードの印刷にあたっては、使用するプリンタの印刷解像度に応じて1本ずつのバーの印刷ピクセルが決定され、このピクセルの分だけバーを印刷するとともに、バー間のスペース(空白)を印刷しないことによりバーコードの描画が行われる。特許文献1には、指定の印刷領域内に収まるようにバーコードのフォントサイズ(ポイント)を設定して出力する構成が記載されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2016-53760号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
プリンタの印刷条件によっては、例えば印刷対象の画像データにおけるバーとスペースの幅の比が印刷成果物において変化してしまい、その結果、バーコードリーダによる正確な読取検知ができないおそれがある。
【0006】
本発明は、バーコードの読取時の読取精度の低下を防ぐ情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するため、本発明に係る情報処理装置は、バーコードに変換される情報を取得する取得手段と、所定の設定における設定内容と、前記取得手段が取得した前記情報に基づいて、当該情報を示すバーコードとして印刷装置により印刷される画像データを生成する生成手段と、前記設定内容に対応するバー幅が条件を満たす場合、警告メッセージを出力する警告手段と、を備え、前記生成手段は、前記設定内容が第1の設定である場合、前記設定内容が第2の設定である場合よりもバーコードに含まれるバーの幅が狭く且つバーの間のスペースが広い画像データを生成し、前記条件は、前記設定内容に対応するバー幅と、バー間の余白の幅との差分が閾値を上回ることを含む、ことを特徴とする。
【発明の効果】
【0008】
本発明によれば、バーコードの読取時の読取精度の低下を防ぐことができる。
【図面の簡単な説明】
【0009】
図1】印刷システムの構成を示す図である。
図2】バーコード生成処理を示すフローチャートである。
図3】バーコード印刷領域を説明するための図である。
図4】バーコードの出力結果を示す図である。
図5】バー幅の変更を説明するための図である。
図6】警告メッセージを示す図である。
図7】バーコードの構成を示す図である。
図8】文字コードに対応するビットパターンを示す図である。
図9】バーコード生成処理を示すフローチャートである。
図10】プリンタ情報データベースを示す図である。
図11】バーコードリーダ情報データベースを示す図である。
図12】用紙情報データベースを示す図である。
【発明を実施するための形態】
【0010】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0011】
[第1実施形態]
<情報処理装置>
図1は、本実施形態における印刷システム100の構成を示す図である。まず、本実施形態における情報処理装置101の構成について説明する。情報処理装置101のROM109には、バーコード生成アプリケーション112が記憶されている。バーコード生成アプリケーション112は、図3のように入力されたバーコード構成情報10からバーコード11を生成可能である。なお、本実施形態では、バーコード構成情報とは、バーコードを構成する情報であり、例えば、縦方向のサイズ、横方向のサイズ、バー幅、バー間のスペース(空白)の幅の情報を含む。情報処理装置101は、例えば、バーコード11を印刷データとしてプリンタ105へ出力し、外部サーバ102から印刷データをダウンロードすることが可能である。情報処理装置101は、ROM109とRAM110とCPU111を有する。また、情報処理装置101には、プリンタ105、表示装置106、入力装置107、記憶装置108が接続されている。また、情報処理装置101は、有線もしくは無線媒体のネットワーク103と接続するための入出力インタフェース(不図示)を有しており、ネットワーク103を介して外部サーバ102と相互に通信可能である。
【0012】
CPU111は、中央演算装置であり、記憶装置108やROM109、RAM110に記憶されているオペレーティングシステムプログラム(以下、OS)を実行することにより情報処理装置101全体を統括的に制御する。また、CPU111は、ROM109やRAM110に記憶されているプログラムを実行することによって、情報処理装置101の各機能を実行する。ROM109は、各プログラムやデータを記憶する。RAM110は、ランダムアクセスメモリであり、例えば、CPU111のワークメモリとして用いられる。また、RAM110が不揮発性のRAMである場合には、各プログラムがRAM110に記憶されるようにしても良い。
【0013】
プリンタ105は、情報処理装置101で作成されたバーコード11を含む印刷データに基づいて、インクジェット記録方式等により、印刷用紙等の記録媒体に対して印刷を行う。例えば、プリンタ105において印刷された印刷物は、後処理装置116のバーコードリーダ117によりバーコード11が読み取られる。読み取られた情報は、例えば、製品の製造工程の管理や製品の識別情報など、後段の工程での指示情報として扱われる。
【0014】
表示装置106は、情報処理装置101から出力された画像情報に基づいて表示を行う装置であり、例えばモニタである。入力装置107は、情報処理装置101に入力を行うための装置であり、例えば、キーボードやポインティングデバイスである。入力装置107の形態によっては表示装置106と一体化されており、ユーザが表示装置106に直接触れて入力するタッチパネルが用いられる場合もある。記憶装置108は、例えばHDDやSDDが用いられ、画像データやテンプレートなどを記憶する。なお、図1に示す構成に限られず、他の構成でも良く、例えば、情報処理装置101が、表示装置106、入力装置107、記憶装置108を含むように構成されても良い。また、情報処理装置101には、プリンタ情報データベース113、バーコードリーダ情報データベース114、用紙情報データベース115が接続されている。
【0015】
バーコード生成アプリケーション112への指示は、入力装置107を介してユーザ操作を受け付けることにより行われても良いし、他の情報処理装置104やネットワーク103を介した外部サーバ102から行われても良い。
【0016】
<バーコード生成装置および方法>
図2~6を参照しながら、本実施形態におけるバーコード生成処理を説明する。図2は、バーコード生成処理を示すフローチャートである。情報処理装置101においてバーコード生成アプリケーション112が起動されると、バーコード生成アプリケーション112のアプリケーション画面が表示装置106に表示され、図2の処理が開始される。なお、図2の処理は、例えば、CPU111が、ROM109からプログラムを読み出して実行することにより実現される。
【0017】
S101において、CPU111は、バーコード生成アプリケーション112のアプリケーション画面により、バーコードの種類の選択を受け付ける。ここで、バーコードの種類とは、例えば、CODE128やCODE39である。
【0018】
CODE39は、数字、アルファベットやいくつかの記号を含む合計43文字をバーコード化することができる。例えば、表示形式として、9つのバー(印刷部)と9つのスペース(空白)で1文字が表される。また、CODE128は、アスキーコード128文字の全てをバーコード化することができる。例えば、表示形式として、4段階のサイズのバーとスペースとを用い、3つのバーと3つのスペースで1文字が表される。
【0019】
バーコードの種類によってバーコード生成ロジックが異なることから、CPU111は、S101での選択結果に基づいて、バーコード生成アプリケーション112により、対応する処理を行う。なお、本実施形態の説明においては、CODE128を一例として説明するが、他のバーコードの種類が選択された場合についても、以降の処理については、同様に適用され得る。
【0020】
S102において、CPU111は、バーコード生成アプリケーション112のアプリケーション画面により、バーコードに変換する文字列の入力を受け付ける。バーコードに変換する文字列とは、例えば、“012345”である。そして、S103において、CPU111は、バーコード生成アプリケーション112のアプリケーション画面により、バーコード印刷領域の幅Wの入力を受け付け、S104において、高さHの入力を受け付ける。
【0021】
図3(a)は、バーコード印刷領域10の幅W、高さHを示す図である。幅Wや高さHは、バーコード生成アプリケーション112のアプリケーション画面上で任意に設定可能であり、例えば、図2(a)においては、W=30mm、H=5mmと設定されている。これは、例えば600dpiにて描画される場合に、それぞれW=708ピクセル、H=118ピクセルに相当する。なお、幅Wや高さHは、初期値として例えばW=22mm、H=5mmと設定されており、ユーザによる入力を省略することで、初期値に基づいた一律の印刷領域を設定可能である。また、描画する解像度600dpiは初期値として設定されていても良いし、任意の値に設定可能であっても良い。
【0022】
S105において、CPU111は、バーコード生成アプリケーション112のアプリケーション画面により、バー幅の下限値Lの入力を受け付ける。バー幅の下限値Lは、読取不良を防ぐための閾値であり、バー幅が下限値Lよりも小さい場合にバーコードを描画せず、警告表示するために用いられる。これにより、後処理装置116のバーコードリーダ117で読取不良となってしまうことを防ぐことができる。なお、バー幅の下限値Lは、初期値として例えばL=2ピクセルと設定されており、ユーザによる入力を省略することで、初期値に基づいた一律の警告表示を行うようにしても良い。
【0023】
S106において、CPU111は、バーコード生成アプリケーション112のアプリケーション画面において、ユーザが入力装置107を用いて指示を行うことにより、バー幅の変更値Dの入力を受け付ける。バー幅の変更値Dは、バーコードとして生成される画像データにおけるバー幅および空白スペースの幅を変更するための設定値(設定内容)である。なお、後述するように、バー幅が狭くなる場合、空白スペースは広くなるよう変更が行われる。また、この変更値Dは、印刷を行う印刷装置の印刷特性、使用される印刷用紙の種類、印刷成果物の画質等に応じたバー幅の変更量である。例えば、ユーザは、印刷装置でインクジェット記録方式により記録された印刷用紙上でのインク滲みを考慮し、バー幅を減少させる。これにより、バー幅が狭いバーコードデータを生成させ、そしてインク滲みが生じた結果、所望のバー幅のバーコードを印刷させることができる。なお、バーコード生成アプリケーション112のアプリケーション画面において、バー幅の変更値Dは、初期値として例えばD=1ピクセルと設定されており、ユーザによる入力がなくても、初期値に基づいた一律のバー幅変更が行われるようにしても良い。あるいは、初期値として例えばD=0と設定しておくことにより、S106でのユーザによる入力処理がなかった場合、バー幅を変更しない通常のバーコード生成が行われるようにしても良い。つまり、所定の初期値の設定により、バー幅の変更値Dの入力が無い場合のバーコード出力モードが決定される。
【0024】
S107においてCPU111は、1本のバー幅の描画ピクセル数Bを取得する。以下、描画ピクセル数Bをバー幅Bとする。1本のバー幅の描画ピクセル数Bは、S102で受け付けたバーコードに変換する文字列およびS103で受け付けたバーコード印刷領域10の幅Wに基づき取得される。例えば、バーコード印刷領域10の幅Wをピクセル単位に換算し、S102で受け付けた文字列を表す桁数の総和で除算することにより求められる。以下、一例を説明する。
【0025】
バーコードの種類がCODE128である場合、3つのバーと3つのスペースにより1文字が表される。例えば、図8に示すように、文字コードに対応する11桁のビットパターンが規格として用意されており、これらのビットパターンに応じてバーとスペースに変換される。例えば、“0”を表すビットパターンは“10011101100”であり、図8の拡大図に示すようなバーコードに変換される。また、バーコードは、図7に示すように、文字列を表すバーコードの前後にスタートコード、ストップコードが配置され、バーコードリーダ117により読み取る際の基準となっている。これらのコードについてもビットパターンが規格として用意されており、例えばCODE128の場合は、図8に示すように、スタートコードは11桁、ストップコードは13桁である。また、図7に示すように、バーコードリーダ117による読み誤りがないかをチェックするために、チェックデジットと呼ばれる算出値が文字列の直後に配置され、例えばCODE128の場合は「モジュラス103」という方式を使用して算出される。なお、「モジュラス103」による算出は、各キャラクタを対応する数値に換算した後、スタートコードに1を積算し、次の文字列から順に1、2、3…と積算してこれらの合計を求め、合計値を103で除算した剰余としてチェックデジットが得られる。例えば、バーコードに変換する文字列が“012345”の場合は“98”が算出される。さらに、バーコードの前後には、読み取り不良を防止するために白地のクワイエットゾーンが設けられている。なお、クワイエットゾーンは定数値として設定されてもよいし、算出された1本のバー幅Bに基づいて決定されても良い。
【0026】
図7および上記の例では、バーコードを表すピクセルの総和は、スタートコードが11桁、文字列が6文字×11桁=66桁、チェックデジットが11桁、ストップコードが13桁であり、クワイエットゾーンを例えば8桁×2と設定すると、117である。これを前述のバーコード印刷領域10の幅W=708ピクセルに基づいて除算を行うことで、1本のバー幅B=6ピクセルが算出される。
【0027】
S108において、CPU111は、バー幅の変更値Dが設定されているか否かを判定する。ここで、バー幅の変更値Dが設定されている(D≠0である)と判定された場合、S109において、CPU111は、S107で取得されたバー幅Bに対し、バー幅の変更値Dを反映し、1本のバー幅B’を取得する。例えば、S107での取得結果が前述のようにバー幅B=6ピクセルであり、S106で受け付けたバー幅の変更値D=2であるとき、バー幅B’の値は、B’=B-D=6-2=4となり、1本のバー幅が4ピクセルとして設定される。なお、バー間のスペースの値は変更されることなくB=6ピクセルが適用される。つまり、本実施形態では、バー幅の変更値Dに応じて、生成されるバーコードのバー幅のみが変更されることになる。
【0028】
S108においてバー幅の変更値Dが設定されていなかった場合、もしくはS109の後、S110において、CPU111は、S107、S109で求めた1本のバー幅BもしくはB’がS105で入力されたバー幅の下限値L以上であるか否かを判定する。バー幅BもしくはB’が下限値L以上(B≧L、もしくはB’≧Lである)と判定された場合、S111において、CPU111は、S102、S103、S104、S107、S109での設定に基づいて、図3(b)のようにバーコード11の生成を行う。その際、CPU111は、S103で入力を受け付けたバーコード印刷領域10の幅Wに応じて、バーコードの生成を行い、図2の処理を終了する。S107で説明したように、1本のバー幅Bは、文字列を表す桁数の総和で除算することにより求められる。従って、幅Wに収まる最大のバー幅Bにおいてバーコードの生成を行うことができる。一方、S110でバー幅BもしくはB‘が下限値Lよりも小さい(B<L、もしくはB’<Lである)と判定された場合、S112において、CPU111は、図6に示すような警告メッセージを表示し、図2の処理を終了する。図6に示すように、警告メッセージには、バーコードに変換する文字列を短くするか、バーコードの印刷領域10の幅Wを大きくするか、バー幅を変更しない通常のバーコード生成を行うモードに切り替えるかを促すメッセージが表示される。
【0029】
図4は、前述の例と同じ文字列“012345”を異なる幅Wにてバーコード化した際の出力結果の一例を示す図である。図4(a)は幅W=50mm、図4(b)は幅W=30mm、図4(c)は幅W=10mm、図4(d)は幅W=8mmの入力を受け付けた際の出力結果を示している。S107で得られる1本のバー幅Bは、図4(a)から順に11ピクセル、6ピクセル、2ピクセル、1ピクセルとなる。前述のようにバー幅の下限値L=2ピクセルと設定されている場合、図4(d)ではバーコードが生成されず、図6の警告メッセージが表示される。このように、本実施形態では、バーコード印刷領域10の幅に応じた最大のバー幅を算出してバーコードが生成されるため、最大のピッチでバーコードを生成することができる。さらに、バー幅が下限値を下回る場合には、描画が行われず、警告メッセージが表示されるので、印刷されたバーコードの読取不良を防ぐことができる。
【0030】
また、本実施形態において、CPU111は、S106で入力を受け付けたバー幅の変更値Dに応じて、印刷対象の1本のバー幅を変更してバーコードの生成を行う。図5は、図4(b)と同一条件でバーコードを生成した場合の1本のバー幅の拡大図を示す図である。図5(a)は、バーコードを示す画像データを示す。バーコード生成時に1本のバー幅は、上記のように6ピクセルで構成され(図5(a))、そのデータに基づいたバーコードがプリンタ105により印刷される。なお、プリンタ105の走査方向は図中の左から右への方向とする。このとき、プリンタ105での出力時のインク滲みにより、図5(b)の灰色部分のようにバー幅に隣接するスペースにも印刷されてしまうことがある。図5(b)はインク滲みにより、2ピクセル多く印刷された例である。つまり、本来は印刷されない領域に印刷されてしまうことで、バーとスペースの幅の比が異なってしまい、後段の工程でバーコードを読み取る際にその読取結果が読取不良となってしまう可能性がある。本実施形態では、例えば、S106でバー幅の変更値D=2と設定された場合、バー幅B’=B-D=6-2=4ピクセルが設定され、バーコードは、図5(c)のように生成される。そのデータに基づいてプリンタ105により印刷が行われると、図5(d)に示すようにインク滲みにより2ピクセル(灰色部)多く印刷される。つまり、本実施形態によれば、バーコードとして生成される画像データにおいては、変更値Dが大きい場合、変更値Dが小さい場合よりも、バーコードにおけるバー幅(印刷領域)は狭くなる。一方、バーコードにおけるバー間の空白スペース(非印刷領域)は広くなる。これにより、印刷用紙上でのインク滲みの影響が大きい場合、変更値Dが大きく設定されることで、印刷用紙において、そのインク滲みを許容する空白スペースが設けられることになる。つまり、印刷成果物上でのインク滲みを考慮して1本あたりのバー幅を調整した印刷が可能となる。また、印刷結果において、空白スペースの幅は、バー幅Bと同じ6ピクセルを保持することで、バーとスペースの幅の比を保つことができ、後段の工程で読取不良を発生させてしまうことを防ぐことができる。
【0031】
なお、本実施形態では、S106で入力されたバー幅の変更値Dが規定値よりも大きい場合に警告表示を行うようにしても良い。これは、バー幅の変更値Dが大きすぎる場合に、バーとスペースの幅の比が異なってしまうことによる後段の工程での読取不良を防ぐためである。例えば、規定値を予め“4”と設定すると、S106でバー幅の変更値D≧4の入力が確認された場合に警告表示を行うようにしても良い。また、S106でバー幅の変更値Dが規定値よりも大きいと判定された場合に、バー幅の変更値Dを規定値未満に自動的に設定するようにしても良い。例えば、S106でバー幅の変更値D≧4の入力が確認された場合に、予め設定した規定値“4”に収まるようにD=3と設定し、その後の処理を行うようにする。これにより、バーとスペースの幅の比が異なることによる後段の工程での読取不良を防ぐことができる。図2の処理により生成されたバーコードは、プリンタ105により出力され、バーコードリーダ117での読取に用いられる。
【0032】
上述のように、本実施形態によれば、指定の印刷領域の幅に対して、バーとスペースの幅を可能な限り大きくし、その結果、読取精度を向上させることができる。さらには、スペースに対するバーの幅を小さく設定し、印刷成果物上ではバーとスペースの幅の比が一致するよう、バーコードデータを生成することで、インク滲みを考慮し読取精度の低下を防ぐバーコードを印刷することができる。
【0033】
[第2実施形態]
次に、第2実施形態について第1実施形態と異なる点について説明する。第1実施形態では、バー幅の変更値Dがユーザにより任意で設定されていた。本実施形態では、使用するプリンタ105や印刷用紙の種類などの設定における設定内容に基づいてバー幅の変更値Dが決定される。図9は、本実施形態におけるバーコード生成処理を示すフローチャートである。なお、図9の処理は、例えば、CPU111が、ROM109からプログラムを読み出して実行することにより実現される。
【0034】
S201において、CPU111は、バーコード生成アプリケーション112のアプリケーション画面により、使用するプリンタ105の種類や品質(画質)設定に基づいてプリンタ105の情報を取得する。例えば、CPU111は、アプリケーション画面上におけるプリンタの選択項目での選択結果から、図1のプリンタ情報データベース113を参照してプリンタ105の情報を取得する。
【0035】
図10は、プリンタ情報データベース113の一例を示す図である。図10に示すように、プリンタ情報データベース113は、使用するプリンタとして設定されるプリンタの識別情報1001、品質設定1002、印刷解像度1003といった設定と、それらの設定における設定内容に応じたバー幅の変更値1004を含む。識別情報1001は、各プリンタを識別するための情報である。品質設定1002は、例えば「きれい」「標準」であり、印刷解像度1003と対応づけられている。識別情報1001、品質設定1002、印刷解像度1003は、アプリケーション画面上のプリンタの選択項目の各選択候補と対応づけられていても良い。バー幅の変更値1004は、上記のバー幅の変更値Dであり、識別情報1001、品質設定1002、印刷解像度1003の組み合わせに対応づけられて定められている。
【0036】
S202において、CPU111は、バーコード生成アプリケーション112のアプリケーション画面により、使用するバーコードリーダ117の種類に基づいて、バーコードリーダ117の情報を取得する。例えば、CPU111は、アプリケーション画面上におけるバーコードリーダの選択項目での選択結果から、図1のバーコードリーダ情報データベース114を参照して、バーコードリーダ117の情報を取得する。
【0037】
図11は、バーコードリーダ情報データベース114の一例を示す図である。図11に示すように、バーコードリーダ情報データベース114は、識別情報1101、分解能1102、プリンタの印刷解像度1103、バー幅の下限値1104、バー幅と余白の差分上限値1105を含む。識別情報1101は、各バーコードリーダを識別するための情報である。分解能1102は、バーコードリーダの分解能を示す情報である。プリンタの印刷解像度1103は、バー幅の下限値1104およびバー幅と余白の差分上限値1105を決定するための情報である。バー幅の下限値1104は、第1実施形態のバー幅の下限値Lに対応する。バー幅と余白の差分上限値1105は、バー幅とスペースの幅との差分の上限値を示し、その上限値までの差である限り、バーコードリーダによる読取が可能であることを示している。識別情報1101、分解能1102、プリンタの印刷解像度1103は、アプリケーション画面上のバーコードリーダの選択項目の各選択候補と対応づけられていても良い。上記のバー幅の下限値1104、バー幅と余白の差分上限値1105は、識別情報1101、分解能1102、プリンタの印刷解像度1103の組み合わせに対応づけられて定められている。
【0038】
S201、S202では、CPU111は、バーコード生成アプリケーション112のアプリケーション画面上での設定以外の方法により、プリンタ105の情報、バーコードリーダ117の情報を取得するようにしても良い。例えば、CPU111は、プリンタ105、後処理装置116の情報処理装置101への接続情報を取得するようにしても良い。そして、CPU111は、プリンタ情報データベース113、バーコードリーダ情報データベース114を参照することにより、プリンタ105の情報、バーコードリーダ117の情報を取得しても良い。
【0039】
S203~S206は、図2のS102~S104における説明と同じであるので、それらの説明を省略する。
【0040】
S207において、CPU111は、S201で取得したプリンタ105の情報およびS202で取得したバーコードリーダ117の情報に基づいて、バー幅の下限値を決定する。そして、S208において、CPU111は、S201で取得したプリンタ105の情報に基づいて、バー幅の変更値を決定する。例えば、アプリケーション画面上でユーザにより「プリンタP1」、「標準」、「バーコードリーダR1」が選択されている場合、図10のプリンタ情報データベース113から、バー幅の変更値「1」[ピクセル]が決定される。そして、「バーコードリーダR1」の情報のうち、「プリンタP1」及び「標準」に対応する印刷解像度「1200」[dpi]に対応づけられたバー幅の下限値「4」[ピクセル]が決定される。
【0041】
S209~S214は、図2のS107~S112における説明と同じであるので、それらの説明を省略する。
【0042】
上記では、バー幅の下限値は、図10のプリンタ情報データベース113と図11のバーコードリーダ情報データベース114を用いて決定していた。また、バー幅の変更値は、図10のプリンタ情報データベース113を用いて決定していた。しかしながら、他の方法により、バー幅の下限値、バー幅の変更値が決定されるようにしても良い。例えば、図1の用紙情報データベース115が用いられて決定されても良い。
【0043】
図12は、用紙情報データベース115の一例を示す図である。図12に示すように、用紙情報データベース115は、識別情報1201、バーコードフォント1202、バー幅の下限値1203、バー幅の変更値1204を含む。識別情報1201は、印刷用紙の種類を識別するための情報である。バーコードフォント1202は、各用紙の種類で使用可能なバーコードフォントの情報である。識別情報1201、バーコードフォント1202は、アプリケーション画面上の印刷用紙の選択項目の各選択候補と対応づけられていても良い。上記のバー幅の下限値1203、バー幅の変更値1204は、識別情報1201、バーコードフォント1202の組み合わせに対応づけられて定められている。即ち、CPU111は、アプリケーション画面上の印刷用紙およびバーコードフォントの選択結果に基づいて、バー幅の下限値、バー幅の変更値を決定しても良い。
【0044】
また、例えばアプリケーション画面上での選択結果によっては、バー幅の変更値、バー幅の下限値が異なってしまう場合があり得る。そこで、各データベース間で優先順位が設定されるようにしても良い。例えば、ユーザによる選択結果が「プリンタP1、標準」「薄紙、CODE128」の場合、図10のプリンタ情報データベース113によれば、バー幅の変更値は「1」となり、図12の用紙情報データベース115によれば、バー幅の変更値は「3」となる。ここで、用紙情報データベース115がプリンタ情報データベース113より優先されるというように設定されている場合には、上記のケースでは、バー幅の変更値は「3」に設定される。このようなデータベース間での優先順位は、ユーザインタフェース画面により設定されるようにしても良いし、情報処理装置101内部で予め設定されるようにしても良い。
【0045】
また、S109でバー幅変更値が反映されたバー幅B’とスペース(余白)の幅との差分が、図11のバーコードリーダ情報データベース114のバー幅と余白の差分上限値1105を上回る場合には、たとえS110でバー幅が下限値以上であると判定された場合であっても、CPU111は、警告メッセージを表示し、バーコードの生成を行わないようにしても良い。そのような構成により、バーコードリーダ117による読取不良の発生を防ぐことができる。また、その場合、図10において、バー幅の変更値がより小さくなるようなプリンタや品質設定、印刷解像度を改めて選択するよう促すメッセージを表示するようにしても良い。
【0046】
上述のように、本実施形態によれば、使用するプリンタ105およびバーコードリーダ117に基づいて、最適なバー幅の変更値、バー幅の下限値を設定することができる。
【0047】
バーコード生成アプリケーション112は、上述の各実施形態の機能を備えるように構成しても良い。即ち、バーコード生成アプリケーション112は、バー幅の変更値、バー幅の下限値をユーザ入力により設定するモードと、プリンタ105の情報とバーコードリーダ117の情報に基づいて設定するモードとを切替可能としても良い。さらには、各実施形態で説明したバー幅の変更システムを一つのモードとして備え、バー幅を変更するモードと、バー幅変更しないモードとをアプリケーション画面上で任意に選択可能に構成しても良い。
【0048】
また、上述の各実施形態では、一次元バーコードを例に説明を行った。しかしながら、各実施形態の動作は二次元バーコードにも適用可能である。その場合、例えば、バー幅の下限値、バー幅の変更値は、図10図12の各データベースにおいて縦方向および横方向それぞれについて設定される。その際、縦方向と横方向の間で異なる値が設定されるようにしても良い。
【0049】
また、上述の各実施形態は、バーコード生成アプリケーション112を用いて実行されるものとして説明したが、その限りではない。例えば、オブジェクトデータを新たに配置するようなレイアウト編集アプリケーション上で、上述の各実施形態の機能が実現されるようにしても良い。
【0050】
<他の実施例>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0051】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【0052】
101 情報処理装置: 105 プリンタ: 112 バーコード生成アプリケーション: 113、114、115 データベース: 116 後処理装置: 117 バーコードリーダ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12