(57)【要約】【課題】印刷用色空間で構成される画像データを印刷する場合に、モニタの表示画像との色味の違いを簡易的に修正するべく画像データを出力すること。【解決手段】画像処理装置は、印刷用色空間で構成される入力画像データ（ＣＭＹＫデータ）が存在する場合、画像の色味をモニタに合わせて修正するか否かを設定画面上で選択する選択手段を備える（Ｓ７０２）。入力画像データの色味をモニタに合わせて修正する場合、描画プログラムを介して印刷用色空間（ＣＭＹＫ色空間）からモニタ表示用色空間（ＲＧＢ色空間）に変換された印刷データを取得して出力する処理が実行される（Ｓ７０３ないしＳ７０５）。印刷データの解釈（Ｓ７０９）後、モニタ表示用色空間を印刷色空間に変換する色空間変換処理が実行され（Ｓ７１０）、レンダリング（Ｓ７１１）、二値化（Ｓ７１２）を経てプリンタエンジンに印刷データが送信される（Ｓ７１３）。【選択図】  図５
2015061128.tif 000002
【特許請求の範囲】
【請求項１】
印刷用色空間で構成される画像データに対し、色味を表示装置に合わせて修正するか否かを選択する選択手段と、
前記選択手段により前記修正を行うことが選択された場合、前記印刷用色空間から表示用色空間に変換した画像データを取得する取得手段と、
前記変換した画像データを出力する出力手段を備えることを特徴とする画像処理装置。
【請求項２】
前記印刷用色空間で構成される画像データに対し、色味を表示装置に合わせて修正する場合、前記変換した画像データを取得し、前記表示用色空間から印刷用色空間への変換処理を行う変換手段を備えることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記印刷用色空間で構成される変換前の画像データと、前記変換した画像データを取得し、画素同士の差分を算出する算出手段を備えることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記算出手段により算出された差分が、全ての画素でゼロでないと判定された場合、前記出力手段により、前記変換した画像データを出力することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記算出手段により算出された差分が、いずれかの画素でゼロであると判定された場合、画像合成手段により、前記印刷用色空間で構成される変換前の画像データ、および前記変換した画像データを合成することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記画像合成手段は、画像の属性情報および前記差分の情報を取得して、前記画像データを合成する処理を行うことを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記選択手段は、前記属性情報を前記表示装置に表示させ、属性に応じて前記修正を行うか否かの設定を受け付けることを特徴とする請求項６に記載の画像処理装置。
【請求項８】
描画プログラムを実行する実行手段を備え、
前記印刷用色空間で構成される画像データに対し、色味を表示装置に合わせて修正することが前記選択手段により選択された場合、前記描画プログラムにより前記印刷用色空間から表示用色空間への変換を行うことを特徴とする請求項１ないし７のいずれか１項に記載の画像処理装置。
【請求項９】
アプリケーションを実行する実行手段を備え、
前記印刷用色空間で構成される画像データに対し、色味を表示装置に合わせて修正することが前記選択手段により選択された場合、前記アプリケーションに対応した前記印刷用色空間から表示用色空間への変換情報を用いて処理手段により前記修正を行うことを特徴とする請求項１ないし７のいずれか１項に記載の画像処理装置。
【請求項１０】
前記選択手段は、前記アプリケーションの選択画面を表示させ、前記アプリケーションについて前記修正の設定を受け付けることを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
印刷用色空間で構成される画像データに対し、表示装置に合わせて色味を修正した画像データをプリンタドライバから取得する取得手段と、
取得した前記画像データに対して表示用色空間から印刷用色空間への変換を行う変換手段を備えることを特徴とする画像処理装置。
【請求項１２】
前記印刷用色空間はＣＭＹＫ色空間であり、前記表示用色空間はＲＧＢ色空間であることを特徴とする請求項１ないし１１のいずれか１項に記載の画像処理装置。
【請求項１３】
画像処理装置にて実行される画像処理方法であって、
印刷用色空間で構成される画像データに対し、色味を表示装置に合わせて修正するか否かを選択する選択ステップと、
前記選択ステップにて前記修正を行うことが選択された場合、前記印刷用色空間から表示用色空間に変換した画像データを取得する取得ステップと、
前記変換した画像データを出力する出力ステップを有することを特徴とする画像処理方法。
【請求項１４】
画像処理装置にてコンピュータにより実行されるプログラムであって、
印刷用色空間で構成される画像データに対し、色味を表示装置に合わせて修正するか否かを選択する選択ステップと、
前記選択ステップにて前記修正を行うことが選択された場合、前記印刷用色空間から表示用色空間に変換した画像データを取得する取得ステップと、
前記変換した画像データを出力する出力ステップを有することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷用色空間で構成される画像データを印刷する場合に、モニタの表示画像との色味の違いを簡易的に修正する画像処理技術に関する。
【背景技術】
【０００２】
従来、電子写真プリンタやインクジェットプリンタ等では、一般にＲＧＢ色空間やＣＭＹＫ色空間で構成される画像データが扱われる。ＲＧＢ色空間で構成される画像データ（以下、ＲＧＢデータという）は、多くのアプリケーションでオフィス文書や写真画像等として標準的に使用されている。そのため、ＲＧＢデータを印刷する場合、モニタ上の表示画像の印象と近い色再現を求められる事が多い。一方、商業用の画像データ等、印刷機による出力を前提とした画像データは、ＣＭＹＫ空間で構成される画像データ（以下、ＣＭＹＫデータという）である場合が多い。Adobe社のPostScript（登録商標）等に代表されるページ記述言語（PDL）で入稿されるPDLデータは、所定の印刷機による出力を前提とした、規格化されたＣＭＹＫ色空間での画像データで構成されている事が多い。
【０００３】
近年、アプリケーションの機能が充実し、アプリケーション上でＣＭＹＫデータを扱う機会が増えている。画像データを印刷する際、ユーザがＣＭＹＫデータである事に気づいていない場合（例えば、画像データの作成者と印刷者が異なる場合等）、問題が起きる可能性がある。例えば、ユーザがモニタ上の表示画像と同じ色味で印刷を行う場合を想定する。ＣＭＹＫデータが、PostScript（登録商標）に対応したプリンタで印刷された場合、モニタ上の表示画像の色味と異なる状態で画像が印刷されてしまう可能性がある。これは、PostScript（登録商標）で記述されたＣＭＹＫデータがそのままの形でプリンタに送信され、モニタ表示を想定した色空間の変換が行われないためである。これを回避するため、ユーザは画像データがどの色空間で構成されているかに注意する必要があった。画像データに係る色空間を把握するためには、特定のアプリケーションが必要である。そのようなアプリケーションが無い場合、実際に印刷するまで画像の色味の違いをユーザが把握することはできなかった。そこで、印刷時に画像データに係る色空間を解析し、予めユーザに通知する技術がある（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−０９０４２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来の技術では、画像の色味が異なる可能性を印刷前に認識することができたとしても、ユーザは色味を修正するために、特定のアプリケーションで画像データを修正する必要がある。その際には知識や技術を要するため、一般的なユーザが画像の色味の違いに気づいた場合、簡易に修正する事ができないという課題がある。
本発明は、印刷用色空間で構成される画像データを印刷する場合に、モニタの表示画像との色味の違いを簡易的に修正するべく画像データを出力することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に係る画像処理装置は、印刷用色空間で構成される画像データに対し、色味を表示装置に合わせて修正するか否かを選択する選択手段と、前記選択手段により前記修正を行うことが選択された場合、前記印刷用色空間から表示用色空間に変換した画像データを取得する取得手段と、前記変換した画像データを出力する出力手段を備える。
【発明の効果】
【０００７】
本発明によれば、印刷用色空間で構成される画像データを印刷する場合に、モニタの表示画像との色味の違いを簡易的に修正するべく画像データを出力することができる。
【図面の簡単な説明】
【０００８】
【図１】図２ないし図７とともに本発明の第１実施形態を説明するために、画像形成システムの構成例を示す図である。
【図２】図１のコンピュータ１０２の構成例（Ａ）、プリンタコントローラ１０４の構成例（Ｂ）を示すブロック図である。
【図３】プログラムの構成例を示すブロック図である。
【図４】モジュール構成を示すブロック図である。
【図５】印刷処理の流れを説明するフローチャートである。
【図６】色空間変換設定のＵＩ画面の表示例を示す図である。
【図７】ＩＣＣプロファイルを用いた色空間変換の説明図である。
【図８】図９ないし図１３とともに本発明の第２実施形態を説明するために、印刷処理の前半部を示すフローチャートである。
【図９】図８に続く印刷処理の後半部を示すフローチャートである。
【図１０】差分データの生成処理を示すフローチャートである。
【図１１】差分データの生成処理を説明する図である。
【図１２】合成データの生成処理を説明する図である。
【図１３】属性を選択する表示画面例を示す図である。
【図１４】図１５ないし図１８とともに本発明の第３実施形態を説明するために、印刷処理の前半部を示すフローチャートである。
【図１５】図１４に続く印刷処理の後半部を示すフローチャートである。
【図１６】色空間変換設定の表示画面（Ａ）、アプリケーション選択画面（Ｂ）を示す図である。
【図１７】色空間変換情報の作成処理を示すフローチャートである。
【図１８】ＣＭＹＫパッチ画像を例示する図である。
【発明を実施するための形態】
【０００９】
以下、本発明の各実施形態について、添付図面を参照して説明する。各実施形態では、ページ記述言語（PDL：Page  Description  Language）で入稿されるPDLデータを印刷する際の、カラーマッチング及び色空間変換を行う画像処理装置を例示して説明する。なお、印刷用色空間で構成される画像データとしてＣＭＹＫデータを例示し、表示装置の表示用色空間で構成される画像データとしてＲＧＢデータを例示する。
【００１０】
［第１実施形態］
図１は本発明の第１実施形態に係る画像生成装置を含む画像形成システムの構成例を示すシステム構成図である。本実施形態に係る画像形成システムは、ネットワーク１０１を介して通信可能に接続される、コンピュータ１０２とプリンタ１０６を備える。
プリンタ１０６は、プリンタコントローラ１０４と、プリンタエンジン１０５を備える。コンピュータ１０２はプリンタ１０６に印刷指示を送信可能であり、プリンタ１０６の情報をコンピュータ１０２が取得できる。コンピュータ１０２とディスプレイ１０３は互いに接続されており、コンピュータ１０２は表示用の画像信号をディスプレイ１０３に出力する。例えばコンピュータ１０２は動作中のアプリケーションの画面情報をディスプレイ１０３に送信し、ディスプレイ１０３は画面表示を行う。
プリンタコントローラ１０４はプリンタエンジン１０５に接続されており、プリンタエンジン１０５に制御信号を送信して印刷処理を実行させる。
【００１１】
図２（Ａ）はコンピュータ１０２の物理的構成を例示するブロック図である。コンピュータ１０２は、内部バス２０１に接続された各構成部を備える。ＣＰＵ（中央演算処理装置）２０２は制御中枢機能をもち、ＲＡＭ（ランダム・アクセス・メモリ）２０３や外部記憶装置２０４は記憶手段を構成する。この他、ディスプレイＩ／Ｆ（インタフェース）部２０５、外部入力装置２０６、ネットワークＩ／Ｆ部２０７が設けられている。ネットワークＩ／Ｆ部２０７はネットワーク１０１に接続され、プリンタ１０６との間で互いにデータを送受し合う。
コンピュータ１０２が起動すると、ＣＰＵ２０２はアプリケーション実行プログラムを外部記憶装置２０４から読み込んでＲＡＭ２０３に格納して実行する。ＣＰＵ２０２が実行するプログラムは、ディスプレイＩ／Ｆ部２０５に対して画面表示データの送信を開始し、ディスプレイ１０３の画面上に画像が表示される。また、ＣＰＵ２０２は外部入力装置２０６からのユーザ入力情報を監視し、ユーザ入力情報が入力された場合、プログラムに記述された、ユーザ入力情報に対応する処理を実行する。
【００１２】
図２（Ｂ）はプリンタコントローラ１０４の物理的構成を例示するブロック図である。プリンタコントローラ１０４は、内部バス５０１に接続された各構成部を備える。ＣＰＵ５０２はＲＡＭ５０３に展開されたプログラムを解釈して実行する。さらに、外部記憶装置５０４、ネットワークＩ／Ｆ部５０５、エンジンＩ／Ｆ部５０６、入力装置５０７が設けられている。プリンタコントローラ１０４が起動すると、ＣＰＵ５０２は実行プログラムを外部記憶装置５０４から読み込んでＲＡＭ５０３に格納して実行する。
【００１３】
図３はＣＰＵ２０２が実行するプログラムのシステム構成例を示すブロック図である。アプリケーション３０１は、コンピュータ１０２の基本ソフトウェアであるオペレーティングシステム（以下、ＯＳという）上で動作するソフトウェアである。アプリケーション３０１には、文書作成用ソフトウェア、図面作成用ソフトウェア、プレゼンテーション用ソフトウェア等がある。本実施形態においては、アプリケーション３０１自身が印刷データを生成する場合を想定する。アプリケーション３０１は、例えばディスプレイＩ／Ｆ部２０５や外部入力装置２０６を介して、ＧＵＩ（グラフィカル・ユーザ・インタフェース）環境にてユーザ操作指示の情報を取得する。ユーザはアプリケーション３０１を使用して、外部記憶装置２０４に格納されている画像データをＲＡＭ２０３にコピーし、画像編集等の処理を行える。
【００１４】
描画プログラム３０２はディスプレイ１０３への表示やプリンタへの印刷等、画像情報の処理を司るＯＳのサブシステム（基本関数群）である。これはＯＳ固有の出力モジュールであり、マイクロソフト社ＯＳのWindows（登録商標）では、グラフィック・デバイス・インタフェース（ＧＤＩ）がある。アップル社ＯＳのMacintosh（登録商標）では、QuickDrawやQuartz Extremeがある。アプリケーション３０１は、基本関数群を使うことで、描画情報に関してデバイスに依存せずに出力を行うことが可能である。
描画プログラム３０２は、ディスプレイやプリンタ等の、指定されたデバイスのデバイスドライバ（不図示）を動的にリンクして使用することで、それぞれのデバイスに対する出力処理を行う。例えば、プリンタ１０６に出力する場合、プリンタドライバ３０３に対して出力処理が実行される。本実施形態にて描画プログラム３０２は、主にＣＭＹＫデータをＲＧＢデータに変換するために用いる。描画プログラム３０２が出力するデータは、必要に応じてスプーラ３０４に格納される。また、ＣＭＹＫデータをＲＧＢデータに変換する必要が無い場合には、描画プログラム３０２の機能は使用しない。プリンタドライバ３０３は、どのような設定で印刷データを生成するかを決定するための印刷設定画面の表示および制御機能を有する。印刷設定画面上で指定された設定情報はアプリケーション３０１に通知される。アプリケーション３０１は設定情報に基づいて生成した印刷データを受け取り、ネットワークＩ／Ｆ部２０７を介してプリンタコントローラ１０４に印刷データを出力する。
【００１５】
図４（Ａ）はプリンタドライバ３０３のモジュール構成例を示すブロック図である。プリンタドライバ３０３は、設定情報処理部４０１、印刷データ取得部４０２、印刷データ出力部４０３から構成される。設定情報処理部４０１は、ディスプレイ１０３に印刷設定画面を表示させ、ユーザ操作により入力された印刷設定情報をアプリケーション３０１に通知する。印刷データ取得部４０２は、印刷設定情報に基づいてアプリケーション３０１が作成した印刷データを取得し、印刷データ出力部４０３に出力する。印刷データ出力部４０３は、印刷データ取得部４０２より受け取った印刷データをネットワークＩ／Ｆ部２０７に出力することで、プリンタコントローラ１０４に送信する。
【００１６】
図４（Ｂ）はプリンタ１０６のＣＰＵ５０２が実行するプログラムのモジュール構成例を示すブロック図である。各モジュールが実行する処理については、ＲＡＭ５０３をワークエリアとして利用することで実現される。プログラムは、印刷データ取得部６０１、印刷データ解釈部６０２、レンダリング処理部６０３、画像合成部６０４、二値化処理部６０５、エンジン制御部６０６、カラーマッチング処理部６０７より構成される。
【００１７】
印刷データ取得部６０１は、ネットワークＩ／Ｆ部５０５が受信した印刷データを受け取り、印刷データ解釈部６０２に出力する。印刷データ解釈部６０２は印刷データ取得部６０１から取得した印刷命令を解釈し、その種類に応じて処理を切り替え、色情報をカラーマッチング処理部６０７に渡す。カラーマッチング処理部６０７はプリンタエンジン１０５が扱う色材（インクやトナー等）の濃度画像データへの変換処理を行い、レンダリング描画命令を出力する。レンダリング処理部６０３はレンダリング描画命令に従って、１ページ分の画像メモリへの描画処理を実行する。ここで、画像を合成する必要がある場合、レンダリング後のデータは画像合成部６０４に渡される。画像合成は、ＣＭＹＫデータからＲＧＢデータに変換されてカラーマッチング処理部６０７でＣＭＹＫデータに再び変換したデータと、変換なしのＣＭＹＫデータをそれぞれレンダリングしたデータが存在する場合に行われる。画像合成部６０４は、レンダリング処理部６０３から受け取ったレンダリング後のデータを合成し、１つのデータとして二値化処理部６０５に出力する。画像合成を行わない場合には、レンダリング処理部６０３は直接、レンダリング後のデータを二値化処理部６０５に出力する。二値化処理部６０５はレンダリング後のデータ又は合成後のデータをドット状のパターン画像に変換し、エンジン制御部６０６に出力する。エンジン制御部６０６は、ドット状のパターン画像に基づいてプリンタエンジンへの制御指令をエンジンＩ／Ｆ部５０６に出力する。プリンタエンジン１０５は画像をインク像やトナー像として紙面上に形成する。
【００１８】
次に、本実施形態における印刷処理の流れについて、図５のフローチャートを参照して説明する。本処理は、ＣＭＹＫデータを、モニタ画面に表示されるＲＧＢデータに変換する処理を含む。印刷処理では、Ｓ７０１からＳ７０７までのステップをプリンタドライバ３０３が行い、Ｓ７０８からＳ７１９までのステップをプリンタコントローラ１０４が行う。
【００１９】
設定情報処理部４０１はＳ７０１において、アプリケーション３０１からの印刷指示に従い、印刷設定画面をディスプレイ１０３に表示し、ユーザからの入力を受け付ける。例えば、設定情報処理部４０１は図６に示すユーザインタフェース（ＵＩ）画面をユーザに提示し、設定情報に係るチェックボックス１７０１への入力を受け付ける。Ｓ７０２で設定情報処理部４０１は、ＣＭＹＫデータをＲＧＢデータ（アプリケーション３０１及び描画プログラム３０２が、モニタ表示のためにＣＭＹＫからＲＧＢに変換したデータ）に変換する設定であるか否かを判定する。つまり、印刷用色空間で構成される画像データに対し、色味を表示装置に合わせて修正するか否かについて判定される。具体的には、図６のチェックボックス１７０１に対して、ユーザ操作によりチェックマークが設定されていれば、色空間変換処理を実行し、チェックマークが設定されていなければ変換しないと判定される。ＣＭＹＫデータをＲＧＢデータに変換する設定である場合、Ｓ７０３に処理を進め、当該設定でない場合、Ｓ７０５に移行する。
Ｓ７０３で印刷データ取得部４０２は、アプリケーション３０１に対し、描画プログラム３０２を介した印刷データを要求する。アプリケーション３０１は要求に応じて、描画プログラム３０２を介した印刷データを生成する。アプリケーション３０１は、描画プログラム３０２を介すことで、ＣＭＹＫデータが存在する場合に、ＣＭＹＫデータをモニタ表示と同じＲＧＢデータに変換した印刷データを生成することができる。印刷データ取得部４０２はＳ７０４にて、描画プログラム３０２を介した生成済み印刷データをアプリケーション３０１から取得し、外部記憶装置２０４に格納する。以降Ｓ７０７まで印刷データは外部記憶装置２０４に格納される。
【００２０】
Ｓ７０２において、ＣＭＹＫデータをＲＧＢデータに変換する設定でない場合、Ｓ７０５で印刷データ取得部４０２は、通常の印刷データをアプリケーション３０１に要求する。通常の印刷データとは、描画プログラム３０２を介さずに、入力画像のＣＭＹＫデータやＲＧＢデータをそのまま印刷データに変換したものである。アプリケーション３０１は要求に応じて、描画プログラム３０２を介さない印刷データを生成する。印刷データ取得部４０２はＳ７０６にて、生成された通常の印刷データをアプリケーション３０１から取得する。
Ｓ７０４，Ｓ７０６の後、印刷データ出力部４０３はＳ７０７にて、印刷データ取得部６０１に対し、アプリケーション３０１から取得した印刷データをそのまま出力する。印刷データ取得部６０１は、プリンタコントローラ１０４を構成するモジュールの一つである。Ｓ７０２でＣＭＹＫデータをＲＧＢデータに変換する設定であると判定された場合、描画プログラム３０２を介した印刷データが出力される。それ以外の場合、通常の印刷データが出力される。Ｓ７０８で印刷データ取得部６０１は、プリンタドライバ３０３の印刷データ出力部４０３から出力された印刷データを取得し、外部記憶装置５０４に格納する。以降Ｓ７１３まで、印刷データは外部記憶装置５０４に格納される。また、後述する属性データも同様に外部記憶装置５０４に格納される。
【００２１】
印刷データ解釈部６０２はＳ７０９にて、Ｓ７０８で取得した印刷データを解釈する。印刷データの解釈とは、印刷データがどの色空間で構成されるか、およびイメージやテキスト等の属性を判断することである。印刷データ解釈部６０２は、解釈した内容に基づいて、カラーマッチング処理部６０７に色空間変換方法を指示する。カラーマッチング処理部６０７はＳ７１０にて、印刷データ解釈部６０２からの指示に従い、印刷データにおいてＲＧＢ色空間で構成されるデータをＣＭＹＫ色空間で構成されるデータに変換する。色空間変換は、外部記憶装置５０４に保存されているＩＣＣプロファイルに記述されているＲＧＢからＣＭＹＫへの変換情報に基づいて行われる。ＩＣＣプロファイルとは、Ｉｎｔｅｒｎａｔｉｏｎａｌ Ｃｏｌｏｒ Ｃｏｎｓｏｒｔｉｕｍ（ＩＣＣ）によって規定される色空間変換のためのプロファイルである。ＩＣＣプロファイルを用いた色空間変換処理について、図７を参照して説明する。ＩＣＣプロファイルには、ソースプロファイル１８０１とデスティネーションプロファイル１８０２の２つがあり、それらを組み合わせる事でＲＧＢからＣＭＹＫへの色空間変換が行われる。ソースプロファイル１８０１は、ＲＧＢからＸＹＺへ変換するLook Up Table（以下、ＬＵＴと略記する）を有し、このＬＵＴを利用して色空間変換のための演算を行う。ＸＹＺはデバイスに依存しない色空間であり、ＩＣＣプロファイルの定義ではProfile Connection Space（PCS）と呼ばれ、２つのプロファイルを接続する役割をもつ。デスティネーションプロファイル１８０２は、ＸＹＺからＣＭＹＫへ変換するＬＵＴを有し、このＬＵＴを利用して色空間変換のための演算を行う。カラーマッチング処理部６０７は、色空間変換後の印刷データをレンダリング描画命令として、レンダリング処理部６０３に送る。レンダリング処理部６０３はＳ７１１にて、カラーマッチング処理部６０７から受け取ったレンダリング描画命令に従って画像メモリに描画（データ書き込み）処理を行う。この際、レンダリング処理部６０３は、描画データに対応する、各画素の属性情報を表したデータ（属性データ）を生成し、描画データと一緒に保持する。レンダリング処理部６０３は生成した描画データを二値化処理部６０５に送る。二値化処理部６０５はＳ７１２にて、受け取った描画データをドット状のパターン画像に変換し、エンジン制御部６０６に出力する。エンジン制御部６０６はＳ７１３にて、ドット状のパターン画像に基づいてプリンタエンジンへの制御指令をエンジンＩ／Ｆ部５０６に出力する。これにより、プリンタエンジン１０５は画像をインク像やトナー像として紙面上に形成する。
【００２２】
本実施形態では、印刷処理の中でアプリケーションの要求に従い、画像表示の際のＣＭＹＫからＲＧＢへの変換により生成されるＲＧＢデータが、描画プログラムを介して取得される。これにより、ＲＧＢデータと同様の色空間変換処理をＣＭＹＫデータに対しても行うことができる。本実施形態によれば、ユーザが色味の修正に関する高度な知識や技術をもっていなくても、また特定のアプリケーションを使用しなくても、ＣＭＹＫデータを表示装置上の表示画像の印象に近づける色味の修正が可能である。
【００２３】
［第２実施形態］
次に本発明の第２実施形態を説明する。
第１実施形態では、ＣＭＹＫデータをＲＧＢデータに変換する設定に応じて、描画プログラム３０２を介した印刷データ、または通常の印刷データが出力される。つまり、全てのＣＭＹＫデータをＲＧＢデータに変換するか、何も変換しないかの選択肢がある。しかし、ユーザの要求には、全てのＣＭＹＫデータを変換してしまうのではなく、一部のＣＭＹＫデータをそのまま出力したいという場合もある。例えば、テキスト等はＲＧＢデータに変換してしまうと、純色性を維持できず、見栄えに影響を及ぼす可能性がある。そこで本実施形態では、印刷データの持つ属性に応じて、変換前のＣＭＹＫデータを使用するか、または変換後のＲＧＢデータを使用するかを選択できる処理について説明する。以下、第１実施形態の場合と同様の処理については説明を省略し、相違点を説明する。また、システム構成等は第１実施形態と同様であるため、既に使用した符号を用いることで、それらの詳細な説明を省略する。このような説明の省略については後述の実施形態でも同様である。
【００２４】
図８及び図９のフローチャートを参照して、本実施形態の印刷処理の流れを説明する。なお、Ｓ１７０１からＳ１７０３の処理は、図５のＳ７０１からＳ７０３と同様であるため、説明を省略する。
Ｓ１７０４で印刷データ取得部４０２は、描画プログラム３０２を介した生成済み印刷データをアプリケーション３０１から取得し、外部記憶装置２０４に格納する。ここで、ＣＭＹＫデータをモニタ表示と同じＲＧＢデータに変換したことを示す情報が、描画プログラム３０２を介した印刷データに付加される。Ｓ１７０４の処理後、第１実施形態とは異なり、ＣＭＹＫデータをＲＧＢデータに変換する設定の如何に関らず（Ｓ１７０２でＮＯの場合も）、Ｓ１７０５の処理が実行される。Ｓ１７０５からＳ１７１１の処理は、図５のＳ７０５からＳ７１１と同様であるため説明を省略する。図９のＳ１７１２でレンダリング処理部６０３は、Ｓ１７０４で生成された、ＣＭＹＫデータをモニタ表示と同じＲＧＢデータに変換したことを示す情報の存否を判定する。当該情報が存在する場合、Ｓ１７１３に処理を進めるが、当該情報が存在しない場合、Ｓ１７１５に移行する。
【００２５】
Ｓ１７１３でレンダリング処理部６０３は、画像メモリへの描画処理を行ったデータ（描画プログラム３０２を介した印刷データと、通常の印刷データを描画したデータ）を画像合成部６０４に送る。画像合成部６０４は、レンダリング処理部６０３から取得した描画データを画素ごとに比較して差分情報を算出し、差分情報を表した画像データ（差分データ）を生成する。対応する画素同士の差分を算出することで、どの画素においてＣＭＹＫデータがＲＧＢデータに変換されたのかについての情報を抽出できる。
【００２６】
図１０のフローチャートを参照して、差分データの生成処理を説明する。本処理は画像合成部６０４が行う。Ｓ８０１にて、描画データと同サイズの（差分）画像データを生成する処理が行われる。この画像データは２値のデータであり、全て初期値０で構成される。Ｓ８０２にて、２つの描画データ（Ｓ１７１３参照）の対応する画素を選択する処理が実行される。最初、描画データの１画素目がそれぞれ選択する。Ｓ８０３にて、選択した画素同士の差分が算出される。Ｓ８０４は、Ｓ８０３で算出した差分がゼロであるか否かの判定処理である。差分がゼロでなければ差分があると判定され、Ｓ８０５に処理を進める。また差分がゼロであれば差分なしと判定され、Ｓ８０６に移行する。
【００２７】
Ｓ８０５では、Ｓ８０１で生成した画像データにて選択した画素に対応する値を変換する。図１１を参照して具体的に説明する。図１１は通常の描画データ９０１と、描画プログラム３０２を介した描画データ９０２と、差分データ９０３を例示する。白丸印はＲＧＢ画素を表し、黒丸印はＣＭＹＫ画素を表す。差分データ９０３の初期値はゼロであるが、選択された描画データの画素同士の差分がある場合、その位置の画素に対応する値がゼロから１に変更される。そして図１０のＳ８０６に進む。Ｓ８０６は画素を全て選択したか否かの判定処理である。全ての画素の選択処理が行われた場合には処理を終了し、そうでない場合にはＳ８０７に移行する。Ｓ８０７では、比較対象である２つの描画データにおいて未選択の画素が新たに選択された後、Ｓ８０３に処理を戻す。
【００２８】
差分データの生成後、図９のＳ１７１４に進み、画像合成部６０４は、Ｓ１７１３で算出した差分があるか否かを判定する。差分データの値が全てゼロである場合、差分なしと判定される。一方、差分データの値に１を含む画素がある場合には差分ありと判定される。差分なしの場合、Ｓ１７１５に処理を進める。通常の印刷データを画像メモリに描画したデータについては、そのまま二値化処理部６０５に送られる。また、描画プログラム３０２を介した印刷データを画像メモリに描画したデータについては破棄する。
Ｓ１７１４で差分ありと判定された場合、Ｓ１７１７に進み、画像合成部６０４は、全ての画素で差分があるか否かを判定する。Ｓ１７１３で生成した差分データの値が全て１である場合、全ての画素で差分があると判定され、Ｓ１７１８に進む。また、いずれかの画素で差分がない（差分がゼロ）場合、Ｓ１７１９に進む。
Ｓ１７１８で画像合成部６０４は、描画プログラム３０２を介した印刷データに係る描画データ（画像メモリへの描画処理を行った第１描画データ）を二値化処理部６０５に送る。通常の印刷データに係る描画データ（画像メモリへの描画処理を行った第２描画データ）は破棄する。
【００２９】
Ｓ１７１９で画像合成部６０４は、２つの描画データの合成処理を行う。描画データの合成は、Ｓ１７１１で生成した属性データ及びＳ１７１３で生成した差分データに基づき行われる。具体的には、図１２のように合成処理が行われる。図１２は通常の描画データ（第２描画データ）１００１、描画プログラム３０２を介した第１描画データ１００２と、それらの合成データ１００３を示す。下方には属性データ１００４と差分データ１００５を示す。属性データ１００４にて「０」は背景、「１」はイメージ、「２」はグラフィックス、「３」はテキストをそれぞれ表す。
【００３０】
属性データ１００４がテキスト「３」であって、差分データ１００５が差分あり「１」と判定された画素については、第２描画データ１００１（つまりＣＭＹＫデータ）の画素を採用する。それ以外の画素については、第１描画データ１００２の画素を採用する。こうして、各画素を順次合成していき、全画素に対して合成処理が終了すると、合成データ１００３が生成される。ここでは、テキストの純色性等を考慮して、属性値がテキストをもつ場合、第２描画データ１００１の画素を採用している。これに限らず、図１３に示すＵＩ画面を表示し、どの属性に対してどちらの描画データを採用するかをユーザが選択できるようにしてもよい。図１３には適用属性に、イメージ、グラフィックス、テキストの３種類を例示する。ユーザは、イメージに対応するチェックボックス１１０１、グラフィックスに対応するチェックボックス１１０２、テキストに対応するチェックボックス１１０３に対して、チェックマークを設定可能である。
画像合成部６０４は生成した合成データを二値化処理部６０５に送る。図９に示すＳ１７１５、Ｓ１７１６の処理は、図５のＳ７１２、Ｓ７１３と同様であるため、説明を省略する。
【００３１】
本実施形態によれば、印刷データの属性情報に応じて、変換前のＣＭＹＫデータを使用するか、または変換後のＲＧＢデータを使用するかを選択できる。その分、処理量は増加するが、テキストの純色性を維持したい等、ユーザの意図に沿って、ＣＭＹＫデータをそのまま出力したい画像部分については、ＣＭＹＫデータを出力できるので利便性が高い。
【００３２】
［第３実施形態］
次に本発明の第３実施形態を説明する。
第１実施形態では、アプリケーションから、ＣＭＹＫデータをＲＧＢデータに変換した印刷データを取得した。この場合、アプリケーションと描画プログラムを利用したコンピュータ側での色空間変換処理が行われるため、色味を変換しない場合の処理と比べて、コンピュータの処理負担が増える。一般的に、色空間変換処理はコンピュータよりもプリンタの方が処理を速く行える。コンピュータの処理負担が増えると印刷処理全体として、処理速度が遅くなる可能性がある。そこで本実施形態では、予めアプリケーションが行うＣＭＹＫからＲＧＢへの色空間変換情報を取得し、これをプリンタで保持しておくことによりプリンタで色空間変換処理を行う。以下では、コンピュータの処理負担を減らし、印刷処理全体として処理速度を速くする処理について説明する。
【００３３】
図１４および図１５のフローチャートを参照して、本実施形態における印刷処理の流れを説明する。
図１４のＳ１２０１で設定情報処理部４０１は、アプリケーション３０１からの印刷指示に従い、印刷設定画面をディスプレイ１０３に表示させ、ユーザからの入力を受け付ける。例えば、図１６（Ａ）のユーザインタフェース（ＵＩ）画面が表示される。この表示例では、「ＣＭＹＫデータをモニタの表示に合わせる」かどうかのチェックボックス１４０１と、「コンピュータ側で処理」するかどうかのチェックボックス１４０２が表示され、入力を受け付ける。Ｓ１２０２はＣＭＹＫデータをモニタの表示に合わせて変換するか否かの判定処理である。図１６（Ａ）のチェックボックス１４０１にチェックマークが付けられた場合、Ｓ１２０３に処理を進め、チェックマークがない場合にはＳ１２０８に移行する。
【００３４】
設定情報処理部４０１はＳ１２０３にて、ＣＭＹＫデータをＲＧＢデータに変換する処理をコンピュータ側で行うか否かを判定する。図１６（Ａ）の「コンピュータ側で処理」に対応するチェックボックス１４０２に対して、チェックマークが付けられた場合、コンピュータ側で処理すると判定され、チェックされていなければプリンタ側で処理すると判定される。コンピュータ側で処理すると判定された場合、Ｓ１２０４（ＧＤＩを介した印刷データの要求）、次のＳ１２０５（ＧＤＩ経由で印刷データの取得）の処理が実行される。
【００３５】
一方、Ｓ１２０３にて、プリンタ側で処理すると判定された場合、Ｓ１２０６に処理を進める。設定情報処理部４０１は、アプリケーションの選択画面を表示する。例えば図１６（Ｂ）のＵＩ画面が表示される。プルダウンメニュー形式でアプリケーションの候補が表示される。ユーザは、モニタ画面上に画像を表示しているアプリケーションの選択操作を行う。設定情報処理部４０１はＳ１２０７にて、Ｓ１２０６で選択されたアプリケーションの情報を印刷データ取得部４０２に送信し、外部記憶装置２０４に格納する。Ｓ１２０８からＳ１２１２は図５のＳ７０５ないしＳ７０９と同様の処理であるため説明を省略する。
【００３６】
図１５のＳ１２１３でカラーマッチング処理部６０７は、Ｓ１２０７で送信されたアプリケーションの情報があるか否かを判定する。アプリケーションの情報が無い場合、Ｓ１２１５に処理を進める。この場合、Ｓ１２１５、Ｓ１２１６の処理は、図５のＳ７１０、Ｓ７１１の処理と同様である。Ｓ１２１７ないしＳ１２２４の処理は、図９のＳ１７１２ないしＳ１７１９の処理と同様である。
Ｓ１２１３でアプリケーションの情報があると判定された場合、Ｓ１２１４に進み、カラーマッチング処理部６０７は、アプリケーションに応じたＣＭＹＫからＲＧＢへの変換情報（ＣＭＹＫ→ＲＧＢ  ＬＵＴ）を取得する。この変換情報は予め作成されて、外部記憶装置５０４に保存されている、ＣＭＹＫ→ＲＧＢ  ＬＵＴの作成方法については後述する。カラーマッチング処理部６０７はＳ１２１５にて、色空間変換処理を行う。色空間変換処理に先立ち、まずＣＭＹＫデータからＲＧＢデータへの変換処理が実行される。プリンタドライバ３０３を介して取得した印刷データを複製し、複製したデータのＣＭＹＫデータに対して、ＣＭＹＫ→ＲＧＢ  ＬＵＴを用いて色空間を変換する処理が行われる。変換ではＩＣＣプロファイルを用いた場合と同様、ＬＵＴを利用した演算で処理される。そして、複製元のオリジナルデータと色空間変換を行った複製データに対して、それぞれ第１実施形態と同様に、ＩＣＣプロファイルを利用したＲＧＢからＣＭＹＫへの変換が行われる。Ｓ１２１６以降の処理については説明を省略する。
【００３７】
次に、変換情報（ＣＭＹＫ→ＲＧＢ  ＬＵＴ）の作成処理について、図１７を参照して説明する。まずＳ１３０１にてＣＭＹＫパッチ画像が作成される。図１８に示すように、ＣＭＹＫパッチ画像は、Ｃ、Ｍ、Ｙ、Ｋのそれぞれに対して０〜２５５の値を均等に分割して構成した画像である。そして、Ｓ１３０２では、ＣＭＹＫ→ＲＧＢ  ＬＵＴを作成したいアプリケーションで、Ｓ１３０１にて作成したパッチ画像のファイルを開く処理が実行される。Ｓ１３０３にて、アプリケーションから描画プログラム３０２を介して印刷を行うよう指示が行われ、ＣＭＹＫデータからＲＧＢデータへの色空間変換が実行される。Ｓ１３０４にて、色空間変換後のＲＧＢデータをプリンタドライバ３０３が取得し、外部記憶装置２０４に保存する。Ｓ１３０５にて、Ｓ１３０４で保存したＲＧＢデータを、入力したパッチ画像のＣＭＹＫデータと対応付ける処理が行われて、変換情報（ＣＭＹＫ→ＲＧＢ  ＬＵＴ）が作成される。
【００３８】
本実施形態では、予め変換情報（ＣＭＹＫ→ＲＧＢ  ＬＵＴ）が用意されたアプリケーションにのみ対応する形になるが、ＣＭＹＫデータをＲＧＢデータに変換する処理をプリンタ側で行うことができる。これにより、コンピュータでの処理負荷を軽減でき、印刷処理全体として処理速度が速くなる。
【００３９】
［その他の実施形態］
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００４０】
３０１  アプリケーション
３０２  描画プログラム
３０３  プリンタドライバ
４０１  設定情報処理部
４０２  印刷データ取得部
４０３  印刷データ出力部
６０４  画像合成部
６０７  カラーマッチング処理部
【図１】
2015061128.tif 000003
【図２】
2015061128.tif 000004
【図３】
2015061128.tif 000005
【図４】
2015061128.tif 000006
【図５】
2015061128.tif 000007
【図６】
2015061128.tif 000008
【図７】
2015061128.tif 000009
【図８】
2015061128.tif 000010
【図９】
2015061128.tif 000011
【図１０】
2015061128.tif 000012
【図１１】
2015061128.tif 000013
【図１２】
2015061128.tif 000014
【図１３】
2015061128.tif 000015
【図１４】
2015061128.tif 000016
【図１５】
2015061128.tif 000017
【図１６】
2015061128.tif 000018
【図１７】
2015061128.tif 000019
【図１８】
2015061128.tif 000020