(57)【要約】【課題】全体としてのバランスを維持しつつ、文字のサイズを変更することが可能な編集装置、編集方法、及び編集プログラムを提供する。【解決手段】印刷装置は、ブロックを複数まとめて縮小するために、複数のブロックのそれぞれに含まれる文字のサイズである文字サイズを調整する。印刷装置は、文字サイズをブロック毎に特定するための情報であって、文字サイズを調整する方法を示す複数の調整方法毎に、調整方法によって調整可能な複数の段階的な文字サイズを示す複数のサイズ情報を特定可能な調整情報７５Ａと、調整前の文字サイズを示す設定サイズ情報７５Ｂとを、ブロック毎に記憶する。印刷装置は、複数のブロックをまとめて縮小するために文字サイズを調整する。このとき、印刷装置は、最も小さい基準縮小率と近似するように、複数のブロックのそれぞれの文字サイズを変更する。【選択図】図６
2019091982.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つの文字が配列されたブロックを複数まとめて縮小するために、複数のブロックのそれぞれに含まれる文字のサイズである文字サイズを調整する編集装置であって、
前記文字サイズを前記ブロック毎に特定するための情報であって、
前記文字サイズを調整する方法を示す複数の調整方法毎に、前記調整方法によって調整可能な複数の段階的な前記文字サイズを示す複数のサイズ情報を特定可能な調整情報と、
前記調整情報により特定される前記複数のサイズ情報のうち調整前の前記文字サイズを示す前記サイズ情報であって、前記複数の調整方法毎に特定された設定サイズ情報と
を、前記ブロック毎に記憶した記憶部と、
前記記憶部に記憶された前記調整情報及び前記設定サイズ情報に基づき、前記複数のブロックをまとめて縮小するために前記複数のブロックのそれぞれの前記文字サイズを調整する調整手段と
を備え、
前記調整手段は、
何れかの前記調整方法に対応する前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて１段階小さい前記文字サイズに変更した場合の縮小率を、前記複数のブロックのそれぞれについて特定する第１特定手段と、
前記第１特定手段によって前記複数のブロック毎に特定された前記縮小率のうち最も小さい前記縮小率を、基準縮小率として特定する第２特定手段と、
前記第２特定手段によって特定された前記基準縮小率と近似するように、前記複数のブロックのそれぞれの前記文字サイズを変更する変更手段と
を備えたことを特徴とする編集装置。
【請求項２】
前記変更手段は、
前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて１段階小さい前記文字サイズに変更し、且つ、所定割合分更に前記文字サイズを縮小することを特徴とする請求項１に記載の編集装置。
【請求項３】
前記変更手段は、
前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて２段階以上小さい前記文字サイズに変更することを特徴とする請求項１に記載の編集装置。
【請求項４】
前記複数の調整方法は、
前記文字の幅を調整することによって前記文字サイズを調整する第１方法、
前記文字が特定の範囲を占有するように、前記文字の幅及び高さを調整することによって前記文字サイズを調整する第２方法、
前記文字のフォントサイズを調整することによって前記文字サイズを調整する第３方法、及び、
前記文字の高さを調整することによって前記文字サイズを調整する第４方法
の少なくとも１つを有することを特徴とする請求項１から３の何れかに記載の編集装置。
【請求項５】
前記複数の調整方法は、
前記第１方法、前記第２方法、及び前記第３方法のうち何れか２つを少なくとも有し、
前記第１方法の方が前記第２方法よりも優先度が高く、且つ、前記第２方法の方が前記第３方法よりも優先度が高く設定され、
前記第１特定手段は、
優先度が高い順に選択された前記調整方法である現調整方法に対応する前記設定サイズ情報によって示される前記文字サイズが、現調整方法に対応する前記文字サイズの中で最も小さい場合、前記現調整方法の次に優先度の高い次調整方法に対応する前記設定サイズ情報によって示される前記文字サイズを１段階小さい前記文字サイズに変更した場合の前記縮小率を特定することを特徴とする請求項４に記載の編集装置。
【請求項６】
前記文字サイズの調整前における前記複数のブロックのそれぞれのサイズであるブロックサイズを、前記設定サイズ情報に基づいて特定される調整前の前記文字サイズに基づいて特定する特定手段と、
前記特定手段によって特定された前記複数のブロックのそれぞれの前記ブロックサイズに基づき、所定領域に前記複数のブロックを配置可能か判定する判定手段と
を更に備え、
前記調整手段は、
前記判定手段によって、前記複数のブロックを前記所定領域に配置できないと判定された場合、前記複数のブロックのそれぞれの前記文字サイズを調整することを特徴とする請求項１から５の何れかに記載の編集装置。
【請求項７】
前記文字は、
前記複数の調整方法の少なくとも何れかに基づいて１段階小さい前記文字サイズに変更された場合、前記文字の幅方向と、前記文字の高さ方向との両方向において縮小されることを特徴とする請求項１から３、６の何れかに記載の編集装置。
【請求項８】
前記ブロックは、複数の文字を含む文字列が、改行及び改ブロックの少なくとも何れかによって区切られることによって形成されることを特徴とする請求項１から７の何れかに記載の編集装置。
【請求項９】
少なくとも１つの文字が配列されたブロックを複数まとめて縮小するために、複数のブロックのそれぞれに含まれる文字のサイズである文字サイズを調整する編集方法であって、
前記文字サイズを前記ブロック毎に特定するための情報であって、前記文字サイズを調整する方法を示す複数の調整方法毎に、前記調整方法によって調整可能な複数の段階的な前記文字サイズを示す複数のサイズ情報を特定可能な調整情報と、前記調整情報により特定される前記複数のサイズ情報のうち調整前の前記文字サイズを示す前記サイズ情報であって、前記複数の調整方法毎に特定された設定サイズ情報とに基づき、前記複数のブロックをまとめて縮小するために前記複数のブロックのそれぞれの前記文字サイズを調整する調整ステップと
を備え、
前記調整ステップは、
何れかの前記調整方法に対応する前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて１段階小さい前記文字サイズに変更した場合の縮小率を、前記複数のブロックのそれぞれについて特定する第１特定ステップと、
前記第１特定ステップによって前記複数のブロック毎に特定された前記縮小率のうち最も小さい前記縮小率を、基準縮小率として特定する第２特定ステップと、
前記第２特定ステップによって特定された前記基準縮小率と近似するように、前記複数のブロックのそれぞれの前記文字サイズを変更する変更ステップと
を備えたことを特徴とする編集方法。
【請求項１０】
少なくとも１つの文字が配列されたブロックを複数まとめて縮小するために、複数のブロックのそれぞれに含まれる文字のサイズである文字サイズを調整するコンピュータに、
前記文字サイズを前記ブロック毎に特定するための情報であって、前記文字サイズを調整する方法を示す複数の調整方法毎に、前記調整方法によって調整可能な複数の段階的な前記文字サイズを示す複数のサイズ情報を特定可能な調整情報と、前記調整情報により特定される前記複数のサイズ情報のうち調整前の前記文字サイズを示す前記サイズ情報であって、前記複数の調整方法毎に特定された設定サイズ情報とに基づき、前記複数のブロックをまとめて縮小するために前記複数のブロックのそれぞれの前記文字サイズを調整する調整ステップを実行させるための編集プログラムであって、
前記調整ステップは、
何れかの前記調整方法に対応する前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて１段階小さい前記文字サイズに変更した場合の縮小率を、前記複数のブロックのそれぞれについて特定する第１特定ステップと、
前記第１特定ステップによって前記複数のブロック毎に特定された前記縮小率のうち最も小さい前記縮小率を、基準縮小率として特定する第２特定ステップと、
前記第２特定ステップによって特定された前記基準縮小率と近似するように、前記複数のブロックのそれぞれの前記文字サイズを変更する変更ステップと
を備えたことを特徴とする編集プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は編集装置に関する。より詳細には、本発明は、文字のサイズを変更することにより編集を行う編集装置、編集方法、及び編集プログラムに関する。
【背景技術】
【０００２】
文字を編集する編集装置として、例えば、印刷対象の文字を編集する装置（印刷装置、ＰＣ等）、及び、表示部に表示する文字を編集する装置（表示装置等）が知られている。特許文献１は、ウェブコンテンツ配信サーバを開示する。ウェブコンテンツ配信サーバは、携帯情報端末からウェブコンテンツの閲覧要求を受けた場合、ウェブコンテンツに含まれる文字情報を、携帯情報端末の小画面に対応したサイズに制御して配信する。このとき、ウェブコンテンツ配信サーバは、文字情報に含まれる文字列を、文字の種類毎に区分し、それぞれの複雑度を算出する。ウェブコンテンツ配信サーバは、算出された複雑度に応じて、区分された文字列毎に文字変換倍率を更に算出する。ウェブコンテンツ配信サーバは、区分された文字列のサイズを、算出された文字変換倍率に基づいて変更する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２６７１５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記装置において、区分された文字列毎に文字変換倍率が異なる場合、サイズの異なる文字列が混在することになる。この場合、全体としてのバランスが悪くなり、見栄えが低下する可能性があるという問題点がある。
【０００５】
本発明の目的は、全体としてのバランスを維持しつつ、文字のサイズを変更することが可能な編集装置、編集方法、及び編集プログラムを提供することである。
【課題を解決するための手段】
【０００６】
本発明の第１態様に係る編集装置は、少なくとも１つの文字が配列されたブロックを複数まとめて縮小するために、複数のブロックのそれぞれに含まれる文字のサイズである文字サイズを調整する編集装置であって、前記文字サイズを前記ブロック毎に特定するための情報であって、前記文字サイズを調整する方法を示す複数の調整方法毎に、前記調整方法によって調整可能な複数の段階的な前記文字サイズを示す複数のサイズ情報を特定可能な調整情報と、前記調整情報により特定される前記複数のサイズ情報のうち調整前の前記文字サイズを示す前記サイズ情報であって、前記複数の調整方法毎に特定された設定サイズ情報とを、前記ブロック毎に記憶した記憶部と、前記記憶部に記憶された前記調整情報及び前記設定サイズ情報に基づき、前記複数のブロックをまとめて縮小するために前記複数のブロックのそれぞれの前記文字サイズを調整する調整手段とを備え、前記調整手段は、何れかの前記調整方法に対応する前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて１段階小さい前記文字サイズに変更した場合の縮小率を、前記複数のブロックのそれぞれについて特定する第１特定手段と、前記第１特定手段によって前記複数のブロック毎に特定された前記縮小率のうち最も小さい前記縮小率を、基準縮小率として特定する第２特定手段と、前記第２特定手段によって特定された前記基準縮小率と近似するように、前記複数のブロックのそれぞれの前記文字サイズを変更する変更手段とを備えたことを特徴とする。
【０００７】
編集装置は、複数のブロックをまとめて縮小するために、それぞれのブロックに含まれる文字の文字サイズを変更する。ここで編集装置は、複数のブロックのそれぞれに含まれる文字の文字サイズを、各ブロックに対応する調整情報に基づき１段階小さい文字サイズに変更した場合の縮小率を、ブロック毎に特定する。編集装置は、特定された縮小率のうち最も小さい基準縮小率と近似するように、複数のブロックのそれぞれの文字サイズを変更する。この場合、編集装置は、各ブロックの文字サイズのバランスを維持しつつ、各ブロックのサイズを縮小できる。
【０００８】
本発明の第２態様に係る編集方法は、少なくとも１つの文字が配列されたブロックを複数まとめて縮小するために、複数のブロックのそれぞれに含まれる文字のサイズである文字サイズを調整する編集方法であって、前記文字サイズを前記ブロック毎に特定するための情報であって、前記文字サイズを調整する方法を示す複数の調整方法毎に、前記調整方法によって調整可能な複数の段階的な前記文字サイズを示す複数のサイズ情報を特定可能な調整情報と、前記調整情報により特定される前記複数のサイズ情報のうち調整前の前記文字サイズを示す前記サイズ情報であって、前記複数の調整方法毎に特定された設定サイズ情報とに基づき、前記複数のブロックをまとめて縮小するために前記複数のブロックのそれぞれの前記文字サイズを調整する調整ステップとを備え、前記調整ステップは、何れかの前記調整方法に対応する前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて１段階小さい前記文字サイズに変更した場合の縮小率を、前記複数のブロックのそれぞれについて特定する第１特定ステップと、前記第１特定ステップによって前記複数のブロック毎に特定された前記縮小率のうち最も小さい前記縮小率を、基準縮小率として特定する第２特定ステップと、前記第２特定ステップによって特定された前記基準縮小率と近似するように、前記複数のブロックのそれぞれの前記文字サイズを変更する変更ステップとを備えたことを特徴とする。第２態様によれば、第１態様と同様の効果を奏することができる。
【０００９】
本発明の第３態様に係る編集プログラムは、少なくとも１つの文字が配列されたブロックを複数まとめて縮小するために、複数のブロックのそれぞれに含まれる文字のサイズである文字サイズを調整するコンピュータに、前記文字サイズを前記ブロック毎に特定するための情報であって、前記文字サイズを調整する方法を示す複数の調整方法毎に、前記調整方法によって調整可能な複数の段階的な前記文字サイズを示す複数のサイズ情報を特定可能な調整情報と、前記調整情報により特定される前記複数のサイズ情報のうち調整前の前記文字サイズを示す前記サイズ情報であって、前記複数の調整方法毎に特定された設定サイズ情報とに基づき、前記複数のブロックをまとめて縮小するために前記複数のブロックのそれぞれの前記文字サイズを調整する調整ステップを実行させるための編集プログラムであって、前記調整ステップは、何れかの前記調整方法に対応する前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて１段階小さい前記文字サイズに変更した場合の縮小率を、前記複数のブロックのそれぞれについて特定する第１特定ステップと、前記第１特定ステップによって前記複数のブロック毎に特定された前記縮小率のうち最も小さい前記縮小率を、基準縮小率として特定する第２特定ステップと、前記第２特定ステップによって特定された前記基準縮小率と近似するように、前記複数のブロックのそれぞれの前記文字サイズを変更する変更ステップとを備えたことを特徴とする。第３態様によれば、第１態様と同様の効果を奏することができる。
【図面の簡単な説明】
【００１０】
【図１】印刷装置１を前側から見た斜視図である。
【図２】印刷装置１の電気的構成を示すブロック図である。
【図３】所定領域８、ブロック８１〜８３、調整情報７５Ａ、及び設定サイズ情報７５Ｂを示す図である。
【図４】調整方法（「幅調整」「ビッグ文字」「フォントサイズ」）を説明するための図である。
【図５】所定領域８、ブロック８１〜８３、調整情報７５Ａ、及び設定サイズ情報７５Ｂを示す図である。
【図６】所定領域８、ブロック８１〜８３、調整情報７５Ａ、及び設定サイズ情報７５Ｂを示す図である。
【図７】メイン処理を示すフローチャートである。
【図８】調整処理のフローチャートである。
【図９】判定処理のフローチャートである。
【図１０】変更処理のフローチャートである。
【発明を実施するための形態】
【００１１】
＜印刷装置１の概要＞
本発明の一実施形態について、図面を参照して説明する。印刷装置１は、印刷媒体であるテープに対し、文字、文字列、記号、数字、図形、絵文字等（以下、「印刷情報」という。）を印刷してラベルを作成可能である。以下の説明では、図１の左上側、右下側、右上側、左下側、上側、及び下側を、それぞれ、印刷装置１の左側、右側、上側、下側、前側、及び後側とする。
【００１２】
図１に示すように、印刷装置１は、直方体状の筐体である本体カバー２を備える。本体カバー２の上面前部には、文字列等を入力するためのキーボード３が設けられる。キーボード３は、アルファベットキー、テンキー、電源スイッチ、用途キー、カーソルキー等を含む。キーボード３の上側には、各種情報を表示するディスプレイ５が設けられる。一例として、ディスプレイ５はドットマトリクスＬＣＤである。ディスプレイ５の後側には、本体カバー２に対して開閉可能なカセットカバー６が設けられる。本体カバー２の上面には、印刷されたテープを本体カバー２の外部に排出する排出口が設けられる。本体カバー２の右上角部には、操作部１４が設けられる。操作部１４が内側へ押圧操作されることによって、カットモータ２８Ａ（図２参照）が駆動し、印刷済みのテープを切断する。
【００１３】
＜印刷装置１の電気的構成＞
図２を参照し、印刷装置１の電気的構成を説明する。印刷装置１は制御回路部７０を備える。制御回路部７０は、ＣＰＵ７１、ＲＯＭ７２、ＣＧＲＯＭ７３、ＲＡＭ７４、フラッシュメモリ７５、及び入出力インタフェース７７を備え、これらがデータバス６９を介して接続される。ＣＰＵ７１は、印刷装置１を統括制御する。ＲＯＭ７２は、ＣＰＵ７１が各種プログラムの実行時に必要な各種パラメータを記憶する。ＣＧＲＯＭ７３は、内蔵フォント等を記憶する。ＲＡＭ７４は、テキストメモリ、印刷バッファ等、複数の記憶領域を備える。フラッシュメモリ７５は、ＣＰＵ７１が実行する各種プログラム等を記憶する。
【００１４】
入出力インタフェース７７には、キーボード３、液晶駆動回路（ＬＣＤＣ）２５、駆動回路２６、２７、２８、及び外部インタフェース（Ｉ／Ｆ）２９が接続される。ＬＣＤＣ２５は、ディスプレイ５に表示データを出力するためのビデオＲＡＭ（図示略）を有する。駆動回路２６は、サーマルヘッド２６Ａを駆動するための電子回路である。駆動回路２７は、テープ送りモータ２７Ａを駆動するための電子回路である。駆動回路２８は、カットモータ２８Ａを駆動するための電子回路である。外部Ｉ／Ｆ２９は、非図示の外部端末２９Ａと接続して通信を行う。例えばＣＰＵ７１は、外部端末２９Ａから受信したプログラムをフラッシュメモリ７５に記憶することにより、プログラムを更新できる。外部端末２９Ａは、汎用のパーソナルコンピュータ（ＰＣ）又は携帯端末である。
【００１５】
＜印刷装置１の機能（レイアウト印刷機能）＞
印刷装置１の印刷機能の１つであるレイアウト印刷機能について説明する。レイアウト印刷機能は、複数の文字列が所定領域の異なる位置に配置された状態で、テープに対する印刷を行うための機能である。以下、所定領域の異なる位置に配置されるそれぞれの文字列の集合を「ブロック」という。例えば、図３（Ａ）に示す例では、文字列「ＢＩＧ」が配列されたブロック８１、文字列「Ｗｉｄｔｈ」が配列されたブロック８２、及び、文字列「１ＰＤｏｗｎ」が配列されたブロック８３が、所定領域８に配置されている。ブロック８１は、所定領域８の左半分の部分に配置される。ブロック８２は、所定領域８の右半分且つ上半分の部分に配置される。ブロック８３は、所定領域８の右半分且つ下半分の部分に配置される。なお、所定領域８の大きさ、各文字列、各文字列に含まれる文字の大きさ（以下、「文字サイズ」という。）、及び、各文字列の配置（以下、「ブロック８１〜８３の配置」という。）は、キーボード３を介した入力操作によって設定可能である。
【００１６】
例えばユーザは、所定領域８の大きさを指定し、次いで、所定領域８に含める各文字列「ＢＩＧ」「Ｗｉｄｔｈ」「１ＰＤｏｗｎ」を、キーボード３を介して印刷装置１に入力する。このときユーザは、改行ボタンの押下により各文字列を改行で区切ることで、それぞれをブロック単位で区別することができる。次いでユーザは、後述する３つの調整方法「幅調整」「ビッグ文字」「フォントサイズ」のそれぞれを設定することによって、文字列毎に文字サイズを入力する。更にユーザは、ブロック８１〜８３の配置を入力する。ユーザは更に、レイアウト印刷を実行する指示を入力する。この場合、印刷装置１のＣＰＵ７１は、駆動回路２７を駆動してテープ送りモータ２７Ａを回転させ、テープ及びインクリボンを搬送する。同時に、ＣＰＵ７１は、駆動回路２６を駆動してサーマルヘッド２６Ａを加熱する。サーマルヘッド２６Ａの加熱により、インクリボンのインクはテープに転写される。これによって、所定領域８に含まれる文字列「ＢＩＧ」「Ｗｉｄｔｈ」「１ＰＤｏｗｎ」は、テープのうち指定された位置に印刷される。
【００１７】
＜調整情報７５Ａ、設定サイズ情報７５Ｂ＞
文字サイズは、フラッシュメモリ７５に記憶された調整情報７５Ａ及び設定サイズ情報７５Ｂ（図３（Ｂ）等参照、後述）に基づいて、ブロック毎に決定される。なお、詳細説明は省略するが、所定領域８の大きさ、及び、ブロック８１〜８３の配置を示す情報も、併せてフラッシュメモリ７５に記憶される。ＣＰＵ７１は、これらの情報を参照することによって、レイアウト印刷機能を実行する。
【００１８】
図３（Ｂ）に示すように、調整情報７５Ａは、文字サイズを調整する方法として、３つの調整方法（「幅調整」、「ビッグ文字」、及び「フォントサイズ」）を規定する。又、各調整方法には、調整可能な複数の段階的な文字サイズを示す複数のサイズ情報が対応付けられている。文字サイズは、調整方法毎に複数のサイズ情報の何れかが選択されることによって、ブロック８１〜８３毎に特定される。又、設定サイズ情報は、各調整方法に対応する複数のサイズ情報のうち、文字サイズを特定するために選択されたサイズ情報を示す。設定サイズ情報は、後述する文字サイズの調整処理が実行されていない初期状態において、ユーザによる文字サイズの入力操作に応じて決定される。図３（Ｂ）において、設定サイズ情報７５Ｂは、左向きの矢印により示され、矢印の先に表記されたサイズ情報に対応する。以下、調整方法と設定サイズ情報との関係を、「調整方法／設定サイズ情報」のように表記する。
【００１９】
「フォントサイズ」は、文字のフォントサイズを調整することによって文字サイズを調整する方法である。「フォントサイズ」には、複数のポイント（ｐｔ）（「６４ｐｔ」「５６ｐｔ」「５０ｐｔ」「４５ｐｔ」・・・「８ｐｔ」「６ｐｔ」）が、複数のサイズ情報として対応付けられている。なお、複数のサイズ情報は、任意のポイント（８ｐｔ、６ｐｔ、５ｐｔ・・・）ずつ段階的に変化しており、１ポイントずつ段階的に変化していない。
【００２０】
図３（Ｂ）に示す例では、「フォントサイズ」に対応するブロック８１〜８３のそれぞれの設定サイズ情報として、「６４ｐｔ」（「ＢＩＧ」）、「５０ｐｔ」（「Ｗｉｄｔｈ」）、「５０ｐｔ」（「１ＰＤｏｗｎ」）が対応付けられている。このため、ブロック８１の文字列「ＢＩＧ」は、「フォントサイズ／６４ｐｔ」の文字サイズで示される。ブロック８２の文字列「Ｗｉｄｔｈ」は、「フォントサイズ／５０ｐｔ」の文字サイズで示される。ブロック８２の文字列「１ＰＤｏｗｎ」は、「フォントサイズ／５０ｐｔ」の文字サイズで示される。
【００２１】
又、例えば図４（Ａ）に示すように、「フォントサイズ／６４ｐｔ」に基づいて文字サイズが調整された文字列「ＡＢＣＤＥＦ」において、「６４ｐｔ」から１段階小さい文字サイズのサイズ情報（以下、「１段階小さい文字サイズ情報」と言い換える。）「５６ｐｔ」に設定サイズ情報が変更された場合、文字サイズは、幅方向及び高さ方向にそれぞれ、１２．５％ずつ小さくなる。この場合の縮小率は、幅方向及び高さ方向にそれぞれ１００（％）−１２．５（％）＝８７．５（％）となる。この場合、変更前のブロック８４Ａに対する変更後のブロック８４Ｂの縮小率も、幅方向及び高さ方向のそれぞれにおいて８７．５％となる。各ブロックのサイズは、幅方向及び高さ方向の何れも小さくなる。以下、ブロックのサイズを、「ブロックサイズ」という。ブロックサイズは、文字列を囲む最小の矩形枠の大きさに対応する。
【００２２】
図３（Ｂ）に示すように、「幅調整」は、文字の幅を調整することによって文字サイズを調整する方法である。「幅調整」には、複数の倍率「×２」「×３／２」「×１」「×２／３」「×１／２」が、複数のサイズ情報として対応付けられている。文字サイズは、「フォントサイズ」に基づいて文字サイズが特定される文字の幅方向の長さに、「幅調整」の複数のサイズ情報の何れかを乗算することによって算出される。複数のサイズ情報は、「×２」から「×１／２」まで、１／３（３３．３％）ずつ段階的に変化する。
【００２３】
図３（Ｂ）に示す例では、「幅調整」に対応するブロック８１〜８３のそれぞれの設定サイズ情報として、「×１／２」（「ＢＩＧ」）、「×１」（「Ｗｉｄｔｈ」）、「×１／２」（「１ＰＤｏｗｎ」）が対応付けられている。このため、ブロック８１の文字列「ＢＩＧ」は、「幅調整／×１／２」の文字サイズで示される。ブロック８２の文字列「Ｗｉｄｔｈ」は、「幅調整／×１」の文字サイズで示される。ブロック８２の文字列「１ＰＤｏｗｎ」は、「幅調整／×１／２」の文字サイズで示される。このため、文字列「Ｗｉｄｔｈ」の幅方向の長さは、同じフォントサイズの文字列「１ＰＤｏｗｎ」よりも長くなっている。
【００２４】
又、例えば図４（Ｂ）に示すように、「幅調整／×２／３」に基づいて文字サイズが調整された文字列「ＡＢＣＤＥ」において、「×２／３」から１段階小さい「×１／２」に設定サイズ情報が変更された場合、文字サイズは、幅方向に３３％小さくなる。この場合の縮小率は、幅方向に１００（％）−３３（％）＝６６．７（％）となる。なお、文字サイズは高さ方向に縮小しない。この場合、変更前のブロック８５Ａに対する変更後のブロック８５Ｂの縮小率は、幅方向において６６．７％となる。ブロックサイズは、幅方向において小さくなり、高さ方向において変化しない。
【００２５】
図３（Ｂ）に示すように、「ビッグ文字」は、対象とする文字列が、ベースラインよりも上側に全体が配置される文字（以下、「ビッグ対象文字」という。）のみによって構成される場合、ベースラインを下げて文字サイズを大きくする調整方法である。ベースラインとは、文字の上下方向の位置を定義するための基準線である。つまり、「ビッグ文字」は、ベースラインよりも下側の範囲まで文字が占有するように、文字の幅及び高さを調整する方法である。「ビッグ文字」が適用されることによって、文字サイズは、幅方向及び高さ方向にそれぞれ２０％ずつ大きくなる。
【００２６】
具体的には、例えば大文字「ＡＢＣＤＥＦＧＨＩＫＬＭＮＯＰＲＳＴＵＶＷＸＹＺ」及び小文字「ａｂｃｄｅｆｈｉｋｌｍｎｏｒｓｔｕｖｗｘｚ」は、ベースラインよりも上側に全体が配置される文字であるので、ビッグ対象文字に対応する。一方、大文字「ＪＱ」及び小文字「ｇｊｐｑｙ」は、ベースラインよりも下側に一部が配置される文字であるので、ビッグ対象文字から除外される。
【００２７】
「ビッグ文字」には、「設定ＯＮ」「設定ＯＦＦ」が２つのサイズ情報として対応付けられている。例えば、ビッグ対象文字のみからなる文字列の文字サイズが、「ビッグ文字」の「設定ＯＮ」に基づいて調整された場合、「設定ＯＦＦ」に基づいて調整された場合と比べて、幅方向及び高さ方向にそれぞれ２０％ずつ文字サイズが大きくなる。
【００２８】
図３（Ｂ）に示す例では、「ビッグ文字」に対応するブロック８１〜８３のそれぞれの設定サイズ情報として、「設定ＯＮ」（「ＢＩＧ」）、「設定ＯＦＦ」（「Ｗｉｄｔｈ」）、「設定ＯＦＦ」（「１ＰＤｏｗｎ」）が対応付けられている。このため、文字列「ＢＩＧ」の文字サイズは、同一フォントサイズ「６４ｐｔ」の文字列と比べて、幅方向及び高さ方向にそれぞれ２０％ずつ大きくなっている。
【００２９】
又、例えば図４（Ｃ）に示すように、「ビッグ文字／設定ＯＮ」に基づいて文字サイズが調整された文字列「ＡＢＣＤＥ」において、「設定ＯＮ」から１段階小さい「設定ＯＦＦ」に設定サイズ情報が変更された場合、文字サイズは、幅方向及び高さ方向にそれぞれ、２０％ずつ小さくなる。この場合の縮小率は、幅方向及び高さ方向にそれぞれ１００（％）−２０（％）＝８０（％）となる。この場合、変更前のブロック８６Ａに対する変更後のブロック８６Ｂの縮小率も、幅方向及び高さ方向のそれぞれにおいて８０％となる。つまり、ブロックサイズは、幅方向及び高さ方向の何れも小さくなる。
【００３０】
調整情報７５Ａによって規定される３つの調整方法「幅調整」「ビッグ文字」「フォントサイズ」には、優先度が予め設定される。具体的には、「幅調整」の方が「ビッグ文字」よりも優先度が高く、且つ「ビッグ文字」の方が「フォントサイズ」よりも優先度が高く設定される。なお、設定された優先度の利用方法については後述する。
【００３１】
＜所定領域８を変更した場合における文字サイズの縮小方法（従来の方法）＞
一旦設定された所定領域８を幅方向に縮小する操作がユーザによって行われた場合を例示する。この場合、印刷装置１は、縮小後の所定領域８にブロック８１〜８３が収まるように、ブロック８１〜８３に含まれる文字列の文字サイズを縮小してブロックサイズを幅方向に縮小する必要がある。以下、このような場合における従来の文字サイズの縮小方法について、図５を参照して説明する。
【００３２】
図５（Ａ）に示すように、所定領域８Ａから所定領域８Ｂに縮小する操作が行われた場合、ブロック８１〜８３は所定領域８Ｂに収まらず、一部が幅方向にはみ出る。この場合、調整情報７５Ａ及び設定サイズ情報７５Ｂに基づき、次のようにして文字列が縮小される。
【００３３】
図５（Ｃ）に示すように、ブロック８１の文字列「ＢＩＧ」の場合、はじめに、優先度の最も高い調整方法「幅調整」が選択され、設定サイズ情報「×１／２」が特定される。ここで、「×１／２」は、「幅調整」に対応する複数のサイズ情報のうち最も小さい文字サイズのサイズ情報に対応する。この場合、次に優先度の高い調整方法「ビッグ文字」が選択され、設定サイズ情報「設定ＯＮ」が特定される。ここで、「ビッグ文字」には、設定サイズ情報「設定ＯＮ」よりも１段階小さいサイズ情報である「設定ＯＦＦ」が対応付けられている。このため、ブロック８１の文字列「ＢＩＧ」において、「ビッグ文字」が「設定ＯＦＦ」となるように文字サイズが調整される。この場合、文字列「ＢＩＧ」の文字サイズは、幅方向及び高さ方向においてそれぞれ、縮小率８０％となるように縮小される。又、「ビッグ文字」の設定サイズ情報は、「設定ＯＮ」から「設定ＯＦＦ」に変更される。
【００３４】
ブロック８２の文字列「Ｗｉｄｔｈ」の場合、はじめに、優先度の最も高い調整方法「幅調整」が選択され、設定サイズ情報「×１」が特定される。ここで、「幅調整」には、設定サイズ情報「×１」よりも１段階小さいサイズ情報である「×２／３」が対応付けられている。このため、ブロック８２の文字列「Ｗｉｄｔｈ」において、「幅調整」が「×２／３」となるように文字サイズが調整される。この場合、文字列「Ｗｉｄｔｈ」の文字サイズは、幅方向において、縮小率６６．７％となるように縮小される。なお、文字列「Ｗｉｄｔｈ」の文字サイズは、高さ方向において縮小されない。又、「幅調整」の設定サイズ情報は、「×１」から「×２／３」に変更される。
【００３５】
ブロック８３の文字列「１ＰＤｏｗｎ」の場合、はじめに、優先度の最も高い調整方法「幅調整」が選択され、設定サイズ情報「×１／２」が特定される。ここで、設定サイズ情報「×１／２」は、「幅調整」に対応する複数のサイズ情報のうち、最も小さい文字サイズのサイズ情報に対応する。この場合、次に優先度の高い調整方法「ビッグ文字」が選択され、設定サイズ情報「設定ＯＦＦ」が特定される。ここで、設定サイズ情報「設定ＯＦＦ」は、「ビッグ文字」に対応する複数のサイズ情報のうち、最も小さい文字サイズのサイズ情報に対応する。この場合、次に優先度の高い調整方法「フォントサイズ」が選択され、設定サイズ情報「５０ｐｔ」が特定される。ここで、「フォントサイズ」には、設定サイズ情報「５０ｐｔ」よりも１段階小さいサイズ情報である「４５ｐｔ」が対応付けられている。このため、ブロック８３の文字列「１ＰＤｏｗｎ」において、「フォントサイズ」が「４５ｐｔ」となるように文字サイズが調整される。この場合、文字列「１ＰＤｏｗｎ」の文字サイズは、幅方向及び高さ方向においてそれぞれ、縮小率９０％となるように縮小される。又、「フォントサイズ」の設定サイズ情報は、「５０ｐｔ」から「４５ｐｔ」に変更される。
【００３６】
図５（Ｂ）は、文字列「ＢＩＧ」「Ｗｉｄｔｈ」「１ＰＤｏｗｎ」がそれぞれ上記のように縮小された場合における、ブロック８１〜８３の配置を示す。例えば、ブロック８２のブロックサイズの幅方向の変化量（縮小率：６６．７％）の方が、ブロック８３のブロックサイズの幅方向の変化量（縮小率：９０％）よりも小さい。このため、ブロック８２、８３の幅方向の端部の位置は大きく相違する。このように、各文字列の縮小率の相違に伴ってブロック８１〜８３の変化量が相違することになるので、所定領域８Ｂに配置されたブロック８１〜８３の幅方向のバランスが変化する。このため、従来の方法では、縮小された所定領域８に収まるように各文字列が縮小された場合、ブロック８１〜８３は、ユーザの意図と異なるレイアウトで所定領域８Ｂに配置される可能性がある。
【００３７】
＜所定領域８を変更した場合文字サイズの縮小方法（提案方法）＞
一方、本実施形態において、印刷装置１は、所定領域８Ｂに配置されたブロック８１〜８３のバランスを維持しつつ、縮小後の所定領域８Ｂにブロック８１〜８３が収まるように、調整情報７５Ａ及び設定サイズ情報７５Ｂに基づいて次のように文字サイズを縮小する。
【００３８】
はじめに、印刷装置１のＣＰＵ７１は、ブロック８１〜８３のそれぞれについて、調整可能な調整方法のうち優先度の最も高い調整方法の設定サイズ情報から１段階小さいサイズ情報に変更した場合の文字サイズの幅方向の縮小率を算出する。例えば、ブロック８２の文字列「Ｗｉｄｔｈ」においては、優先度の最も高い調整方法「幅調整」についての設定サイズ情報「×１」の文字サイズが、１段階小さいサイズ情報「×２／３」の文字サイズに縮小された場合の幅方向の縮小率「６６．７％」が算出される。又、例えば、ブロック８１の文字列「ＢＩＧ」においては、優先度の最も高い調整方法「幅調整」について調整不可能である。このため、次に優先度の高い調整方法「ビッグ文字」についての設定サイズ情報「設定ＯＮ」の文字サイズが、１段階小さいサイズ情報「設定ＯＦＦ」の文字サイズに縮小された場合の幅方向の縮小率「８０％」が算出される。又、例えば、ブロック８３の文字列「１ＰＤｗｏｎ」においては、優先度の高い調整方法「幅調整」「ビッグ文字」が何れも調整不可能である。このため、次に優先度の高い調整方法「フォントサイズ」についての設定サイズ情報「５０ｐｔ」の文字サイズが、１段階小さいサイズ情報「４５ｐｔ」の文字サイズに縮小された場合の幅方向の縮小率「９０％」が算出される。
【００３９】
次に、ＣＰＵ７１は、上記のようにしてブロック８１〜８３毎に算出された幅方向の縮小率のうち最も小さい縮小率を特定する。以下、特定される縮小率を、「基準縮小率」という。基準縮小率で縮小される調整方法を、「基準調整方法」という。上記の場合、ブロック８２の文字列「Ｗｉｄｔｈ」に対応する縮小率「６６．７％」が、基準縮小率として特定される。調整方法「幅調整」が、基準調整方法に対応する。
【００４０】
次に、ＣＰＵ７１は、ブロック８１〜８３のそれぞれの文字列について、特定された基準縮小率６６．７％に近似する縮小率となるように、文字サイズを調整する。ここで、基準縮小率６６．７％が特定されたブロック８２の文字列「Ｗｉｄｔｈ」については、基準調整方法である「幅調整」についての設定サイズ情報「×１」よりも１段階小さいサイズ情報「×２／３」の文字サイズとなるように縮小される。この場合、文字列「Ｗｉｄｔｈ」の文字サイズの縮小率は、基準縮小率と同じ６６．７％になる。
【００４１】
一方、例えばＣＰＵ７１は、ブロック８１の文字列「ＢＩＧ」について、調整可能な調整方法のうち最も優先度が高い調整方法である「ビッグ文字」の設定サイズ情報「設定ＯＮ」を「設定ＯＦＦ」に変更し、文字サイズを縮小する。この場合、文字サイズの幅方向の縮小率は、８０％となる。更にＣＰＵ７１は、「ビッグ文字」の調整方法によって文字列「ＢＩＧ」の文字サイズの縮小を試みる。しかし、「設定ＯＦＦ」は、「ビッグ文字」に対応する最も小さいサイズ情報であるため、更に「ビッグ文字」によって文字サイズを縮小できない。このため、ＣＰＵ７１は、「ビッグ文字」の次に優先度が高い調整方法「フォントサイズ」の設定サイズ情報「６４ｐｔ」から、文字サイズが１２．５％縮小されるように、文字列「ＢＩＧ」の文字サイズを変更する。
【００４２】
なお、「フォントサイズ」に対応する複数のサイズ情報のうち、設定サイズ情報「６４ｐｔ」よりも１段階小さいサイズ情報は「５６ｐｔ」であり、「フォントサイズ」を「６４ｐｔ」から「５６ｐｔ」に変更した場合、文字サイズは１２．５％縮小される。このため、ＣＰＵ７１は、「フォントサイズ」について、設定サイズ情報「６４ｐｔ」を「５６ｐｔ」に変更することによって、文字列「ＢＩＧ」の文字サイズを縮小する。つまり、文字列「ＢＩＧ」は、「ビッグ文字」の調整方法によって、設定サイズ情報「設定ＯＮ」から１段階小さいサイズ情報「設定ＯＦＦ」の文字サイズに変更された後、更に、「フォントサイズ」の調整方法によって、所定割合（１２．５％）分更に縮小される。この場合の文字サイズの縮小率は、合計で、幅方向について６７．５％となり、基準縮小率６６．７％に近似する。
【００４３】
又、例えばＣＰＵ７１は、ブロック８３の文字列「１ＰＤｏｗｎ」について、調整可能な調整方法のうち最も優先度が高い調整方法「フォントサイズ」の設定サイズ情報「５０ｐｔ」を「４５ｐｔ」に変更し、文字サイズを縮小する。この場合、文字の幅方向の縮小率は９０％となる。更にＣＰＵ７１は、調整方法「フォントサイズ」の設定サイズ情報「５０ｐｔ」を、１段階小さいサイズ情報に変更し、文字サイズを縮小する。この場合、文字サイズの幅方向の縮小率は、合計で７９％となる。ＣＰＵ７１は、幅方向の縮小率が基準縮小率６６．７％に近似するまで、「フォントサイズ」の設定サイズ情報を１段階ずつ小さくする。つまり、文字列「１ＰＤｏｗｎ」は、「フォントサイズ」の調整方法によって２段階以上小さいサイズ情報の文字サイズに縮小される。例えばＣＰＵ７１は、縮小率が合計で、幅方向について６６％となった場合、基準縮小率６６．７％に近似することとなったので、上記の処理を終了する。
【００４４】
以上のように、ＣＰＵ７１は、各ブロックの文字列の文字サイズが基準縮小率に近似する縮小率で縮小されるように、文字サイズを調整する。これによって、縮小後の所定領域８Ｂにブロック８１〜８３を収めることが可能となると同時に、所定領域８Ｂに配置されたブロック８１〜８３のバランスは維持される。
【００４５】
＜メイン処理＞
図７〜図１０を参照し、印刷装置１のＣＰＵ７１によって実行されるメイン処理について説明する。メイン処理は、所定領域８Ａ（図５、図６参照）を所定領域８Ｂ（図５、図６参照）に縮小する操作がキーボード３を介して実行された場合、フラッシュメモリ７５に記憶されたプログラムをＣＰＵ７１が実行することによって開始される。以下では、図５、図６に示す所定領域８Ａ、８Ｂ、及びブロック８１〜８３を想定して具体的に説明する。又、以下では、特段説明のない限り、「縮小率」は、文字サイズの幅方向の縮小率を示す。
【００４６】
図７に示すように、ＣＰＵ７１は、縮小前の所定領域８Ａに含まれるブロック８１〜８３のそれぞれのブロックサイズを特定する（Ｓ１１）。なお、ブロック８１〜８３のブロックサイズは、それぞれに含まれる文字列の文字サイズを、調整情報７５Ａ及び設定サイズ情報７５Ｂに基づいて特定することによって特定される。以下、ブロック８１、８２、８３のそれぞれに含まれる文字列を、「第１文字列」「第２文字列」「第３文字列」という。
【００４７】
次に、ＣＰＵ７１は、特定されたブロック８１〜８３のブロックサイズ、及び、ブロック８１〜８３の配置に基づき、縮小後の所定領域８Ｂにブロック８１〜８３が配置可能か判定する（Ｓ１３）。ＣＰＵ７１は、所定領域８Ｂにブロック８１〜８３が配置可能と判定した場合（Ｓ１３：ＹＥＳ）、メイン処理を終了させる。一方、ＣＰＵ７１は、所定領域８Ｂにブロック８１〜８３が配置できないと判定された場合（Ｓ１３：ＮＯ）、ブロック８１〜８３に含まれる文字列の文字サイズを調整するために、調整処理（図８参照）を実行する（Ｓ１５）。
【００４８】
図８を参照し、調整処理について説明する。ＣＰＵ７１は、ＲＡＭ７４に記憶された変数ｎに１を設定して初期化する（Ｓ３１）。ｎは、ブロック８１〜８３のそれぞれの文字列（第１文字列〜第３文字列）を順番に選択するために使用される。例えばＣＰＵ７１は、ｎに１が設定された場合、第１文字列に基づいて基準縮小率及び基準調整方法を判定するために、判定処理（図９参照）を実行する（Ｓ３３）。
【００４９】
図９を参照し、判定処理について説明する。ＣＰＵ７１は、調整方法「幅調整」によって第ｎ文字列の文字サイズの調整が可能か否かを、設定サイズ情報よりも１段階小さいサイズ情報に変更可能か否かによって判定する（Ｓ５１）。ＣＰＵ７１は、「幅調整」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報でない場合、「幅調整」による文字サイズの調整が可能と判定する（Ｓ５１：ＹＥＳ）。この場合、ＣＰＵ７１は、ＲＡＭ７４に記憶した第ｎ調整方法に「幅調整」を設定する。又、ＣＰＵ７１は、ＲＡＭ７４に記憶した第ｎ縮小率に、６６．７％（図４（Ｂ）参照）を設定する（Ｓ５３）。なお、第ｎ調整方法は、第ｎ文字列に対応する調整情報７５Ａのうち、調整可能且つ最も優先度が高い調整方法を示す。第ｎ縮小率は、第ｎ文字列の文字サイズが第ｎ調整方法によって設定サイズ情報よりも１段階小さいサイズ情報に変更された場合の縮小率を示す。ＣＰＵ７１は、処理をＳ６５に進める。
【００５０】
一方、ＣＰＵ７１は、「幅調整」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報である場合、「幅調整」による文字サイズの調整が不可能と判定する（Ｓ５１：ＮＯ）。この場合、ＣＰＵ７１は、「幅調整」の次に優先度の高い「ビッグ文字」を対象として同様の処理を行なう為、処理をＳ５５に進める。
【００５１】
ＣＰＵ７１は、調整方法「ビッグ文字」によって第ｎ文字列の文字サイズの調整が可能か否かを、設定サイズ情報から１段階小さい文字サイズのサイズ情報に変更可能か否かによって判定する（Ｓ５５）。ＣＰＵ７１は、「ビッグ文字」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報でない場合、即ち「設定ＯＮ」である場合、「ビッグ文字」による文字サイズの調整が可能と判定する（Ｓ５５：ＹＥＳ）。この場合、ＣＰＵ７１は、第ｎ調整方法に「ビッグ文字」を設定し、第ｎ縮小率に８０％（図４（Ｃ）参照）を設定する（Ｓ５７）。ＣＰＵ７１は、処理をＳ６５に進める。一方、ＣＰＵ７１は、「ビッグ文字」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報である場合、即ち「設定ＯＦＦ」である場合、「ビッグ文字」による文字サイズの調整が不可能と判定する（Ｓ５５：ＮＯ）。この場合、ＣＰＵ７１は、「ビッグ文字」の次に優先度の高い「フォントサイズ」を対象として同様の処理を行なう為、処理をＳ５９に進める。
【００５２】
ＣＰＵ７１は、調整方法「フォントサイズ」によって第ｎ文字列の文字サイズの調整が可能か否かを、設定サイズ情報から１段階小さい文字サイズのサイズ情報に変更可能か否かによって判定する（Ｓ５９）。ＣＰＵ７１は、「フォントサイズ」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報でない場合、「フォントサイズ」による文字サイズの調整が可能と判定する（Ｓ５９：ＹＥＳ）。この場合、ＣＰＵ７１は、第ｎ調整方法に、「フォントサイズ」を設定する。ＣＰＵ７１は、「フォントサイズ」の設定サイズ情報を１段階小さいサイズ情報に変更したときの文字サイズの縮小率を、第ｎ縮小率に設定する（Ｓ６１）。ＣＰＵ７１は、処理をＳ６５に進める。一方、ＣＰＵ７１は、「フォントサイズ」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報である場合、「フォントサイズ」による文字サイズの調整が不可能と判定する（Ｓ５９：ＮＯ）。この場合、調整情報「幅調整」「ビッグ文字」「フォントサイズ」の何れによっても文字サイズを調整できないことになる。ＣＰＵ７１は、第ｎ調整方法に「調整不可」を設定する（Ｓ６３）。ＣＰＵ７１は、処理をＳ６５に進める。
【００５３】
ＣＰＵ７１は、第１縮小率〜第ｎ縮小率の中で第ｎ縮小率が最も小さいか判定する（Ｓ６５）。ＣＰＵ７１は、第ｎ縮小率が最も小さいと判定した場合（Ｓ６５：ＹＥＳ）、基準調整方法として第ｎ調整方法を設定する（Ｓ６７）。ＣＰＵ７１は、基準縮小率として第ｎ縮小率を設定する（Ｓ６９）。ＣＰＵ７１は、判定処理を終了させ、処理を調整処理（図８参照）に戻す。一方、ＣＰＵ７１は、第１縮小率〜第ｎ−１縮小率の何れかの方が第ｎ縮小率よりも小さいか、又は、第ｎ調整方法に「調整不可」が設定されていると判定した場合（Ｓ６５：ＮＯ）、基準調整方法及び基準縮小率に対する設定を行わずに判定処理を終了させ、処理を調整処理（図８参照）に戻す。
【００５４】
図８に示すように、ＣＰＵ７１は、判定処理（Ｓ３３）の終了後、所定領域８Ｂに含まれる文字列（第１文字列〜第３文字列）の総数はｎ以下か判定する（Ｓ３５）。ＣＰＵ７１は、文字列の総数がｎよりも大きいと判定された場合（Ｓ３５：ＮＯ）。処理をＳ３９に進める。ＣＰＵ７１は、ｎに１を加算して更新する（Ｓ３９）。ＣＰＵ７１は、処理をＳ３３に戻す。ＣＰＵ７１は、更新されたｎに対応する第ｎ文字列を対象として、判定処理（Ｓ３３）を繰り返す。ＣＰＵ７１は、文字列の総数がｎ以下と判定した場合（Ｓ３５：ＹＥＳ）、処理をＳ３７に進める。以上までで、第１文字列〜第３文字列の全てを対象として処理が実行され、基準調整方法及び基準縮小率が特定されたことになる。
【００５５】
ＣＰＵ７１は、ｎに１を設定して初期化する（Ｓ３７）。ＣＰＵ７１は、判定処理によって特定された基準調整方法及び基準縮小率に基づいて、第１文字列〜第３文字列のそれぞれの文字サイズを変更するために、変更処理（図１０参照）を実行する（Ｓ４１）。
【００５６】
図１０を参照し、変更処理について説明する。ＣＰＵ７１は、第ｎ文字列に対応する第ｎ調整方法に「調整不可」が設定されているか判定する（Ｓ８１）。なお、第ｎ調整方法に「調整不可」が設定されている場合、第ｎ文字列の文字サイズを調整できない。このため、ＣＰＵ７１は、第ｎ調整方法に「調整不可」が設定されていると判定された場合（Ｓ８１：ＹＥＳ）、変更処理を終了させ、処理を調整処理（図８参照）に戻す。一方、ＣＰＵ７１は、第ｎ調整方法に「調整不可」が設定されていないと判定した場合（Ｓ８１：ＮＯ）、処理をＳ８３に進める。
【００５７】
ＣＰＵ７１は、基準調整方法に「幅調整」が設定されているか判定する（Ｓ８３）。なお、基準調整方法に「幅調整」が設定されている場合、基準縮小率には「６６．７％」が設定されている（Ｓ５３（図９参照））。ＣＰＵ７１は、基準調整方法に「幅調整」が設定されていると判定した場合（Ｓ８３：ＹＥＳ）、次に、第ｎ調整方法に「幅調整」が設定されているか判定する（Ｓ９５）。ＣＰＵ７１は、第ｎ調整方法に「幅調整」が設定されていると判定した場合（Ｓ９５：ＹＥＳ）、「幅調整」の調整方法について、複数のサイズ情報のうち設定サイズ情報よりも１段階小さいサイズ情報の文字サイズとなるように、第ｎ文字列の文字サイズを縮小する（Ｓ９７）。なお、「幅調整」の調整方法について１段階小さいサイズ情報に変更したときの文字サイズの縮小率は、常に「６６．７％」となる（図４（Ｂ）参照）。このため、第ｎ文字列の文字サイズの縮小率は、基準縮小率と一致する。ＣＰＵ７１は変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００５８】
ＣＰＵ７１は、第ｎ調整方法に「幅調整」が設定されていないと判定した場合（Ｓ９５：ＮＯ）、第ｎ調整方法に「ビッグ文字」が設定されているか判定する（Ｓ９９）。ＣＰＵ７１は、第ｎ調整方法に「ビッグ文字」が設定されていると判定した場合（Ｓ９９：ＹＥＳ）、「ビッグ文字」の調整方法について、設定サイズ情報「設定ＯＮ」を１段階小さい「設定ＯＦＦ」に変更した場合の文字サイズとなるように、第ｎ文字列の文字サイズを縮小する（Ｓ１０１）。なお、「ビッグ文字」の調整方法について１段階小さいサイズ情報（「設定ＯＮ」→「設定ＯＦＦ」）に変更したときの文字サイズの縮小率は、常に「８０％」となる（図４（Ｃ）参照）。
【００５９】
次いで、ＣＰＵ７１は、優先度が「ビッグ文字」の次に高い「フォントサイズ」の調整方法について、設定サイズ情報の文字サイズが１２．５％縮小されるサイズ情報を特定し、特定したサイズ情報の文字サイズとなるように、第ｎ文字列の文字サイズを更に縮小する（Ｓ１０３）。なお、「ビッグ文字」の調整方法よって、縮小率が「８０％」となるように第ｎ文字列の文字サイズが縮小されている（Ｓ１０１）。このため、この状態から、第ｎ文字列の文字サイズが１２．５％縮小されることになるので、文字サイズの縮小率は合計で６７．５％となり、基準縮小率（６６．７％）と近似する。ＣＰＵ７１は、変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００６０】
ＣＰＵ７１は、第ｎ調整方法に「ビッグ文字」が設定されていないと判定された場合（Ｓ９９：ＮＯ）、第ｎ調整方法には「フォントサイズ」が設定されていることになる。この場合、ＣＰＵ７１は、「フォントサイズ」の調整方法について、複数のサイズ情報のうち設定サイズ情報よりも小さいサイズ情報を１段階ずつ選択し、選択したサイズ情報に対応する文字サイズとなるように、第ｎ文字列の文字サイズを縮小する。ＣＰＵ７１は、以上の処理を、文字サイズの縮小率が基準縮小率（６６．７％）に近似するまで繰り返す（Ｓ１０５）。ＣＰＵ７１は、縮小率が基準縮小率に近似するまで第ｎ文字列の文字サイズが縮小された場合、変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００６１】
ＣＰＵ７１は、基準調整方法に「幅調整」が設定されていないと判定した場合（Ｓ８３：ＮＯ）、基準調整方法に「ビッグ文字」が設定されているか判定する（Ｓ８５）。なお、基準調整方法に「ビッグ文字」が設定されている場合、基準縮小率には「８０％」が設定されている（Ｓ５７（図９参照））。ＣＰＵ７１は、基準調整方法に「ビッグ文字」が設定されていると判定された場合（Ｓ８５：ＹＥＳ）、次に、第ｎ調整方法に「ビッグ文字」が設定されているか判定する（Ｓ８９）。ＣＰＵ７１は、第ｎ調整方法に「ビッグ文字」が設定されていると判定した場合（Ｓ８９：ＹＥＳ）、「ビッグ文字」の調整方法について、設定サイズ情報「設定ＯＮ」を１段階小さい「設定ＯＦＦ」に変更した場合の文字サイズとなるように、第ｎ文字列の文字サイズを縮小する（Ｓ９１）。なお、「ビッグ文字」の調整方法について１段階小さいサイズ情報に変更したときの文字サイズの縮小率は、常に「８０％」となる（図４（Ｃ）参照）。このため、第ｎ文字列の文字サイズの縮小率は、基準縮小率と一致する。ＣＰＵ７１は、変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００６２】
ＣＰＵ７１は、第ｎ調整方法に「ビッグ文字」が設定されていないと判定された場合（Ｓ８９：ＮＯ）、第ｎ調整方法には「フォントサイズ」が設定されていることになる。この場合、ＣＰＵ７１は、「フォントサイズ」の調整方法について、複数のサイズ情報のうち設定サイズ情報よりも小さいサイズ情報を１段階ずつ選択し、選択したサイズ情報に対応する文字サイズとなるように、第ｎ文字列の文字サイズを縮小する。ＣＰＵ７１は、以上の処理を、文字サイズの縮小率が基準縮小率（８０％）に近似するまで繰り返す（Ｓ９３）。ＣＰＵ７１は、縮小率が基準縮小率に近似するまで第ｎ文字列の文字サイズが縮小された場合、変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００６３】
ＣＰＵ７１は、基準調整方法に「ビッグ文字」が設定されていないと判定した場合（Ｓ８５：ＮＯ）、基準調整方法には「フォントサイズ」が設定されていることになる。なお、基準調整方法に「フォントサイズ」が設定されている場合、基準縮小率には、任意の縮小率が設定されている（Ｓ６１（図９参照））。この場合、ＣＰＵ７１は、「フォントサイズ」の調整方法について、複数のサイズ情報のうち設定サイズ情報よりも小さいサイズ情報を１段階ずつ選択し、選択したサイズ情報に対応する文字サイズとなるように、第ｎ文字列の文字サイズを縮小する。ＣＰＵ７１は、以上の処理を、文字サイズの縮小率が基準縮小率に近似するまで繰り返す（Ｓ８７）。ＣＰＵ７１は、縮小率が基準縮小率に近似するまで第ｎ文字列の文字サイズが縮小された場合、変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００６４】
図８に示すように、ＣＰＵ７１は、変更処理（Ｓ４１）の終了後、所定領域８Ｂに含まれる文字列（第１文字列〜第３文字列）の総数はｎ以下か判定する（Ｓ４３）。ＣＰＵ７１は、文字列の総数がｎよりも大きいと判定された場合（Ｓ４３：ＮＯ）。処理をＳ４５に進める。ＣＰＵ７１は、ｎに１を加算して更新する（Ｓ４５）。ＣＰＵ７１は、処理をＳ４１に戻す。ＣＰＵ７１は、更新されたｎに対応する第ｎ文字列を対象として、変更処理（Ｓ４１）を繰り返す。ＣＰＵ７１は、文字列の総数がｎ以下と判定した場合（Ｓ４３：ＹＥＳ）、全ての文字列（第１文字列〜第３文字列）について文字サイズが縮小されたことになるので、調整処理を終了させ、処理をメイン処理（図７参照）に戻す。
【００６５】
図７に示すように、ＣＰＵ７１は、調整処理（Ｓ１５）の終了後、文字列の文字サイズの調整が調整処理によって実行されたか判定する（Ｓ１７）。ＣＰＵ７１は、文字サイズの調整が実行されていないと判定された場合（Ｓ１７：ＮＯ）、所定領域８Ｂにブロック８１〜８３を配置させることができないことを示すエラー情報を、ディスプレイ５に表示させる（Ｓ１９）。ＣＰＵ７１は、メイン処理を終了させる。
【００６６】
一方、ＣＰＵ７１は、文字サイズの調整が実行されたと判定された場合（Ｓ１７：ＹＥＳ）、処理をＳ１１に戻す。ＣＰＵ７１は、調整後の文字サイズとした場合のブロック８１〜８３のそれぞれのブロックサイズを特定する（Ｓ１１）。ＣＰＵ７１は、特定されたブロック８１〜８３のブロックサイズ、及び、ブロック８１〜８３の配置に基づき、所定領域８Ｂにブロック８１〜８３が配置可能かを再度判定する（Ｓ１３）。ＣＰＵ７１は、所定領域８Ｂにブロック８１〜８３が配置可能となったと判定した場合（Ｓ１３：ＹＥＳ）、メイン処理を終了させる。一方、ＣＰＵ７１は、未だ所定領域８Ｂにブロック８１〜８３が配置できないと判定された場合（Ｓ１３：ＮＯ）、所定領域８Ｂにブロック８１〜８３が配置可能となるまで、Ｓ１１、Ｓ１５、Ｓ１７の処理を繰り返す。
【００６７】
＜本実施形態の主たる作用、効果＞
印刷装置１は、ブロック８１〜８３全体を縮小するために、ブロック８１〜８３に含まれる文字列の文字サイズを変更する（図１０参照）。ここで、印刷装置１は、ブロック８１〜８３のそれぞれに含まれる文字列の文字サイズを、各ブロックに対応する調整情報７５Ａに基づき１段階小さい文字サイズに変更した場合の縮小率を、ブロック毎に特定する（Ｓ５１〜Ｓ６３）。編集装置は、特定された縮小率のうち最も小さい基準縮小率を更に特定し（Ｓ６９）、基準縮小率と近似するように、ブロック８１〜８３のそれぞれの文字サイズを変更する（図１０参照）。この場合、印刷装置１は、ブロック８１〜８３の文字サイズのバランスを維持しつつ、各ブロックのブロックサイズを縮小して全体を縮小できる。
【００６８】
印刷装置１は、例えば基準縮小率が６６．７％である場合、調整方法「ビッグ文字」の設定サイズ情報「設定ＯＮ」を「設定ＯＦＦ」に変更して文字サイズを縮小し（Ｓ１０１）、更に、「ビッグ文字」の次に優先度が高い調整方法「フォントサイズ」の設定サイズ情報から、文字サイズが１２．５％縮小されるように、文字列「ＢＩＧ」の文字サイズを変更する（Ｓ１０３）。この場合の縮小率は、合計で、幅方向について６７．５％となり、基準縮小率６６．７％に近似する。このように、印刷装置１は、調整方法「ＢＩＧ」について文字サイズを１段階小さくした場合に不足する縮小率を、調整方法「フォントサイズ」により所定割合分文字サイズを更に縮小することによって補間できる。従って、印刷装置１は、特定の調整方法について文字サイズを１段階小さくしつつ、ブロック８１〜８３のそれぞれの文字の縮小率を基準縮小率に精度良く近似させることができる。
【００６９】
印刷装置１は、調整方法「フォントサイズ」によって文字サイズを調整する場合、設定サイズ情報から２段階以上小さいサイズ情報の文字サイズに縮小することによって、縮小率を基準縮小率に近似させる。この場合、印刷装置１は、ブロック８１〜８３のそれぞれの文字の縮小率を、「フォントサイズ」のサイズ情報を多段階に調整することによって基準縮小率に精度良く近似させることができる。
【００７０】
印刷装置は、文字の幅を調整することによって文字サイズを調整する「幅調整」、文字が特定の範囲を占有するように、文字の幅及び高さを調整することによって文字サイズを調整する「ビッグサイズ」、及び、文字のフォントサイズを調整することによって文字サイズを調整する「フォントサイズ」の何れかによって、文字サイズを調整可能である。この場合、印刷装置１は、ブロック８１〜８３の文字サイズのバランスを維持しつつ、ブロック８１〜８３のサイズを様々な方法で縮小できる。
【００７１】
調整情報７５Ａによって規定される３つの調整方法「幅調整」「ビッグ文字」「フォントサイズ」には、優先度が予め設定される。具体的には、「幅調整」の方が「ビッグ文字」よりも優先度が高く、且つ「ビッグ文字」の方が「フォントサイズ」よりも優先度が高く設定される。この場合、印刷装置１は、「幅調整」、「ビッグ文字」、及び「フォントサイズ」のそれぞれに対応する複数のサイズ情報に基づき、優先度に応じて順番に１つずつサイズ情報を小さくすることによって、文字サイズを縮小できる。
【００７２】
印刷装置１は、ブロック８１〜８３のそれぞれのブロックサイズを、調整情報７５Ａ及び設定サイズ情報７５Ｂに基づいて特定する（Ｓ１１）。印刷装置１は、特定されたブロックサイズに基づき、所定領域８Ｂにブロック８１〜８３を配置可能か判定する（Ｓ１３）。印刷装置１は、ブロック８１〜８３を所定領域８Ｂに配置できないと判定された場合（Ｓ１３：ＮＯ）、調整処理（Ｓ１５）を実行し、ブロック８１〜８３に含まれる文字列の文字サイズを調整する。この場合、印刷装置１は、ブロック８１〜８３の文字サイズのバランスを維持しつつ、各ブロックのブロックサイズを縮小してブロック８１〜８３を所定領域８Ｂに配置させることができる。
【００７３】
調整方法「ビッグ文字」「フォントサイズ」では、対応する設定サイズ情報が１段階小さく変更されることによって文字サイズが縮小される場合、文字の幅方向と高さ方向との両方向において縮小される。この場合、印刷装置１は、ブロック８１〜８３について、幅方向だけでなく高さ方向のサイズのバランスも維持しつつ、ブロック８１〜８３のサイズを縮小して全体を縮小できる。
【００７４】
ブロック８１〜８３は、複数の文字を含む文字列が改行によって区切られることによって、互いに区別される。この場合、印刷装置１は、改行によって区切られた複数のブロックのバランスを維持しつつ、各ブロックのブロックサイズを縮小して全体を縮小できる。
【００７５】
＜変形例＞
本発明は上記実施形態に限定されず、種々の変更が可能である。上記のメイン処理は、印刷装置１のＣＰＵ７１により実行される場合に限定されない。例えばメイン処理は、印刷装置１に接続される外部端末２９ＡのＣＰＵによって実行されてもよい。この場合、印刷装置１は、外部端末２９Ａの記憶部に記憶されるプログラムを、外部端末２９Ａに接続された非図示のサーバから取得してもよい。
【００７６】
ブロック８１〜８３に含まれる文字の数は、複数に限定されず、１つでもよい。調整情報７５Ａによって規定される調整方法は、「幅調整」「ビッグ文字」「フォントサイズ」に限定されない。例えば、文字サイズの高さ方向のみが調整され、幅方向が調整されない方法が、調整情報７５Ａに更に規定されていてもよい。更に、別の調整方法が調整情報７５Ａに規定されていてもよいし、「幅調整」「ビッグ文字」「フォントサイズ」の何れかが、調整情報７５Ａの調整方法から除外されていてもよい。各調整方法に対応付けられている複数のサイズ情報は、上記実施形態に限定されないことは言うまでもない。例えば、「幅調整」に対応する複数のサイズ情報は、３／１０（３０％）ずつ段階的に変化してもよい。又、例えば「フォントサイズ」に対応する複数のサイズ情報は、１ｐｔずつ段階的に変化してもよい。
【００７７】
ＣＰＵ７１は、基準縮小率が６６．７％である場合において、調整方法「ビッグ文字」の設定サイズ情報「設定ＯＮ」を「設定ＯＦＦ」に変更して文字サイズを縮小し（Ｓ１０１）、更に、「ビッグ文字」の次に優先度が高い調整方法「フォントサイズ」の設定サイズ情報「６４ｐｔ」から、文字サイズが１２．５％縮小されるように、文字列「ＢＩＧ」の文字サイズを変更した（Ｓ１０３）。ここで、文字サイズが１２．５％縮小されるように、文字列「ＢＩＧ」の文字サイズを変更する方法は、例えば図６で示した具体例のように、調整情報７５Ａにおいて設定サイズ情報よりも小さいサイズ情報に対応する文字サイズに変更することによって実行されてもよい。又、例えば、文字サイズが１２．５％縮小されるようなフォントサイズを算出し、このフォントサイズとなるように文字サイズを変更してもよい。この場合のフォントサイズは、調整情報７５Ａの複数のサイズ情報の何れかでなくてもよい。
【００７８】
ＣＰＵ７１は、調整方法「フォントサイズ」によって文字サイズを調整する場合、設定サイズ情報から２段階以上小さいサイズ情報の文字サイズに縮小することによって、縮小率を基準縮小率に近似させた。これに対し、ＣＰＵ７１は、縮小率が基準縮小率となるようなフォントサイズを算出し、このフォントサイズとなるように文字サイズを変更してもよい。
【００７９】
「幅調整」「ビッグ文字」「フォントサイズ」に設定される優先度は、上記実施形態に限定されないことは言うまでもない。又、優先度は、ユーザの設定に応じて変更できるようにしてもよい。
【００８０】
ＣＰＵ７１は、ブロック８１〜８３を所定領域８Ｂに配置できないと判定された場合（Ｓ１３：ＮＯ）、調整処理（Ｓ１５）を実行し、ブロック８１〜８３に含まれる文字列の文字サイズを調整した。これに対し、例えばＣＰＵ７１は、ブロック８１〜８３全体を縮小させる操作が実行された場合、調整処理（Ｓ１５）を実行し、ブロック８１〜８３に含まれる文字列の文字サイズを調整してもよい。
【００８１】
上記実施形態では、所定領域８Ａが幅方向に縮小され、縮小後の所定領域８Ｂにブロック８１〜８３を収めるために処理が実行された。これに対し、所定領域８Ａは高さ方向に縮小されてもよい。この場合、ブロック８１〜８３が高さ方向において所定領域８Ｂに収まらない可能性がある。この場合、基準縮小率は、文字サイズの高さ方向の縮小率に基づいて特定されてもよい。印刷装置１は、ブロック８１〜８３の文字列の文字サイズについて、高さ方向の縮小率が基準縮小率に近似するように、各調整方法によって調整されてもよい。この場合、印刷装置１は、文字サイズを幅方向及び高さ方向において縮小できるので、ブロック８１〜８３が両方向において所定領域に収まるように、文字サイズを変更できる。
【００８２】
改行ボタンの押下により各文字列を改行で区切ることで、ブロック８１〜８３を区別した。これに対し、ＣＰＵ７１は、文字列間にカーソルが配置された状態において改ブロックを指示する入力操作を行うことによって、ブロック８１〜８３を区別してもよい。
【００８３】
＜その他＞
印刷装置１は、本発明の「編集装置」の一例である。調整情報７５Ａ及び設定サイズ情報７５Ｂを記憶したフラッシュメモリ７５は、本発明の「記憶部」の一例である。Ｓ１５の処理を行うＣＰＵ７１は、本発明の「調整手段」の一例である。Ｓ５３、Ｓ５７、Ｓ６１の処理を行うＣＰＵ７１は、本発明の「第１特定手段」の一例である。Ｓ６９の処理を行うＣＰＵ７１は、本発明の「第２特定手段」の一例である。Ｓ４１の処理を行うＣＰＵ７１は、本発明の「変更手段」の一例である。Ｓ１１の処理を行うＣＰＵ７１は、本発明の「特定手段」の一例である。Ｓ１３の処理を行うＣＰＵ７１は、本発明の「判定手段」の一例である。調整方法「幅調整」は、本発明の「第１方法」の一例である。調整方法「ビッグ文字」は、本発明の「第２方法」の一例である。調整方法「フォントサイズ」は、本発明の「第３方法」の一例である。Ｓ１５の処理は、本発明の「調整ステップ」の一例である。Ｓ５３、Ｓ５７、Ｓ６１の処理は、本発明の「第１特定ステップ」の一例である。Ｓ６９の処理は、本発明の「第２特定ステップ」の一例である。Ｓ４１の処理は、本発明の「変更ステップ」の一例である。
【符号の説明】
【００８４】
１        ：印刷装置
８、８Ａ、８Ｂ        ：所定領域
７１      ：ＣＰＵ
７５      ：フラッシュメモリ
７５Ａ    ：調整情報
７５Ｂ    ：設定サイズ情報
【図１】
2019091982.tif 000003
【図２】
2019091982.tif 000004
【図３】
2019091982.tif 000005
【図４】
2019091982.tif 000006
【図５】
2019091982.tif 000007
【図６】
2019091982.tif 000008
【図７】
2019091982.tif 000009
【図８】
2019091982.tif 000010
【図９】
2019091982.tif 000011
【図１０】
2019091982.tif 000012
【手続補正書】
【提出日】平成30年9月11日(2018.9.11)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は編集装置に関する。より詳細には、本発明は、文字のサイズを変更することにより編集を行う編集装置、編集方法、及び編集プログラムに関する。
【背景技術】
【０００２】
文字を編集する編集装置として、例えば、印刷対象の文字を編集する装置（印刷装置、ＰＣ等）、及び、表示部に表示する文字を編集する装置（表示装置等）が知られている。特許文献１は、ウェブコンテンツ配信サーバを開示する。ウェブコンテンツ配信サーバは、携帯情報端末からウェブコンテンツの閲覧要求を受けた場合、ウェブコンテンツに含まれる文字情報を、携帯情報端末の小画面に対応したサイズに制御して配信する。このとき、ウェブコンテンツ配信サーバは、文字情報に含まれる文字列を、文字の種類毎に区分し、それぞれの複雑度を算出する。ウェブコンテンツ配信サーバは、算出された複雑度に応じて、区分された文字列毎に文字変換倍率を更に算出する。ウェブコンテンツ配信サーバは、区分された文字列のサイズを、算出された文字変換倍率に基づいて変更する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２６７１５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記装置において、区分された文字列毎に文字変換倍率が異なる場合、サイズの異なる文字列が混在することになる。この場合、全体としてのバランスが悪くなり、見栄えが低下する可能性があるという問題点がある。
【０００５】
本発明の目的は、全体としてのバランスを維持しつつ、文字のサイズを変更することが可能な編集装置、編集方法、及び編集プログラムを提供することである。
【課題を解決するための手段】
【０００６】
本発明の第１態様に係る編集装置は、少なくとも１つの文字が配列されたブロックを複数まとめて縮小するために、複数のブロックのそれぞれに含まれる文字のサイズである文字サイズを調整する編集装置であって、前記文字サイズを前記ブロック毎に特定するための情報であって、前記文字サイズを調整する方法を示す複数の調整方法毎に、前記調整方法によって調整可能な複数の段階的な前記文字サイズを示す複数のサイズ情報を特定可能な調整情報と、前記調整情報により特定される前記複数のサイズ情報のうち調整前の前記文字サイズを示す前記サイズ情報であって、前記複数の調整方法毎に特定された設定サイズ情報とを、前記ブロック毎に記憶した記憶部と、前記記憶部に記憶された前記調整情報及び前記設定サイズ情報に基づき、前記複数のブロックをまとめて縮小するために前記複数のブロックのそれぞれの前記文字サイズを調整する調整手段とを備え、前記調整手段は、何れかの前記調整方法に対応する前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて１段階小さい前記文字サイズに変更した場合の縮小率を、前記複数のブロックのそれぞれについて特定する第１特定手段と、前記第１特定手段によって前記複数のブロック毎に特定された前記縮小率のうち最も小さい前記縮小率を、基準縮小率として特定する第２特定手段と、前記第２特定手段によって特定された前記基準縮小率と近似するように、前記複数のブロックのそれぞれの前記文字サイズを変更する変更手段とを備えたことを特徴とする。
【０００７】
編集装置は、複数のブロックをまとめて縮小するために、それぞれのブロックに含まれる文字の文字サイズを変更する。ここで編集装置は、複数のブロックのそれぞれに含まれる文字の文字サイズを、各ブロックに対応する調整情報に基づき１段階小さい文字サイズに変更した場合の縮小率を、ブロック毎に特定する。編集装置は、特定された縮小率のうち最も小さい基準縮小率と近似するように、複数のブロックのそれぞれの文字サイズを変更する。この場合、編集装置は、各ブロックの文字サイズのバランスを維持しつつ、各ブロックのサイズを縮小できる。
【０００８】
本発明の第２態様に係る編集方法は、少なくとも１つの文字が配列されたブロックを複数まとめて縮小するために、複数のブロックのそれぞれに含まれる文字のサイズである文字サイズを調整する編集方法であって、前記文字サイズを前記ブロック毎に特定するための情報であって、前記文字サイズを調整する方法を示す複数の調整方法毎に、前記調整方法によって調整可能な複数の段階的な前記文字サイズを示す複数のサイズ情報を特定可能な調整情報と、前記調整情報により特定される前記複数のサイズ情報のうち調整前の前記文字サイズを示す前記サイズ情報であって、前記複数の調整方法毎に特定された設定サイズ情報とに基づき、前記複数のブロックをまとめて縮小するために前記複数のブロックのそれぞれの前記文字サイズを調整する調整ステップとを備え、前記調整ステップは、何れかの前記調整方法に対応する前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて１段階小さい前記文字サイズに変更した場合の縮小率を、前記複数のブロックのそれぞれについて特定する第１特定ステップと、前記第１特定ステップによって前記複数のブロック毎に特定された前記縮小率のうち最も小さい前記縮小率を、基準縮小率として特定する第２特定ステップと、前記第２特定ステップによって特定された前記基準縮小率と近似するように、前記複数のブロックのそれぞれの前記文字サイズを変更する変更ステップとを備えたことを特徴とする。第２態様によれば、第１態様と同様の効果を奏することができる。
【０００９】
本発明の第３態様に係る編集プログラムは、少なくとも１つの文字が配列されたブロックを複数まとめて縮小するために、複数のブロックのそれぞれに含まれる文字のサイズである文字サイズを調整するコンピュータに、前記文字サイズを前記ブロック毎に特定するための情報であって、前記文字サイズを調整する方法を示す複数の調整方法毎に、前記調整方法によって調整可能な複数の段階的な前記文字サイズを示す複数のサイズ情報を特定可能な調整情報と、前記調整情報により特定される前記複数のサイズ情報のうち調整前の前記文字サイズを示す前記サイズ情報であって、前記複数の調整方法毎に特定された設定サイズ情報とに基づき、前記複数のブロックをまとめて縮小するために前記複数のブロックのそれぞれの前記文字サイズを調整する調整ステップを実行させるための編集プログラムであって、前記調整ステップは、何れかの前記調整方法に対応する前記設定サイズ情報によって示される前記文字サイズを、前記調整情報に基づいて１段階小さい前記文字サイズに変更した場合の縮小率を、前記複数のブロックのそれぞれについて特定する第１特定ステップと、前記第１特定ステップによって前記複数のブロック毎に特定された前記縮小率のうち最も小さい前記縮小率を、基準縮小率として特定する第２特定ステップと、前記第２特定ステップによって特定された前記基準縮小率と近似するように、前記複数のブロックのそれぞれの前記文字サイズを変更する変更ステップとを備えたことを特徴とする。第３態様によれば、第１態様と同様の効果を奏することができる。
【図面の簡単な説明】
【００１０】
【図１】印刷装置１を前側から見た斜視図である。
【図２】印刷装置１の電気的構成を示すブロック図である。
【図３】所定領域８、ブロック８１〜８３、調整情報７５Ａ、及び設定サイズ情報７５Ｂを示す図である。
【図４】調整方法（「幅調整」「ビッグ文字」「フォントサイズ」）を説明するための図である。
【図５】所定領域８、ブロック８１〜８３、調整情報７５Ａ、及び設定サイズ情報７５Ｂを示す図である。
【図６】所定領域８、ブロック８１〜８３、調整情報７５Ａ、及び設定サイズ情報７５Ｂを示す図である。
【図７】メイン処理を示すフローチャートである。
【図８】調整処理のフローチャートである。
【図９】判定処理のフローチャートである。
【図１０】変更処理のフローチャートである。
【発明を実施するための形態】
【００１１】
＜印刷装置１の概要＞
本発明の一実施形態について、図面を参照して説明する。印刷装置１は、印刷媒体であるテープに対し、文字、文字列、記号、数字、図形、絵文字等（以下、「印刷情報」という。）を印刷してラベルを作成可能である。以下の説明では、図１の左上側、右下側、右上側、左下側、上側、及び下側を、それぞれ、印刷装置１の左側、右側、上側、下側、前側、及び後側とする。
【００１２】
図１に示すように、印刷装置１は、直方体状の筐体である本体カバー２を備える。本体カバー２の上面前部には、文字列等を入力するためのキーボード３が設けられる。キーボード３は、アルファベットキー、テンキー、電源スイッチ、用途キー、カーソルキー等を含む。キーボード３の上側には、各種情報を表示するディスプレイ５が設けられる。一例として、ディスプレイ５はドットマトリクスＬＣＤである。ディスプレイ５の後側には、本体カバー２に対して開閉可能なカセットカバー６が設けられる。本体カバー２の上面には、印刷されたテープを本体カバー２の外部に排出する排出口が設けられる。本体カバー２の右上角部には、操作部１４が設けられる。操作部１４が内側へ押圧操作されることによって、カットモータ２８Ａ（図２参照）が駆動し、印刷済みのテープを切断する。
【００１３】
＜印刷装置１の電気的構成＞
図２を参照し、印刷装置１の電気的構成を説明する。印刷装置１は制御回路部７０を備える。制御回路部７０は、ＣＰＵ７１、ＲＯＭ７２、ＣＧＲＯＭ７３、ＲＡＭ７４、フラッシュメモリ７５、及び入出力インタフェース７７を備え、これらがデータバス６９を介して接続される。ＣＰＵ７１は、印刷装置１を統括制御する。ＲＯＭ７２は、ＣＰＵ７１が各種プログラムの実行時に必要な各種パラメータを記憶する。ＣＧＲＯＭ７３は、内蔵フォント等を記憶する。ＲＡＭ７４は、テキストメモリ、印刷バッファ等、複数の記憶領域を備える。フラッシュメモリ７５は、ＣＰＵ７１が実行する各種プログラム等を記憶する。
【００１４】
入出力インタフェース７７には、キーボード３、液晶駆動回路（ＬＣＤＣ）２５、駆動回路２６、２７、２８、及び外部インタフェース（Ｉ／Ｆ）２９が接続される。ＬＣＤＣ２５は、ディスプレイ５に表示データを出力するためのビデオＲＡＭ（図示略）を有する。駆動回路２６は、サーマルヘッド２６Ａを駆動するための電子回路である。駆動回路２７は、テープ送りモータ２７Ａを駆動するための電子回路である。駆動回路２８は、カットモータ２８Ａを駆動するための電子回路である。外部Ｉ／Ｆ２９は、非図示の外部端末２９Ａと接続して通信を行う。例えばＣＰＵ７１は、外部端末２９Ａから受信したプログラムをフラッシュメモリ７５に記憶することにより、プログラムを更新できる。外部端末２９Ａは、汎用のパーソナルコンピュータ（ＰＣ）又は携帯端末である。
【００１５】
＜印刷装置１の機能（レイアウト印刷機能）＞
印刷装置１の印刷機能の１つであるレイアウト印刷機能について説明する。レイアウト印刷機能は、複数の文字列が所定領域の異なる位置に配置された状態で、テープに対する印刷を行うための機能である。以下、所定領域の異なる位置に配置されるそれぞれの文字列の集合を「ブロック」という。例えば、図３（Ａ）に示す例では、文字列「ＢＩＧ」が配列されたブロック８１、文字列「Ｗｉｄｔｈ」が配列されたブロック８２、及び、文字列「１ＰＤｏｗｎ」が配列されたブロック８３が、所定領域８に配置されている。ブロック８１は、所定領域８の左半分の部分に配置される。ブロック８２は、所定領域８の右半分且つ上半分の部分に配置される。ブロック８３は、所定領域８の右半分且つ下半分の部分に配置される。なお、所定領域８の大きさ、各文字列、各文字列に含まれる文字の大きさ（以下、「文字サイズ」という。）、及び、各文字列の配置（以下、「ブロック８１〜８３の配置」という。）は、キーボード３を介した入力操作によって設定可能である。
【００１６】
例えばユーザは、所定領域８の大きさを指定し、次いで、所定領域８に含める各文字列「ＢＩＧ」「Ｗｉｄｔｈ」「１ＰＤｏｗｎ」を、キーボード３を介して印刷装置１に入力する。このときユーザは、改行ボタンの押下により各文字列を改行で区切ることで、それぞれをブロック単位で区別することができる。次いでユーザは、後述する３つの調整方法「幅調整」「ビッグ文字」「フォントサイズ」のそれぞれを設定することによって、文字列毎に文字サイズを入力する。更にユーザは、ブロック８１〜８３の配置を入力する。ユーザは更に、レイアウト印刷を実行する指示を入力する。この場合、印刷装置１のＣＰＵ７１は、駆動回路２７を駆動してテープ送りモータ２７Ａを回転させ、テープ及びインクリボンを搬送する。同時に、ＣＰＵ７１は、駆動回路２６を駆動してサーマルヘッド２６Ａを加熱する。サーマルヘッド２６Ａの加熱により、インクリボンのインクはテープに転写される。これによって、所定領域８に含まれる文字列「ＢＩＧ」「Ｗｉｄｔｈ」「１ＰＤｏｗｎ」は、テープのうち指定された位置に印刷される。
【００１７】
＜調整情報７５Ａ、設定サイズ情報７５Ｂ＞
文字サイズは、フラッシュメモリ７５に記憶された調整情報７５Ａ及び設定サイズ情報７５Ｂ（図３（Ｂ）等参照、後述）に基づいて、ブロック毎に決定される。なお、詳細説明は省略するが、所定領域８の大きさ、及び、ブロック８１〜８３の配置を示す情報も、併せてフラッシュメモリ７５に記憶される。ＣＰＵ７１は、これらの情報を参照することによって、レイアウト印刷機能を実行する。
【００１８】
図３（Ｂ）に示すように、調整情報７５Ａは、文字サイズを調整する方法として、３つの調整方法（「幅調整」、「ビッグ文字」、及び「フォントサイズ」）を規定する。又、各調整方法には、調整可能な複数の段階的な文字サイズを示す複数のサイズ情報が対応付けられている。文字サイズは、調整方法毎に複数のサイズ情報の何れかが選択されることによって、ブロック８１〜８３毎に特定される。又、設定サイズ情報は、各調整方法に対応する複数のサイズ情報のうち、文字サイズを特定するために選択されたサイズ情報を示す。設定サイズ情報は、後述する文字サイズの調整処理が実行されていない初期状態において、ユーザによる文字サイズの入力操作に応じて決定される。図３（Ｂ）において、設定サイズ情報７５Ｂは、左向きの矢印により示され、矢印の先に表記されたサイズ情報に対応する。以下、調整方法と設定サイズ情報との関係を、「調整方法／設定サイズ情報」のように表記する。
【００１９】
「フォントサイズ」は、文字のフォントサイズを調整することによって文字サイズを調整する方法である。「フォントサイズ」には、複数のポイント（ｐｔ）（「６４ｐｔ」「５６ｐｔ」「５０ｐｔ」「４５ｐｔ」・・・「８ｐｔ」「６ｐｔ」）が、複数のサイズ情報として対応付けられている。なお、複数のサイズ情報は、任意のポイント（８ｐｔ、６ｐｔ、５ｐｔ・・・）ずつ段階的に変化しており、１ポイントずつ段階的に変化していない。
【００２０】
図３（Ｂ）に示す例では、「フォントサイズ」に対応するブロック８１〜８３のそれぞれの設定サイズ情報として、「６４ｐｔ」（「ＢＩＧ」）、「５０ｐｔ」（「Ｗｉｄｔｈ」）、「５０ｐｔ」（「１ＰＤｏｗｎ」）が対応付けられている。このため、ブロック８１の文字列「ＢＩＧ」は、「フォントサイズ／６４ｐｔ」の文字サイズで示される。ブロック８２の文字列「Ｗｉｄｔｈ」は、「フォントサイズ／５０ｐｔ」の文字サイズで示される。ブロック８２の文字列「１ＰＤｏｗｎ」は、「フォントサイズ／５０ｐｔ」の文字サイズで示される。
【００２１】
又、例えば図４（Ａ）に示すように、「フォントサイズ／６４ｐｔ」に基づいて文字サイズが調整された文字列「ＡＢＣＤＥＦ」において、「６４ｐｔ」から１段階小さい文字サイズのサイズ情報（以下、「１段階小さい文字サイズ情報」と言い換える。）「５６ｐｔ」に設定サイズ情報が変更された場合、文字サイズは、幅方向及び高さ方向にそれぞれ、１２．５％ずつ小さくなる。この場合の縮小率は、幅方向及び高さ方向にそれぞれ１００（％）−１２．５（％）＝８７．５（％）となる。この場合、変更前のブロック８４Ａに対する変更後のブロック８４Ｂの縮小率も、幅方向及び高さ方向のそれぞれにおいて８７．５％となる。各ブロックのサイズは、幅方向及び高さ方向の何れも小さくなる。以下、ブロックのサイズを、「ブロックサイズ」という。ブロックサイズは、文字列を囲む最小の矩形枠の大きさに対応する。
【００２２】
図３（Ｂ）に示すように、「幅調整」は、文字の幅を調整することによって文字サイズを調整する方法である。「幅調整」には、複数の倍率「×２」「×３／２」「×１」「×２／３」「×１／２」が、複数のサイズ情報として対応付けられている。文字サイズは、「フォントサイズ」に基づいて文字サイズが特定される文字の幅方向の長さに、「幅調整」の複数のサイズ情報の何れかを乗算することによって算出される。複数のサイズ情報は、「×２」から「×１／２」まで、１／４（２５％）または１／３（３３．３％）ずつ段階的に変化する。
【００２３】
図３（Ｂ）に示す例では、「幅調整」に対応するブロック８１〜８３のそれぞれの設定サイズ情報として、「×１／２」（「ＢＩＧ」）、「×１」（「Ｗｉｄｔｈ」）、「×１／２」（「１ＰＤｏｗｎ」）が対応付けられている。このため、ブロック８１の文字列「ＢＩＧ」は、「幅調整／×１／２」の文字サイズで示される。ブロック８２の文字列「Ｗｉｄｔｈ」は、「幅調整／×１」の文字サイズで示される。ブロック８２の文字列「１ＰＤｏｗｎ」は、「幅調整／×１／２」の文字サイズで示される。このため、文字列「Ｗｉｄｔｈ」の幅方向の長さは、同じフォントサイズの文字列「１ＰＤｏｗｎ」よりも長くなっている。
【００２４】
又、例えば図４（Ｂ）に示すように、「幅調整／×２／３」に基づいて文字サイズが調整された文字列「ＡＢＣＤＥ」において、「×２／３」から１段階小さい「×１／２」に設定サイズ情報が変更された場合、文字サイズは、幅方向に２５％小さくなる。この場合の縮小率は、幅方向に１００（％）−２５（％）＝７５（％）となる。なお、文字サイズは高さ方向に縮小しない。この場合、変更前のブロック８５Ａに対する変更後のブロック８５Ｂの縮小率は、幅方向において７５％となる。ブロックサイズは、幅方向において小さくなり、高さ方向において変化しない。
【００２５】
図３（Ｂ）に示すように、「ビッグ文字」は、対象とする文字列が、ベースラインよりも上側に全体が配置される文字（以下、「ビッグ対象文字」という。）のみによって構成される場合、ベースラインを下げて文字サイズを大きくする調整方法である。ベースラインとは、文字の上下方向の位置を定義するための基準線である。つまり、「ビッグ文字」は、ベースラインよりも下側の範囲まで文字が占有するように、文字の幅及び高さを調整する方法である。「ビッグ文字」が適用されることによって、文字サイズは、幅方向及び高さ方向にそれぞれ２０％ずつ大きくなる。
【００２６】
具体的には、例えば大文字「ＡＢＣＤＥＦＧＨＩＫＬＭＮＯＰＲＳＴＵＶＷＸＹＺ」及び小文字「ａｂｃｄｅｆｈｉｋｌｍｎｏｒｓｔｕｖｗｘｚ」は、ベースラインよりも上側に全体が配置される文字であるので、ビッグ対象文字に対応する。一方、大文字「ＪＱ」及び小文字「ｇｊｐｑｙ」は、ベースラインよりも下側に一部が配置される文字であるので、ビッグ対象文字から除外される。
【００２７】
「ビッグ文字」には、「設定ＯＮ」「設定ＯＦＦ」が２つのサイズ情報として対応付けられている。例えば、ビッグ対象文字のみからなる文字列の文字サイズが、「ビッグ文字」の「設定ＯＮ」に基づいて調整された場合、「設定ＯＦＦ」に基づいて調整された場合と比べて、幅方向及び高さ方向にそれぞれ２０％ずつ文字サイズが大きくなる。
【００２８】
図３（Ｂ）に示す例では、「ビッグ文字」に対応するブロック８１〜８３のそれぞれの設定サイズ情報として、「設定ＯＮ」（「ＢＩＧ」）、「設定ＯＦＦ」（「Ｗｉｄｔｈ」）、「設定ＯＦＦ」（「１ＰＤｏｗｎ」）が対応付けられている。このため、文字列「ＢＩＧ」の文字サイズは、同一フォントサイズ「６４ｐｔ」の文字列と比べて、幅方向及び高さ方向にそれぞれ２０％ずつ大きくなっている。
【００２９】
又、例えば図４（Ｃ）に示すように、「ビッグ文字／設定ＯＮ」に基づいて文字サイズが調整された文字列「ＡＢＣＤＥ」において、「設定ＯＮ」から１段階小さい「設定ＯＦＦ」に設定サイズ情報が変更された場合、文字サイズは、幅方向及び高さ方向にそれぞれ、２０％ずつ小さくなる。この場合の縮小率は、幅方向及び高さ方向にそれぞれ１００（％）−２０（％）＝８０（％）となる。この場合、変更前のブロック８６Ａに対する変更後のブロック８６Ｂの縮小率も、幅方向及び高さ方向のそれぞれにおいて８０％となる。つまり、ブロックサイズは、幅方向及び高さ方向の何れも小さくなる。
【００３０】
調整情報７５Ａによって規定される３つの調整方法「幅調整」「ビッグ文字」「フォントサイズ」には、優先度が予め設定される。具体的には、「幅調整」の方が「ビッグ文字」よりも優先度が高く、且つ「ビッグ文字」の方が「フォントサイズ」よりも優先度が高く設定される。なお、設定された優先度の利用方法については後述する。
【００３１】
＜所定領域８を変更した場合における文字サイズの縮小方法（従来の方法）＞
一旦設定された所定領域８を幅方向に縮小する操作がユーザによって行われた場合を例示する。この場合、印刷装置１は、縮小後の所定領域８にブロック８１〜８３が収まるように、ブロック８１〜８３に含まれる文字列の文字サイズを縮小してブロックサイズを幅方向に縮小する必要がある。以下、このような場合における従来の文字サイズの縮小方法について、図５を参照して説明する。
【００３２】
図５（Ａ）に示すように、所定領域８Ａから所定領域８Ｂに縮小する操作が行われた場合、ブロック８１〜８３は所定領域８Ｂに収まらず、一部が幅方向にはみ出る。この場合、調整情報７５Ａ及び設定サイズ情報７５Ｂに基づき、次のようにして文字列が縮小される。
【００３３】
図５（Ｃ）に示すように、ブロック８１の文字列「ＢＩＧ」の場合、はじめに、優先度の最も高い調整方法「幅調整」が選択され、設定サイズ情報「×１／２」が特定される。ここで、「×１／２」は、「幅調整」に対応する複数のサイズ情報のうち最も小さい文字サイズのサイズ情報に対応する。この場合、次に優先度の高い調整方法「ビッグ文字」が選択され、設定サイズ情報「設定ＯＮ」が特定される。ここで、「ビッグ文字」には、設定サイズ情報「設定ＯＮ」よりも１段階小さいサイズ情報である「設定ＯＦＦ」が対応付けられている。このため、ブロック８１の文字列「ＢＩＧ」において、「ビッグ文字」が「設定ＯＦＦ」となるように文字サイズが調整される。この場合、文字列「ＢＩＧ」の文字サイズは、幅方向及び高さ方向においてそれぞれ、縮小率８０％となるように縮小される。又、「ビッグ文字」の設定サイズ情報は、「設定ＯＮ」から「設定ＯＦＦ」に変更される。
【００３４】
ブロック８２の文字列「Ｗｉｄｔｈ」の場合、はじめに、優先度の最も高い調整方法「幅調整」が選択され、設定サイズ情報「×１」が特定される。ここで、「幅調整」には、設定サイズ情報「×１」よりも１段階小さいサイズ情報である「×２／３」が対応付けられている。このため、ブロック８２の文字列「Ｗｉｄｔｈ」において、「幅調整」が「×２／３」となるように文字サイズが調整される。この場合、文字列「Ｗｉｄｔｈ」の文字サイズは、幅方向において、縮小率６６．７％となるように縮小される。なお、文字列「Ｗｉｄｔｈ」の文字サイズは、高さ方向において縮小されない。又、「幅調整」の設定サイズ情報は、「×１」から「×２／３」に変更される。
【００３５】
ブロック８３の文字列「１ＰＤｏｗｎ」の場合、はじめに、優先度の最も高い調整方法「幅調整」が選択され、設定サイズ情報「×１／２」が特定される。ここで、設定サイズ情報「×１／２」は、「幅調整」に対応する複数のサイズ情報のうち、最も小さい文字サイズのサイズ情報に対応する。この場合、次に優先度の高い調整方法「ビッグ文字」が選択され、設定サイズ情報「設定ＯＦＦ」が特定される。ここで、設定サイズ情報「設定ＯＦＦ」は、「ビッグ文字」に対応する複数のサイズ情報のうち、最も小さい文字サイズのサイズ情報に対応する。この場合、次に優先度の高い調整方法「フォントサイズ」が選択され、設定サイズ情報「５０ｐｔ」が特定される。ここで、「フォントサイズ」には、設定サイズ情報「５０ｐｔ」よりも１段階小さいサイズ情報である「４５ｐｔ」が対応付けられている。このため、ブロック８３の文字列「１ＰＤｏｗｎ」において、「フォントサイズ」が「４５ｐｔ」となるように文字サイズが調整される。この場合、文字列「１ＰＤｏｗｎ」の文字サイズは、幅方向及び高さ方向においてそれぞれ、縮小率９０％となるように縮小される。又、「フォントサイズ」の設定サイズ情報は、「５０ｐｔ」から「４５ｐｔ」に変更される。
【００３６】
図５（Ｂ）は、文字列「ＢＩＧ」「Ｗｉｄｔｈ」「１ＰＤｏｗｎ」がそれぞれ上記のように縮小された場合における、ブロック８１〜８３の配置を示す。例えば、ブロック８２のブロックサイズの幅方向の変化量（縮小率：６６．７％）の方が、ブロック８３のブロックサイズの幅方向の変化量（縮小率：９０％）よりも大きい。このため、ブロック８２、８３の幅方向の端部の位置は大きく相違する。このように、各文字列の縮小率の相違に伴ってブロック８１〜８３の変化量が相違することになるので、所定領域８Ｂに配置されたブロック８１〜８３の幅方向のバランスが変化する。このため、従来の方法では、縮小された所定領域８に収まるように各文字列が縮小された場合、ブロック８１〜８３は、ユーザの意図と異なるレイアウトで所定領域８Ｂに配置される可能性がある。
【００３７】
＜所定領域８を変更した場合文字サイズの縮小方法（提案方法）＞
一方、本実施形態において、印刷装置１は、所定領域８Ｂに配置されたブロック８１〜８３のバランスを維持しつつ、縮小後の所定領域８Ｂにブロック８１〜８３が収まるように、調整情報７５Ａ及び設定サイズ情報７５Ｂに基づいて次のように文字サイズを縮小する。
【００３８】
はじめに、印刷装置１のＣＰＵ７１は、ブロック８１〜８３のそれぞれについて、調整可能な調整方法のうち優先度の最も高い調整方法の設定サイズ情報から１段階小さいサイズ情報に変更した場合の文字サイズの幅方向の縮小率を算出する。例えば、ブロック８２の文字列「Ｗｉｄｔｈ」においては、優先度の最も高い調整方法「幅調整」についての設定サイズ情報「×１」の文字サイズが、１段階小さいサイズ情報「×２／３」の文字サイズに縮小された場合の幅方向の縮小率「６６．７％」が算出される。又、例えば、ブロック８１の文字列「ＢＩＧ」においては、優先度の最も高い調整方法「幅調整」について調整不可能である。このため、次に優先度の高い調整方法「ビッグ文字」についての設定サイズ情報「設定ＯＮ」の文字サイズが、１段階小さいサイズ情報「設定ＯＦＦ」の文字サイズに縮小された場合の幅方向の縮小率「８０％」が算出される。又、例えば、ブロック８３の文字列「１ＰＤｗｏｎ」においては、優先度の高い調整方法「幅調整」「ビッグ文字」が何れも調整不可能である。このため、次に優先度の高い調整方法「フォントサイズ」についての設定サイズ情報「５０ｐｔ」の文字サイズが、１段階小さいサイズ情報「４５ｐｔ」の文字サイズに縮小された場合の幅方向の縮小率「９０％」が算出される。
【００３９】
次に、ＣＰＵ７１は、上記のようにしてブロック８１〜８３毎に算出された幅方向の縮小率のうち最も小さい縮小率を特定する。以下、特定される縮小率を、「基準縮小率」という。基準縮小率で縮小される調整方法を、「基準調整方法」という。上記の場合、ブロック８２の文字列「Ｗｉｄｔｈ」に対応する縮小率「６６．７％」が、基準縮小率として特定される。調整方法「幅調整」が、基準調整方法に対応する。
【００４０】
次に、ＣＰＵ７１は、ブロック８１〜８３のそれぞれの文字列について、特定された基準縮小率６６．７％に近似する縮小率となるように、文字サイズを調整する。ここで、基準縮小率６６．７％が特定されたブロック８２の文字列「Ｗｉｄｔｈ」については、基準調整方法である「幅調整」についての設定サイズ情報「×１」よりも１段階小さいサイズ情報「×２／３」の文字サイズとなるように縮小される。この場合、文字列「Ｗｉｄｔｈ」の文字サイズの縮小率は、基準縮小率と同じ６６．７％になる。
【００４１】
一方、例えばＣＰＵ７１は、ブロック８１の文字列「ＢＩＧ」について、調整可能な調整方法のうち最も優先度が高い調整方法である「ビッグ文字」の設定サイズ情報「設定ＯＮ」を「設定ＯＦＦ」に変更し、文字サイズを縮小する。この場合、文字サイズの幅方向の縮小率は、８０％となる。更にＣＰＵ７１は、「ビッグ文字」の調整方法によって文字列「ＢＩＧ」の文字サイズの縮小を試みる。しかし、「設定ＯＦＦ」は、「ビッグ文字」に対応する最も小さいサイズ情報であるため、更に「ビッグ文字」によって文字サイズを縮小できない。このため、ＣＰＵ７１は、「ビッグ文字」の次に優先度が高い調整方法「フォントサイズ」の設定サイズ情報「６４ｐｔ」から、文字サイズが１２．５％縮小されるように、文字列「ＢＩＧ」の文字サイズを変更する。
【００４２】
なお、「フォントサイズ」に対応する複数のサイズ情報のうち、設定サイズ情報「６４ｐｔ」よりも１段階小さいサイズ情報は「５６ｐｔ」であり、「フォントサイズ」を「６４ｐｔ」から「５６ｐｔ」に変更した場合、文字サイズは１２．５％縮小される。このため、ＣＰＵ７１は、「フォントサイズ」について、設定サイズ情報「６４ｐｔ」を「５６ｐｔ」に変更することによって、文字列「ＢＩＧ」の文字サイズを縮小する。つまり、文字列「ＢＩＧ」は、「ビッグ文字」の調整方法によって、設定サイズ情報「設定ＯＮ」から１段階小さいサイズ情報「設定ＯＦＦ」の文字サイズに変更された後、更に、「フォントサイズ」の調整方法によって、所定割合（１２．５％）分更に縮小される。この場合の文字サイズの縮小率は、合計で、幅方向について７０％となり、基準縮小率６６．７％に近似する。
【００４３】
又、例えばＣＰＵ７１は、ブロック８３の文字列「１ＰＤｏｗｎ」について、調整可能な調整方法のうち最も優先度が高い調整方法「フォントサイズ」の設定サイズ情報「５０ｐｔ」を「４５ｐｔ」に変更し、文字サイズを縮小する。この場合、文字の幅方向の縮小率は９０％となる。更にＣＰＵ７１は、調整方法「フォントサイズ」の設定サイズ情報「４５ｐｔ」を、１段階小さいサイズ情報に変更し、文字サイズを縮小する。この場合、文字サイズの幅方向の縮小率は、合計で７９％となる。ＣＰＵ７１は、幅方向の縮小率が基準縮小率６６．７％に近似するまで、「フォントサイズ」の設定サイズ情報を１段階ずつ小さくする。つまり、文字列「１ＰＤｏｗｎ」は、「フォントサイズ」の調整方法によって２段階以上小さいサイズ情報の文字サイズに縮小される。例えばＣＰＵ７１は、縮小率が合計で、幅方向について６６％となった場合、基準縮小率６６．７％に近似することとなったので、上記の処理を終了する。
【００４４】
以上のように、ＣＰＵ７１は、各ブロックの文字列の文字サイズが基準縮小率に近似する縮小率で縮小されるように、文字サイズを調整する。これによって、縮小後の所定領域８Ｂにブロック８１〜８３を収めることが可能となると同時に、所定領域８Ｂに配置されたブロック８１〜８３のバランスは維持される。
【００４５】
＜メイン処理＞
図７〜図１０を参照し、印刷装置１のＣＰＵ７１によって実行されるメイン処理について説明する。メイン処理は、所定領域８Ａ（図５、図６参照）を所定領域８Ｂ（図５、図６参照）に縮小する操作がキーボード３を介して実行された場合、フラッシュメモリ７５に記憶されたプログラムをＣＰＵ７１が実行することによって開始される。以下では、図５、図６に示す所定領域８Ａ、８Ｂ、及びブロック８１〜８３を想定して具体的に説明する。又、以下では、特段説明のない限り、「縮小率」は、文字サイズの幅方向の縮小率を示す。
【００４６】
図７に示すように、ＣＰＵ７１は、縮小前の所定領域８Ａに含まれるブロック８１〜８３のそれぞれのブロックサイズを特定する（Ｓ１１）。なお、ブロック８１〜８３のブロックサイズは、それぞれに含まれる文字列の文字サイズを、調整情報７５Ａ及び設定サイズ情報７５Ｂに基づいて特定することによって特定される。以下、ブロック８１、８２、８３のそれぞれに含まれる文字列を、「第１文字列」「第２文字列」「第３文字列」という。
【００４７】
次に、ＣＰＵ７１は、特定されたブロック８１〜８３のブロックサイズ、及び、ブロック８１〜８３の配置に基づき、縮小後の所定領域８Ｂにブロック８１〜８３が配置可能か判定する（Ｓ１３）。ＣＰＵ７１は、所定領域８Ｂにブロック８１〜８３が配置可能と判定した場合（Ｓ１３：ＹＥＳ）、メイン処理を終了させる。一方、ＣＰＵ７１は、所定領域８Ｂにブロック８１〜８３が配置できないと判定された場合（Ｓ１３：ＮＯ）、ブロック８１〜８３に含まれる文字列の文字サイズを調整するために、調整処理（図８参照）を実行する（Ｓ１５）。
【００４８】
図８を参照し、調整処理について説明する。ＣＰＵ７１は、ＲＡＭ７４に記憶された変数ｎに１を設定して初期化する（Ｓ３１）。ｎは、ブロック８１〜８３のそれぞれの文字列（第１文字列〜第３文字列）を順番に選択するために使用される。例えばＣＰＵ７１は、ｎに１が設定された場合、第１文字列に基づいて基準縮小率及び基準調整方法を判定するために、判定処理（図９参照）を実行する（Ｓ３３）。
【００４９】
図９を参照し、判定処理について説明する。ＣＰＵ７１は、調整方法「幅調整」によって第ｎ文字列の文字サイズの調整が可能か否かを、設定サイズ情報よりも１段階小さいサイズ情報に変更可能か否かによって判定する（Ｓ５１）。ＣＰＵ７１は、「幅調整」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報でない場合、「幅調整」による文字サイズの調整が可能と判定する（Ｓ５１：ＹＥＳ）。この場合、ＣＰＵ７１は、ＲＡＭ７４に記憶した第ｎ調整方法に「幅調整」を設定する。又、ＣＰＵ７１は、ＲＡＭ７４に記憶した第ｎ縮小率に、設定サイズ情報よりも１段階小さいサイズ情報に変更された場合の縮小率を設定する（Ｓ５３）。なお、第ｎ調整方法は、第ｎ文字列に対応する調整情報７５Ａのうち、調整可能且つ最も優先度が高い調整方法を示す。第ｎ縮小率は、第ｎ文字列の文字サイズが第ｎ調整方法によって設定サイズ情報よりも１段階小さいサイズ情報に変更された場合の縮小率を示す。ＣＰＵ７１は、処理をＳ６５に進める。
【００５０】
一方、ＣＰＵ７１は、「幅調整」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報である場合、「幅調整」による文字サイズの調整が不可能と判定する（Ｓ５１：ＮＯ）。この場合、ＣＰＵ７１は、「幅調整」の次に優先度の高い「ビッグ文字」を対象として同様の処理を行なう為、処理をＳ５５に進める。
【００５１】
ＣＰＵ７１は、調整方法「ビッグ文字」によって第ｎ文字列の文字サイズの調整が可能か否かを、設定サイズ情報から１段階小さい文字サイズのサイズ情報に変更可能か否かによって判定する（Ｓ５５）。ＣＰＵ７１は、「ビッグ文字」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報でない場合、即ち「設定ＯＮ」である場合、「ビッグ文字」による文字サイズの調整が可能と判定する（Ｓ５５：ＹＥＳ）。この場合、ＣＰＵ７１は、第ｎ調整方法に「ビッグ文字」を設定し、第ｎ縮小率に８０％（図４（Ｃ）参照）を設定する（Ｓ５７）。ＣＰＵ７１は、処理をＳ６５に進める。一方、ＣＰＵ７１は、「ビッグ文字」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報である場合、即ち「設定ＯＦＦ」である場合、「ビッグ文字」による文字サイズの調整が不可能と判定する（Ｓ５５：ＮＯ）。この場合、ＣＰＵ７１は、「ビッグ文字」の次に優先度の高い「フォントサイズ」を対象として同様の処理を行なう為、処理をＳ５９に進める。
【００５２】
ＣＰＵ７１は、調整方法「フォントサイズ」によって第ｎ文字列の文字サイズの調整が可能か否かを、設定サイズ情報から１段階小さい文字サイズのサイズ情報に変更可能か否かによって判定する（Ｓ５９）。ＣＰＵ７１は、「フォントサイズ」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報でない場合、「フォントサイズ」による文字サイズの調整が可能と判定する（Ｓ５９：ＹＥＳ）。この場合、ＣＰＵ７１は、第ｎ調整方法に、「フォントサイズ」を設定する。ＣＰＵ７１は、「フォントサイズ」の設定サイズ情報を１段階小さいサイズ情報に変更したときの文字サイズの縮小率を、第ｎ縮小率に設定する（Ｓ６１）。ＣＰＵ７１は、処理をＳ６５に進める。一方、ＣＰＵ７１は、「フォントサイズ」に対応する設定サイズ情報が、対応する複数のサイズ情報のうち最も小さいサイズ情報である場合、「フォントサイズ」による文字サイズの調整が不可能と判定する（Ｓ５９：ＮＯ）。この場合、調整情報「幅調整」「ビッグ文字」「フォントサイズ」の何れによっても文字サイズを調整できないことになる。ＣＰＵ７１は、第ｎ調整方法に「調整不可」を設定する（Ｓ６３）。ＣＰＵ７１は、処理をＳ６５に進める。
【００５３】
ＣＰＵ７１は、第１縮小率〜第ｎ縮小率の中で第ｎ縮小率が最も小さいか判定する（Ｓ６５）。ＣＰＵ７１は、第ｎ縮小率が最も小さいと判定した場合（Ｓ６５：ＹＥＳ）、基準調整方法として第ｎ調整方法を設定する（Ｓ６７）。ＣＰＵ７１は、基準縮小率として第ｎ縮小率を設定する（Ｓ６９）。ＣＰＵ７１は、判定処理を終了させ、処理を調整処理（図８参照）に戻す。一方、ＣＰＵ７１は、第１縮小率〜第ｎ−１縮小率の何れかの方が第ｎ縮小率よりも小さいか、又は、第ｎ調整方法に「調整不可」が設定されていると判定した場合（Ｓ６５：ＮＯ）、基準調整方法及び基準縮小率に対する設定を行わずに判定処理を終了させ、処理を調整処理（図８参照）に戻す。
【００５４】
図８に示すように、ＣＰＵ７１は、判定処理（Ｓ３３）の終了後、所定領域８Ｂに含まれる文字列（第１文字列〜第３文字列）の総数はｎ以下か判定する（Ｓ３５）。ＣＰＵ７１は、文字列の総数がｎよりも大きいと判定された場合（Ｓ３５：ＮＯ）。処理をＳ３９に進める。ＣＰＵ７１は、ｎに１を加算して更新する（Ｓ３９）。ＣＰＵ７１は、処理をＳ３３に戻す。ＣＰＵ７１は、更新されたｎに対応する第ｎ文字列を対象として、判定処理（Ｓ３３）を繰り返す。ＣＰＵ７１は、文字列の総数がｎ以下と判定した場合（Ｓ３５：ＹＥＳ）、処理をＳ３７に進める。以上までで、第１文字列〜第３文字列の全てを対象として処理が実行され、基準調整方法及び基準縮小率が特定されたことになる。
【００５５】
ＣＰＵ７１は、ｎに１を設定して初期化する（Ｓ３７）。ＣＰＵ７１は、判定処理によって特定された基準調整方法及び基準縮小率に基づいて、第１文字列〜第３文字列のそれぞれの文字サイズを変更するために、変更処理（図１０参照）を実行する（Ｓ４１）。
【００５６】
図１０を参照し、変更処理について説明する。ＣＰＵ７１は、第ｎ文字列に対応する第ｎ調整方法に「調整不可」が設定されているか判定する（Ｓ８１）。なお、第ｎ調整方法に「調整不可」が設定されている場合、第ｎ文字列の文字サイズを調整できない。このため、ＣＰＵ７１は、第ｎ調整方法に「調整不可」が設定されていると判定された場合（Ｓ８１：ＹＥＳ）、変更処理を終了させ、処理を調整処理（図８参照）に戻す。一方、ＣＰＵ７１は、第ｎ調整方法に「調整不可」が設定されていないと判定した場合（Ｓ８１：ＮＯ）、処理をＳ８３に進める。
【００５７】
ＣＰＵ７１は、基準調整方法に「幅調整」が設定されているか判定する（Ｓ８３）。なお、基準調整方法に「幅調整」が設定されている場合、基準縮小率には「６６．７％」が設定されている（Ｓ５３（図９参照））。ＣＰＵ７１は、基準調整方法に「幅調整」が設定されていると判定した場合（Ｓ８３：ＹＥＳ）、次に、第ｎ調整方法に「幅調整」が設定されているか判定する（Ｓ９５）。ＣＰＵ７１は、第ｎ調整方法に「幅調整」が設定されていると判定した場合（Ｓ９５：ＹＥＳ）、「幅調整」の調整方法について、複数のサイズ情報のうち設定サイズ情報よりも１段階小さいサイズ情報の文字サイズとなるように、第ｎ文字列の文字サイズを縮小する（Ｓ９７）。ＣＰＵ７１は変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００５８】
ＣＰＵ７１は、第ｎ調整方法に「幅調整」が設定されていないと判定した場合（Ｓ９５：ＮＯ）、第ｎ調整方法に「ビッグ文字」が設定されているか判定する（Ｓ９９）。ＣＰＵ７１は、第ｎ調整方法に「ビッグ文字」が設定されていると判定した場合（Ｓ９９：ＹＥＳ）、「ビッグ文字」の調整方法について、設定サイズ情報「設定ＯＮ」を１段階小さい「設定ＯＦＦ」に変更した場合の文字サイズとなるように、第ｎ文字列の文字サイズを縮小する（Ｓ１０１）。なお、「ビッグ文字」の調整方法について１段階小さいサイズ情報（「設定ＯＮ」→「設定ＯＦＦ」）に変更したときの文字サイズの縮小率は、常に「８０％」となる（図４（Ｃ）参照）。
【００５９】
次いで、ＣＰＵ７１は、優先度が「ビッグ文字」の次に高い「フォントサイズ」の調整方法について、設定サイズ情報の文字サイズが１２．５％縮小されるサイズ情報を特定し、特定したサイズ情報の文字サイズとなるように、第ｎ文字列の文字サイズを更に縮小する（Ｓ１０３）。なお、「ビッグ文字」の調整方法よって、縮小率が「８０％」となるように第ｎ文字列の文字サイズが縮小されている（Ｓ１０１）。このため、この状態から、第ｎ文字列の文字サイズが１２．５％縮小されることになるので、文字サイズの縮小率は合計で７０％となり、基準縮小率（６６．７％）と近似する。ＣＰＵ７１は、変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００６０】
ＣＰＵ７１は、第ｎ調整方法に「ビッグ文字」が設定されていないと判定された場合（Ｓ９９：ＮＯ）、第ｎ調整方法には「フォントサイズ」が設定されていることになる。この場合、ＣＰＵ７１は、「フォントサイズ」の調整方法について、複数のサイズ情報のうち設定サイズ情報よりも小さいサイズ情報を１段階ずつ選択し、選択したサイズ情報に対応する文字サイズとなるように、第ｎ文字列の文字サイズを縮小する。ＣＰＵ７１は、以上の処理を、文字サイズの縮小率が基準縮小率（６６．７％）に近似するまで繰り返す（Ｓ１０５）。ＣＰＵ７１は、縮小率が基準縮小率に近似するまで第ｎ文字列の文字サイズが縮小された場合、変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００６１】
ＣＰＵ７１は、基準調整方法に「幅調整」が設定されていないと判定した場合（Ｓ８３：ＮＯ）、基準調整方法に「ビッグ文字」が設定されているか判定する（Ｓ８５）。なお、基準調整方法に「ビッグ文字」が設定されている場合、基準縮小率には「８０％」が設定されている（Ｓ５７（図９参照））。ＣＰＵ７１は、基準調整方法に「ビッグ文字」が設定されていると判定された場合（Ｓ８５：ＹＥＳ）、次に、第ｎ調整方法に「ビッグ文字」が設定されているか判定する（Ｓ８９）。ＣＰＵ７１は、第ｎ調整方法に「ビッグ文字」が設定されていると判定した場合（Ｓ８９：ＹＥＳ）、「ビッグ文字」の調整方法について、設定サイズ情報「設定ＯＮ」を１段階小さい「設定ＯＦＦ」に変更した場合の文字サイズとなるように、第ｎ文字列の文字サイズを縮小する（Ｓ９１）。なお、「ビッグ文字」の調整方法について１段階小さいサイズ情報に変更したときの文字サイズの縮小率は、常に「８０％」となる（図４（Ｃ）参照）。このため、第ｎ文字列の文字サイズの縮小率は、基準縮小率と一致する。ＣＰＵ７１は、変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００６２】
ＣＰＵ７１は、第ｎ調整方法に「ビッグ文字」が設定されていないと判定された場合（Ｓ８９：ＮＯ）、第ｎ調整方法には「フォントサイズ」が設定されていることになる。この場合、ＣＰＵ７１は、「フォントサイズ」の調整方法について、複数のサイズ情報のうち設定サイズ情報よりも小さいサイズ情報を１段階ずつ選択し、選択したサイズ情報に対応する文字サイズとなるように、第ｎ文字列の文字サイズを縮小する。ＣＰＵ７１は、以上の処理を、文字サイズの縮小率が基準縮小率（８０％）に近似するまで繰り返す（Ｓ９３）。ＣＰＵ７１は、縮小率が基準縮小率に近似するまで第ｎ文字列の文字サイズが縮小された場合、変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００６３】
ＣＰＵ７１は、基準調整方法に「ビッグ文字」が設定されていないと判定した場合（Ｓ８５：ＮＯ）、基準調整方法には「フォントサイズ」が設定されていることになる。なお、基準調整方法に「フォントサイズ」が設定されている場合、基準縮小率には、任意の縮小率が設定されている（Ｓ６１（図９参照））。この場合、ＣＰＵ７１は、「フォントサイズ」の調整方法について、複数のサイズ情報のうち設定サイズ情報よりも小さいサイズ情報を１段階ずつ選択し、選択したサイズ情報に対応する文字サイズとなるように、第ｎ文字列の文字サイズを縮小する。ＣＰＵ７１は、以上の処理を、文字サイズの縮小率が基準縮小率に近似するまで繰り返す（Ｓ８７）。ＣＰＵ７１は、縮小率が基準縮小率に近似するまで第ｎ文字列の文字サイズが縮小された場合、変更処理を終了させ、処理を調整処理（図８参照）に戻す。
【００６４】
図８に示すように、ＣＰＵ７１は、変更処理（Ｓ４１）の終了後、所定領域８Ｂに含まれる文字列（第１文字列〜第３文字列）の総数はｎ以下か判定する（Ｓ４３）。ＣＰＵ７１は、文字列の総数がｎよりも大きいと判定された場合（Ｓ４３：ＮＯ）。処理をＳ４５に進める。ＣＰＵ７１は、ｎに１を加算して更新する（Ｓ４５）。ＣＰＵ７１は、処理をＳ４１に戻す。ＣＰＵ７１は、更新されたｎに対応する第ｎ文字列を対象として、変更処理（Ｓ４１）を繰り返す。ＣＰＵ７１は、文字列の総数がｎ以下と判定した場合（Ｓ４３：ＹＥＳ）、全ての文字列（第１文字列〜第３文字列）について文字サイズが縮小されたことになるので、調整処理を終了させ、処理をメイン処理（図７参照）に戻す。
【００６５】
図７に示すように、ＣＰＵ７１は、調整処理（Ｓ１５）の終了後、文字列の文字サイズの調整が調整処理によって実行されたか判定する（Ｓ１７）。ＣＰＵ７１は、文字サイズの調整が実行されていないと判定された場合（Ｓ１７：ＮＯ）、所定領域８Ｂにブロック８１〜８３を配置させることができないことを示すエラー情報を、ディスプレイ５に表示させる（Ｓ１９）。ＣＰＵ７１は、メイン処理を終了させる。
【００６６】
一方、ＣＰＵ７１は、文字サイズの調整が実行されたと判定された場合（Ｓ１７：ＹＥＳ）、処理をＳ１１に戻す。ＣＰＵ７１は、調整後の文字サイズとした場合のブロック８１〜８３のそれぞれのブロックサイズを特定する（Ｓ１１）。ＣＰＵ７１は、特定されたブロック８１〜８３のブロックサイズ、及び、ブロック８１〜８３の配置に基づき、所定領域８Ｂにブロック８１〜８３が配置可能かを再度判定する（Ｓ１３）。ＣＰＵ７１は、所定領域８Ｂにブロック８１〜８３が配置可能となったと判定した場合（Ｓ１３：ＹＥＳ）、メイン処理を終了させる。一方、ＣＰＵ７１は、未だ所定領域８Ｂにブロック８１〜８３が配置できないと判定された場合（Ｓ１３：ＮＯ）、所定領域８Ｂにブロック８１〜８３が配置可能となるまで、Ｓ１１、Ｓ１５、Ｓ１７の処理を繰り返す。
【００６７】
＜本実施形態の主たる作用、効果＞
印刷装置１は、ブロック８１〜８３全体を縮小するために、ブロック８１〜８３に含まれる文字列の文字サイズを変更する（図１０参照）。ここで、印刷装置１は、ブロック８１〜８３のそれぞれに含まれる文字列の文字サイズを、各ブロックに対応する調整情報７５Ａに基づき１段階小さい文字サイズに変更した場合の縮小率を、ブロック毎に特定する（Ｓ５１〜Ｓ６３）。編集装置は、特定された縮小率のうち最も小さい基準縮小率を更に特定し（Ｓ６９）、基準縮小率と近似するように、ブロック８１〜８３のそれぞれの文字サイズを変更する（図１０参照）。この場合、印刷装置１は、ブロック８１〜８３の文字サイズのバランスを維持しつつ、各ブロックのブロックサイズを縮小して全体を縮小できる。
【００６８】
印刷装置１は、例えば基準縮小率が６６．７％である場合、調整方法「ビッグ文字」の設定サイズ情報「設定ＯＮ」を「設定ＯＦＦ」に変更して文字サイズを縮小し（Ｓ１０１）、更に、「ビッグ文字」の次に優先度が高い調整方法「フォントサイズ」の設定サイズ情報から、文字サイズが１２．５％縮小されるように、文字列「ＢＩＧ」の文字サイズを変更する（Ｓ１０３）。この場合の縮小率は、合計で、幅方向について７０％となり、基準縮小率６６．７％に近似する。このように、印刷装置１は、調整方法「ＢＩＧ」について文字サイズを１段階小さくした場合に不足する縮小率を、調整方法「フォントサイズ」により所定割合分文字サイズを更に縮小することによって補間できる。従って、印刷装置１は、特定の調整方法について文字サイズを１段階小さくしつつ、ブロック８１〜８３のそれぞれの文字の縮小率を基準縮小率に精度良く近似させることができる。
【００６９】
印刷装置１は、調整方法「フォントサイズ」によって文字サイズを調整する場合、設定サイズ情報から２段階以上小さいサイズ情報の文字サイズに縮小することによって、縮小率を基準縮小率に近似させる。この場合、印刷装置１は、ブロック８１〜８３のそれぞれの文字の縮小率を、「フォントサイズ」のサイズ情報を多段階に調整することによって基準縮小率に精度良く近似させることができる。
【００７０】
印刷装置は、文字の幅を調整することによって文字サイズを調整する「幅調整」、文字が特定の範囲を占有するように、文字の幅及び高さを調整することによって文字サイズを調整する「ビッグサイズ」、及び、文字のフォントサイズを調整することによって文字サイズを調整する「フォントサイズ」の何れかによって、文字サイズを調整可能である。この場合、印刷装置１は、ブロック８１〜８３の文字サイズのバランスを維持しつつ、ブロック８１〜８３のサイズを様々な方法で縮小できる。
【００７１】
調整情報７５Ａによって規定される３つの調整方法「幅調整」「ビッグ文字」「フォントサイズ」には、優先度が予め設定される。具体的には、「幅調整」の方が「ビッグ文字」よりも優先度が高く、且つ「ビッグ文字」の方が「フォントサイズ」よりも優先度が高く設定される。この場合、印刷装置１は、「幅調整」、「ビッグ文字」、及び「フォントサイズ」のそれぞれに対応する複数のサイズ情報に基づき、優先度に応じて順番に１つずつサイズ情報を小さくすることによって、文字サイズを縮小できる。
【００７２】
印刷装置１は、ブロック８１〜８３のそれぞれのブロックサイズを、調整情報７５Ａ及び設定サイズ情報７５Ｂに基づいて特定する（Ｓ１１）。印刷装置１は、特定されたブロックサイズに基づき、所定領域８Ｂにブロック８１〜８３を配置可能か判定する（Ｓ１３）。印刷装置１は、ブロック８１〜８３を所定領域８Ｂに配置できないと判定された場合（Ｓ１３：ＮＯ）、調整処理（Ｓ１５）を実行し、ブロック８１〜８３に含まれる文字列の文字サイズを調整する。この場合、印刷装置１は、ブロック８１〜８３の文字サイズのバランスを維持しつつ、各ブロックのブロックサイズを縮小してブロック８１〜８３を所定領域８Ｂに配置させることができる。
【００７３】
調整方法「ビッグ文字」「フォントサイズ」では、対応する設定サイズ情報が１段階小さく変更されることによって文字サイズが縮小される場合、文字の幅方向と高さ方向との両方向において縮小される。この場合、印刷装置１は、ブロック８１〜８３について、幅方向だけでなく高さ方向のサイズのバランスも維持しつつ、ブロック８１〜８３のサイズを縮小して全体を縮小できる。
【００７４】
ブロック８１〜８３は、複数の文字を含む文字列が改行によって区切られることによって、互いに区別される。この場合、印刷装置１は、改行によって区切られた複数のブロックのバランスを維持しつつ、各ブロックのブロックサイズを縮小して全体を縮小できる。
【００７５】
＜変形例＞
本発明は上記実施形態に限定されず、種々の変更が可能である。上記のメイン処理は、印刷装置１のＣＰＵ７１により実行される場合に限定されない。例えばメイン処理は、印刷装置１に接続される外部端末２９ＡのＣＰＵによって実行されてもよい。この場合、印刷装置１は、外部端末２９Ａの記憶部に記憶されるプログラムを、外部端末２９Ａに接続された非図示のサーバから取得してもよい。
【００７６】
ブロック８１〜８３に含まれる文字の数は、複数に限定されず、１つでもよい。調整情報７５Ａによって規定される調整方法は、「幅調整」「ビッグ文字」「フォントサイズ」に限定されない。例えば、文字サイズの高さ方向のみが調整され、幅方向が調整されない方法が、調整情報７５Ａに更に規定されていてもよい。更に、別の調整方法が調整情報７５Ａに規定されていてもよいし、「幅調整」「ビッグ文字」「フォントサイズ」の何れかが、調整情報７５Ａの調整方法から除外されていてもよい。各調整方法に対応付けられている複数のサイズ情報は、上記実施形態に限定されないことは言うまでもない。例えば、「幅調整」に対応する複数のサイズ情報は、３／１０（３０％）ずつ段階的に変化してもよい。又、例えば「フォントサイズ」に対応する複数のサイズ情報は、１ｐｔずつ段階的に変化してもよい。
【００７７】
ＣＰＵ７１は、基準縮小率が６６．７％である場合において、調整方法「ビッグ文字」の設定サイズ情報「設定ＯＮ」を「設定ＯＦＦ」に変更して文字サイズを縮小し（Ｓ１０１）、更に、「ビッグ文字」の次に優先度が高い調整方法「フォントサイズ」の設定サイズ情報「６４ｐｔ」から、文字サイズが１２．５％縮小されるように、文字列「ＢＩＧ」の文字サイズを変更した（Ｓ１０３）。ここで、文字サイズが１２．５％縮小されるように、文字列「ＢＩＧ」の文字サイズを変更する方法は、例えば図６で示した具体例のように、調整情報７５Ａにおいて設定サイズ情報よりも小さいサイズ情報に対応する文字サイズに変更することによって実行されてもよい。又、例えば、文字サイズが１２．５％縮小されるようなフォントサイズを算出し、このフォントサイズとなるように文字サイズを変更してもよい。この場合のフォントサイズは、調整情報７５Ａの複数のサイズ情報の何れかでなくてもよい。
【００７８】
ＣＰＵ７１は、調整方法「フォントサイズ」によって文字サイズを調整する場合、設定サイズ情報から２段階以上小さいサイズ情報の文字サイズに縮小することによって、縮小率を基準縮小率に近似させた。これに対し、ＣＰＵ７１は、縮小率が基準縮小率となるようなフォントサイズを算出し、このフォントサイズとなるように文字サイズを変更してもよい。
【００７９】
「幅調整」「ビッグ文字」「フォントサイズ」に設定される優先度は、上記実施形態に限定されないことは言うまでもない。又、優先度は、ユーザの設定に応じて変更できるようにしてもよい。
【００８０】
ＣＰＵ７１は、ブロック８１〜８３を所定領域８Ｂに配置できないと判定された場合（Ｓ１３：ＮＯ）、調整処理（Ｓ１５）を実行し、ブロック８１〜８３に含まれる文字列の文字サイズを調整した。これに対し、例えばＣＰＵ７１は、ブロック８１〜８３全体を縮小させる操作が実行された場合、調整処理（Ｓ１５）を実行し、ブロック８１〜８３に含まれる文字列の文字サイズを調整してもよい。
【００８１】
上記実施形態では、所定領域８Ａが幅方向に縮小され、縮小後の所定領域８Ｂにブロック８１〜８３を収めるために処理が実行された。これに対し、所定領域８Ａは高さ方向に縮小されてもよい。この場合、ブロック８１〜８３が高さ方向において所定領域８Ｂに収まらない可能性がある。この場合、基準縮小率は、文字サイズの高さ方向の縮小率に基づいて特定されてもよい。印刷装置１は、ブロック８１〜８３の文字列の文字サイズについて、高さ方向の縮小率が基準縮小率に近似するように、各調整方法によって調整されてもよい。この場合、印刷装置１は、文字サイズを幅方向及び高さ方向において縮小できるので、ブロック８１〜８３が両方向において所定領域に収まるように、文字サイズを変更できる。
【００８２】
改行ボタンの押下により各文字列を改行で区切ることで、ブロック８１〜８３を区別した。これに対し、ＣＰＵ７１は、文字列間にカーソルが配置された状態において改ブロックを指示する入力操作を行うことによって、ブロック８１〜８３を区別してもよい。
【００８３】
＜その他＞
印刷装置１は、本発明の「編集装置」の一例である。調整情報７５Ａ及び設定サイズ情報７５Ｂを記憶したフラッシュメモリ７５は、本発明の「記憶部」の一例である。Ｓ１５の処理を行うＣＰＵ７１は、本発明の「調整手段」の一例である。Ｓ５３、Ｓ５７、Ｓ６１の処理を行うＣＰＵ７１は、本発明の「第１特定手段」の一例である。Ｓ６９の処理を行うＣＰＵ７１は、本発明の「第２特定手段」の一例である。Ｓ４１の処理を行うＣＰＵ７１は、本発明の「変更手段」の一例である。Ｓ１１の処理を行うＣＰＵ７１は、本発明の「特定手段」の一例である。Ｓ１３の処理を行うＣＰＵ７１は、本発明の「判定手段」の一例である。調整方法「幅調整」は、本発明の「第１方法」の一例である。調整方法「ビッグ文字」は、本発明の「第２方法」の一例である。調整方法「フォントサイズ」は、本発明の「第３方法」の一例である。Ｓ１５の処理は、本発明の「調整ステップ」の一例である。Ｓ５３、Ｓ５７、Ｓ６１の処理は、本発明の「第１特定ステップ」の一例である。Ｓ６９の処理は、本発明の「第２特定ステップ」の一例である。Ｓ４１の処理は、本発明の「変更ステップ」の一例である。
【符号の説明】
【００８４】
１        ：印刷装置
８、８Ａ、８Ｂ        ：所定領域
７１      ：ＣＰＵ
７５      ：フラッシュメモリ
７５Ａ    ：調整情報
７５Ｂ    ：設定サイズ情報
【手続補正２】
【補正対象書類名】図面
【補正対象項目名】図４
【補正方法】変更
【補正の内容】
【図４】
2019091982.tif 000013
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図６
【補正方法】変更
【補正の内容】
【図６】
2019091982.tif 000014
【手続補正４】
【補正対象書類名】図面
【補正対象項目名】図９
【補正方法】変更
【補正の内容】
【図９】
2019091982.tif 000015