(57)【要約】【課題】罫線を含む印刷物を圧縮して印刷するとき、罫線の位置が不揃いになるおそれがあった。【解決手段】印刷部と、受信した文字コードを記憶する受信バッファーと、印刷部により印刷されるイメージを記憶するイメージバッファーと、受信バッファーに記憶された文字コードに基づきイメージバッファーにイメージを書き込み、印刷部によって行単位でイメージを印刷させる制御部と、を備え、制御部は、受信バッファーに記憶された文字コードに基づき罫線文字を含む行を検出し、罫線文字を検出した行を印刷する場合の圧縮率を設定し、設定した圧縮率で圧縮したイメージを印刷部によって印刷させる、印刷装置。【選択図】図２
2020100054.tif 000002
【特許請求の範囲】
【請求項１】
印刷部と、
受信した文字コードを記憶するバッファーメモリーと、
前記印刷部により印刷されるイメージを記憶するイメージメモリーと、
前記バッファーメモリーに記憶された文字コードに基づき前記イメージメモリーに前記イメージを書き込み、前記印刷部によって行単位で前記イメージを印刷させる制御部と、を備え、
前記制御部は、
前記バッファーメモリーに記憶された文字コードに基づき罫線文字を含む行を検出し、前記罫線文字を検出した行を印刷する場合の圧縮率を設定し、設定した圧縮率で圧縮した前記イメージを前記印刷部によって印刷させる、印刷装置。
【請求項２】
前記バッファーメモリーは受信したコマンドを記憶可能であり、
前記制御部は、前記バッファーメモリーに記憶された所定の文字コードまたは所定のコマンドから前記罫線文字を含む行の区切りを検出し、検出した前記行の区切りで区切った行の圧縮率を設定する、請求項１記載の印刷装置。
【請求項３】
前記制御部は、前記バッファーメモリーに記憶された文字コードから、前記罫線文字に対応する文字コードを含む連続する複数の行を検出した場合、前記複数の行に対し、前記複数の行の全体を、設定されたサイズの印刷領域に印刷可能な圧縮率を設定する、請求項２記載の印刷装置。
【請求項４】
前記制御部は、前記バッファーメモリーに記憶された文字コードを行単位で取得して圧縮率を設定し、前記罫線文字に対応する文字コードを含む連続する複数の行を検出した場合、前記複数の行に設定された圧縮率のうち最も高い圧縮率で、前記印刷部により前記複数の行を印刷させる、請求項３記載の印刷装置。
【請求項５】
前記文字コードを含む印刷データ及びコマンドを受信する受信部を備え、
前記バッファーメモリーは、前記受信部により受信された前記印刷データ及び前記コマンドを記憶し、
前記制御部は、前記バッファーメモリーに、行のマージンを指定する前記コマンドが記憶されている場合に、前記コマンドで指定されたマージンに対応する圧縮率を設定する、請求項１から４のいずれか１項に記載の印刷装置。
【請求項６】
フォントデータを記憶するフォントデータ記憶部を備え、
前記制御部は、
前記フォントデータ記憶部から、前記バッファーメモリーに記憶された文字コードに対応するフォントデータを読み出して前記イメージメモリーに書き込み、
前記バッファーメモリーに記憶された文字コードに基づき前記罫線文字を含む行を検出した場合、前記フォントデータ記憶部から読み出したフォントデータを設定した圧縮率で圧縮して、前記イメージを前記印刷部によって印刷させる、請求項１から５のいずれか１項に記載の印刷装置。
【請求項７】
印刷部を備える印刷装置の制御方法であって、
受信した文字コードをバッファーメモリーに記憶し、
前記バッファーメモリーに記憶された文字コードに基づき罫線文字を含む行を検出し、
検出した行を印刷する場合の圧縮率を設定し、
前記バッファーメモリーに記憶された文字コードに基づき、イメージメモリーにイメージを書き込み、
前記罫線文字を含む行を検出した場合、検出した行に設定した圧縮率で圧縮した前記イメージを前記イメージメモリーに書き込み、
前記印刷部によって行単位で前記イメージを印刷する、印刷装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置、及び、印刷装置の制御方法に関する。
【背景技術】
【０００２】
従来、罫線を示す文字コードに基づき、罫線を含む印刷物（印刷ジョブ）を印刷する印刷装置が知られている（例えば、特許文献１参照）。特許文献１記載の装置は、罫線の印刷品位を高めるため、印刷データで指定された文字サイズおよび印刷部の解像度に基づいて線幅を求める処理を行う。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０９−１５６１５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
複数の行にわたる罫線を示す文字コードに基づき、印刷物を印刷するとき、罫線を含む行を圧縮すると、複数の行の間で罫線の位置が不揃いになるおそれがあった。
【課題を解決するための手段】
【０００５】
上記課題を解決する一態様は、印刷部と、受信した文字コードを記憶するバッファーメモリーと、前記印刷部により印刷されるイメージを記憶するイメージメモリーと、前記バッファーメモリーに記憶された文字コードに基づき前記イメージメモリーに前記イメージを書き込み、前記印刷部によって行単位で前記イメージを印刷させる制御部と、を備え、前記制御部は、前記バッファーメモリーに記憶された文字コードに基づき罫線文字を含む行を検出し、前記罫線文字を検出した行を印刷する場合の圧縮率を設定し、設定した圧縮率で圧縮した前記イメージを前記印刷部によって印刷させる、印刷装置である。
【０００６】
上記構成において、前記バッファーメモリーは受信したコマンドを記憶可能であり、前記制御部は、前記バッファーメモリーに記憶された所定の文字コードまたは所定のコマンドから前記罫線文字を含む行の区切りを検出し、検出した前記行の区切りで区切られた行の圧縮率を設定する構成であってもよい。
【０００７】
上記構成において、前記制御部は、前記バッファーメモリーに記憶された文字コードから、前記罫線文字に対応する文字コードを含む連続する複数の行を検出した場合、前記複数の行に対し、前記複数の行の全体を、設定されたサイズの印刷領域に印刷可能な圧縮率を設定する構成であってもよい。
【０００８】
上記構成において、前記制御部は、前記バッファーメモリーに記憶された文字コードを行単位で取得して圧縮率を設定し、前記罫線文字に対応する文字コードを含む連続する複数の行を検出した場合、前記複数の行に設定された圧縮率のうち最も高い圧縮率で、前記印刷部により前記複数の行を印刷させる構成であってもよい。
【０００９】
上記構成において、前記文字コードを含む印刷データ及びコマンドを受信する受信部を備え、前記バッファーメモリーは、前記受信部により受信された前記印刷データ及び前記コマンドを記憶し、前記制御部は、前記バッファーメモリーに、行のマージンを指定する前記コマンドが記憶されている場合に、前記コマンドで指定されたマージンに対応する圧縮率を設定する構成であってもよい。
【００１０】
上記構成において、フォントデータを記憶するフォントデータ記憶部を備え、前記制御部は、前記フォントデータ記憶部から、前記バッファーメモリーに記憶された文字コードに対応するフォントデータを読み出して前記イメージメモリーに書き込み、前記バッファーメモリーに記憶された文字コードに基づき前記罫線文字を含む行を検出した場合、前記フォントデータ記憶部から読み出したフォントデータを設定した圧縮率で圧縮して、前記イメージを前記印刷部によって印刷させる構成であってもよい。
【００１１】
上記課題を解決する別の一態様は、印刷部を備える印刷装置の制御方法であって、受信した文字コードをバッファーメモリーに記憶し、前記バッファーメモリーに記憶された文字コードに基づき罫線文字を含む行を検出し、検出した行を印刷する場合の圧縮率を設定し、前記バッファーメモリーに記憶された文字コードに基づき、イメージメモリーにイメージを書き込み、前記罫線文字を含む行を検出した場合、検出した行に設定した圧縮率で圧縮した前記イメージを前記イメージメモリーに書き込み、前記印刷部によって行単位で前記イメージを印刷する、印刷装置の制御方法である。
【図面の簡単な説明】
【００１２】
【図１】プリンターのブロック図。
【図２】プリンターの制御部のブロック図。
【図３】受信バッファーに記憶されるデータの例を示す模式図。
【図４】罫線文字コード情報に含まれるデータの例を示す模式図。
【図５】比較例としての印刷例を示す図。
【図６】プリンターの印刷例を示す図。
【図７】プリンターの動作を示すフローチャート。
【発明を実施するための形態】
【００１３】
［１．プリンターの構成］
以下、図面を参照して本発明の実施形態について説明する。
図１は、本発明を適用した実施形態に係るプリンター１の機能的構成を示すブロック図である。
【００１４】
プリンター１は、所定サイズの印刷媒体に対し、文字や画像を印刷する印刷装置である。本実施形態でのプリンター１は、印刷装置の一例として、印刷媒体に熱を与えて文字や画像を形成するサーマルプリンターとする。プリンター１は、長尺の感熱紙をロール状に巻回した感熱ロール紙を印刷媒体として用いる。プリンター１において使用可能な感熱ロール紙のサイズに制限はなく、例えば、幅５８ｍｍ、幅８０ｍｍの感熱ロール紙をプリンター１にセットして印刷できる。
プリンター１は、感熱ロール紙を搬送しながら、後述するようにラインヘッドとして構成される印刷ヘッド４１により、印刷する。プリンター１は、いわゆるラインプリンターとして機能し、印刷ヘッド４１が印刷する文字や画像を行ごとに制御する。
【００１５】
プリンター１は、ホスト装置２に接続される。ホスト装置２は、有線または無線通信回線により、プリンター１が備える通信部５１に接続され、通信部５１との間で通信を実行する。ホスト装置２は、プリンター１に対し、プリンター１を動作や設定をさせるコマンドを送信する。ホスト装置２が送信するコマンドは、コマンドの内容を規定するパラメーターや、コマンドに従って処理されるデータを含んでもよい。プリンター１は、ホスト装置２から受信するコマンドに従って、動作や設定を行う。
【００１６】
プリンター１は、プリンター１の各部を制御する制御部１０を備える。制御部１０は、例えば、プログラムを実行する演算処理装置を備え、ハードウェアとソフトウェアとの協働により制御部１０の機能を実現するものであってもよい。或いは、制御部１０は、演算処理機能をプログラムされたハードウェアにより構成されてもよい。本実施形態では一例として、制御部１０は、後述するようにプログラムを実行するプロセッサー１１を備える構成とする。プロセッサー１１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やマイコン等で構成される演算処理装置である。プロセッサー１１は、複数のハードウェアにより構成されてもよいし、ＳｏＣ（Ｓｙｓｔｅｍ  Ｏｎ  ａ  Ｃｈｉｐ）等の統合チップで構成されてもよい。
【００１７】
制御部１０には、メモリー２０および不揮発性記憶部３０が接続される。メモリー２０は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）で構成され、制御部１０が実行するプログラムや制御部１０が処理するデータを一時的に記憶する。不揮発性記憶部３０は、プログラムやデータを不揮発的に記憶する記憶装置であり、フラッシュＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の半導体記憶素子や、磁気的記憶装置等により構成される。
【００１８】
制御部１０には、印刷部４０、通信部５１、用紙センサー５２、紙幅センサー５３、及び、表示部５５が接続される。
印刷部４０は、印刷ヘッド４１及び搬送モーター４２を備え、他にカッターを備える構成とすることもできる。印刷ヘッド４１は、制御部１０の制御に従って、印刷媒体に画像を形成する。本実施形態のプリンター１はサーマルプリンターであるから、印刷ヘッド４１は、複数の発熱素子を備え、印刷媒体に熱を与えるサーマルヘッドである。印刷ヘッド４１は、例えば、ラインヘッドであり、印刷媒体の搬送方向に対して交差するように配置される。搬送モーター４２は、印刷媒体を搬送する図示しない搬送ローラーを駆動するモーターである。搬送モーター４２が制御部１０の制御に従って回転することにより、搬送ローラーにより印刷媒体が搬送される。
【００１９】
通信部５１は、ＲＳ−２３２Ｃ、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等の規格に準拠したコネクター及び通信インターフェース回路を備え、ホスト装置２と接続されて通信を実行する。通信部５１は、無線通信インターフェースを備え、ホスト装置２との間で、無線ＬＡＮ（ＷｉＦｉ（登録商標）を含む）、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の無線通信を実行する構成であってもよい。通信部５１は、制御部１０の制御に従って、ホスト装置２との間でデータを送受信する。通信部５１は、本発明の受信部の一例に対応する。
【００２０】
用紙センサー５２は、プリンター１にセットされた印刷媒体の有無や印刷媒体の残量を検出するセンサーである。紙幅センサー５３は、プリンター１にセットされた印刷媒体の幅を検出するセンサーである。プリンター１が、印刷媒体のサイズを設定可能な構成である場合、紙幅センサー５３を省略してもよい。
【００２１】
表示部５５は、プリンター１の動作状態等を表示する。表示部５５は、例えば、液晶ディスプレイを備える構成であってもよいし、ＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）インジケーターを備える構成であってもよい。
【００２２】
［２．制御部の構成］
図２は、制御部１０の構成を示すブロック図であり、メモリー２０および不揮発性記憶部３０の機能的構成を合わせて図示する。
制御部１０は、プロセッサー１１を備える。プロセッサー１１は、プログラムを実行することにより、通信制御部１２、イメージ生成部１３、及び印刷制御部１４として機能する。
【００２３】
メモリー２０の記憶領域には、受信バッファー２１及びイメージバッファー２２が形成される。受信バッファー２１は、ホスト装置２から送信されるコマンドおよびデータを格納する記憶領域である。受信バッファー２１は、本発明のバッファーメモリーの一例に対応し、イメージバッファー２２は、イメージメモリーの一例に対応する。
【００２４】
図３は、受信バッファー２１に記憶されるデータの例を示す模式図である。本実施形態では、印刷ジョブ６１、及び設定データ７１を例示する。
印刷ジョブ６１は、ホスト装置２がプリンター１により印刷を実行させる場合に、プリンター１に送信するデータである。印刷ジョブ６１は、印刷コマンド６２、及び印刷データ６３を含む。印刷コマンド６２は印刷実行を指示するコマンドであり、印刷データ６３は印刷する内容に相当するデータである。印刷データ６３は、文字コードまたは画像データを含む。ホスト装置２が、文字をプリンター１により印刷させる場合、文字コードを含む印刷データ６３を、印刷ジョブ６１の形態でプリンター１に送信する。
【００２５】
印刷データ６３は、文字コードのほか、文字コードセットを指定するコマンドや、フォントサイズを指定するコマンドを含んでもよい。これらのコマンドが印刷データ６３に含まれない場合、制御部１０は、デフォルトの文字コードセット及びデフォルトのフォントサイズを適用して、印刷データ６３を印刷する。
【００２６】
印刷ジョブ６１は、改行コマンド６４を含んでもよい。改行コマンド６４は、プリンター１に対して改行、すなわち行送り（１行分の紙送り）を指示するコマンドである。行送りは、印刷媒体の搬送（紙送り）を、行単位で実行する動作である。プリンター１は、改行コマンド６４を検出した場合、改行コマンド６４を行の末端として認識し、行送りをするなど、次の行を印刷するための処理を行う。プリンター１はラインプリンターであるため、改行コマンド６４に基づき、印刷しながら１行分の紙送りを実行する。ホスト装置２が送信する印刷ジョブ６１は、行単位の印刷データ６３を含む。改行コマンド６４は、印刷データ６３の終端を示すコマンドということもできる。
【００２７】
改行コマンド６４は、印刷ジョブ６１に含まれる形態に限らず、ホスト装置２から改行コマンド６４のみをプリンター１に送信することも可能である。また、他のコマンドと、改行コマンド６４とを組み合わせてホスト装置２からプリンター１に送信してもよい。
【００２８】
設定データ７１は、プリンター１の機能を設定する場合にホスト装置２がプリンター１に送信する。設定データ７１は、設定コマンド７２を含む。設定コマンド７２は、設定を指示するコマンドである。設定データ７１は、設定コマンド７２に対応するパラメーターを含む。図３にはパラメーター７３及びパラメーター７４を含む例を示す。パラメーター７３は、設定する対象の項目や設定の種類を指定するパラメーターである。パラメーター７４は、パラメーター７３が示す項目または種類に設定する設定値である。プリンター１は、設定コマンド７２に従って、パラメーター７３で指定される項目に、パラメーター７４の値を設定する。
【００２９】
例えば、印刷媒体に印刷するときに印刷媒体の右端にマージンを確保する機能に関して、設定データ７１により設定できる。この場合、ホスト装置２は、右端のマージンを指定することを示すパラメーター７３と、マージンの大きさを示すパラメーター７４とを含む設定データ７１を、プリンター１に送信する。
【００３０】
イメージバッファー２２は、印刷ヘッド４１によって印刷媒体に印刷されるイメージを記憶する一時記憶領域である。イメージバッファー２２に記憶されるイメージは、例えば、印刷ヘッド４１の印刷解像度に合わせたドット数の画像である。また、イメージバッファー２２は、通信制御部１２が印刷ヘッド４１の発熱素子を駆動するためのデータであってもよい。また、メモリー２０は圧縮率２３を記憶する。圧縮率２３については後述する。
【００３１】
不揮発性記憶部３０は、印刷設定データ３１、フォントデータ３２、及び、罫線文字コード情報３３を記憶する。
印刷設定データ３１は、プリンター１の印刷機能に関する各種の設定値を含む。例えば、印刷媒体の搬送方向における１行の大きさ、行間マージンのサイズ、印刷媒体の右端及び左端に設けるマージンのサイズ、規定値のフォントサイズ、印刷濃度、デフォルトの文字コードセット等の設定値を含む。印刷設定データ３１に含まれる各種の設定値は、ホスト装置２が送信する設定データ７１により設定可能である。
【００３２】
フォントデータ３２は、印刷ヘッド４１により印刷される文字のデータであり、文字コードに対応づけて不揮発性記憶部３０に記憶される。フォントデータ３２は、ビットマップフォント、アウトラインフォント、ＴｒｕｅＴｙｐｅフォント、ＯｐｅｎＴｙｐｅフォント等、フォントの種類やデータの形式に制限はない。不揮発性記憶部３０は、複数の文字コードセットに対応するフォントデータ３２を記憶してもよい。例えば、不揮発性記憶部３０には、ＡＳＣＩＩ、Ｕｎｉｃｏｄｅ、ＧＢ２３１２、ＧＢ１８０３０、ＪＩＳ等、複数の文字コードセットに対応するフォントデータ３２が、文字コードセット毎に記憶される。フォントデータ３２を記憶する不揮発性記憶部３０は、本発明のフォントデータ記憶部の一例に対応する。
【００３３】
罫線文字コード情報３３は、印刷データ６３に含まれる文字コードのうち、罫線文字として検出する文字コードを指定するデータである。
【００３４】
図４は、罫線文字コード情報３３に含まれるデータの例を示す模式図である。
図４の例では、罫線文字コード情報３３は、罫線文字コード３３１、及び、罫線文字コード３３２を含む。
【００３５】
罫線文字コード３３１は、プリンター１が印刷する印刷物において罫線として使用される文字の文字コードを含む。プリンター１が複数の文字コードセットに対応する場合、不揮発性記憶部３０は複数の文字コードセットに対応づけてフォントデータ３２を記憶する。この場合、罫線文字コード３３１は、各文字コードセットにおいて罫線として使用される文字の文字コードを指定する情報を記憶する。
【００３６】
図４の例では、罫線文字コード３３１は、罫線文字コード３３２、３３３、３３４、３３５を含む。罫線文字コード３３２は、ＧＢ２３１２の文字コードセットに含まれる文字のうち、罫線文字に割り当てられた文字コードを含む。例えば、文字コードＡ８５５、Ａ８５６、Ａ８７０は、ＧＢ２３１２に含まれる罫線文字の文字コードである。
【００３７】
罫線文字コード３３３は、Ｕｎｉｃｏｄｅの罫線文字に割り当てられた文字コードを含み、罫線文字コード３３４はＡＳＣＩＩコードの罫線文字に割り当てられた文字コードを含む。罫線文字コード３３５は、プリンター１のデフォルトの文字コードセットの罫線文字に割り当てられた文字コードを含む。
罫線文字コード３３１で指定される文字コードは、１バイト文字の文字コードであってもよいし、２バイト文字の文字コードであってもよい。また、プリンター１が対応する文字コードセットについても制限はない。
【００３８】
終端行コード３３６は、罫線の終端を示す文字コードを含む。プリンター１が複数の文字コードセットに対応している場合、終端行コード３３６は、各文字コードセットにおいて罫線の終端として使用される文字の文字コードを指定する情報を記憶する。例えば、終端行コード３３６は文字コード３３７及び文字コード３３８を含む。文字コード３３７は、ＧＢ２３１２の文字コードセットに含まれる文字コードＡ８６０、Ａ８６１を含む。これら.の文字は、罫線文字を使用して印刷物に矩形の枠が形成される場合に、右下の隅に配置される罫線文字の文字コードである。文字コード３３８は、プリンター１のデフォルトの文字コードセットの罫線文字のうち、枠の右下に配置される文字の文字コードである。
【００３９】
通信制御部１２は、通信部５１によって受信されたコマンドやデータを、通信部５１が受信する毎に、受信バッファー２１に記憶させる。これにより、受信バッファー２１は、通信部５１が受信したコマンドやデータを、受信順に記憶する。また、通信制御部１２は、ホスト装置２に対してプリンター１がオフラインであることを通知する機能や、プリンター１でエラーが発生した場合に、エラー内容をホスト装置２に通知する機能を有していてもよい。
【００４０】
イメージ生成部１３は、受信バッファー２１に格納された印刷データ６３に基づいて、印刷ヘッド４１が印刷するイメージをイメージバッファー２２に展開する。詳細には、印刷データ６３に含まれる文字コードを取得し、取得した文字コードのフォントデータを、フォントデータ３２から取得する。イメージ生成部１３は、フォントデータ３２に基づき、文字のイメージをイメージバッファー２２に記憶させる。イメージ生成部１３がイメージを生成してイメージバッファー２２に書き込む処理を、展開と呼ぶ。
【００４１】
印刷制御部１４は、イメージバッファー２２に展開されたイメージに従って印刷部４０を制御することにより、印刷媒体に画像を印刷させる。印刷制御部１４が印刷部４０により印刷される画像は、文字、罫線、画像、その他のオブジェクトを含む。また、受信したカッターコマンドにより、印刷媒体をカッターで切断し、レシートとして発行する。
【００４２】
ホスト装置２が生成した印刷ジョブ６１は、プリンター１に実際にセットされた印刷媒体よりも幅が大きい印刷媒体に印刷するものとして作成され、送信される場合がある。印刷ジョブ６１に対応する印刷媒体よりも、プリンター１に実際にセットされた印刷媒体の幅が小さい場合、プリンター１は、印刷媒体からはみ出さないように印刷を行うため、圧縮処理を実行する。例えば、印刷媒体として幅８０ｍｍの感熱ロール紙に対応するプリンター１を使っていたユーザーが、プリンター１の故障などの理由で、幅５８ｍｍの感熱ロール紙に対応するプリンター１に交換する場合がある。この例では、幅８０ｍｍの感熱ロール紙を前提としてホスト装置２が生成した印刷ジョブ６１をプリンター１が受信するが、プリンター１に実際にセットされている感熱ロール紙が幅５８ｍｍである。この場合、制御部１０は印刷ジョブ６１に対して圧縮処理を実行する。
感熱ロール紙の幅は、印刷設定データ３１に含まれる設定値として設定されている。制御部１０は、印刷設定データ３１を参照することにより、実際にセットされた感熱ロール紙の幅を取得することができる。制御部１０が取得する設定値は、感熱ロール紙の幅の代わりに、１行に印刷する文字数や印刷可能領域などの設定値であってもよい。また、感熱ロール紙の収納部に備えられた感熱ロール紙の幅を検出する検出器である紙幅センサー５３の検出値を、制御部１０が取得して、プリンター１に実際にセットされた感熱ロール紙の幅とすることができる。
【００４３】
［３．圧縮処理］
図５及び図６を参照して、プリンター１の圧縮処理を説明する。図５は比較例としての印刷例を示す図である。図６は、プリンター１の印刷例を示す図である。
【００４４】
図５には、印刷物１０１及び印刷物１０２を示す。符号Ａで示す印刷物１０１は、プリンター１に実際にセットされた印刷媒体よりも幅が大きい印刷媒体に文字が印刷された場合のイメージを示した印刷物である。符号Ｂで示す印刷物１０２は、印刷物１０１よりも幅が小さく実際にセットされた印刷媒体に、印刷物１０１と同じ文字を圧縮処理して印刷した例である。
【００４５】
印刷物１０１には、文字列１１０が印刷されている。文字列１１０は、第１行１１１〜第９行１１９の９行で構成される。第１行１１１〜第８行１１８は罫線文字を利用して矩形の枠が描かれ、枠の内部に文字列が配置されている。また、第５行１１５は、罫線文字の枠の外側に位置する枠外文字列１１５Ａを含む。第６行１１６は、罫線文字の枠の外側に位置する枠外文字列１１６Ａを含む。
【００４６】
印刷物１０２は、印刷物１０１よりも幅が小さい。このため、文字列１１０の幅方向のサイズを小さくし文字列１２０のようにする圧縮処理が行われる。
文字列１２０は、文字列１１０を、行単位で圧縮処理した例を示す。
文字列１２０は、文字列１１０と同様に、第１行１２１〜第９行１２９の９行で構成される。第１行１２１〜第８行１２８は罫線文字を利用して矩形の枠が描かれ、枠の内部に文字列が配置されている。第１行１２１〜第９行１２９に含まれる文字は、第１行１１１〜第９行１１９と同じ文字である。
【００４７】
第５行１２５は、枠外文字列１１５Ａと同様に、罫線文字の枠の外側に位置する枠外文字列１２５Ａを含む。第６行１２６は、枠外文字列１１６Ａと同様に、罫線文字の枠の外側に位置する枠外文字列１２６Ａを含む。枠外文字列１２５Ａを構成する文字は枠外文字列１１５Ａと同じ文字である。枠外文字列１２６Ａを構成する文字は枠外文字列１１６Ａと同じ文字である。
【００４８】
圧縮処理は、印刷ヘッド４１が印刷する文字を縮小する処理であり、縮小する方向は印刷媒体の搬送方向であってもよいし、幅方向であってもよい。ここで、印刷媒体の搬送方向を図５の縦方向とし、図５に符号Ｆで示す。縦方向は、図５中の上下方向に相当する。図５に符号Ｗで示す幅方向は、印刷ヘッド４１が形成する文字が並ぶ方向であり、ラインプリンターであるプリンター１が印刷する行の方向ということもできる。
【００４９】
図５の例は、印刷物１０１を幅方向に圧縮処理して印刷物１０２が印刷された例である。すなわち、圧縮処理の方向は幅方向（行方向）である。幅方向の圧縮処理は、例えば、イメージ生成部１３がフォントデータ３２から取得したフォントデータを構成するドットを所定間隔で間引きすることにより、１文字の幅方向のサイズを小さくする処理を含む。また、幅方向における文字間スペースを所定量削減するなど文字間隔を小さくする処理を含んでもよい。
圧縮処理では、設定された圧縮率に従って、行が幅方向に圧縮される。
【００５０】
図５の例では、第１行１１１〜第９行１１９の各行に対して異なる圧縮率が設定される。例えば、第１行１１１の圧縮率は、第１行１１１の全ての文字を印刷物１０２に印刷できるように、設定データ７１により設定されたマージンを含め又は含めず、右端の文字が印刷物１０２の幅に収まるように必要最小限に設定される。詳細には、設定データ７１により行方向にマージンが設定されている場合には、マージンを確保した上で、右端の文字が印刷物１０２の幅に収まるように必要最小限の圧縮率が設定される。また、設定データ７１により行方向にマージンが設定されていない場合、マージンを含まず、右端の文字が印刷物１０２の幅に収まるように必要最小限の圧縮率が設定される。
【００５１】
第１行１１１の圧縮率は、印刷物１０２の印刷媒体のサイズから求められる印刷可能領域の幅方向のサイズと、第１行１１１の文字数およびフォントサイズとをもとに、算出される。同様に、第２行１１２の圧縮率は、第２行１１２の文字数およびフォントサイズに基づき算出される。第３行１１３〜第９行１１９も同様である。
第５行１１５は枠外文字列１１５Ａを含んでおり、第６行１１６は枠外文字列１１６Ａを含むので、枠外文字列１１５Ａ、１１６Ａの分だけ文字数が多い。設定データ７１により設定されたマージンを含め又は含めず、さらに枠外文字列１１５Ａ、１１６Ａも含めて印刷物１０２の幅に収まる範囲で、できるだけ最大の大きさの文字サイズを確保するようにする。このため、第５行１１５及び第６行１１６の圧縮率は、他の行より高い圧縮率となり、文字がより小さいサイズに圧縮される。このように算出された圧縮率に基づき圧縮処理がなされた例が、印刷物１０２である。
【００５２】
印刷物１０２の文字列１２０は、行毎に異なる圧縮率が適用されている。第５行１２５及び第６行１２６は、第１行１２１〜第４行１２４及び第７行１２７〜第８行１２８よりも高い圧縮率が適用されている。このため、図５に符号Ｂで示す印刷物１０２では、枠外文字列１１５Ａ、１１６Ａも含めて印刷物１０２の幅に収まるものの、第５行１２５及び第６行１２６の罫線文字が他の行とは異なる位置に印刷されてしまう。印刷物１０２において罫線文字で描かれる矩形が崩れたように、或いは矩形を構成する罫線とは見えないおそれがあるため印刷品質が劣化し、改善が望まれる。
【００５３】
本実施形態のプリンター１は、図６に示すように、圧縮率を算出する処理が改善されているため、罫線文字の位置の乱れが解消または抑制され、印刷品質が向上している。
図６には、印刷物１０１及び印刷物１０３を示す。符号Ａで示す印刷物１０１は、図５と同一である。符号Ｂで示す印刷物１０３は、本実施形態を適用して、印刷物１０１よりも幅が小さい印刷媒体に、印刷物１０１と同じ文字を印刷した例である。
【００５４】
印刷物１０３の幅は、文字列１１０の幅よりも小さい。このため、文字列１１０の幅方向のサイズを小さくする圧縮処理が行われる。文字列１３０は、文字列１１０を行単位で圧縮処理したものである。
文字列１３０は、第１行１３１〜第９行１３９の９行で構成される。第１行１３１〜第８行１３８は罫線文字を利用して矩形の枠が描かれ、枠の内部に文字列が配置されている。第１行１３１〜第９行１３９に含まれる文字は、第１行１１１〜第９行１１９と同じ文字である。
【００５５】
第５行１３５は、枠外文字列１１５Ａと同様に、罫線文字の枠の外側に位置する枠外文字列１３５Ａを含む。第６行１３６は、枠外文字列１１６Ａと同様に、罫線文字の枠の外側に位置する枠外文字列１３６Ａを含む。枠外文字列１３５Ａを構成する文字は枠外文字列１１５Ａと同じ文字である。枠外文字列１３６Ａを構成する文字は枠外文字列１１６Ａと同じ文字である。
【００５６】
プリンター１が実行する圧縮処理は、連続する複数の行に罫線文字が含まれる場合に、これら連続する行の圧縮率を等しい圧縮率とする。図６の例では幅方向Ｗの圧縮処理を示す。
【００５７】
図６の例では、第１行１１１〜第９行１１９のうち、罫線文字を含む第１行１１１〜第８行１１８に対して等しい圧縮率が適用されるようにしたものである。プリンター１は、イメージ生成部１３の機能により、受信バッファー２１に記憶された印刷データ６３を参照し、罫線文字（罫線文字コード）を含む行と当該行に含まれる文字数（文字コード数）を検出する。イメージ生成部１３は、罫線文字を含む各行について、一旦、それぞれの圧縮率を算出する。圧縮率を算出する処理は、第１行１１１の全ての文字を印刷物１０３に印刷できるように算出される。すなわち、印刷物１０３の印刷媒体のサイズから求められる印刷可能領域の幅方向Ｗにおけるサイズと、第１行１１１の文字数およびフォントサイズとをもとに、圧縮率が算出される。同様に、第２行１１２の圧縮率は、第２行１１２の文字数およびフォントサイズに基づき算出される。第３行１１３〜第９行１１９も同様である。罫線文字を含む行が複数行連続した場合であって、設定データ７１により設定されたプリンター１のマージンを含め又は含めず、さらに枠外文字列１１５Ａ、１１６Ａも含めて印刷物１０２の幅に収まるようにした場合の各行の圧縮率のうち最も高い圧縮率を、各行に共通する圧縮率として設定する。
【００５８】
具体的には、イメージ生成部１３は、罫線文字を含む連続する複数の行に該当する第１行１１１〜第８行１１８の各行について、順に、行毎に圧縮率を算出する。イメージ生成部１３は、第１行１１１〜第８行１１８について算出された圧縮率のうち最も高い圧縮率を、第１行１１１〜第８行１１８に共通する圧縮率として設定する。このように設定された各行に共通の圧縮率に基づき圧縮処理がなされた例が、印刷物１０３である。
【００５９】
第１行１１１〜第８行１１８では、第５行１１５及び第６行１１６の圧縮率が高い。印刷物１０３の文字列１３０では、第５行１３５及び第６行１３６に対応する圧縮率で、第１行１３１〜第８行１３８の全ての行の全ての文字が圧縮されて印刷されている。
枠外文字列１３５Ａ、１３６Ａを含む第５行１３５及び第６行１３６と、他の行とが、同じ圧縮率で圧縮されているため、第１行１３１〜第８行１３８の罫線の位置は、縦方向において揃っている。従って、印刷物１０３では、印刷物１０１の矩形の形が維持されており、印刷物１０２に比べて印刷品位が向上している。
また、第９行１３９は、第１行１３１〜第８行１３８とは別に、第９行１３９の文字数に適合する固有の圧縮率で圧縮されているため、印刷物１０３からはみ出すことなく、できるだけ大きくなるような適切なサイズで印刷されている。従って、第９行１３９の視認性が良好に維持されている。
【００６０】
［４．プリンターの動作］
図７は、プリンター１の動作を示すフローチャートである。図７の動作は、受信バッファー２１に記憶された印刷データ６３に基づき印刷を行う動作であり、ステップＳ１１〜Ｓ２０をイメージ生成部１３が実行し、ステップＳ２１を印刷制御部１４が実行する。
【００６１】
制御部１０は、受信バッファー２１に記憶された印刷データ６３を受信順に読み出して取得する（ステップＳ１１）。ステップＳ１１で取得した印刷データ６３を、改行コマンド６４で区切って対象の行とする。制御部１０は、対象の行に含まれる文字（文字コード）を取得する（ステップＳ１２）。
制御部１０は、対象の行において罫線文字（罫線文字コード）を検出する（ステップＳ１３）。ステップＳ１３で、制御部１０は、対象の行に含まれる文字コードの中に、罫線文字コード３３１で指定される文字コードに該当する文字コードがあるか否かを判定することにより、罫線文字を検出する。
【００６２】
制御部１０は、対象の行に罫線文字（罫線文字コード）が含まれるか否かを判定する（ステップＳ１４）。罫線文字が含まれる場合（ステップＳ１４；ＹＥＳ）、制御部１０は、対象の行の圧縮率を算出する（ステップＳ１５）。ここで、制御部１０は、設定データ７１により設定されたプリンター１のマージン、または、対象の行に対して設定されたマージンを含めて圧縮率を算出してもよい。すなわち、制御部１０は、対象の行を印刷する際に印刷媒体の行方向に確保すべきマージンの設定値を取得する。ここで取得するマージンの設定値は、例えば、対象の行に含まれる文字列の右側に設けられる右マージン、及び、文字列の左側に設けられる左マージンである。制御部１０は、プリンター１に実際にセットされた印刷媒体の幅からマージンを除いた大きさを、文字列を印刷可能な領域としてもよい。制御部１０は、文字列を印刷可能な領域のサイズを算出し、算出したサイズに、対象の行に含まれる枠外文字列１１５Ａ、１１６Ａも含め文字列の全てを印刷できるように、幅方向（行方向）の圧縮率を算出する。罫線文字を含む連続する複数の行について、順に圧縮率を算出して比べていき、一番高いものを各行に共通の圧縮率とする。図７の処理に関して、設定中の圧縮率とは、実際に印刷設定データ３１として設定された値に限らず、ステップＳ１６を含む処理で比較をしていく途中で、暫定的に一番高い圧縮率を、設定中の圧縮率と称する。設定中の圧縮率は、例えば、圧縮率２３としてメモリー２０に一時的に記憶される。
【００６３】
制御部１０は、ステップＳ１５で算出した圧縮率が、設定中の圧縮率より高い圧縮率であるか否かを判定する（ステップＳ１６）。ここで、高い圧縮率とは、より小さいサイズに圧縮する圧縮率を指す。
【００６４】
算出した圧縮率が、設定中の圧縮率より高い圧縮率である場合（ステップＳ１６；ＹＥＳ）、制御部１０は、設定されている圧縮率（例えば、メモリー２０に記憶された圧縮率２３）を、ステップＳ１５で算出した圧縮率により更新し（ステップＳ１７）、ステップＳ１８に移行する。
また、ステップＳ１４で罫線を含まないと判定した場合（ステップＳ１４；ＮＯ）、及び、ステップＳ１５で算出した圧縮率が設定中の圧縮率以下であると判定した場合（ステップＳ１６；ＮＯ）、制御部１０はステップＳ１８に移行する。
【００６５】
ステップＳ１８で、制御部１０は、終了条件が成立したか否かを判定する（ステップＳ１８）。制御部１０には、連続する複数の行に対し同じ圧縮率を適用する処理を終了するための条件として、終了条件が設定されている。
【００６６】
終了条件は、例えば、次の（１）、（２）のいずれかとすることができる。
（１）対象の行が罫線を含まない行である。
（２）対象の行に、終端行コード３３６に該当する文字コードが含まれる。
終了条件（１）が設定されている場合、ステップＳ１４で罫線を含まないと判定した後（ステップＳ１４；ＮＯ）、制御部１０は、終了条件が成立したとみなして（ステップＳ１８；ＹＥＳ）、ステップＳ１９に移行する。
終了条件（２）が設定されている場合、制御部１０は、ステップＳ１２で取得した文字コードに、終端行コード３３６で指定される文字コードが含まれるか否かに基づき、終了条件が成立したか否かを判定する。該当する文字コードがある場合、終了条件が成立したと判定して（ステップＳ１８；ＹＥＳ）、ステップＳ１９に移行する。終端行コード３３６の代わりに印刷ジョブ（レシート）の最後となるカッターコマンドにより終了条件を判定してもよい。
【００６７】
また、終了条件が成立していないと判定した場合（ステップＳ１８；ＮＯ）、制御部１０はステップＳ１１に戻り、次の対象の行の印刷データ６３を取得する。
従って、終了条件が成立しない間、制御部１０は、受信バッファー２１から連続する複数の行の印刷データ６３を取得する。制御部１０は、取得した印刷データ６３に含まれる文字コードに対し、ステップＳ１２〜Ｓ１７の処理を実行する。そして、制御部１０は、ステップＳ１５で圧縮率を算出し、設定されている圧縮率より高い圧縮率が算出された場合に、圧縮率を更新する処理を繰り返す。これにより、罫線を含む行が縦方向に連続する場合に、これら連続する行に対して設定する圧縮率を更新し続けるので、連続する複数の行に対して、最も高い圧縮率が等しく適用される。
【００６８】
終了条件が成立した場合（ステップＳ１８；ＹＥＳ）、制御部１０は、ステップＳ１９に移行して、設定された圧縮率を取得する（ステップＳ１９）。制御部１０は、文字コードに対応するフォントデータ３２を参照することにより、イメージバッファー２２に、行単位で印刷イメージを展開する（ステップＳ２０）。ステップＳ２０で、制御部１０は、ステップＳ１９で取得した圧縮率に基づき圧縮したイメージを生成し、イメージバッファー２２に展開する。ここで、制御部１０は、メモリー２０に記憶されている圧縮率２３を、印刷設定データ３１に、圧縮率の設定値として設定してもよい。
その後、制御部１０は、イメージバッファー２２に格納されたイメージに従って印刷部４０を制御して、対象の行を印刷する。
受信バッファー２１に印刷データ６３が格納されている場合、制御部１０は、ステップＳ１１から処理を再度、実行する。
【００６９】
以上説明したように、本発明を適用した実施形態に係るプリンター１は、印刷部４０と、受信バッファー２１と、イメージバッファー２２と、制御部１０と、を備える。受信バッファー２１は、プリンター１がホスト装置２から受信した文字コードを記憶する。イメージバッファー２２は、印刷部４０により印刷されるイメージを記憶する。制御部１０は、受信バッファー２１に記憶された文字コードに基づき不揮発性記憶部３０に記憶されているフォントデータを読み出して、改行コマンド６４により行単位で区切りながらイメージバッファー２２にイメージデータとして書き込み（展開し）、印刷部４０によって行単位でイメージを印刷させる。制御部１０は、受信バッファー２１に記憶された文字コードに基づき罫線文字を含む行を検出する。制御部１０は、罫線文字を検出した行を印刷する場合の圧縮率を設定し、設定した圧縮率で圧縮したイメージを印刷部４０によって印刷させる。
【００７０】
また、プリンター１の制御方法では、制御部１０は、ホスト装置２から受信した文字コードやコマンドを受信バッファー２１に記憶する。制御部１０は、受信バッファー２１に記憶された終端行コードを示す文字コードや改行コマンド６４、カッターコマンドに基づき罫線文字を含む行の区切りを検出する。制御部１０は、検出した行の区切りで区切られた行を印刷する場合の圧縮率を設定する。制御部１０は、受信バッファー２１に記憶された文字コードに基づき、イメージバッファー２２にイメージを書き込む。制御部１０は、罫線文字を含む行を検出した場合、検出した行に設定した圧縮率で圧縮したイメージをイメージバッファー２２に書き込む。制御部１０は、印刷部４０によって行単位でイメージを印刷する。
【００７１】
本発明の印刷装置、及び、印刷装置の制御方法を適用したプリンター１によれば、罫線文字を含む行の圧縮率を、罫線文字を含む複数の行が含む文字を加味して設定する。このため、罫線を含む複数の行を印刷する場合に、罫線の印刷位置を整合させることができる。従って、罫線文字を含む行を圧縮して印刷する場合に、印刷品位の向上を図ることができる。さらに、受信バッファー２１が記憶する印刷データ６３の文字コードを参照することにより、軽負荷の処理によって、罫線文字を含む行を検出できる。
【００７２】
プリンター１において、受信バッファー２１は、行の区切りを検出可能な態様で文字コードを記憶する。例えば、改行コマンド６４を伴う印刷ジョブ６１を記憶する。制御部１０は、受信バッファー２１に記憶された文字コードから罫線文字に対応する文字コードを含む行を検出し、検出した行の圧縮率を設定する。このため、罫線文字を含む行を、より正確に検出することができる。従って、罫線文字を含む行を圧縮して印刷する場合の圧縮率を、より適切に設定できる。
【００７３】
制御部１０は、受信バッファー２１に記憶された文字コードから、罫線文字に対応する文字コードを含む連続する複数の行を検出した場合、複数の行に対し、複数の行の全体を、設定されたサイズの印刷領域に印刷可能な圧縮率を設定する。
【００７４】
制御部１０は、受信バッファー２１に記憶された文字コードを行単位で取得して圧縮率を設定する。制御部１０は、罫線文字に対応する文字コードを含む連続する複数の行を検出した場合、複数の行に設定された圧縮率のうち最も高い圧縮率で、印刷部４０により複数の行を印刷させる。このため、連続する複数の行に罫線文字が含まれる場合に、これら複数の行に対し、各行について求められた圧縮率のうち最も高い圧縮率が適用される。従って、連続する複数の行に含まれる罫線文字の印刷位置を整合させることができ、印刷品位の向上を図ることができる。
【００７５】
プリンター１は、文字コードを含む印刷データ及びコマンドを受信する通信部５１を備える。受信バッファー２１は、通信部５１により受信された印刷データ及びコマンドを記憶する。制御部１０は、受信バッファー２１に、行のマージンを指定するコマンドが記憶されている場合に、コマンドで指定されたマージンに対応する圧縮率を設定する。このため、指定されたマージンを確保できるように、適切な圧縮率を設定できる。
【００７６】
プリンター１は、フォントデータ３２を記憶する不揮発性記憶部３０を備える。制御部１０は、不揮発性記憶部３０から、受信バッファー２１に記憶された文字コードに対応するフォントデータ３２を読み出してイメージバッファー２２に書き込む。制御部１０は、受信バッファー２１に記憶された文字コードに基づき罫線文字を含む行を検出した場合、不揮発性記憶部３０から読み出したフォントデータ３２を設定した圧縮率で圧縮して、イメージを印刷部４０によって印刷させる。従って、プリンター１が記憶するフォントデータ３２を圧縮することにより、プリンター１にセットされた印刷媒体に、ホスト装置２が送信した印刷ジョブ６１を、適切に印刷できる。
【００７７】
［５．他の実施形態］
なお、上記実施形態は本発明を適用した一具体例を示すものであり、本発明はこれに限定されるものではない。
例えば、上記実施形態で説明したプリンター１は、感熱ロール紙に印刷するサーマルプリンターとして説明したが、本発明はこれに限定されない。本発明は、印刷媒体にインクを吐出して文字や画像を印刷するインクジェット式プリンターや、ワイヤーにより印刷媒体にドットを形成するドットインパクト式プリンターにも適用可能である。また、その他の形式の印刷装置や、複合機等の装置に組み込まれた印刷ユニットにも適用可能である。印刷媒体は紙に限定されず、布、不織布、或いはその他のシートとすることができる。また、印刷媒体の形状は、ロール紙に限らず、所定サイズのカットシートを使用する構成であってもよい。本発明は、行単位で印刷を行う、いわゆるラインプリンターに適用することが、より効果的である。
【００７８】
本実施形態で説明した文字コードセット及び罫線文字は一例であり、図に示していない文字コードに本発明を適用することはもちろん可能である。また、罫線文字は、文字やスペースの区切りとして印刷される文字であればよく、図に示した例に限定されない。さらに、上記実施形態では、罫線文字コード情報３３が、文字コードセット毎に罫線文字を指定する罫線文字コード３３１及び終端行コード３３６を含む構成を例示したが、本発明はこれに限定されない。例えば、複数の文字コードセットに共通して、罫線文字を指定する情報を罫線文字コード情報３３として記憶していてもよい。
【００７９】
また、制御部１０は、フォントデータ３２及び罫線文字コード情報３３を、プリンター１に接続された他の装置から取得する構成であってもよい。
【００８０】
また、図１及び図２に示した各機能部を独立したハードウェアにより構成する必要はなく、ソフトウェアとハードウェアとの協働により、複数の機能部の機能を１つのハードウェアに集約して実現することも勿論可能である。また、上述の動作を行う制御部１０のプロセッサー１１が実行するプログラムは、プリンター１が備える不揮発性記憶部３０に限らず、他の記憶装置、記憶媒体や外部装置の記憶媒体に記憶させ、制御部１０により読み出して実行する構成としても良い。
【符号の説明】
【００８１】
１…プリンター（印刷装置）、２…ホスト装置、１０…制御部、１１…プロセッサー、１２…通信制御部、１３…イメージ生成部、１４…印刷制御部、２０…メモリー、２１…受信バッファー（バッファーメモリー）、２２…イメージバッファー（イメージメモリー）、２３…圧縮率、３０…不揮発性記憶部（フォントデータ記憶部）、３１…印刷設定データ、３２…フォントデータ、３３…罫線文字コード情報、４０…印刷部、４１…印刷ヘッド、４２…搬送モーター、５１…通信部（受信部）、５２…用紙センサー、５３…紙幅センサー、６１…印刷ジョブ、６２…印刷コマンド、６３…印刷データ、６４…改行コマンド、７１…設定データ、７２…設定コマンド、７３、７４…パラメーター、１０１、１０２、１０３…印刷物、１１０、１２０、１３０…文字列、１１１、１２１、１３１…第１行、１１２、１２２、１３２…第２行、１１３、１２３、１３３…第３行、１１５、１２５、１３５…第５行、１１６、１２６、１３６…第６行、１１７、１２７、１３７…第７行、１１８、１２８、１３８…第８行、１１９、１２９、１３９…第９行、１１５Ａ、１１６Ａ、１２５Ａ、１２６Ａ、１３５Ａ、１３６Ａ…枠外文字列、３３１…罫線文字コード、３３２、３３３、３３４、３３５…罫線文字コード、３３６…終端行コード、３３７、３３８…文字コード。
【図１】
2020100054.tif 000003
【図２】
2020100054.tif 000004
【図３】
2020100054.tif 000005
【図４】
2020100054.tif 000006
【図５】
2020100054.tif 000007
【図６】
2020100054.tif 000008
【図７】
2020100054.tif 000009