(57)【要約】【課題】  ２次元バーコード等を使用することにより、任意の文字コードを符号化して印刷し、これを読込み復号することが可能であるが、通常、符号化される情報は、復号して、その情報を利用する利用者の属性によらず一定である。このため、あるサービスの会員と非会員に対するメッセージを別々にしたい場合は、それぞれ別のデータとして印刷する必要がある。【解決手段】  本発明の符号化印刷装置およびその復号装置では、文書作成手段で、利用者ＩＤでマークアップされた文字列情報に、利用者ＩＤに基づく符号化を行う利用者別符号化手段と、利用者別符号化手段により符号化された文字列情報を印刷する印刷手段と、印刷手段により印刷された符号化された文字列情報を読み込む読み込み手段と、読み込み手段により読み込まれた符号化された文字列情報を利用者ＩＤに基づき復号する利用者別復号手段とを有する符号化印刷および復号装置からなる。【選択図】  図１
2009026071.tif 000002
【特許請求の範囲】
【請求項１】
利用者ＩＤでマークアップされた文字列情報に、利用者ＩＤに基づく符号化を行う利用者別符号化手段と、
前記利用者別符号化手段により符号化された文字列情報を印刷する印刷手段と、
前記印刷手段により印刷された符号化された文字列情報を読み込む読み込み手段と、
前記読み込み手段により読み込まれた符号化された文字列情報を利用者ＩＤに基づき復号する利用者別復号手段とを有することを特徴とする符号化印刷装置。
【請求項２】
利用者別符号化手段での文字列情報の符号化が、２次元バーコード化を含むことを特徴とする請求項１に記載の符号化印刷装置。
【請求項３】
利用者ＩＤでマークアップされた文字列情報に、利用者ＩＤに基づく符号化を行う利用者別符号化手段と、
前記利用者別符号化手段により符号化された文字列情報を印刷する印刷手段と、
前記印刷手段により印刷された符号化された文字列情報を読み込む読み込み手段と、
前記読み込み手段により読み込まれた符号化された文字列情報を利用者ＩＤに基づき復号する利用者別復号手段とを有することを特徴とする符号化情報復号装置。
【請求項４】
利用者別符号化手段での文字列情報の符号化が、２次元バーコード化を含むことを特徴とする請求項３に記載の符号化印刷情報復号装置。
【請求項５】
利用者ＩＤでマークアップされた文字列情報に、利用者ＩＤに基づく符号化を行う利用者別符号化工程と、
前記利用者別符号化工程により符号化された文字列情報を印刷する印刷工程と、
前記印刷工程により印刷された符号化された文字列情報を読み込む読み込み工程と、
前記読み込み工程により読み込まれた符号化された文字列情報を利用者ＩＤに基づき復号する利用者別復号工程とを有することを特徴とする符号化印刷方法。
【請求項６】
利用者別符号化工程での文字列情報の符号化が、２次元バーコード化を含むことを特徴とする請求項５に記載の符号化印刷方法。
【請求項７】
利用者ＩＤでマークアップされた文字列情報に、利用者ＩＤに基づく符号化を行う利用者別符号化工程と、
前記利用者別符号化工程により符号化された文字列情報を印刷する印刷工程と、
前記印刷工程により印刷された符号化された文字列情報を読み込む読み込み工程と、
前記読み込み工程により読み込まれた符号化された文字列情報を利用者ＩＤに基づき復号する利用者別復号工程とを有することを特徴とする符号化情報復号方法。
【請求項８】
利用者別符号化工程での文字列情報の符号化が、２次元バーコード化を含むことを特徴とする請求項７に記載の符号化情報復号方法。
【請求項９】
利用者ＩＤでマークアップされた文字列情報に、利用者ＩＤに基づく符号化を行う利用者別符号化工程と、
前記利用者別符号化工程により符号化された文字列情報を印刷する印刷工程と、
前記印刷工程により印刷された符号化された文字列情報を読み込む読み込み工程と、
前記読み込み工程により読み込まれた符号化された文字列情報を利用者ＩＤに基づき復号する利用者別復号工程とを有することを特徴とするコンピュータ読み取り可能なプログラムが格納された記憶媒体。
【請求項１０】
利用者別符号化工程での文字列情報の符号化が、２次元バーコード化を含むことを特徴とする請求項９に記載のコンピュータ読み取り可能なプログラムが格納された記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化された情報を印刷する印刷装置および方法と、印刷された符号化情報を復号する復号装置および方法に関わる。
【背景技術】
【０００２】
商品パッケージなどの商品番号の管理にバーコードが利用されている。通常のバーコードは縦縞で、その線の太さと間隔の組み合わせで数字を表す仕組みになっている。そのため、線と直角の１方向にしか読み取ることができない。そして、記録する情報量（桁数）を多くしようとすると、横方向に大きくなってしまう。あるいは、複数のバーコードを組み合わせることになるが、この場合、読み取り走査が煩雑になり印刷コストも上昇する。
【０００３】
こうした問題に答えるために２次元バーコードが出現した。2次元バーコードは、黒と白の正方形の組み合わせで数字などを記録している。縦と横の２方向を使うので２次元という。２次元バーコードにも複数の種類があるが、ここではＱＲコードを例としてあげる。
【０００４】
ＱＲコードは、数字・英字・漢字・カナ・ひらがな・記号・バイナリ・制御コード等あらゆるデータを扱う事が可能である。このため、商品に関連するウェブサイトのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を２次元バーコードで印刷し、読み取り機能を有する携帯電話などでＵＲＬを読み取りウェブページを表示するといった利用もされている。
【０００５】
従来例としては、例えば特許文献１と特許文献２をあげることが出来る。
【特許文献１】特開平05-095453号公報
【特許文献２】特開平05-233783号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
前記の様に、２次元バーコードを使用することにより、任意の文字コードを符号／復号することが可能である。しかし、通常、符号化される情報は、復号して、その情報を利用する利用者の属性によらず一定である。このため、例えば、あるサービスの会員と非会員に対するメッセージを別々にしたい場合は、それぞれの２次元バーコードを印刷する必要がある。
【０００７】
また、メッセージをＸＭＬなどのマークアップ言語によりタグ付けし、２次元バーコード化した後、読み込んで利用者の属性により対応するタグの情報を表示または印刷するアプリケーションは可能である。しかし、この場合、印刷された２次元バーコードを復号可能な他のアプリケーションで復号すると、全ての情報が表示または印刷されてしまうという問題がある。
【課題を解決するための手段】
【０００８】
本発明の符号化印刷装置およびその復号装置では、
文書作成手段で、利用者ＩＤでマークアップされた文字列情報に、利用者ＩＤに基づく符号化を行う利用者別符号化手段と、
前記利用者別符号化手段により符号化された文字列情報を印刷する印刷手段と、
前記印刷手段により印刷された符号化された文字列情報を読み込む読み込み手段と、
前記読み込み手段により読み込まれた符号化された文字列情報を利用者ＩＤに基づき復号する利用者別復号手段とを有する符号化印刷および復号装置を提供する。
【発明の効果】
【０００９】
本発明の符号化印刷および復号装置により、利用者別の文字列情報を含む符号化された情報を印刷し、前記符号化情報の印刷物から利用者別に情報を復号することにより、一つの印刷物で各利用者に適した情報を提供することが可能となる。
【００１０】
また、２次元バーコードの元データ自身を利用者別に符号化しておくことにより、2次元バーコードが読み取られても、特定利用者にのみ見せたい情報を隠すことが可能になる。
【発明を実施するための最良の形態】
【００１１】
本発明の符号化印刷および復号装置の実施例の構成を表すブロック図を図１に示す。
【００１２】
１００は、本発明の符号化印刷および復号装置の機能を実行するＰＣである。
【００１３】
１０１は、ＰＣ１００に直接またはネットワークを介して接続されるプリンタであり、ＰＣ１００から送られるＰＣＬ等のＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）からなる印刷データを受け取り用紙に印刷する。
【００１４】
１０２は、ＰＣ１００に接続されるスキャナであり、用紙に描かれた情報を画像データとして読み込み、ＰＣ１００に転送する。
【００１５】
１０３は、ＰＣ１００に接続されるディスプレイであり、ＰＣ１００から転送されるデータを表示する。ディスプレイ１０３にはＣＲＴディスプレイや液晶ディスプレイなどが用いられる。
【００１６】
１０４は、ＰＣ１００で動作するＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）上で実行されるソフトウェアとして実現される文書作成手段である。
【００１７】
１０５は、ＰＣ１００で動作するＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）上で実行されるソフトウェアとして実現される利用者別符号化手段である。
【００１８】
１０６は、ＰＣ１００で動作するＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）用のプリンタドライバであり、利用者別符号化手段１０５や利用者別復号手段１０７からのデータをプリンタ１０１で処理可能なＰＤＬに変換する。
【００１９】
１０７は、ＰＣ１００で動作するＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）上で実行されるソフトウェアとして実現される利用者別復号手段である。
【００２０】
図２は、ＰＣ１００のシステム構成を示すブロック図である。
【００２１】
２０１は、本装置全体の制御を司るＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
【００２２】
２０２はＲＡＭであり、ＣＰＵ２０１の主メモリとして、及び実行プログラムのワークエリアや一時待避領域として機能する。
【００２３】
２０３はＣＰＵ２０１の動作処理手順を記憶しているＲＯＭである。
【００２４】
２０４は通信部であり、ネットワーク上のプリンタ１０１との接続に使用される。
【００２５】
２０５はビデオＲＡＭ（ＶＲＡＭ）で、ディスプレイ１０３の画面に表示される画像を展開し、その表示の制御を行う。
【００２６】
２０６はキーボードなどの外部入力装置からの入力信号を制御するためのキーボードコントローラである。
【００２７】
２０７は操作を受け付けるための外部入力装置であり、一般にはキーボードやポインティングデバイス（マウスなど）を示している。
【００２８】
２０８はハードディスクドライブ（ＨＤＤ）を示す。
【００２９】
２０９はフレキシブルディスクなどのリムーバブルディスクドライブ（ＦＤＤ）を示す。
【００３０】
２００は上述した各ユニット間を接続するためのＩ／Ｏバス（アドレスバス、データバスおよび制御バス）である。
【００３１】
以下に図を参照して、本発明の符号化印刷および復号装置の実施例の動作を説明する。なお以下では、符号化印刷装置を使用して印刷物を作成する利用者を作成者、復号装置を使用して符号化印刷物からメッセージを取り出す利用者を使用者と呼ぶ。
【００３２】
＜符号化データの印刷＞
符号化データを印刷するためには、作成者は先ずＰＣ１００の文書作成手段１０４で符号化データのもとになる文字列データを作成する。
【００３３】
文書作成手段１０４は、ＰＣ１００上のＯＳで動作するアプリケーションプログラムであり、ＰＣ１００のＨＤＤ２０８に保存されている。作成者がＰＣ１００に接続された外部入力装置２０７から文書作成手段１０４の起動コマンドを入力すると、キーボードコントローラ２０６を経由してＣＰＵ２０１にコマンドが通知される。ＣＰＵ２０１はＨＤＤ２０８に保存された文書作成手段１０４のプログラムをＲＡＭ２０２に読み込み実行する。
【００３４】
図３に、文書作成手段１０４を使用してデータを作成している画面の例３００を示す。画面例３００は、編集用のウィンドウであり、ｍｅｓｓａｇｅタグを使用してｉｄがそれぞれ０、１、２に対応するメッセージを記述している。
【００３５】
文書作成手段１０４には作成した文書をＨＤＤ２０８またはＦＤＤ２０９の任意のファイルとして保存する文書保存機能がある。作成者は、外部入力装置２０７からコマンドを入力して該文書保存機能を実行することにより、画面例３００に示すデータを例えばｓａｍｐｌｅ１．ｔｘｔというファイル名でＨＤＤ２０８に保存する。
【００３６】
次に、作成者は、外部入力装置２０７から起動コマンドを入力することによって、利用者別符号化手段１０５を実行する。利用者別符号化手段１０５は、ＰＣ１００上のＯＳで動作するアプリケーションプログラムであり、ＰＣ１００のＨＤＤ２０８に保存されている。作成者は、起動コマンドのオプションに記述するか、もしくは利用者別符号化手段１０５の起動後に表示さえる入力要求に応じて、処理すべきデータファイルｓａｍｐｌｅ１．ｔｘｔを指定する。利用者別符号化手段１０５は、指定されたデータファイルから以下の手順にしたがって符号化データを生成する。
【００３７】
図４に、利用者別符号化手段１０５によって生成される符号化データのフォーマットの説明図を示す。４００は符号化データ全体を表す。符号化データ４００はヘッダ４０１とフッタ４０７で挟まれている。ヘッダ４０１は４ｂｙｔｅでその値は“ＳＰＤＥ”、フッタ４０７も４ｂｙｔｅでその値は“ＥＰＤＥ”である。ヘッダ４０１とフッタ４０７の間には任意個のブロック４０２が存在する。ブロック４０２は画面例３００の各ｍｅｓｓａｇｅタグでマークアップされた文字列に対応する。
【００３８】
ブロック４０２は、符号化バイト数４０３、符号化ｉｄ４０４、データバイト数４０５、データ部４０６から構成される。
【００３９】
符号化バイト数４０３は、本実施例において文字列を符号化する時に、データをローテートシフトする単位のバイト数を指定する１ｂｙｔｅのデータである。本実施例の説明では符号化バイト数４０３は１として説明する。符号化バイト数４０３が１の場合、対象とする文字列データの先頭から１バイト毎に指定ビット数だけ右方向にローテートシフトを行う。この場合、ビット数が０では、元データと同じになるので、符号化可能なビット数していは、１から７の７種類となる。従って、７種類のグループに対するメッセージを識別できることになる。７種類以上の識別が必要な場合には、符号化バイト数４０３を増やすことによって対応できる。
【００４０】
符号化ｉｄ４０４は、本実施例の文字列を符号化する時に、データをローテートシフトするビット数を指定する１ｂｙｔｅのデータである。
【００４１】
データバイト数４０５は、本実施例の文字列符号化の対象となる文字列のバイト数である。
【００４２】
データ部４０６は、本実施例の文字列符号化の対象となる文字列を符号化バイト数４０３および符号化ｉｄ４０４に基づいて符号化した文字列データである。
【００４３】
図４の４０８に、画面例３００のｍｅｓｓａｇｅタグのうち、ｉｄが０のもののみを符号化した結果を各バイトを２桁の１６進数で表現した例を示す。４０８では日本語の２ｂｙｔｅコードはＳＪＩＳとして処理している。
【００４４】
図５は、本実施例の利用者別符号化手段１０５での符号化の処理フローである。図５を参照して、前記ｓａｍｐｌｅ１．ｔｘｔのデータを符号化する手順を説明する。
【００４５】
ステップＳ５００で、利用者別符号化手段１０５は処理を開始する。この時、利用者別符号化手段１０５は、ＲＡＭ２０２に、入力データ用バッファと出力データ用バッファを確保する。
【００４６】
ステップＳ５０１で、利用者別符号化手段１０５は、起動時オプションまたは起動後に作成者によって入力されたデータファイル（ｓａｍｐｌｅ１．ｔｘｔ）をＲＡＭ２０２の入力データ用バッファに読み込む。
【００４７】
ステップＳ５０２で、利用者別符号化手段１０５は、ＲＡＭ２０２の出力データ用バッファにヘッダ４０１のデータ“ＳＰＤＥ”を出力する。
【００４８】
ステップＳ５０３で、利用者別符号化手段１０５は、ＲＡＭ２０２の入力データ用バッファに読み込まれたデータを解析し、ステップＳ５０４で、ｍｅｓｓａｇｅタグの有無を判定し、見つからない場合はステップＳ５０９でＲＡＭ２０２の出力データ用バッファにフッタ４０７のデータ“ＥＰＤＥ”を出力し、ステップＳ５１０で処理を終了する。
【００４９】
ステップＳ５０３でｍｅｓｓａｇｅタグが見つかった場合、利用者別符号化手段１０５は、ステップＳ５０５で、既定の符号化バイト数４０３、ｍｅｓｓａｇｅタグの属性に指定された符号化ｉｄ４０４、ｍｅｓｓａｇｅタグのボディに指定された文字列のデータバイト数４０５を図４のフォーマット４００に従ってＲＡＭ２０２の出力データ用バッファに出力する。
【００５０】
ステップＳ５０６で、利用者別符号化手段１０５は、符号化バイト数４０３および符号化ｉｄ４０４に従って、ｍｅｓｓａｇｅタグのボディに指定された文字列を右にローテートシフトした符号化データを生成する。符号化ｉｄ４０４が０の場合は入力データがそのまま使用される。
【００５１】
ステップＳ５０７で、利用者別符号化手段１０５は、ステップＳ５０６で符号化されたデータをＲＡＭ２０２の出力データ用バッファに出力し、ステップＳ５０３に戻ってＲＡＭ２０２の入力データ用バッファ内のデータの解析を続ける。
【００５２】
全てのｍｅｓｓａｇｅタグを処理し終わったら、利用者別符号化手段１０５は、ＲＡＭ２０２の出力データ用バッファに出力された符号化したデータから2次元バーコードデータを生成する。２次元バーコードデータの生成には、既存のアルゴリズムやソフトウェアプログラムを使用する。
【００５３】
最後に、利用者別符号化手段１０５は、前記で生成された２次元バーコードデータをプリンタドライバ１０６を使用してプリンタ１０１で用紙に印刷する。
【００５４】
＜復号＞
本実施例の符号化印刷および復号装置の使用者は、本実施例の符号化印刷装置で作成された２次元バーコードデータの印刷物をスキャナ１０２で読込み、利用者別復号手段１０７で処理する。
【００５５】
利用者別復号手段１０７は、ＰＣ１００上のＯＳで動作するアプリケーションプログラムであり、ＰＣ１００のＨＤＤ２０８に保存されている。使用者がＰＣ１００に接続された外部入力装置２０７から利用者別復号手段１０７の起動コマンドを入力すると、キーボードコントローラ２０６を経由してＣＰＵ２０１にコマンドが通知される。ＣＰＵ２０１はＨＤＤ２０８に保存された利用者別復号手段１０７のプログラムをＲＡＭ２０２に読み込み実行する。
【００５６】
利用者別復号手段１０７は、スキャナ１０２で読み込まれた２次元バーコードデータを既存のアルゴリズムやソフトウェアプログラムを使用して復号する。
【００５７】
図６は、本実施例の利用者別復号手段１０７での復号の処理フローである。図５を参照して、前記処理により２次元バーコードデータから復号されたデータの処理フローを説明する。
【００５８】
ステップＳ６００で、利用者別復号手段１０７は、ＲＡＭ２０２に入力データ用バッファと出力データ用バッファを確保する。
【００５９】
ステップＳ６０１で、利用者別復号手段１０７は、使用者に利用者ｉｄの入力を促し、使用者の入力した値を利用者ｉｄとして保持する。
【００６０】
ステップＳ６０２で、利用者用復号手段１０７は、前記２次元バーコードデータから復号されたデータを入力データ用バッファに読み込む。
【００６１】
ステップＳ６０３で、前記入力データ用バッファに読み込まれたデータの先頭４ｂｙｔｅがヘッダ４０１の規定値“ＳＰＤＥ”と等しいかどうか判定する。ヘッダ４０１の規定値“ＳＰＤＥ”と等しくない場合は、処理可能なデータではないので、その旨を使用者に通知したのちステップＳ６０９に進んで処理を終了する。
【００６２】
ステップＳ６０３で、利用者別復号手段１０７は、データの先頭４ｂｙｔｅがヘッダ４０１の規定値と等しいと判定された場合は、ステップＳ６０４で、符号化バイト数４０３、符号化ｉｄ４０４、符号化データバイト数４０５を読み込む。
【００６３】
ステップＳ６０５で、利用者別復号手段１０７は、ステップＳ６０４で読み込んだデータの並びの最初の４ｂｙｔｅがフッタ４０７の規定値“ＥＰＤＥ”と等しいかどうかを判定する。等しい場合は、ステップＳ６０８で、ＲＡＭ２０２の出力データ用バッファに出力された文字列をディスプレイ１０３に表示したり、プリンタドライバ１０６を介してプリンタ１０１で印刷することにより使用者に提供する。
【００６４】
ステップＳ６０５で、フッタ４０７の規定値“ＥＰＤＥ”と等しくない場合は、ステップＳ６０６で、ＲＡＭ２０２の入力データ用バッファから読み込んだ符号化ｉｄが、０または、ステップＳ６０１で使用者が入力した利用者ｉｄと等しいかどうかを判定する。
【００６５】
ステップＳ６０６で、符号化ｉｄが０または利用者ｉｄと等しくない場合は、ステップＳ６１０で、ＲＡＭ２０２の入力データ用バッファのデータを符号化データバイト数４０５分だけ読み飛ばした後、ステップＳ６０４に戻る。
【００６６】
ステップＳ６０６で、符号化ｉｄが０または利用者ｉｄと等しい場合、ステップＳ６０７で、符号化バイト数４０３と符号化ｉｄ４０４に基づいて、ＲＡＭ２０２の入力データ用バッファ内の符号化データバイト数４０５分のデータに対して左ローテートシフト操作を行った結果をＲＡＭ２０２の出力データ用バッファに書き込む。その後、ステップＳ６０４に戻る。
【図面の簡単な説明】
【００６７】
【図１】本発明の実施例における符号化印刷および復号装置のブロック図である。
【図２】本発明の実施例におけるＰＣのシステム構成図である。
【図３】本発明の実施例における文書作成手段の画面表示例である。
【図４】本発明の実施例における符号化データのフォーマットの説明図である。
【図５】本発明の実施例における符号化の処理フロー。
【図６】本発明の実施例における復号の処理フロー。
【符号の説明】
【００６８】
１００  ＰＣ
１０１  プリンタ
１０２  スキャナ
１０３  ディスプレイ
１０４  文書作成手段
１０５  利用者別符号化手段
１０６  プリンタドライバ
１０７  利用者別復号手段
２００  Ｉ／Ｏバス（アドレスバス、データバスおよび制御バス）
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  通信部
２０５  ビデオＲＡＭ
２０６  キーボードコントローラ
２０７  外部入力装置
２０８  ハードディスクドライブ
２０９  リムーバブルディスクドライブ
３００  文書作成手段のウィンドウ
４００  符号化データフォーマット
４０１  ヘッダ
４０２  ブロック
４０３  符号化バイト数
４０４  符号化ｉｄ
４０５  符号化データバイト数
４０６  符号化データ
４０７  フッタ
４０８  符号化データ例
【図１】
2009026071.tif 000003
【図２】
2009026071.tif 000004
【図３】
2009026071.tif 000005
【図４】
2009026071.tif 000006
【図５】
2009026071.tif 000007
【図６】
2009026071.tif 000008