(57)【要約】 【課題】  本発明は、解像度の異なるウィンドウをオーバーレイ表示することができるコンピュータシステムにおいて、画面コピー機能を提供することを目的とする。  【解決手段】  第１の解像度を持つ第１のイメージとこの第１のイメージよりも高い解像度を持つ第２のイメージとをオーバーレイ表示する表示装置を持つシステムにおける表示装置の画  面コピーをするための画面コピー方法であって、第１のイメージと第２のイメージとの解像度を同一にするために第１のイメージ又は第２のイメージのうちのいずれか一方のイメージの解像度を解像度変換し、この解像度変換後の一方のイメージと他方のイメージとを組み合わせて画面コピーイメージを生成することを特徴とする。  【選択図】  図１  
2005108035.tif 000002
【特許請求の範囲】
【請求項１】
第１の解像度を持つ第１のイメージとこの第１のイメージよりも高い解像度を持つ第２のイメージとをオーバーレイ表示する表示装置を持つシステムにおける前記表示装置の画  面コピーをするための画面コピー方法であって、
前記第１のイメージと前記第２のイメージとの解像度を同一にするために前記第１のイメージ又は前記第２のイメージのうちのいずれか一方のイメージの解像度を解像度変換し、
この解像度変換後の一方のイメージと他方のイメージとを組み合わせて画面コピーイメージを生成することを特徴とする画面コピー方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、グラフィカル・ユーザー・インタフェース（ＧＵＩ）を用いたウィンドウシステムにおける高解像度のグラフィックデータと低解像度のグラフィックデータとを画面にオーバーレイ表示したときにおける画面のハードコピー処理に関する。  
【背景技術】
【０００２】
サーバー、ワークステーション、パーソナルコンピュータ等のコンピュータシステムでは、グラフィカル・ユーザー・インタフェース（ＧＵＩ）を用いたウィンドウシステムが採用されている。  
従来のウィンドウシステムでは、例えば１６００×１２００ドットの解像度で液晶ディスプレイ等の表示装置に複数のウィンドウを表示し、これら複数のウィンドウにそれぞれグラフィックデータを表示している。一方、最近では超高精細の表示装置が開発され、コンピュータシステムで採用されるようになってきた。この超高精細の表示装置の一例として３２００×２４００ドットの解像度を持つものが市販されている。  
コンピュータシステムにこのような超高精細の表示装置が使用されても、グラフィックデータを表示制御するウィンドウシステムは、そのグラフィックデータを表示する解像度としては最大で１６００×１２００ドットであった。従って、超高精細の表示装置を用いてウィンドウシステムがＧＵＩを構成するアイコンやウィンドウの構成要素等を表示すると、ウィンドウシステムにおけるＧＵＩの表示ドット数が固定ドット数であることが多いため、従来の表示装置を用いた場合に比べて、アイコン等の表示サイズが小さくなり、大変見にくくなってしまっている。また、マウスを用いてアイコン等をクリックやドラッグ＆ドロップ等の操作する場合、大変操作性が悪くなってしまっていた。  
一方、コンピュータシステムにおいて、超高精細の表示装置を用いて例えば３２００×２４００ドットの解像度にてグラフィックデータを表示するアプリケーションプログラムを実行できることが要望されている。  
しかし、現在使用されているほとんどのウィンドウシステムがサポートしている解像度は最大で１６００×１２００ドットであるため、超高精細の解像度（例えば３２００×２４００ドット）の表示をするためには、このような解像度をサポートするウィンドウシステムの採用が必要である。  
従って、市場で多数使用されている超高精細の解像度をサポートしていないウィンドウシステムにおいて、従来の解像度のグラフィックデータを表示するウィンドウと超高精細のグラフィックデータを表示するウィンドウとをオーバーレイして表示することが要望されている。しかし、従来のウィンドウシステムでは解像度の異なるウィンドウをオーバーレイ表示する機能は実現されていないため、このような要望は実現できなかった。
【０００３】
従来、単一ラスタ走査ビデオモニター上に異なる解像度からなる画像を同時に表示する技術は開発されているが、これはマルチウィンドウを表示するウィンドウシステムを考慮したものではなく、これによりウィンドウシステムにおける解像度の異なるウィンドウのオーバーレイ表示を実現することはできなかった（特許文献１参照）。
【０００４】
そこで、出願人は、解像度の異なるウィンドウをオーバーレイ表示する機能を実現したコンピュータシステムを開発した。このような解像度の異なるウィンドウをオーバーレイ表示するコンピュータシステムにおいて、更に画面のハードコピー（以下、画面コピーと呼ぶ）をとる機能が要望されているが、表示されるウィンドウの解像度が異なるため実現できなかった。  
【特許文献１】特開平７−３０６６７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来、解像度の異なるウィンドウをオーバーレイ表示するコンピュータシステムにおいて、表示されるウィンドウの解像度が異なるため画面コピー機能を実現できなかった。  
本発明は、このような従来の欠点を解決するためになされたもので、解像度の異なるウィンドウをオーバーレイ表示することができるコンピュータシステムにおいて、画面コピー機能を提供することを目的とする。  
【課題を解決するための手段】
【０００６】
本発明の画面コピー方法は、第１の解像度を持つ第１のイメージとこの第１のイメージよりも高い解像度を持つ第２のイメージとをオーバーレイ表示する表示装置を持つシステムにおける表示装置の画  面コピーをするための画面コピー方法であって、第１のイメージと第２のイメージとの解像度を同一にするために第１のイメージ又は第２のイメージのうちのいずれか一方のイメージの解像度を解像度変換し、この解像度変換後の一方のイメージと他方のイメージとを組み合わせて画面コピーイメージを生成することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、解像度の異なるウィンドウをオーバーレイ表示することができるコンピュータシステムにおいて、画面コピー機能を実現できる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施例を図面を参照して説明する。
【実施例１】
【０００９】
まず、解像度の異なるウィンドウをオーバーレイ表示する動作を説明する。図１は本発明の一実施形態を示すコンピュータシステムを示す図である。パーソナルコンピュータ等で構成されるコンピュータシステム１０には、超高精細表示装置２０が接続されている。超高精細表示装置２０は、解像度（３２００×２４００ドット、２００ｄｐｉ（dot per inch））の画像の表示能力を持つ２０．８インチの表示装置である。  
コンピュータシステム１０には、オペレーティングシステム（ＯＳ）１３がインストールされている。ＯＳ１３には、標準機能として１６００×１２００ドット（１００ｄｐｉ）の解像度でウィンドウを表示装置に表示するためのウィンドウの制御（管理）を行うウィンドウシステム１８が組み込まれている。解像度３２００×２４００ドットの画像表示能力を持つ超高精細表示装置２０にウィンドウシステム１８が管理する解像度１６００×１２００ドットのウィンドウのイメージを表示するということは、１ドットを縦及び横にそれぞれ２倍に拡大して表示することになる。即ち、ウィンドウを表示するためのイメージの各１ドットを超高精細表示装置２０では４ドットで表現して表示することになる。このイメージの拡大は、表示制御回路が行うもので、その詳細は後述する。  
一般アプリケーション１１は、ウィンドウシステム１８の制御に基づいて超高精細表示装置２０に解像度１６００×１２００ドットで画面表示を行う機能を持つアプリケーションプログラムである。超高精細表示アプリケーション１２は、ウィンドウシステム１８の制御に基づいて超高精細表示装置２０に解像度３２００×２４００ドットで画面表示を行う機能を持つアプリケーションプログラムである。  
標準表示用ＡＰＩ（Application Program Interface）１４は、グラフィックスエンジン１６を用いてウィンドウシステム１８の標準機能である解像度１６００×１２００ドットでウィンドウを超高精細表示装置２０に表示させるときに、アプリケーションプログラムから呼び出されて（コールされて）動作するアプリケーション・プログラム・インタフェースである。  
グラフィックスエンジン１６は、標準表示用ＡＰＩ１４を介してアプリケーションプログラムからの超高精細表示装置２０への画面表示の要求に基づき、ディスプレイドライバー１７を介して表示制御装置１９に設けられたフレームメモリに画面表示するための表示イメージを描画する機能を持つ。ディスプレイドライバー１７は、超高精細表示装置２０のためのデバイスドライバーである。超高精細表示用ＡＰＩ（Application Program Interface）１５は、超高精細表示アプリケーション１２が解像度３２００×２４００ドットで超高精細表示装置２０に画面表示をさせるときに、呼び出されて動作するアプリケーション・プログラム・インタフェースである。  
表示制御装置１９は、超高精細表示装置２０にイメージを表示させるためのハードウェアであり、表示イメージを記憶するためのフレームメモリやイメージ表示を行うための制御回路が実装された基板（カード）で構成されるもので、一般的にはグラフィックカードと呼ばれている。  
画面コピー処理ルーチン２１は、超高精細表示装置２０に表示されている画面のコピーを指示するための図示しないキーボードからのキーイン又は超高精細表示装置２０に表示されているアイコンのマウスによるクリック等を常時チェックし、このチェック結果に基づいて、その時点で超高精細表示装置２０に表示されている画面のイメージのコピーをとり、図示しないプリンタに印刷するためのプログラムに転送するためのプログラムである。
【００１０】
図２は、表示制御装置１９の構成を示す図である。インタフェース回路１９１は、コンピュータシステム１０の図示せぬシステムバスと接続され、このシステムバスを介してディスプレイドライバー１７から送信される表示データ、表示コマンドを受信して描画回路１９２に出力する。描画回路１９２は、ディスプレイドライバー１７から送信を受けた表示データと表示コマンドに基づいて表示イメージを描画し、この表示イメージをメモリ制御回路１９３により、フレームメモリ１９４に書き込む機能を持つ。描画回路１９２は、画面コピーをするために、フレームメモリ１９４に書き込まれた表示イメージを画面コピーメモリ２００にコピーする機能も持つ。  
フレームメモリ１９４は、標準フレームメモリ１９４ａと拡張フレームメモリ１９４ｂとから構成される。標準フレームメモリ１９４ａは、超高精細表示装置２０にウィンドウシステム１８が管理する１６００ドット×１２００ドットの解像度の基本画面を表示するための表示イメージ（基本イメージ）を記憶する記憶装置である。標準フレームメモリ１９４ａは、表示画面１画面分のビットイメージとして１６００×１２００ドットのビットイメージをカラー表示するのに必要な記憶容量を持つ。尚、１ドット（１画素）をカラー表示するためにＲＧＢ（赤、緑、青）を２バイトデータで表現する。図６にこの１画素をカラー表示するための２バイトデータの構成を示す。図６において、１ビット目から５ビット目までの５ビットでＲ（赤）の色情報を表現し、６ビット目から１０ビット目までの５ビットでＧ（緑）の色情報を表現し、１１ビット目から１５ビット目までの５ビットでＢ（青）の色情報を表現する。また、０ビット目の１ビットは、後述するオーバーレイフラグを設定するためのビットとして定義する。  
拡張フレームメモリ１９４ｂは、超高精細表示装置２０にウィンドウシステム１８が管理する１６００ドット×１２００ドットの解像度の基本画面に解像度３２００×２４００ドットの超高精細のイメージをオーバレイ表示させるための表示イメージ（オーバーレイイメージ）を記憶する記憶装置である。拡張フレームメモリ１９４ｂは、表示画面１画面分のビットイメージとして３２００×２４００ドットのビットイメージをカラー表示するのに必要な記憶容量を持つ。尚、１ドット（１画素）をカラー表示するためにＲＧＢ（赤、緑、青）を２バイトデータで表現する。  
表示制御回路１９５は、フレームメモリ１９４に記憶（描画）されたイメージを超高精細表示装置２０に送信して表示させるための制御回路である。表示制御回路１９５は、標準バッファメモリ１９７、拡張バッファメモリ１９８、表示切替制御回路１９９、制御回路１９６とから構成されている。  
標準バッファメモリ１９７は、標準フレームメモリ１９４ａから読み出した表示イメージを格納するバッファメモリである。拡張バッファメモリ１９８は、拡張フレームメモリ１９４ｂから読み出した表示イメージを格納するバッファメモリである。表示切替制御回路１９９は、標準バッファメモリ１９７及び拡張バッファメモリ１９８から読み出された表示イメージを切り替えて超高精細表示装置２０に出力する機能を持つ。  
制御回路１９６は、メモリ制御回路１９３を制御して標準フレームメモリ１９４ａ及び拡張フレームメモリ１９４ｂから表示イメージの読み出す機能、この読み出した表示イメージの標準バッファメモリ１９７又は拡張バッファメモリ１９８への書き込み機能、標準バッファメモリ１９７又は拡張バッファメモリ１９８から表示イメージの読み出す機能、及び表示切替制御回路１９９の制御機能とを持つ。上述したように解像度３２００×２４００ドットの画像表示能力を持つ超高精細表示装置２０にウィンドウシステム１８が管理する解像度１６００×１２００ドットのウィンドウのイメージを表示するために、１ドットを縦及び横にそれぞれ２倍に拡大する必要がある。  
制御回路１９６は、このドットの拡大のために次のような動作をする。即ち、制御回路１９６は、標準フレームメモリ１９４ａから横方向に表示イメージを読み出す際には、同じドット位置から２度イメージを読み出して標準バッファメモリ１９７へ格納することで、標準フレームメモリ１９４ａに格納さた表示イメージを横方向に２倍に拡大する。同様に制御回路１９６は、標準フレームメモリ１９４ａから縦方向に表示イメージを読み出す際には、同じドット位置から２度イメージを読み出して標準バッファメモリ１９７へ格納することで、標準フレームメモリ１９４ａに格納された表示イメージを縦方向に２倍に拡大する。  
つぎに、表示装置の画面に表示されるウィンドウを説明する。本発明において、超高精細表示アプリケーション１２が超高精細表示装置２０にウィンドウを表示する場合、ウィンドウ枠４１、メニュー領域４２のＧＵＩは、解像度１６００×１２００ドットで管理して表示するが、クライアント領域４３は解像度３２００×２４００ドットで表示する。これにより、超高精細表示アプリケーション１２による２００ｄｐｉのイメージ表示が実現できる。  
図４に示すようにウィンドウ４０は、ウィンドウ枠４１によりその表示領域が定義される。ウィンドウ枠４１で定義された領域は、そのウィンドウを表示しているアプリケーションプログラムのコマンド（ファイル、編集等のコマンド）やアイコン等のＧＵＩ（グラフィカル・ユーザー・インタフェース）を表示するためのメニュー領域４２と、アプリケーションプログラムの実行に基づいて表示されるクライアント領域４３とから構成される。例えば、図面作成のアプリケーションプログラムが実行されると、クライアント領域４３には作成された図面が表示される。また、イメージのＶｉｅｗｅｒ（ビューワー）のアプリケーションプログラムが実行されるとに、クライアント領域４３にはドキュメント等のイメージが表示される。  
そして、ウィンドウシステム１８が標準機能として持つ解像度１６００×１２００ドットでウィンドウ４０を表示する場合、ウィンドウ枠４１の表示、メニュー領域４２におけるＧＵＩの表示及びクライアント領域４３におけるイメージの表示のすべてが、解像度１６００×１２００ドットで表示される。  
また、本発明において、超高精細表示アプリケーション１２が超高精細表示装置２０にウィンドウ４０を表示する場合、ウィンドウ枠４１の表示、メニュー領域４２におけるＧＵＩの表示は、解像度１６００×１２００ドットで表示するが、クライアント領域４３におけるイメージは解像度３２００×２４００ドットで表示する。これより、２００ｄｐｉのイメージ表示が実現できる。  
以下、一般アプリケーション１１により解像度１６００×１２００ドットでウィンドウの全体を表示し、超高精細表示アプリケーション１２によりクライアント領域４３におけるイメージを解像度３２００×２４００ドットで表示することで、解像度の異なるウィンドウをオーバーレイ表示する実施例の詳細な動作を図１乃至図１０を用いて説明する。  
図３は、超高精細表示用ＡＰＩ１５の動作を説明するためのフローチャートを示す図である。図５は、標準フレームメモリ１９４ａ及び拡張フレームメモリ１９４ｂに表示イメージが記憶されている状態と、超高精細表示装置２０の表示画面の表示状態とを示す図である。図６は、１ドット（１画素）をカラー表示するためにＲＧＢ（赤、緑、青）を２バイトで表現するためのデータ構造を示す図である。  
図７は、標準フレームメモリ１９４ａにウィンドウ枠のイメージが書き込まれた状態を示した図である。図８は、図７に図示したように標準フレームメモリ１９４ａにウィンドウ枠のイメージを記憶した場合に超高精細表示装置２０にウィンドウ枠が表示された表示画面の状態を示す図である。図９は、拡張フレームメモリ１９４ｂにオーバーレイ表示するための超高精細イメージを書き込んだ状態を示す図である。  
一般アプリケーション１１が超高精細表示装置２０の表示画面にウィンドウを表示する場合には、まずウィンドウシステム１８に対してウィンドウの作成要求を出力する。ウィンドウシステム１８は、一般アプリケーション１１からのウィンドウ作成要求を受け付けると、そのウインドウ作成要求に対してＩＤ番号（ウィンドウＩＤ）を発行して、そのウィンドウＩＤを一般アプリケーション１１に送付して通知する。  
ウィンドウシステム１８は、ウィンドウＩＤを発行すると、このウィンドウＩＤに対応するウィンドウの表示画面での表示位置の情報（位置情報）と、表示するウインドウの大きさの情報（サイズ：ウィンドウを表示するための縦と横のドット数で表す）と、そのウィンドウの重ね合わせの順位（重ね合わせ順位）とを決定し、これらの情報をウィンドウＩＤとともにウィンドウ管理テーブルに登録保存する。これらのウィンドウの位置情報、サイズ、重ね合わせ順位とを総称してウィンドウ情報と呼ぶ。  
ウィンドウの位置情報は、デフォルトとして、例えば表示画面の左上端を割り当てるものとする。ウィンドウのサイズは、デフォルトとして、例えばフルサイズ、即ち１６００×１２００ドットを割り当てる。ウィンドウの重ね合わせ順位とは、複数のウィンドウが重ねられた状態で画面に表示されている場合における該当ウィンドウの重ね合わせの順位であり、先頭（最前面）から何番目に表示されているかを示す情報である。この重ね合わせ順位は、デフォルトとして、例えば最前面を割り当てる。  
これらのウィンドウの位置情報、サイズ、重ね合わせ順位は、表示画面上でのユーザーのマウスの操作によってウィンドウの表示位置、サイズ、重ね合わせ順位の変更が指示される都度更新され登録保存される。従って、ウィンドウ管理テーブルには、現在表示画面に表示されているすべてのウィンドウに関する最新の位置情報、サイズ及び重ね合わせ順位が登録され管理されている。  
次に、一般アプリケーション１１は、ウィンドウシステム１８からウィンドウＩＤの通知を受けると、超高精細表示装置２０の表示画面にウィンドウを表示するために、標準表示用ＡＰＩ１４を呼び出して（コールして）ウィンドウの表示要求をする。一般アプリケーション１１は、この標準表示用ＡＰＩ１４を呼び出す際に、ウィンドウＩＤと標準サイズ（１６００×１２００ドット）でウィンドウを表示するための表示情報を転送する。  
標準表示用ＡＰＩ１４は、転送を受けたウィンドウＩＤに基づいて、ウィンドウシステム１８の管理テーブルを参照して、表示要求を受けたウィンドウの位置情報、サイズ及び重ね合わせ順位の各情報を取得する。更に標準表示用ＡＰＩ１４は、ウィンドウシステム１８の管理テーブルを参照して、表示要求を受けたウィンドウについて取得した位置情報、サイズ及び重ね合わせ順位の各情報と管理テーブルに登録されている他のウィンドウの位置情報、サイズ及び重ね合わせ順位とをそれぞれ比較照合する。  
標準表示用ＡＰＩ１４は、この比較照合の結果から、表示要求を受けたウィンドウにおいて、それよりも前面に表示されている他のウィンドウとの重なりが無く、実際に表示画面上でユーザーが見ることができる領域を確認する。標準表示用ＡＰＩ１４は、この確認したウィンドウの領域を表示するためのイメージをグラフィックスエンジン１６、ディスプレイドライバー１７を介して描画回路１９２により標準フレームメモリ１９４ａに書き込む。この標準フレームメモリ１９４ａに標準表示用ＡＰＩ１４がイメージを書き込む位置は、上記取得した表示要求を受けたウィンドウの位置情報に基づいている。  
この結果、例えば図５に示すように標準フレームメモリ１９４ａにウィンドウ４０１を表示するためのビットマップイメージが書き込まれる。このウィンドウ４０１は、メニュー領域４２とクライアント領域４３から構成される。標準フレームメモリ１９４ａのメニュー領域４２にはコマンド（ファイル、編集等のコマンド）やアイコン等のＧＵＩ（グラフィカル・ユーザー・インタフェース）を表示するためのイメージが記憶され、クライアント領域４３にはテキスト「ＡＡＡＡ‥‥」と「ＢＢＢＢ‥‥」を表示するためのイメージが記憶される。  
一方、超高精細表示アプリケーション１２が超高精細表示装置２０の表示画面にウィンドウを表示する場合には、まずウィンドウシステム１８に対してウィンドウの作成要求を出力する。ウィンドウシステム１８は、超高精細表示アプリケーション１２からのウィンドウの作成要求を受け付けると、そのウインドウの作成要求に対してＩＤ番号（ウィンドウＩＤ）を発行して、そのウィンドウＩＤを超高精細表示アプリケーション１２に送付して通知する。更にウィンドウシステム１８は、ウィンドウＩＤを発行すると、このウィンドウＩＤに対応するウィンドウの位置情報とサイズと重ね合わせ順位とを決定し、これらの情報をウィンドウＩＤとともにウィンドウ管理テーブルに登録保存する。  
次に、超高精細表示アプリケーション１２は、ウィンドウシステム１８からウィンドウＩＤの通知を受けると、超高精細表示装置２０の表示画面にウィンドウ枠及びメニュー領域にＧＵＩを表示するために、標準表示用ＡＰＩ１４を呼び出す。超高精細表示アプリケーション１２は、この標準表示用ＡＰＩ１４の呼び出す際に、ウィンドウＩＤと標準サイズ（１６００×１２００ドット）のウィンドウ枠及びＧＵＩを表示するための表示情報を転送する。  
標準表示用ＡＰＩ１４は、転送を受けたウィンドウＩＤに基づいて、ウィンドウシステム１８の管理テーブルを参照して、表示要求を受けたウィンドウの位置情報、サイズ及び重ね合わせ順位の各情報を取得する。更に標準表示用ＡＰＩ１４は、ウィンドウシステム１８の管理テーブルを参照して、表示要求を受けたウィンドウについて取得したの位置情報、サイズ及び重ね合わせ順位の各情報と管理テーブルに登録されている他のウィンドウの位置情報、サイズ及び重ね合わせ順位とをそれぞれ比較照合する。  
標準表示用ＡＰＩ１４は、この比較照合の結果から、表示要求を受けたウィンドウにおいて、それよりも前面に表示されている他のウィンドウとの重なりが無く、実際に表示画面上でユーザーが見るとができる領域を確認する。  
標準表示用ＡＰＩ１４は、この確認したウィンドウの領域を表示するためのイメージをグラフィックスエンジン１６、ディスプレイドライバー１７を介して描画回路１９２により標準フレームメモリ１９４ａに書き込む。この標準フレームメモリ１９４ａに標準表示用ＡＰＩ１４がイメージを書き込む位置は、表示要求を受けたウィンドウの上記取得した位置情報に基づいている。  
この結果、例えば図５に示すように標準フレームメモリ１９４ａにウィンドウ４０２を表示するためのウィンドウがビットマップイメージとして書き込まれる。即ち、図５に示すように標準フレームメモリ１９４ａに１６００×１２００ドットの解像度で、メニュー領域４２とクライアント領域４３とから構成されるウィンドウ４０２のウィンドウ枠４１を表示するためのビットマップイメージと、メニュー領域４２にＧＵＩを表示するためのビットマップイメージとを書き込む。  
次に、超高精細表示アプリケーション１２は、超高精細表示装置２０においてウィンドウ４０２のクライアント領域４３に解像度３２００×２４００ドットのイメージを表示するために超高精細表示用ＡＰＩ１５を呼び出す。超高精細表示アプリケーション１２は、この超高精細表示用ＡＰＩ１５を呼び出す際に、ウィンドウＩＤとウィンドウ４０２のクライアント領域４３にイメージを表示するための表示情報を転送する。  
以下、超高精細表示用ＡＰＩ１５の動作を図３に示したフローチャートを用いて詳細を説明する。  
図３において、まず超高精細表示用ＡＰＩ１５は、ウィンドウ４０２のクライアント領域４３に解像度３２００×２４００ドットのイメージを表示するためにウィンドウＩＤに基づいて、ウィンドウシステム１８の管理テーブルを参照して、表示要求を受けたウィンドウの位置情報、サイズ及び重ね合わせ順位の各情報を取得する（ステップＳ１）。  
次に超高精細表示用ＡＰＩ１５は、超高精細表示アプリケーション１２から表示要求のあったウィンドウが表示画面の最前面で表示されるように設定されているか否かを判定する（ステップＳ２）。この判定は、超高精細表示用ＡＰＩ１５が、ウィンドウシステム１８の管理テーブルを参照して、表示要求を受けたウィンドウの重ね合わせ順位と管理テーブルに登録されている他のウィンドウの重ね合わせ順位とを比較照合することで行う。もし、表示要求のあったウィンドウが表示画面の最前面で表示するように設定されていると判断した場合には、ステップＳ３へ進む。  
ステップＳ３において、超高精細表示用ＡＰＩ１５は、次のように動作する。超高精細表示用ＡＰＩ１５は、表示要求を受けたウィンドウについてステップＳ１で取得したウィンドウの位置情報とサイズとに基づいて、グラフィックスエンジン１６、ディスプレイドライバー１７を介して描画回路１９２により拡張フレームメモリ１９４ｂに図５に示すように３２００×２４００ドットの解像度で表示イメージを書き込む。この表示イメージが拡張フレームメモリ１９４ｂに書き込まれる位置は、表示画面の表示位置に対応している。即ち、標準フレームメモリ１９４ａに書き込んだウィンドウ４０２のクライアント領域４３に対応する位置である。（ステップＳ３）。この拡張フレームメモリ１９４ｂに表示イメージを書き込む位置の詳細な説明は、後述する。  
続いて、超高精細表示用ＡＰＩ１５は、標準フレームメモリ１９４ａに書き込まれたウィンドウ４０２のウィンドウ枠４１で囲まれたクライアント領域４３内の各画素をカラー表示するための各２バイトデータの０ビット目にオーバーレイフラグを設定する（ステップＳ６）。  
この結果、図５に示すように標準フレームメモリ１９４ａに書き込まれたウィンドウ４０２のクライアント領域４３内に表示するためのビットマップイメージが拡張標準フレームメモリ１９４ｂに書き込まれる。  
以上説明したように、一般アプリケーション１１及び超高精細表示アプリケーション１２により表示されるウィンドウのイメージが標準フレームメモリ１９４ａと拡張フレームメモリ１９４ｂに書き込まれたことになる。  
以後図２及び図５を用いて標準フレームメモリ１９４ａと拡張フレームメモリ１９４ｂに書き込まれた表示イメージを表示制御回路１９５により超高精細表示装置２０で表示する動作を説明する。  
まず、制御回路１９６がメモリ制御回路１９３を制御して標準フレームメモリ１９４ａ及び拡張フレームメモリ１９４ｂの互いに対応する位置からそれぞれ所定量の表示イメージを読み出し、一旦標準バッファメモリ１９７、拡張バッファメモリ１９８にそれぞれ保存する。次に制御回路１９６は、標準バッファメモリ１９７及び拡張バッファメモリ１９８から表示イメージを読み出して表示切替制御回路１９９に出力する。表示切替制御回路１９９は、標準バッファメモリ１９７から読み出された表示イメージを１ドット（画素）毎にオーバーレイビットが設定されているか否かを判定する。  
表示切替制御回路１９９は、この判定結果に基づいて、標準バッファメモリ１９７から読み出した表示イメージのオーバーレイビットの判定をした１ドット（画素）か又はこの判定した１ドット（画素）に対応する拡張バッファメモリ１９８から読み出した表示イメージの１ドット（画素）のいずれかを切替選択して出力することにより、超高精細表示装置２０で表示させる。  
表示切替制御回路１９９は、上記判定の結果、オーバーレイビットが設定されていない場合は、標準バッファメモリ１９７から読み出した表示イメージのオーバーレイビットの  判定をした１ドットを選択して出力し、またオーバーレイビットが設定されている場合にはオーバーレイビット判定をした１ドットに対応する拡張バッファメモリ１９８から読み出した表示イメージの１ドットを選択して出力する。  
表示切替制御回路１９９は、このように標準フレームメモリ１９４ａから読み出したすべての表示イメージに対してオーバーレイビットの設定の有無の判定及び入力した表示イメージの切替選択をすることによって、標準フレームメモリ１９４ａ及び拡張フレームメモリ１９４ｂから読み出した表示イメージをオーバーレイして表示させる働きをする。  
このような表示切替制御回路１９９の働きにより、図５に示した標準フレームメモリ１９４ａ及び拡張フレームメモリ１９４ｂに記憶された表示イメージは、図５の表示画面に図示したようにオーバーレイされて表示される。即ち、拡張フレームメモリに記憶された解像度３２００×２４００ドットの表示イメージが標準フレームメモリ１９４ａに記憶されたウィンドウ４０２のクライアント領域４３にオーバーレイ表示される。  
このようにオーバーレイ表示されるのは、先に説明したように標準フレームメモリのクライアント領域４３を構成する各ドット（画素）をカラー表示するための２バイトデータにオーバーレイフラグが設定されているからである。  
次に図３に示したフローチャートにおける動作説明をステップＳ４から再開する。ステップＳ２の判定で、超高精細表示用ＡＰＩ１５がウィンドウシステム１８から取得した各ウィンドウの重ね合わせ順位に基づいて、超高精細表示アプリケーション１２から表示要求のあったウィンドウが最前面で表示するように設定されていないと判断された場合には、ステップＳ４へ進む。ステップＳ４へ進む場合には、超高精細表示アプリケーション１２から表示要求のあったウィンドウに対して、そのウィンドウより前面に表示されている他のウィンドウが少なくとも１つ存在することである。  
超高精細表示用ＡＰＩ１５がウィンドウシステム１８から取得した各ウィンドウの位置情報、サイズ及び重ね合わせ順位とに基づいて、超高精細表示アプリケーション１２から表示要求のあったウィンドウとそのウィンドウより前面に表示されているウィンドウとの重なり具合をチェックして、超高精細表示アプリケーション１２から表示要求のあったウィンドウがそのウィンドウより前面に表示されている他のウィンドウとの重なりが無く、実際の表示画面で表示される部分が存在するか否かを判定する（ステップＳ４）。  
もし、超高精細表示アプリケーション１２から表示要求のあったウィンドウのすべての部分が、そのウィンドウより前面に表示されている他のウィンドウと重なっている場合には、実際の表示画面においては表示されず見えない状態である。従ってこの場合には、超高精細表示用ＡＰＩ１５は何もせずにその処理は終了する（ステップＳ４の「なし」の場合）。  
もし、超高精細表示アプリケーション１２から表示要求のあったウィンドウの一部にそのウィンドウより前面に表示されている他のウィンドウとの重なりが無く実際の表示画面において表示される部分が存在する場合は、ステップＳ５へ進む（ステップＳ４の「あり」の場合）。  
以後、超高精細表示アプリケーション１２から表示要求のあったウィンドウの一部に他のウィンドウとの重なりが無く実際の表示画面において表示される部分が存在する一例として図１０に示す場合を想定する。  
続くステップＳ５では、超高精細表示用ＡＰＩ１５は、図１０において超高精細表示アプリケーション１２から表示要求のあったウィンドウ４０２がそれよりも前面に表示されているウィンドウ４０３と重なっていないクライアント領域４３を複数の矩形領域に分割する。この矩形領域をＶｉｅｗ片と呼ぶ。図１０では、Ｖｉｅｗ片４３ａとＶｉｅｗ片４３ｂとが存在する。  
超高精細表示用ＡＰＩ１５は、このＶｉｅｗ片４３ａとＶｉｅｗ片４３ｂの部分において表示される表示イメージを拡張フレームメモリ１９４ｂに書き込む（ステップＳ５）。この表示イメージの拡張フレームメモリ１９４ｂへの書き込み動作は、先にステップＳ３で説明した動作と同様に行う。  
次にステップＳ６において、超高精細表示用ＡＰＩ１５は、標準フレームメモリ１９４ａに書き込まれたウィンドウ４０２のクライアント領域４３のＶｉｅｗ片４３ａとＶｉｅｗ片４３ｂに対応する位置の各画素をカラー表示するための２バイトデータの０ビット目にオーバーレイフラグを設定する。  
このように超高精細表示用ＡＰＩ１５がステップＳ４からステップＳ６の動作を行うことにより、超高精細表示アプリケーション１２から表示要求のあったウィンドウにおいて、そのウィンドウより前面に表示されている他のウィンドウと重なっていない部分が表示画面にオーバーレイ表示されることは、先の表示切替制御回路１９９の動作説明から明らかであるため、ここでその詳細な説明は省略する。  
以後、超高精細表示アプリケーション１２から表示要求のあったウィンドウが表示画面上でその表示位置が移動させられたり、その大きさが変更されたり、他のウィンドウとの重なりの状態が変更された場合には、超高精細表示用ＡＰＩ１５が図３に示したフローチャートに示した動作をすることにより、表示画面にオーバーレイ表示される。  
ここで、基本フレームメモリ１９４ａにウィンドウのイメージが書き込まれた場合に、超高精細表示装置２０の表示画面にどのような位置関係で表示されるかを説明する。  
図７に示すように標準フレームメモリにウィンドウ枠が書き込まれた場合を考える。この標準フレームメモリは、ウィンドウシステムが標準で管理する１６００×１２００ドットの解像度に対応した記憶容量を持ち、図示したように左上を原点とする座標軸が設定されているものとする。この座標軸は、表示画面の表示位置に対応している。  
図７において、ウィンドウ枠のクライアント領域は、縦１００ドット、横１００ドットの大きさで左上の位置が座標（１００，１００）、右上の位置は座標（２００，１００）、右下の位置は座標（２００，２００）、左下の位置は座標（１００，２００）となる。このように標準フレームメモリにウィンドウ枠が書き込まれた場合、超高精細表示装置２０には、図８に示すようにウィンドウ枠が表示される。図８では説明の便宜上超高精細表示装置２０の表示画面に左上を原点する座標軸を設定した。  
超高精細表示装置２０の表示ドット数は３２００×２４００ドットであり、ウィンドウシステム１８が標準で管理する１６００×１２００ドットに対して、縦横ともに２倍のドット数である。従って、標準フレームメモリに書き込まれた表示イメージは、縦横ともに２倍して超高精細表示装置２０に表示することになる。即ち、図８に示すようにウィンドウ枠のクライアント領域の左上の位置は座標（２００，２００）となり、同様に左下の位置は座標（２００，４００）、右上の位置は座標（４００，２００）、右下の位置は座標（４００，４００）となる。  
次に、超高精細表示アプリケーション１２がウィンドウを表示し、そのウィンドウのクライアント領域に３２００×２４００ドットの解像度の表示イメージをオーバーレイ表示する場合に、超高精細表示装置の表示画面にどのような位置関係でウィンドウが表示されるかを説明する。即ち、標準フレームメモリにウィンドウ枠が書き込まれ、拡張フレームメモリにオーバーレイ表示するための３２００×２４００ドットの解像度の表示イメージが書き込まれた場合に、超高精細表示装置の表示画面にどのような位置関係でウィンドウが表示されるかを説明する。
【００１１】
ここで、超高精細表示アプリケーション１２がそのウィンドウの表示要求により、標準表示用ＡＰＩ１４を用いて図７に示すように標準フレームメモリにウィンドウ枠を書き込んだ場合を考える。この場合、超高精細表示装置の表示画面には図８に示すようにウィンドウ枠が表示される。  
このとき、超高精細表示アプリケーション１２はそのウィンドウの表示要求により、超高精細表示用ＡＰＩ１５を用いて図９に示すように拡張フレームメモリにウィンドウ枠のクライアント領域に表示するための表示メージが書き込まれる。即ち、図９において、表示イメージは、その左上の位置が座標（２００，２００）、左下の位置が座標（２００，４００）、右上の位置が座標（４００，２００）、右下の位置が座標（４００，４００）となる。そして、この表示イメージの拡張フレームメモリに書き込まれた位置は、図８に示したように超高精細表示装置２０の表示画面に表示されるクライアント領域と位置が合致する。  
そして、先に図２における表示切替制御回路１９９について動作説明したように、表示切替制御回路１９９は、標準バッファメモリ１９７から読み出した１ドットの表示イメージデータにおいてオーバレイフラグの設定の有無をチェックする。もし、オーバレイフラグが設定されている場合には、表示切替制御回路１９９は標準バッファメモリ１９７から読み出し上記オーバレイフラグの設定の有無をチェックした１ドットのイメージデータに対応する拡張バッファメモリ１９８から読み出した１ドットの表示イメージを切り替えて出力することになる。  
以下に、図１１に示した画面コピー処理ルーチン２１の動作を示すフローチャートに基づいて、画面コピー動作について説明する。
【００１２】
画面コピー処理ルーチン２１は、常時動作している。まず、超高精細表示装置２０に表示されている画面のコピーを指示するための図示しないキーボードからのキーイン又は超高精細表示装置２０に表示されているアイコンのマウスによるクリック等を常時チェックして画面コピーの指示があるか否かをチェックする（ステップＳ１０）。画面コピーの指示がある場合にはステップＳ１１に進み、指示がない場合にはステップＳ１０に戻る。
【００１３】
続くステップＳ１１では、標準フレームメモリ１９４ａから表示イメージ（以下、基本イメージと呼ぶ）を読み出し画面コピーメモリ２００に記録する。この基本イメージを画面コピーメモリ２００に記録する前に、基本イメージの各画素に対応するデータの０ビット目にオーバーレイフラグが設定されているか否かをチェックする。そして基本イメージのすべての画素に対応するデータでのオーバーレイフラグの設定の有無を記録する。この記録したオーバーレイフラグの設定の有無を参照することにより、オーバーレイ表示をする領域の位置が判断できるので、この領域の位置情報を画面コピーメモリ２００に記録する。
【００１４】
続いて、ステップＳ１２で、オーバーレイフラグの設定がされているか否かを判断する。オーバーレイフラグが設定されていない場合には、超高精細表示装置２０にオーバーレイ表示がされていないことを意味し、ステップＳ１６へ進む。この場合、ステップＳ１６では、画面コピーメモリ２００に記録されている基本イメージを図示しないプリンタに印刷するためのプログラムに転送する（ステップＳ１６）。その後、処理はステップＳ１０へ戻る。
【００１５】
ステップＳ１２でオーバーレイフラグが設定されていると判定された場合には、ステップＳ１３へ進む。オーバーレイフラグが設定されている場合には、超高精細表示装置２０にオーバーレイ表示がされていることを意味する。
【００１６】
ステップＳ１３では、画面コピーが高精細のコピーをするモードに設定されているか否かを判定する。詳細な説明は省略するが、画面コピーを高精細でするか否かをユーザーから指定することができるものとし、その設定情報を参照することで高精細モードの設定を判断する。高精細モードが設定されている場合には、ステップＳ１４に進み、高精細モードが設定されていない場合には、ステップＳ１５へ進む。
【００１７】
基本イメージとオーバーレイイメージとでは、解像度が異なるので、解像度を一致させる必要がある。高精細モードでは、解像度をオーバーレイイメージの解像度に一致させるために、画面コピーメモリ２００に記録した基本イメージを拡大、この場合には縦横にそれぞれ２倍の拡大し、その結果を画面コピーメモリ２００に記録する。続いて、先に記録したオーバーレイ表示をする領域の位置情報を参照して、拡大した基本イメージと拡張フレームメモリ１９４ｂに記録されているオーバーレイイメージとを透過処理して画面コピーとして印刷するための画面イメージを作成し画面コピーメモリ２００に記録する。（ステップＳ１４）
透過処理とは、画面コピーとして印刷するための画面イメージを構成する各画素を、上記拡大した基本イメージの画素と拡張フレームメモリ１９４ｂに記録されているオーバーレイイメージの画素とのいずれかから選択して、画面コピーとして印刷するための画面イメージを生成することである。即ち、オーバーレイフラグが設定されている画素の場合には、拡張フレームメモリ１９４ｂに記録されているオーバーレイイメージの画素を選択する。一方、オーバーレイフラグが設定されていない画素の場合には、上記拡大した基本イメージの画素を選択する。
【００１８】
続いて、ステップＳ１６において、画面コピーメモリ２００に記録されている画面コピーとして印刷するための画面イメージを図示しないプリンタに印刷するためのプログラムに転送する（ステップＳ１６）。その後、処理はステップＳ１０へ戻る。
【００１９】
一方、高精細モードが設定されていない場合にはステップＳ１５において、まず拡張フレームメモリ１９４ｂに記録されているオーバーレイイメージを、その解像度が基本イメージの解像度になるようにイメージの縮小処理をする。この後、この縮小イしたメージと画面コピーメモリ２００に記録した基本イメージとを透過処理して画面コピーとして印刷するための画面イメージを作成し画面コピーメモリ２００に記録する。続いて、ステップＳ１６に進む。
【００２０】
以上ように基本イメージとオーバーレイイメージとの解像度を一致させた後、透過処理をすることで、画面コピーとして印刷するための画面イメージを作成している。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態を示すコンピュータシステムを示す図である。
【図２】図１に示した表示制御装置１９の構成を示す図である。
【図３】超高精細表示用ＡＰＩ１５の動作を説明するためのフローチャートを示す図である。
【図４】ウィンドウ４０の構成を示す図である。
【図５】標準バッファメモリ１９７及び拡張バッファメモリ１９８に表示イメージが記憶されている状態と表示画面の表示状態とを示す図である。
【図６】１画素をカラー表示するための２バイトデータの構成を示す図である。
【図７】標準フレームメモリ１９４ａにウィンドウ枠のイメージが書き込まれた状態を示す図である。
【図８】図７に図示したように標準フレームメモリ１９４ａにウィンドウ枠のイメージを記憶した場合に超高精細表示装置２０にウィンドウ枠が表示された表示画面の状態を示す図である。
【図９】拡張フレームメモリ１９４ｂにオーバーレイ表示するための超高精細イメージを書き込んだ状態を示す図である。
【図１０】超高精細表示アプリケーション１２から表示要求のあったウィンドウの一部に他のウィンドウとの重なりが無く実際の表示画面において表示される部分が存在する一例を示す図である。
【図１１】画面コピー処理ルーチンの動作を説明するためのフローチャートを示す図である。
【符号の説明】
【００２２】
１０  コンピュータシステム  
１１  一般アプリケーション  
１２  超高精細表示アプリケーション  
１３  ＯＳ（オペレーティングシステム）  
１４  表示表示用ＡＰＩ  
１５  超高精細表示用ＡＰＩ  
１６  グラフィックスエンジン  
１７  ディスプレイドライバー  
１８  ウィンドウシステム  
１９  表示制御装置  
２０  超高精細表示装置  
【図１】
2005108035.tif 000003
【図２】
2005108035.tif 000004
【図３】
2005108035.tif 000005
【図４】
2005108035.tif 000006
【図５】
2005108035.tif 000007
【図６】
2005108035.tif 000008
【図７】
2005108035.tif 000009
【図８】
2005108035.tif 000010
【図９】
2005108035.tif 000011
【図１０】
2005108035.tif 000012
【図１１】
2005108035.tif 000013