(57)【要約】【課題】  印刷データ内のコンテンツの文字コードに応じて、印刷データ内の後処理の設定の位置によらず、右開きを基準とした体裁で印刷物に対する後処理を行うことのできる仕組みを提供する。【解決手段】  ＭＦＰ１０１は、携帯端末又はＰＣなどの情報処理装置から印刷データを受信する。受信する印刷データ内のコンテンツとして所定の文字コードが含まれるか否かを判定する（Ｓ７０５）。判定に応じて、印刷物の右端を基準とした位置に前記後処理を行うよう設定を変更して印刷処理を行う（Ｓ７０７〜Ｓ７１０）。【選択図】  図７
2018001728.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置から送信された印刷データを受信する受信手段と、
受信手段が受信した前記印刷データに基づきシート上に印刷を行う印刷手段と、
前記印刷手段が印刷したシートに後処理を実行する後処理手段と、
前記印刷データ内に所定の文字コードが含まれ、且つ前記印刷データに前記後処理を実行する指示が含まれている場合、前記印刷データに所定の文字コードが含まれていることに応じた所定の位置に後処理を実行するよう前記後処理手段を制御する制御手段と、
を有することを特徴とする印刷装置。
【請求項２】
印刷装置であって、
情報処理装置から送信された印刷データを受信する受信手段と、
受信手段が受信した前記印刷データに基づきシート上に印刷を行う印刷手段と、
前記印刷データ内に所定の文字コードが含まれ、且つ前記印刷データに後処理を実行する指示が含まれている場合、前記印刷データに所定の文字コードが含まれていることに応じた所定の位置に後処理を実行するよう前記印刷装置に接続される後処理装置を制御する制御手段と、
を有することを特徴とする印刷装置。
【請求項３】
前記所定の位置は、前記印刷データに基づき印刷したシートの右端であることを特徴とする請求項１又は２に記載の印刷装置。
【請求項４】
前記印刷データは、前記印刷データに基づき印刷したシート上に後処理を実行する指示、及び前記後処理の位置を指定する指示を設定可能であり、
前記制御手段は、所定の文字コードが含まれ、且つ前記印刷データに前記後処理を実行する指示が含まれている場合、前記印刷データに前記印刷データに基づき印刷したシートの左端に後処理を実行する指示が含まれていても、前記印刷データに基づき印刷したシートの右端に後処理を実行するよう制御することを特徴とする請求項１又は２に記載の印刷装置。
【請求項５】
前記受信手段が受信する印刷データ内に所定の文字コードが含まれているか否かを判定する判定手段を更に有し、
前記印刷データは、前記印刷データを生成するソースとなったデータファイルの名称を含む印刷データであり、
前記判定手段は、前記印刷データに含まれる前記名称を指し示す文字列に所定の文字コードが含まれている場合に、印刷データに所定の文字コードが含まれていると判定することを特徴とする請求項１乃至４のいずれか１項に記載の印刷装置。
【請求項６】
前記印刷データは、更に前記印刷データの生成に関連したアプリケーションの名称を含む印刷データであり、
前記判定手段は、前記印刷データに含まれる前記名称を指し示す文字列に所定の文字コードが含まれている場合に、印刷データに所定の文字コードが含まれていると判定することを特徴とする請求項５に記載の印刷装置。
【請求項７】
前記判定手段は、更に、前記印刷データに含まれる印刷すべきコンテンツの文字列を取得し、当該文字列に所定の文字コードが含まれている場合に、印刷データ内に所定の文字コードが含まれていると判定することを特徴とする請求項５又は６に記載の印刷装置。
【請求項８】
前記所定の文字コードは、文書を右から左に横書きする書字方向の文書で使用される文字セットに対応する文字コード空間の文字コードであることを特徴とする請求項１乃至７のいずれか１項に記載の印刷装置。
【請求項９】
前記印刷データ内に前記後処理の位置を指定する指示がなされていない場合における後処理の実行位置を記憶する記憶手段を更に有し、
前記所定の文字コードは、文書を右から左に横書きする書字方向の文書で使用される文字セットに対応する第１の文字コード空間の文字コード及び、文書を上から下に縦書きする書字方向の文書で使用される文字セットに対応する第２の文字コード空間の文字コードを含み、
前記制御手段は、前記印刷データ内の所定の文字コードが含まれる場合であって、且つ当該所定の文字コードが前記第１の文字コード空間の文字コードである場合は、前記所定の位置へ後処理を実行するよう制御し、前記印刷データ内に所定の文字コードが含まれる場合であっても、当該所定の文字コードが前記第２の文字コード空間の文字コードである場合は、前記制御に代えて、前記記憶手段に記憶された実行位置に応じた位置に後処理を実行するよう制御することを特徴とする請求項１乃至７のいずれか１項に記載の印刷装置。
【請求項１０】
前記所定の位置に後処理を行うか、前記印刷データに含まれている前記後処理の位置を指定する指示に基づく位置に後処理を行うかをユーザに問い合わせる問い合わせ手段を更に有することを特徴とする請求項１乃至８のいずれか１項に記載の印刷装置。
【請求項１１】
前記所定の位置に後処理を実行する前に、印刷される印刷物の体裁をプレビュー表示する表示手段を更に有することを特徴とする請求項１乃至１０のいずれか１項に記載の印刷装置。
【請求項１２】
前記印刷データは、前記後処理の設定として、前記印刷データに基づいて印刷されたシートを綴じる綴じ処理を実行する指示、前記印刷されたシートにパンチ穴を形成するパンチ処理を実行する指示、前記印刷されたシートに折り加工を加える折り処理を実行する指示を設定可能であることを特徴とする請求項１乃至１１のいずれか１項に記載の印刷装置。
【請求項１３】
印刷装置の制御方法であって、
情報処理装置から送信された印刷データを受信する受信工程と、
受信工程で受信した前記印刷データに基づきシート上に印刷を行う印刷工程と、
前記印刷工程で印刷したシートに後処理を実行する後処理工程と、
前記印刷データ内に所定の文字コードが含まれ、且つ前記印刷データに前記後処理を実行する指示が含まれている場合、前記印刷データに所定の文字コードが含まれていることに応じた所定の位置に後処理を実行するよう前記後処理工程を制御する制御工程と、
を有することを特徴とする印刷装置の制御方法。
【請求項１４】
請求項１３に記載の印刷装置の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷データを受信して処理する印刷装置に関するものである。
【背景技術】
【０００２】
従来、ネットワークに接続され、ネットワークを介して情報処理装置から印刷データを受信して印刷を行うことができる印刷装置がある。また、個々の印刷装置を使用するために設計されたプリンタドライバ（又はプリントアプリケーション）を使用して印刷装置に送信する印刷データを生成することが従来から知られている。
【０００３】
また、近年、個々の印刷装置を使用するために設計されたプリンタドライバ（又はプリントアプリケーション）を介さずに印刷データを生成することが知られている（例えば特許文献１）。例えば、情報処理装置のオペレーティングシステム（ＯＳ）の機能として提供される汎用のプリントサービスやクラウド上のプリントサーバなどが提供する汎用のプリントサービスによって印刷データを生成し、印刷装置に送信することが知られている。このような汎用のプリントサービスでは、印刷装置に印刷を実行させるためのネットワークプロトコルが実装されており、このプロトコルに従い印刷装置と通信を行うことで印刷を実現できる。
【０００４】
また、汎用のプリントサービスを提供するプリントサーバや情報処理装置は、様々な種類の印刷装置に対応することが望まれる。ここで、印刷装置ごとに異なる機能や仕様に対応するため、汎用のプリントサービスが印刷装置の構成情報を管理することが知られている。
【０００５】
また、印刷装置がシートに対して後処理を行う場合に、ユーザによって指定された綴じ処理やパンチ処理などの後処理を行うことが知られている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−１８７５７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
汎用のプリントサービスによって印刷データを生成する場合、印刷装置の構成情報に基づいて、印刷データが生成される。しかしながら、汎用のプリントサービスでは様々な印刷装置に対する設定を行うために、共通化された設定画面を介して印刷の設定を行うため、必ずしもユーザが意図している印刷設定になるとは限らない。
【０００８】
例えば、汎用のプリントサービスでは、印刷物が左開きとなるような印刷データを生成する場合がある。これらの汎用のプリントサービスでは、印刷するコンテンツが、欧米圏の言語で使用される書字方向である左横書きで書かれているとみなし、左横書きに適した出力方式である左開きとなるように印刷データを生成するものがある。ここで書字方向とは、筆記時に文字を書き進める方向を表すものである。また、左横書きとは、文字を左から右に向かって横に文字を書き進め、文字列が行末に達すると、１行改行し、左下から次行以降を書き進める書字方向を示している。
【０００９】
一方、一律に印刷物が左開きとなると、ユーザの意図しない印刷物となる場合がある。例えば、印刷物を右開きにしたいケースがある。アラビア語やヘブライ語などで記載された文書は、右横書きの書字方向で記載されている。右横書きとは、文字を右から左に向かって横に並べ、文字列が行末に達すると、１行改行し、右下から次行以降を書き進める書字方向を示している。このように、右横書きで構成された文書を印刷する場合は、右横書きに適した出力方式である右開きで出力しないとユーザの意図と異なる印刷物が出力されてしまう。
【００１０】
本発明は上記の問題点に鑑みなされたものであり、印刷データ内の文字コードに基づいて、より適切な体裁で印刷物に対する後処理を行うことのできる仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記の目的を達成するために本発明の印刷装置は、情報処理装置から送信された印刷データを受信する受信手段と、受信手段が受信した前記印刷データに基づきシート上に印刷を行う印刷手段と、前記印刷手段が印刷したシートに後処理を実行する後処理手段と、前記印刷データ内に所定の文字コードが含まれ、且つ前記印刷データに前記後処理を実行する指示が含まれている場合、前記印刷データに所定の文字コードが含まれていることに応じた所定の位置に後処理を実行するよう前記後処理手段を制御する制御手段と、を有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、印刷データ内の文字コードに基づいて、より適切な体裁で印刷物に対する後処理を行うことのできることができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態における印刷システムの構成図である。
【図２】本発明の実施形態におけるＭＦＰのハードウェア構成図である。
【図３】本発明の実施形態におけるＭＦＰと情報処理装置の通信を説明する図である。
【図４】ＭＦＰが情報処理装置に送信する構成情報の一例である。
【図５】印刷設定と印刷データを説明する図である。
【図６】本発明の実施形態におけるＭＦＰのソフトウェア構成図である。
【図７】第１の実施形態における印刷制御を説明するフローチャートである。
【図８】第１の実施形態における印刷制御を説明するフローチャートである。
【図９】第１の実施形態における印刷制御を説明するフローチャートである。
【図１０】文字コードのバイト表現と対応する文字の関係を説明する図である。
【図１１】本発明の実施形態における印刷制御を説明するフローチャートである。
【図１２】右開きを基準とした属性情報への更新を説明する図である。
【図１３】第２の実施形態における印刷制御を説明するフローチャートである。
【図１４】第３の実施形態における印刷制御を説明するフローチャートである。
【図１５】第４の実施形態における印刷制御を説明するフローチャートである。
【図１６】第４の実施形態における印刷制御を説明するフローチャートである。
【図１７】第４の実施形態における印刷制御を説明するフローチャートである。
【図１８】操作部１１６の表示部に表示される画面を示す図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施の形態を詳しく説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１５】
＜第１の実施形態＞
図１は、本実施形態に係る印刷システムを示すブロック図である。ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１００上には、ＭＦＰ（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）１０１、ＡＰ（アクセスポイント）１０２が互いに通信可能に接続されている。本実施形態では印刷装置の一例としてＭＦＰ１０１を説明する。また、情報処理装置の一例として、携帯端末１０３〜１０４、及び、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）１０５を説明する。携帯端末１０３〜１０４、及び、ＰＣ１０５などの情報処理装置はＡＰ１０２を介してネットワーク（ＬＡＮ１００）上のＭＦＰ１０１と互いに通信することができる。なお、ＰＣ１０５は、ＬＡＮケーブルによってＬＡＮ１００に有線で接続されていてもよい。なお、本実施形態では、印刷システムの一例として上記の構成を説明するが、これに限定されるものではない。１つ以上の情報処理装置と印刷装置とがネットワークを介して通信可能に接続されていればよい。
【００１６】
まず、ＭＦＰ１０１について説明する。ＭＦＰ１０１は原稿上の画像を読み取る読取機能、シートに画像を印刷する印刷機能を有する。ＭＦＰ１０１は、ネットワークを介して受信した印刷データに基づく印刷処理を実行することができる。
【００１７】
図２は、ＭＦＰ１０１のハードウェア構成を示すブロック図である。ＭＦＰ１０１はシート上の画像を読み取る読取機能、シートに画像を印刷する印刷機能を有する。他にもＭＦＰ１０１は、画像を外部の情報処理装置に送信するファイル送信機能などを有している。
【００１８】
なお、本実施形態では印刷装置の一例としてＭＦＰ１０１を説明するが、これに限定されるものではない。例えば、読取機能を有さないＳＦＰ（Ｓｉｎｇｌｅ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）等の印刷装置であってもよい。
【００１９】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１１を含む制御部１１０は、ＭＦＰ１０１全体の動作を制御する。ＣＰＵ１１１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１２又はストレージ１１４に記憶された制御プログラムを読み出して、印刷制御や読取制御などの各種制御を行う。ＲＯＭ１１２は、ＣＰＵ１１１で実行可能な制御プログラムを格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１３は、ＣＰＵ１１１の主記憶メモリであり、ワークエリア又は各種制御プログラムの命令を展開するための一時記憶領域として用いられる。ストレージ１１４は、印刷データ、画像データ、各種プログラム、及び各種設定情報を記憶する。本実施形態ではストレージ１１４としてＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の補助記憶装置を想定しているが、ＨＤＤの代わりにＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などの不揮発性メモリを用いるようにしても良い。
【００２０】
なお、本実施形態のＭＦＰ１０１では、１つのＣＰＵ１１１が１つのメモリ（ＲＡＭ１１３）を用いて後述するフローチャートに示す各処理を実行するものとするが、他の様態であっても構わない。例えば複数のＣＰＵ、ＲＡＭ、ＲＯＭ、及びストレージを協働させて後述するフローチャートに示す各処理を実行することもできる。また、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）やＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等のハードウェア回路を用いて一部の処理を実行するようにしてもよい。
【００２１】
操作部インタフェース（Ｉ／Ｆ）１１５は、操作部１１６と制御部１１０を接続する。操作部１１６には、タッチパネル機能を有する液晶表示部や各種ハードキーなどが備えられ、情報を表示する表示部やユーザの指示を受け付ける受付部として機能する。
【００２２】
読取部Ｉ／Ｆ１１７は、読取部１１８と制御部１１０を接続する。読取部１１８は原稿を読み取って、読取画像を生成する。なお、生成された読取画像はストレージ１１４又はＲＡＭ１１３に格納されるものとする。読取部１１８によって生成された読取画像は情報処理装置に送信されたり、シート上への画像の印刷に用いられたりする。
【００２３】
印刷部Ｉ／Ｆ１１９は、印刷部１２０と制御部１１０を接続する。印刷データを解析して生成された印刷画像は印刷部Ｉ／Ｆ１１９を介して制御部１１０から印刷部１２０に転送される。印刷部１２０は制御部１１０を介して制御コマンド及び印刷画像を受信し、当該印刷画像に基づいて給紙カセット（不図示）から給送されたシートに画像を印刷する。なお、印刷部１２０の印刷方式は、電子写真方式であってもよいし、インクジェット方式であってもよい。また、熱転写方式などその他の印刷方式を適用することもできる。
【００２４】
また、制御部１１０は、通信部Ｉ／Ｆ１２３を介してＬＡＮ１００に接続される。通信部Ｉ／Ｆ１２３は、ＬＡＮ１００上の情報処理装置に画像や情報を送信したり、ＬＡＮ１００上の情報処理装置から印刷データや情報を受信したりする。
【００２５】
画像処理部１２４は、ネットワークを介して受信した印刷データを展開して印刷に用いる画像を生成するＲＩＰ（Ｒａｓｔｅｒ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｏｒ）の機能を備えている。また、画像処理部１２４は、印刷データを展開して得られた画像の解像度変換や補正処理を行うこともできる。なお、本実施形態では、画像処理部１２４がハードウェア回路（ＡＳＩＣ又はＦＰＧＡなど）で実現されることを想定しているが、これに限定されるものではない。例えば、ＭＦＰ１０１が画像処理用途向けのプロセッサーを更に備え、当該画像処理用途向けのプロセッサーが画像処理プログラムを実行することにより画像処理や、印刷データの展開処理を実現してもよい。この場合、画像処理用のプロセッサーとＣＰＵ１１１が協働して後述するフローチャートを実現するものとする。更には、画像処理を行うためのプログラムをＣＰＵ１１１が実行し、画像処理や印刷データの展開処理を行うように構成することもできる。また、これらのいずれかの組み合わせにより画像処理を行うようにしてもよい。
【００２６】
シート処理部Ｉ／Ｆ１２１は、制御部１１０とシート処理部１２２を接続する。シート処理部１２２はＣＰＵ１１１からの制御コマンドを受信し、その制御コマンドに従って印刷部１２０により印刷されたシートに後処理を施す。例えば、複数のシートを揃える、シートにパンチ穴を開ける、複数のシートに折り加工を行う、複数のシートを綴じる、などの後処理を実行する。また、シート処理部１２２が備える後処理の機能や後処理の能力は、予め（例えば、ＭＦＰ１０１の起動時など）シート処理部Ｉ／Ｆ１２１を介して制御部１１０に通知され、ストレージ１１４又はＲＡＭ１１３に格納される。
【００２７】
次に、情報処理装置とＭＦＰ１０１の情報のやり取りについて図３を用いて説明する。図３は、ＭＦＰ１０１が情報処理装置から印刷データを受信する一連のシーケンスを説明するための図である。まず、携帯端末１０３〜１０４、及び、ＰＣ１０５などの情報処理装置は、プリンタを検索するためのパケットをＬＡＮ１００上にブロードキャストする（３０１）。ＭＦＰ１０１は、印刷装置を検索するためのパケットを受信すると、パケットを送信した情報処理装置に対し、ＭＦＰ１０１が持つ構成情報（能力情報とも呼ぶ）を返信する（３０２）。この構成情報は、例えば、テキストデータなどで記述されている。構成情報のテキストデータには、印刷装置の個々の能力を表すキーワードが予め定められている。具体的な構成情報としては、サポートする用紙サイズ、両面印刷機能の有無、Ｎｕｐ機能の有無、実行可能な後処理の種類や実行可能な後処理の位置など、ＭＦＰ１０１がサポートする機能の一覧が記述されている。情報処理装置は、受信したテキストデータに記述されているキーワードを使って、サポートする用紙サイズ、両面印刷の有無、Ｎｕｐ機能の有無、実行可能な後処理の種類などに関するＭＦＰの能力情報を登録することができる（３０３）。図４は、ＭＦＰ１０１が情報処理装置に返信する構成情報の一部を例示するものであり、ここでは、後処理に関する構成情報を抜粋して示している。ＭＦＰ１０１は、後処理を行わずに印刷したシートを出力すること（３：ｎｏｎｅ）ができることを通知する。また、印刷したシートを綴じて出力することができることや、シートにパンチ穴を開けることができることを、テキストデータで通知する。また、シートに折り加工を行って出力することができることを、テキストデータで通知する。また、各々の後処理の詳細設定についてもテキストデータで通知する。
【００２８】
本実施形態では、ＭＦＰ１０１のシート処理部１２２が、印刷されたシートのコーナーの１ヵ所又は１辺の２ヶ所を綴じることができるものとする。従って、実行可能な綴じ処理の情報として、少なくとも図４の４、２０―２３、及び２８−３１を通知している。また、シート処理部１２２は、印刷されたシートの１辺に２穴のパンチ穴を形成することができるものとする。従って、実行可能なパンチ処理として、少なくとも図４の５及び７４−７７を通知している。更に、シート処理部１２２は、印刷されたシートに対して山折りと谷折りで一回ずつ折り加工を行うＺ折りを行うことができるものとする。従って、実行可能な折り処理として、少なくとも図４の１０及び１０１〜１０３を通知している。
【００２９】
ユーザは、事前の登録処理（図３の３０１乃至３０３）により登録された印刷装置に対して印刷を要求することができる。情報処理装置が備えるプリントサービスは、ユーザ操作により印刷に使用する印刷装置の指定を受け付けると、ユーザにより指定された印刷装置に対応する能力情報を参照する。また、参照した能力情報に基づいて印刷属性を設定するための設定画面を情報処理装置の表示部（不図示）に表示する（３０４）。ユーザは設定画面に対する操作を入力部（不図示）を介して行い、印刷属性の設定を行う。情報処理装置は、設定画面を介して印刷開始の指示を受け付けると、印刷データを生成する（３０５）。情報処理装置は、生成した印刷データをＭＦＰ１０１に送信する（３０６）。
【００３０】
続いて、図３の３０５で説明した情報処理装置における印刷属性の設定と印刷データの生成の詳細について図５を用いて説明する。図５（ａ）は、印刷属性を設定するための設定画面の一例を示している。ユーザは図５（ａ）の５０１を選択して印刷に使用するシートのサイズを設定することができる。
【００３１】
また、ユーザは図５（ａ）の５１１を選択して印刷されたシートを綴じる設定を行うことができる。５１１が選択されると、不図示のドロップダウンリストが表示され、ユーザは、ドロップダウンリストの中から、「１ヵ所綴じ」、「２ヶ所綴じ」、「なし」を選択することができる。「１ヵ所綴じ」の項目が選択されると、シートのコーナーを綴じる設定となる。「２ヶ所綴じ」の項目が選択されると、シートの辺の２ヶ所を綴じる設定となる。なお、ＭＦＰ１０１の備える能力によっては、シートの辺の３ヶ所を綴じる設定などを選択できるようにしてもよい。また、ユーザは図５（ａ）のチェックボックス５１２を選択して印刷されたシートにパンチ処理を行うか否かを設定することができる。
【００３２】
また、ユーザは、図５（ａ）のチェックボックス５１３を選択して印刷されたシートに折り処理を行うか否かを設定することができる。
【００３３】
次に、情報処理装置が備える汎用のプリントサービスが生成する印刷データについて説明する。
【００３４】
これらの汎用のプリントサービスの中には、印刷物のコンテンツが、左横書きとなる書字方向で書かれているとみなして、左横書きに適した出力方式である左開きとなるように印刷データを生成するものがある。
【００３５】
一方、一律に印刷物が左開きとなると、ユーザの意図しない印刷物となる場合がある。例えば、ユーザは印刷物を右開きにしたいケースがある。具体的には、アラビア語やヘブライ語などで記載された文書は、右横書きの筆記方法で記載されている。右横書きとは、文字を右から左に向かって横に並べ、文字列が行末に達すると、１行改行し、右下から次行以降を書き進める筆記方法である。このように、右横書きで構成された文書を印刷する場合は、右横書きに適した出力方式である、右開きで出力しないと、ユーザの意図と異なる印刷物が出力されてしまう。
【００３６】
即ち、ユーザが右横書きで構成された文書を印刷する場合であっても、左横書きで文書を作成する欧米圏を主なサービス提供地域として設計されたプリントサービスでは、左開きを前提とした印刷データが生成されてしまう場合がある。例えば、ユーザが右横書きで構成された文書を印刷する場合に、ユーザが印刷属性として１ヵ所綴じを設定した場合を考える。この場合、ユーザは右横書きの文書に適した綴じ位置である右上コーナーを綴じた印刷物を意図しているにも関わらず、印刷物の左上コーナーを綴じた印刷物が出力されるという課題がある。
【００３７】
具体例について図５（ｂ）を用いて説明する。図５（ｂ）は印刷設定例と、当該印刷設定に基づいて生成される印刷データを例示するものである。印刷設定例１は、設定画面を介してＡ４のシートにポートレートの画像を印刷し、印刷したシートの１ヵ所を綴じる設定を例示する。また、印刷データ例１は、印刷設定例１に示す設定がなされた場合に生成される印刷データの例である。ここで、本実施形態で想定している汎用のプリントサービスは、図５（ａ）の画面に示すようにユーザから１ヵ所綴じであることの指定は受け付けているが、綴じ処理を行うべき綴じ位置については明示的に受け付けていない。汎用のプリントサービスは、左開きを前提とした印刷物を所望しているとみなして、図５（ｂ）の各印刷データ例１に示すようにシートの左上のコーナーを綴じることを設定した印刷データを生成する。また、印刷データには、プリントサービスに印刷を依頼したアプリケーションの名称や、印刷すべきデータファイルの名称などに基づいて、ジョブ名やファイル名の属性が設定される。
【００３８】
ここで、アラビア語・ヘブライ語のように右横書きで記載された文書を左開き前提で印刷する場合を考える。この場合、ユーザが印刷物中の文字などのオブジェクトを閲覧する視線の方向（右から左）と印刷物をめくっていく方向（左から右）が一致しないため、ユーザにとって違和感のある印刷物となってしまう。
【００３９】
汎用のプリントサービスは、綴じ処理と同様に、印刷設定例２に示すパンチの設定がなされた場合にも、同様に左開きを前提として、シートの左辺に２穴のパンチ処理を行うことを設定した印刷データを生成する。なお、汎用のプリントサービスは図４に示すＭＦＰの構成情報の中から左辺に実行することのできるパンチ処理としてｐｕｎｃｈ−ｄｕａｌ−ｌｅｆｔを選択して設定している。また、印刷設定例３に示す折りの設定がなされた場合にも、同様に左開きを前提として、シートの後端側をＺ折りする印刷データを生成する。パンチ処理及び折り処理についても、右横書きで記載された文書の場合に、左開き前提の位置に処理を行ってしまうと、ユーザにとって違和感のある印刷物となってしまう。
【００４０】
これを鑑みて、本実施形態のＭＦＰ１０１は、外部装置から受信した印刷データ内に含まれる文字情報に基づいて、印刷データの出力処理に関する属性を適切に決定する制御を行う。具体的には、外部装置で生成された印刷データに左開きを前提とした属性が設定されていたとしても、印刷データ内に含まれる文字情報が右横書きの文書に用いられる文字であると判断した場合は、右開きを前提とした印刷物を出力する制御を行う。以降、印刷装置が実行する制御を具体的に説明する。
【００４１】
図６は本実施例におけるＭＦＰ１０１が備える制御モジュールを示すブロック図である。図６に示す６０１〜６０８、６１２、及び、６１３は、図２に示すＣＰＵ１１１が主体になって実行するソフトウェアモジュールである。また、ＲＩＰ制御部６０９は、画像処理部１２４が主体となって実行するハードウェアモジュールである。また、エンジン制御部６１１は、印刷部１２０内のコントローラ（不図示）が主体となって実行する制御モジュールである。
【００４２】
モバイルジョブ生成部６０１はＩＰＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｉｎｔｉｎｇ  Ｐｒｏｔｏｃｏｌ）を利用したネットワーク経由での印刷データを受信して、印刷ジョブを生成するモジュールである。モバイルジョブ生成部６０１は、携帯端末１０３、１０４、又は、ＰＣ１０５などの外部装置からＩＰＰのプロトコルに沿った印刷データを受信すると、データ受信制御部６０２に受信した印刷データを書きこむ。また、モバイルジョブ生成部６０１は、印刷のステータスを管理するためのモバイル印刷ジョブを生成し、ジョブ制御部６０３に登録し、印刷処理を要求する。また、モバイルジョブ生成部６０１は、受信した印刷データが所定のプリントサービスで生成されたものであるか否かを判断し、後述するジョブ属性保存部に記憶させる。
【００４３】
印刷ジョブ生成部６１３は、ＭＦＰ１０１用に設計されたプリンタドライバ（又はプリントアプリケーション）で生成された印刷データをネットワーク経由で受信して、印刷ジョブを生成する。また、印刷ジョブ生成部は、ＬＰＲ（Ｌｉｎｅ  ＰＲｉｎｔｅｒ  ｄａｅｍｏｎ）プロトコルを利用したネットワーク経由での印刷データを受信して、印刷ジョブを生成する。印刷データを受信した印刷ジョブ生成部６１３は、データ受信制御部６０２に受信した印刷データを書きこむとともに、ジョブ制御部６０３に生成した印刷ジョブを登録し、印刷処理を要求する。
【００４４】
データ受信制御部６０２はモバイルジョブ生成部６０１や印刷ジョブ生成部６１３によって受信した印刷データを管理するためのモジュールであり、印刷ジョブごとに対応する印刷データを記憶する。
【００４５】
次に印刷処理の実行について説明する。ジョブ制御部６０３は登録されている印刷ジョブの実行を管理する。ジョブ制御部６０３は、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）解析部６０８に登録された印刷ジョブの印刷データの解析処理を指示する。ＰＤＬ解析部６０８は、当該印刷ジョブに対応する印刷データをデータ受信制御部６０２から受け取り、印刷データを解析し、ページデータとページに関する印刷属性を生成する。生成したページデータは、ページ制御部６０５によって管理される。ページに関する印刷属性はページ属性保存部６０７によって管理される。ページ属性保存部６０７はＰＤＬ解析部６０８が生成したページごとの印刷属性をジョブＩＤ及びページＩＤと関連付けて保持する。例えば、用紙サイズ、用紙タイプ、綴じ代などの情報がページに関する印刷属性に該当する。本実施形態では、綴じ代とは印刷物をめくる際や印刷物に後処理を行う際に基準となるシートの一端（上端、下端、右端、左端のいずれか）を示す用語であるものとする。
【００４６】
ジョブ属性保存部６０４は印刷ジョブに関する印刷属性を管理する。ジョブ属性保存部は、モバイルジョブ生成部６０１又は印刷ジョブ生成部６１３から印刷データから印刷ジョブを生成する際に得られたジョブ名称、ファイル名称などの印刷属性を印刷ジョブに対応付けて記憶する。また、ＰＤＬ解析部６０８が印刷データを解析して取得した、印刷物に対して実行する後処理の印刷属性や、両面印刷の設定などの印刷属性を印刷ジョブに対応付けて記憶する。また、印刷ジョブに関する印刷属性として、印刷データ内のテキストオブジェクトに関する情報などを記憶することもできる。これらの印刷属性は、印刷ジョブの生成時に印刷ジョブに付与したジョブＩＤと紐付けて管理される。
【００４７】
本実施形態では、ページ属性保存部６０７が管理するページに関する印刷属性とジョブ属性保存部６０４が管理する印刷ジョブに関する印刷属性の両方を合わせて印刷属性と呼ぶものとする。
【００４８】
ジョブ制御部６０３は、印刷ジョブが所定のプリントサービスにより生成された印刷ジョブであると識別した場合に限り、判定部６１２に１文字分の文字コードが所定の文字コード空間に含まれるかの判定を依頼する。判定部６１２は、１文字分の文字コードが所定の文字コード空間に含まれるか判定し、当該判定結果をジョブ制御部６０３に通知する。ジョブ制御部６０３は、判定部６１２の判定により、右横書きで使用される文字が含まれると判定された場合は、右開きが前提となるようジョブ属性情報を更新する処理を行う。具体的な判定方法や更新方法については後述のフローチャートで説明する。
【００４９】
これらの判定及び更新の処理はプリンタドライバやＬＰＲプトロコルを介して受信した印刷データに対しては行わない。また、モバイルジョブ生成部６０１で受信した印刷データであっても、後処理の位置をユーザが指定できるプリントサービスで生成された印刷データであると特定できた場合は、これらの処理を行わないようにする。
【００５０】
即ち、ＭＦＰ１０１は、左開きを前提した印刷データを生成する所定のプリントサービスで生成された印刷データを受信した場合に、判定部６１２による判定及び判定結果に基づくジョブ属性の更新を行う。
【００５１】
ページ制御部６０５はＲＩＰ制御部６０９のＲＩＰ処理、印刷制御部６１０の印刷制御処理を制御する。ＲＩＰ制御部６０９は、ページ制御部からの指示に従ってＰＤＬ解析部６０８で解析されたページデータを受けとって画像処理部１２４と協働して印刷画像を作成する。生成した印刷画像は、ページ保存部で管理される。印刷制御部６１０はページ保存部６０６から印刷画像を取得し、Ｃ（シアン）、Ｍ（マゼンタ）、Ｙ（イエロー）、Ｋ（ブラック）に色分解してエンジン制御部６１１に転送する。また、印刷制御部６１０は、ページ属性保存部６０７及びジョブ属性保存部６０４からジョブ属性及びページ属性情報を取得する。取得した情報に基づいて印刷に使用するシートのサイズ、タイプ、シートを給紙する向き、及び印刷画像をシートに印刷する際の画像の向きを決定し、適切なシートを不図示の給紙カセットから給送するよう制御する。エンジン制御部６１１は、印刷部１２０を制御して、受信したＣＭＹＫの色データに基づいたシートへの印刷を行わせる。
【００５２】
次に、前述した判定部６１２による判定方法及びジョブ制御部６０３による更新処理の制御について図７乃至図９、及び、図１１のフローチャートを用いて説明する。図７乃至図９、及び、図１１は、ＭＦＰ１０１が外部装置から印刷データを受信した際の制御を説明するためのフローチャートである。図７乃至図９、及び、図１１のフローチャートに示す各動作（ステップ）は、ＣＰＵ１１１がＲＯＭ１１２又はストレージ１１４に記憶された各制御モジュールを実現するための制御プログラムをＲＡＭ１１３に読み出し、実行することにより実現される。なお、フローチャートで示す一部の処理は、ＣＰＵ１１１により実行される各モジュールを実現するための制御プログラムと、制御部１１０内の各インタフェース及び制御部１１０に接続された各部とが適宜協働して実現しているものとする。
【００５３】
Ｓ７０１では、ＣＰＵ１１１は、受信した印刷データの生成元が所定のプリントサービスであるか否かを判断する処理を行う。ＣＰＵ１１１は、印刷データを受信する際のプロトコルがＩＰＰでない場合は、所定のタイプのプリントサービスでないと判断し、処理をＳ７０８に進める。具体的には、ＣＰＵ１１１は、印刷データを受け付ける際のポート番号が所定のポート番号（例えば、６３１番ポート）である場合に、印刷データを受信した際のプロトコルがＩＰＰであると判断する。
【００５４】
一方、印刷データを受信した際のプロトコルがＩＰＰの場合は、受信した印刷データ内の情報に基づいて、印刷データの生成元を判断する。例えば、ＣＰＵ１１１は、印刷データを受信する際のＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）ヘッダに含まれるＵｓｅｒ−ａｇｅｎｔ情報に基づいて生成元のプリントサービスが所定のプリントサービスであるか否かを判断する。所定のプリントサービスであると判断すると、処理をＳ７０２に進め、所定のプリントサービスでないと判断すると、処理をＳ７０８に進める。
【００５５】
Ｓ７０２では、ＣＰＵ１１１は、受信した印刷データに基づいてモバイル印刷ジョブを生成する。また、ＣＰＵ１１１は、受信した印刷データに基づいてジョブ属性をジョブ属性保存部６０４に保存し、受信した印刷データに基づいてページ属性をページ属性保存部６０７に保存する。一方、Ｓ７０８では、ＣＰＵ１１１は、受信した印刷データに基づいて印刷ジョブを生成する。また、ＣＰＵ１１１は、受信した印刷データに基づいてジョブ属性をジョブ属性保存部６０４に保存し、受信した印刷データに基づいてページ属性をページ属性保存部６０７に保存する。
【００５６】
なお、本実施形態では、印刷データの生成元が所定のタイプのプリントサービスであるか否かを判定する際に、フォーマット情報や受信に使用したプロトコルの種類を用いる場合を例示したがこれに限定されるものではない。例えば、生成元が特定のプリントサービス且つ特定のバージョンの場合に所定のタイプのプリントサービスであると決定するようにしてもよい。この処理により、一律に左開きを前提とした印刷ジョブを生成するプリントサービスから印刷データを受信した場合にのみ、Ｓ７０３乃至Ｓ７０７の制御を行わせることができる。
【００５７】
Ｓ７０３では、ＣＰＵ１１１は、Ｓ７０２で生成した印刷ジョブの印刷属性として含まれるジョブ名の文字列を取得する。Ｓ７０４では、ＣＰＵ１１１は、Ｓ７０１で生成した印刷ジョブの印刷属性に含まれるファイル名の文字列を取得する。
【００５８】
Ｓ７０５では、ＣＰＵ１１１は、Ｓ７０３及びＳ７０４で取得した文字列の判定処理を行う。判定処理については前述した判定部６１２のモジュールが中心となって行う処理である。処理の詳細については、後述のフローチャートで説明する。なお、判定処理において、右開きへ変更が必要であると判定された場合に、ＲＡＭ１１３に記憶された右開きフラグがＴＲＵＥに書き替えられるものとする。
【００５９】
Ｓ７０６では、ＣＰＵ１１１は、右開きフラグがＴＲＵＥであるか否かを判断する。右開きフラグがＴＲＵＥの場合は、処理をＳ７０７に進め、右開きフラグがＴＲＵＥでない場合（ＦＡＬＳＥの場合）は、Ｓ７０７をスキップして、処理をＳ７０９に進める。
【００６０】
Ｓ７０７では、ＣＰＵ１１１は、印刷属性を右開き基準の設定に更新し、処理をＳ７０９に進める。更新処理については後述のフローチャートで説明する。
【００６１】
Ｓ７０９では、ＣＰＵ１１１は、画像処理部１２４及び印刷部１２０と協働して、印刷ジョブに基づく印刷処理を行う。シートへの印刷が完了すると、処理をＳ７１０に進める。
【００６２】
Ｓ７１０では、ＣＰＵ１１１は、シート処理部１２２と協働して、シートに対する後処理を実行する。ＣＰＵ１１１は、印刷ジョブを解析して得られた後処理に関する属性情報や、ページに関するページ属性情報に基づいてシート処理部１２２を制御する。シート処理部１２２は、ＣＰＵ１１１からの制御指示に基づいて、必要に応じて印刷されたシートを綴じる綴じ処理、印刷されたシートを折る折り処理、印刷されたシートにパンチ穴を形成するパンチ処理を実行し、シートを不図示の排紙トレイに排出する。
【００６３】
以上説明した一連の動作により、外部装置から印刷データを受信して印刷処理を行う際に、判定処理により右開きへの変更が必要であると判定した場合は、右開きに適した体裁で印刷を行うことができる。
【００６４】
＜判定処理＞
次に取得した文字列に基づく判定処理を図８及び図９のフローチャートで説明する。図８及び図９のフローチャートに示す各動作は、判定部６１２に対応する制御モジュールが主体となって実現する処理である。
【００６５】
Ｓ８０１では、ＣＰＵ１１１は、Ｓ７０３やＳ７０４で取得された判定対象となる複数の文字列の中から検索対象の文字列を選択する。Ｓ８０２では、ＣＰＵ１１１は、文字コードがＵＴＦ−８（Ｕｎｉｃｏｄｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ  Ｆｏｒｍａｔ−８）で符号化されていると見做し、ＵＴＦ−８の符号化規則に基づいて１文字分のデコード処理を行う。デコード処理では、ＵＴＦ−８で符号化された文字列を解釈し、Ｕｎｉｃｏｄｅで表現される１文字分の文字コードへデコードする。
【００６６】
Ｓ８０３では、ＣＰＵ１１１は、デコードが成功したか否かを判定する。ＵＦＴ−８の符号化規則に基づき、Ｕｎｉｃｏｄｅの文字コードにデコードできた場合は、ＵＴＦ−８で符号化されていると判断し、Ｓ８０４に進む。一方、ＵＦＴ−８の符号化規則に基づき、Ｕｎｉｃｏｄｅの文字コード空間にデコードできなかった場合は、ＵＴＦ−８以外の符号化方式で符号化されていると判断し、Ｓ８０９に進む。
【００６７】
Ｓ８０４では、ＣＰＵ１１１は、デコードした１文字分の文字が１ｂｙｔｅ文字か判断する。１ｂｙｔｅ文字の場合は、処理をＳ８０８へ進め、１ｂｙｔｅ文字でない場合は、処理をＳ８０５に進める。
【００６８】
なお、Ｕｎｉｃｏｄｅでは、１ｂｙｔｅ文字として、ＡＳＣＩＩ（Ａｍｅｒｉｃａｎ  Ｓｔａｎｄａｒｄ  Ｃｏｄｅ  ｆｏｒ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｉｎｔｅｒｃｈａｎｇｅ）コードに対応する文字がマップされている。ＡＣＳＩＩコードは、英語圏及び西ヨーロッパ言語圏で用いられるラテン文字を中心とした文字セットであり、右横書きの書字方向で文字を書き進める言語圏で使用される特有の文字を含まない。
【００６９】
従って、Ｓ８０４の処理により、Ｓ８０２でデコードした文字が右横書きの書字方向で文字を書き進める言語圏で使用される特有の文字を含まないＡＳＣＩＩ文字の場合は、当該文字に対する判定を省略することができる。
【００７０】
Ｓ８０５では、ＣＰＵ１１１は、取得した文字が右横書きの書字方向で文字を書き進める言語圏で使用される特有の文字であるか否かを判断する。図９のフローチャート及び図１０の文字コード空間を説明するための図を用いてＳ８０５の処理の詳細を説明する。
【００７１】
Ｓ９０１では、ＣＰＵ１１１は、右開きフラグをＦＡＬＳＥに初期化する。初期化された右開きフラグはＲＡＭ１１３に記憶され、後述のステップで適宜参照される。
【００７２】
Ｓ９０２では、ＣＰＵ１１１は、取得した１文字分のコードデータがアラビア語圏の文字コード空間（０ｘ０６００−０ｘ０６ＦＦ）に含まれるか判断する。取得した文字がアラビア語圏の文字コード空間に含まれている場合は、処理をＳ９０４に進める。一方、アラビア語圏の文字コード空間に含まれていない場合は、処理をＳ９０３に進める。
【００７３】
Ｓ９０３では、ＣＰＵ１１１は、取得した１文字分のコードデータがヘブライ語圏の文字コード空間（０ｘ０５９０−０ｘ０５ＦＦ）に含まれるか判断する。取得した１文字分のコードデータがアラビア語圏の文字コード空間に含まれている場合は、処理をＳ９０４に進める。一方、アラビア語圏の文字コード空間に含まれていない場合は、１文字分の判定処理を終了し、処理をＳ８０６へ進める。なお、Ｓ９０２とＳ９０３を実行する順序は逆であっても構わない。また、Ｕｎｉｃｏｄｅでは、ヘブライ語圏の文字コード空間とアラビア語圏の文字コード空間とが連続しているため、判定処理をひとつにまとめて、０ｘ５９００−０ｘ０６ＦＦの範囲内であるかを判定するようにしてもよい。
【００７４】
Ｓ９０４では、ＣＰＵ１１１は、右開きフラグをＴＲＵＥに変更し、処理をＳ８０６に進める。
【００７５】
図１０に示すように、０ｘ０６００−０ｘ０６ＦＦの範囲内の文字コードには、アラビア語圏で使用されるアラビア文字が割り当てられている。アラビア語圏では、右横書きで文書を記述するため、アラビア文字の文字コード空間に含まれる文字が検出された場合は、印刷属性を右開き基準に更新するためのフラグをＴＲＵＥに設定し、後述の更新処理を行う。また、０ｘ０５９０−０ｘ０５ＦＦの範囲内の文字コードには、ヘブライ語圏で使用されるヘブライ文字が割り当てられている。ヘブライ語圏も、アラビア語圏と同様に右横書きで文書を記述するため、ヘブライ文字が検出された場合にも印刷属性を右開き基準に更新するためのフラグをＴＲＵＥに設定し、後述の更新処理を行う。なお本実施形態では、アラビア文字の文字コード空間をアラビア語圏の文字セットと呼び、ヘブライ文字の文字コード空間をヘブライ語圏の文字セットと呼ぶものとする。
【００７６】
図８の説明に戻り、Ｓ８０６では、右開きフラグがＴＲＵＥであるか否かを判断する。右開きフラグがＴＲＵＥの場合は、文字列に対する一連の判定を終了し、処理をＳ７０６に進める。従って、文字列の中にアラビア語又はヘブライ語が１文字でも含まれる場合は、印刷属性を右開き基準に更新することになる。一方、右開きフラグがＴＲＵＥでない場合（即ち、ＦＡＬＳＥの場合）は、処理をＳ８０８に進める。
【００７７】
一方、Ｓ８０８では、ＣＰＵ１１１は、Ｓ８０１で取得した文字列の終端まで検索したか否かを判断する。判定対象の文字が文字列の終端に相当する文字の場合は、文字列の終端まで検索したと判断し、処理をＳ８０９に進める。判定対象の文字が文字列の終端に相当する文字でない場合（即ち、後続の文字が存在する場合）、Ｓ８０２の処理に戻り、文字列中の後続の文字に対する判定を繰り返す。
【００７８】
Ｓ８０９では、ＣＰＵ１１１は、検索対象の他の文字列があるか判断する。検索対象の他の文字列がある場合は、Ｓ８０１の処理に戻り、他の文字列に対する判定を行う。一方、検索対象の他の文字列がない場合は、取得した文字列に対する判定処理を終了し、処理をＳ７０６に進める。
【００７９】
Ｓ７０６では、ＣＰＵ１１１は、ＲＡＭ１１３に記憶された右開きフラグがＴＲＵＥであるか否かを判定する。右開きフラグがＴＲＵＥの場合は、処理をＳ７０７に進め、右開きフラグがＴＲＵＥでない場合（即ちＦＡＬＳＥの場合）は、Ｓ７０７の処理をスキップしてＳ７０９に進む。
【００８０】
なお、本実施形態では、図８及び図９の処理により印刷ジョブのジョブ名称又はファイル名称にアラビア文字又はヘブライ文字を含む場合に、印刷データの属性情報を右開き基準に更新する場合を例示しているがこれに限定されるものではない。例えば、アッシリア語圏で使用されるシリア文字や、右横書きで文書を記述する古代語などの文字が文字列に含まれる場合についても、右開き基準に更新するようにしてもよい。この場合、ＣＰＵ１１１は、検索対象の文字が、シリア文字や右横書きで文書を記述する古代語などの文字コード空間に含まれるか否かの判定を更に行うものとする。
【００８１】
更に、本実施形態では、ジョブ名やファイル名がＵＴＦ−８で符号化されているものとして説明したが、これに限定されるものではない。例えば、ジョブ名やファイル名が他の文字符号化形式で符号化されている場合にも適用できる。この場合、ＣＰＵ１１１は、Ｓ８０２の処理に代えて、１文字また先頭から複数文字分の文字を用いて文字列の符号化形式を判定する。次に、判定の結果得られた符号化方式の規則に基づいて文字のデコードを行う。また、当該デコードして得られた文字コードに基づいて、Ｓ８０５に示す右開き文化圏の文字であるか否かの判定を行うようにすればよい。
【００８２】
＜更新処理＞
続いてＳ７０７の印刷ジョブの印刷属性を右開き基準の設定に更新する処理について、図１１のフローチャート及び図１２の右開きを基準とした属性情報への更新を説明する図を用いて説明する。図１１の各ステップに示す処理は、ジョブ制御部６０３に対応する制御モジュールが主体となり、ジョブ属性保存部６０４やページ属性保存部６０７で管理される属性にアクセスし、更新することにより実現する処理である。
【００８３】
Ｓ１１０１では、ＣＰＵ１１１は、ページ属性情報として記憶する綴じ代が印刷物の右側となるように綴じ代の属性を更新する。図１２に示すように、左開きを基準として設定された印刷データに対して、印刷物の右端を綴じ代とする属性に更新する。
【００８４】
Ｓ１１０２では、ＣＰＵ１１１は、印刷ジョブのジョブ属性として、綴じ処理が設定されているか判断する。綴じ処理が設定されている場合は処理をＳ１１０３に進め、綴じ処理が設定されていない場合は処理をＳ１００４へ進める。
【００８５】
Ｓ１１０３では、ＣＰＵ１１１は、綴じ処理の位置を綴じ代に合わせて更新する。具体的には、綴じ処理の設定が１箇所綴じの場合、綴じ処理が印刷物の右上に行われるよう、ｓｔａｐｌｅ−ｔｏｐ−ｒｉｇｈｔに更新する。一方、綴じ処理の設定が２箇所綴じの場合、綴じ処理が、印刷物の右端の２箇所に行われるよう、ｓｔａｐｌｅ―ｄｕａｌ−ｒｉｇｈｔに更新する。
【００８６】
Ｓ１００４では、ＣＰＵ１１１は、印刷ジョブのジョブ属性として、パンチ処理が設定されているか判断する。パンチ処理が設定されている場合は、処理をＳ１１０５に進め、パンチ処理が設定されていない場合は、処理をＳ１１０６に進める。Ｓ１１０５では、ＣＰＵ１１１は、パンチ処理の位置を綴じ代に合わせて更新する。具体的にはパンチ処理が印刷物の右側に行われるよう、ｐｕｎｃｈ−ｄｕａｌ−ｒｉｇｈｔに更新する。
【００８７】
Ｓ１１０６では、ＣＰＵ１１１は、印刷ジョブのジョブ属性として、折り処理が設定されているか判断する。折り処理が設定されている場合は、処理をＳ１１０７に進め、折り処理が設定されていない場合は、右綴じ基準への更新処理を完了し、処理をＳ７０９の印刷処理に進める。
【００８８】
Ｓ１１０７では、ＣＰＵ１１１は、折り処理の位置を綴じ代に合わせて更新する。具体的には折り処理が印刷物の右側に行われるよう、折り処理の設定をｆｏｌｄ−ｅｎｇｎｅｅｒｉｎｇ−ｚ−ｂｏｔｔｏｍに更新し、処理をＳ７０９の印刷処理に進める。従って、Ｓ１１０１乃至Ｓ１１０７の処理により変更された属性に基づいて印刷処理や印刷されたシートに対する後処理を行うことになる。
【００８９】
以上説明したように、本実施形態では、印刷データ内に含まれるジョブ名称やファイル名称を示す文字列が右横書きの文書に用いられる文字であると判断した場合に、右開きを前提とした印刷物となるように設定を変更することができる。
【００９０】
従って、左開きを前提とした印刷データを生成するプリントサービスによって生成された印刷データを受信した場合であっても、なるべくユーザの所望する体裁の印刷物を出力することができる。
【００９１】
さらに、右開きを前提とした印刷物となるように設定を変更するか否かを、印刷データの生成元に応じて適宜切り替えることができる。従って、シートのどこに後処理を実行するかを明示的に設定できるプリンタドライバで生成された印刷データを受信する場合は、文字情報に基づく設定の更新を行うことなく、印刷物を出力することができる。
【００９２】
＜第２の実施形態＞
第１の実施形態では、印刷データを印刷する際に、ジョブ名称やファイル名称を示す文字列に右横書きで文書を記載する文字列が含まれているか否かを判断する場合を説明した。
【００９３】
第２の実施形態では、第１の実施形態の処理に加えて、更に、受信した印刷データのコンテンツとして含まれるテキストオブジェクトについても判定を行うことについて説明する。なお、第２の実施形態において、前提となる装置のハードウェア構成は第１の実施形態と同様である。また、第１の実施形態と同様の構成については、詳細な説明は省略する。
【００９４】
図１３は、ＭＦＰ１０１が、外部装置から印刷データを受信した際の制御を説明するためのフローチャートである。第２の実施形態では、第１の実施形態における図７に代えて、図１３に示すフローチャートに基づいた印刷データ受信時の制御を実行する。第２の実施形態では、ＣＰＵ１１１は、第１の実施形態の処理に加えて、Ｓ１３１１乃至Ｓ１３１３の制御を実行する。
【００９５】
Ｓ１３０１乃至Ｓ１３０５の処理については、第１の実施形態におけるＳ７０１乃至Ｓ７０５の処理と同様であるため省略する。
【００９６】
Ｓ１３０６では、ＣＰＵ１１１は、右開きフラグがＴＲＵＥであるか否かを判断する。右開きフラグがＴＲＵＥの場合は、処理をＳ１３０７に進め、右開きフラグがＴＲＵＥでない場合（ＦＡＬＳＥの場合）は、処理をＳ１３１１に進める。
【００９７】
Ｓ１３０７乃至Ｓ１３１０の処理は、第１の実施形態におけるＳ７０７乃至Ｓ７１０と同様であるため省略する。
【００９８】
Ｓ１３１１では、ＣＰＵ１１１は、所定ページ数分のコンテンツに含まれる文字列の判定が完了したか否かを判断する。所定ページ数（例えば１ページ）のコンテンツに含まれる文字列の判定が完了した場合は、処理をＳ１３０９の印刷処理に進め、所定ページ数分のコンテンツに含まれる文字列の判定が完了していない場合は、処理をＳ１３１２に進める。
【００９９】
なお、本実施形態では、所定ページ数の一例として１ページを例示しているがこれに限定されるものではない。例えば、印刷データ内に表紙が含まれていることを考慮し、所定ページ数を２ページや３ページとすることもできる。また、印刷データに含まれる全てのページに対して判定処理を行うようにしてもよい。
【０１００】
Ｓ１３１２では、ＣＰＵ１１１は、印刷データから１ページ分のページデータを生成する。Ｓ１３１３では、ＣＰＵ１１１は、Ｓ１３１２で生成したページデータに含まれるテキストオブジェクト内の文字列を取得する。ここでは、ページデータ内に複数のテキストオブジェクトが存在する場合は、各テキストオブジェクトに対応する文字列を取得するものとする。文字列の取得が完了すると、Ｓ１３０５の処理に戻り、ページデータ内の文字列に対する判定処理を行う。
【０１０１】
Ｓ１３１１乃至Ｓ１３１３の処理により受信した印刷データのコンテンツとして含まれる文字についても判定を行った上で、右横書きの文書に用いられる文字が含まれると判断した場合は、右開きを前提とした印刷物となるように設定を変更することができる。従って、常にジョブ名称やファイル名称が英数字で表現されている場合であっても、印刷データのコンテンツの文字情報から右横書きの文書であると判断することができ、より正確にユーザの所望する体裁の印刷物を出力することができる。
【０１０２】
＜第３の実施形態＞
第１の実施形態では、印刷データを印刷する際に、ジョブ名称がファイル名称を示す文字列に右横書きで文書を記載する文字列が含まれているか否かを判断する場合を説明した。
【０１０３】
第３の実施形態では、第１の実施形態の処理に加えて、更に、日本語圏や中国語圏の一部（例えば台湾）などの場合を考慮した制御を行うことについて説明する。なお、第３の実施形態において、前提となる装置のハードウェア構成は第１の実施形態と同様である。また、第１の実施形態と同様の構成については、詳細な説明は省略する。
【０１０４】
日本語圏や中国語圏などでは、書字方向が左横書きの文書と書字方向が右縦書きの文書の両方が用いられる。ここで、右縦書きとは、文字を上から下に向かって縦に並べ、文字列が列の末尾に達すると、１列左にずらし、上から次列以降を書き進める筆記方法である。このような筆記方法で記載された文書は、右縦書きに適した出力形式である右開きで出力することが望ましい。
【０１０５】
そこで、本実施形態では、日本語圏や中国語圏のユーザの中に、右縦書きの印刷物を中心として印刷したいユーザがいることを想定し、日本語圏や中国語圏の文字が含まれている場合にも、右綴じを基準とした印刷物を生成できるような制御を行う。
【０１０６】
しかしながら、日本語圏や中国語圏などでは、前述したように、文書の性質によって横書きと縦書きの併用が行われている。従って、一律に日本語圏や中国語圏の文字が含まれている場合に右綴じを基準とした印刷物を出力すると、ユーザによっては却って利便性が落ちる。
【０１０７】
そこで、本実施形態では、後処理の位置が明確に指定されていない場合に使用するデフォルトの設定（規定の設定）を利用し、印刷データに日本語圏や中国語圏の文字が含まれている場合に、右綴じを基準とした印刷物を出力できるようにする。
【０１０８】
具体的な処理について、図１４のフローチャートを用いて説明する。第３の実施形態では、第１の実施形態における図９の１文字ごとの判定処理に代えて、図１４に示すフローチャートに基づいた１文字ごとの判定処理を実行する。
【０１０９】
なお、第１の実施形態のおける図７、図８、図１１に示した印刷制御については、第３の実施形態でも同様であるため省略する。
【０１１０】
第３の実施形態の制御では、ＣＰＵ１１１は、第１の実施形態の処理に加えて、Ｓ１４０５及びＳ１４０６の制御を実行する。
【０１１１】
Ｓ１４０１乃至Ｓ１４０２の処理は、第１の実施形態におけるＳ９０１乃至Ｓ９０２の処理と同様のため省略する。
【０１１２】
Ｓ１４０３では、ＣＰＵ１１１は、取得した１文字分のコードデータがヘブライ語の文字コード空間（０ｘ０５９０−０ｘ０５ＦＦ）に含まれるか判断する。取得した１文字分のコードデータがヘブライ語の文字コード空間に含まれている場合は、処理をＳ１４０４に進め、ヘブライ語の文字コード空間に含まれていない場合は、処理をＳ１４０５へ進める。Ｓ１４０４のフラグの更新処理は、第１の実施形態におけるＳ９０４の処理と同様であるため、省略する。
【０１１３】
Ｓ１４０５では、ＣＰＵ１１１は、取得した１文字分のコードデータがＣＪＫ統合漢字（ＣＪＫは、中国語、日本語、韓国語（朝鮮語）の頭文字を示している）、平仮名、片仮名のいずれかの文字コード空間に含まれるか判断する。取得した１文字分のコードデータがいずれかの文字コード空間に含まれている場合は、処理をＳ１４０６に進める。一方、取得した１文字分のコードデータがいずれの文字コード空間にも含まれていない場合は、１文字分の判定処理を終了し、文字列中の後続の文字に対する判定へ処理を進める。
【０１１４】
Ｓ１４０６では、ＣＰＵ１１１は、デフォルトの設定を参照し、当該設定が右開きを前提とする設定であるか否かを判断する。右開きを前提とする設定であれば、Ｓ１４０４に処理を進め、右開きを前提とする設定でなければ、１文字分の判定処理を終了し、文字列中の後続の文字に対する判定へ処理を進める。
【０１１５】
本実施形態では、後処理の位置が明確に指定されていない場合に使用するデフォルトの設定（規定の設定）を利用することで、印刷データに日本語圏や中国語圏の文字が含まれている場合に右綴じを基準とした印刷物を出力できる。
【０１１６】
従って、右縦書きの印刷物を中心に印刷したいユーザは、前述したデフォルトの設定を右開きを前提とする設定に変更することで、左開きを前提としたプリントサービスを使用する場合にも所望の体裁の印刷物を出力できるようになる。
【０１１７】
なお、本実施形態では、Ｓ１４０５の判定で、ＣＪＫ統合漢字、平仮名、片仮名の文字コード空間に含まれる文字であるかを判定する場合を例示したがこれに限定されるものではない。文字を上から下に向かって縦に並べ、文字列が列の末尾に達すると、１列左にずらし、上から次列以降を書き進める筆記方法で使用される他の言語があれば、当該言語の文字コード空間に基づく判定を行うようにすることもできる。
【０１１８】
なお、第３の実施形態では、第１の実施形態に適用する場合について例示しているがこれに限定されるものではない。第２の実施形態に対して、第３の実施形態の処理を適用することもできる。
【０１１９】
＜第４の実施形態＞
第３の実施形態では、印刷データに日本語圏や中国語圏の一部（例えば台湾）文字が含まれている場合を考慮した制御を行うことについて説明した。第４の実施形態では、第３の実施形態に加えて、受信した印刷データを一旦ストレージ１１４などに留め置いておく場合を考慮した制御について説明する。
【０１２０】
本実施形態のＭＦＰ１０１は、情報処理装置から受信した印刷データをストレージ１１４に一旦留め置きすることができる。ユーザは、ＭＦＰ１０１の操作部１１６を操作して、留め置かれている印刷データを選択した上で、印刷することができる（以降、留め置き印刷と呼ぶ）。
【０１２１】
留め置き印刷を行う場合、実際に印刷を行う前に、ユーザによって印刷データを選択する操作が行われる。本実施形態では、実際に印刷を行う前にユーザが操作を行うことに着目し、印刷を開始するまでの一連のユーザ操作の中に体裁がユーザの意図通りになっているかユーザに問い合わせる制御を行う。
【０１２２】
この場合、留め置き印刷の場合は、ユーザに体裁に関する問い合わせを行うことができ、日本語圏や中国語圏など文書の性質によって横書きと縦書きの併用する環境においても、より確実に、ユーザの意図する体裁の印刷を行えるようになる。
【０１２３】
＜印刷データの受信及び留め置き＞
図１５及び図１６は、ＭＦＰ１０１が、外部装置から印刷データを受信した際の制御を説明するためのフローチャートである。第４の実施形態では、図７に代えて、図１５に示すフローチャートに基づいた印刷データ受信時の制御を実行する。また、第４の実施形態では、第３の実施形態の図１３に代えて、図１６に示すフローチャートに基づいた判定を実行する。
【０１２４】
Ｓ１５０１乃至Ｓ１５０４の処理については、第１の実施形態におけるＳ７０１乃至Ｓ７０４の処理と同様であるため省略する。
【０１２５】
Ｓ１５０５では、ＣＰＵ１１１は、取得した文字列の判定処理を行う。Ｓ１５０５の判定では、図１４と同様に文字列の先頭から１文字ごとに右横書き又は右縦書きの書字方向で文字を書き進める言語圏で使用される特有の文字であるかの判定を行う。第４の実施形態では、１文字ごとの文字の判定時に第３の実施形態の図１４の処理に加えて更に、留め置き印刷の行う際の確認フラグの設定を行う。図１６のフローチャートを用いて、Ｓ１５０５の処理の詳細を説明する。
【０１２６】
Ｓ１６０１乃至Ｓ１６０４の処理は、第３の実施形態のＳ１３０１乃至Ｓ１３０５の処理と同様であるため、省略する。
【０１２７】
Ｓ１６１０では、ＣＰＵ１１１は、印刷ジョブの印刷属性として自動変更フラグをＴＲＵＥに設定する。自動変更フラグは後述する図１７のフローチャートで説明する留め置かれた印刷データの印刷制御を行う際に適宜参照される。
【０１２８】
一方、Ｓ１６０５では、ＣＰＵ１１１は、取得した１文字分のコードデータがＣＪＫ統合漢字、平仮名、片仮名のいずれかの文字コード空間に含まれるか判断する。取得した１文字分のコードデータがいずれかの文字コード空間に含まれている場合は、処理をＳ１６０６に進める。一方、取得した１文字分のコードデータがいずれの文字コード空間にも含まれていない場合は、１文字分の判定処理を終了し、文字列中の後続の文字に対する判定へ処理を進める。
【０１２９】
Ｓ１６０６では、ＣＰＵ１１１は、印刷データの留め置きを行うか否かを判断する。印刷データを受信する際の動作設定として受信した印刷データを留め置くことがＭＦＰ１０１に対して設定されている、又は印刷データの属性として留め置き印刷が設定されている場合は、印刷データの留め置きを行うと判断し、処理をＳ１６０８に進める。一方、受信した印刷データを留め置く設定がＯＦＦに設定されており、且つ、印刷データの属性として留め置き印刷が設定されていない場合は、印刷データの留め置きを行わないと判断し、処理をＳ１６０７に進める。
【０１３０】
Ｓ１６０７では、ＣＰＵ１１１は、Ｓ１６０４と同様に、デフォルトの設定として右開きを前提とすることがＭＦＰ１０１に対して設定されている場合は、Ｓ１６０４に処理を進める。一方、右開きを前提とする設定でなければ、１文字分の判定処理を終了し、文字列中の後続の文字に対する判定へ処理を進める。
【０１３１】
Ｓ１６０８では、ＣＰＵ１１１は、印刷ジョブの印刷属性として印刷時確認フラグをＴＲＵＥに設定する。印刷時確認フラグは後述する図１７のフローチャートで説明する留め置かれた印刷データの印刷制御を行う際に適宜参照される。
【０１３２】
図１５の説明に戻る。Ｓ１５０６乃至Ｓ１５０８の処理は、Ｓ７０６乃至Ｓ７０８の処理と同様のため省略する。Ｓ１５１１では、ＣＰＵ１１１は、印刷データの留め置きを行うか否かを判断する。印刷データを受信する際の動作設定として受信した印刷データを留め置くことがＭＦＰ１０１に対して設定されている、又は印刷データの属性として留め置き印刷が設定されている場合は、印刷データの留め置きを行うと判断し、処理をＳ１５１２に進める。一方、受信した印刷データを留め置く設定がＯＦＦに設定されており、且つ、印刷データの属性として留め置き印刷が設定されていない場合は、処理をＳ１５０９に進める。Ｓ１５０９及びＳ１５１０の処理については、第１の実施形態におけるＳ７０９及びＳ７１０の印刷処理及び後処理と同様であるため省略する。
【０１３３】
Ｓ１５１２では、ＣＰＵ１１１は、印刷ジョブに基づいて、印刷データを留め置き印刷データを格納するためのデータ領域に格納する。この処理により、図１６の各処理を介して設定された印刷時確認フラグや自動変更フラグが印刷データの属性として設定された印刷データが留め置かれることになる。
【０１３４】
＜留め置き＞
次に、ＭＦＰ１０１に留め置かれた印刷データを選択して印刷する場合の制御について説明する。図１７は、ユーザがＭＦＰ１０１に留め置かれた印刷データを選択して印刷する場合の制御を説明するためのフローチャートである。図１７のフローチャートに示す各処理は、不図示のメインメニューから留め置き印刷の機能が選択された場合に、実行される。
【０１３５】
Ｓ１７０１では、ＣＰＵ１１１は操作部１１６に留め置き印刷に関する画面（不図示）を表示する。Ｓ１７０２は、ＣＰＵ１１１は、留め置き印刷に関する画面を介して印刷データの印刷指示がなされたか否かを判断する。ＣＰＵ１１１は、印刷対象の印刷データが選択された状態で、印刷開始の指示を受け付けた場合は、処理をＳ１７０３に進め、印刷開始の指示を受け付けていない場合は、ユーザによる印刷データの選択及び印刷指示の受け付けを待つ。
【０１３６】
Ｓ１７０３では、ＣＰＵ１１１は、印刷が指示された印刷データに基づいて印刷ジョブを生成する。また、当該印刷ジョブの印刷属性を参照し、印刷時確認フラグがＴＲＵＥであるか判断する。印刷時確認フラグがＴＲＵＥの場合は、処理をＳ１７０４に進め、印刷時確認フラグがＴＲＵＥでない場合は、処理をＳ１７１０に進める。
【０１３７】
Ｓ１７０４では、ＣＰＵ１１１は、操作部１１６に問い合わせ画面を表示する。図１８は操作部１１６に表示する操作画面の一例を示すものであり、図１８（ａ）は、問い合わせ画面を例示する図である。
【０１３８】
問い合わせ画面には、印刷データに基づいて表示されるプレビュー領域１８０１が備えられている。ユーザは領域１８０１に表示されるプレビュー画像を見て、印刷データのコンテンツの内容を視覚的に確認することができる。また、プレビュー画像には、印刷データに設定されている後処理が何処に行われるかを示す注釈が付与されている。従ってユーザはプレビュー画像をみて、どのような後処理が行われるかを視覚的に確認することができる。ここでは、右縦書きの文書の左上１ヵ所に綴じ処理が行われる印刷データに対するプレビューを例示している。
【０１３９】
左開きキー１８０２及び右開きキー１８０３は、開き方向の設定を変更する場合に使用するキーである。ユーザは、左開きキー１８０２又は右開きキー１８０３を選択して、印刷物の開き方向を変更することができる。ＣＰＵ１１１は、ユーザによってキーが選択され、開き方向が変更されると、変更に連動してプレビュー画像に対する後処理に関する注釈の位置も変更するものとする。
【０１４０】
また、ＯＫキー１８０４は、問い合わせ画面を介してなされた変更を適用し、印刷を開始する場合に使用するキーである。
【０１４１】
図１８の画面は、図１６の判定処理により、印刷時確認フラグがＴＲＵＥに設定された場合、即ち、印刷データに日本語圏や中国語圏などの文字が含まれる場合に表示される。従って、文書の性質によって横書きと縦書きの併用するユーザは、図１８の画面を介して自身の所望する体裁の印刷物となるよう設定を変更することができる。
【０１４２】
図１７の説明に戻り、Ｓ１７０５では、ＣＰＵ１１１は、右開きで印刷を行う指示がなされたか判断する。右開きが選択された状態で印刷を行う指示がなされた場合は、右開きで印刷を行う指示がなされたと判断し、処理をＳ１７０７に進める。一方、印刷を行う指示がなされていない場合は、処理をＳ１７０６に進める。
【０１４３】
Ｓ１７０６では、ＣＰＵ１１１は、左開きで印刷を行う指示がなされたか判断する。左開きが選択された状態で印刷を行う指示がなされた場合は、左開きで印刷を行う指示がなされたと判断し、処理をＳ１７０８に進める。一方、印刷を行う指示がなされていない場合は、Ｓ１７０５の処理に戻り、ユーザの指示を待つ。
【０１４４】
Ｓ１７０７では、ＣＰＵ１１１は第１の実施形態のＳ７０７と同様に印刷ジョブの属性を右開き基準に変更する。Ｓ１７０８では、ＣＰＵ１１１は、Ｓ７０９と同様に、印刷ジョブに基づく印刷を行う。Ｓ１７０９では、ＣＰＵ１１１は、Ｓ７１０と同様に、シート処理部１２２と協働して、Ｓ１７０８で印刷されたシートに対して必要に応じた後処理を行い、処理を完了する。
【０１４５】
一方、Ｓ１７１０では、Ｓ１７０３で生成された印刷ジョブの属性を参照し、自動変更フラグがＴＲＵＥであるか判断する。印刷時確認フラグがＴＲＵＥの場合は、処理をＳ１７１１に進め、印刷時確認フラグがＴＲＵＥでない場合は、処理をＳ１７０８に進める。
【０１４６】
Ｓ１７１１では、ＣＰＵ１１１は、操作部１１６に確認画面を表示する。図１８（ｂ）は、確認画面を例示する図である。
【０１４７】
確認画面には、印刷データに基づいて表示されるプレビュー領域１８１１が備えられている。ユーザは領域１８１１に表示されるプレビュー画像を見て、印刷データのコンテンツの内容や、後処理の設定を視覚的に確認することができる。ここでは、アラビア語で右横書きの文書の右上１ヵ所に綴じ処理が行われる印刷データに対するプレビューを例示している。従って、右横書きで構成された文書を印刷する場合、ユーザは、確認画面を介して、右横書きに適した出力方式である、右開きを基準とした設定に変更されていることを視覚的に確認することができる。
【０１４８】
また設定変更キー１８１２は、印刷ジョブに対する設定を変更する際に使用するキーである。ユーザは設定変更キー１８１２を選択して、不図示の設定画面を表示し、印刷に関する設定や後処理に関する設定を変更することができる。ＯＫキーは、印刷を開始する場合に使用するキーである。
【０１４９】
図１７の説明に戻り、Ｓ１７１２では、ＣＰＵ１１１は、ＯＫキーが選択されたか判断する。ＯＫキーが選択された場合は、処理をＳ１７０８に進め、印刷処理を行う。ＯＫキーが選択されていない場合は、処理をＳ１７１３に進める。Ｓ１７１３では、ＣＰＵ１１１は、設定変更の指示を受け付けたか判断する。設定変更の指示を受け付けた場合は、Ｓ１７１４に進む。設定変更の指示を受け付けていない場合は、Ｓ１７１２に戻り、ユーザの指示を待つ。
【０１５０】
Ｓ１７１４では、ＣＰＵ１１１は、ユーザによる設定変更の操作を受け付ける。不図示の設定変更画面において設定変更を完了させる操作を受け付けると、当該設定変更を印刷ジョブに適用し、処理をＳ１７０８に進める。
【０１５１】
本実施形態では、後処理の位置が明確に指定されていない場合に使用するデフォルトの設定（規定の設定）を利用することで、印刷データに日本語圏や中国語圏の文字が含まれている場合に右綴じを基準とした印刷物を出力できる。また、留め置き印刷を行う場合は、更に、右綴じを基準とした印刷物にするか左綴じを基準とした印刷物にするかユーザに確認した上で実際の印刷処理を行うことができる。
【０１５２】
従って、日本語圏や中国語圏など文書の性質によって横書きと縦書きの併用する環境において、より確実に、ユーザの意図する体裁の印刷を行えるようになる。
【０１５３】
なお、第４の実施形態では、ジョブ名称及びファイル名称の文字列に基づいて、判定を行う場合を例示したが、これに限定されるものではない。第２の実施形態のように印刷データ内のコンテンツの文字列についても判定を行うようにすることもできる。
【０１５４】
＜変形例＞
第１乃至第４の実施形態では、印刷部を備えた印刷装置を例示したが、これに限定されるものではない。例えば、印刷装置に接続されたプリントコントローラに本発明を適用することもできる。この場合、プリントコントローラは、情報処理装置から印刷データを受信し、受信した印刷データの設定を、印刷データ内の文字列に基づいて更新する処理を行う。また、プリントコントローラは、更新した印刷データを印刷装置に送信し、印刷装置に印刷を行わせる。即ち、汎用のプリントサービスから印刷データが送信された場合であって、プリンタコントローラがユーザの意図する体裁の印刷を行うことができるように印刷設定を更新して、印刷装置に送信する。この制御により、できるだけユーザの意図する体裁の印刷を行うことができるようになる。
【０１５５】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１５６】
１００  ＬＡＮ
１０１  ＭＦＰ
１１１  ＣＰＵ
１１６  操作部
１２０  印刷部
１２２  シート処理部
【図１】
2018001728.tif 000003
【図２】
2018001728.tif 000004
【図３】
2018001728.tif 000005
【図４】
2018001728.tif 000006
【図５】
2018001728.tif 000007
【図６】
2018001728.tif 000008
【図７】
2018001728.tif 000009
【図８】
2018001728.tif 000010
【図９】
2018001728.tif 000011
【図１０】
2018001728.tif 000012
【図１１】
2018001728.tif 000013
【図１２】
2018001728.tif 000014
【図１３】
2018001728.tif 000015
【図１４】
2018001728.tif 000016
【図１５】
2018001728.tif 000017
【図１６】
2018001728.tif 000018
【図１７】
2018001728.tif 000019
【図１８】
2018001728.tif 000020