JP4284286B2 - 改善された画素密度を有する表示装置とのアプリケーションプログラムの互換性を可能にする方法および装置 - Google Patents

改善された画素密度を有する表示装置とのアプリケーションプログラムの互換性を可能にする方法および装置 Download PDF

Info

Publication number
JP4284286B2
JP4284286B2 JP2005050831A JP2005050831A JP4284286B2 JP 4284286 B2 JP4284286 B2 JP 4284286B2 JP 2005050831 A JP2005050831 A JP 2005050831A JP 2005050831 A JP2005050831 A JP 2005050831A JP 4284286 B2 JP4284286 B2 JP 4284286B2
Authority
JP
Japan
Prior art keywords
pixel density
application program
display device
density display
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2005050831A
Other languages
English (en)
Other versions
JP2005276189A5 (ja
JP2005276189A (ja
Inventor
エイチ.チュー チー
ダブリュ.フラー ジェーソン
シー.ベントレイ キース
オー.ゲリー ロン
コーシュ ジーク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2005276189A publication Critical patent/JP2005276189A/ja
Publication of JP2005276189A5 publication Critical patent/JP2005276189A5/ja
Application granted granted Critical
Publication of JP4284286B2 publication Critical patent/JP4284286B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F6/00Air-humidification, e.g. cooling by humidification
    • F24F6/12Air-humidification, e.g. cooling by humidification by forming water dispersions in the air
    • F24F6/14Air-humidification, e.g. cooling by humidification by forming water dispersions in the air using nozzles
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61HPHYSICAL THERAPY APPARATUS, e.g. DEVICES FOR LOCATING OR STIMULATING REFLEX POINTS IN THE BODY; ARTIFICIAL RESPIRATION; MASSAGE; BATHING DEVICES FOR SPECIAL THERAPEUTIC OR HYGIENIC PURPOSES OR SPECIFIC PARTS OF THE BODY
    • A61H39/00Devices for locating or stimulating specific reflex points of the body for physical therapy, e.g. acupuncture
    • A61H39/06Devices for heating or cooling such points within cell-life limits

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Rehabilitation Therapy (AREA)
  • Chemical & Material Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Combustion & Propulsion (AREA)
  • Epidemiology (AREA)
  • Pain & Pain Management (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Mechanical Engineering (AREA)
  • Dispersion Chemistry (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Image Processing (AREA)

Description

本発明は、一般的に、アプリケーションプログラムの後方互換性(backward compatibility)の分野に関し、より詳細には、改善された画素密度を有する表示装置とのアプリケーションプログラムの後方互換性を可能にする分野に関する。
ハンドヘルドコンピューティング装置(本明細書では、個人用携帯情報端末「PDA」とも呼ばれる)が発展するに従って、このクラスの装置の計算能力は、非常に向上している。特に大きな進歩が見られるPDAのハードウェアコンポーネントは、表示画面である。時が経過するにつれて、PDAの表示画面の解像度および画素密度の双方は、大幅に増大した。本明細書において、用語「解像度」は、表示画面上で近接することができる水平および垂直方向の画素の数を意味する。例えば、ある種のPDAは、水平画素数240および垂直画素数320であるのに対し、他のPDAは、水平画素数480および垂直画素数640である。本明細書では、用語「画素密度」は、指定された測定単位の範囲内の表示画面上において近接することができる画素数を意味する。通常、画素密度は、ドット(またはピクセル)パーインチ(dpi)で表される。例えば、ある種のPDAは、96dpiの表示画面を利用するのに対し、他のPDAは、192dpiの改善された画素密度の表示画面を使用している。
最近のPDAの解像度および画素密度の改善により、ユーザに恩恵がもたらされている。解像度および画像密度の改善により、画面上でより多くの情報を表示することが可能になり、従って、より容易にドキュメントおよびウェブページを見ることができるようになり、他の機能の実行も可能になる。解像度の改善により、透明度(clarity)および可読性(readability)も改善される。しかし、解像度および画素密度の改善により、PDAのためのアプリケーションプログラムを書くプログラマには難題がもたらされる。これらの難題は、通常、多くのPDAアプリケーションが、表示画面が特定の画素密度を有すると仮定して書かれていることによって引き起こされる。この問題は、オペレーティングシステムが提供し、画面に関係する機能を実行するためにアプリケーションプログラムが呼び出すアプリケーションプログラムインタフェース(API)が、しばしば画素をパラメータとして使用することによってさらに複雑になる。従って、例えば、96dpiの表示画面で使用されるように構成されたアプリケーションが、画面上で幅2分の1インチ(1.27cm)のユーザインタフェースボタンを描く場合、アプリケーションは、APIを呼び出して幅48画素のボタンを作成する。しかし、同じアプリケーションプログラムが、例えば192dpiの改善された画素密度を有するPDA上で実行される場合、同じ48画素幅のボタンは、4分の1インチ(0.64cm)の幅にしかならない。改善された画素密度を有する装置を導入する前に作成されたアプリケーションプログラムは、このような密度の増加を認識しないので、これらのプログラムによって描かれたすべてのユーザインタフェースオブジェクトは、意図するよりも小さく表示される。画面をタッチセンシティブデバイス(touch sensitive device)として利用する入力操作は、このようなレガシアプリケーションプログラムによって誤入力されるおそれがある。
この問題の1つの解決策は、より新しいPDAの改善された画素密度をサポートするために、アプリケーションプログラマが、そのアプリケーションを再プログラムすることが必要となる。しかし、このことは、実際にそのアプリケーションのコーディングをやり直さなければならないプログラマにとって、もどかしく時間がかかり得る。このことは、増大した画素密度を有する新しい装置を用いてアプリケーションを使用するためにアプリケーションが再コーディングされるのを待たなければならないユーザにとっても、もどかしい。場合によっては、プログラマは、より高い密度の表示のために、アプリケーションプログラムを再コーディングしないと単に決定することもできる。そして、プログラムのユーザは、より高い密度の表示画面を利用するために別のプログラムに移行せざるを得なくなる。
この問題の別の解決策では、より高い解像度の画面上で画面に関係する機能を実行するための新しいAPIセットが作られる。しかし、この解決策では、レガシアプリケーションがより高い密度の表示を利用することが可能にならず、また、新しい高密度対応のアプリケーションを作成するプログラマがまったく新しいAPIを利用することが必要なため、やはり望ましいものではない。従って、レガシアプリケーションは、アプリケーションを書き直さずに、改善された画素密度画面に正しく入力および出力ができ、新しい高密度対応アプリケーションがレガシアプリケーションと同じ画面操作用のAPIセットを使用するのを可能にし、画面入力および出力を行うAPIを書き直さずにこの機能を使用可能にすることが望ましい。これらまたは他の問題を考慮して本発明の様々な実施形態が構成される。
本発明によれば、上記および他の問題を、増大した画素密度を有する表示装置とのアプリケーションプログラムの互換性を可能にする方法および装置によって解決する。本発明が提供する機能を利用して、レガシアプリケーションは、修正せずに、改善された画素密度画面に合わせて正しく入力および出力することができる。さらに、高密度表示対応のアプリケーションは、改善された画素密度に対応していないレガシアプリケーションと同じ画面操作用のAPIセットを利用することができる。この機能は、画面入力および出力を行うAPIを書き直す必要なしに提供することができる。
本発明の一態様によると、より低い画素密度の表示装置と共に使用するように構成されたアプリケーションプログラムが、より高い画素密度の表示装置を十分に利用することを可能にする方法が提供される。この方法によると、PDAまたは他の種類のコンピューティング装置上で実行されているアプリケーションプログラムが、APIに要求を発行する、すなわちAPIを呼び出して、画面に描画することやタッチ画面(touch sensitive screen)から入力を受け取ることなどの画面入力または出力機能を実行することができる。このようなAPIの呼出しは、実行される動作を定義する1または複数のパラメータを含み、画素単位を使用して表現することができる。例えば、画面上の48画素幅のユーザインタフェースボタンを描くための呼出しを、APIに対し行うことができる。
このような呼出しが受け取られると、呼出しは、所期のAPIに到達する前にインタセプトされることもある。次に、このアプリケーションプログラムが、より低い画素密度の表示装置と共に用いるように構成されたのか、それとも、より高い画素密度の表示装置と共に用いるように構成されたのか判定が行われる。この判定は、アプリケーションプログラムのプロパティを検査して、アプリケーションプログラムが、コンパイルされたソフトウェア開発キットバージョン番号を判定することによって行われる。所定の数より大きいまたはそれと等しいバージョン番号を有するアプリケーションプログラムは、より高い画素密度の表示をサポートしていると想定される。所定の数より低いバージョン番号を有するアプリケーションプログラムは、より低い画素密度の表示だけをサポートしていると想定される。
アプリケーションプログラムが、より低い画素密度の表示装置と共に使用するように構成されている場合、APIによって受け取られるパラメータは、より高い画素密度表示装置の画素密度に合うようにスケーリングされる。例えば、アプリケーションプログラムが96dpiの画素密度に対応するように構成されており、その表示装置がより高い画素密度を有しており192dpiの画素密度である場合、そのパラメータが2倍にされる。次に、スケーリングされたパラメータを用いて、所期のアプリケーションプログラムインタフェースを呼び出す。アプリケーションプログラムがより高い画素密度の表示装置と共に使用するように構成されている場合は、API機能呼出しのパラメータをスケーリングせずに、API呼出しがAPIに直接渡される。このようにして、より高い画素密度の表示画面と共に使用するように構成されたアプリケーションプログラムが所期の通りに実行される。
パラメータが、API呼出しから返された場合、例えば、タッチディスプレイからスタイラスの入力を受け取るためにAPIが利用されるとき、これらパラメータは、より低い画素密度に合うようにスケーリングされる。画面入出力操作を実行するネイティブAPIに対する機能呼出しをインタセプトし、パラメータをスケーリングし、スケーリングされたパラメータを用いてネイティブAPIを呼び出すことにより、より高い画素密度の表示画面のサポートを含まないレガシアプリケーションは、そのアプリケーションプログラムまたはAPIを書き直す必要なしに、高い解像度の装置の表示画面全体を利用することができる。
本発明の他の態様によると、より低い画素密度の表示装置と共に使用するように作成されたアプリケーションプログラムが、より高い画素密度の表示装置を十分に利用することを可能にするように構成されたコンピュータシステムが提供される。このコンピュータシステムは、中央処理装置(CPU)、より高い画素密度の表示装置、および、1または複数の実行可能なプログラムを格納する働きをするメモリを含む。詳細には、このメモリは、CPU上で実行するためのオペレーティングシステム、より低い画素の表示装置と共に使用するように構成されたアプリケーションプログラム、表示装置に対して入出力動作を行うAPI、および変換層(translation layer)を格納する働きをする。
変換層は、アプリケーションプログラムが行うAPIに対する呼出しをインタセプトする働きをする。このような呼出しが受け取られると、変換層は、呼出しで受け取られた任意のパラメータを、インストールされた表示画面のより高い画素密度に合うようにスケーリングする。次に、変換層は、スケーリングされたパラメータを用いて所期のAPIを呼び出す。パラメータがAPI呼出しから返された場合、例えば、タッチ画面から入力を受け取るのにAPIが利用されたとき、変換層は、アプリケーションプログラムによって利用されるより低い画素密度に合うようにパラメータ値をスケーリングする。
変換層は、呼び出すアプリケーションプログラムが、より低い画素密度の表示装置と共に使用するように構成されているか、それともより高い画素密度の表示装置と共に使用するように構成されているかを判定する働きをすることができる。アプリケーションプログラムが、より低い画素密度の表示装置と共に使用するように構成されている場合、変換層は、上記のようにパラメータをスケーリングする。しかし、アプリケーションプログラムがより高い画素密度のディスプレイと共に使用するように作成されたと変換層が判定した場合、変換層は、パラメータをスケーリングせずに、所期のAPIを呼び出す。呼び出すアプリケーションプログラムが、より低い画素密度をサポートするか、それともより高い画素密度をサポートするかの判定を、そのアプリケーションがコンパイルされたソフトウェア開発キットのバージョン番号を示すアプリケーションプログラムのプロパティを検査することによって行うことができる。
本発明は、コンピュータプロセス、コンピューティングシステム、あるいは、コンピュータプログラム製品またはコンピュータ読取り可能媒体などの製造品として実装することができる。このコンピュータプログラム製品は、コンピュータシステムで読取り可能なコンピュータ記憶媒体であり、コンピュータプロセスを実行するための命令のコンピュータプログラムをコード化しているものとすることができる。このコンピュータプログラム製品は、コンピューティングシステムで読取り可能な搬送波上の伝搬信号であり、コンピュータプロセスを実行するための命令のコンピュータプログラムをコード化しているものとすることもできる。
本発明を特徴づけるこれらおよび他の様々な特徴および利点は、以下の詳細な説明を読み、関連する図面を検討することにより明らかになろう。
次に、図面を参照して、本発明の様々な態様を説明する。図面において同じ数字は同じ要素を表している。図1および以下の議論は、本発明を実装することができる適切なコンピューティング環境の簡潔かつ概観的な説明を提供するものである。図1のコンピューティング環境は例示にすぎず本発明を限定するものではないことを理解されたい。
図1は、PDAなどのハンドヘルドコンピューティング装置に見ることができるようなコンピューティング環境を記述している。ただし、本発明はPDAに限定されないことは理解されたい。本発明は、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラム可能な家庭用電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、無線電話、および、ポケットベル(pager)などを含めた他のコンピュータシステム構成によって実施することもできる。本発明を、通信ネットワークを介してリンクされたリモート処理装置によってタスクが実行される分散コンピューティング環境で実施することもできる。分散コンピューティング環境では、プログラムモジュールを、ローカルとリモートの両方のメモリ記憶装置に置くことができる。
一般的に、プログラムモジュールは、特定のタスクを実行するまたは特定の抽象データ型を実装している、ルーチン、プログラム、コンポーネント、データ構造、および他のタイプのストラクチャを含む。さらに、本発明を、デスクトップコンピューティングシステム、マルチプロセッサベースまたはプログラム可能である家庭用電子機器、ミニコンピュータ、およびメインフレームコンピュータなどを含めた他のコンピュータシステム構成によって実施することができることを、当業者には理解されよう。本発明は、通信ネットワークを介してリンクされたリモート処理装置によってタスクが実行される分散コンピューティング環境で実施することもできる。分散コンピューティング環境では、プログラムモジュールを、ローカルとリモートの両方のメモリ記憶装置に置くことができる。
図1を参照すると、本発明を実装するための例示的システムは、ハンドヘルドコンピューティング装置100を含む。コンピューティング装置100は、プロセッサ102、メモリ104、およびディスプレイ106を備え、ユーザインタフェースボタンおよび/またはキーボード入力装置108を含むことができる。メモリ104は、一般に揮発性メモリ(例えばRAM)と不揮発性メモリ(例えばROM、PCMCIAカードなど)の両方のメモリを含む。オペレーティングシステム110は、メモリ104に常駐しプロセッサ102で実行される。ハンドヘルドコンピューティングデバイス100は、マイクロソフト社の「Windows(登録商標) Mobile 2003」オペレーティングシステム、PalmSource社の「Palm OS」、またはハンドヘルドまたはデスクトップのコンピュータを動作させるのに適切な他のオペレーティングシステムなどのオペレーティングシステム110を含む。
1または複数のアプリケーションプログラム112は、メモリ104にロードされ、オペレーティングシステム110上で実行される。アプリケーションの例には、電子メールプログラム、スケジューリングプログラム、PIM(personal information management)プログラム、ワードプロセッシングプログラム、およびスプレッドシートプログラムなどが含まれる。アプリケーションプログラム112の別の例は、マイクロソフト社の「Pocket Internet Explorer」ウェブブラウザアプリケーションプログラムや他のウェブブラウザなどのウェブブラウザのプログラムモジュールである。
ハンドヘルドコンピューティングデバイス100は、1または複数のバッテリとして実装される電源114を備える。電源114は、内蔵型電池をオーバライドまたは再充電するACアダプタや充電用クレードル(powered docking cradle)などの外部電力源をさらに含むことができる。ハンドヘルドコンピューティング装置100は、音声出力を生成するための音声発生器116を含むことができ、生成された音声出力は、ハンドヘルド装置100内に含まれるスピーカで再生される。ハンドヘルドコンピューティングデバイス100の従来のコンポーネント102〜116を、データおよび電力信号を伝送するためのバス118を介して相互接続することができる。
上述したように、ハンドヘルドコンピューティング装置100は、ディスプレイ106を含む。ディスプレイ106は、バックライト付き薄膜トランジスタ液晶(TFT:thin-film transistor liquid crystal)ディスプレイ、またはハンドヘルド装置における動作に適した他の種類のディスプレイを含むことができる。上述したように、ディスプレイ106は、タッチ画面機能を備えることもできる。ユーザは、スタイラスまたは他のポインティングデバイス100を用いてディスプレイ106の所望の部分に接触することにより、ハンドヘルド装置100に入力を行うことができる。ユーザが接触した画面の座標が、処理のためオペレーティングシステム110に返される。従って、ディスプレイは、ハンドヘルドに対する入力と出力の両方の能力を提供することができることを理解されたい。
図2Aおよび2Bを参照すると、本発明の様々な実施形態に利用されるディスプレイ106についてさらに詳細に説明する。図2Aおよび2Bに示すように、ハンドヘルドで利用されるディスプレイ106は、利用される表示パネルの種類に応じて異なる画素密度を有するように構成され得る。例えば、図2Aに示すように、あるパネルは、水平画素240および垂直画素320の画素解像度のディスプレイ106に利用することができる。図2Aに示すディスプレイ106の寸法は、縦3.33インチ(8.46cm)および横2.5インチ(6.35cm)とすることができる。このような寸法および画素解像度において、図2Aに示すディスプレイ106の画素密度は、96dpiである。
図2Bに示すディスプレイ106は、図2Aに示すディスプレイ106よりも、より高い画素密度を有する。具体的には、図2Bに示すディスプレイ106は、図2Aに示すディスプレイ106と同じ寸法であるが、水平画素480で垂直画素640の解像度を有する。従って、図2Bに示すディスプレイ106の画素密度は、192dpiである。96dpiおよび192dpiの画素密度を有する各ディスプレイは、単に例示的なものであり、本発明の実施形態は、任意の画素密度のディスプレイと共に利用することができることを理解されたい。
図3Aおよび図3Bを参照して、本発明の実施形態に利用されるディスプレイ106についてさらに詳細を説明する。図3Aは、画素密度96dpiのディスプレイの画面表示を示す。図3Aに示すように、画面は、いくつかの画素122A〜122Cからなる。各ピクセルは、表示画面にデータを書くために個々に指定することができる。例えば、図3Aに示すように、正方形120は、該当する画素をアクティブにすることによって表示画面上に表示することができる。
図3Bは、192dpi、すなわち図3Aに示す表示画面の2倍の画素密度の表示画面106を示す。図3Bは、図3Aに示す正方形と同じ正方形120の描画を示している。正方形120を描くのに利用する画素数が同じであるにもかかわらず、画素密度の増大のため、図3Bに示す正方形120は、図3Aに示す正方形のサイズの4分の1である。このようなことは、例えば、(図3Aに示す)より低い画素密度の画面と共に動作するように特に書かれたアプリケーションプログラムが、(図3Bに示す)より高い画素密度の表示画面を備える装置上で実行されるときに起きる。本発明の実施形態により、図3Aに示す正方形120と同じように、図3Bに示すディスプレイ上で、正方形120または任意の他の画面上のオブジェクトが表示されるようになる。
次に図4Aおよび4Bを参照して、増大した画素密度を有する表示装置とのアプリケーションソフトウェア互換性を可能にするために利用されるソフトウェアコンポーネントのうちいくつかを説明する。詳細には、図4Aは、より高い画素密度ディスプレイを有する装置と共に使用するように特にプログラムされたアプリケーションプログラム112Aによって、表示画面入出力を実行するためのAPIの呼出しを処理するのに利用されるソフトウェアコンポーネントを示す。アプリケーションプログラム112Aは、より高い画素密度ディスプレイと共に使用するように特に構成されているため、API124への/からの呼出しは、直接行うことができ、追加の処理をせずにオペレーティングシステム110によって処理することができる。
より詳細は下記で論じるが、API呼出しが受け取られたとき、呼出しアプリケーションが、より高い画素密度の表示装置と共に使用するように特に構成されているかどうか判定することができる。そのアプリケーションが、より高い画素密度の表示装置と共に使用されるように構成されている場合、上記のようなより高い画素密度のディスプレイとの互換性を可能にするための追加の処理は必要ない。しかし、そのアプリケーションが、より高い画素密度のディスプレイと共に使用するように特にプログラムされていない場合、入力および出力がより高い密度のディスプレイと確実に互換性があるようにするための追加の処理が必要である。これは図4Bに図示されている。
図4Bに示すように、より高い画素密度の表示装置と共に使用するように構成されていないレガシアプリケーション112Bは、画面入力または出力動作を行うためにAPI124を呼び出すことができる。双方向変換層126は、API呼出しをインタセプトし、アプリケーションプログラムが、より高い密度の表示装置と共に使用するように構成されているかどうか判定する。レガシアプリケーション112Bが、より高い密度の表示装置と共に使用するように構成されていないので、変換層は、より高い画素密度のディスプレイに合うようにAPI呼出しの画素パラメータをスケーリングする。例えば、レガシアプリケーション112Bが96dpiのディスプレイと共に使用するように構成されており、ハンドヘルド装置100に実際には192dpiのディスプレイが取り付けられている場合、変換層126は、API呼出しで受け取られる画素座標を2倍にする。変換層126は、スケーリングされたパラメータを用いて所期のAPI124を呼び出して、より高い画素密度で要求された操作を行う。同様に、例えば入力動作が行われたときなど、パラメータがAPI124から返された場合、返されたパラメータもやはり適切にスケーリングすることができる。図4Aおよび図4Bに示されるAPI124は同じものであり、API124に変更を加える必要がないことを理解されたい。図5およびそれに関連する議論では、API呼出しをインタセプトし、受け取ったパラメータをスケーリングするための変換層126によって行われるプロセスに関して、さらに詳細を説明する。
図5を参照して、増大した画素密度を有する表示装置とアプリケーションプログラムの互換性を可能にするプロセスを示す例示的ルーチン500を説明する。本明細書に提示されるルーチンに関する議論を読むとき、本発明の様々な実施形態の論理操作は、(1)一連のコンピュータで実行される処理またはコンピューティングシステム上で実行されているプログラムモジュール、および/または(2)コンピュータシステム内の相互接続された機械論理回路または回路モジュールとして実装されることを理解されたい。実装形態は、本発明を実装しているコンピューティングシステムの性能要件に応じて選択される問題である。従って、図5に示す論理操作、および本明細書に記載の本発明の実施形態を構成することは、操作、構造的装置、動作、またはモジュールと様々に表される。これらの操作、構造的装置、動作、およびモジュールは、本明細書に添付の特許請求の範囲内の本発明の趣旨および範囲から逸脱することなく、ソフトウェア、ファームウェア、専用デジタル論理、およびそれらの任意の組合せで実装することができることが当業者には理解されよう。
ルーチン500は、操作502から始まり、ここで、変換層126は、呼出しが、画面入力または出力を行うために、アプリケーションプログラム112から受け取られAPI124に向けられたものであるかどうかを判定する。そのような呼出しが受け取られなかった場合、ルーチン500は、操作502に分岐して戻り、このような判定をまた行う。アプリケーションプログラム112からAPI124に呼出しが行われた場合、ルーチン500は、操作502から操作504に進む。
操作504において、変換層126がアプリケーション112からのAPI呼出しをインタセプトする。これは、例えば、アドレステーブルにおいてAPI124呼出しの各画面の代わりに、変換層126のアドレスを用いることによって達成することができる。このようにして、画面API124機能に対する呼出しは、代わりに変換層126に送ることができる。次いで、ルーチンは、操作504から操作506に進む。
操作506において、変換層126は、呼出しアプリケーションプログラムが画素密度の増大したディスプレイと共に使用するように構成されているかどうか判定する。変換層は、このプロセスを、例えば、アプリケーションプログラム112のプロパティを検査して、アプリケーションプログラム112をコンパイルしたソフトウェア開発キット(「SDK」)のバージョン番号を決定することによって行うことができる。この情報は、コンパイル時にアプリケーションプログラム112に含まれる。SDKのバージョン番号に基づいて、変換層126は、アプリケーションプログラム112が、より低い画素密度の表示装置と共に使用するように構成されているか、それともより高い画素密度の表示装置と共に使用するように構成されているか判定することができる。所定の番号よりも大きいかまたは同じバージョン番号を有するアプリケーションプログラムは、より高い画素密度のディスプレイをサポートしていると想定される。所定の番号よりも小さいバージョン番号を有するアプリケーションプログラムは、より低い画素密度のディスプレイのみをサポートしていると想定される。アプリケーションプログラム112がより高い画素密度のディスプレイと共に使用するように構成されたかどうか判定するために、他の方法を利用することもできる。
ルーチン500は、操作506から、判定操作508に進み、そこで、アプリケーションプログラム112が、より高い画素密度の表示装置と共に使用するように構成されたか、それともより低い画素密度の表示装置と共に使用するように構成されたかに応じて分岐が行われる。アプリケーションプログラム112が、より高い画素密度のディスプレイと共に使用するように構成されている場合、ルーチン500は、操作510に進み、そこで、渡すパラメータにどのような修正もせずに、API呼出しを所期のAPIに渡す。アプリケーションプログラム112は、より高い画素密度のディスプレイと共に使用するように特に構成されているので、API124への/からの呼出しは、どのような追加の処理もせずに、直接行うことができ、オペレーティングシステム110によって処理することができる。ルーチン500は、操作510から操作502へ戻り、追加のAPI呼出しを処理することができる。
判定操作508において、呼出しアプリケーション112がより高い画素密度のディスプレイと共に使用するように構成されていないと判定された場合、ルーチン500は、判定操作508から操作512へ分岐する。操作512において、API呼出しは、双方向変換層126によってインタセプトされる。操作514において、双方向変換層126は、API呼出しで受け取った画素パラメータをより高い画素密度の表示装置に合うようにスケーリングする。次に、操作514において、変換層126は、スケーリングしたパラメータを用いて所期のAPIを呼び出す。API124は、より高い画素密度の表示装置上で、スケーリングしたパラメータによって所期の機能を実行する。
ルーチン500は、操作514から操作516に進み、そこで、変換層126が、例えば、入力操作が行われたときなどに、API124によって、呼出しアプリケーション112に、任意の画素値が返されるかどうかを判定する。画素値がアプリケーション112に返されない場合、ルーチン500は、操作502に戻り、別のAPI呼出しをインタセプトし処理することができる。値が返される場合は、ルーチン500は、操作518に進み、そこで、変換層が、返された画素値を、より低い画素密度のディスプレイの画素密度に合うようにスケーリングする。次に、ルーチン500は、操作520に進み、そこで、スケーリングされた戻り値が変換層によってアプリケーション112に返される。ルーチン500は、操作502に進み、そこで、別のAPI呼出しをインタセプトし処理することができる。
本明細書に記載の本発明の実施形態は、ハンドヘルドコンピューティング装置の文脈で示されているが、より高い画素密度のディスプレイとの後方互換性を保証するために、本発明の様々な態様は、デスクトップ、ラップトップ、および他の種類のコンピュータシステムによって利用することができることを理解されたい。さらに、本発明の実施形態はまた、より低い画素密度からより高い画素密度へパラメータをスケーリングする文脈で記述されているが、本発明は、より高い画素密度からより低い画素密度にスケーリングするために利用することもできる。このようにして、より高い画素密度のディスプレイと共に使用するようにのみ構成されたアプリケーションプログラムが、修正せずにより低い画素密度の表示画面上で利用することができる。
上記のことに基づいて、本発明の様々な実施形態が、増大した画素密度を有する表示装置とのアプリケーションプログラム互換性を可能にするための方法、システム、装置、およびコンピュータ読取り可能媒体を含むことを理解されたい。上記の明細書、実施例、およびデータは、本発明の構成の製造および用途の完全な説明を提供する。本発明の趣旨および範囲から逸脱することなく本発明の多くの実施形態を実施することができるので、本発明は添付の特許請求の範囲にある。
本発明の実施形態のための動作環境を提供するハンドヘルドコンピューティング装置のアーキテクチャを示すコンピュータシステムの構成図である。 本発明の様々な実施形態において利用され得る2つの異なる表示画面の解像度および画素密度を示すブロック図である。 本発明の様々な実施形態において利用され得る2つの異なる表示画面の解像度および画素密度を示すブロック図である。 従来技術の方法を利用する2つの異なる画素密度を有する2つの異なるディスプレイ上で同じオブジェクトを表示することの効果を示すブロック図である。 従来技術の方法を利用する2つの異なる画素密度を有する2つの異なるディスプレイ上で同じオブジェクトを表示することの効果を示すブロック図である。 本発明の様々な実施形態によって利用される、改善された画素密度を有する表示装置とのアプリケーションプログラム互換性を保証するためのソフトウェアアーキテクチャを示す図である。 本発明の様々な実施形態によって利用される、改善された画素密度を有する表示装置とのアプリケーションプログラム互換性を保証するためのソフトウェアアーキテクチャを示す図である。 本発明の実施形態による、改善された画素密度を有する表示装置とのアプリケーション互換性を保証するための例示的方法によって実行される論理動作を示す流れ図である。
符号の説明
110 オペレーティングシステム
112A 高解像度対応アプリケーション
112B レガシアプリケーション(高解像度非対応)
124 画面入出力アプリケーションプログラミングインタフェース
126 双方向変換層

Claims (7)

  1. より低い画素密度の表示装置と共に使用するように構成されたアプリケーションプログラムが、より高い画素密度の表示装置を利用するのを可能にする方法であって、
    前記アプリケーションプログラムとアプリケーションプログラミングインタフェースとの間に挿入された双方向変換手段において、画面入力または出力機能を実行するための前記アプリケーションプログラミングインタフェースに向けられた呼出しを、前記アプリケーションプログラムから受け取ることであって、前記呼出しは、1または複数のパラメータを含むこと、
    前記呼出しを受け取ったことに応答して、前記アプリケーションプログラムが、前記より低い画素密度の表示装置と共に使用するように構成されているか、または前記より高い画素密度の表示装置と共に使用するように構成されているかを判定することであって、前記双方向変換手段は、
    前記アプリケーションプログラムのプロパティを検査して、前記アプリケーションプログラムをコンパイルしたソフトウェア開発キットのバージョン番号を判定することであって、前記バージョン番号は、前記アプリケーションプログラムのコンパイル時に前記アプリケーションプログラムに書き込まれており、前記バージョン番号は、前記アプリケーションプログラムの画素密度のサポートレベルを表すこと、
    前記バージョン番号が、所定の値より大きいかまたは等しい場合に、前記アプリケーションプログラムが、前記より高い画素密度の表示装置と共に使用するよう構成されていると判定すること、および、
    前記バージョン番号が、前記所定の値より小さい場合に、前記アプリケーションプログラムが、前記より低い画素密度の表示装置と共に使用するように構成されていると判定することを含むように構成されていること
    前記アプリケーションプログラムが、前記より低い画素密度の表示装置と共に使用するように構成されていると判定したことに応答して、前記双方向変換手段が、前記より高い画素密度の表示装置の画素密度を前記より低い画素密度の表示装置の画素密度で除した数を、前記パラメータに乗じてスケーリングし、前記スケーリングされたパラメータを用いて前記アプリケーションプログラムインタフェースを呼び出すこと
    前記双方向変換手段が、前記アプリケーションプログラミングインタフェースから少なくとも1つの画素値が返されたか否かを判定すること、および、
    前記アプリケーションプログラミングインタフェースから少なくとも1つの画素値が返されたとの判定に応答して、前記双方向変換手段が、前記少なくとも1つの画素値を前記より低い画素密度の表示装置の画素密度に合うようにスケーリングし、前記スケーリングされた画素値を前記アプリケーションプログラムに返すこと
    を備えたことを特徴とする方法。
  2. 前記より低い画素密度の表示装置は、96dpiの画素密度を有することを特徴とする請求項に記載の方法。
  3. 前記より高い画素密度の表示装置は、192dpiの画素密度を有することを特徴とする請求項に記載の方法。
  4. コンピュータによって実行されると、前記コンピュータに請求項1に記載の方法を実施させるコンピュータ実行可能命令を格納していることを特徴とするコンピュータ読取り可能記録媒体。
  5. より低い画素密度の表示装置と共に使用するように作成されたアプリケーションプログラムが、より高い画素密度の表示装置を利用することを可能にするように構成されたコンピュータシステムであって、
    中央処理装置と、
    より高い画素密度の表示装置と、
    前記中央処理装置上で実行するためのオペレーティングシステム、
    より低い画素密度の表示装置と共に使用するように作成され、前記オペレーティングシステム上で実行するためのアプリケーションプログラム、
    前記表示装置に対する入力および出力動作を行うためのアプリケーションプログラミングインタフェース、および、
    前記アプリケーションプログラムによる前記アプリケーションプログラミングインタフェースに対する呼出しであって、1または複数のパラメータを含む呼出しをインタセプトし、前記表示装置に合うように前記パラメータをスケーリングし、前記スケーリングされたパラメータを用いて前記アプリケーションプログラミングインタフェースを呼び出すための変換層であって、前記アプリケーションプログラムが、前記より低い画素密度の表示装置と共に使用するように構成されているか、前記より高い画素密度の表示装置と共に使用するように構成されているかどうか判定し、前記より低い画素密度の表示装置と共に使用するように構成されていると判定したことに応答して、前記より高い画素密度の表示装置の画素密度を前記より低い画素密度の表示装置の画素密度で除した数を、前記パラメータに乗じてスケーリングするために、
    前記アプリケーションプログラムのプロパティを検査して、前記アプリケーションプログラムをコンパイルしたソフトウェア開発キットのバージョン番号を判定することであって、前記バージョン番号は、前記アプリケーションプログラムのコンパイル時に前記アプリケーションプログラムに書き込まれており、前記バージョン番号は、前記アプリケーションプログラムの画素密度のサポートレベルを表すこと、
    前記バージョン番号が、所定の値より大きいかまたは等しい場合に、前記アプリケーションプログラムが、前記より高い画素密度の表示装置と共に使用するよう構成されていると判定すること
    前記バージョン番号が、前記所定の値より小さい場合に、前記アプリケーションプログラムが、前記より低い画素密度の表示装置と共に使用するように構成されていると判定すること
    前記アプリケーションプログラミングインタフェースから少なくとも1つの画素値が返されたか否かを判定すること、および、
    前記アプリケーションプログラミングインタフェースから少なくとも1つの画素値が返されたとの判定に応答して、前記少なくとも1つの画素値を前記より低い画素密度の表示装置の画素密度に合うようにスケーリングし、前記スケーリングされた画素値を前記アプリケーションプログラムに返すことを実行する変換層を格納する働きをするメモリと
    を備えたことを特徴とするコンピュータシステム。
  6. 前記変換層は、前記アプリケーションプログラムが前記より高い画素密度の表示装置と共に使用するように構成されていると判定したことに応答して、前記パラメータをスケーリングせずに、前記アプリケーションプログラミングインタフェースを呼び出す操作をすることを特徴とする請求項に記載のコンピュータシステム。
  7. 前記より高い画素密度の表示装置は、192dpiの画素密度を有し、前記より低い画素密度の表示装置と共に使用するように作成された前記アプリケーションプログラムは、96dpiの画素密度を有する表示装置と共に使用するように構成されていることを特徴とする請求項に記載のコンピュータシステム。
JP2005050831A 2004-02-27 2005-02-25 改善された画素密度を有する表示装置とのアプリケーションプログラムの互換性を可能にする方法および装置 Active JP4284286B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/789,603 US7180531B2 (en) 2004-02-27 2004-02-27 Method and apparatus for enabling application program compatibility with display devices having improved pixel density

Publications (3)

Publication Number Publication Date
JP2005276189A JP2005276189A (ja) 2005-10-06
JP2005276189A5 JP2005276189A5 (ja) 2008-02-21
JP4284286B2 true JP4284286B2 (ja) 2009-06-24

Family

ID=34750556

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005050831A Active JP4284286B2 (ja) 2004-02-27 2005-02-25 改善された画素密度を有する表示装置とのアプリケーションプログラムの互換性を可能にする方法および装置

Country Status (5)

Country Link
US (1) US7180531B2 (ja)
EP (1) EP1571549A3 (ja)
JP (1) JP4284286B2 (ja)
KR (1) KR101117859B1 (ja)
CN (1) CN100419676C (ja)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8068103B2 (en) * 2004-06-24 2011-11-29 Apple Inc. User-interface design
US10271097B2 (en) * 2005-04-15 2019-04-23 Autodesk, Inc. Dynamic resolution determination
US20070033522A1 (en) * 2005-08-02 2007-02-08 Lin Frank L System and method for dynamic resizing of web-based GUIs
US20070118821A1 (en) * 2005-11-18 2007-05-24 Sun Microsystems, Inc. Displaying consumer device graphics using scalable vector graphics
KR101711863B1 (ko) 2008-11-26 2017-03-13 캘거리 싸이언티픽 인코포레이티드 애플리케이션 프로그램의 상태에 대한 원격 액세스를 제공하기 위한 방법 및 시스템
US10055105B2 (en) 2009-02-03 2018-08-21 Calgary Scientific Inc. Method and system for enabling interaction with a plurality of applications using a single user interface
US20110163966A1 (en) * 2010-01-06 2011-07-07 Imran Chaudhri Apparatus and Method Having Multiple Application Display Modes Including Mode with Display Resolution of Another Apparatus
US8698845B2 (en) 2010-01-06 2014-04-15 Apple Inc. Device, method, and graphical user interface with interactive popup views
US9058186B2 (en) 2010-04-07 2015-06-16 Apple Inc. Device, method, and graphical user interface for managing concurrently open software applications
US9823831B2 (en) 2010-04-07 2017-11-21 Apple Inc. Device, method, and graphical user interface for managing concurrently open software applications
US9513801B2 (en) 2010-04-07 2016-12-06 Apple Inc. Accessing electronic notifications and settings icons with gestures
KR101720583B1 (ko) * 2010-08-31 2017-03-29 삼성전자 주식회사 디스플레이장치 및 그 제어방법
US9244606B2 (en) 2010-12-20 2016-01-26 Apple Inc. Device, method, and graphical user interface for navigation of concurrently open software applications
US9741084B2 (en) 2011-01-04 2017-08-22 Calgary Scientific Inc. Method and system for providing remote access to data for display on a mobile device
CA2734860A1 (en) * 2011-03-21 2012-09-21 Calgary Scientific Inc. Method and system for providing a state model of an application program
KR20120123208A (ko) * 2011-04-19 2012-11-08 삼성전자주식회사 휴대단말기의 어플리케이션 해상도 조절 장치 및 방법
KR20140080483A (ko) 2011-08-15 2014-06-30 캘거리 싸이언티픽 인코포레이티드 애플리케이션 프로그램에 대한 비-침투적 원격 액세스
US8806369B2 (en) 2011-08-26 2014-08-12 Apple Inc. Device, method, and graphical user interface for managing and interacting with concurrently open software applications
US8933971B2 (en) 2011-09-12 2015-01-13 Microsoft Corporation Scale factors for visual presentations
EP2761808A4 (en) 2011-09-30 2015-05-20 Calgary Scient Inc DECOUPLED APPLICATION WITH EXTENSIONS INTERACTIVE DIGITAL SURFACE LAYER FOR COLLABORATIVE REMOTE COMMON USE OF APPLICATIONS AND ANNOTATION
US9274642B2 (en) 2011-10-20 2016-03-01 Microsoft Technology Licensing, Llc Acceleration-based interaction for multi-pointer indirect input devices
US9658715B2 (en) 2011-10-20 2017-05-23 Microsoft Technology Licensing, Llc Display mapping modes for multi-pointer indirect input devices
AU2012342170B2 (en) 2011-11-23 2017-03-09 Calgary Scientific Inc. Methods and systems for collaborative remote application sharing and conferencing
US9389679B2 (en) 2011-11-30 2016-07-12 Microsoft Technology Licensing, Llc Application programming interface for a multi-pointer indirect touch input device
US9262250B2 (en) 2011-12-12 2016-02-16 Crashlytics, Inc. System and method for data collection and analysis of information relating to mobile applications
US9087154B1 (en) * 2011-12-12 2015-07-21 Crashlytics, Inc. System and method for providing additional functionality to developer side application in an integrated development environment
US9703680B1 (en) 2011-12-12 2017-07-11 Google Inc. System and method for automatic software development kit configuration and distribution
KR101975906B1 (ko) 2012-01-09 2019-05-08 삼성전자주식회사 영상 표시 장치에서 응용 프로그램의 레이아웃을 스케일링하기 위한 장치 및 방법
US9678728B1 (en) * 2012-03-29 2017-06-13 Emc International Company Version compatibility
JP6082458B2 (ja) 2012-05-09 2017-02-15 アップル インコーポレイテッド ユーザインタフェース内で実行される動作の触知フィードバックを提供するデバイス、方法、及びグラフィカルユーザインタフェース
EP2847661A2 (en) 2012-05-09 2015-03-18 Apple Inc. Device, method, and graphical user interface for moving and dropping a user interface object
KR101956082B1 (ko) 2012-05-09 2019-03-11 애플 인크. 사용자 인터페이스 객체를 선택하는 디바이스, 방법, 및 그래픽 사용자 인터페이스
KR101823288B1 (ko) 2012-05-09 2018-01-29 애플 인크. 제스처에 응답하여 디스플레이 상태들 사이를 전이하기 위한 디바이스, 방법, 및 그래픽 사용자 인터페이스
WO2013169865A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for moving a user interface object based on an intensity of a press input
WO2013169854A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for providing feedback for changing activation states of a user interface object
WO2013169851A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for facilitating user interaction with controls in a user interface
WO2013169849A2 (en) 2012-05-09 2013-11-14 Industries Llc Yknots Device, method, and graphical user interface for displaying user interface objects corresponding to an application
WO2013169845A1 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for scrolling nested regions
WO2013169842A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for selecting object within a group of objects
WO2013169875A2 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for displaying content associated with a corresponding affordance
WO2013169843A1 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for manipulating framed graphical objects
WO2013169846A1 (en) 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for displaying additional information in response to a user contact
JP6138274B2 (ja) 2012-12-29 2017-05-31 アップル インコーポレイテッド ユーザインタフェース階層をナビゲートするためのデバイス、方法、及びグラフィカルユーザインタフェース
JP6093877B2 (ja) 2012-12-29 2017-03-08 アップル インコーポレイテッド 複数接触ジェスチャのために触知出力の生成を見合わせるためのデバイス、方法、及びグラフィカルユーザインタフェース
CN104903834B (zh) 2012-12-29 2019-07-05 苹果公司 用于在触摸输入到显示输出关系之间过渡的设备、方法和图形用户界面
EP2939095B1 (en) 2012-12-29 2018-10-03 Apple Inc. Device, method, and graphical user interface for moving a cursor according to a change in an appearance of a control icon with simulated three-dimensional characteristics
CN107831991B (zh) 2012-12-29 2020-11-27 苹果公司 用于确定是滚动还是选择内容的设备、方法和图形用户界面
GB201300031D0 (en) 2013-01-02 2013-02-13 Canonical Ltd Ubuntu UX innovations
US9653043B2 (en) * 2013-02-06 2017-05-16 Dexin Corporation Input device for magnifying a screen content and method thereof
US20140267281A1 (en) * 2013-03-13 2014-09-18 Ericom Software Ltd. Method for displaying a remote desktop on a portable touch screen device
US9658740B2 (en) 2013-03-15 2017-05-23 Apple Inc. Device, method, and graphical user interface for managing concurrently open software applications
US9477404B2 (en) 2013-03-15 2016-10-25 Apple Inc. Device, method, and graphical user interface for managing concurrently open software applications
US9626146B2 (en) * 2013-07-24 2017-04-18 Kabushiki Kaisha Toshiba Electronic apparatus, configuration setting method for adjusting display size and storage medium
CA2931762C (en) 2013-11-29 2020-09-22 Calgary Scientific Inc. Method for providing a connection of a client to an unmanaged service in a client-server remote access system
EP3252583A4 (en) 2015-02-26 2018-03-07 Huawei Technologies Co. Ltd. Dpi adaptation method and electronic device
US10048757B2 (en) 2015-03-08 2018-08-14 Apple Inc. Devices and methods for controlling media presentation
US9645732B2 (en) 2015-03-08 2017-05-09 Apple Inc. Devices, methods, and graphical user interfaces for displaying and using menus
US10095396B2 (en) 2015-03-08 2018-10-09 Apple Inc. Devices, methods, and graphical user interfaces for interacting with a control object while dragging another object
US9785305B2 (en) 2015-03-19 2017-10-10 Apple Inc. Touch input cursor manipulation
US20170045981A1 (en) 2015-08-10 2017-02-16 Apple Inc. Devices and Methods for Processing Touch Inputs Based on Their Intensities
US9674426B2 (en) 2015-06-07 2017-06-06 Apple Inc. Devices and methods for capturing and interacting with enhanced digital images
US9860451B2 (en) 2015-06-07 2018-01-02 Apple Inc. Devices and methods for capturing and interacting with enhanced digital images
CN106293047B (zh) * 2015-06-26 2020-01-10 微软技术许可有限责任公司 通过动态分辨率缩放来减少移动设备的功耗
EP3340090B1 (de) * 2016-12-22 2020-04-15 Siemens Healthcare GmbH Zuordnung unterschiedlicher anwendungsprogramme eines medizinischen bildgebenden gerätes zu detektierten anzeigeeinrichtungen
CN109542550A (zh) * 2018-10-19 2019-03-29 新博卓畅技术(北京)有限公司 一种基于动态设置屏幕密度的屏幕适配方法、系统及设备
US10599434B1 (en) * 2018-12-14 2020-03-24 Raytheon Company Providing touch gesture recognition to a legacy windowed software application
CN114115619A (zh) * 2020-08-31 2022-03-01 华为技术有限公司 一种应用程序界面显示的方法及电子设备
KR20220088570A (ko) * 2020-12-18 2022-06-28 삼성디스플레이 주식회사 표시 장치

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4841375A (en) 1986-05-29 1989-06-20 Kabushiki Kaisha Toshiba Image-resolution conversion apparatus for converting a pixel-density of image data
DE3852215T2 (de) * 1987-06-19 1995-04-06 Toshiba Kawasaki Kk System zum Steuern der Anzeigezone für ein Plasmaanzeigegerät.
KR930000033B1 (ko) * 1990-10-18 1993-01-06 삼성전자 주식회사 에지검출을 이용한 양자화폭 조정회로
US5579509A (en) * 1991-02-08 1996-11-26 International Business Machines Corporation Apparatus and method for verifying compatibility of system components
JPH05181443A (ja) * 1991-07-01 1993-07-23 Seiko Epson Corp コンピュータ
US5471563A (en) * 1992-07-10 1995-11-28 Microsoft Corporation System and method for automatic resolution reduction
US5420605A (en) * 1993-02-26 1995-05-30 Binar Graphics, Inc. Method of resetting a computer video display mode
US5778403A (en) * 1994-09-01 1998-07-07 Microsoft Corporation Method for displaying text on a rendering device to accurately represent the text as if displayed on a target device
US5598520A (en) * 1994-09-26 1997-01-28 Microsoft Corporation Methods and apparatus for hinting a font for controlling stem width as font size and resolution of output device vary
US6044408A (en) * 1996-04-25 2000-03-28 Microsoft Corporation Multimedia device interface for retrieving and exploiting software and hardware capabilities
US6670964B1 (en) * 1998-09-18 2003-12-30 Hewlett-Packard Development Company, L.P. Automatic scaler mode detection
US6278434B1 (en) * 1998-10-07 2001-08-21 Microsoft Corporation Non-square scaling of image data to be mapped to pixel sub-components
US6388679B1 (en) * 1998-12-29 2002-05-14 Intel Corporation Multi-resolution computer display system
US6282327B1 (en) * 1999-07-30 2001-08-28 Microsoft Corporation Maintaining advance widths of existing characters that have been resolution enhanced
US6982729B1 (en) * 2000-04-19 2006-01-03 Hewlett-Packard Development Company, Lp. Constant size image display independent of screen resolution
US7191439B2 (en) * 2001-02-28 2007-03-13 Palmsource, Inc. Verification of software application attributes for optimal compatibility with a software system
JP2002268867A (ja) * 2001-03-13 2002-09-20 Sony Corp 表示装置及び表示方法、プログラム記録媒体並びにプログラム
JP2003108283A (ja) * 2001-09-18 2003-04-11 Internatl Business Mach Corp <Ibm> コンピュータ装置、表示デバイス、表示制御装置、イメージの処理方法、表示解像度の変更処理方法、コンピュータプログラム
US7143395B2 (en) * 2002-02-14 2006-11-28 Hewlett-Packard Development Company, L.P. Verifying a program version
JP2004085607A (ja) * 2002-08-22 2004-03-18 Seiko Epson Corp 画像表示装置及び画像表示方法、並びに画像表示プログラム
US7313290B2 (en) * 2003-08-18 2007-12-25 International Business Machines Corporation Method for improving the viewing of small icons and small text on high resolution displays

Also Published As

Publication number Publication date
KR101117859B1 (ko) 2012-03-15
CN1661556A (zh) 2005-08-31
US20050190203A1 (en) 2005-09-01
US7180531B2 (en) 2007-02-20
EP1571549A2 (en) 2005-09-07
EP1571549A3 (en) 2007-08-29
KR20060043268A (ko) 2006-05-15
JP2005276189A (ja) 2005-10-06
CN100419676C (zh) 2008-09-17

Similar Documents

Publication Publication Date Title
JP4284286B2 (ja) 改善された画素密度を有する表示装置とのアプリケーションプログラムの互換性を可能にする方法および装置
US11287967B2 (en) Graphical user interface list content density adjustment
US9547525B1 (en) Drag toolbar to enter tab switching interface
JP5433058B2 (ja) スマートソフトキーボード
CN109471626B (zh) 页面逻辑结构、页面生成方法、页面数据处理方法及装置
US20200356259A1 (en) Information processing apparatus, display control method therefor, and recording medium
JP2004133936A (ja) 第2のディスプレイへの画像コピーを行なうシステムおよび方法
US20070245235A1 (en) Efficient storage of drawing objects in synchronizable electronic documents
EP3522004A2 (en) Code execution and data processing pipeline
US20140111486A1 (en) Precise Object Selection in Touch Sensing Systems
TWI599876B (zh) 開機自我測試中的除錯方法以及使用該方法的裝置
CN114489648A (zh) 一种页面生成方法、系统、终端及介质
US20160299649A1 (en) Content display device, content display program, and content display method
JP2012226726A (ja) Biosを設定するための接触制御方法およびその方法を用いたコンピュータ・システム
JP2004118727A (ja) 図形表示制御装置及びプログラム
US20120249545A1 (en) User interface apparatus for providing representation of 3d theme for cover page and method of operating the same
KR102130037B1 (ko) 스타일러스 펜을 사용하는 입력 이벤트를 핸들링하는 방법 및 디바이스
US20150029114A1 (en) Electronic device and human-computer interaction method for same
CN115016671A (zh) 触控显示控制装置、触控显示装置、设备和方法
JP2015005250A (ja) 携帯型情報処理装置、そのポインタ移動方法、およびコンピュータが実行可能なプログラム
CN105808067A (zh) 一种图标移动方法及终端
CN112583603A (zh) 可视化签名方法、装置、电子设备和计算机可读存储介质
CN117194828B (zh) React中Table滚动分页方法、装置及电子设备
CN114513736B (zh) 一种耳机的声学测试方法、设备、终端及存储介质
US20100073305A1 (en) Techniques for Adjusting a Size of Graphical Information Displayed on a Touchscreen

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071228

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071228

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20071228

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20080125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080311

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080611

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080711

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20081014

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20081014

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20081114

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090220

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090323

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120327

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120327

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130327

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130327

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140327

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250