本発明の実施形態に係る画像形成装置について、図面を参照して詳細に説明する。
本実施形態に係る画像形成装置100は、図1に示すように、制御部110、原稿取得部120、表示部130、操作部140、記憶部150、印刷部160を備える。
制御部110は、画像形成装置100全体の動作を制御する。制御部110は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)を有するマイクロコンピュータにより構成される。制御部110は、CPUがROMに記憶された動作プログラムを読み出してRAM上で実行することにより、画像形成装置100の各部を制御する。
制御部110は、原稿データから集約印刷用の印刷画像データを生成する画像編集部111を有する。また、画像編集部111は、有効画像領域取得部112、有効画像抽出部113、配置処理部117を含む。
有効画像領域取得部112は、原稿データが表す画像(以下、「原稿画像」とも称する)に含まれる、有意な情報が配置されている有効画像領域を取得する。有効画像領域取得部112は、例えば、二値化処理が施された原稿画像を走査し、文字または図形等の有意な情報を描画する有効画素(黒画素)の集合範囲を有効画像領域として検出する。あるいは、有効画像領域取得部112は、あらかじめ指定された無効色の画素を無効画素(白画素)とし、それ以外の画素を有効画素とし、有効画素の集合範囲を有効画像領域として取得してもよい。
有効画像抽出部113は、原稿画像から有効画像領域を含む矩形画像を表す有効画像データを抽出する。有効画像抽出部113は、分割判定部114、分割処理部115、回転処理部116を含む。
分割判定部114は、処理対象の原稿画像が分割可能であるか否かを判定する。分割判定部114は、処理対象の原稿画像内に分割基準線を設定し、この基準直線に重なる有効画像領域がない場合には処理対象の原稿画像が分割可能と判定し、分割基準線上に有効画像領域がある場合には前記処理対象の原稿画像が分割不可と判定する。
分割処理部115は、分割判定部114によって分割可能であると判定された原稿画像を分割基準線に沿って分割する。分割処理部115は、例えば、処理対象の原稿画像の縦方向(図4におけるy軸方向)の中心線が分割基準線として適用される場合、原稿画像が縦方向の中心線に沿って分割された原稿画像をそれぞれ表す2つの原稿データを生成する。
回転処理部116は、処理対象の原稿画像に対して所定角度の回転処理を施す。回転処理部116は、例えば、アフィン変換を用いて座標変換を行うことにより、対象の原稿画像に回転処理を施す。本実施形態において、回転処理部116は、処理対象の原稿画像に対して、時計回り方向に90度の回転処理、または、反時計回り方向に90度の逆回転処理を実行するものとする。
配置処理部117は、有効画像抽出部113により原稿画像から抽出された有効画像を印刷領域に配置して、集約印刷用の印刷画像データを生成する。
原稿取得部120は、原稿を読み取り、原稿データを生成し、生成した原稿データを後述する記憶部150に記憶する。原稿取得部120は、例えば、紙媒体の原稿を光学的に読み取るスキャナにより構成される。なお、原稿取得部120は、外部デバイスなどから原稿データを取得するように構成してもよい。
表示部130は、原稿取得部120により読み取られた原稿画像や集約印刷用に編集された印刷イメージ画像等を表示する。表示部は、例えば、液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイにより構成される。
操作部140は、ユーザからの各種の操作指示や情報入力を受け付ける。操作部は、例えば、集約印刷の実行指示を受け付ける。操作部140は、表示機能と入力機能とを兼ね備えるタッチパネルにより構成される。なお、表示部130をタッチパネル機能を備える液晶ディスプレイで構成することにより、表示部130が操作部を兼ねるようにしてもよい。
記憶部150は、制御部110が画像形成装置100の各部を制御するために必要な種々のデータを記憶する。記憶部120は、例えば、フラシュメモリやHDD(Hard Disc Drive)などの不揮発性の記憶装置により構成される。記憶部150は、原稿記憶部151、処理用原稿記憶部152、有効画像記憶部153を含む。
原稿記憶部151は、原稿取得部120が取得した原稿データを記憶する。
処理用原稿記憶部152は、後述する有効画像抽出処理の処理前または処理途中の原稿データを記憶する。より詳細には、有効画像抽出処理の開始時、処理用原稿記憶部152には、有効画像抽出処理の処理前の原稿データとして、原稿記憶部151に格納された原稿データが移動されて記憶される。また、有効画像抽出処理の実行中、処理用原稿記憶部152には、有効画像抽出処理の処理途中の原稿データとして、分割された原稿データが記憶される。
また、処理用原稿記憶部152は、回転処理テーブルを記憶する。回転処理テーブルは、処理用原稿記憶部152に格納された原稿画像を特定する識別子と、この原稿画像が回転処理済みであるか否かを示す回転フラグとが対応付けられて構成されている。回転処理テーブル内の情報は、処理用原稿記憶部152に格納される原稿データが更新されるたびに更新される。
有効画像記憶部153には、後述する有効画像抽出処理の実行後の画像データ、すなわち、原稿データから抽出された有効画像データが格納される。
また、有効画像記憶部153は、有効画像回転処理テーブルを記憶する。有効画像回転処理テーブルは、有効画像記憶部153に格納された有効画像データを特定する識別子と、この有効画像データが表す有効画像が180度、270度、90度のいずれかの角度で回転されているか否かをそれぞれ示す第1回転フラグ、第2回転フラグ、第3回転フラグが対応付けられて構成されている。有効画像回転処理テーブル内の情報は、有効画像記憶部153に格納される有効画像データが更新されるたびに更新される。
印刷部160は、例えば、画像編集部111により生成された印刷データに基づいて、集約印刷用の印刷画像を印刷用紙等の記録媒体に印刷する。
次に、図2に示すフローチャートを参照しながら、画像形成装置100が実行する集約印刷処理について説明する。集約印刷処理は、原稿取得部120が取得した原稿画像を集約して印刷する処理である。画像形成装置100の制御部110は、操作部140を介してユーザから集約印刷の指示を受け付けたことに応答して集約印刷処理を開始する。
制御部110は、集約印刷処理を開始すると、まず、集約印刷の基データとなる原稿データが取得済みであるか否かを判定する(ステップS101)。より具体的には、制御部110は、記憶部150の原稿記憶部151を参照し、原稿取得部120により取り込まれた原稿データが原稿記憶部151に格納されているか否かに応じて、原稿データが取得済みであるか否かを判定する。
原稿データが取得済みではないと判定した場合(ステップS101;NO)、制御部110は、処理をステップS101に戻し、原稿データが取得されるまで待機する。なお、所定時間が経過しても原稿データを取得できない場合には、制御部110は、集約印刷処理を終了するようにしてもよい。
一方、原稿データが取得済みであると判定した場合(ステップS101;YES)、制御部110は、原稿記憶部151に格納された原稿データを、処理用原稿記憶部152に移動して記憶させ、原稿データのページ数を検知する(ステップS102)。
ステップS102の処理を実行した後、制御部110は、原稿データの1ページ毎に、有効画像抽出処理を実行する(ステップS103)。
ここで、図3に示すフローチャートを参照して、有効画像抽出処理について説明する。制御部110は、有効画像抽出処理を開始すると、まず、原稿画像を分割する基準となる分割基準線を決定する(ステップS201)。制御部110は、例えば、ユーザによりあらかじめ設定されて記憶している、原稿画像内の直線を分割基準線として決定する。以下では、原稿データが表す原稿画像における縦方向(図4におけるy軸方向)の中心線が分割基準線として決定されたものとして説明する。
次に、制御部110は、記憶部150の処理対象記憶部152に格納された原稿画像のいずれか1つを選択する(ステップS202)。
続いて、制御部110(有効画像取得部112)は、選択した処理対象の原稿画像に有効画像領域があるか否かを判定する(ステップS203)。処理対象の原稿画像に有効画像領域がないと判定した場合(ステップS203;NO)、制御部110は、この原稿画像を処理用原稿記憶部152から消去する(ステップS204)。これにより、有効画像領域を含まない、空白領域のみで構成される原稿画像は、処理用原稿記憶部152から削除される。
一方、処理対象の原稿画像に有効画像領域があると判定した場合(ステップS203;YES)、制御部110(分割判定部114)は、処理対象の原稿画像が分割可能であるか否かを判定する(ステップS205)。制御部110(分割判定部114)は、前述したように、処理対象の原稿画像内に分割基準線に跨がる有効画像領域があるか否かに基づいて原稿画像の分割可否を判定する。
処理対象の原稿画像が分割可能であると判定した場合(ステップS205;YES)、制御部110(分割処理部115)は、この原稿画像を分割基準線に基づいて分割する(ステップS206)。このとき、制御部110(分割処理部115)は、分割元の原稿画像を処理用原稿記憶部152から消去し、分割された2つの原稿画像を処理用原稿記憶部152に記憶する。
一方、処理対象の原稿画像が分割不可であると判定した場合(ステップS205;NO)、制御部110は、処理対象の原稿画像に回転処理が施されているか否かを判定する(ステップS207)。制御部110は、例えば、処理用原稿記憶部152に格納されている回転処理テーブルを参照し、処理対象の原稿画像に対応する回転フラグのオン/オフ状態に基づいて、回転処理が施されているか否かを判定すればよい。
処理対象の原稿画像に回転処理が施されていないと判定した場合(ステップS207;NO)、すなわち、回転処理テーブル内の処理対象の原稿画像に対応する回転フラグがオフ状態である場合、制御部110(回転処理部116)は、処理対象の原稿画像に対して、その画像を所定角度回転させる回転処理を実行し、回転処理テーブル内の対応する回転フラグをオン状態にセットする(ステップS208)。
ステップS208において処理対象の原稿画像に回転処理を施した後、制御部110(分割判定部114)は、処理対象の原稿画像が分割可能であるか否かを判定する(ステップS209)。処理対象の原稿画像が分割可能であると判定した場合(ステップS209;YES)、制御部110は、処理をステップS206に進める。一方、処理対象の原稿画像が分割不可であると判定した場合(ステップS209;NO)、すなわち、処理対象の原稿画像が回転処理前後のいずれにおいても分割不可であると判定した場合、制御部110は、回転処理後の原稿画像に逆回転処理を施して、回転処理前の原稿画像(元原稿画像)を生成した後、この原稿画像を有効画像として抽出して有効画像記憶部153に記憶させる(ステップS210)。
ステップS207の処理において、処理対象の原稿画像に回転処理が施されていると判定した場合(ステップS207;YES)、すなわち、回転処理テーブル内の処理対象の原稿画像に対応する回転フラグがオン状態である場合、制御部110は、処理対象の原稿画像に逆回転処理を施して、回転処理前の原稿画像を生成し、回転処理テーブル内の対応する回転フラグをオフ状態にリセットする(ステップS211)。
続いて、制御部110(分割判定部114)は、処理対象の原稿画像が分割可能であるか否かを判定する(ステップS212)。処理対象の原稿画像が分割可能であると判定した場合(ステップS212;YES)、制御部110は、処理をステップS206に進める。
一方、処理対象の原稿画像が分割不可であると判定した場合(ステップS212;NO)、制御部110は、この原稿画像に逆回転処理を施し、有効画像データとして有効画像記憶部153に格納する(ステップS213)。
ステップS204,S206,S213のいずれかの処理を実行した後、制御部110は、全ての原稿画像が処理済みであるか否かを判定する(ステップS214)。制御部110は、処理用原稿記憶部152を参照し、格納されている原稿データの有無に応じて、全ての原稿画像が処理済みであるか否かを判定する。処理途中の原稿画像があると判定した場合(ステップS214;NO)、制御部110は、処理をステップS202に戻す。一方、全ての原稿画像が処理済みであると判定した場合(ステップS214;YES)、すなわち、元原稿画像からすべての有効画像を抽出したと判定した場合、制御部110は、有効画像抽出処理を終了する。
続いて、図4〜図13を参照して、有効画像抽出処理の具体例を説明する。ここで、図4に示す原稿画像50に対応する原稿データが、原稿取得部120により取得され、原稿記憶部151に格納されているものとする。また、原稿画像の縦方向の中心線が、分割基準線としてあらかじめ決定されているものとする。
原稿画像50は、図4に示すように、ハッチングが施された4つの有効画像領域51〜54を含んで構成されている。菱形状の有効画像領域52および円形状の有効画像領域54は、原稿画像50の縦方向(y軸方向)の中心線CLの左側(図面に向かって左側)の領域に配置されている。また、正方形状の有効画像領域51および三角形状の有効画像領域54は、原稿画像50の中心線CLの右側(図面に向かって右側)の領域に配置されている。
有効画像抽出処理のステップS202において、原稿画像50が選択されると、原稿画像50は、有効画像領域51〜54を有し(ステップS203;YES)、分割可能であるため(ステップS205;YES)、図5(A),(B)に示す2つの原稿画像50A,50Bに分割される(ステップS206)。このとき、原稿画像50を表す原稿データは処理用原稿記憶部152から消去され、原稿画像50A,50Bを表す原稿データが処理用原稿記憶部152に格納される。
原稿画像50Aは、図5(A)に示すように、中心線CLの右側の領域に位置する有効画像領域52と、中心線CLに跨がる有効画像領域54とを有している。また、原稿画像50Bは、図5(B)に示すように、中心線CLに跨がる有効画像領域51と、中心線CLの右側の領域に位置する有効画像領域53とを有している。
有効画像抽出処理のステップS202において、原稿画像50Aが選択されると、原稿画像50Aは、有効画像領域52,54を有し(ステップS203;YES)、分割不可であり(ステップS205;NO)、回転処理が施されていないため(ステップS207;NO)、図6(A)に示すように、時計回りに90度の回転処理が施される(ステップS208)。同様に、有効画像抽出処理のステップS202において、原稿画像50Bが選択されると、原稿画像50Bは、有効画像領域51,53を有し(ステップS203;YES)、分割不可であり(ステップS205;NO)、回転処理が施されていないため(ステップS207;NO)、図6(B)に示すように、時計回りに90度の回転処理が施される(ステップS208)。
回転処理が施された原稿画像50A’は、図6(A)に示すように、中心線CLの左側の領域に位置する有効画像領域54と、中心線CLの右側の領域に位置する有効画像領域52とを有している。また、回転処理が施された原稿画像50B’は、図6(B)に示すように、中心線CLの左側の領域に位置する有効画像領域53と、中心線CLの右側の領域に位置する有効画像領域51とを有している。
有効画像抽出処理のステップS208において回転処理が施された原稿画像50A’は、分割可能であるため(ステップS209;YES)、図7(A),(B)に示す2つの原稿画像50AA’,50AB’にさらに分割される(ステップS206)。同様に、有効画像抽出処理のステップS208において回転処理が施された原稿画像50B’は、分割可能であるため(ステップS209;YES)、図7(C),(D)に示すように、2つの原稿画像50BA’,50BB’にさらに分割される(ステップS206)。
原稿画像50AA’は、図7(A)に示すように、中心線CLの左側の領域に位置する有効画像領域54を有している。原稿画像50AB’は、図7(B)に示すように、中心線CLに跨がる有効画像領域52を有している。原稿画像50BA’は、図7(C)に示すように、中心線CLの右側の領域に位置する有効画像領域53を有している。原稿画像50BB’は、図7(D)に示すように、中心線CLに跨がる有効画像領域51を有している。
有効画像抽出処理のステップS202において、原稿画像50AA’が選択されると、原稿画像50AA’は、有効画像領域54を有し(ステップS203;YES)、分割可能であるため(ステップS205;YES)、図8(A),(B)に示す2つの原稿画像50AAA’,50AAB’にさらに分割される(ステップS206)。また、有効画像抽出処理のステップS202において、原稿画像50AB’が選択されると、原稿画像50AB’は、有効画像領域52を有し(ステップS203;YES)、分割不可であり(ステップS205;NO)、既に回転処理が施されているため(ステップS207;YES)、図8(C)に示すように、逆回転処理が施される(ステップS211)。また、有効画像抽出処理のステップS202において原稿画像50BA’が選択されると、原稿画像50BA’は、有効画像領域53を有し(ステップS203;YES)、分割可能であるため(ステップS205;YES)、図8(D),(E)に示すように、2つの原稿画像50BAA’,50BAB’にさらに分割される(ステップS206)。また、有効画像抽出処理のステップS202において、原稿画像50BB’が選択されると、原稿画像50BB’は、有効画像領域51を有し(ステップS203;YES)、分割不可であり(ステップS205;NO)、既に回転処理が施されているため(ステップS207;YES)、図8(F)に示すように、逆回転処理が施される(ステップS211)。
原稿画像50AAA’は、図8(A)に示すように、中心線CLに跨がる有効画像領域54を有している。また、原稿画像50AAB’は、図8(B)に示すように、空白領域のみで構成され、有効画像領域を有していない。逆回転処理が施された原稿画像50ABは、図8(C)に示すように、中心線CLの右側の領域に有効画像領域52を有している。原稿画像50BAA’は、図8(D)に示すように、空白領域のみで構成され、有効画像領域を有していない。また、原稿画像50BAB’は、図8(E)に示すように、中心線CLの右側の領域に有効画像領域53を有している。逆回転処理が施された原稿画像50BBは、図8(F)に示すように、中心線CLに跨がる有効画像領域51を有している。
有効画像抽出処理のステップS202において、原稿画像50AAA’が選択されると、原稿画像50AAA’は、有効画像領域54を有し(ステップS203;YES)、分割不可であり(ステップS205;NO)、既に回転処理が施されているため(ステップS207;YES)、図9(A)に示すように、逆回転処理が施される(ステップS211)。また、有効画像抽出処理のステップS202において、原稿画像50AAB’が選択されると、原稿画像50AAB’は、有効画像領域を有していないため(ステップS203;NO)、その原稿データが処理用原稿記憶部152から消去される(ステップS204)。
有効画像抽出処理のステップS211において逆回転処理が施された原稿画像50ABは、分割可能であるため(ステップS212;YES)、図9(B),(C)に示す2つの原稿画像50ABA,50ABBにさらに分割される(ステップS206)。
有効画像抽出処理のステップS202において、原稿画像50BAA’が選択されると、原稿画像50BAA’は、有効画像領域を有していないため(ステップS203;NO)、その原稿データが処理用原稿記憶部152から消去される(ステップS204)。また、有効画像抽出処理のステップS202において、原稿画像50BAB’が選択されると、原稿画像50BAB’は、有効画像領域53を有し(ステップS203;YES)、分割可能であるため(ステップS205;YES)、図9(D),(E)に示す2つの原稿画像50BABA’,50BABB’にさらに分割される(ステップS206)。
有効画像抽出処理のステップS211において逆回転処理が施された原稿画像50BBは、分割不可であるため(ステップS212;NO)、図9(F)に示す有効画像55Aとして抽出される(ステップS213)。このとき、有効画像55A(原稿画像50BB)を表す原稿データは、処理用原稿記憶部152から消去され、有効画像記憶部153に格納される。
原稿画像50AAAは、図9(A)に示すように、中心線CLに跨がる有効画像領域54を有している。原稿画像50ABAは、図9(B)に示すように、空白領域のみで構成されている。また、原稿画像50ABBは、図9(C)に示すように、中心線CLに跨がる有効画像領域52を有している。原稿画像50BABA’は、図9(D)に示すように、空白領域のみで構成されている。また、原稿画像50BABB’は、図9(E)に示すように、中心線CLに跨がる有効画像領域53を有している。
有効画像抽出処理のステップS211において逆回転処理が施された原稿画像50AAAは、分割不可であるため(ステップS212;NO)、図10(A)に示す有効画像55Bとして抽出される(ステップS213)。このとき、有効画像55B(原稿画像50AAA)を表す原稿データは、処理用原稿記憶部152から消去され、有効画像記憶部153に格納される。
有効画像抽出処理のステップS202において、原稿画像50BAAが選択されると、原稿画像50BAAは、有効画像領域を有していないため(ステップS203;NO)、その原稿データが処理用原稿記憶部152から消去される(ステップS204)。また、有効画像抽出処理のステップS202において、原稿画像50ABBが選択されると、原稿画像50ABBは、有効画像領域52を有し(ステップS203;YES)、分割不可であり(ステップS205;NO)、回転処理が施されていないため(ステップS207;NO)、図10(B)に示すように、回転処理が施される(ステップS208)。
有効画像抽出処理のステップS202において、原稿画像50ABA’が選択されると、原稿画像50ABA’は、有効画像領域を有していないため(ステップS203;NO)、その原稿データが処理用原稿記憶部152から消去される(ステップS204)。また、有効画像抽出処理のステップS202において、原稿画像50BABB’が選択されると、原稿画像50BABB’は、有効画像領域53を有し(ステップS203;YES)、分割不可であり(ステップS205;NO)、回転処理が施されているため(ステップS207;YES)、図10(C)に示すように、逆回転処理が施される(ステップS211)。
回転処理が施された原稿画像50ABB’は、図10(B)に示すように、中心線CLに跨がる有効画像領域52を有している。また、逆回転処理が施された原稿画像50BABBは、中心線CLの右側の領域に位置する有効画像領域53を有している。
有効画像抽出処理のステップS208において回転処理が施された原稿画像50ABB’は、分割不可であるため(ステップS209;NO)、図11(B)に示すように、逆回転処理が施され、有効画像55Cとして抽出される(ステップS210)。
有効画像抽出処理のステップS211において逆回転処理が施された原稿画像50BABBは、分割可能であるため(ステップS212;YES)、図11(C),(D)に示す2つの原稿画像50BABBA,50BABBBにさらに分割される(ステップS206)。
原稿画像50BABBAは、図11(C)に示すように、空白領域のみで構成されている。また、原稿画像50BABBBは、図11(D)に示すように、中心線CLに跨がる有効画像領域53を有している。
有効画像抽出処理のステップS202において、原稿画像BABBAが選択されると、原稿画像BABBAは、有効画像領域を有していないため(ステップS203;NO)、その原稿データが処理用原稿記憶部152から消去される(ステップS204)。また、有効画像抽出処理のステップS202において、原稿画像50BABBBが選択されると、原稿画像50BABBBは、有効画像領域53を有し(ステップS203;YES)、分割不可であり(ステップS205;NO)、回転処理が施されていないため(ステップS207;NO)、図12(C)に示すように、回転処理が施される(ステップS208)。
回転処理が施された原稿画像50BABBB’は、図12(C)に示すように、中心線CLに跨がる有効画像領域53を有している。
有効画像抽出処理のステップS208において回転処理が施された原稿画像50BABBB’は、分割不可であるため(ステップS209;NO)、図13(C)に示すように、逆回転処理が施され、有効画像55Dとして抽出される(ステップS210)。
このように、図4に示す原稿画像50に対して有効画像抽出処理を実行することにより、図13(A)〜(D)に示す4つの有効画像55A〜55D(原稿画像50AAA,50ABB,50BABBB,50BB)が抽出される。
図2に示す集約印刷処理のフローチャートの説明に戻り、ステップS103の有効画像抽出処理を実行した後、制御部110は、全ての原稿データに対して有効画像抽出処理が実行されたか否かを判定する(ステップS104)。制御部110は、原稿記憶部151に格納された原稿データの有無に応じて、全ての原稿データに対して有効画像抽出処理が実行されたか否かを判定する。
全ての原稿データに対して有効画像抽出処理が実行されていない、すなわち、有効画像抽出処理が実行されていない原稿画像があると判定した場合(ステップS104;NO)、制御部110は、処理をステップS103に戻す。
一方、全ての原稿データに対して有効画像抽出処理が実行されたと判定した場合(ステップS104;YES)、制御部110は、配置処理を実行する(ステップS105)。配置処理は、原稿データから抽出された有効画像を印刷画像に配置し、集約印刷用の印刷画像データを生成する。より詳細には、配置処理では、印刷画像に配置しようとする処理対象の有効画像が印刷画像の領域内に収まらない場合、処理対象の有効画像に段階的に回転処理を施して、処理対象の有効画像の形状および処理対象の有効画像に含まれる有効画像領域の位置を変化させることにより、有効画像を印刷画像に集約して配置する。
ここで、図14に示すフローチャートを参照して、配置処理について説明する。制御部110(配置処理部117)は、配置処理を開始すると、まず、有効画像記憶部153に記憶された有効画像データが表す有効画像を印刷画像に配置するにあたり、その配置順を予め設定されている基準に従って決定する(ステップS301)。基準は、例えば、有効サイズの大きさの昇順、降順等がある。この場合、有効サイズは、面積、縦方向の長さ、横方向の長さ、この画像を内包する矩形の面積等任意である。制御部110は、例えば、有効画像をサイズが大きいものから順に印刷画像に配置するように決定する。
次に、制御部110は、ステップS301において決定された配置順に従って、有効画像記憶部153に記憶された有効画像データから1つの有効画像データを選択する(ステップS302)。
続いて、制御部110は、印刷画像に配置済みの有効画像の右側に空白領域があるか否かを判定する(ステップS303)。ここで、ステップS302において選択された処理対象の有効画像が印刷画像に配置する最初の有効画像であり、印刷画像の領域内に配置済みの有効画像がない場合には、ステップS303では必然的にYESと判定される。
配置済みの有効画像の右側に空白領域があると判定した場合(ステップS303;YES)、制御部110は、ステップS302において選択した処理対象の有効画像を、暫定的に、配置済みの有効画像の右側に隣接して配置する(ステップS304)。なお、処理対象の有効画像が印刷画像に配置する最初の有効画像である場合には、制御部110は、印刷画像の左上端を起点として、有効画像を配置する。
次に、制御部110は、ステップS304において配置した有効画像が印刷画像の領域内に収まっているか否かを判定する(ステップS305)。制御部110は、例えば、印刷画像の右端からはみ出した有効画像の領域を検出することにより、有効画像が印刷画像の領域内に収まっているか否かを判定する。
有効画像が印刷画像の領域内に収まっていると判定した場合(ステップS305;YES)、制御部110は、印刷画像の領域内における処理対象の有効画像の配置を確定する(ステップS318)。このとき、制御部110は、印刷画像における配置が確定した有効画像を有効画像記憶部153から消去する。
一方、ステップS304において配置した有効画像が印刷画像の領域内に収まっていないと判定した場合(ステップS305;NO)、制御部110は、処理対象の有効画像が印刷画像の領域内に収まるように、処理対象の有効画像をはみ出した方向と逆方向にはみ出した距離だけずらし、既に配置済みの有効画像に処理対象の有効画像を部分的に重ね合わせる(ステップS306)。制御部110は、例えば、処理対象の有効画像を、印刷画像の右端からはみ出した距離だけ左方にずらして、既に配置済みの有効画像に重ね合わせる。
次に、制御部110は、ステップS306の処理において既に配置された有効画像と処理対象の有効画像とを重ね合わせた領域(以下、「重ね合わせ領域」ともいう)内において、既に配置済みの有効画像の有効画像領域と処理対象の有効画像の有効画像領域とが重なり合うか否かを判定する(ステップS307)。重ね合わせ領域内において、既に配置済みの有効画像と処理対象の有効画像のそれぞれの有効画像領域が重なり合わないと判定した場合(ステップS307;NO)、処理対象の有効画像を既に配置された有効画像に重ねて配置しても、重ね合わせ領域においてそれぞれの有効画像領域は干渉することなく確保されるため、制御部110は、印刷画像における処理対象の有効画像の配置を確定する(ステップS318)。
重ね合わせ領域内において、既に配置済みの有効画像と処理対象の有効画像のそれぞれの有効画像領域が重なり合うと判定した場合(ステップS307;YES)、制御部110は、処理対象の有効画像が回転可能であるか否かを判定する(ステップS308)。本実施の形態では、制御部110は、処理対象の有効画像データに段階的に回転処理を施して、処理対象の有効画像を、180度、270度、90度のいずれかの角度で回転させた状態に変化させて、印刷画像への配置を試みる。
制御部110は、有効画像記憶部153に記憶された有効画像回転テーブル内の処理対象の有効画像データに対応する第1〜第3回転処理フラグの状態を参照して、処理対象の有効画像に未だ3回の回転処理が施されていない場合には、回転可能であると判定する。一方、処理対象の有効画像に既に3回の回転処理が施されている場合には、回転不可であると判定する。
処理対象の有効画像が回転可能であると判定した場合(ステップS308;YES)、制御部110は、有効画像回転処理を実行する(ステップS309)。有効画像回転処理は、有効画像が180度、270度、90度のいずれかの角度で回転された状態になるように、有効画像データに回転処理を施す。
ここで、図15に示すフローチャートを参照して、有効画像回転処理について説明する。制御部110は、有効画像回転処理を開始すると、まず、有効画像記憶部153に記憶された有効画像回転処理テーブル内の第1回転フラグを参照して、処理対象の有効画像が180度回転されているか否かを判定する(ステップS401)。処理対象の有効画像が180度回転されていないと判定した場合(ステップS401;NO)、制御部110は、有効画像データに時計回り方向に180度の回転処理を施す(ステップS402)。また、制御部110は、有効画像回転処理テーブル内の処理対象の有効画像データに対応する第1回転フラグをオン状態にセットする。
例えば、図16(A)に示す有効画像55Aに180度の回転処理が施された場合、その縦横比は維持され、図16(B)に示すように、180度回転された有効画像55A’は、縦長の画像である。一方、有効画像領域51は、180度の回転処理の前後で有効画像55Aの右上から有効画像55A’の左下へと変位する。
処理対象の有効画像が180度回転されていると判定した場合(ステップS401;YES)、制御部110は、有効画像記憶部153に記憶された有効画像回転処理テーブル内の処理対象の有効画像データに対応する第2回転フラグを参照して、処理対象の有効画像が270度回転されているか否かを判定する(ステップS403)。処理対象の有効画像が270度回転されていないと判定した場合(ステップS403;NO)、制御部110は、有効画像データに時計回り方向に90度の回転処理を施す(ステップS404)。また、制御部110は、有効画像回転処理テーブル内の第2回転フラグをオン状態にセットする。
例えば、図16(B)に示す180度回転された有効画像55A’にさらに90度の回転処理が施されると、図16(C)に示すように、当初の有効画像55Aが270度回転された有効画像55A’’となる。有効画像55A’’は、90度の回転処理の前後で、その縦横比が入れ替わり、縦長の画像から横長の画像に変化する。また、有効画像領域51は、90度の回転処理の前後で、有効画像55A’の左下から有効画像55A’’の左上へと変位する。
処理対象の有効画像が270度回転されていると判定した場合(ステップS403;YES)、制御部110は、有効画像データに時計回り方向に180度の回転処理を施す(ステップS405)。また、制御部110は、有効画像回転処理テーブル内の第3回転フラグをオン状態にセットする。
例えば、図16(C)に示す270度回転された有効画像55A’’にさらに180度の回転処理が施されると、図13(D)に示すように、当初の有効画像55Aが90度(実際には、450度)回転された有効画像55A’’’となる。有効画像55A’’’は、180度の回転処理の前後で、その縦横比が維持され、横長の画像のままである。また、有効画像領域51は、180度の回転処理の前後で、有効画像55A’’の左上から有効画像55A’’’の右下へと変位する。
ステップS402、S404、S405のいずれかの処理を実行した後、制御部110は、有効画像回転処理を終了する。
図14に示す配置処理のフローチャートの説明に戻り、ステップS309の有効画像回転処理を実行した後、制御部110は、処理をステップS302に戻し、回転処理が施された有効画像を、再度、印刷画像に配置する。
ステップS303において配置済みの有効画像の右側に空白領域がないと判定した場合(ステップS303;NO)、または、ステップS308において処理対象の有効画像が回転不可であると判定した場合(ステップS308;NO)、制御部110は、配置済みの有効画像の下側に空白領域があるか否かを判定する(ステップS310)。なお、ステップS308において処理対象の有効画像が回転不可であると判定した場合、制御部110は、時計回り方向に90度回転された処理対象の有効画像データに反時計回り方向に90度の逆回転処理を施し、当初の状態(全く回転されていない状態)に戻す。また、制御部110は、有効画像回転テーブル内の処理対象の有効画像データに対応する第1〜第3回転フラグをオフ状態にリセットする。
配置済みの有効画像の下側に空白領域がないと判定した場合(ステップS310;NO)、制御部110は、次ページに印刷画像を変更し(ステップS317)、処理をステップS303に戻す。
一方、配置済みの有効画像の下側に空白領域があると判定した場合(ステップS310;YES)、制御部110は、処理対象の有効画像を配置済みの有効画像の下側に隣接して配置し(ステップS311)、処理対象の有効画像が印刷画像の領域内に収まっているか否かを判定する(ステップS312)。制御部110は、例えば、印刷画像の下端からはみ出した有効画像の領域を検出することにより、有効画像が印刷画像の領域内に収まっているか否かを判定する。有効画像が印刷画像の領域内に収まっていると判定した場合(ステップS312;YES)、制御部110は、印刷画像の領域内における処理対象の有効画像の配置を確定する(ステップS318)。
一方、ステップS311において配置した有効画像が印刷画像の領域内に収まっていないと判定した場合(ステップS312;NO)、制御部110は、処理対象の有効画像が印刷画像の領域内に収まるように、処理対象の有効画像をはみ出した方向と逆方向にはみ出した距離だけずらし、既に配置済みの有効画像に処理対象の有効画像を部分的に重ね合わせる(ステップS313)。制御部110は、例えば、処理対象の有効画像を、印刷画像の下端からはみ出した距離だけ上方にずらして、既に配置済みの有効画像に重ね合わせる。
次に、制御部110は、ステップS313の処理において既に配置された有効画像と処理対象の有効画像との重ね合わせ領域内において、既に配置済みの有効画像の有効画像領域と処理対象の有効画像の有効画像領域とが重なり合うか否かを判定する(ステップS314)。重ね合わせ領域内において、既に配置済みの有効画像と処理対象の有効画像のそれぞれの有効画像領域が重なり合わないと判定した場合(ステップS314;NO)、処理対象の有効画像を既に配置された有効画像に重ねて配置しても、重ね合わせ領域においてそれぞれの有効画像領域は干渉することなく確保されるため、制御部110は、印刷画像における処理対象の有効画像の配置を確定する(ステップS318)。
重ね合わせ領域内において、既に配置済みの有効画像と処理対象の有効画像のそれぞれの有効画像領域が重なり合うと判定した場合(ステップS314;YES)、制御部110は、処理対象の有効画像が回転可能であるか否かを判定する(ステップS315)。
制御部110は、有効画像記憶部153に記憶された有効画像回転テーブル内の処理対象の有効画像データに対応する第1〜第3回転処理フラグの状態を参照して、処理対象の有効画像に未だ3回の回転処理が施されていない場合には、回転可能であると判定する。一方、処理対象の有効画像に既に3回の回転処理が施されている場合には、回転不可であると判定する。
処理対象の有効画像が回転可能であると判定した場合(ステップS315;YES)、制御部110は、有効画像回転処理を実行する(ステップS316)。上述したように、有効画像回転処理は、有効画像が180度、270度、90度のいずれかの角度で回転された状態になるように、有効画像データに回転処理を施す。
処理対象の有効画像が回転不可であると判定した場合(ステップS315;YES)、制御部110は、印刷画像を次ページに変更し(ステップS317)、処理をステップS303に戻し、処理対象の有効画像を次ページの印刷画像に配置する。なお、現ページの印刷画像における処理対象の有効画像の配置を中断し、配置順を変更するなどして後回しにした処理対象の有効画像を次ページ以降の印刷画像に配置するようにしてもよい。
ステップS318の処理を実行した後、制御部110は、全ての有効画像が印刷画像に配置されたか否かを判定する(ステップS319)。制御部110は、有効画像記憶部153に格納された有効画像データの有無に応じて、全ての有効画像が印刷画像に配置されたか否かを判定する。
全ての有効画像が印刷画像に配置されていないと判定した場合(ステップS319;NO)、制御部110は、処理をステップS302に戻し、有効画像の印刷画像への配置を続行する。一方、全ての有効画像が印刷画像に配置されたと判定した場合(ステップS319;YES)、制御部110は、配置処理を終了する。
続いて、図17〜図20を参照して、配置処理の具体例を説明する。ここで、図17(B)に示す有効画像55A〜55Dを図17(A)に示す印刷画像60に配置するものとする。また、配置処理のステップS301において、有効画像55A,55C,55B,55Dの順に配置するように配置順が決定されているものとする。
図18に示すように、配置順が最も早い有効画像55Aは、印刷画像60の左上端を起点に配置され(ステップS303;YES、ステップS304)、印刷画像60の領域内に収まっているため(ステップS305;YES)、その配置が確定される(ステップS318)。
また、配置順が2番目の有効画像55Cは、既に配置済みの有効画像55Aの右側の空白領域に配置され(ステップS303;YES、ステップS304)、印刷画像60の領域内に収まっているため(ステップS305;YES)、その配置が確定される(ステップS318)。
配置順が3番目の有効画像55Bは、既に配置済みの有効画像55Cの右側の空白領域に配置されるが(ステップS303;YES、ステップS304)、その一部が印刷画像60の右端からはみ出しており、印刷画像60の領域内に収まっていない(ステップS305;NO)。このため、有効画像55Bは、印刷画像60の右端からはみ出した距離だけ左方にずらされ、既に配置済みの有効画像55Cに重ね合わされる(ステップS306)。
図19に示すように、有効画像55Cと有効画像55Bとの重ね合わせ領域56において、有効画像55Cの有効画像領域52と有効画像55Bの有効画像領域54とが部分的に重なり合う(ステップS307;YES)。このため、有効画像55Bは、有効画像回転処理(ステップS309)において、180度の回転処理が施される(ステップS401;YES、ステップS402)。180度の回転処理が施された有効画像55Bは、再度、ステップS303〜S305の処理を経由して、有効画像55Cに重ね合わされる(ステップS306)。
図20に示すように、有効画像55Cと有効画像55Bとの重ね合わせ領域56において、有効画像55Cの有効画像領域52と有効画像55Bの有効画像領域54とが重なり合わないため(ステップS307;NO)、有効画像55Bは、有効画像55Cに重ね合わされた状態で印刷画像60における配置が確定される(ステップS318)。
配置順が最も遅い有効画像55Dは、既に配置済みの有効画像55Bの下側の空白領域に配置され(ステップS310;YES、ステップS311)、印刷画像60の領域内に収まっているため(ステップS312;YES)、その配置が確定される(ステップS318)。
このようにして、配置処理の実行により、有効画像55A〜55Dが印刷画像60に配置され、集約印刷用の印刷画像データが生成される。
図2に示す集約印刷処理のフローチャートの説明に戻り、ステップS105の配置処理を実行した後、制御部110は、配置処理において生成された集約印刷用の印刷画像データを印刷部160に出力し、印刷画像データに基づく印刷画像を印刷用紙などに印刷させる印刷処理を実行する(ステップS106)。
制御部110は、ステップS106の印刷処理を実行した後、集約印刷処理を終了する。
これまで説明したように、本実施の形態によれば、分割基準線上に有効画像領域がないことを条件に、原稿画像を分割するとともに空白領域のみで構成される原稿画像を削除する処理を繰り返すことにより、原稿画像から有効画像領域を含む有効画像を抽出する。また、一旦分割不可と判定された原稿画像に対して回転処理を施すことにより、分割の可否を再判定する。そのため、原稿画像から有効画像を効率的に抽出することが可能である。
また、本実施の形態によれば、原稿画像から抽出した有効画像を印刷画像に配置する際、各々の有効画像領域が重なり合わないことを条件に、既に配置済みの有効画像と処理対象の有効画像とを重ね合わせて印刷画像に配置する。また、一旦重ね合わせができないと判定された有効画像に対して回転処理を段階的に施すことにより、重ね合わせの可否を再判定する。そのため、印刷画像に有効画像を効率的に配置することが可能である。
さらに、本実施の形態によれば、原稿画像から抽出した有効画像に縮小処理を施すことなく印刷画像に配置するため、印刷画像が出力された印刷用紙において文字潰れや画像欠損などが生じることを抑制することができる。また、本実施の形態によれば、ユーザは、原稿を画像形成装置にセットして集約印刷の実行を指示するのみであり、原稿の印刷範囲を指定する必要がないため、ユーザの負担を軽減することができる。
なお、本発明は、上記の実施の形態に限定されず、種々の変形および応用が可能である。上記の実施の形態は、次のように変形されてもよい。
例えば、原稿画像の分割の可否を判定するにあたり、有効画像領域以外の領域、すなわち、空白領域のみを通る直線を検出し、検出した直線のいずれか1つを選択するなどして、処理対象となる原稿画像ごとに異なる分割基準線を用いてもよい。これにより、原稿画像をさらに細分化することができ、原稿画像から有効画像を効率的に抽出することができる。
また、印刷画像の領域内における有効画像の配置のしかたは任意である。例えば、印刷画像の領域内に有効画像を配置する際、有効画像が印刷画像の領域からはみ出したとしても、はみ出した部分に有効画像が含まれない場合には、印刷画像の領域からはみ出した状態でその配置を確定するようにしてもよい。また、重ね合わせ領域内において、既に配置済みの有効画像の有効画像領域と処理対象の有効画像の有効画像領域とが重ならない場合であっても、その有効画像領域同士が所定の距離以上離間していない場合には、重ね合わせをしないようにしてもよい。また、重ね合わせ領域内に既に配置済みの有効画像と処理対象の有効画像のいずれかの有効画像領域が含まれる場合には、重ね合わせをしないようにしてもよい。これにより、ユーザによる判読性をさらに向上させることができる。
さらに、図21に示すように、各有効画像55A〜55Dを、有効画像領域が印刷画像の各端からはみ出さない程度、かつ、有効画像領域51〜54の各々が重ならない程度に、印刷画像に対して上方や左方などにずらして配置するようにしてもよい。これにより、集約効率をさらに高めることができる。
さらに、本願発明は上記実施の形態で示した構成を全て備える必要はなく、画像形成装置100の制御部110が以下の処理を実行する機能(手段)と処理工程を備えることにより達成されうる。
i)原稿画像に含まれる有効画像領域の位置に基づいて、分割原稿画像が分割可能であるか否かを判定する処理(例えば、ステップS202の処理)。
ii)分割可能であると判定された原稿画像を複数の原稿画像に分割し、それぞれ前記原稿画像に設定する処理(例えば、ステップS206の処理)。
iii)分割不可であると判定された原稿画像に回転処理を施し、前記原稿画像に設定する処理(例えば、S208,S209の処理)。
iv)分割された原稿画像に有効画像領域が含まれない場合には、当該原稿画像を処理対象から除外し(例えば、ステップS204の処理)、回転処理が施された原稿画像が分割不可であると判定された場合には、当該原稿画像を有効画像として抽出する処理(例えば、ステップS213の処理)。
また、本願発明は、コンピュータに上述の処理を実行させるコンピュータプログラムによっても実現される。
また、本発明に係る装置と方法は、専用のシステムによらず、通常のコンピュータシステムを用いても実現可能である。例えば、コンピュータに、上記動作、処理、工程を実行するためのプログラムを、フレキシブルディスク、CD−ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disk)、MO(Magnet Optical disk)などのコンピュータ読み取り可能な記録媒体に記憶して配布し、これをコンピュータシステムにインストールすることにより、上述の処理を実行する電力供給システムを構成しても良い。
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを記憶しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
また、OS(オペレーティングシステム)が機能の一部を提供する場合には、OSが提供する機能以外の機能を提供する部分のみを提供するようにしてもよい。
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この発明を説明するためのものであり、本発明の範囲を限定するものではない。すなわち、本発明の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、この発明の範囲内とみなされる。
また、上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下に限定されない。
(付記1)
原稿画像から有効画像を抽出する有効画像抽出部と、
処理対象の原稿画像に含まれる複数の有効画素からなる有効画像領域の位置に基づいて、当該処理対象の原稿画像が分割可能であるか否かを判定する分割判定部と、
前記分割判定部により分割可能であると判定された原稿画像を複数の原稿画像に分割する分割処理部と、
前記分割判定部により分割不可であると判定された原稿画像に回転処理を施す回転処理部と、を備え、
前記有効画像抽出部は、前記分割判定部により分割された原稿画像に前記有効画像領域が含まれない場合には、当該原稿画像を消去し、前記回転処理部により回転処理が施された原稿画像が前記分割判定部により分割不可であると判定された場合には、当該原稿画像を前記有効画像として抽出する、
ことを特徴とする画像形成装置。
(付記2)
前記分割判定部は、前記処理対象の原稿画像内に基準直線を設定し、前記基準直線上に有効画像領域がない場合には前記処理対象の原稿画像が分割可能と判定する一方、前記基準直線上に有効画像領域がある場合には前記処理対象の原稿画像が分割不可と判定し、
前記分割処理部は、前記分割判定部により分割可能であると判定された原稿画像を前記基準直線に沿って分割する、
ことを特徴とする付記1に記載の画像形成装置。
(付記3)
前記有効画像抽出部により抽出された有効画像を印刷画像の領域内に配置する配置処理部をさらに備え、
前記配置処理部は、
少なくとも1つの有効画像が配置された印刷画像にさらに別の有効画像を配置する際、当該別の有効画像を配置済みの有効画像の右側あるいは下側に隣接して配置し、
前記別の有効画像が前記印刷画像の領域からはみ出した場合には、当該別の有効画像を、前記印刷画像の領域内に収まるようにはみ出した方向とは逆方向にずらし、前記配置済みの有効画像に重ね合わせて配置する、
ことを特徴とする付記1または2に記載の画像形成装置。
(付記4)
前記配置処理部は、
前記配置済みの有効画像と前記別の有効画像とが重なり合う領域内において、各々に含まれる有効画像領域が重ならない場合には、前記別の有効画像の配置を確定し、各々に含まれる有効画像領域が重なる場合には、前記別の有効画像を、複数の所定の回転角度のいずれかで回転させ、再度、前記配置済みの有効画像に隣接して配置する、
ことを特徴とする付記3に記載の画像形成装置。
(付記5)
原稿画像に含まれる有効画像領域の位置に基づいて、当該原稿画像が分割可能であるか否かを判定し、
分割可能であると判定された原稿画像を複数の原稿画像に分割し、それぞれ前記原稿画像に設定し、
分割不可であると判定された原稿画像に回転処理を施し、前記原稿画像に設定し、
分割された原稿画像に有効画像領域が含まれない場合には、当該原稿画像を処理対象から除外し、回転処理が施された原稿画像が分割不可であると判定された場合には、当該原稿画像を有効画像として抽出する、
ことを特徴とする画像形成方法。
(付記6)
コンピュータに、
原稿画像に含まれる有効画像領域の位置に基づいて、当該原稿画像が分割可能であるか否かを判定する処理と、
分割可能であると判定された原稿画像を複数の原稿画像に分割し、それぞれ前記原稿画像に設定する処理と、
分割不可であると判定された原稿画像に回転処理を施し、前記原稿画像に設定する処理と、
分割された原稿画像に有効画像領域が含まれない場合には、当該原稿画像を処理対象から除外し、回転処理が施された原稿画像が分割不可であると判定された場合には、当該原稿画像を有効画像として抽出する処理と、
を実行させる。