JP2006518055A - Technological innovation on web page display - Google Patents

Technological innovation on web page display Download PDF

Info

Publication number
JP2006518055A
JP2006518055A JP2004570993A JP2004570993A JP2006518055A JP 2006518055 A JP2006518055 A JP 2006518055A JP 2004570993 A JP2004570993 A JP 2004570993A JP 2004570993 A JP2004570993 A JP 2004570993A JP 2006518055 A JP2006518055 A JP 2006518055A
Authority
JP
Japan
Prior art keywords
layout
displayed
window
web page
enlarged view
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.)
Granted
Application number
JP2004570993A
Other languages
Japanese (ja)
Other versions
JP4498146B2 (en
JP2006518055A5 (en
Inventor
カーシラ,サンポ,ジェイ.
ポーター,エドワード,ダブリュー.
Original Assignee
ビットストリーム インコーポレーティッド
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 ビットストリーム インコーポレーティッド filed Critical ビットストリーム インコーポレーティッド
Publication of JP2006518055A publication Critical patent/JP2006518055A/en
Publication of JP2006518055A5 publication Critical patent/JP2006518055A5/ja
Application granted granted Critical
Publication of JP4498146B2 publication Critical patent/JP4498146B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4015Image demosaicing, e.g. colour filter arrays [CFA] or Bayer patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Digital Computer Display Output (AREA)

Abstract

ウェブページは同時ビュー及び拡大ビューで表示される。インジケータは、拡大ビューに於けるオーバービューの部分を表示することが出来る。同一スクリーンの最大幅を越えて、一方が他方の上になるように両ビューを表示することが出来る。ユーザは、分割ビューと、オーバービューオンリービュー、拡大オンリービュー、及び、拡大ビューの幅に適合するように選択されたテキストがレイアウトされるビュー等のその他のビューの中から選択することが出来る。ナビゲーション入力は、拡大されたビューに於けるレイアウト、又は、カーソルを直接移動することができ、オーバービュー及び拡大されたビューの両方をスクロールすることが出来る。拡大されたビューは、テキストをその解像度に対して設計されたアンチエイリアスフォントで表示することが出来る。拡大鏡のように機能するように、拡大ビューを生成することが出来る。マルチコラムレイアウトに於けるテキスト幅を、例えば拡大ビューなどのビューウインドウの幅に適合するように制限することが出来る。The web page is displayed in simultaneous view and enlarged view. The indicator can display the overview portion in the enlarged view. Both views can be displayed so that one is above the other, exceeding the maximum width of the same screen. The user can select among split views and other views such as an overview-only view, an enlarged-only view, and a view where text selected to fit the width of the enlarged view is laid out. The navigation input can move the layout directly in the enlarged view or the cursor, and can scroll both the overview and the enlarged view. An enlarged view can display text in an anti-aliased font designed for that resolution. A magnified view can be created to function like a magnifying glass. The text width in a multi-column layout can be limited to fit the width of the view window, such as an enlarged view.

Description

本発明は、ウェブページを表示するための方法、システム、及び、プログラムに関し、特に、小型スクリーン、低解像度スクリーン、又は、ユーザの視野の比較的小さな部分を占め、視聴者から十分離れているスクスクリーン上での表示に有用なウェブページを表示するための方法に関する。   The present invention relates to a method, system, and program for displaying a web page, and in particular, a small screen, a low resolution screen, or a screen that occupies a relatively small portion of the user's field of view and is sufficiently distant from the viewer. The present invention relates to a method for displaying a web page useful for display on a screen.

本特許出願は、幾つかの特徴が大型スクリーンコンピュータ上で使用可能であるが、ハンドヘルドコンピュータ、携帯電話コンピュータ、ワールドワイドウェブ(WWW)、又は、同様のメディアを閲覧するための手首又は頭部装着型表示装置を備えたコンピュータなど、小型スクリーン、又は、低解像度スクリーンを備えたコンピュータデバイスの使用を改善することに関する多くの特徴を有している。   This patent application is wrist- or head-mounted for browsing handheld computers, cell phone computers, the World Wide Web (WWW), or similar media, although several features are available on large screen computers. It has many features relating to improving the use of computer devices with small screens or low resolution screens, such as computers with type displays.

本出願の出願時点で、対角約4インチの約240×320ピクセルスクリーンを有する、所謂「携帯情報端末(PDA)」など、複数のハンドヘルドコンピュータが存在している。これらは、コンパック社のiPaq Pocket PC、カシオ社のCassiopeia、ヒューレットパッカード社のJornadoを含む。残念ながらそうした解像度は低過ぎるので、閲覧すべく設計された方法で殆どの現在のウェブページを表示することは出来ない。現在、殆どのウェブページは640×480解像度スクリーンで(ウェブサイトの中には、この解像度でさえ容易に見ることが出来ないものもあるが)かなり適切に見ることが出来る。より大型のスクリーンでウェブサイトを容易に見ることが出来る状態に近い方法で、そうしたハンドヘルドデバイスを用いて、殆どのウェブページを見ることが出来ることが望ましいだろう。   At the time of filing of the present application, there are a plurality of handheld computers, such as so-called “personal digital assistants (PDAs)” having about 240 × 320 pixel screens about 4 inches diagonal. These include Compaq's iPaq Pocket PC, Casio's Cassiopeia, and Hewlett-Packard's Jornado. Unfortunately, such resolutions are too low to display most current web pages in a way designed for viewing. Currently, most web pages can be viewed fairly well on a 640 x 480 resolution screen (although some websites cannot even be viewed easily even at this resolution). It would be desirable to be able to view most web pages using such a handheld device in a way that makes it easier to view the website on a larger screen.

また、本出願の提出時点で、特にユーザがウェブページを閲覧することが出来るように設計された複数の携帯電話が存在する。例えばマイクロソフト社は、176×220ピクセルサイズのスクリーンを有し、ウェブ閲覧ソフトウェアを有する携帯電話用の「スマートフォン」のソフトウェア規格を支援している。残念ながら、該パッケージの一部として提供された閲覧ソフトウェアでは、ユーザがより大型のコンピュータでウェブページを容易に閲覧可能な状態に近い方法で、殆どのウェブページを小型スクリーンで閲覧することは出来ない。   Also, at the time of filing this application, there are a plurality of mobile phones that are specifically designed to allow users to view web pages. For example, Microsoft is supporting the software standard for “smartphones” for mobile phones that have screens of 176 × 220 pixel size and have web browsing software. Unfortunately, the browsing software provided as part of the package allows users to browse most web pages on a small screen in a way that makes it easier for users to view web pages on larger computers. Absent.

他の電話機メーカーは、他のスクリーンサイズを有する携帯電話を提供している。例えば、現在、ノキア社は176×208ピクセルサイズのスクリーンを有する携帯電話を販売している。しかし、現段階では、デスクトップコンピュータやラップトップコンピュータで一般的に見られるサイズのスクリーン上で、そうしたウェブページを閲覧する場合と同様に多くのウェブページの閲覧を容易にする、こうしたコンピュータのスクリーン上でウェブページを閲覧するソフトウェアは存在しない。   Other phone manufacturers offer mobile phones with other screen sizes. For example, Nokia currently sells mobile phones with a 176 × 208 pixel size screen. However, at this stage, on the screens of these computers that make it as easy to browse as many web pages on a screen that is commonly found on desktop and laptop computers. There is no software for browsing web pages.

現在、液晶表示装置メーカーは、現在市場に存在する表示装置よりも実質的に高解像度を有する小型スクリーンを製造することが可能である。有機LED表示装置メーカーは、さらに高解像度でさえ実現可能だと主張している。これは、上記に列挙したハンドヘルドコンピュータに現在搭載されているサイズの対角4インチスクリーンは、480×680、又は、それを越える解像度を有することが可能であることを意味する。そうしたスクリーンは多くのウェブサイトに対して受容可能な解像度を提供するが、多くのウェブページを閲覧するためには、さらに効果的な高解像度が望ましい。   Currently, liquid crystal display manufacturers can produce small screens with substantially higher resolution than display devices currently on the market. Organic LED display manufacturers claim that even higher resolutions are feasible. This means that a diagonal 4 inch screen of the size currently installed in the handheld computers listed above can have a resolution of 480 × 680 or greater. Such screens provide acceptable resolution for many websites, but a more effective high resolution is desirable for viewing many web pages.

更に、比較的高解像度でそうしたスクリーンを見るためには、ユーザの視界の間近にスクリーンを保持されなければならない。このことは、多くのアプリケーションで満たされる可能性があるのだが、多くの場合、ユーザはハンドヘルドコンピュータを常に視界の間近に保持することに対して疲労を感じたり、不便を感じたりする可能性がある。   Furthermore, in order to view such a screen at a relatively high resolution, the screen must be kept close to the user's field of view. This can be met in many applications, but in many cases the user may feel tired or inconvenient to keep the handheld computer close to the field of view. is there.

また、表示解像度に於けるそうした進歩は、320×240ピクセルスクリーンが2インチまたはそれ未満の対角長で製造可能であることを意味する。そうした表示装置は、現在多くのマルチメディア携帯電話機に一般的に搭載されている表示装置のサイズよりも小型であり、腕時計に適合することも可能である。そうした表示装置は、現在ハンドヘルドコンピュータで使用されている多くのアプリケーション形式を、携帯電話、腕時計、又は、その他類似の小型コンピュータ上で使用可能にするであろう。残念ながら、これらの表示装置は、ユーザによる殆どのウェブページの閲覧を困難にさせる傾向がある比較的低解像度を有するという問題と、物理的にあまりにも小型であるために、ユーザによるそうした解像度での閲覧を可能にするためには、ハンドヘルドコンピュータをユーザの視界に極めて接近した位置に設置しなければならないという問題を有している。さらに、そうした装置をユーザの視界の間近に保持することは、所定時間であれば申し分ないであろうが、長時間に渡る場合、又は、所定の状況下では不便になる可能性がある。   Also, such advances in display resolution mean that a 320 × 240 pixel screen can be manufactured with a diagonal length of 2 inches or less. Such a display device is smaller than the size of a display device generally mounted on many multimedia mobile phones at present, and can be adapted to a wristwatch. Such a display would make many application types currently used in handheld computers available on cell phones, watches, or other similar small computers. Unfortunately, these display devices have the problem of having a relatively low resolution, which tends to make it difficult for users to view most web pages, and because they are physically too small, at these resolutions by the user. In order to enable browsing, the handheld computer has to be installed at a position very close to the user's field of view. Furthermore, maintaining such a device close to the user's field of view would be fine for a predetermined time, but may be inconvenient for long periods of time or under certain circumstances.

現在、眼鏡のような外観の装置を介して、或いは、ユーザの眼の上方、下方、又は、横にずれた位置に設置された鏡から、ユーザの眼に対して反射される光を受けて、ユーザがコンピュータスクリーンの画像を見ることが可能な頭部装着型表示装置を提供する幾つかの企業が存在する。ユーザがそうした頭部装着型表示装置を使用中に、周囲とのやりとりを容易に行うことが出来るように、多くの場合、そうした投影されたコンピュータスクリーンがユーザの視野の比較的小さな領域を占めるようにすることが望ましい。このように、そうした表示装置のユーザは、小型ハンドヘルドスクリーンのユーザが直面する問題と同一の問題の多くに直面する可能性がある。   Currently receiving light reflected to the user's eyes via an external device such as glasses or from a mirror placed at a position offset above, below, or sideways of the user's eyes. There are several companies that provide head mounted display devices that allow users to view images on a computer screen. In many cases, such projected computer screens occupy a relatively small area of the user's field of view so that the user can easily interact with the surroundings while using such a head mounted display. It is desirable to make it. As such, users of such display devices may face many of the same problems faced by users of small handheld screens.

本発明の幾つかの特徴は、比較的制限された演算能力、メモリ、又は、インターネット回線容量を有するコンピュータ上でのウェブページの閲覧を最適化する方法に関する。例えば、現在、殆どのデスクトップコンピュータやラップトップコンピュータで使用されている種類の標準的なウェブブラウザでは、多くのメガバイトを有するメモリや比較的大量の演算能力が必要となる。またそれらは、所望の速さで、ワールドワイドウェブのより頻繁に使用されるウェブページの多くに含まれるウェブコンテンツの種類が動作するためには、少なくとも高速モデムの通信速度を有するインターネット接続を必要とする。残念ながら、多くのハンドヘルドコンピュータは、そうしたウェブページの多くを効果的に表示することが可能な記憶装置、又は、演算能力を有していない。また、最も一般的に利用可能なワイヤレスシステムは、多くのウェブページにとって好ましい回線容量よりも実質的に低い回線容量を有している。このような要因の結果として、本出願に含まれる技術的革新の幾つかの内、焦点となる一つの技術的革新は、制限された記憶装置、通信速度、回線容量を用いて、コンピュータがワールドワイドウェブや類似のメディアをより適切にブラウズすることが可能な方法に関する。   Some aspects of the invention relate to a method for optimizing the browsing of web pages on a computer having relatively limited computing power, memory, or Internet line capacity. For example, standard web browsers of the type currently used on most desktop and laptop computers require many megabytes of memory and a relatively large amount of computing power. They also require an Internet connection with at least the speed of a high-speed modem in order for the web content types contained in many of the more frequently used web pages of the World Wide Web to operate at the desired speed. And Unfortunately, many handheld computers do not have storage or computing power that can effectively display many of these web pages. Also, the most commonly available wireless systems have a line capacity that is substantially lower than the preferred line capacity for many web pages. As a result of these factors, one of the focus of some of the technological innovations included in this application is that, with limited storage, communication speed, and line capacity, the computer The present invention relates to a method capable of browsing the wide web and similar media more appropriately.

本発明は、必ずしもそうとは限らないが、一般的に、携帯電話、携帯情報端末(PDA)、リストウォッチコンピュータ等の小型コンピュータデバイスでメディアを表示するための方法に関する。   The present invention relates generally, but not necessarily, to a method for displaying media on a small computing device such as a cellular phone, personal digital assistant (PDA), wristwatch computer or the like.

本発明は複数の特徴を有しており、すべてが分割ビューの使用を有するメディア表示方法に関連しているということが第1の特徴である。   The first feature is that the present invention has a plurality of features, all of which are related to a media display method having the use of split views.

こうした分割ビュー方法は、表示されるウェブページを表現するデジタルコンテンツの受信、ウェブページのレイアウト、及び、ウェブページの分割ビューの形成を含む。第1倍率でレイアウトされたウェブページの一部をオーバービューウインドウで同時に表示することと、オーバービューウインドウに比して拡大されたビューウインドウに於いてレイアウトの要素を大きく見えるようにする第2倍率で、拡大されたビューウインドウに於ける表示を用いて、オーバービューウインドウに表示されたレイアウト部分のサブパートを拡大されたビューウインドウで表示することによって、分割ビューが形成される。また、分割ビューは、拡大されたビューウインドウに現在表示されているオーバービューウインドウに表示された、レイアウトの一部のサブパートを示す拡大されたビューインジケータのオーバービューウインドウに於ける表示を含む。   Such split view methods include receiving digital content representing the displayed web page, the layout of the web page, and the creation of a split view of the web page. Simultaneously displaying a portion of a web page laid out at the first magnification in the overview window, and a second magnification that makes the layout elements appear larger in the enlarged view window compared to the overview window Then, using the display in the enlarged view window, the divided parts are formed by displaying the subparts of the layout portion displayed in the overview window in the enlarged view window. The split view also includes a display in the overview window of an enlarged view indicator showing some subparts of the layout displayed in the overview window currently displayed in the enlarged view window.

本発明の分割ビュー方法には、ユーザが拡大されたビューに表示されるレイアウトの部分の境界をナビゲート可能にする方法もある。そうした拡大されたビューナビゲーションに於いて、拡大されたビューウインドウに表示されたレイアウトのサブパートを移動させ、これに対して、オーバービューウインドウに表示されたレイアウトに関連して拡大されたビューインジケータを移動させることによって、ユーザからのナビゲーション入力に対応し、これにより、拡大されたビューウインドウに示されたレイアウトのサブパートは、そうした移動後に、拡大されたビューインジケータによって示されたレイアウトのサブパートに引き続き対応する。   The split view method of the present invention also includes a method that allows the user to navigate the boundaries of the portion of the layout displayed in the enlarged view. In such magnified view navigation, the subparts of the layout displayed in the magnified view window are moved, while the magnified view indicator is moved relative to the layout displayed in the overview window. In response to navigation input from the user, so that the subpart of the layout shown in the enlarged view window will continue to correspond to the subpart of the layout indicated by the enlarged view indicator after such movement .

幾つかの拡大されたビューナビゲーション方法に於いて、オーバービューウインドウ及び拡大されたビューウインドウは、所定の幅及び高さを有する単一の矩形表示スクリーンの異なる部分に同時に表示され、オーバービューウインドウ及び拡大されたウインドウのそれぞれは、スクリーンと実質的に同様の幅の広さであるが、それぞれはスクリーンの高さの異なる部分を占めている。   In some enlarged view navigation methods, the overview window and the enlarged view window are displayed simultaneously on different parts of a single rectangular display screen having a predetermined width and height, and the overview window and Each of the enlarged windows is as wide as the screen, but each occupies a different portion of the screen height.

本発明の特徴に関する幾つかの実施形態に於いて、拡大されたビューウインドウの高さは、拡大されたビューウインドウ及びオーバービューウインドウを併せた高さの半分よりも少ない高さを占める。   In some embodiments relating to features of the present invention, the height of the enlarged view window occupies less than half the combined height of the enlarged view window and the overview window.

本発明の該特徴に関する幾つかの実施形態に於いて、ウェブページレイアウトが拡大されたビューウインドウ及びオーバービューウインドウに表示される方向に関連して、スクリーンが縦方向を有する。幾つかのそうした実施形態に於いて、オーバービューウインドウ及び拡大されたビューウインドウのそれぞれは、高さよりも長い幅を有しており、これにより、それらの両方が表示されるスクリーンは縦方向を有するという事実にもかかわらず、それらのそれぞれは横方向を有することになる。   In some embodiments relating to this aspect of the invention, the screen has a vertical direction relative to the direction in which the web page layout is displayed in the enlarged view window and overview window. In some such embodiments, each of the overview window and the enlarged view window has a width that is longer than the height, so that the screen on which they are both displayed has a vertical orientation. Despite the fact that each of them will have a lateral direction.

分割ビュー方法の幾つかは、マルチビュー方法である。上述されているように、これらの方法は、ウェブページの第1ビューを作成することと、オーバービューウインドウ及び拡大されたビューウインドウに関する分割ビューの組み合わせを有していない第2ビューを作成するために、ユーザからの入力を選択する第2ビューに対応することによる、ユーザからの入力を選択する第1ビューへの対応を含む。分割ビューが表示される場合、上述されているように、その方法はユーザからのナビゲーション入力に対応する。   Some of the split view methods are multi-view methods. As described above, these methods create a first view of a web page and a second view that does not have a combination of split views with respect to an overview window and an enlarged view window. Includes responding to the first view of selecting input from the user by responding to the second view of selecting input from the user. When a split view is displayed, the method corresponds to navigation input from the user, as described above.

本発明の該特徴に関する幾つかの実施形態に於いて、第1及び第2の対応は、異なるハードウェア又はソフトウェアのボタン又はキーの押下であり、他の実施形態に於いては、それは、その方法のユーザインターフェースが異なる状態にある場合、同一ボタンの押下であっても良い。   In some embodiments relating to this aspect of the invention, the first and second correspondences are different hardware or software button or key presses, and in other embodiments it is If the method user interface is in a different state, the same button may be pressed.

幾つかのそうしたマルチビュー方法に於いて、第2ビューはオーバービューオンリービューである。このビューに於いて、ウェブページの一部は、レイアウトの要素が拡大されたビューに於いてよりも小さく見えるようにする倍率で表示される。このオーバービューオンリービューは、オーバービューウインドウと分割ビューに於ける拡大されたビューウインドウを組み合わせたサイズと表示サイズの合計が実質的に等しい。   In some such multi-view methods, the second view is an overview only view. In this view, a portion of the web page is displayed at a magnification that allows the layout elements to appear smaller than in the enlarged view. In this overview only view, the sum of the display size and the combined size of the overview window and the enlarged view window in the divided view is substantially equal.

多くの実施形態に於いて、オーバービューオンリービュー、及び、分割ビューのオーバービューウインドウの倍率が同一である。   In many embodiments, the magnification of the overview window for the overview only view and the split view is the same.

幾つかのマルチビュー方法に於いては、第2ビューは拡大オンリービューである。このビューに於いて、ウェブページレイアウトの一部は、レイアウトの要素をオーバービューウインドウに於いてより、より大きく見せる倍率で表示される。拡大オンリービューは、オーバービューウインドウ及び分割ビューに於ける拡大されたビューウインドウを組み合わせたサイズと表示サイズの合計が実質的に等しい。   In some multi-view methods, the second view is an enlarged only view. In this view, a portion of the web page layout is displayed at a magnification that makes the layout elements appear larger in the overview window. In the enlarged only view, the sum of the display size and the combined size of the enlarged view window in the overview window and the divided view is substantially equal.

多くのそうした実施形態に於いて、拡大オンリービュー、及び、分割ビューの拡大されたビューウインドウの倍率は同一である。   In many such embodiments, the magnification of the magnified view and the magnified view window of the split view are the same.

幾つかのマルチビュー示方法に於いて、第2ビューはリフローされたテキストウインドウである。第2ビュー選択入力に対する対応は、例えば、第2ビュー選択入力の受信前に、カーソル、又は、拡大されたビューインジケータが位置されるテキストのコラム、又は、この時、カーソル又は拡大されたビューインジケータに最も近いテキストのコラム等、ウェブページのテキストの選択された部分の第2レイアウトを実行することを含む。   In some multi-view presentation methods, the second view is a reflowed text window. The response to the second view selection input can be, for example, a column of text in which the cursor or magnified view indicator is located before receiving the second view selection input, or at this time the cursor or magnified view indicator. Performing a second layout of the selected portion of the text of the web page, such as a column of text closest to.

第2レイアウトは、分割ビューに於ける選択されたテキストのレイアウト幅に関連した選択されたテキストのフォントサイズよりも、新しいコラムのライン幅に関連したより大きな一つ又は複数のフォントサイズで、新しいテキストコラムのラインを越えて、テキストの選択された部分をリフローすることを含む。この新しいテキストコラムの最大幅は、リフローされたテキストウインドウに於けるスクリーン上に表示される。   The second layout is new with one or more font sizes associated with the new column line width greater than the selected text font size associated with the selected text layout width in the split view. Includes reflowing selected portions of text beyond the line of the text column. The maximum width of this new text column is displayed on the screen in the reflowed text window.

幾つかのそうした実施形態に於いて、第2ビューのリフローされたテキストウインドウは、分割ビューの拡大されたビューウインドウ及びオーバービューウインドウの組み合わせと実質的に同程度に大きい。   In some such embodiments, the reflowed text window of the second view is substantially as large as the combination of the enlarged view window and the overview window of the split view.

そうしたリフローされたテキストウインドウを使用する幾つかの実施形態に於いて、第2ビューは、リフローされたテキストウインドウ及び第2オーバービューウインドウの表示を同時に含む分割ビューの第2形態である。レイアウトの要素を拡大されたビューに於いてより、より小さく見せ、テキストをリフローされたテキストウインドウに於いてより、より小さなフォントで見せる倍率で、第2オーバービューウインドウはウェブページレイアウトの一部を表示する。   In some embodiments using such a reflowed text window, the second view is a second form of split view that simultaneously includes the display of the reflowed text window and the second overview window. The second overview window is a part of the web page layout, with a scale factor that makes the layout elements look smaller in the enlarged view and text in a smaller font in the reflowed text window. indicate.

そうしたリフローされたテキスト分割ビューに於いて、第2オーバービューウインドウは、リフローされたテキストウインドウに現在表示されているテキストの一部の表示を含むことが望ましい。例えば、そうした表示されたテキストインジケータは、テキストを反転映像に於けるリフローされたテキストウインドウが位置するオーバービューウインドウ、又は、それを取り囲むボックスを用いて表示することを含む。   In such a reflowed text split view, the second overview window preferably includes a display of a portion of the text currently displayed in the reflowed text window. For example, such displayed text indicators include displaying text using an overview window in which the reflowed text window in reverse video is located, or a box surrounding it.

リフローされたテキストウインドウを有する実施形態に於いて、この方法が、リフローされたテキストウインドウで表示されたテキストの一部を移動させることによって、ユーザからのナビゲーション入力に対応することを含むことが望ましい。同時に表示されたオーバービューウインドウに表示されたテキストインジケータを有するそうした実施形態に於いて、そうしたナビゲーション入力に対応して、オーバービューウインドウに表示されたレイアウトに関連して、表示されたテキストインジケータが移動し、これにより、リフローされたテキストウインドウに表示されたテキストのサブパートが、そうした移動後に、表示されたテキストインジケータによって示されたテキストのサブパートに継続して対応することが望ましい。   In embodiments having a reflowed text window, the method preferably includes responding to navigation input from the user by moving a portion of the text displayed in the reflowed text window. . In those embodiments having a text indicator displayed in the simultaneously displayed overview window, the displayed text indicator is moved relative to the layout displayed in the overview window in response to such navigation input. Thus, it is desirable for the text subpart displayed in the reflowed text window to continue to correspond to the text subpart indicated by the displayed text indicator after such movement.

当然のことながら、メディアの表示に於いて、今述べたタイプのリフローされたテキストウインドウの本発明の使用は、上記種類のオーバービューウインドウ及び拡大されたウインドウを表示可能な分割スクリーンモードも含むマルチビュー方法に限定されない。   Of course, the use of the present invention for reflowed text windows of the type just described in media display also includes a multi-screen mode that can also display an overview window of the type described above and an enlarged window. It is not limited to the view method.

例えば、本発明の幾つかの特徴によれば、表示されるウェブページを表示するデジタルコンテンツを受信し、その後、ウェブページの第1レイアウト及び第2レイアウトを実行するメディア表示方法を提供することが可能である。第2レイアウトは、第1レイアウトに於ける選択されたテキスト幅に対応した、選択されたテキストのフォントサイズに比して、新しいコラムのライン幅に対応した、より大きな一つ又は複数のフォントサイズで、新しいテキストコラムのラインを越えて、テキストの選択された部分をリフローする。そして、この方法は、ウェブページの分割ビューを作り出す。この分割ビューは、オーバービューウインドウに於ける第1倍率のウェブページレイアウトの一部の表示を含む。また、それはリフローされたテキストウインドウに於けるリフローされた選択されたテキストの同時表示を含む。新しいテキストコラムの最大幅は、リフローされたテキストウインドウに表示されたテキストの一部を、オーバービューウインドウに於いてより、大きなフォントで表示させる第2倍率で、スクリーン上のリフローされたテキストウインドウに表示される。   For example, according to some aspects of the present invention, there is provided a media display method for receiving digital content displaying a displayed web page and then performing a first layout and a second layout of the web page. Is possible. The second layout has one or more larger font sizes corresponding to the new column line width compared to the selected text font size corresponding to the selected text width in the first layout. To reflow the selected portion of the text beyond the line of the new text column. This method then creates a split view of the web page. This split view includes a display of a portion of the web page layout at the first magnification in the overview window. It also includes the simultaneous display of the reflowed selected text in the reflowed text window. The maximum width of the new text column is that the second part of the text that is displayed in the reflowed text window is displayed in a larger font in the reflowed text window on the screen at a second magnification. Is displayed.

本発明の幾つかの特徴によれば、ナビゲーション入力への対応が、ウェブページレイアウトの以前非表示であった部分の上に、ナビゲーション入力の生成前に、オーバービューウインドウに表示されたウェブページレイアウトの一部を越えて、拡大されたビューインジケータの所定の部分(即ち、すべて又は一部)を移動させるナビゲーション入力に対応することを含む場合、オーバービュー/拡大されたビューの分割ビューが提供される。その方法は、オーバービューウインドウに対応して、ウェブページレイアウトをスクロールすることによってそうした入力に対応し、これにより、以前非表示であった部分がオーバービューウインドウにスクロールされる。それは、ウェブページレイアウトの以前非表示であった部分の上に、拡大されたビューインジケータの所定の部分を移動させる。また、これに対して、それは拡大されたビューウインドウに表示されるレイアウトのサブパートをスクロールし、これにより、拡大されたビューウインドウに表示されたサブパートはそうした移動後に拡大されたビューインジケータによって示されたウェブページレイアウトのサブパートに対応する。   According to some aspects of the present invention, the web page layout displayed in the overview window prior to generation of the navigation input over the previously hidden portion of the web page layout, corresponding to the navigation input. A split view of the overview / enlarged view is provided if it includes responding to navigation inputs that move a predetermined portion (ie, all or part) of the enlarged view indicator beyond a portion of The The method responds to such input by scrolling the web page layout in response to the overview window, thereby scrolling the previously hidden portion into the overview window. It moves a predetermined portion of the enlarged view indicator over the previously hidden portion of the web page layout. Also, in contrast, it scrolls the layout subparts displayed in the enlarged view window, so that the subparts displayed in the enlarged view window are indicated by the enlarged view indicator after such movement. Corresponds to the web page layout subpart.

本発明の幾つかの特徴によれば、ナビゲーション入力への対応が、ナビゲーション入力の第1形態及び第2形態に別々に対応することを含む場合、オーバービュー/拡大されたビューの分割ビューが提供される。その方法は、拡大されたビューインジケータ、及び、拡大されたビューウインドウに表示されたウェブページレイアウトの一部を直接移動させることによって、ナビゲーション入力の第1形態に対応する。それは、拡大されたビューに表示されたウェブページレイアウトの一部に関連して、カーソルを直接移動することによって、ナビゲーション入力の第2形態に対応する。   According to some features of the invention, a split view of an overview / enlarged view is provided when the correspondence to the navigation input includes corresponding to the first form and the second form of the navigation input separately. Is done. The method corresponds to a first form of navigation input by directly moving an enlarged view indicator and a portion of the web page layout displayed in the enlarged view window. It corresponds to the second form of navigation input by moving the cursor directly in relation to the part of the web page layout displayed in the enlarged view.

一般に、ウェブページを見る際に、ユーザはリンクを選択することと、ウェブページのコントロール及びフィールドに於いて情報を入力することに関心がある。これを実行するために、ユーザは、拡大表示に関連してカーソルをナビゲート可能であることを望む場合が多い。しかし、ウェブページをざっと見渡す又は読む際に、ユーザは拡大されたビュー自体を移動させることに最も関心がある場合が多い。本発明のこの特徴によれば、ユーザは拡大されたビューに関連して、ナビゲーションに関するこれら2つの形態の両方を有することが可能である。   In general, when viewing a web page, the user is interested in selecting a link and entering information in the web page controls and fields. To do this, the user often wants to be able to navigate the cursor in relation to the enlarged display. However, when browsing or reading a web page, the user is often most interested in moving the magnified view itself. This feature of the invention allows the user to have both of these two forms of navigation associated with an enlarged view.

本発明のこのデュアルナビゲーションの特徴に関する幾つかの実施形態に於いて、ナビゲーション入力の第2形態への対応は、ナビゲーション入力の第2形態の形成前に、拡大されたビューウインドウに表示されたウェブページレイアウトのサブパートを越えて、拡大されたビューウインドウに於ける以前非表示であったウェブページレイアウトの一部の上に、カーソルを移動させるそうした入力への対応を含む。そうした実施形態は、(1)拡大されたビューウインドウに表示されたウェブページレイアウトのサブパートを越えて、拡大されたビューウインドウに以前非表示であったウェブページレイアウトの一部の上に、カーソルを移動させることと、(2)拡大されたビューウインドウに関連してウェブページレイアウトをスクロールし、これにより、カーソルが移動される以前非表示であった部分が、拡大されたビューウインドウに於いてスクロール、表示されることと、(3)これに対して、オーバービューウインドウに於いて拡大されたビューインジケータをスクロールし、これによって、拡大されたビューインジケータによって示されたウェブページレイアウトのサブパートが、拡大されたビューウインドウに表示されたウェブページレイアウトのサブパートに継続して対応することと、によってそうした入力に対応する。これにより、ユーザはそのビューの境界に対してカーソルを移動させることによって、拡大されたビューに表示されたウェブページレイアウトの一部をスクロールすることが出来る。   In some embodiments relating to this dual navigation feature of the present invention, the correspondence to the second form of navigation input is the web displayed in the enlarged view window prior to the formation of the second form of navigation input. It includes a response to such input that moves the cursor over a portion of the web page layout that was previously hidden in the enlarged view window beyond the page layout subpart. Such embodiments include (1) moving the cursor over a portion of the web page layout that was previously hidden in the enlarged view window beyond the sub-part of the web page layout displayed in the enlarged view window. (2) Scroll the web page layout in relation to the enlarged view window, so that the part that was hidden before the cursor was moved is scrolled in the enlarged view window (3) in contrast, scrolling through the enlarged view indicator in the overview window, so that the sub-part of the web page layout indicated by the enlarged view indicator is magnified Web page layout displayed in the selected view window And to respond continuously to subparts out, corresponds to such input by. Thus, the user can scroll a part of the web page layout displayed in the enlarged view by moving the cursor with respect to the boundary of the view.

本発明のデュアルナビゲーションの特徴に関する多くの実施形態に於いて、拡大されたビューウインドウ及びオーバービューウインドウの両方に於けるウェブページレイアウトに関連して、同一の位置にカーソルが表示される。   In many embodiments of the dual navigation feature of the present invention, a cursor is displayed at the same location in relation to the web page layout in both the enlarged view window and the overview window.

本発明の他の特徴によれば、それが必ずしも直接カーソルを移動させるためのものとは異なる、ナビゲーション入力の形態への対応を含まないという点を除いて、2つ前の段落に記載された本発明の特徴に類似するオーバービュー/拡大されたビューの分割ビューが提供される。本発明のこの特徴によれば、ナビゲーション入力への対応は、(1)拡大されたビューウインドウに以前表示されたウェブページレイアウトのサブパートを越えて、拡大されたビューウインドウに以前非表示であったウェブページの一部の上に、カーソルを移動させることと、(2)カーソルが移動される以前非表示の状態であった部分が、拡大されたビューウインドウに於いてスクロール、表示されるように、拡大されたビューウインドウに関連して、ウェブページレイアウトをスクロールすることと、(3)これに対応して、オーバービューウインドウに於ける拡大されたビューインジケータをスクロールし、これにより、拡大されたビューインジケータによって示されたウェブページレイアウトのサブパートは、拡大されたビューウインドウに表示されたウェブページレイアウトのサブパートに継続して対応することと、によって、所定のナビゲーション入力の形成る前に、拡大されたビューウインドウに表示されたウェブページレイアウトのサブパートを越えて、拡大されたビューウインドウに以前非表示であったウェブページレイアウトの一部の上に、カーソルを移動させる所定のナビゲーション入力に対応することを含む。   According to another aspect of the present invention, it is described in the previous paragraph, except that it does not necessarily include a correspondence to the form of navigation input, which is different from that for moving the cursor directly. A split view of the overview / enlarged view similar to the features of the present invention is provided. In accordance with this aspect of the invention, the response to navigation input has been (1) previously hidden in the enlarged view window, beyond the subpart of the web page layout previously displayed in the enlarged view window. Move the cursor over a part of the web page, and (2) the part that was hidden before the cursor was moved will be scrolled and displayed in the enlarged view window. Scrolling the web page layout in relation to the magnified view window; and (3) correspondingly scrolling the magnified view indicator in the overview window, thereby zooming in The sub-part of the web page layout indicated by the view indicator is an enlarged view window. By continuing to respond to the web page layout subparts displayed in the dough, it is possible to zoom in beyond the web page layout subparts displayed in the enlarged view window before forming the predetermined navigation input. Corresponding to a predetermined navigation input that moves the cursor over a portion of the web page layout that was previously hidden in the displayed view window.

このスクロールは、水平スクロール及び垂直スクロールの両方を含むことが望ましく、ナビゲーション入力に対応して移動されるように、ウェブページレイアウトに関連して、拡大されたビューウインドウ、及び、オーバービューウインドウの両方に於いて、同一位置にカーソルが表示されることが望ましい。   This scrolling preferably includes both horizontal scrolling and vertical scrolling, both in an enlarged view window and an overview window, relative to the web page layout, so that it is moved in response to navigation input. In this case, it is desirable that the cursor is displayed at the same position.

本発明の一つの特徴によれば、拡大されたビューウインドウは、オーバービューウインドウに関連して移動する場合、オーバービュー/拡大されたビューの分割ビューが提供され、拡大鏡のような機能にみえる。本発明のこの拡大鏡に関する特徴によれば、ユーザからのナビゲーション入力は、オーバービューウインドウに関連して拡大されたビューウインドウを移動させることと、これに対応して、拡大されたビューウインドウに表示されるレイアウトの拡大されたサブパートを移動させることと、によって対応される。結果として、拡大されたビューウインドウに表示されるウェブページレイアウトの一部は、そうした移動後に、オーバービューウインドウに表示されるレイアウトの覆われたサブポーションのサブパートに継続して対応する。   According to one aspect of the present invention, when the magnified view window moves relative to the overview window, a split view of the overview / magnified view is provided and looks like a magnifying glass. . According to this magnifying glass feature of the present invention, the navigation input from the user moves the enlarged view window relative to the overview window and correspondingly displays it in the enlarged view window. Moving the enlarged subpart of the layout to be handled. As a result, the portion of the web page layout displayed in the enlarged view window continues to correspond to the subpart of the covered subportion of the layout displayed in the overview window after such movement.

本発明のこの拡大鏡の特徴に関する幾つかの実施形態は、さらに、オーバービューウインドウに表示されるレイアウトに関連して、拡大されたビューウインドウに表示されたレイアウトのサブパートの位置を示す、一つ又は複数の拡大されたサブパートマーカを表示することを含む。幾つかのそうした実施形態に於いて、一つ又は複数の拡大されたサブパートマーカは、拡大されたビューウインドウの一つ又は複数の端部の幅及び/又は高さのサブパートに沿って伸びており、水平方向及び/又は垂直方向の範囲、及び、オーバービューに表示されるレイアウトに関連して、拡大されたビューウインドウに表示されるレイアウトのサブパートの位置をそれぞれ示す。   Some embodiments of this magnifying glass feature of the present invention further illustrate the location of the subparts of the layout displayed in the enlarged view window relative to the layout displayed in the overview window. Or displaying a plurality of enlarged subpart markers. In some such embodiments, the one or more enlarged subpart markers extend along a width and / or height subpart of one or more edges of the enlarged view window. , Horizontal and / or vertical extents, and layouts displayed in the enlarged view window in relation to the layout displayed in the overview, respectively.

本発明の拡大鏡の特徴に関する幾つかの実施形態に於いて、拡大されたビューは、ナビゲーション入力に対応して、水平及び垂直方向に移動することが出来るように、オーバービューウインドウよりも小さな幅及び高さの両方を有する。   In some embodiments relating to the magnifying glass features of the present invention, the magnified view is smaller in width than the overview window so that it can be moved horizontally and vertically in response to navigation input. And both have a height.

しかし、本発明のこの特徴に関する幾つかの実施形態に於いて、拡大されたビューウインドウは、オーバービューウインドウと実質的に同一幅を有する。そうした実施形態は、殆どの水平及び垂直ナビゲーション入力に別々に対応する。それらは、多くの場合、(1)オーバービューウインドウに関連して、拡大されたビューウインドウを垂直方向に移動することと、(2)レイアウトに関連して、拡大されたビューウインドウに表示されたレイアウトの拡大されたサブパートの位置を垂直方向に移動させることと、(3)必要に応じて、オーバービューウインドウに表示されたレイアウトに関連して、レイアウトの拡大されたサブパートの垂直位置に於ける変化に対応するために、一つ又は複数の拡大されたサブパートマーカを垂直方向に移動させることと、によって垂直ナビゲーション入力に対応する。そうした実施形態は、多くの場合、(1)レイアウトに関連して拡大されたビューウインドウに表示されるレイアウトの拡大されたサブパートの位置を水平方向に移動させることと、(2)必要に応じて、オーバービューウインドウに表示されたレイアウトに関連して、レイアウトの拡大されたサブパートの水平位置に於ける変化に対応するために、オーバービューウインドウに表示されたレイアウトに関連して、レイアウトの拡大されたサブパートの水平位置に於ける変化に対応する為の一つ又は複数の拡大されたサブパートマーカを、水平方向に移動させることと、によって、オーバービューウインドウに関連して、拡大されたビューウインドウを実質的に移動させることなく水平方向ナビゲーション入力に対応する。   However, in some embodiments relating to this aspect of the invention, the enlarged view window has substantially the same width as the overview window. Such an embodiment separately accommodates most horizontal and vertical navigation inputs. They were often displayed in (1) the enlarged view window in relation to the overview window and (2) in the enlarged view window in relation to the layout. Moving the position of the enlarged subpart of the layout in the vertical direction; and (3) if necessary, in the vertical position of the enlarged subpart of the layout in relation to the layout displayed in the overview window. To accommodate changes, one or more enlarged subpart markers are moved in the vertical direction to accommodate vertical navigation input. Such embodiments often include (1) horizontally moving the position of the enlarged subpart of the layout displayed in the enlarged view window relative to the layout, and (2) as required. In relation to the layout displayed in the overview window, the layout is expanded in relation to the layout displayed in the overview window to accommodate changes in the horizontal position of the expanded subpart of the layout. By moving one or more magnified subpart markers to accommodate changes in the horizontal position of the subpart horizontally, the magnified view window is associated with the overview window. Corresponds to horizontal navigation input without substantial movement.

この記載に於いて、水平方向とは、テキストが表示上のラインにレイアウトされる方向について言及している。拡大されたビューをスクリーンと同様の幅にすることの利点は、テキストが最も読み取り可能な場合、それが拡大されたウインドウでレイアウトの幅の広い部分を見せることを可能にするということであり、このように、拡大されたビューを移動させる必要なく、テキストコラムの全体幅をユーザが読み取る能力を向上させる。   In this description, the horizontal direction refers to the direction in which text is laid out on a line on the display. The advantage of having the enlarged view as wide as the screen is that if the text is most readable, it will allow the enlarged window to show the wider part of the layout, In this way, the user's ability to read the entire width of the text column is improved without having to move the enlarged view.

実質的にスクリーンと同様の幅の拡大鏡を有する他の実施形態は、水平方向に固定された拡大されたビューに関連して、レイアウトのオーバービュー表示を水平方向に移動させることによって、水平方向ナビゲーション入力に対応することが可能である。   Other embodiments having a magnifying glass that is substantially the same width as the screen can be used in a horizontal direction by moving the overview display of the layout in the horizontal direction relative to an enlarged view that is fixed in the horizontal direction. It is possible to deal with navigation input.

本発明の他の特徴は、ウェブページテキストコラムが表示される幅を制限するウェブページを表示する方法に関連している。   Another aspect of the invention relates to a method for displaying a web page that limits the width in which the web page text column is displayed.

本発明のこの特徴に関する方法は、複数の表示可能なテキストの文字列、及び、複数のコラムの仕様を含む、マルチコラムウェブページのコンテンツにアクセスする。それぞれのコラム仕様は、コラムに於ける文字列の仕様、コラムのレイアウト幅、及び、コラムの水平レイアウト置換を含む。こうした仕様は、明示的であっても暗黙的であっても良い。場合によっては、それらは、コラムが表示されるスクリーン領域に関連してコラム幅を定義し、時としてピクセル全体の観点でそれを特定する。   The method relating to this aspect of the invention accesses the contents of a multi-column web page, including a plurality of displayable text strings and a plurality of column specifications. Each column specification includes a character string specification in the column, a column layout width, and a column horizontal layout replacement. Such a specification may be explicit or implicit. In some cases, they define the column width relative to the screen area in which the column is displayed, and sometimes specify it in terms of the entire pixel.

ウェブページにアクセスした時点で、その方法は、レイアウト倍率を有するマルチコラムフォーマットにウェブページをレイアウトする。それぞれのコラムの水平レイアウト位置がコラムの水平置換仕様の関数として決定される場合、このレイアウトはコラムのそれぞれに対するレイアウト位置を決定することを含む。   When accessing the web page, the method lays out the web page in a multi-column format having a layout magnification. If the horizontal layout position of each column is determined as a function of the column's horizontal replacement specification, this layout includes determining the layout position for each of the columns.

その方法によって、ユーザは、複数の異なる水平方向に置換されたレイアウトのサブパートの中から、マルチコラムレイアウトの所定のサブパートを選択することができ、それは、所定の表示倍率で所定の水平解像度を有する所定のスクリーンウインドウ上のユーザが選択したレイアウトの部分を表示する。マルチコラムレイアウトは、横方向に配置されたコラム一式の一番左のコラムの一番左の端部から、このコラム一式の一番右のコラムの一番右の端部までの、マルチコラムレイアウト幅の合計を有する、横方向に配置されたコラム一式を有する。そのレイアウトは、一つ又は複数の横方向に配置されたコラムにおけるテキストがレイアウトされる幅を、最大所望コラム幅より短い、又は、同等の幅に制限することを含む。レイアウト倍率によって拡大/縮小されるように、コラムの特定されたレイアウト幅に対応する幅が最大所望コラム幅よりも長い場合、この制限はコラムの幅を変更する。   The method allows a user to select a predetermined subpart of a multi-column layout from among a plurality of different horizontally substituted layout subparts, which has a predetermined horizontal resolution at a predetermined display magnification. A portion of the layout selected by the user on a predetermined screen window is displayed. The multi-column layout is a multi-column layout from the leftmost end of the leftmost column of a set of columns to the rightmost end of the rightmost column of this set of columns. It has a set of laterally arranged columns having a total width. The layout includes limiting the width in which text in one or more horizontally arranged columns is laid out to a width that is less than or equal to the maximum desired column width. This restriction changes the width of the column if the width corresponding to the specified layout width of the column is longer than the maximum desired column width, as scaled by the layout magnification.

最大所望コラム幅は、所定の倍率でウインドウに表示された場合の、所定のスクリーンウインドウの幅と同等又はそれ未満のレイアウトに於ける幅である。多くの実施形態に於いて、最大所望コラム幅は、コラムのテキストの正確及び/又は容易な読み取りを可能にする解像度で、表示ウインドウ内に適合するピクセル幅に対応する。   The maximum desired column width is a width in a layout equal to or less than the width of a predetermined screen window when displayed in the window at a predetermined magnification. In many embodiments, the maximum desired column width corresponds to a pixel width that fits within the display window, with a resolution that allows accurate and / or easy reading of the column text.

本発明のコラム幅制限の特徴に関する幾つかの実施形態に於いて、アクセスされたウェブページのコンテンツは、一つ又は複数の画像を含み、それぞれのコラムの仕様は、テキスト、及び/又は、一つ又は複数の画像がコラムに位置する仕様を含む。ウェブページのレイアウトは、それぞれのコラムに於いて、テキスト、及び/又は、コラムに位置する一つ又は複数の画像の位置をレイアウトすることを含む。一つ又は複数の横方向に配置されたコラムに於けるテキストがレイアウトされる幅の制限は、レイアウト倍率によって拡大/縮小されるように、画像に対応する幅が最大所望コラム幅よりも大きい場合、そうした画像のサイズを縮小することによって、そうしたコラムにレイアウトされる任意の画像の幅を、最大所望コラム幅よりも短い、又は、同等の幅に制限することを含む。   In some embodiments relating to the column width limitation feature of the present invention, the content of the accessed web page includes one or more images, each column specification being text and / or one. Includes a specification where one or more images are located in a column. Web page layout includes laying out the text and / or the location of one or more images located in the column in each column. The width of text that is laid out in one or more horizontally arranged columns is limited if the width corresponding to the image is larger than the maximum desired column width, as scaled by the layout magnification. Reducing the size of such images includes limiting the width of any image laid out in such columns to a width less than or equal to the maximum desired column width.

横方向に配置されたコラムの一つが、最大所望コラム幅よりも小さいコラムの特定された幅に対応するレイアウト幅を有する多くのコラム幅制限に関する実施形態に於いて、そのコラムに於けるテキストは、多くの場合、コラムの特定された幅に対応するレイアウト幅でレイアウトされる。   In many column width restrictions embodiments where one of the horizontally arranged columns has a layout width corresponding to a specified width of the column that is less than the maximum desired column width, the text in that column is In many cases, the layout is performed with a layout width corresponding to the specified width of the column.

多くのコラム幅制限に関する実施形態に於いて、横方向に配置されたコラムのテキストの第1コラムが配置される幅が、幅制限によって減少される場合、第1コラムの右側にレイアウトされる横方向に配置されたコラムの第2コラムは、第1コラムのテキストのレイアウト幅に於ける減少の関数として、レイアウト倍率で拡大/縮小されているように、第2コラムの水平置換仕様に関連して減少される右側水平置換でレイアウトされる。   In many column width limitation embodiments, the width laid out to the right of the first column is reduced if the width in which the first column of text in the horizontally arranged column is reduced by the width limitation. The second column of orientated columns is related to the horizontal replacement specification of the second column, as scaled by the layout magnification as a function of the reduction in the layout width of the text in the first column. Laid out with reduced horizontal right permutation.

多くのコラム幅制限の実施形態に於いて、レイアウト倍率及び/又は表示倍率によって、所定の表示倍率で所定のスクリーンウインドウ上のユーザが選択したレイアウトの部分が、テキストコラムのレイアウト幅の制限に関する動作とは独立して、縮小されたピクセル解像度で、テキストの文字を含むウェブページの要素を表示する。そうした実施形態に於いて、それらの特定されたコラム幅が、別の方法でそれらのレイアウトされた幅をあまりにも広くして、そうした縮小されたピクセル解像度でさえ所定のスクリーンウインドウ内に適合することが出来なくなる場合、コラム幅が制限される。   In many column width limiting embodiments, the layout scale selected by the user on a given screen window at a given display magnification, depending on the layout scale and / or display scale, may be related to the text column layout width restriction. Independently, it displays web page elements containing text characters at a reduced pixel resolution. In such embodiments, their specified column widths would otherwise make their laid out widths too wide to fit within a given screen window even with such reduced pixel resolution. If this is not possible, the column width is limited.

幾つかのコラム幅制限の実施形態は、上述の実施形態に類似した、オーバービューウインドウ及び拡大されたビューウインドウの両方を同時に表示するウェブページの分割ビューを作成し、拡大されたビューウインドウは、レイアウトのユーザが選択した部分が表示されるウインドウである。これらの実施形態に於いて、最大所望コラム幅は、その幅と同等、又は、それ未満の幅を有するレイアウトの一部が拡大されたビューウインドウ内に適合することを確実にするために選択されている。   Some column width limited embodiments create a split view of a web page that displays both an overview window and an enlarged view window simultaneously, similar to the previous embodiment, where the enlarged view window is This is a window in which a portion selected by the user of the layout is displayed. In these embodiments, the maximum desired column width is selected to ensure that a portion of the layout having a width equal to or less than that width fits within the enlarged view window. ing.

拡大されたビューウインドウを有する上述の本発明に関する多くの実施形態に於いて、拡大されたビューウインドウに表示されるウェブページのテキストは、そのウインドウに表示される解像度での可読性を改善するために選択されたそれらの文字アウトラインに関する形状及びピクセル配置を有するフォントビットマップで表示される。ここでは、そうしたフォントビットマップが表示される解像度で表示する為に最適化されているものとする。   In many embodiments of the present invention described above having an enlarged view window, the text of the web page displayed in the enlarged view window may improve readability at the resolution displayed in that window. It is displayed in a font bitmap having a shape and pixel arrangement for those selected character outlines. Here, it is assumed that such a font bitmap is optimized for display at a display resolution.

多くのそうした実施形態に於いて、使用される解像度最適化フォントビットマップは、例えば、10ピクセル/em又はそれ未満、若しくは、8ピクセル/em又はそれ未満の一般的にウェブ閲覧用に使用されるフォントビットマップよりも小さい。これは、多くのそうした実施形態に於いて、拡大されたビューがオーバービューに関連して拡大されるが、デスクトップコンピュータ及びノートブックコンピュータで通常表示されるよりも、かなり小さい縮尺で実際にウェブページを表示するからである。   In many such embodiments, the resolution optimized font bitmap used is typically used for web browsing, eg, 10 pixels / em or less, or 8 pixels / em or less. It is smaller than the font bitmap. This is because in many such embodiments, the magnified view is magnified in relation to the overview, but it is actually at a much smaller scale than normally displayed on desktop and notebook computers. Is displayed.

幾つかのそうした解像度最適化フォントビットマップの実施形態に於いて、ウェブページレイアウトは、拡大されたビューウインドウで使用されるフォントビットマップのレイアウトを定義し、オーバービューウインドウで表示されたウェブページレイアウトの表示は、そのレイアウトに含まれるフォントビットマップの縮小された、低ピクセル解像度表現を含む。オーバービューに表示される低解像度表現は、文字形状、及び、オーバービューウインドウで使用される低解像度で可読性を向上させるために選択されるピクセル配置を有していない。   In some such resolution-optimized font bitmap embodiments, the web page layout defines the layout of the font bitmap used in the enlarged view window, and the web page layout displayed in the overview window. Display includes a reduced, low pixel resolution representation of the font bitmap included in the layout. The low resolution representation displayed in the overview does not have the character shape and the pixel arrangement selected to improve readability at the low resolution used in the overview window.

幾つかのそうした解像度最適化フォントビットマップの実施形態に於いて、拡大されたビューウインドウに於いて文字を示すために使用されるフォントビットマップは、フォントビットマップが拡大されたビューウインドウで表示される解像度に対してアンチエイリアスが実行される、アンチエイリアスフォントビットマップである。   In some such resolution-optimized font bitmap embodiments, the font bitmap used to show characters in the enlarged view window is displayed in the enlarged view window of the font bitmap. An anti-aliased font bitmap in which anti-aliasing is performed for a given resolution.

幾つかのそうした解像度最適化フォントビットマップの実施形態に於いて、拡大されたビューウインドウで表示されるテキストがラテンアルファベットの文字で構成され、小文字の大部分が4ピクセル又はそれ未満のアドバンス幅で表示されるフォントで表示される。   In some such resolution-optimized font bitmap embodiments, the text displayed in the enlarged view window is composed of letters of the Latin alphabet, with the majority of lowercase letters having an advance width of 4 pixels or less. Displayed in the displayed font.

幾つかのそうした解像度最適化フォントビットマップの実施形態に於いて、オーバービューウインドウ及び拡大されたビューウインドウは、個別アドレス可能で、異なる色のサブピクセルに関する所定の配置で構成されるピクセルを有するスクリーン上に表示される。拡大されたビューウインドウに於いて文字を示すために使用されるアンチエイリアスフォントビットマップは、異なる色のサブピクセルの所定の配置を有するスクリーンピクセルのそれぞれの所定のサブピクセルに輝度値を割り当てる、サブピクセル最適化ビットマップである。   In some such resolution-optimized font bitmap embodiments, the overview window and the enlarged view window are individually addressable and have screens with pixels configured in a predetermined arrangement with respect to different color sub-pixels. Displayed above. An anti-aliased font bitmap used to show characters in the enlarged view window assigns a luminance value to each predetermined sub-pixel of a screen pixel having a predetermined arrangement of sub-pixels of different colors It is an optimization bitmap.

この色の割り当ては、(1)フォントビットマップによって表現される文字形状によって覆われる所定のサブピクセルの割合を示すカバレッジ値と、(2)少なくともフォントビットマップの幾つかのサブピクセルの場合、所定のサブピクセルのカバレッジ値と、所定の一つ又は複数の異なる色の近傍のサブピクセル一式のカバレッジ値との間の差異から生じるカラーアンバランスを防止する為に実行される、所定のカバレッジ値から異なる色のサブピクセルを含む近傍のサブピクセルカバレッジ値への所定のサブピクセルのカバレッジ値の割合に関するカラーバランス分配と、(3)少なくともフォントビットマップの幾つかのサブピクセルの場合、一つ又は複数の近傍のサブピクセルからのカバレッジ値から、所定のサブピクセルのカバレッジ値への、一つ又は複数のカラーバランス分配、に関する関数である。カラーバランス分配は、一部となっている全ピクセル内でカラーアンバランスを引き起こすサブピクセルのカバレッジ値の一部の分配に実質的に制限される。   This color assignment is: (1) a coverage value indicating the percentage of a given subpixel covered by the character shape represented by the font bitmap; and (2) at least for some subpixels of the font bitmap. From a predetermined coverage value, which is performed to prevent color imbalance resulting from a difference between a coverage value of a given subpixel and a coverage value of a set of neighboring subpixels of one or more different colors. A color balance distribution for the ratio of the coverage value of a given sub-pixel to neighboring sub-pixel coverage values including sub-pixels of different colors, and (3) one or more for at least some of the sub-pixels of the font bitmap Coverage of a given subpixel from coverage values from subpixels near To Tsu di value, one or more color balance distribution is a function related. The color balance distribution is substantially limited to the distribution of some of the subpixel coverage values that cause color imbalance within all pixels that are part.

本発明の様々な特徴に関する幾つかの実施形態に於いて、デジタルコンテンツは、画像及びテキスト文字列の両方を含んでおり、ウェブページのレイアウトは、画像のそれぞれ、及び、所定ラインに表示されるテキストの文字列のそれぞれの部分に、レイアウトに於ける水平及び垂直位置を割り当てるために、画像及びテキストに対して仮想レイアウトピクセルサイズを使用する仮想ピクセル解像度で、画像及びテキストをレイアウトすることを含む。   In some embodiments relating to various aspects of the present invention, the digital content includes both images and text strings, and the layout of the web page is displayed on each of the images and on a predetermined line. Laying out the image and text at a virtual pixel resolution that uses the virtual layout pixel size for the image and text to assign horizontal and vertical positions in the layout to each part of the text string .

そうした仮想レイアウトの実施形態に於いて、レイアウト倍率は、拡大されたビューウインドウに表示されたウェブページレイアウトの位置を、仮想ピクセル解像度で実行されるレイアウトに於ける対応する位置に関連して、レイアウト倍率で縮小されるピクセル解像度で表示させる、非単一値を有する。   In such virtual layout embodiments, the layout scale factor determines the layout of the web page layout displayed in the enlarged view window relative to the corresponding position in the layout performed at the virtual pixel resolution. It has a non-single value that allows it to be displayed at a pixel resolution that is scaled down.

多くのそうした仮想レイアウトの実施形態に於いて、拡大されたビューウインドウに於ける画像及びテキストは、レイアウト倍率で縮小されているように、仮想ウェブページレイアウトに於ける画像及びテキストの位置に対応するピクセル座標に表示される。画像及びテキストは、レイアウト倍率で縮小されているように、仮想レイアウトに於ける画像及びテキストに対して使用されるピクセルサイズに対応する縮小されたピクセルサイズで、拡大されたビューウインドウに描画される。   In many such virtual layout embodiments, the image and text in the enlarged view window correspond to the position of the image and text in the virtual web page layout as reduced by the layout magnification. Displayed in pixel coordinates. The image and text are drawn in the enlarged view window with a reduced pixel size corresponding to the pixel size used for the image and text in the virtual layout, as reduced by the layout magnification. .

多くのそうした仮想レイアウトの実施形態に於いて、拡大されたビューウインドウに於けるテキストの文字列の画像は、仮想レイアウトに於いて文字列の文字に割り当てられたサイズに関連して、レイアウト倍率で縮小されたピクセルサイズを有するフォントビットマップの連続で構成される。拡大されたビューウインドウに於ける文字の一つを表示するために使用されるフォントビットマップによって表現された文字の形状及びピクセル配列は、フォントビットマップが拡大されたビューウインドウに表示される解像度で、ビットマップのピクセル境界と共に、文字形状の端部の配列の割合を増加させるために選択されている。   In many such virtual layout embodiments, the text string image in the enlarged view window is scaled to the size assigned to the text string in the virtual layout. Consists of a series of font bitmaps with reduced pixel size. The character shape and pixel arrangement represented by the font bitmap used to display one of the characters in the enlarged view window is the resolution that is displayed in the enlarged view window of the font bitmap. Along with the pixel boundaries of the bitmap, it has been selected to increase the percentage of the array of character-shaped edges.

ウェブページコラムが表示される幅の制限に関連する本発明の特徴に関する多くの実施形態に於いても、上記種類の解像度最適化フォントビットマップを用いて使用される。   In many embodiments relating to features of the present invention related to the limitation on the width in which a web page column is displayed, it is also used with a resolution optimized font bitmap of the type described above.

上述の発明の様々な特徴に関する幾つかの実施形態に於いて、ウェブページコンテンツは、ウェブページのレイアウトなど、閲覧プロセスの一部を実行するためのリモートプロキシサーバに依存するクライアントブラウザコンピュータのスクリーンに表示される。多くの実施形態に於いて、クライアントコンピュータは、携帯電話、携帯情報端末(PDA)、又は、大型コンピュータによって実行されるレイアウト処理を有することから恩恵を得られる他の小型コンピュータである。   In some embodiments relating to various aspects of the above-described invention, the web page content is displayed on the screen of a client browser computer that relies on a remote proxy server to perform a portion of the browsing process, such as the layout of the web page. Is displayed. In many embodiments, the client computer is a cellular phone, a personal digital assistant (PDA), or other small computer that can benefit from having layout processing performed by a large computer.

そうしたクライアントプロキシ実施形態に於いて、クライアントは、ユーザによるデジタルコンテンツの閲覧を可能にするプログラムを含む。クライアントコンピュータは、コンピュータネットワーク上で、プロキシサーバからそのウェブページを要求することによって、所定のウェブページを要求するユーザ入力に対応する閲覧プログラムを含む。プロキシサーバは、コンピュータネットワーク上で、要求されたウェブページを保存、又は、動的に形成する一つ又は複数のサーバにユーザ要求を伝達する。一つ又は複数のサーバは、要求されたウェブページをプロキシサーバに送信する。プロキシサーバは、デジタルコンテンツの受信として、ダウンロードされたウェブページを受信する。プロキシサーバは、ウェブページのレイアウトを実行する。プロキシサーバは、ウェブページレイアウトをクライアントコンピュータにダウンロードする。そして、その後、クライアントコンピュータ上で実行する閲覧プログラムは、オーバービューウインドウ、及び、拡大されたビューウインドウに於いてダウンロードされたウェブページレイアウトの表示を行うことによって、分割ビューを生成する。   In such client proxy embodiments, the client includes a program that allows the user to view the digital content. The client computer includes a viewing program corresponding to user input requesting a predetermined web page by requesting the web page from a proxy server on the computer network. The proxy server communicates user requests to one or more servers that store or dynamically form the requested web page over the computer network. One or more servers send the requested web page to the proxy server. The proxy server receives the downloaded web page as digital content. The proxy server executes the layout of the web page. The proxy server downloads the web page layout to the client computer. Thereafter, the browsing program executed on the client computer generates a divided view by displaying the downloaded web page layout in the overview window and the enlarged view window.

また、本発明は、本発明の要約(即ち、課題を解決するための手段)に於いて上述された関数を実行するためにプログラム、及び/又は、ハードウェアに組み込まれたコンピュータデバイス、及び、コンピュータデバイスにそうした関数を遂行させる為の機械可読形式で記録されたプログラムに関係している。   The present invention also provides a computer device embedded in a program and / or hardware to perform the functions described above in the summary of the invention (i.e., means for solving the problems), and It relates to a program recorded in a machine readable form for causing a computing device to perform such a function.

上記に於いて要約されていない本発明の他の特徴に関しては、下記の「幾つかの好ましい実施形態に関する詳細な説明」(即ち、発明を実施するための最良の形態)に於いて明らかにされる。   Other features of the invention not summarized above will become apparent in the "Detailed Description of Some Preferred Embodiments" below (ie, the best mode for carrying out the invention). The

本発明に関するこれらの特徴及びその他の特徴は、下記に付随する図面に関連して、最良の実施形態に関する下記の記述を読むことで、より明白になるであろう。   These and other features of the present invention will become more apparent upon reading the following description of the best embodiment in conjunction with the accompanying drawings.

図1は、特に、低解像度の表示装置を有するシステム上で、ウェブブラウズ、及び/又は、他の種類のコンピュータによって生成されたコンテンツの表示を改善するために、本発明の幾つかの特徴に従って使用される可能性のある、基本的な処理及びデータ表示を示す高レベルの図面である。   FIG. 1 illustrates several features of the present invention to improve the display of web browsing and / or other types of computer generated content, particularly on systems having low resolution display devices. Figure 6 is a high level drawing showing basic processing and data display that may be used.

図1の最上部に図示された1つ又は複数のビットマップ画像102及びテキスト104を含むデジタルコンテンツ100は、その図面の最下部に表示されたサブピクセル最適化され縮小されたフォーマット106で表示されている。   The digital content 100 including one or more bitmap images 102 and text 104 illustrated at the top of FIG. 1 is displayed in a sub-pixel optimized reduced format 106 displayed at the bottom of the drawing. ing.

本発明の一実施形態において、ステップ108で構成される差分処理は、テキストコンテンツの表示をサブピクセル最適化するために使用されるというよりは、むしろ、ビットマップ画像102の表示をサブピクセル最適化するために使用される。ステップ108は、特に、カラービットマップからのサブピクセル最適化された画像の生成に適したサブピクセル最適化ルーチンを使用している。また、処理108は、現在殆どのウェブコンテンツが表示されている解像度よりも低い解像度を有するスクリーン上での表示のために、ビットマップを縮小する。   In one embodiment of the invention, the difference processing comprised in step 108 is used to subpixel optimize the display of the bitmap image 102, rather than being used to subpixel optimize the display of text content. Used to do. Step 108 uses a subpixel optimization routine that is particularly suitable for generating a subpixel optimized image from a color bitmap. Process 108 also reduces the bitmap for display on a screen having a resolution lower than the resolution at which most web content is currently displayed.

デジタルコンテンツ100に含まれるテキスト104は、ステップ110及び112を使用することによって、低解像度サブピクセルアドレス可能スクリーン上での表示を行うために処理される。ステップ110は、通常テキスト表示に使用されるフォントを、サブピクセル最適化スクリーン上で低解像度の表示を行うために最適化されたフォントと置換する。ステップ112は、例えばフォント形状の定義に一般的に使用される数学的に定義されたアウトラインの様な、同一色の形状の高解像度画像の表現に特に適したサブピクセル最適化ルーチンによって生成された代替フォントからのフォントビットマップを使用する。   Text 104 included in digital content 100 is processed for display on a low resolution subpixel addressable screen by using steps 110 and 112. Step 110 replaces the font used for normal text display with a font optimized for low resolution display on a subpixel optimized screen. Step 112 was generated by a subpixel optimization routine that is particularly suitable for representing high-resolution images of the same color shape, such as mathematically defined outlines commonly used to define font shapes, for example. Use font bitmaps from alternate fonts.

本発明に関する一つの利用方法としては、インターネットからダウンロードされているマークアップ言語によって表現された、画像、及び/又は、テキストを表示するポータブルで、低解像度のウェブブラウザのコンテンツに於ける利用がある。   One use of the present invention is in portable, low-resolution web browser content that displays images and / or text expressed in a markup language downloaded from the Internet. .

現在まで、多数の所謂マークアップ言語が存在している。最も古く、最も支持された言語の1つがSGML(Standard General Markup Language)である。SGMLは、データに関する情報を提供する記述的な「メタデータ」を用いてデータを「マークアップ」するために使用可能なテキストベースの言語である。例としては、データが意図する目的、又は、データが配置される文書の視覚的提示の範囲内の位置を示すためにマークアップメタデータを使用することが出来る。また、それは、テキスト中、又は、マークアップ言語で記述された文書中の所定の位置に挿入される、例えば画像のような他の種類のデータへのリンクを示すために使用可能である。今日一般的に使用されている、例えばHTMLやXML等の幾つかのマークアップ言語は、SGMLから派生したものである。   To date, many so-called markup languages exist. One of the oldest and most supported languages is SGML (Standard General Markup Language). SGML is a text-based language that can be used to “mark up” data with descriptive “metadata” that provides information about the data. As an example, markup metadata can be used to indicate the intended purpose of the data or the location within the visual presentation of the document in which the data is placed. It can also be used to indicate links to other types of data, such as images, that are inserted at predetermined locations in text or in documents written in a markup language. Some markup languages commonly used today, such as HTML and XML, are derived from SGML.

本発明の最良の一実施形態に於いて、上記図1において参照されたデジタルコンテンツ100は、例えばHTMLのようなマークアップ言語で表現された画像、及び/又は、テキストを含む標準的なウェブコンテンツであっても良い。おそらくウェブサイトのホームページを表現する、この標準的なウェブコンテンツ100は、図2乃至図4に図示されたポータブル低解像度ブラウザ装置200上に表示するために、下記に記述された様々な装置及び方法でダウンロードすることが可能である。ブラウザ装置200上に表示する前に、デジタルコンテンツ100は、判読性向上のために、例えば以下に記述するような様々な方法や処理によって拡大/縮小、及び/又は、サブピクセル最適化される可能性がある。   In the best embodiment of the present invention, the digital content 100 referred to in FIG. 1 is a standard web content including images and / or text expressed in a markup language such as HTML. It may be. This standard web content 100, possibly representing the home page of a website, is various devices and methods described below for display on the portable low resolution browser device 200 illustrated in FIGS. It is possible to download at. Prior to display on the browser device 200, the digital content 100 can be scaled and / or sub-pixel optimized by various methods and processes as described below, for example, to improve legibility. There is sex.

図2は、本発明の一実施形態に従って実施される、ネットワークコンピュータ環境を図示している。薄型クライアントブラウザ200のプログラムは、例えば液晶表示装置(LCD)スクリーンのような小型表示スクリーン上にテキスト及び/又はグラフィックの取り込み、及び、表示を実行することが可能なハンドヘルドコンピュータデバイス、又は、他の小型コンピュータデバイスに於いて実行される。このブラウザによって、ユーザはリモートソース(例えばインターネット)からのデジタル情報を要求し、それをスクリーン上に表示させることが出来る。   FIG. 2 illustrates a networked computer environment implemented in accordance with one embodiment of the present invention. The thin client browser 200 program may be a handheld computer device capable of capturing and displaying text and / or graphics on a small display screen, such as a liquid crystal display (LCD) screen, or other Implemented in small computing devices. This browser allows the user to request digital information from a remote source (eg, the Internet) and display it on the screen.

図2に図示された本発明の実施形態に於いて、ユーザは薄型クライアントブラウザ200のコントロールボタンを操作することによって、画像、及び/又は、テキストを含むデジタルコンテンツの取り込み、及び、表示を要求する。要求されるデジタルコンテンツは、インターネットを介してアクセス可能な特定のウェブページであっても良い。そして、薄型クライアントブラウザ200は、例えばLAN、WAN、又は、インターネットであり得るネットワーク138上で物理的に遠隔にあるプロキシサーバ210を介してコンテンツに対する要求202を実行する。   In the embodiment of the present invention illustrated in FIG. 2, the user requests the capture and display of digital content including images and / or text by operating the control buttons of the thin client browser 200. . The requested digital content may be a specific web page accessible via the Internet. The thin client browser 200 then executes the content request 202 via the proxy server 210 that is physically remote on the network 138, which can be, for example, a LAN, WAN, or the Internet.

プロキシサーバ210は、ユーザによって要求されたデジタルコンテンツ100を有する物理的に遠隔にあるウェブサーバ220に対応する要求214を生成することによって、デジタルコンテンツの要求に対するプロキシプロセス216を実行する。プロキシサーバ210に対するネットワーク138上のデジタルコンテンツ100のダウンロード222によって、サーバ220はプロキシサーバの要求214に応答する。   Proxy server 210 performs proxy process 216 for the request for digital content by generating request 214 corresponding to physically remote web server 220 having digital content 100 requested by the user. The download 220 of the digital content 100 over the network 138 to the proxy server 210 causes the server 220 to respond to the proxy server request 214.

次に、プロキシサーバ210内のプロキシプロセス216は、図1に図示された機能108及び110の実行を含む、デジタルコンテンツ110を拡大/縮小、及び、サブピクセル最適化するための計算リソースを使用する。拡大/縮小、及び、サブピクセル最適化は、小型表示装置上で例えばテキスト及び/又はグラフィックのような画像の判読性向上を生み出す本発明の特徴である。これらについては、次のセクションに於いてより詳細に議論する。   Next, proxy process 216 within proxy server 210 uses computational resources to scale digital content 110 and sub-pixel optimize, including the execution of functions 108 and 110 illustrated in FIG. . Scaling and sub-pixel optimization are features of the present invention that produce improved legibility of images such as text and / or graphics on small display devices. These will be discussed in more detail in the next section.

プロキシサーバ210は、ここで拡大/縮小され、サブピクセル最適化されたコンテンツのブラウザ200へのダウンロード212を完了させる。この時点で、ユーザはブラウザ200のスクリーン上でコンテンツを見ることが出来る。   The proxy server 210 completes the download 212 of the sub-pixel optimized content to the browser 200 here. At this point, the user can view the content on the browser 200 screen.

図2に図示された本発明の実施形態に於いて、デジタルコンテンツのテキスト部分は、1つ又は複数の文字の文字列、及び、フォントファミリー、フォントサイズ、及び、他のフォント属性の関連指定を含む形式でブラウザにダウンロードされる。個々のサブピクセル最適化されたフォントビットマップで構成された画像を用いて文字列を表示することによって、薄型クライアントブラウザは、図1に図示された関数112を実行する。指定されたフォントサイズ及びフォントファミリーに於けるそうした文字列で、任意の文字に対するビットマップを有していなければ、薄型クラインアントはフォントサーバ230から一つ又は複数のそうしたビットマップを要求する。図2乃至図8に図示された本発明の様々な実施形態に於いて、プロキシサーバはそうしたフォントビットマップを提供することが可能であり、又、薄型クライアントは(ブラウザソフトウェアのサイズを増大させることになるが、)それらのビットマップをソフトウェアの標準的な部分として有することも可能である。他の実施形態に於いてもなお、フォントはアウトラインフォントになり得る。フォントビットマップの一つ利点は、フォント取り扱い業者の中には、そうしたフォントのアウトラインに比して、それらのフォントのビットマップをより自由に頒布可能にすることを望む傾向の強い業者が存在するという点である。   In the embodiment of the present invention illustrated in FIG. 2, the text portion of the digital content includes a string of one or more characters and associated designations of font family, font size, and other font attributes. It is downloaded to the browser in a format that includes it. By displaying a string using an image composed of individual subpixel optimized font bitmaps, the thin client browser performs the function 112 illustrated in FIG. If such a string in a specified font size and font family does not have a bitmap for any character, the thin client requests one or more such bitmaps from the font server 230. In various embodiments of the present invention illustrated in FIGS. 2-8, the proxy server can provide such a font bitmap, and the thin client can increase the size of the browser software. However, it is also possible to have those bitmaps as a standard part of the software. In other embodiments, the font can be an outline font. One advantage of font bitmaps is that some font vendors tend to want to be able to distribute bitmaps of those fonts more freely than the outlines of those fonts. That is the point.

本発明に関する代替実施形態の一つが図3に図示されている。この実施形態に於いては、図2のプロキシサーバ210及びウェブサーバ220が1台のリモートサーバ220Aに置き換えられている。薄型クライアントブラウザ200は、ネットワーク138上のリモートサーバ220Aに対して、デジタルコンテンツ100の要求202Aを実行する。例えば、ネットワーク138はインターネット又はLANであっても良く、デジタルコンテンツ100は特定のウェブページであっても良い。リモートサーバ220Aは、要求されたデジタルコンテンツ100を有しており、要求202Aに応答するプロキシプロセス216Aを実行する。プロキシ処理216Aは、クライアントブラウザ上に表示するために、ウェブコンテンツを動的に拡大/縮小、及び/又は、サブピクセル最適化するサーバ上で実行される如何なる処理であっても良い。プロキシ処理216Aは、保存されたデジタルコンテンツ100に対して実行され、図1のステップ108及び110を実行することによって、デジタルコンテンツ100を図1に図示された形式106に動的に変換する。リモートサーバ220Aは、薄型クライアントブラウザ200への拡大/縮小、及び/又は、サブピクセル最適化されたコンテンツのダウンロード212を完了する。   One alternative embodiment relating to the present invention is illustrated in FIG. In this embodiment, the proxy server 210 and the web server 220 in FIG. 2 are replaced with one remote server 220A. The thin client browser 200 executes the request 202A for the digital content 100 to the remote server 220A on the network 138. For example, the network 138 may be the Internet or a LAN, and the digital content 100 may be a specific web page. The remote server 220A has the requested digital content 100 and executes a proxy process 216A that responds to the request 202A. The proxy process 216A may be any process executed on a server that dynamically scales and / or subpixel optimizes web content for display on a client browser. Proxy processing 216A is performed on the stored digital content 100 and dynamically converts the digital content 100 into the format 106 illustrated in FIG. 1 by performing steps 108 and 110 of FIG. The remote server 220A completes the scaling 212 and / or subpixel optimized content download 212 to the thin client browser 200.

本発明に係る他の代替実施形態は図4に図示されている。図3と同様に、薄型クライアントの要求は、ネットワーク138上で、リモートサーバ(ここでは、サーバ220B)に直接要求される。   Another alternative embodiment according to the present invention is illustrated in FIG. Similar to FIG. 3, the request of the thin client is directly requested to the remote server (here, the server 220 </ b> B) on the network 138.

この実施形態に於いて、リモートサーバ220Bは、標準的なブラウザコンピュータで使用される標準形式100と、拡大/縮小、及び/又は、サブピクセル最適化されたコンテンツ100Aとの両方の状態で、要求されたデジタルコンテンツを有している。標準的なデジタルコンテンツ100から拡大/縮小、及び/又は、サブピクセル最適化された形式への変換は予め実行されており、これにより、プロキシ処理が動的にそれを変換する必要がなくなる。薄型クライアントは、要求されたコンテンツの拡大/縮小、及び/又は、サブピクセル最適化されたバージョンを受け取るはずだということを示す情報をサーバに提供する。リモートサーバ220Bは、薄型クライアントブラウザ200に対して、拡大/縮小、及び/又は、サブピクセル最適化されたコンテンツ100のダウンロード212を完了する。   In this embodiment, the remote server 220B requests in both the standard format 100 used on a standard browser computer and the scaled and / or sub-pixel optimized content 100A. Digital content. Conversion from standard digital content 100 to a scaled and / or sub-pixel optimized format is performed in advance, thereby eliminating the need for proxy processing to dynamically convert it. The thin client provides information to the server indicating that it should receive a scaled and / or sub-pixel optimized version of the requested content. The remote server 220B completes the download 212 of the scaled / reduced and / or sub-pixel optimized content 100 for the thin client browser 200.

さらなる代替実施形態が図5に図示されている。ブラウザ200Aは、拡大/縮小、及び/又は、サブピクセル最適化処理510をさらに含むフルスケールブラウザである。ブラウザ200Aは、ネットワーク138上のリモートサーバ220Cに対して、デジタルコンテンツ100の要求202Bを行う。サーバ220Cは、ブラウザ200Aに対して要求されたデジタルコンテンツ100のダウンロード212Aを完了する。デジタルコンテンツ100の拡大/縮小、及び/又は、サブピクセル最適化された形式への変換は、ブラウザ200Aで実行される処理510によって取り扱われる。   A further alternative embodiment is illustrated in FIG. The browser 200 </ b> A is a full-scale browser that further includes enlargement / reduction and / or sub-pixel optimization processing 510. The browser 200A makes a request 202B for the digital content 100 to the remote server 220C on the network 138. The server 220C completes the download 212A of the digital content 100 requested to the browser 200A. Enlargement / reduction of digital content 100 and / or conversion to a sub-pixel optimized format is handled by process 510 executed in browser 200A.

図6は、デジタルコンテンツ100を拡大/縮小、及び/又は、サブピクセル最適化することが可能な単一のコンピュータシステム600を図示している。この最良の実施形態に於いて、デジタルコンテンツは予めコンピュータシステム600に於いて生成されるか、又は、読み込まれている。コンピュータシステム600は、サブプロセス640を拡大/縮小、及び/又は、サブピクセル最適化することを含む、ブラウザ処理620を有している。ここで、ユーザは、付属の入力装置(例えばキーボード又はマウス)によって、コンピュータシステム600に対してデジタルコンテンツ100を表示する要求を行う。ブラウザプロセス620は、コンピュータシステムの記憶素子(例えば、電気的なメモリやディスク記憶装置)の1つから、要求されたデジタルコンテンツ100を取り込む。次に、ブラウザプロセス620は、デジタルコンテンツ100を取り込んだ時点で、これを拡大/縮小、及び/又は、サブピクセル最適化するサブ処理640に送信する。変換が完了すると、変換されたコンテンツは、コンピュータシステム600の表示スクリーン上に表示される。本発明に係るこの実施形態は、ネットワーク又はリモートサーバを必要とすることなく動作する。   FIG. 6 illustrates a single computer system 600 capable of scaling digital content 100 and / or subpixel optimization. In this best embodiment, the digital content has been previously generated or read in the computer system 600. The computer system 600 includes browser processing 620 that includes scaling the sub-process 640 and / or sub-pixel optimization. Here, the user requests the computer system 600 to display the digital content 100 using an attached input device (for example, a keyboard or a mouse). The browser process 620 captures the requested digital content 100 from one of the computer system's storage elements (eg, electrical memory or disk storage). Next, when the browser process 620 captures the digital content 100, the browser process 620 transmits the digital content 100 to a sub-process 640 that performs enlargement / reduction and / or sub-pixel optimization. When the conversion is completed, the converted content is displayed on the display screen of the computer system 600. This embodiment according to the invention operates without the need for a network or a remote server.

図7は単一のコンピュータシステムに関する代替実施形態を図示している。この実施形態に於いて、コンピュータシステム700は、予め形成、又は、読み込まれている(例えば、特定のウェブページのコンテンツ)等のデジタルコンテンツ100、プロキシ処理740、及び、ブラウザ処理720を有している。プロキシ処理740は、拡大/縮小、及び/又は、サブピクセル最適化プログラム760を実行する。ブラウザ処理は、デジタルコンテンツ100を表示するためのユーザ要求をプロキシ処理740に送信する。次に、プロキシ処理740は、コンピュータシステム700の記憶素子からデジタルコンテンツ100を取り込む。デジタルコンテンツ100が取り込まれた時点で、プログラム760は、後にコンピュータシステム700の表示装置で表示するためのブラウザプロセス740に送信される、拡大/縮小、及び/又は、サブピクセル最適化された形式にデジタルコンテンツ100を変換する。   FIG. 7 illustrates an alternative embodiment for a single computer system. In this embodiment, the computer system 700 includes digital content 100, such as pre-formed or read (eg, content of a specific web page), proxy processing 740, and browser processing 720. Yes. The proxy process 740 executes a scaling / subtraction and / or sub-pixel optimization program 760. The browser process transmits a user request for displaying the digital content 100 to the proxy process 740. Next, the proxy process 740 captures the digital content 100 from the storage element of the computer system 700. When the digital content 100 is captured, the program 760 is sent to a scaled and / or sub-pixel optimized format that is then sent to the browser process 740 for display on the display device of the computer system 700. The digital content 100 is converted.

図8は、単一のコンピュータシステムに関する第2の代替実施形態を図示している。ここでは、コンピュータシステム800は、拡大/縮小、及び/又は、サブピクセル最適化されたウェブコンテンツ810を有している。ブラウザ処理820は、ユーザからのコンテンツ100Aを表示する要求を処理し、コンピュータシステム800の記憶素子からそれを取り込み、コンピュータシステム800のスクリーン上にこれを表示する。   FIG. 8 illustrates a second alternative embodiment for a single computer system. Here, the computer system 800 includes web content 810 that is scaled and / or sub-pixel optimized. Browser processing 820 processes a request to display content 100A from a user, retrieves it from a storage element of computer system 800, and displays it on the screen of computer system 800.

上記に示した本発明に係る実施形態に於いては、ソースの画像の解像度からサブピクセルでアドレスされたスクリーンの解像度への画像の拡大/縮小は、部分的に、ソース画像及びサブピクセルでアドレスされた表示スクリーンの各解像度によって決定されている。   In the embodiment of the present invention shown above, the scaling of the image from the resolution of the source image to the screen resolution addressed in subpixels is partially addressed in the source image and subpixels. Is determined by each resolution of the displayed screen.

本発明の幾つかの実施形態に於いて、ソース画像の解像度とサブピクセルアドレス可能表示スクリーン上に表示される解像度との間の倍率決定は、ブラウザ装置のユーザにより特定可能である。この実施形態に於いて、ブラウザのユーザは、記憶装置から読み出される画像を縮小する処理に倍率を伝達することにより、複数倍率の中から倍率を選択する。次に、記憶装置から読み出された画像を縮小する処理は、選択された倍率に比例する水平及び垂直方向の倍率で、画像を縮小、及び/又は、サブピクセル最適化する。   In some embodiments of the present invention, the scaling determination between the resolution of the source image and the resolution displayed on the subpixel addressable display screen can be specified by the user of the browser device. In this embodiment, the browser user selects a magnification from a plurality of magnifications by transmitting the magnification to the process of reducing the image read from the storage device. Next, the process of reducing the image read from the storage device reduces the image and / or optimizes the sub-pixels at horizontal and vertical magnifications proportional to the selected magnification.

殆どの他のユーザがブラウザ装置に入力する場合と同様に、このような縮尺の選択は、物理的な又はGUIのボタン、メニュー項目、ダイアログボックス、又は、ブラウザ装置上のその他周知のユーザインターフェース装置を使用することにより実行可能である。   As with most other users entering into a browser device, such a scale selection may be a physical or GUI button, menu item, dialog box, or other well-known user interface device on the browser device. This can be done by using

そうした幾つかの実施形態に於いて、ブラウザ装置のユーザは、画像が以前に記憶装置から取り込まれ、第1倍率でサブピクセル最適化された形式で表示された後、デジタルコンテンツが再度、拡大/縮小、及び、サブピクセル最適化されて、再表示されることに応じて、複数倍率の中から第2倍率を選択しても良い。   In some such embodiments, the user of the browser device may re-enlarge / decrease the digital content after the image has been previously captured from the storage device and displayed in a sub-pixel optimized format at the first magnification. The second magnification may be selected from a plurality of magnifications according to reduction and sub-pixel optimization and re-display.

そうした実施形態に於いて、第1の拡大/縮小、及び、サブピクセル最適化された表示に於いて使用される倍率は、デフォルト又は所望の倍率の結果生じたものであっても良く、又、ブラウザ装置のユーザによって以前選択された倍率の結果生じたものであっても良い。ブラウザ装置のユーザは、ブラウザ装置の入力装置を操作する方法で、デジタルコンテンツを再表示する複数倍率から倍率を選択しても良い。そうしたブラウザ装置の入力装置の操作によって、第2の選択された倍率に従って画像が表示される。   In such embodiments, the scaling factor used in the first scaling / subpixel optimized display may result from a default or desired scaling factor, and It may be the result of a magnification previously selected by the user of the browser device. The user of the browser device may select a magnification from a plurality of magnifications for redisplaying the digital content by a method of operating the input device of the browser device. By operating the input device of the browser device, an image is displayed according to the second selected magnification.

そうした第2の拡大/縮小は、ブラウザ装置内、又は、物理的に離れたサーバ内の何れかで実行される処理の結果生じるものとしても良い。ブラウザ装置のユーザは、引き続き再表示するために複数倍率の中から倍率を継続して選択しても良い。   Such second enlargement / reduction may occur as a result of processing executed either in the browser device or in a physically remote server. The user of the browser device may continue to select a magnification from a plurality of magnifications for subsequent redisplay.

整数倍の縮小では、ソース画像に於ける整数のピクセルを結果として生じる縮小画像に於ける所定のピクセルに適合させる整数倍によって、デジタル画像を縮小することが最も簡単である。例えば、640×480解像度から320×240解像度への縮尺は、倍率2の縮小である。本発明に係る幾つかの実施形態では、非整数の縮小倍率を含む複数の縮小倍率からユーザが倍率を選択することが出来る。非整数の縮小倍率の例は、640×480解像度のソース画像の480×360ピクセル部分を、320×240解像度表示スクリーン上に表示するために拡大/縮小、及び/又は、サブピクセル最適化する、縮小倍率2分の3の例である。   With integer multiple reduction, it is easiest to reduce a digital image by an integer multiple that fits an integer number of pixels in the source image to a given pixel in the resulting reduced image. For example, the scale from 640 × 480 resolution to 320 × 240 resolution is a reduction of 2 magnification. In some embodiments according to the present invention, the user can select a magnification from a plurality of reduction magnifications including non-integer reduction magnifications. Examples of non-integer scaling factors are scaling and / or sub-pixel optimizing a 480 × 360 pixel portion of a 640 × 480 resolution source image for display on a 320 × 240 resolution display screen. This is an example of a reduction ratio of 3/2.

本明細書に於いてウェブページの解像度について言及する場合、通常、レイアウトを実施するブラウザプログラムがウェブページのコンテンツをレイアウトするよう要求されている解像度のことを意味する。下記に示す通り、特定の最小レイアウト幅を必要とする複数要素を有するウェブページもあり、ウェブページをそうした最小レイアウト幅よりも短い幅で表示するよう要求される場合、要求されたレイアウト幅よりもその幅が長い場合であっても、それらの要素は自身に必要な最小幅でレイアウトされる。   In this specification, when referring to the resolution of a web page, it usually means the resolution at which the browser program that implements the layout is required to lay out the content of the web page. As shown below, some web pages have multiple elements that require a specific minimum layout width, and if the web page is required to be displayed with a width shorter than the minimum layout width, Even if the width is long, the elements are laid out with the minimum width necessary for them.

例えば陰極線管(CRT)のようなコンピュータグラフィック表示装置や、液晶表示装置(LCD)スクリーンは、ほぼ例外なく色空間に関するRGBモデルを使用している。但し、該発明は、例えばCMYKカラーモデルのような他のカラーモデルに適用可能である。RGBモデルでは、加法3原色、赤、緑、青が混合され、人間の目で認識されるように所望の色を形成する。   For example, computer graphic display devices such as cathode ray tubes (CRTs) and liquid crystal display (LCD) screens almost always use RGB models for color spaces. However, the present invention is applicable to other color models such as the CMYK color model. In the RGB model, the additive three primary colors, red, green, and blue are mixed to form a desired color so that it can be recognized by the human eye.

ほとんどのポータブルコンピュータデバイス、又は、画像装置は、RGBモデルを使用するLCDスクリーンを有する。そうしたLCDスクリーンは、何千ものグリッド素子からなるピクセルと呼ばれる矩形配列で構成されており、該ピクセルは全体として認識される場合には画像を形成し、各ピクセルはRBG色空間からの多くの色値の内、一つを表示可能である。LCDスクリーンは、該スクリーンが有する水平及び垂直ピクセルの数により特徴付けられている。   Most portable computing devices or imaging devices have an LCD screen that uses the RGB model. Such LCD screens are composed of a rectangular array called pixels consisting of thousands of grid elements, which form an image when recognized as a whole, and each pixel has many colors from the RBG color space. One of the values can be displayed. LCD screens are characterized by the number of horizontal and vertical pixels they have.

同様に、各ピクセルは、ここではサブピクセルと称す、個々にアドレス可能な3つのサブコンポーネントによって構成されている。最も一般的には、サブピクセルは赤、緑、青の矩形要素である。最も一般的な実施形態に於いて、赤、緑、青の3つのサブピクセルは、サブピクセルが混合されてピクセル全体が所望の色に見えるように、各々に光度の値が割り当てられている。同様に、LCDスクリーン上の全てのピクセルが混合され、所望の画像が見えるようになる。   Similarly, each pixel is made up of three individually addressable subcomponents, referred to herein as subpixels. Most commonly, subpixels are red, green, and blue rectangular elements. In the most common embodiment, the three subpixels of red, green and blue are each assigned a value of luminosity so that the subpixels are mixed and the entire pixel looks the desired color. Similarly, all the pixels on the LCD screen are mixed so that the desired image is visible.

該サブピクセルは個々にアドレス可能であるとされているが、これは、個々のピクセルに割り当てられた色値が、別々の赤、緑、青のカラーコンポーネント、又は、輝度値を有しており、ピクセルの赤、緑、青のサブピクセルによってそれぞれ表示されるからである。それ故、ピクセルに割り当てられた色値に於いて、関連付けられたカラーコンポーネントの輝度値の値を制御することによって、各サブピクセルの輝度を別々に制御することが可能である。   The subpixels are said to be individually addressable, because the color values assigned to individual pixels have separate red, green, and blue color components or luminance values. This is because the pixel is displayed by red, green, and blue sub-pixels. Therefore, it is possible to control the brightness of each sub-pixel separately by controlling the value of the brightness value of the associated color component in the color value assigned to the pixel.

LCD装置、及び、例えばカラーLED(有機発光ダイオード(OLED)を使用するスクリーンを含む)やガスプラズマ表示装置のような、他の「サブピクセルアドレス可能」表示装置では、各サブピクセルのそれぞれが、表示上に固定の既知の位置を有する。例えば、殆ど全ての陰極線管(CRT)等の多くの表示装置は、サブピクセルアドレス可能ではない。例えば、CRTの各ピクセルは赤、緑、青のカラーコンポーネントのそれぞれに対して個別に輝度値を有しているが、それらの異なる色値に関連する光を生成する要素のそうした各ピクセル内での正確な物理的配置は、通常知られていない。これは、スクリーンの個々の発光パターン、水平及び垂直スキャンの解像度、個々のピクセルがスクリーン上に描画される正確な位置を制御する電圧に関する現在の正確な状態、に関する関数に比例するからである。   In LCD devices and other “subpixel addressable” display devices, such as color LEDs (including screens using organic light emitting diodes (OLEDs)) and gas plasma display devices, each subpixel is Has a fixed known position on the display. For example, many display devices, such as almost all cathode ray tubes (CRTs), are not subpixel addressable. For example, each pixel of a CRT has a separate luminance value for each of the red, green, and blue color components, but within each such pixel of the element that produces light associated with those different color values. The exact physical arrangement of the is usually unknown. This is because it is proportional to a function of the screen's individual emission pattern, the resolution of the horizontal and vertical scans, and the current exact state of the voltage that controls the exact position at which the individual pixels are drawn on the screen.

図9は、複数のピクセル行(R1−R12)、及び、ピクセル列(C1−C12)で構成されるLCDスクリーン900の12×12の部分を図示している。行と列のそれぞれの交点がピクセル要素を構成している。実際のLCDスクリーンは、任意の数の行列を有することが可能である。但し、頻繁に見られるのは、320×240、640×480、800×600、1024×768、1280×1024のグリッドである。   FIG. 9 illustrates a 12 × 12 portion of an LCD screen 900 comprised of a plurality of pixel rows (R1-R12) and pixel columns (C1-C12). Each intersection of a row and a column constitutes a pixel element. An actual LCD screen can have any number of matrices. However, frequently seen are 320 × 240, 640 × 480, 800 × 600, 1024 × 768, and 1280 × 1024 grids.

波線の円部910内にピクセルR1−C1が図示されている。ピクセルR1−C1は、それ自身が3つのピクセルサブコンポーネント(以下、サブピクセル要素と称す)で構成されている。ピクセルR1−C1の拡大図は、図9の最下部の拡大されたピクセル920として図示されている。サブピクセル要素902は赤として表示され、サブピクセル要素904は緑として表示され、サブピクセル要素906は青として表示される。個々のサブピクセル要素902、904、906は、幅がピクセル全体の約3分の1の幅であり、高さがピクセル全体の高さに等しい。   Pixels R1-C1 are illustrated within a dashed line circle 910. The pixel R1-C1 itself is composed of three pixel subcomponents (hereinafter referred to as subpixel elements). An enlarged view of pixels R1-C1 is shown as enlarged pixel 920 at the bottom of FIG. Subpixel element 902 is displayed as red, subpixel element 904 is displayed as green, and subpixel element 906 is displayed as blue. The individual sub-pixel elements 902, 904, 906 are approximately one third the width of the entire pixel and the height is equal to the height of the entire pixel.

LCDスクリーン900に図示されているように、そうした複数ピクセルが格子状に配列される場合、垂直のカラーストライプがLCDスクリーン900上に現れる。この周知のピクセル配列は、垂直RGBストライプと呼ばれることがある。他の周知の配列では、水平ストライプが生じるような直角方向で、ピクセル要素がレイアウトされる(この場合、スクリーンを90°回転することによって、水平ストライプスクリーンを垂直ストライプスクリーンに変換される)。   As shown in the LCD screen 900, when such pixels are arranged in a grid, vertical color stripes appear on the LCD screen 900. This well-known pixel arrangement is sometimes referred to as a vertical RGB stripe. In other known arrangements, the pixel elements are laid out in a perpendicular direction that results in horizontal stripes (in this case, the horizontal stripe screen is converted to a vertical stripe screen by rotating the screen 90 °).

一般的な使用に於いては、ピクセルの3つのサブピクセル要素に関する光度は、ピクセルが人間の目に所望の色合い、彩度、及び、明度で認識されるように設定される。RGBサブピクセル要素は、表示される画像の1つのサンプルを表現するために、単一のカラーピクセルを形成するために同時に使用される。   In general use, the luminosities for the three sub-pixel elements of a pixel are set so that the pixel is perceived with the desired hue, saturation, and brightness by the human eye. The RGB subpixel elements are used simultaneously to form a single color pixel to represent one sample of the displayed image.

本発明の1つの特徴は、例えば320×240、又は、240×320(この場合、320×240の解像度を有するために、90度回転することが可能)の行列ピクセル比を有する表示のような低解像度スクリーン上での、ダウンロードされたウェブコンテンツ、テキスト及び画像を含むその他のデジタルコンテンツの可読性の向上に関する。詳細に議論し、図示した本発明に係る実施形態の多くは、640×480の仮想レイアウト解像度から320×240ピクセル解像度を有するスクリーン上に画像及びテキストをマッピングする。しかし、他の解像度スクリーンに本発明を使用することが出来る。ほんの2、3例を挙げると、512×384解像度スクリーンで1024×768解像度を見るように凡そレイアウトされたコンテンツを表示するために使用可能であり、又、400×300スクリーンで800×600ピクセルを見るように凡そレイアウトされたコンテンツを表示するために使用可能である。他の実施形態に於いては、本発明はパーソナルコンピュータのスクリーン上で一般的な偶数比の水平ピクセル次元、及び/又は、垂直ピクセル次元以外のピクセル次元を有する比較的低解像度の表示で使用される。   One feature of the present invention is, for example, a display having a matrix pixel ratio of 320 × 240 or 240 × 320 (in this case, it can be rotated 90 degrees to have a resolution of 320 × 240). It relates to improving the readability of downloaded web content, other digital content including text and images on low resolution screens. Many of the embodiments of the present invention discussed and illustrated in detail map images and text from a virtual layout resolution of 640 × 480 to a screen having a 320 × 240 pixel resolution. However, the present invention can be used with other resolution screens. To name just a few, it can be used to display content roughly laid out to see 1024x768 resolution on a 512x384 resolution screen, and 800x600 pixels on a 400x300 screen. It can be used to display content that is roughly laid out for viewing. In other embodiments, the present invention is used in relatively low resolution displays having a horizontal pixel dimension and / or a pixel dimension other than a vertical pixel dimension common on personal computer screens. The

概して、低解像度スクリーンについて言及する場合には、所定のデジタルコンテンツやデジタルコンテンツの所定のレイアウトが通常表示される予定のスクリーンよりも低解像度のスクリーンを意味する。また、そうした小型スクリーンによって そうした低解像度を有する、例えば、より大型のスクリーン上のウインドウ等、大型スクリーンの一部を含むことを意味する。   In general, when referring to a low-resolution screen, it means a screen that has a lower resolution than a screen on which a predetermined digital content or a predetermined layout of digital content is normally displayed. It also means that such a small screen includes part of a large screen having such a low resolution, for example a window on a larger screen.

図10に於いて、画像コンテンツ105、及び/又は、テキストコンテンツ107は、図1のサブピクセル最適化された表示の一部を示している。図1に図示された画像は、テキスト及び画像の両方のサブピクセル最適化された表示に関連した実際の色値のグレースケール拡大図である。図10の矩形部1000内の画像コンテンツ105の部分は、個々のピクセルをより見易くするために1020で拡大図示されている。これに対応して、矩形部1040内に含まれるテキストコンテンツ107の一部が1060で拡大図示されている。   In FIG. 10, the image content 105 and / or the text content 107 shows a part of the sub-pixel optimized display of FIG. The image illustrated in FIG. 1 is a grayscale magnification of actual color values associated with sub-pixel optimized display of both text and images. The portion of the image content 105 within the rectangular portion 1000 of FIG. 10 is enlarged at 1020 to make it easier to see the individual pixels. Correspondingly, a part of the text content 107 included in the rectangular portion 1040 is enlargedly illustrated at 1060.

1020及び1060で図示されたピクセルがピクセル全体を表現していることに留意しておくことが大切であるが、これは、画像1020及び1060を生成するために使用されるソフトウェアが、全ピクセルのそれぞれに関連付けられたRGB色値に対応するグレースケールを単に表現しているからである。サブピクセル拡大表示1020A及び1060Aは、それぞれ、拡大表示1020及び1040における各ピクセルに関連付けられた3つのサブピクセルの各々の明度を表現しようとしている。1020Bは、縮尺及び位置が拡大表示1020A及び1020に対応する拡大表示である。そこでは、画像のピクセル格子が相対的に太い線で表示され、それぞれの各ピクセル内の3つのサブピクセル区分が相対的に細い線で表示されている。この合成格子は、拡大表示1020及び1020Aに図示されたピクシレーションパターンが由来する図1の元々の高解像度カラービットマップ画像102の最上部に重ね合わされる。図示された特定の画像において、カラービットマップ102の解像度は、垂直及び水平方向の両方向において、図10の最下部に図示された画像105に於ける全ピクセル解像度の2倍程度の解像度である。   It is important to note that the pixels illustrated at 1020 and 1060 represent the entire pixel, which means that the software used to generate images 1020 and 1060 is not This is because the gray scale corresponding to the RGB color values associated with each is simply expressed. Sub-pixel magnified displays 1020A and 1060A are intended to represent the brightness of each of the three sub-pixels associated with each pixel in magnified displays 1020 and 1040, respectively. 1020B is an enlarged display whose scale and position correspond to the enlarged displays 1020A and 1020. There, the pixel grid of the image is displayed with relatively thick lines, and the three sub-pixel segments within each pixel are displayed with relatively thin lines. This composite grid is superimposed on top of the original high resolution color bitmap image 102 of FIG. 1 from which the pixilation patterns illustrated in the magnified displays 1020 and 1020A are derived. In the particular image shown, the resolution of the color bitmap 102 is about twice as high as the total pixel resolution in the image 105 shown at the bottom of FIG. 10 in both the vertical and horizontal directions.

拡大表示1060Bは、含まれる1つ又は複数の文字の高解像度フォントアウトラインの適用を受ける各サブピクセルの領域の一部を決定することにより、サブピクセル最適化されたフォントの画像が如何に生成されるかを図示している。   The magnified display 1060B determines how a sub-pixel optimized font image is generated by determining a portion of each sub-pixel area that is subject to the application of a high-resolution font outline of one or more included characters. It shows how.

サブピクセル解像度の拡大表示1020A及び1060Aと、それぞれに対応する全ピクセルの拡大表示1020及び1060とを比較することから分かるように、サブピクセル解像度での画像及びテキストのサブピクセル最適化された表現による表示は、より適切な空間解像度を提供する。   By sub-pixel optimized representation of images and text at sub-pixel resolution, as can be seen by comparing the sub-pixel resolution magnified representations 1020A and 1060A with the corresponding full-pixel magnified representations 1020 and 1060, respectively. The display provides a more appropriate spatial resolution.

図11は、標準的なウェブコンテンツを320×240カラー表示上で表示した際に、本発明の一実施形態によって提供される可読性の質を表現するものである。同図の最上部に図示されたビットマップ1100はグレースケールであり、ウェブページ「princeline.com」の一部の標準的な640×480レイアウトから生成された実際のビットマップに関する全ピクセルの拡大表示である。この画像は、図11の最下部に図示されたウェブページの全画面320×240画像に図示された矩形部1130内に含まれるウェブページの一部に対応している。同図の真ん中に図示されたビットマップ1120はグレースケールであり、上記320×240画像の同一部分のカラービットマップの全ピクセルの拡大表示である。図11の最下部に図示された200Bは、図2に関して記載された種類の薄型クライアントブラウザとして機能するハンドヘルドコンピュータ装置を表している。ウェブページの640×480レイアウトを表現する320×240サブピクセル最適化ビットマップの表現が、このブラウザのスクリーン上に図示されている。図10の拡大表示1020のように、図11の最下部に図示されたビットマップ1130は、全ピクセルの平均輝度に対応するグレースケールレベルで個々のピクセルを図示している。図10に於ける拡大表示1020A及び1060Aに示されているように、横方向に於ける垂直サブピクセルストライプを有する320×240スクリーン上でこの画像を見ると、実際の画像は、むしろ高解像度を有するように見える。   FIG. 11 depicts the quality of readability provided by an embodiment of the present invention when standard web content is displayed on a 320 × 240 color display. The bitmap 1100 illustrated at the top of the figure is grayscale and an enlarged display of all pixels for an actual bitmap generated from a standard 640 × 480 layout of a portion of the web page “princeline.com”. It is. This image corresponds to a part of the web page included in the rectangular portion 1130 illustrated in the full screen 320 × 240 image of the web page illustrated at the bottom of FIG. The bitmap 1120 shown in the middle of the figure is gray scale, and is an enlarged display of all pixels of the color bitmap of the same portion of the 320 × 240 image. The 200B illustrated at the bottom of FIG. 11 represents a handheld computing device that functions as a thin client browser of the type described with respect to FIG. A representation of a 320 × 240 sub-pixel optimized bitmap representing a 640 × 480 layout of a web page is illustrated on the browser screen. Like the enlarged display 1020 of FIG. 10, the bitmap 1130 illustrated at the bottom of FIG. 11 illustrates individual pixels at grayscale levels corresponding to the average luminance of all pixels. When viewed on a 320 × 240 screen with vertical subpixel stripes in the horizontal direction, as shown in magnified views 1020A and 1060A in FIG. 10, the actual image is rather high resolution. Seems to have.

本発明の多くの特徴に関する目的に対して、カラービットマップのサブピクセル最適化された画像を得る任意の周知のアルゴリズムを使用することが出来る。本発明の一実施形態に於いて、所定の色の所定のサブピクセルのそれぞれに割り当てられた輝度は、所定のサブピクセルに関連するソース画像に於ける矩形ウインドウ内に完全、又は、部分的に存在するソース画像のそれぞれのピクセルに於ける所定の色値の平均強度で決定される。このソース画像ウインドウは、その縮小された画像に於ける所定のサブピクセルの位置を中心に存在する縮小画像に於ける全ピクセルの領域に対応するソース画像に関連したサイズ及び位置を有している。サブピクセルに割り当てられた平均強度は、全体又は部分的にソース画像ウインドウを覆う各ソース画像ピクセルの強度と、そうしたソース画像ピクセルのそれぞれによって覆われたウインドウの領域の割合との乗算によって算出される。   Any well-known algorithm that obtains a sub-pixel optimized image of a color bitmap can be used for purposes related to many features of the present invention. In one embodiment of the present invention, the luminance assigned to each of the predetermined subpixels of the predetermined color is fully or partially within a rectangular window in the source image associated with the predetermined subpixel. It is determined by the average intensity of a given color value at each pixel of the existing source image. The source image window has a size and position associated with the source image that corresponds to the area of all pixels in the reduced image that is centered about the position of the predetermined subpixel in the reduced image. . The average intensity assigned to the subpixel is calculated by multiplying the intensity of each source image pixel that covers the source image window, in whole or in part, by the percentage of the area of the window covered by each such source image pixel. .

図12は、解像度が低減された表示装置のサブピクセルグリッドへの、より高解像度のソース画像102のマッピングを図示している。この図は、図1に図示された元のより高解像度のカラービットマップ102の一部に重ねられているサブピクセルグリッド1210を図示している。円部1220は、所望のより低解像度の表示装置に於ける1ピクセルに対応するグリッドの領域を囲んでいる。グリッドパターンの位置及びサイズは、より高解像度のソースビットマップ画像と、結果として得られるサブピクセル最適化画像のピクセルグリッドとの関係によって決定される。図12に図示された特定のグリッドパターン1210は、カラービットマップ画像102のピクセル解像度から、水平及び垂直方向の両方向においてソース画像の2分の1程度のピクセルを有する表示スクリーン解像度への拡大/縮小を表現している。この拡大/縮小の一例として、640×480表示上の表示に適切なピクシレーションを有する画像を、320×240表示スクリーン上に比例して表示するために縮小する例がある。このように、グリッドパターン1210のそれぞれの太い線の区分は、カラービットマップ画像102の4ピクセルに及んでいる。破線円部1220は、4つのより高解像度のソースのソースピクセルを含む、そうした太い線の区分の一つを囲んでいる
図13は、図12のサークル1220を中心とした9つの太い線の区分(即ち、9つの全ピクセル)の拡大図である。円部1300内のピクセルは、所望の表示装置の1つのピクセルを表現している。図13が明らかにしているように、グリッドパターン1210の太い線の区分のそれぞれは、4つのより高解像度のソース画像を囲んでいる。また、図13は、所望の表示装置のそれぞれのピクセルが、夫々「R」、「G」、「B」とラベル付与された赤、緑、青のサブピクセルを含む、3つのカラーサブピクセルで構成されていることを図示している。
FIG. 12 illustrates the mapping of the higher resolution source image 102 to the subpixel grid of the reduced resolution display device. This figure illustrates a subpixel grid 1210 overlaid on a portion of the original higher resolution color bitmap 102 illustrated in FIG. Circle 1220 surrounds the area of the grid corresponding to one pixel in the desired lower resolution display device. The position and size of the grid pattern is determined by the relationship between the higher resolution source bitmap image and the pixel grid of the resulting subpixel optimized image. The specific grid pattern 1210 illustrated in FIG. 12 scales from the pixel resolution of the color bitmap image 102 to a display screen resolution having about half as many pixels of the source image in both the horizontal and vertical directions. Is expressed. As an example of this enlargement / reduction, there is an example in which an image having a pixilation suitable for display on a 640 × 480 display is reduced so as to be displayed in proportion on a 320 × 240 display screen. Thus, each thick line segment of the grid pattern 1210 extends to 4 pixels of the color bitmap image 102. Dashed circle 1220 surrounds one such thick line segment that includes the source pixels of the four higher resolution sources. FIG. 13 illustrates nine thick line segments centered on circle 1220 of FIG. It is an enlarged view of (that is, all nine pixels). The pixels in the circle 1300 represent one pixel of the desired display device. As FIG. 13 reveals, each of the thick line sections of the grid pattern 1210 surrounds four higher resolution source images. FIG. 13 also shows three color sub-pixels, each pixel of the desired display device including red, green, and blue sub-pixels labeled “R”, “G”, and “B”, respectively. It shows that it is configured.

図14、15、及び16は、それぞれ、所望の表示装置に於ける、赤、緑、青のカラーサブピクセルの輝度が決定されるソース画像に於ける矩形ウインドウの位置を説明している。そうした各ソース画像ウインドウの領域は、輝度を算出するために使用されるサブピクセルに対応するソース画像の一部を中心とした、縮小画像に於ける全ピクセルの領域に対応する。   FIGS. 14, 15 and 16 illustrate the position of the rectangular window in the source image where the luminance of the red, green and blue color subpixels is determined, respectively, on the desired display device. Each such source image window region corresponds to the region of all pixels in the reduced image, centered on the portion of the source image corresponding to the subpixel used to calculate the luminance.

図14の矩形部1400は、より低解像度の表示装置の赤色サブピクセルの輝度を算出するために使用されるソース画像ウインドウの領域を囲んでいる。同様に、図15及び図16は、所望の表示装置の緑及び青色サブピクセルのそれぞれ対応するソース画像ウインドウを囲んでいる。   The rectangular portion 1400 of FIG. 14 encloses the area of the source image window that is used to calculate the luminance of the red subpixel of the lower resolution display device. Similarly, FIGS. 15 and 16 enclose source image windows corresponding to the green and blue subpixels of the desired display device, respectively.

上述したように、所定の色のサブピクセルに割り当てられた輝度は、以下の関数、又は、関数の近似によって決定される。この輝度は、全体又は部分的にサブピクセルの対応するソース画像ウインドウ内にあるソース画像の各ピクセルに於けるピクセルの色の強度と、そうした各ソース画像ピクセルよって覆われたウインドウの領域の割合との乗算に一致するように設定される。   As described above, the luminance assigned to a subpixel of a predetermined color is determined by the following function or an approximation of the function. This luminance is the intensity of the color of the pixel at each pixel of the source image that is in whole or in part in the corresponding source image window of the subpixel, and the percentage of the area of the window covered by each such source image pixel. To match the multiplication of.

図17、18、及び19において、赤、緑、青のサブピクセルの輝度は、所定のサブピクセルに対応するソース画像の一部を中心とした、ソース画像ウインドウ内に含まれた全体又は部分的なソース画像ピクセルの各色の輝度に関する関数である。これは、ウインドウ領域1700がそのサブピクセルに対応するソース画像の一部を中心とする赤色(R)サブピクセルに関して、図17に図示されている。図18のウインドウ1800は、緑色(G)サブピクセルに対して同一内容を図示しており、図19のウインドウ領域1900は、青色(B)サブピクセルに対して同一内容を図示している。   In FIGS. 17, 18, and 19, the brightness of the red, green, and blue sub-pixels is entirely or partially contained within the source image window centered around the portion of the source image that corresponds to the given sub-pixel. This is a function relating to the brightness of each color of a source image pixel. This is illustrated in FIG. 17 for a red (R) subpixel centered on the portion of the source image whose window region 1700 corresponds to that subpixel. The window 1800 in FIG. 18 illustrates the same content for the green (G) subpixel, and the window region 1900 in FIG. 19 illustrates the same content for the blue (B) subpixel.

各サブピクセルに対するソース画像ウインドウ間に於ける移動の結果として、各サブピクセルに対して得られる色値は、全体としてそのピクセルの位置に対応するというよりは、むしろ、各サブピクセル自体の位置に対応するソース画像の位置に於けるサブピクセルの対応する色を表している。その結果、所定のピクセルの異なるサブピクセルに対して異なるソース画像ウインドウを使用することによって、結果として生じる画像の空間解像度が向上する。   As a result of the movement between the source image windows for each subpixel, the color value obtained for each subpixel as a whole corresponds to the position of each subpixel rather than to the position of that pixel. It represents the corresponding color of the sub-pixel at the position of the corresponding source image. As a result, using different source image windows for different subpixels of a given pixel improves the spatial resolution of the resulting image.

図17、18、及び19に図示された本発明の実施形態では、何れのピクセルがサブピクセルのソース画像ウインドウに含まれるか、及び、そうしたピクセルが覆うウインドウの割合は、そうしたソース画像で覆われた水平及び垂直方向のスキャンラインの割合に基づいて決定される。図17では、赤色サブピクセルの色値は、個々のソース画像ピクセルに覆われた水平カバレッジライン1720及び垂直カバレッジライン1740の割合と、そうした各ピクセルの赤色の色値とを乗算した結果として決定される。これは、各色値に関して、即ち、図18の拡大/縮小された画像の緑色(G)サブピクセル、及び、水平及び垂直カバレッジライン1820及び1840のそれぞれ、並びに、図19の拡大/縮小された画像の青色(B)サブピクセル、及び、水平及び垂直カバレッジライン1920及び1940のそれぞれに関しても同様である。注目すべきは、水平カバレッジライン1720、1820、1920は、それらに対応する矩形領域の垂直方向に於ける中点の上方及び下方の垂直位置を表すことを目的としているということである。このため、カバレッジラインは、垂直ピクセル間の境界を表すソース画像に於ける位置とは完全に一致しない。同様に、垂直カバレッジライン1740は、矩形領域1700の水平方向の中点の直左及び直右の水平位置を表すことを目的としている。   In the embodiment of the invention illustrated in FIGS. 17, 18 and 19, which pixels are included in the sub-pixel source image window and the percentage of the window that such pixels cover is covered by such source image. It is determined based on the ratio of horizontal and vertical scan lines. In FIG. 17, the color value of the red sub-pixel is determined as a result of multiplying the percentage of horizontal and vertical coverage lines 1720 covered by individual source image pixels by the red color value of each such pixel. The This is the case for each color value, ie, the green (G) subpixel of the scaled image of FIG. 18, and the horizontal and vertical coverage lines 1820 and 1840, respectively, and the scaled image of FIG. The same is true for each of the blue (B) subpixels and horizontal and vertical coverage lines 1920 and 1940, respectively. It should be noted that the horizontal coverage lines 1720, 1820, 1920 are intended to represent the vertical position above and below the midpoint in the vertical direction of the corresponding rectangular area. For this reason, the coverage line does not completely coincide with the position in the source image that represents the boundary between vertical pixels. Similarly, the vertical coverage line 1740 is intended to represent the horizontal positions immediately to the left and right of the midpoint in the horizontal direction of the rectangular area 1700.

上記で定義されたカバレッジラインは、所定のサブピクセルに関連付けられた元の画像の領域が、所定の色又は形状で覆われる程度を決定するための連続関数(例えば、5ビット解像度、又は、それを越えるビット解像度を有するもの等、連続関数に相当する任意の適度に高解像度であるものを含む)の使用に関連する本発明の1つの特徴に関する実施形態を表している。連続カバレッジ関数に於いては、カバレッジ値がサンプリングではなく、むしろ、1次元、又は、それを越える次元で所定のカバレッジが開始、及び、終了する境界位置を決定し、そうした1つ又は複数の境界間、又は、そうした境界と所定のサブピクセルに関連付けられたソース画像ウインドウの境界との間の、長さ又は面積の関数としてカバレッジを計算する数学的な関数によって決定される。   The coverage line defined above is a continuous function (e.g., 5 bit resolution or it) that determines the extent to which a region of the original image associated with a given subpixel is covered with a given color or shape. Represents an embodiment relating to one aspect of the present invention relating to the use of any moderately high resolution equivalent to a continuous function, such as those having a bit resolution greater than. In a continuous coverage function, the coverage value is not a sampling, but rather determines the boundary location where a given coverage starts and ends in one or more dimensions, and one or more such boundaries Or a mathematical function that calculates coverage as a function of length or area between such boundaries and the boundaries of the source image window associated with a given subpixel.

図17、18、19、並びに、図30、31、32に図示された本発明に関する実施形態に於いて、この連続カバレッジ関数の計算は、ウインドウ内の1つ又は複数のソース画像のピクセルのそれぞれによって覆われたソース画像ウインドウ内の一つ又は複数のスキャンライン部分を決定することにより、所定のサブピクセルに対応するソース画像ウインドウ領域に存在する各ソース画像ピクセルの領域を評価することによって、加速される。所定のピクセルによって覆われたウインドウのスキャンライン全体の長さの割合は、そのピクセルに於けるサブピクセルの色値で乗算される。そうした計算結果は、サブピクセルの色値を生成するために、任意のウインドウのスキャンラインを覆う全ピクセルに対して総和される。このようにして、カラービットマップの拡大/縮小された画像の生成時に、サブピクセルの輝度を決定するために「ラインカバレッジ」型の連続カバレッジ関数を使用することが出来る。   In the embodiments of the present invention illustrated in FIGS. 17, 18, 19 and FIGS. 30, 31, 32, this continuous coverage function calculation is performed for each of one or more source image pixels in the window. Accelerating by evaluating the area of each source image pixel present in the source image window area corresponding to a given subpixel by determining one or more scanline portions in the source image window covered by Is done. The percentage of the length of the entire scan line of the window covered by a given pixel is multiplied by the color value of the subpixel at that pixel. The result of such a calculation is summed over all the pixels covering the scan line of any window to produce the subpixel color values. In this way, a “line coverage” type continuous coverage function can be used to determine the luminance of the sub-pixels when generating an enlarged / reduced image of the color bitmap.

図20、21、22は、より低解像度の表示スクリーンに於ける赤色(R)サブピクセルに関連するソース画像ウインドウ2000内の単一の水平カバレッジライン、及び、単一の垂直カバレッジラインの使用を図示している。図21に於いて、水平スキャンライン2020に関連付けられたカバレッジ値は、ブラケット(括弧)2120で覆われたピクセルの赤色の値と、ブラケット(括弧)2120によって覆われた図20の水平スキャンライン2020の1/3の部分との乗算値)+(中ブラケット2140によって覆われたピクセルの赤色の値と、ブラケット2140によって覆われた水平スキャンライン2020の2分の1の部分との乗算値)+(ブラケット2160によって覆われたピクセルの赤色の値と、ブラケット2160によって覆われた水平スキャンライン2020の6分の1の部分との乗算値)によって得られる合計である。   FIGS. 20, 21, and 22 illustrate the use of a single horizontal coverage line and a single vertical coverage line in the source image window 2000 associated with a red (R) subpixel in a lower resolution display screen. It is shown. In FIG. 21, the coverage value associated with the horizontal scan line 2020 includes the red value of the pixel covered by the bracket 2120 and the horizontal scan line 2020 of FIG. 20 covered by the bracket 2120. Of the pixel covered by the middle bracket 2140 and the half of the horizontal scan line 2020 covered by the bracket 2140) + (The multiplication value of the red value of the pixel covered by the bracket 2160 and the 1/6 portion of the horizontal scan line 2020 covered by the bracket 2160).

同様に、垂直スキャンライン2040に関連付けられたカバレッジ値は、(ブラケット2220によって覆われたピクセルの赤色の値と、ブラケット2220によって覆われた図20の垂直スキャンライン2040の2分の1の部分との乗算値)+(ブラケット2240によって覆われたピクセルの赤色の値と、ブラケット2240によって覆われた垂直スキャンライン2040の2分の1の部分との乗算値)によって得られる合計である。   Similarly, the coverage value associated with the vertical scan line 2040 is (the red value of the pixel covered by the bracket 2220 and the half of the vertical scan line 2040 of FIG. (Multiplier value)) + (the red value of the pixel covered by the bracket 2240 and the half value of the vertical scan line 2040 covered by the bracket 2240).

赤色サブピクセルに対する全カバレッジ値は、水平スキャンラインについて計算されたカバレッジ値の2分の1と、垂直スキャンラインについて計算されたカバレッジ値の2分の1との和である。   The total coverage value for the red subpixel is the sum of one half of the coverage value calculated for the horizontal scan line and one half of the coverage value calculated for the vertical scan line.

同様に、図23、24、25は、より低解像度の表示スクリーンに於ける緑色(G)サブピクセルに関連付けられたソース画像ウインドウ2300内にある単一の水平カバレッジライン、及び、単一の垂直カバレッジラインの使用を図示したものであり、図26、27、28は、より低解像度の表示スクリーンに於ける青色(B)サブピクセルに関連付けられたソース画像ウインドウ2600内にある単一の水平カバレッジライン、及び、単一の垂直カバレッジラインの使用を図示したものである。   Similarly, FIGS. 23, 24, and 25 show a single horizontal coverage line within a source image window 2300 associated with a green (G) subpixel on a lower resolution display screen and a single vertical. 26 illustrates the use of coverage lines, and FIGS. 26, 27, and 28 illustrate a single horizontal coverage within a source image window 2600 associated with a blue (B) subpixel in a lower resolution display screen. The use of lines and a single vertical coverage line is illustrated.

図29は、上記図17乃至28に関して記載された種類のラインカバレッジを使用するソースビットマップ画像から、拡大/縮小された、サブピクセル最適化された画像を得るための、アルゴリズム2900に関する高度に簡略化された擬似コード表記である。   FIG. 29 is a highly simplified algorithm 2900 for obtaining a scaled, sub-pixel optimized image from a source bitmap image using line coverage of the type described above with respect to FIGS. 17-28. Pseudo-code notation.

このアルゴリズムは、出力画像(即ち、拡大/縮小され、サブピクセル最適化された画像)の各ピクセル行に対して、ループ2901を実行する。   The algorithm performs a loop 2901 for each pixel row of the output image (ie, the scaled / sub-pixel optimized image).

このループは、現在の行に於ける各ピクセルに対して、インナーループ2902を実行する。そうした各ピクセルについて、ループ2902は、ループ2904及び関数2914を実行する。   This loop executes an inner loop 2902 for each pixel in the current row. For each such pixel, loop 2902 performs loop 2904 and function 2914.

ループ2904は、ループ2902の現在のピクセルの各サブピクセルに対して実行される。ループ2904は、例えば、図17乃至28に図示されたスキャンライン等、現在のサブピクセルのスキャンラインのそれぞれに対して実行されるインナーループ2906で構成されている。   Loop 2904 is performed for each subpixel of the current pixel of loop 2902. The loop 2904 comprises an inner loop 2906 that is executed for each of the current sub-pixel scan lines, such as the scan lines illustrated in FIGS.

ループ2906は、関数2908及びループ2910を含んでいる。関数2908は、スキャンラインとピクセル境界との各交点を計算する。通常、そうした交点計算、及び、このアルゴリズムに於けるその他の計算は、そうした演算処理に関する記憶容量及び計算要件を低減するために、例えば、6〜8ビットの精度等、限られた精度で実行される。   The loop 2906 includes a function 2908 and a loop 2910. Function 2908 calculates each intersection of the scan line and the pixel boundary. Typically, such intersection calculations, and other calculations in this algorithm, are performed with limited precision, such as 6-8 bit precision, to reduce the storage capacity and computational requirements associated with such operations. The

その後、ループ2910は、スキャンラインの両端、スキャンラインの端部、及び、ピクセル境界、又は、両ピクセル境界に於いて生じるスキャンラインの各部分に対して関数2912を実行する。関数2912は、ループ2910の現在の部分に覆われたスキャンラインの割合に、現在のサブピクセルの色に対応する部分を覆うピクセルのカラーコンポーネント値を乗算したものの倍数をサブピクセルのスキャンラインの数で除算し、ループ2904の現在のサブピクセルに関連付けられたカバレッジ値に加算する。   The loop 2910 then performs a function 2912 on each end of the scan line, the end of the scan line, and the pixel boundary, or each portion of the scan line that occurs at both pixel boundaries. Function 2912 calculates the number of subpixel scanlines by multiplying the percentage of scanlines covered by the current portion of loop 2910 by the color component value of the pixels covering the portion corresponding to the current subpixel color. Divide by and add to the coverage value associated with the current subpixel of loop 2904.

ループ2904が現在のピクセルの各サブピクセルについてサブピクセル輝度値を計算した時点で、関数2914は、それらの計算されたサブピクセル輝度値に等しい赤、緑、青のコンポーネント値を有する複合RBG値を備えた色と同様に現在のピクセルの色値を設定する。   When loop 2904 calculates a subpixel luminance value for each subpixel of the current pixel, function 2914 calculates a composite RBG value having red, green, and blue component values equal to those calculated subpixel luminance values. Sets the color value of the current pixel as well as the provided color.

本発明に係る他の実施形態に於いて、例えば、24ビット、16ビット、12ビットの色値等、異なる長さの色値を使用することが出来る。このシステムは、限られたカラーパレットで使用することが可能であるが、赤、緑、青のサブピクセルのそれぞれについて、少なくとも4ビットのばらつきを有するトゥルーカラーで最適に機能する。通常、赤色と青色に5ビットを割り当て、(緑色に対して目が敏感であるため)緑色に6ビットを割り当てる16ビットカラーは、より良好な視覚効果を提供する。   In other embodiments according to the present invention, color values of different lengths can be used, for example, 24-bit, 16-bit, and 12-bit color values. This system can be used with a limited color palette, but works optimally with true colors having at least a 4-bit variation for each of the red, green, and blue sub-pixels. Typically, a 16-bit color that assigns 5 bits to red and blue and 6 bits to green (because the eyes are sensitive to green) provides a better visual effect.

上記図17乃至28で記述された本発明に関する実施形態では、単一の水平スキャンラインと単一の垂直スキャンラインを利用しているが、本発明の該特徴に関する他の実施形態では、より多くのスキャンライン、及び/又は、水平及び垂直方向以外の方向のスキャンラインを使用しても良い。   While the embodiments of the present invention described in FIGS. 17-28 above utilize a single horizontal scan line and a single vertical scan line, other embodiments relating to this feature of the present invention have more. These scan lines and / or scan lines in directions other than the horizontal and vertical directions may be used.

図30は、サブピクセル最適化された画像の赤色(R)サブピクセルに関連付けられたカラーカバレッジ値を評価するために使用可能な、ソース画像ウインドウ3020内の2本の水平カバレッジラインと2本の垂直カバレッジラインの使用を図示している。   FIG. 30 illustrates two horizontal coverage lines and two lines in the source image window 3020 that can be used to evaluate the color coverage value associated with the red (R) subpixel of the subpixel optimized image. Illustrates the use of vertical coverage lines.

図31は、サブピクセル最適化された画像の緑色(G)サブピクセルに関連付けられたソース画像ウインドウ3120内にある2本の対角カバレッジラインの使用を図示している。   FIG. 31 illustrates the use of two diagonal coverage lines in the source image window 3120 associated with the green (G) subpixel of the subpixel optimized image.

図32は、サブピクセル最適化された画像の青色(B)サブピクセルに関連付けられたソース画像ウインドウ3220内にある2本の対角カバレッジライン、1本の水平カバレッジライン、1本の垂直カバレッジラインの使用を図示している。   FIG. 32 shows two diagonal coverage lines, one horizontal coverage line, and one vertical coverage line in the source image window 3220 associated with the blue (B) subpixel of the subpixel optimized image. The use of is illustrated.

言うまでもなく、図30乃至31の各図に図示されたカバレッジラインの各配置は、赤、緑、青のサブピクセルに使用することが可能である。   Needless to say, the arrangements of the coverage lines illustrated in FIGS. 30 to 31 can be used for red, green, and blue sub-pixels.

図33乃至38は、サブピクセルの輝度値を計算するラインカバレッジ法が、ソース画像のサイズ、及び、結果として生じるサブピクセル最適化された画像のサイズとの間に於ける、より広い範囲の異なる拡大/縮小に適用することが出来ることを図示している。例えば、多くのサンプリング技術と比較しても、ラインカバレッジ法がラインカバレッジをかなり高解像度で測定するので、このことは正しいと言える。これは、非整数比の倍率の使用時に多くの場合生じるように、サブピクセルのソースピクセルウインドウに於いて部分的にのみ存在するピクセルのカバレッジの測定が比較的上手くいくことを意味している。   FIGS. 33-38 show that the line coverage method for calculating the luminance value of the subpixel has a wider range of differences between the size of the source image and the size of the resulting subpixel optimized image. It shows that it can be applied to enlargement / reduction. For example, even if compared to many sampling techniques, this is true because the line coverage method measures line coverage at a much higher resolution. This means that the coverage of pixels that are only partially present in the subpixel source pixel window is relatively successful, as often occurs when using non-integer ratio scaling.

本発明のこの特徴に関する実施形態に於いて、7ビット解像度がラインカバレッジ値の計算に使用され、十分な結果を生んでいる。より高解像度、又は、より低解像度を使用することは可能であるが、通常、ラインカバレッジ解像度は、16(4×4)〜256(16×16)ポイントの配列で、サブピクセルのソース画像ウインドウ内のサンプリングカバレッジによってカバレッジを計測する技術に使用される、2〜4ビット/次元の解像度よりも高解像度であることが望ましい。   In an embodiment relating to this aspect of the invention, 7-bit resolution is used for the calculation of the line coverage value and produces satisfactory results. Although it is possible to use higher or lower resolutions, the line coverage resolution is typically an array of 16 (4 × 4) to 256 (16 × 16) points, with a source image window of subpixels. It is desirable that the resolution be higher than the resolution of 2 to 4 bits / dimension, which is used in the technique of measuring the coverage by the sampling coverage within.

図33は、ソース画像解像度から、水平ピクセル及び垂直ピクセルの半分を有する目的のピクセル最適化された画像へのマッピングのために、青色(B)サブピクセルに関連付けられたソース画像ウインドウ内の様々なソース画像ピクセルによる2本の水平カバレッジラインのカバレッジを図示するために、ブラケット(括弧)を使用している。図34は、そうしたサブピクセル輝度計算方法を用いて使用される2本の垂直カバレッジラインについて同一の内容を図示している。図33及び34は、ソース及び低減された画像におけるピクセル数間の整数比を図示している。   FIG. 33 shows the various in the source image window associated with the blue (B) subpixel for mapping from the source image resolution to the target pixel optimized image with half of the horizontal and vertical pixels. Brackets are used to illustrate the coverage of two horizontal coverage lines by source image pixels. FIG. 34 illustrates the same content for two vertical coverage lines used with such a subpixel luminance calculation method. Figures 33 and 34 illustrate the integer ratio between the number of pixels in the source and reduced images.

図35及び36は、低減されたサブピクセル最適化された画像がソース画像の約40%の水平及び垂直ピクセルのみを有している倍率に対して、同一ソース画像のピクセルによって、水平及び垂直スキャンラインのカバレッジをそれぞれ図示している。   FIGS. 35 and 36 show horizontal and vertical scans by pixels of the same source image for a magnification in which the reduced sub-pixel optimized image has only about 40% horizontal and vertical pixels of the source image. Each line coverage is illustrated.

図37及び38は、サブピクセル最適化された画像がソース画像の約66.66%の水平及び垂直サブピクセルを有する倍率に対して、同一内容を図示している。   FIGS. 37 and 38 illustrate the same content for a magnification where the sub-pixel optimized image has horizontal and vertical sub-pixels of approximately 66.66% of the source image.

図33乃至38に図示されたスキャンラインカバレッジ技術は、比較的少ない演算能力で、それぞれの異なる縮尺の各ソース画像に覆われた各ソース画像ウインドウの割合に関する正確な推定値を提供することが分かる。   It can be seen that the scanline coverage technique illustrated in FIGS. 33-38 provides an accurate estimate of the percentage of each source image window covered by each differently scaled source image with relatively little computing power. .

図39及び40は、「領域」タイプの連続カバレッジ関数に関する図を図示している。本発明の幾つかの実施形態に於いては、それぞれの関連するソース画像ピクセルで覆われた所定のサブピクセルのソース画像ウインドウの割合が、上述したラインカバレッジ近似ではなく、むしろ、サブピクセルのソース画像ウインドウ内に位置するそうした各ソース画像のその部分の領域の実際の計算によって算出される。そうした各ソースピクセルに対して、現在のサブピクセルの色に対応するピクセルのコンポーネント色値が決定される。次に、各サブピクセルの輝度値は、カバレッジ値の割合の倍数と、そのソース画像ウインドウ内に現れる各ソース画像ピクセルに対するサブピクセルの色値とを合計して算出される。   39 and 40 illustrate diagrams relating to “region” type continuous coverage functions. In some embodiments of the present invention, the percentage of the source image window of a given subpixel covered with each associated source image pixel is not the line coverage approximation described above, but rather the source of the subpixel. It is calculated by the actual calculation of the area of that portion of each such source image located within the image window. For each such source pixel, the component color value of the pixel corresponding to the color of the current subpixel is determined. Next, the luminance value of each sub-pixel is calculated by summing the multiple of the coverage value ratio and the sub-pixel color value for each source image pixel appearing in that source image window.

図39は、青色(B)サブピクセルに関連付けられたソース画像ウインドウ領域3900を図示している。ソースピクセル3920は、8つの他のソースピクセルの一部と同様に、ソース画像ウインドウ3900内に含まれている。ソースピクセル3920によって覆われたソース画像ウインドウ3900の割合は、全ソース画像ウインドウ4000の領域に対する図40の網掛け部4020の領域の比率を獲得することによって計算される。同様に、そこに含まれる他のソースピクセルによって覆われたソース画像ウインドウ4000の割合は、ウインドウ4000の異なる網掛け領域によって示されているように、ソース画像ウインドウの全領域に対するソース画像ウインドウ内に存在するそれらの領域の割合を獲得することによって計算される。   FIG. 39 illustrates a source image window area 3900 associated with a blue (B) subpixel. Source pixel 3920 is included within source image window 3900, as is a portion of eight other source pixels. The percentage of the source image window 3900 covered by the source pixels 3920 is calculated by obtaining the ratio of the shaded area 4020 area of FIG. 40 to the total source image window 4000 area. Similarly, the percentage of the source image window 4000 covered by other source pixels contained therein is within the source image window for the entire area of the source image window, as indicated by the different shaded areas of the window 4000. Calculated by obtaining the percentage of those regions present.

図41は、図39及び40に関して議論された種類のエリアカバレッジ関数を実行するために使用可能なアルゴリズム4100に関する高度に簡略化された擬似コード表記を提供している。   FIG. 41 provides a highly simplified pseudocode notation for an algorithm 4100 that can be used to perform an area coverage function of the type discussed with respect to FIGS.

このアルゴリズムは、生成されるサブピクセル最適化された画像に於いて各ピクセル行に対して実行されるループ4102を含んでいる。そうした各行に対して、ループ4102は、その行に於ける各ピクセルに対するインナーループ4104を実行する。   The algorithm includes a loop 4102 that is executed for each pixel row in the generated sub-pixel optimized image. For each such row, loop 4102 performs an inner loop 4104 for each pixel in that row.

このインナーループ4104は、ループ4106と関数4116で構成されている。ループ4106は、ループ4104の現在のピクセルに於ける各サブピクセルに対して実行される。このインナーループ4106は、関数4108及びループ4110とで構成されている。関数4108は、上述したように、ソース画像のどのピクセルが、サブピクセルに関連付けられたソース画像ウインドウ内に存在するかを決定する。これが実行された時点で、ループ4110は各ソース画像ピクセルに対して実行される。   This inner loop 4104 includes a loop 4106 and a function 4116. Loop 4106 is performed for each subpixel in the current pixel of loop 4104. The inner loop 4106 includes a function 4108 and a loop 4110. Function 4108 determines which pixels of the source image are in the source image window associated with the subpixel, as described above. When this is done, loop 4110 is executed for each source image pixel.

ループ4110は、関数4112及び関数4114とで構成されている。関数4112は、ループ4110の現在のソース画像ピクセルによって覆われたサブピクセルの対応するソース画像ウインドウ領域の割合を計算する。ステップ4114は、ループ4106の現在のサブピクセルに対して計算されている輝度値に、現在のソース画像ピクセルで覆われたサブピクセルのソース画像ウインドウ領域の割合の倍数と、現在のサブピクセルの色に対応するソース画像ピクセルのカラーコンポーネント値とを乗算したものを加える。   The loop 4110 includes a function 4112 and a function 4114. Function 4112 calculates the percentage of the corresponding source image window area of the subpixel covered by the current source image pixel of loop 4110. Step 4114 sets the luminance value calculated for the current subpixel of loop 4106 to a multiple of the percentage of the source image window area of the subpixel covered by the current source image pixel and the color of the current subpixel. Is multiplied by the color component value of the source image pixel corresponding to.

ループ4106が現在のピクセルに於ける各サブピクセルに対して実行された時点で、
関数4116は現在の画素の色値を、ループ4106で計算された赤、緑、青のサブピクセル輝度値に一致するRGBカラーコンポーネント値を有する色と同様に設定する。
When loop 4106 is executed for each subpixel in the current pixel,
Function 4116 sets the color value of the current pixel in the same manner as the color having RGB color component values that match the red, green, and blue subpixel luminance values calculated in loop 4106.

図42乃至53は2色サブピクセル最適化された画像に関する本発明の特徴に関する。   42-53 relate to features of the present invention relating to a two-color subpixel optimized image.

「2色」画像は、個々のピクセル色が2つの異なる色値の間で変化する画像である。一般に、これらの2つの異なる色値は黒と白であり、ソースのピクセル及びサブピクセル画像のピクセルは、黒及び白に限定された値を有しており、場合によっては、黒及び白の中間のグレースケールに限定された値を有する。しかしながら、幾つかの実施形態に於いて、2つの異なる色値によって、任意の均一な前景色及び背景色と、それらの中間色とを表現することが出来る。多くの場合、テキストの表示は前景色及び背景色を含む色で色付けされているので、多くの場合、2色画像がテキストを表現するために使用される。しかし、他の2色形状、2色ビットマップ、色づけされた多色ビットマップの一部、又は、例えばグレースケール画像のような2色出力で表現される多色ビットマップを表現するために、2色画像を使用することも可能である。例えば、3色コンポーネントの各々の平均輝度に対応するグレースケール値を有するピクセルのそれぞれを単に処理することによって、グレースケール画像として多色ソース画像を処理することが可能である。   A “two-color” image is an image in which individual pixel colors change between two different color values. In general, these two different color values are black and white, and the source pixel and sub-pixel image pixels have values limited to black and white, and in some cases between black and white The value is limited to the gray scale. However, in some embodiments, two different color values can represent any uniform foreground and background colors and their intermediate colors. In many cases, the display of text is colored with colors including foreground and background colors, so in many cases a two-color image is used to represent the text. However, to represent other two-color shapes, two-color bitmaps, portions of colored multi-color bitmaps, or multi-color bitmaps represented by two-color outputs, such as grayscale images, It is also possible to use a two-color image. For example, it is possible to process a multicolor source image as a grayscale image by simply processing each of the pixels having a grayscale value corresponding to the average luminance of each of the three color components.

そうした2色サブピクセル最適化された出力画像を使用する利点は、多くの場合、該画像が多色サブピクセル最適化された出力画像に比して、より高度な空間解像度を提供することが出来るという点にある。そうしたより高度な解像度は、2色が黒及び白、グレースケール値、又は、不透明及び透明である場合に許容されるが、これは、そうした各2色ペアの各色が、赤、緑、青の同等のコンポーネントを有しているので、各サブピクセルが、そうした2色ペアの前景及び背景の両方を他のものと同様に表現することが可能であるからである。カラーバランスを実行する必要を除いて、以下に示すように、各サブピクセルの輝度は、出力画像中の自身の領域に一致するソース画像の一部が前景色又は背景色で覆われる程度に関する関数として決定される。より小さなソースウインドウ(即ち、ピクセルのサイズよりも、むしろサブピクセルのサイズに一致するソースウインドウ)をこのように使用することによって、ソース画像のより正確な空間解像度を実現することが出来る。   The advantage of using such a two-color subpixel optimized output image can often provide a higher spatial resolution than the multicolor subpixel optimized output image. It is in that point. Such higher resolution is acceptable when the two colors are black and white, grayscale values, or opaque and transparent, which means that each color of each such two-color pair is red, green, blue. This is because each subpixel can represent both the foreground and background of such a two-color pair in the same way as the other because it has equivalent components. Except for the need to perform color balance, as shown below, the brightness of each subpixel is a function of the extent to which the portion of the source image that matches its own area in the output image is covered with the foreground or background color. As determined. By using a smaller source window (ie, a source window that matches the size of the subpixel rather than the size of the pixel) in this way, a more accurate spatial resolution of the source image can be achieved.

前景色及び背景色が黒及び白ではない場合、前景色及び背景色のそれぞれが比較的輝度の等しい赤、緑、青の値を有し、可能な限り異なった前景色及び背景色の平均輝度を有すれば、2色サブピクセル最適化画像で生成される解像度は最良となる。実際、2色サブピクセル最適化画像に関する本発明の特徴に関する幾つかの実施形態に於いては、出力画像の空間解像度を向上させるために、対応するグレースケール色に移行することで、出力の2色の一方又は両方が、対応する入力の2色から変更される。   If the foreground and background colors are not black and white, the foreground and background colors have red, green, and blue values of relatively equal brightness, and the average brightness of the different foreground and background colors as much as possible , The resolution generated by the two-color subpixel optimized image is the best. In fact, in some embodiments relating to features of the invention relating to a two-color subpixel optimized image, the output of 2 is achieved by transitioning to the corresponding grayscale color to improve the spatial resolution of the output image. One or both of the colors are changed from the two colors of the corresponding input.

2色サブピクセル最適化された出力画像のサブピクセルが前景色を表示する程度は、アルファ値、又は、不透明値によって表現されることがある。そうしたアルファ値は、サブピクセルの輝度が前景色又は背景色に於けるサブピクセルのカラーコンポーネントに対応すべき程度を示している。アルファ値「1」は、サブピクセルのカラーコンポーネント値が、前景色に於ける対応するカラーコンポーネントに等しくなることを意味している。アルファ値「0」は、サブピクセルのカラーコンポーネント値が、背景色に於ける対応するカラーコンポーネントに等しくなることを意味している。中間のアルファ値は、サブピクセルのカラーコンポーネント値が、前景色及び背景色の両方に於ける対応するカラーコンポーネントの加重された混合値となることを意味している。サブピクセル最適化ビットマップがアルファ値の観点で表現される時点で、異なる前景色及び背景色を使用する所定のパターンの2色画像を表現するために、アルファ値を使用することが出来る。フォントの表示に於いて、所定のサイズの所定の文字フォント形状のビットマップパターンは、多くの場合、異なる前景色及び背景色で表示されるので、これは一般的にフォント形状を表現するために使用される。   The degree to which the subpixels of the two-color subpixel optimized output image display the foreground color may be represented by an alpha value or an opacity value. Such an alpha value indicates the degree to which the luminance of the sub-pixel should correspond to the color component of the sub-pixel in the foreground or background color. An alpha value of “1” means that the color component value of the subpixel is equal to the corresponding color component in the foreground color. An alpha value of “0” means that the color component value of the subpixel is equal to the corresponding color component in the background color. An intermediate alpha value means that the color component value of the subpixel is a weighted blend value of the corresponding color component in both the foreground and background colors. When the sub-pixel optimized bitmap is expressed in terms of alpha values, the alpha values can be used to represent a predetermined pattern of two-color images that use different foreground and background colors. In font display, bitmap patterns of a given character font shape of a given size are often displayed with different foreground and background colors, so this is generally used to represent the font shape. used.

ビットマップ画像の2色サブピクセル最適化に関する本発明の特徴に関する幾つかの実施形態に於いて、ビットマップ画像の拡大/縮小されたサブピクセル最適化された画像は、以下の(a)〜(c)の関数として、前景又は背景2色カバレッジ値と、拡大/縮小された画像の各サブピクセルとを関連付けることによって生成される。即ち、(a)サブピクセルの領域に対応するソース画像ウインドウに於ける各ソース画像ピクセルに対する前景色又は背景色の比率、(b)そうした各ソース画像ピクセルによって覆われたそのウインドウの割合、(c)カラーアンバランスを低減するためにサブピクセルカバレッジ値を分散するカラーバランス関数、である。2色出力画像がグレースケール入力画像、又は、多色入力画像に対して生成される場合には、そのソース画像ウインドウを覆うソース画像ピクセルの全ピクセル輝度に関する関数として、個々のサブピクセル対して計算されるカバレッジ値を獲得することが出来る。幾つかの実施形態に於いては、所定のサブピクセルのソース画像ウインドウに関連付けられた所定の輝度値が他のサブピクセルに分配される程度は、輝度値がカラーアンバランスを発生させる程度に関する関数である。   In some embodiments relating to features of the present invention relating to two-color sub-pixel optimization of bitmap images, scaled sub-pixel optimized images of bitmap images are: As a function of c), it is generated by associating foreground or background two-color coverage values with each subpixel of the scaled image. (A) the ratio of the foreground or background color for each source image pixel in the source image window corresponding to the region of the subpixel; (b) the percentage of that window covered by each such source image pixel; A color balance function that distributes the sub-pixel coverage values to reduce color imbalance. If a two-color output image is generated for a grayscale input image or a multicolor input image, it is calculated for each sub-pixel as a function of the total pixel brightness of the source image pixels covering the source image window. Coverage value can be obtained. In some embodiments, the degree to which a given luminance value associated with a given subpixel's source image window is distributed to other subpixels is a function of the degree to which the luminance value causes color imbalance. It is.

図42乃至44は、ビットマップ画像のグレースケール2色画像の各サブピクセルの輝度を決定する方法に関する。図42に於いて、矩形部4200は、拡大/縮小された画像の赤色(R)サブピクセルに関連付けられるソース画像のウインドウを囲んでいる。そうした赤色(R)サブピクセルに関連付けられた輝度は、そうした各ソース画像ピクセルによって覆われたソース画像ウインドウの割合でそれぞれ乗算された、ソース画像ウインドウ4200を覆う1つ又は複数のソース画像ピクセルの全ピクセル輝度に関する関数である。そうしたカバレッジの割合を計算又は推定する任意の周知の方法を使用することが出来る。   FIGS. 42 to 44 relate to a method for determining the luminance of each sub-pixel of a grayscale two-color image of a bitmap image. In FIG. 42, a rectangular portion 4200 encloses a window of the source image that is associated with the red (R) subpixel of the enlarged / reduced image. The luminance associated with such a red (R) sub-pixel is multiplied by the percentage of the source image window covered by each such source image pixel, respectively, to the total of one or more source image pixels covering the source image window 4200. This is a function related to pixel luminance. Any known method for calculating or estimating the percentage of such coverage can be used.

図42に図示された実施形態に於いて、ソース画像ウインドウ4200は、2本の水平スキャンライン4210及び4220、及び、2本の垂直スキャンラインをそれと関連付けている。図43及び44は、緑色及び青色のサブピクセルのそれぞれに対する、ソース画像ウインドウ4300及び4400に対応するカバレッジラインを図示している。前述の通り、ソース画像ウインドウ領域がソースピクセルによって覆われた程度を推定するために、各スキャンラインに沿って所定のカバレッジが開始及び停止する境界位置を決定する数学的な関数が実行される。1つ又は複数のそうした境界の間の長さ、又は、そうした境界と所定のサブピクセルに関連付けられたソース画像ウインドウの境界との間の長さに関する関数として、カバレッジが計算される。これは、図29に於いて上述した方法と同様の方法で実行することが出来る。   In the embodiment illustrated in FIG. 42, the source image window 4200 associates two horizontal scan lines 4210 and 4220 and two vertical scan lines with it. 43 and 44 illustrate coverage lines corresponding to source image windows 4300 and 4400 for green and blue subpixels, respectively. As previously described, a mathematical function is performed that determines the boundary locations where a given coverage starts and stops along each scan line in order to estimate the extent to which the source image window area is covered by the source pixels. Coverage is calculated as a function of the length between one or more such borders, or the length between such borders and the border of the source image window associated with a given subpixel. This can be performed in a manner similar to that described above in FIG.

2色サブピクセル最適化された画像の計算時に、カラーアンバランスが発生する可能性がある。これは、2色法が前景色及び背景色、及び、ソース画像が中間色を有する場合には、前景色及び背景色との間のスペクトルに於ける色のみで構成されているものとして、ユーザに知覚される出力画像を生成しようとしているからである。しかし、ピクセルの個々の赤、緑、青のサブピクセルのカバレッジ値は、そうした各サブピクセルに於ける前景色の割合によって決定され、このことは、多くの場合、個々の出力ピクセルの色が、そうしたカラーバランスの無い状態で、所望の2色スペクトル(通常はグレースケール)とは関連性が無いことを意味している。   Color imbalance can occur when computing a two-color subpixel optimized image. This means that if the two-color method consists of foreground and background colors, and if the source image has an intermediate color, it consists only of colors in the spectrum between the foreground and background colors, This is because a perceived output image is to be generated. However, the coverage value of the individual red, green, and blue subpixels of a pixel is determined by the percentage of foreground color in each such subpixel, which often means that the color of the individual output pixel is In the absence of such color balance, it means that the desired two-color spectrum (usually gray scale) is not relevant.

例えば、グレースケール画像では、ソース画像が、サブピクセル最適化された出力画像に於ける赤及び緑のサブピクセルの間の境界に対応する位置で、全体的に白色から全体的に黒色に変化する場合、出力画像に於ける対応するピクセルは、そのサブピクセルを全体的にオンの状態に切り換える傾向のある赤色サブピクセルカバレッジ値と、そうしたサブピクセルを全体的にオフの状態に切り換える傾向のある緑色及び青色サブピクセルカバレッジ値とを有する。この例では、出力画像がグレースケール画像であるということになっているのだが、これによってピクセルに対する視認可能な赤色が生じる結果となる。   For example, in a grayscale image, the source image changes from entirely white to totally black at a location corresponding to the boundary between the red and green subpixels in the subpixel optimized output image. The corresponding pixel in the output image has a red sub-pixel coverage value that tends to switch the sub-pixel to an overall on state and a green color that tends to switch such a sub-pixel to an overall off state. And a blue sub-pixel coverage value. In this example, the output image is supposed to be a grayscale image, which results in a visible red color for the pixel.

図45乃至47は、2色ビットマップから生成されるカバレッジ値をカラーバランスするために、フォントアウトラインのラスタ化に基づいて計算されたサブピクセルカバレッジ値をカラーバランスするための従来技術で使用されている種類の従来の線形カラーバランス法を、如何にして使用することが出来るかを図示している。   45-47 are used in the prior art to color balance subpixel coverage values calculated based on font outline rasterization to color balance coverage values generated from a two-color bitmap. It illustrates how certain types of conventional linear color balance methods can be used.

図45は、RGBグリッド4600下での一組のグレースケールソース画像ピクセルを図示している。グリッド4600は、太い線の区分で囲まれた4つのピクセル領域を有する。そうした各ピクセル領域は、出力画像が表示されるサブピクセルアドレス可能スクリーンに於ける全ピクセルに関連付けられている。各ピクセル領域は、サブピクセルアドレス可能スクリーン上で関連付けられたピクセルのサブピクセルに関連付けられた3つの領域にさらに分割される。サブピクセルに関連付けられた領域4610は、赤色(R)サブピクセルに関連付けられており、サブピクセルに関連付けられた領域4612は、緑色(G)サブピクセルに関連付けられており、サブピクセルに関連付けられた領域4614は、青色(B)サブピクセルに関連付けられている。同様に、サブピクセルに関連付けられた領域4616乃至4632は、それぞれの表示スクリーンサブピクセルに関連付けられている。   FIG. 45 illustrates a set of grayscale source image pixels under the RGB grid 4600. The grid 4600 has four pixel regions surrounded by thick line segments. Each such pixel region is associated with every pixel in the subpixel addressable screen on which the output image is displayed. Each pixel region is further divided into three regions associated with subpixels of the associated pixel on the subpixel addressable screen. The region 4610 associated with the subpixel is associated with the red (R) subpixel, and the region 4612 associated with the subpixel is associated with the green (G) subpixel and associated with the subpixel. Region 4614 is associated with the blue (B) subpixel. Similarly, regions 4616-4632 associated with subpixels are associated with respective display screen subpixels.

サブピクセルに関連付けられた領域4614乃至4630は、今回の例では黒色の前景色の様々な程度に対応する、非白色輝度値を有するソース画像ピクセルによって、全体的又は部分的に覆われている。サブピクセルに関連付けられた領域4614乃至4630のそれぞれに於けるソース画像ピクセルの黒色輝度値の合計(白色を差し引いた値、又は、通常の輝度値に相当)は、図46のRGBグリッド4700に於ける対応するサブピクセル領域にマッピングされる。各サブピクセル領域4744乃至4760内の斜線領域の高さは、対応するサブピクセル領域4614乃至4630の非白色輝度値の合計によって決定される。   Regions 4614-4630 associated with sub-pixels are wholly or partially covered by source image pixels having non-white luminance values, which in this example correspond to varying degrees of black foreground color. The sum of the black luminance values of the source image pixels in each of the regions 4614 to 4630 associated with the subpixels (corresponding to a value obtained by subtracting white or a normal luminance value) is shown in the RGB grid 4700 of FIG. To the corresponding subpixel region. The height of the shaded area in each subpixel area 4744-4760 is determined by the sum of the non-white luminance values of the corresponding subpixel areas 4614-4630.

図46の最下部は、例えば、サブピクセル4750等、所定のサブピクセルに関連付けられたカバレッジ値を、その所与のサブピクセル4750を中心とする5つのサブピクセルに対して分配するために使用可能な、中央部重点対称カラーフィルタの使用を図示している。サブピクセル4750のカバレッジ値の9分の3は、サブピクセル4750自身に分配される。サブピクセル4750のカバレッジ値の9分の2は、サブピクセル4750の直左及び直右にそれぞれ位置するサブピクセル4748及び4752に分配される。サブピクセル4750の色分配を完了するために、カバレッジ値の9分の1は、それぞれ、サブピクセル4750の左側2つ目のサブピクセル、及び、右側2つ目のサブピクセルであるサブピクセル4746及び4754に分配される。   The bottom portion of FIG. 46 can be used to distribute coverage values associated with a given subpixel, eg, subpixel 4750, to five subpixels centered on that given subpixel 4750. The use of a center-weighted symmetrical color filter is illustrated. Three-ninths of the coverage value of subpixel 4750 is distributed to subpixel 4750 itself. Two-ninths of the coverage value of subpixel 4750 is distributed to subpixels 4748 and 4752 located immediately to the left and right of subpixel 4750, respectively. To complete the color distribution of subpixel 4750, one-nineth of the coverage value is subpixel 4746, which is the second subpixel on the left side of subpixel 4750, and the second subpixel on the right side, respectively. Distributed to 4754.

概して、カラーバランスは、近傍のサブピクセルの近傍圏内にある色値を割り当てる。例えば、図46に示された実施形態等、多くの実施形態に於いては、そうした割り当てが実施される近傍サブピクセルは、輝度が割り当てられているサブピクセルからピクセル一つ分の距離に過ぎないが、今回の例では、輝度が割り当てられているサブピクセルからピクセル2つ分に相当する距離内にあるものとして近傍サブピクセルが定義されている。   In general, color balance assigns color values that are in the vicinity of neighboring subpixels. In many embodiments, such as the embodiment shown in FIG. 46, the neighboring subpixel where such an assignment is performed is only one pixel away from the subpixel to which the luminance is assigned. However, in this example, the neighboring subpixel is defined as being within a distance corresponding to two pixels from the subpixel to which the luminance is assigned.

図47は、図46の中央部重点対称カラーバランスフィルタが、図46の上半分に図示されたサブピクセル4744乃至4760のそれぞれに対して計算されたカバレッジ値に、直線的に適用された場合の結果を図示している。   FIG. 47 shows a case where the center-weighted symmetric color balance filter of FIG. 46 is linearly applied to the coverage values calculated for each of the subpixels 4744 to 4760 shown in the upper half of FIG. The results are illustrated.

図47に於いては、図47の最上部に図示された各サブピクセル4744乃至4760に関連付けられたカバレッジ値は、自身のサブピクセルに対して、そして、図46に図示されているように、左側及び右側にある2つのサブピクセルに対して、同一の比率でカバレッジ値が分配されるカラーバランスフィルタを使用して分配される。図47の中央のグリッド4802は、そうした分配がサブピクセル4740乃至4762のそれぞれに対して行われる寄与分の大きさを図式化して説明している。所定のサブピクセル4744乃至4760のそれぞれに関連付けられた分配は、各サブピクセルの直下に位置する垂直コラムを中心に配置されている。   In FIG. 47, the coverage value associated with each subpixel 4744-4760 illustrated at the top of FIG. 47 is for its own subpixel and, as illustrated in FIG. The two subpixels on the left and right sides are distributed using a color balance filter in which coverage values are distributed at the same ratio. The central grid 4802 of FIG. 47 illustrates the magnitude of the contribution that such distribution is made to each of the subpixels 4740 to 4762. The distribution associated with each of the predetermined subpixels 4744 through 4760 is centered on a vertical column located directly below each subpixel.

図47の最下部に図示されたRGBサブピクセルグリッドパターン4804は、中央のパネル4802に図示された全てのカバレッジ値の分配によって行われた、全ての寄与分を合計することによって、サブピクセル4740乃至4762のそれぞれに対して計算される輝度値を図示している。この方法を完了するために、グリッド4804に於ける各ピクセルの赤、緑、青のサブピクセルの輝度値が、そうした各サブピクセルの色を特定する3つのカラーコンポーネント値として使用される。   The RGB sub-pixel grid pattern 4804 illustrated at the bottom of FIG. 47 sums all contributions made by the distribution of all coverage values illustrated in the center panel 4802 to sub-pixels 4740 through 4740. The luminance values calculated for each of 4762 are illustrated. To complete this method, the luminance values of the red, green, and blue subpixels of each pixel in grid 4804 are used as three color component values that identify the color of each such subpixel.

この線形法で拡大/縮小された画像のカラーアンバランスは低減されるが、これは空間解像度に於ける実質的な低下を代償に実行される。これは、サブピクセル最適化された出力画像に於けるサブピクセル輝度値を表す図47の最下部のRGBグリッドパターン4804における値と、出力画像のサブピクセルに対応する領域に於けるソース画像ピクセルに関する、輝度又は前景色カバレッジを表す図47の最上部に位置するRGBグリッドパターン4800に於ける値とを、比較することによって理解することが出来る。図47から判る通り、出力画像の空間解像度はソース画像の空間解像度に比して不鮮明である。   The color imbalance of images scaled with this linear method is reduced, but this is performed at the cost of a substantial reduction in spatial resolution. This relates to the values in the bottom RGB grid pattern 4804 of FIG. 47 representing the subpixel luminance values in the subpixel optimized output image and to the source image pixels in the region corresponding to the subpixels of the output image. It can be understood by comparing the values in the RGB grid pattern 4800 located at the top of FIG. 47 representing the luminance or foreground coverage. As can be seen from FIG. 47, the spatial resolution of the output image is unclear compared to the spatial resolution of the source image.

本発明は、サブピクセル最適化出力画像に関する類似のカラーバランスを提供するが、多くの場合、出力画像に関して不鮮明度をより少なくしてカラーバランスを提供する技術革新を含んでいる。これは、非線形カラーバランスフィルタリング法の使用により実行される。該非線形フィルタリングを適用する方法は、図48及び49に図示されている。   The present invention provides similar color balance for sub-pixel optimized output images, but often includes innovations that provide color balance with less blur for the output image. This is done by using a non-linear color balance filtering method. A method for applying the non-linear filtering is illustrated in FIGS.

図48のRGBグリッドパターン4900は、図46のRGBグリッドパターン4700の複写である。今回の場合も、総合輝度、又は、前景色カバレッジ、即ち、関連するサブピクセルに対応するソース画像ピクセルの値は、斜線領域の高さで表現されている。   The RGB grid pattern 4900 in FIG. 48 is a copy of the RGB grid pattern 4700 in FIG. Also in this case, the total luminance or the foreground color coverage, that is, the value of the source image pixel corresponding to the related sub-pixel is expressed by the height of the hatched area.

非線形カラーバランス法の第1段階が、図48に図示されている。前述の通り、RGBグリッドパターン4900は、太い線の区分によって4分割されており、4等分された各部分、即ち、括弧4902、4904、4906、4908は、拡大/縮小された、又は、出力された画像の全ピクセルに関連付けられている。ピクセル領域4902、4904、4906、4908のそれぞれは、生成される出力画像に於けるサブピクセルに対応するサブピクセルソース画像ウインドウにさらに分割されている。各ピクセルに対して、サブピクセルの対応するソース画像ウインドウの何れが最も低いサブピクセル輝度、又は、前景カバレッジ値を有しているのかが決定される。最小輝度/カバレッジ値に等しい輝度(又はアルファ)値は、図48の下半分に図示されたRGBグリッドパターン4910の出力画像ピクセル4912、4914、4916、4918の各サブピクセルに対して計算される輝度/アルファ値に加算される。   The first stage of the non-linear color balance method is illustrated in FIG. As described above, the RGB grid pattern 4900 is divided into four by thick line sections, and each of the four divided parts, that is, parentheses 4902, 4904, 4906, 4908 is enlarged / reduced or output. Associated with all pixels of the rendered image. Each of the pixel regions 4902, 4904, 4906, 4908 is further divided into sub-pixel source image windows corresponding to the sub-pixels in the generated output image. For each pixel, it is determined which of the corresponding source image windows of the subpixel has the lowest subpixel brightness or foreground coverage value. A luminance (or alpha) value equal to the minimum luminance / coverage value is the luminance calculated for each subpixel of the output image pixels 4912, 4914, 4916, 4918 of the RGB grid pattern 4910 illustrated in the lower half of FIG. / Added to the alpha value.

図48の上部半分に於いて、破線4920は、ピクセル領域4902の最小輝度値/アルファ値がゼロであることを示しているが、これは、そのピクセルの最初の2つのサブピクセルソース画像ウインドウが輝度値「ゼロ」を有しているからである。このように、図48に図示されたステップは、ピクセル4912の赤、緑、青のサブピクセル領域に対して輝度値/アルファ値をゼロに設定する。同様にして、ピクセル領域4904の最小輝度値は、ピクセル4904の赤色サブピクセルソース画像ウインドウ4922の値によって決定される。この最小輝度値は、同図の下半分に図示された対応するピクセル領域4914にマッピングされる。同様に、ピクセル領域4906及び4908の最小輝度値は、図48の下半分に図示されたピクセル領域4916及び4918にマッピングされる。このステップの完了後に生じる部分的に計算された輝度値/アルファ値は、図48の最下部のRGBグリッドパターン4910によって表されている。   In the upper half of FIG. 48, the dashed line 4920 indicates that the minimum luminance value / alpha value of the pixel area 4902 is zero, indicating that the first two subpixel source image windows for that pixel are This is because the luminance value is “zero”. Thus, the step illustrated in FIG. 48 sets the luminance / alpha value to zero for the red, green, and blue sub-pixel regions of pixel 4912. Similarly, the minimum luminance value of pixel area 4904 is determined by the value of red subpixel source image window 4922 for pixel 4904. This minimum luminance value is mapped to the corresponding pixel area 4914 shown in the lower half of the figure. Similarly, the minimum luminance values of pixel regions 4906 and 4908 are mapped to pixel regions 4916 and 4918 illustrated in the lower half of FIG. The partially calculated luminance / alpha value that occurs after completion of this step is represented by the bottommost RGB grid pattern 4910 in FIG.

非線形カラーバランス法の第2段階は、図49に図示されている。第2段階に関するこの例では、関連するピクセルの最小輝度値/アルファ値を超える各サブピクセルの輝度値/アルファ値の一部は、図46及び47に関して上述された種類のカラーバランス分配フィルタを利用することによって、RGBグリッドパターン4910にマッピングされている。   The second stage of the non-linear color balance method is illustrated in FIG. In this example for the second stage, a portion of the luminance value / alpha value of each sub-pixel that exceeds the minimum luminance value / alpha value of the associated pixel utilizes a color balance distribution filter of the type described above with respect to FIGS. By doing so, it is mapped to the RGB grid pattern 4910.

図49の最上部のピクセルグリッド5000は、対応するピクセルに対する最小サブピクセル輝度値/アルファ値の値(低密度の斜線で示す)が除かれた後に残存する各サブピクセルの輝度値/アルファ値(高密度の斜線で示す)の部分が表現されている点を除いて、図48の最上部のピクセルグリッド4900に対応する(そして、同一サブピクセル4740乃至4762を有する)。   The top pixel grid 5000 of FIG. 49 shows the luminance value / alpha value of each subpixel remaining after the minimum subpixel luminance value / alpha value (indicated by the low density slash) for the corresponding pixel is removed. 48 corresponds to the topmost pixel grid 4900 of FIG. 48 (and has the same subpixels 4740 to 4762), except that the portion of high density (shown with diagonal lines) is represented.

図49に於いては、高密度の斜線を有する図49の最上部に図示されたサブピクセル輝度値/カバレッジ値の超過部分のみが、図46に図示された種類のカラーバランスフィルタを使用して分配されるという点を除いて、 図49の中央に位置するサブピクセルグリッド5002は、図47の中央に位置する類似の形状のピクセルグリッド4802に対応している。   In FIG. 49, only the sub-pixel luminance value / coverage value excess portion illustrated at the top of FIG. 49 having a high density diagonal line is obtained using a color balance filter of the type illustrated in FIG. 49 except that it is distributed, the sub-pixel grid 5002 located in the center of FIG. 49 corresponds to the similarly shaped pixel grid 4802 located in the center of FIG.

同図のこの部分から判る通り、各サブピクセルに対する超過分の輝度値/アルファ値は、図46に図示された同一の比率のフィルタを使用して、そのサブピクセル自身、左側の2つのサブピクセル、及び、右側の2つのサブピクセルに分配される。図49の最下部近傍の数字5004が付与された部分は、非線形法に関するこの例に於いて、サブピクセル4740乃至4762のそれぞれに分配される輝度値/アルファ値のそうした超過分の合計を図示している。   As can be seen from this part of the figure, the excess luminance value / alpha value for each sub-pixel is calculated by using the same ratio filter shown in FIG. And to the right two sub-pixels. The portion given the number 5004 near the bottom of FIG. 49 illustrates the sum of such excess luminance / alpha values distributed to each of the sub-pixels 4740 to 4762 in this example for the non-linear method. ing.

図49の最下部に図示したように、出力画像に於ける各サブピクセルに対して使用される輝度値/アルファ値の合計を生成するために、各サブピクセルに対して計算された輝度値/アルファ値の超過分の合計は、図48に図示されたステップによって以前にそのサブピクセルに加算された最小輝度値/アルファ値に加算される。非線形カラーバランス処理を完了するために、RGBグリッドパターン4910の各サブピクセルに対して合計された輝度値/アルファ値は、それが関連付けられたピクセルの赤、緑、青のカラーコンポーネント値を決定するために使用される。そうした表示に於ける個々の各ピクセルの赤、緑、青の色値は等しくない可能性があるが、ピクセル行の5つ分程度隣接するサブピクセルの任意の近傍における赤、緑、青の色値の合計は、実質的に等しい、又は、バランスが取れているはずだ。   As shown at the bottom of FIG. 49, the luminance value / calculated for each sub-pixel to produce a sum of luminance / alpha values used for each sub-pixel in the output image. The sum of the alpha value excess is added to the minimum luminance value / alpha value previously added to that sub-pixel by the step illustrated in FIG. To complete the non-linear color balance process, the summed luminance / alpha value for each subpixel of the RGB grid pattern 4910 determines the red, green, and blue color component values of the pixel with which it is associated. Used for. The red, green, and blue color values of each individual pixel in such a display may not be equal, but the red, green, and blue colors in any neighborhood of subpixels that are adjacent by about five pixel rows The sum of values should be substantially equal or balanced.

線形及び非線形カラーバランスフィルタリング法の使用により達成された結果の比較は、図50、51、52に図示されている。   A comparison of the results achieved through the use of linear and non-linear color balance filtering methods is illustrated in FIGS.

図50は、図46のRGBグリッドパターン4700、及び、図48のRGBグリッドパターン4900に最初にマッピングされたように、元々のフィルタ処理されているソースピクセル輝度値/カバレッジ値を図示している。   FIG. 50 illustrates the original filtered source pixel luminance / coverage values as originally mapped to the RGB grid pattern 4700 of FIG. 46 and the RGB grid pattern 4900 of FIG.

図51は、図49の最下部に図示されているように、非線形フィルタリング法の結果を示している。   FIG. 51 shows the result of the non-linear filtering method as illustrated at the bottom of FIG.

図52は、図47のRGBグリッドパターン4804に図示されているように、線形フィルタリング法の結果を示している。   FIG. 52 shows the result of the linear filtering method as illustrated in the RGB grid pattern 4804 of FIG.

図51が示すように、非線形カラーバランス法の出力は、図52に示されている線形法の結果よりも、図50の輝度値/アルファ値に関する元々の空間分布によく似ている。図51の非線形法によって生成された輝度値は、かなり不鮮明度が低く、これにより、線形法で生成された出力よりもより高度で可視的な空間解像度を提供する。これは、比線形法が空間解像度をぼかす有害な結果を有するカラーバランス分配を実行しようとしており、カラーアンバランスを防止するためにそうした分配を必要とする、サブピクセル輝度値/カバレッジ値のそうした部分に対してのみ実行しようとしているからである。これは、図49の数字5004で示されるような、非線形方法を使用して各サブピクセルに分配されたサブピクセル輝度値/カバレッジ値の合計と、図47の最下部の各サブピクセルに対して図示されたクロスハッチ模様の領域全体で示されるような、線形法を使用して各サブピクセルに分配された対応する合計とを比較することで理解できる。   As FIG. 51 shows, the output of the non-linear color balance method is much more similar to the original spatial distribution for the luminance / alpha values of FIG. 50 than the result of the linear method shown in FIG. The luminance values generated by the nonlinear method of FIG. 51 are significantly less blurred, thereby providing a higher and more visible spatial resolution than the output generated by the linear method. This is the part of the sub-pixel luminance / coverage values where the ratio linear method is trying to perform a color balance distribution that has the detrimental consequence of blurring spatial resolution and requires such a distribution to prevent color imbalance. It is because it is trying to execute only for. This is the sum of the subpixel luminance / coverage values distributed to each subpixel using a non-linear method, as indicated by numeral 5004 in FIG. 49, and for each subpixel at the bottom of FIG. This can be understood by comparing the corresponding sum distributed to each sub-pixel using a linear method, as shown for the entire cross-hatched region shown.

図53は、非線形カラーバランス法を使用して、ビットマップソース画像からサブピクセル最適化された2色出力ビットマップを生成する方法の一実施例を、高度に簡略化した擬似コード記述で表したものである。   FIG. 53 illustrates one embodiment of a method for generating a sub-pixel optimized two-color output bitmap from a bitmap source image using a non-linear color balance method in a highly simplified pseudo-code description. Is.

同図に於けるアルゴリズム5300は、画像の各ピクセル行に対して実行されるループ5301で構成されている。このループは、各ピクセル行に対して、2つのサブループ5302及び5322を実行する。   The algorithm 5300 in the figure includes a loop 5301 executed for each pixel row of the image. This loop executes two sub-loops 5302 and 5322 for each pixel row.

ループ5302は、ループ5391の現在の行に於ける各ピクセルに対して実行される。そうした各ピクセルに対して、ループ5302はループ5304、関数5314、及び、ループ5316を実行する。   Loop 5302 is executed for each pixel in the current row of loop 5391. For each such pixel, loop 5302 performs loop 5304, function 5314, and loop 5316.

ループ5304は、ループ5302の現在のピクセルに於ける各サブピクセルに対して実行される。そうした各サブピクセルに対して、ループ5304は、関数5306及びループ5308を実行する。   Loop 5304 is executed for each subpixel in the current pixel of loop 5302. For each such subpixel, loop 5304 performs function 5306 and loop 5308.

関数5306は、ソース画像の何れかのピクセルが、拡大縮小された画像に於けるサブピクセルの領域に対応するソース画像のウインドウ内に位置するかを決定する。これは、図17乃至44に関して上述したものを含む、任意の周知のカバレッジ計算及び推定関数によって実行することが可能である。   Function 5306 determines whether any pixel of the source image is located within the window of the source image corresponding to the sub-pixel region in the scaled image. This can be performed by any well-known coverage calculation and estimation function, including those described above with respect to FIGS.

関数5310及び5312で構成されるループ5308は、現在のサブピクセルのソース画像ウインドウ内に全体的又は部分的に含まれる各ソース画像ピクセルに対して実行される。関数5310は、ソース画像ピクセルの領域によって覆われたソース画像ウインドウの領域の割合を計算する。関数5312は、ソース画像ピクセルによって覆われたウインドウ領域の割合の倍数と、ソース画像ピクセルの平均前景色強度との乗算を、現在のサブピクセルに対して計算された輝度値/カバレッジ値に加える。   A loop 5308 comprised of functions 5310 and 5312 is performed for each source image pixel that is wholly or partially contained within the source image window of the current subpixel. Function 5310 calculates the percentage of the area of the source image window that is covered by the area of the source image pixel. Function 5312 adds a multiple of the percentage of the window area covered by the source image pixel to the average foreground intensity of the source image pixel to the luminance / coverage value calculated for the current subpixel.

2色画像がグレースケール画像である場合には、前景色強度(上記に於いて、多くの場合、輝度、又は輝度値/カバレッジ値、と称した)は、白又は黒のそれぞれが前景色であるかに応じて、全ソース画像ピクセルのそれぞれに関する一般に輝度と称されるものか、一般に輝度と称されるものの逆数の何れかに対応することが可能である。ソース画像が多色画像である場合、関数5312の目的のために前景色強度の計算する際に、ソース画像ピクセルに対して使用可能な輝度値を決定するために、各ソース画像ピクセルのカラーコンポーネントの平均輝度値を使用することが出来る。   If the two-color image is a grayscale image, the foreground intensity (in many cases referred to above as luminance, or luminance / coverage value) is either white or black. Depending on whether it is, it can correspond either to what is commonly referred to as luminance for each of the entire source image pixels, or to the inverse of what is commonly referred to as luminance. If the source image is a multicolor image, the color component of each source image pixel is used to determine the usable luminance value for the source image pixel when calculating the foreground color intensity for the purpose of function 5312. Average luminance values can be used.

図46に図示された種類の輝度値/カバレッジ値を決定するために、ループ5304を使用することが出来る。   A loop 5304 can be used to determine the brightness / coverage value of the type illustrated in FIG.

ループ5304が現在のピクセルに於ける各サブピクセルに対して実行される時点で、関数5314は、図48の上半分に図示されているように、現在のピクセル対して計算された最小のサブピクセル輝度値/カバレッジ値を求める。   When loop 5304 is performed for each subpixel at the current pixel, function 5314 is the smallest subpixel calculated for the current pixel, as illustrated in the upper half of FIG. The luminance value / coverage value is obtained.

これが実行された時点で、関数5318及び5320で構成されるループ5316は、現在のピクセルに於ける各サブピクセルに対して実行される。   When this is done, a loop 5316 consisting of functions 5318 and 5320 is executed for each sub-pixel in the current pixel.

図48の下半分に図示されているように、関数5318は、サブピクセルに対して計算されている輝度値/アルファ値を、関数5314によって当該ピクセルに対して決定された最小のサブピクセル輝度値/カバレッジ値に設定する。   As shown in the lower half of FIG. 48, function 5318 calculates the luminance / alpha value being calculated for the sub-pixel as the minimum sub-pixel luminance value determined for that pixel by function 5314. / Set to coverage value.

図49に示されているように、関数5320は、ピクセルの最小のサブピクセル輝度値/カバレッジ値を超過する、サブピクセル輝度カバレッジ値の一部を、カラーバランス分配フィルタを使用して現在のピクセル行に於けるサブピクセル及び近傍のサブピクセルに対して計算されている輝度値/アルファ値に分配する。   As shown in FIG. 49, the function 5320 calculates a portion of the subpixel luminance coverage value that exceeds the minimum subpixel luminance value / coverage value of the pixel using the color balance distribution filter. Distribute the luminance / alpha values calculated for the subpixels in the row and the neighboring subpixels.

本発明の一実施形態に於いて、所定のサブピクセルに対して実行されたそうした分配の合計が、最大限に許容された輝度値/出力値を超える場合、サブピクセルの輝度値/アルファ値はその最大値に制限される。こうしたクリッピングによって何らかのカラーアンバランスが生じる可能性があるが、本発明者には、結果として生じるアンバランスが殆ど注目に値しないものであることが判っている。   In one embodiment of the present invention, if the sum of such distributions performed for a given subpixel exceeds the maximum allowed luminance value / output value, then the subpixel luminance value / alpha value is Limited to its maximum value. Although such clipping can cause some color imbalance, the inventor has found that the resulting imbalance is hardly noticeable.

輝度値/アルファ値が当該行の各サブピクセルに対して計算され、ループ5302が完了した時点で、ループ5322によって、関数5324が当該行の各ピクセルに対して実行される。この関数は、ピクセル色値を、ピクセルの赤、緑、青のサブピクセルのそれぞれに対して計算された輝度値/アルファ値に対応する赤、緑、青のコンポーネント値を備えた複合RGB値を有する色に等しくなるように設定する
図54は、ソース画像から生成されたサブピクセル最適化された画像が、多色サブピクセル最適化処理又は2色サブピクセル最適化処理によって生成される範囲に於けるトレードオフを、表示装置のユーザが動的に実行可能な本発明の1つの特徴を図示している。この例に於ける2色サブピクセル最適化によって、グレースケール出力画像のみを生成可能である一方で、多色サブピクセル最適化により生成された出力画像によって、妥当な色の精度で縮小カラー画像を表現可能である。しかし、場合によっては、そうしたグレースケール出力画像は、多色サブピクセル最適化によって生成された出力画像に比して、より精度の高い空間解像度を有し、特にソース画像がくっきりとした縁部を備えた白色部分及び黒色部分を有する場合には、知覚し難いカラーアンバランスを有する。
Luminance / alpha values are calculated for each sub-pixel in the row, and when loop 5302 is complete, loop 5322 performs function 5324 for each pixel in the row. This function converts the pixel color value to a composite RGB value with red, green, and blue component values corresponding to the luminance / alpha values calculated for each of the red, green, and blue subpixels of the pixel. FIG. 54 shows the range in which the subpixel optimized image generated from the source image is generated by the multicolor subpixel optimization process or the two-color subpixel optimization process. 1 illustrates one feature of the present invention that allows a display user to dynamically perform a tradeoff. The two-color subpixel optimization in this example can produce only a grayscale output image, while the output image produced by the multicolor subpixel optimization produces a reduced color image with reasonable color accuracy. It can be expressed. However, in some cases, such grayscale output images have a more accurate spatial resolution than output images generated by multicolor subpixel optimization, especially when the source image has sharp edges. When it has a white part and a black part provided, it has a color imbalance that is difficult to perceive.

拡大/縮小、及び、サブピクセル最適化されたグレースケールビットマップ5440を生成するために、例えば図42乃至53に関して上述された一例など、2色サブピクセル最適化法を使用する関数5410及び5430を利用することによって、カラービットマップ画像5400を拡大/縮小、及び、サブピクセル最適化することが出来る。拡大/縮小、及び、サブピクセル最適化されたカラービットマップ5450を生成するために、図17乃至41に関して上述された一例など、多色サブピクセル最適化法を使用するプロセス5420によって、カラービットマップ5400を拡大/縮小、及び、サブピクセル最適化することも可能である。   Functions 5410 and 5430 that use a two-color subpixel optimization method, such as the example described above with respect to FIGS. 42-53, to generate a scaled and subpixel optimized grayscale bitmap 5440. By utilizing this, the color bitmap image 5400 can be enlarged / reduced and sub-pixel optimized. A color bitmap by a process 5420 that uses a multicolor subpixel optimization method, such as the example described above with respect to FIGS. 17-41, to generate a scaled and subpixel optimized color bitmap 5450. It is also possible to scale 5400 and sub-pixel optimize.

図54に図示された本発明の実施形態によれば、表示装置のユーザは、カラービットマップ5450及びグレースケールビットマップ5440の混合を実現するために、関数5460を使用して、例えばポインティングデバイス、キーボード、又は、他の入力装置など、表示装置の制御装置を操作することが可能である。例えば、スライドバーの操作によってこれを実行することが出来る。関数5480は、グレースケールビットマップ5440及びカラービットマップ5450と、ユーザが選択したカラー/グレースケールトレードオフ情報を受け付け、ユーザが選択したカラー/グレースケールトレードオフ5460の関数として、各々の色値に重み付けをして、グレースケールビットマップ5440及びカラービットマップ5450からの対応するピクセルの色値を混合する。   According to the embodiment of the present invention illustrated in FIG. 54, a user of a display device can use a function 5460 to achieve a blend of a color bitmap 5450 and a grayscale bitmap 5440, for example a pointing device, It is possible to operate the control device of the display device such as a keyboard or other input device. For example, this can be executed by operating a slide bar. Function 5480 accepts grayscale bitmap 5440 and color bitmap 5450 and color / grayscale tradeoff information selected by the user, and sets each color value as a function of user selected color / grayscale tradeoff 5460. Weighting mixes the corresponding pixel color values from the grayscale bitmap 5440 and the color bitmap 5450.

図54に図示された種類の幾つかの実施形態に於いて、ユーザがカラー/グレースケールスペクトルの何れかの極限でトレードオフ値を選択する場合、この処理によって、選択された極限に対応するビットマップ5440又は5450を計算するだけで、演算処理を低減することが出来る。   In some embodiments of the type illustrated in FIG. 54, if the user selects a trade-off value at either limit of the color / grayscale spectrum, this process causes the bit corresponding to the selected limit. Only by calculating the map 5440 or 5450, the arithmetic processing can be reduced.

本発明の該特徴に関する利点は、カラーバランス、及び/又は、位置的精度が最重要である場合、又は、それがより容易に読み取り可能な表示を求めるためにトレードオフ選択を単純に変化させる場合に、それが最重要であるか、色に正確であれば、表示装置のユーザがそれを支持することが出来るという点にある。   The advantage with this feature of the invention is that color balance and / or positional accuracy is paramount, or if it simply changes the trade-off choice to obtain a more easily readable display In addition, if it is most important or accurate in color, the user of the display device can support it.

本発明の全ての特徴がサブピクセル最適化されたテキストを必要とする訳ではなく、そうするものの多くは、サブピクセル最適化されたフォントのフォント形状を生成する従来技術の方法を使用することが出来る。しかしながら、本発明の幾つかの特徴は、サブピクセル最適化されたフォントビットマップを生成するための改良された方法に関する。   Not all features of the present invention require sub-pixel optimized text, and many of them do use prior art methods to generate font shapes for sub-pixel optimized fonts. I can do it. However, some features of the invention relate to an improved method for generating a sub-pixel optimized font bitmap.

図55乃至97は、サブピクセル最適化されたフォントビットマップの形成及び使用に関連する本発明の特徴に関する。   FIGS. 55-97 relate to features of the present invention related to the formation and use of sub-pixel optimized font bitmaps.

図55は、フォントアウトライン5500を図示しており、この例では、タイムズローマンフォントの大文字「B」のアウトラインを図示している。このアウトラインは、それぞれが赤、青、緑のサブピクセル5506、5508、5510をそれぞれ含む個々の全ピクセル5504を複数用いて構成されるサブピクセルグリッド5502上に重ねて表示されている。   FIG. 55 illustrates a font outline 5500, which in this example illustrates the outline of a capital letter “B” in a Times Roman font. This outline is displayed on a sub-pixel grid 5502 formed by using a plurality of individual pixels 5504 each including red, blue, and green sub-pixels 5506, 5508, and 5510, respectively.

図55に図示されたフォントアウトラインは、比較的通常のテキストサイズでの表示に使用可能なアウトラインであり、本発明者のサブピクセル最適化文字フォント形状の方法が、広範囲のアプリケーションで適用可能であり、図11の最下部に図示された種類の小型スクリーン表示に限定されないことを示している。しかしながら、本発明のこの特徴が小型スクリーン表示、及び/又は、極めて小さいピクセルサイズでのフォントの表示に適用される場合、例えば、幾つかの実施形態では10ピクセル/emまたはそれ未満のサイズで、そして、他の実施形態では8ピクセル/emまたはそれ未満のサイズで、使用されるフォントを小さなサイズで表示するために最適化することが望ましい。   The font outline illustrated in FIG. 55 is an outline that can be used for display at a relatively normal text size, and the inventor's method of sub-pixel optimized character font shape can be applied to a wide range of applications. FIG. 11 shows that the present invention is not limited to the small screen display of the type shown at the bottom of FIG. However, if this feature of the present invention is applied to small screen displays and / or display of fonts with very small pixel sizes, for example, in some embodiments at a size of 10 pixels / em or less, And in other embodiments, it is desirable to optimize the font used to be displayed in a small size with a size of 8 pixels / em or less.

図56は、サブピクセルアドレス可能スクリーン上に於けるそうした小型表示のために最適化されたフォントを図示したものである。図57は、同一ビットマップを2倍のサイズで図示している。残念ながら、図56及び57に図示されたビットマップの印刷物は、全ピクセルの平均輝度を表示しており、そうしたビットマップがサブピクセルアドレス可能表示上に表示された際に可能となる、より高い解像度を獲得することが出来ていない。   FIG. 56 illustrates a font optimized for such a small display on a subpixel addressable screen. FIG. 57 shows the same bitmap in double size. Unfortunately, the bitmap prints illustrated in FIGS. 56 and 57 display the average brightness of all pixels, and the higher that is possible when such a bitmap is displayed on a subpixel addressable display. The resolution cannot be obtained.

図56及び57に図示されたフォントは、選択された個々のフォントアウトライン境界を、ピクセル境界、サブピクセル境界、及び、サブピクセル境界間の水平及び垂直次元の中間に変更するヒンティング処理によって生成されている。そうした高解像度ヒンティングは、サブピクセル表示上で最適な可読性を達成するために使用される。文字がそうした小型フォントサイズで表示される際に、文字が可能な限り鮮明であるとユーザが比較的満足感を覚えるまで、フォントデザイナーに様々なヒンティング値を用いて個々の文字のサブピクセル最適化ビットマップを見させることによって、これを実行する。そうしたフォントヒンティングの有識者が理解しているように、フォントは、そのフォントの全てのサイズのレンダリングを越えてフォントアウトラインの個々の部分の配置を命令するヒントと、特定のピクセルサイズで文字フォント形状に適用される特別ヒントを有することが出来る。図56及び57に図示されたフォントは、8ピクセル/emでのそれらの表示を最適化するようにヒンティングされており、それらの幾つかは、そうした小さなサイズでのみ適用される特定のヒントを有している。   The fonts illustrated in FIGS. 56 and 57 are generated by a hinting process that changes the selected individual font outline boundaries to the middle of the horizontal and vertical dimensions between pixel boundaries, subpixel boundaries, and subpixel boundaries. ing. Such high resolution hinting is used to achieve optimal readability on subpixel displays. When a character is displayed in such a small font size, the font designer uses various hinting values to optimize each pixel's sub-pixel until the user is relatively satisfied that the character is as clear as possible. This is done by letting you look at the quantization bitmap. As those familiar with font hinting understand, fonts have a hint that directs the placement of individual parts of the font outline beyond the rendering of all sizes of the font, and the character font shape at a particular pixel size. You can have special tips that apply to The fonts illustrated in FIGS. 56 and 57 have been hinted to optimize their display at 8 pixels / em, and some of them have specific hints that apply only at such small sizes. Have.

実際、本出願の同図に図示された、320×240ピクセル解像度のスクリーンショットに於ける殆どのフォントは、そのサイズで表示するために特別にヒンティングされた8ピクセル/emのフォントである。比較的高水準の可読性が可能となる一方で、これらのフォントによって、比較的大量のウェブテキストは小型スクリーン上に適合可能である。これらのフォントによって、ラテンアルファベットの小文字の大多数を、隣接する文字同士を隔てるスペースが在ればそれを含んで、4ピクセルコラム又はそれ未満で表示することが出来る。これらのフォントによって、大文字の大部分は5ピクセルコラム又はそれ未満で表示することが出来る。   In fact, most fonts in the 320 × 240 pixel resolution screen shot illustrated in the figure of this application are 8 pixel / em fonts that are specially hinted to display at that size. While relatively high levels of readability are possible, these fonts allow a relatively large amount of web text to fit on a small screen. These fonts allow the majority of the lowercase letters of the Latin alphabet to be displayed in 4 pixel columns or less, including any space separating adjacent characters. With these fonts, the majority of capital letters can be displayed in 5 pixel columns or less.

そうした小さなフォントの可読性は、サブピクセル最適化、又は、アンチエイリアスの何れかを使用することによって大幅に向上されるのであるが、これは、これらの技術によって、文字形状が所定のピクセルを覆う程度に関する情報が、全ピクセルレベルでの2進法表示以上の方法で表現可能であるからである。実際、サブピクセル最適化はアンチエイリアスの一種であるが、これは、従来のアンチエイリアスと同様に、サブピクセル最適化によって、フォント形状により部分的に覆われたピクセルが、そうしたカバレッジの程度に関する関数に比例する色値を有するからである。   The readability of such small fonts is greatly improved by using either sub-pixel optimization or anti-aliasing, which is related to the extent to which the character shape covers a given pixel by these techniques. This is because the information can be expressed by a method more than binary display at all pixel levels. In fact, sub-pixel optimization is a type of anti-aliasing, which, like traditional anti-aliasing, means that pixels that are partially covered by the font shape due to sub-pixel optimization are proportional to the function of such coverage. This is because it has color values to

図58及び59は、本発明によって生成されたサブピクセル最適化ビットマップを、フォントアウトライン、及び/又は、フォントビットマップとして表現することが可能であるということを図示している。フォントアウトライン記述5802は、好ましくは、文字アウトラインの境界を1つ又は複数の異なるフォントサイズで最適に配置するように設計されたヒンティング情報と共に、所定のフォントの1つ又は複数の文字の形状に関する数学的幾何学的記述を含んでいる。これらのフォントアウトラインは、例えばここで議論されたような、サブピクセルアドレス可能表示上で最適にレンダリングされるように設計され、及び/又は、サブピクセルアドレス可能表示上で表示するために最適化されているヒンティングを有するものであっても良い。   58 and 59 illustrate that the sub-pixel optimized bitmap generated by the present invention can be represented as a font outline and / or a font bitmap. The font outline description 5802 preferably relates to the shape of one or more characters of a given font, along with hinting information designed to optimally position the boundaries of the character outline with one or more different font sizes. Includes a mathematical geometric description. These font outlines are designed to be optimally rendered on a subpixel addressable display, eg, as discussed herein, and / or optimized for display on a subpixel addressable display. It may have a hinting.

以下に記述されるように、フォントレンダラ5806をそうしたアウトラインからサブピクセル最適化ビットマップ5804を生成するために使用することが出来る。   A font renderer 5806 can be used to generate a subpixel optimized bitmap 5804 from such an outline, as described below.

本発明の幾つかの実施形態に於いて、図58に図示されているように、コンピュータ5808、及び/又は、そのコンピュータ上で実行するアプリケーションは、フォントサーバ5812からコンピュータネットワーク5814を介してアクセスされたフォントビットマップ又はフォントアウトラインを使用して、テキストを表示する。他の実施形態に於いて、図59に図示されているように、コンピュータ5900、及び/又は、そのコンピュータ上で実行されるアプリケーション5902は、それらの中に保存されたテキストをレンダリングするために必要なフォントビットマップ5804を有している。そうしたコンピュータ、及び/又は、アプリケーションは、フォントビットマップのみを保持可能であるか、又は、それらは拡大/縮小可能なフォントアウトライン5802を保存し、異なるサイズで随時フォントビットマップ5804をレンダリングすることが出来る。   In some embodiments of the invention, as illustrated in FIG. 58, a computer 5808 and / or an application running on the computer is accessed from a font server 5812 via a computer network 5814. Display text using a font bitmap or font outline. In other embodiments, as illustrated in FIG. 59, a computer 5900 and / or an application 5902 running on that computer is required to render the text stored therein. A font bitmap 5804. Such computers and / or applications can only hold font bitmaps, or they can store scaleable font outlines 5802 and render font bitmaps 5804 at different sizes from time to time. I can do it.

フォントビットマップのみを保存する利点は、コンピュータ5900上にフォントアウトライン及びフォントレンダラを保存する必要性がなくなる点にある。また、それによりフォントレンダリングに関わる演算も必要性なくなる。さらに、多くのフォント業者は、フォントビットマップが比較的自由にインターネット上で使用可能になり、その後フォントアウトラインも使用可能になることをさらに望んでいる。   The advantage of saving only the font bitmap is that the need to save the font outline and font renderer on the computer 5900 is eliminated. This also eliminates the need for operations related to font rendering. In addition, many font vendors further want font bitmaps to be relatively freely available on the Internet, and then font outlines.

フォントアウトラインを保存する利点は、ユーザが各種サイズでフォントをレンダリングすることに関心を持っている場合、全ての異なるサイズの文字に対してフォントビットマップを保存することに比して、フォントレンダラに必要なコードを保存することと、拡大/縮小可能なフォントアウトライン記述を保存することの方が、実際には効率的であるという点にある。   The advantage of saving font outlines is that if the user is interested in rendering fonts at various sizes, the font renderer is more efficient than saving font bitmaps for all different size characters. Saving the necessary code and saving the font outline description that can be enlarged / reduced are actually more efficient.

図58に図示されているように、フォントサーバからフォントを受信する利点は、それによって、クライアントコンピュータ5808が、例えば図58に表現されているように、大容量のフォントライブラリを保存する必要なく、随時そうしたフォントをダウンロードすることによって、多数の異なるフォント及びサイズの任意のもので、テキストを表現することが可能であるという点にある。クライアントコンピュータ5808は、文字列を表示しようとする度にネットワーク5814を介して通信する必要がないように、妥当な数の文字フォントビットマップをキャッシュすることが望ましい。   As illustrated in FIG. 58, the advantage of receiving fonts from a font server is that the client computer 5808 does not need to store a large font library, for example, as depicted in FIG. By downloading such fonts from time to time, it is possible to represent text in any of a number of different fonts and sizes. The client computer 5808 preferably caches a reasonable number of character font bitmaps so that it does not need to communicate over the network 5814 each time it tries to display a character string.

図60は、サブピクセル最適化フォントビットマップの生成に関する本発明の特徴に関する幾つかの実施形態で使用されたアルゴリズム600の高度に簡略化された擬似コード記述である。このアルゴリズムは、図48及び49に関して上述された種類の非線形カラーバランスを使用している。そうしたサブピクセル最適化アルゴリズムは、テキスト文字の表示に使用する際に特に最適であるが、これは、全ピクセル境界を有するテキストアウトライン境界の配置が、ヒンティングの使用のために、ラスタ化されたフォント形状に於いて極めて一般的であるからである。   FIG. 60 is a highly simplified pseudocode description of an algorithm 600 used in some embodiments relating to features of the present invention relating to generation of a subpixel optimized font bitmap. This algorithm uses a non-linear color balance of the type described above with respect to FIGS. Such a sub-pixel optimization algorithm is particularly optimal when used to display text characters, because the placement of text outline boundaries with full pixel boundaries has been rasterized for the use of hinting. This is because it is very common in font shapes.

図60のアルゴリズム6000は、所定のピクセル解像度での個々の文字フォント形状のラスタ化に於いて、各ピクセル行に対して実行されるループ6002を含んでいる。このループ6002は、各ピクセル行に対して順次実行される3つのサブループ6004、6008、6020で構成されている。   The algorithm 6000 of FIG. 60 includes a loop 6002 that is executed for each pixel row in rasterizing individual character font shapes at a predetermined pixel resolution. The loop 6002 includes three sub-loops 6004, 6008, and 6020 that are sequentially executed for each pixel row.

ループ6004は、ループ6002の現在の繰り返しが実行されているピクセル行に於ける各サブピクセルに対して実行される。そうした各サブピクセルに対して、ループ6004は、画像が生成されている文字フォント形状によって覆われるサブピクセルの領域の割合に関する関数として、そうした各サブピクセルに対するカバレッジ値を決定する、関数6006を実行する。   Loop 6004 is executed for each subpixel in the pixel row for which the current iteration of loop 6002 is being performed. For each such subpixel, the loop 6004 performs a function 6006 that determines the coverage value for each such subpixel as a function of the percentage of the subpixel area covered by the character font shape from which the image is being generated. .

図61乃至90は、図60のステップ6006における各サブピクセルのカバレッジ値を決定するために使用可能な方法を議論するために使用される。   61-90 are used to discuss methods that can be used to determine the coverage value for each sub-pixel in step 6006 of FIG.

図61、62、63に示されているように、そうしたカバレッジ値が所定のピクセル5504に対して計算される、文字フォント形状の画像に於ける領域は、赤、緑、青のサブピクセル5506、5508、5510によってそれぞれ表示される画像の領域に対応している。これは、上記図14乃至16に於いて示されているように、通常、各サブピクセルに対応するソース画像ウインドウがより大きいサブピクセル最適化された多色画像の場合とは異なっている。図60の方法で使用されたソース画像ウインドウは、図42乃至44に関して上述された2色ビットマップに使用されたソース画像ウインドウの領域と同一サイズを有する。   As shown in FIGS. 61, 62, 63, the area in the character font shape image for which such coverage value is calculated for a given pixel 5504 is the red, green, blue subpixel 5506, 5508 and 5510 correspond to image areas respectively displayed. This is different from the case of a multi-color image that is typically sub-pixel optimized, as shown in FIGS. 14-16 above, where the source image window corresponding to each sub-pixel is typically larger. The source image window used in the method of FIG. 60 has the same size as the area of the source image window used for the two-color bitmap described above with respect to FIGS.

そうしたより高い解像度のソース画像ウインドウを使用可能であるのは、殆どのフォントアウトライン記述によって記述された文字フォントの形状は、前景色(殆どの場合、アルファ値「1」で表現される)に関連していると見なされるフォントアウトラインと、背景色(殆どの場合、アルファ値「0」で表現される)に関連している画像の全ての他部分とに覆われた領域を備えた2色画像であるからである。   Such higher resolution source image windows can be used because the shape of the character font described by most font outline descriptions is related to the foreground color (mostly represented by an alpha value of “1”). A two-color image with a region covered by a font outline that is considered to be and a background color (mostly represented by an alpha value of “0”) and all other parts of the image Because.

図60の関数6006に於けるカバレッジ値の計算は、図55に図示されたグリッド5502のサブピクセルの解像度と同一の空間解像度を有するピクセル配列に関連して、文字フォントアウトラインをラスタ化可能な任意の従来技術の方法を使用して実行することが出来る。   The calculation of the coverage value in function 6006 of FIG. 60 is an arbitrary that can rasterize a character font outline in relation to a pixel array having the same spatial resolution as the sub-pixel resolution of grid 5502 illustrated in FIG. Can be implemented using the prior art methods.

図64乃至67は、フォント形状6402によって覆われたラスタ化グリッドに於けるユニットの割合を計算するために使用されている従来の方法の幾つかを図示している。この従来技術に於いて、ラスタ化ユニット6400は、通常、出力画像に於ける全ピクセルに対応している。図60の方法に於いては、それは出力画像のサブピクセルに対応している。   FIGS. 64 through 67 illustrate some of the conventional methods used to calculate the percentage of units in the rasterized grid covered by the font shape 6402. In this prior art, the rasterization unit 6400 typically corresponds to all pixels in the output image. In the method of FIG. 60, it corresponds to a subpixel of the output image.

図64は、フォント形状6402によって覆われたユニットの領域を正確に計算するための数学的技術を使用するラスタ化ユニット6400のカバレッジ値を決定するための一方法を図示している。これは比較的コンピュータの費用がかかるので、かつて殆ど使用されたことはない。   FIG. 64 illustrates one method for determining the coverage value of a rasterization unit 6400 that uses a mathematical technique to accurately calculate the area of the unit covered by the font shape 6402. This has been relatively rarely used because it is relatively computationally expensive.

実質的によりコンピュータを効果的に使用出来る方法は図65に記載されており、この方法は、フォント形状の境界に関する区分的線形近似6504を使用することによって、フォント形状6402で覆われたラスタ化ユニット6400の割合を計算する。   A substantially more efficient use of the computer is described in FIG. 65, which uses a piecewise linear approximation 6504 for the boundary of the font shape to render the rasterization unit covered by the font shape 6402. A ratio of 6400 is calculated.

図66は、実質的により制度の低い結果を生み出しているが、さらにコンピュータを効果的に使用できる方法を図示している。この方法により、サンプルポイント6600一式がどの程度の割合でフォント形状6402内に収まるかを決定することによって、ラスタ化ユニット6400のカバレッジ値の割合が決定される。   FIG. 66 illustrates how a computer can be used more effectively, while producing substantially lower institutional results. In this way, the percentage of coverage values of the rasterization unit 6400 is determined by determining how much the set of sample points 6600 fits within the font shape 6402.

図67は、図66の方法と同一の、比較的低度の演算処理に対してより正確な結果を提供するカバレッジ値を決定する方法を図示している。それは、フォント形状6402によって覆われた多数のスキャンライン6700及び6702の平均的な割合に関する関数として、ラスタ化ユニットのカバレッジを決定する。   FIG. 67 illustrates a method for determining a coverage value that provides a more accurate result for a relatively low degree of computation, the same as the method of FIG. It determines the coverage of the rasterization unit as a function of the average percentage of the number of scanlines 6700 and 6702 covered by the font shape 6402.

図68乃至87は、ラスタ化ユニットのカバレッジ値を計算する、コンピュータを極めて効果的に使用可能な方法を図示しており、該方法は、例えば同一量の演算処理に対して図66に図示された方法など、サンプリング法に比して一般的に良い結果を生む。   FIGS. 68-87 illustrate a computer-efficient method of calculating the rasterization unit coverage value, which is illustrated in FIG. 66 for the same amount of computation, for example. In general, it produces better results than sampling methods.

この方法に関する一実施形態は、本発明の発明者の一人、サンポ・ジェイ・カーシラの名義で出願された米国特許出願に於いて、より詳細に記載されている。この米国特許出願は、出願番号09/363,513である。該米国特許出願は、1999年7月29日に出願され、名称は「Systems For Rapidly Performing Scan Conversion With Anti−Aliasing Upon Outline Fonts And Other Graphic Elements」である。この出願は、2002年8月20日付けで、米国特許第6,437,793号として特許が発行された。また、この出願は、PCT出願「PCT/US00/21559」で公開された発明の開示を有している。この出願及び該出願から取得された特許は、それらの全文を参照することにより本書に組み込まれる。   One embodiment of this method is described in more detail in a US patent application filed in the name of one of the inventors of the present invention, Sampo J. Carsila. This US patent application is Ser. No. 09 / 363,513. The United States patent application was filed on July 29, 1999 and is entitled “Systems For Rapidly Performing Scan Conversion With Anti-Aliasing Up Up Fonts And Other Graphic Elements”. This application was issued on August 20, 2002 as US Pat. No. 6,437,793. This application also has the disclosure of the invention published in the PCT application “PCT / US00 / 21559”. This application and the patents obtained from that application are incorporated herein by reference in their entirety.

図68乃至87の方法に於いて、ラスタ化ユニットに対するカバレッジ値は、フォントアウトラインの形状6402によって覆われる2本のスキャンライン、即ち、水平スキャンライン6804又は垂直スキャンライン6802の1本の割合によって決定される。カバレッジ値がラスタ化ユニットに対するカバレッジ値として使用されるスキャンラインは、より中間的なカバレッジ値を有するスキャンラインである。例えば、水平及び垂直スキャンラインのカバレッジが0〜126の値の範囲で計算される実施形態に於いて、選択されるスキャンラインは、50%のカバレッジを示す、値が63に最も近いスキャンラインである。   In the method of FIGS. 68-87, the coverage value for the rasterization unit is determined by the ratio of two scan lines covered by the font outline shape 6402, ie one of the horizontal scan lines 6804 or the vertical scan lines 6802. Is done. The scan line whose coverage value is used as the coverage value for the rasterization unit is a scan line with a more intermediate coverage value. For example, in embodiments where horizontal and vertical scan line coverage is calculated in the range of values from 0 to 126, the selected scan line is the scan line whose value is closest to 63, indicating 50% coverage. is there.

図68乃至71に於いて、ラスタ化ユニット6400のカバレッジの割合を表すために使用されるのは、垂直スキャンライン6802のカバレッジの割合である。図72乃至75に於いて、最も中間に近い値を有するのは水平スキャンライン6804であり、それ故、それは全ラスタ化ユニットに関する実際のカバレッジの割合を表現するのに使用されるかバレー時の割合を有している。   In FIGS. 68-71, it is the percentage of coverage of the vertical scan line 6802 that is used to represent the percentage of coverage of the rasterization unit 6400. In FIGS. 72-75, it is the horizontal scanline 6804 that has the closest value in the middle, so it can be used to represent the percentage of actual coverage for all rasterized units or at valley time. Have a proportion.

図76乃至87の残り全てに於いて、より中間に近いカバレッジ値を有するスキャンラインのカバレッジ値は、通常、全ラスタ化ユニットに対する実際のカバレッジ値に非常に近く、それは、通常、全ラスタ化ユニットに関する実際のカバレッジ値から25%以上は決して変化しないということがわかる。   In all of the remainder of FIGS. 76-87, the coverage value of a scanline with a coverage value closer to the middle is usually very close to the actual coverage value for the entire rasterization unit, which is usually the entire rasterization unit. It can be seen from the actual coverage value for that that it never changes more than 25%.

図88乃至90は、それらのラインカバレッジ値がより多くの中間カバレッジ値を有する関数として、それらの関連するラスタ化ユニットに関する推定されたカバレッジ値に対して、個々のスキャンラインに関するカバレッジ値の寄与を重み付けする方法に従って使用可能な、スキャンラインの他の組み合わせを示している。そうした方法に於いて、全ラスタ化ユニットに対して計算されたカバレッジ値は、各スキャンラインのカバレッジ値の合計と、そのカバレッジラインの中間とを乗算し、各スキャンラインの中間の合計で除算したものに等しく設定することが出来る。この計算では、スキャンラインの中間は、スキャンラインの真ん中の取り得る割合のカバレッジ値から、真ん中の割合のカバレッジ値とスキャンラインの実際の割合のカバレッジ値との差の絶対値を減算したものに等しい。   FIGS. 88-90 show the contribution of coverage values for individual scanlines to estimated coverage values for their associated rasterization units as a function of their line coverage values having more intermediate coverage values. Fig. 5 shows another combination of scan lines that can be used according to the weighting method. In such a way, the coverage values calculated for all rasterization units are multiplied by the sum of the coverage values for each scanline and the middle of that coverage line and divided by the middle sum of each scanline. Can be set equal to the thing. In this calculation, the middle of the scanline is calculated by subtracting the absolute value of the difference between the coverage value of the middle percentage of the scanline and the coverage value of the middle percentage of the scanline and the actual percentage of the scanline. equal.

図91は、ピクセル5504の行9100の赤、緑、青色のサブピクセル5506、5508、5510のそれぞれに対してマッピングされた、仮想フォントアウトライン9102を図示している。   FIG. 91 illustrates a virtual font outline 9102 that is mapped to each of the red, green, and blue subpixels 5506, 5508, and 5510 in row 9100 of pixel 5504.

図92は、行9100におけるサブピクセルのそれぞれに対して計算されている、対応するカバレッジ値9202を図示している。   FIG. 92 illustrates a corresponding coverage value 9202 that has been calculated for each of the subpixels in row 9100.

図93は、個々のサブピクセルに対して決定されたカバレッジ値が、線形カラーバランス法を使用して、どのように分配することが可能かを図示している。ビットマップソース画像のサブピクセル最適化表示というよりは、フォントアウトラインのサブピクセル最適化表示に適応されている点を除いて、該線形カラーバランスは、図46に関して上述したものと同一である。   FIG. 93 illustrates how coverage values determined for individual subpixels can be distributed using a linear color balance method. The linear color balance is the same as described above with respect to FIG. 46, except that it is adapted for subpixel optimized display of font outlines rather than subpixel optimized display of bitmap source images.

ここで再び図60を簡単に参照すると、同図のステップ6006が1行の各サブピクセルに対するカバレッジ値を計算又は推定した時点で、図92に示されているように、ループ6008がその行における各ピクセルに対して実行される。このループ色は、1行のサブピクセルに対して計算されたカバレッジ値のバランスをとる。それは、図93に図示され、図46及び47に関して上述された種類の線形カラーバランスルーチンを使用しない。その代わりに、それは、図48乃至53に関して上述された技術に類似した非線形カラーバランス技術を使用することによって、より高度に知覚可能な空間解像度を達成する。   Referring now briefly to FIG. 60, when step 6006 of FIG. 60 calculates or estimates the coverage value for each subpixel in a row, loop 6008 is in that row, as shown in FIG. Performed for each pixel. This loop color balances the coverage values calculated for a row of subpixels. It does not use a linear color balance routine of the kind illustrated in FIG. 93 and described above with respect to FIGS. Instead, it achieves a more highly perceptible spatial resolution by using a non-linear color balance technique similar to that described above with respect to FIGS.

ループ6008は、そうした各ピクセルに対して、2つの関数6010及び6012と、ループ6014を実行する。   Loop 6008 performs two functions 6010 and 6012 and loop 6014 for each such pixel.

関数6010は、現在のピクセルのサブピクセルがそのサブピクセルに対して計算された最小カバレッジ値を有していることを求める。次に、ステップ6012は、この最小カバレッジ値を、現在のピクセルの各サブピクセルに対して計算されている、暫定的なアルファ地、又は、不透明値に加算する。これは、図48に図示された関数に類似している。   Function 6010 determines that the subpixel of the current pixel has the minimum coverage value calculated for that subpixel. Step 6012 then adds this minimum coverage value to the temporary alpha or opacity value being calculated for each subpixel of the current pixel. This is similar to the function illustrated in FIG.

次に、ループ6014は、現在のピクセルの各サブピクセルに対して関数6016及び6018を実行する。関数6016は、ループ6014の現在のサブピクセルに対して、サブピクセルが一部を成すピクセルに対して求められた最小カバレッジ値を超える、それに対して計算されたカバレッジ値の超過分を決定する。次に、関数6018は、この超過値を、現在のピクセル行に於ける現在のサブピクセルと、その左側の2つのサブピクセルと、その右側の2つのサブピクセルに対して計算されているサブピクセルアルファ値に分配する。この関数は、図49に関して上述された関数に対応する。   Next, loop 6014 performs functions 6016 and 6018 for each subpixel of the current pixel. Function 6016 determines, for the current subpixel of loop 6014, an excess of the calculated coverage value that exceeds the minimum coverage value determined for the pixel of which the subpixel is a part. Next, function 6018 computes this excess value for the current subpixel in the current pixel row, the two subpixels to the left, and the subpixel being calculated for the two subpixels to the right. Distribute to alpha value. This function corresponds to the function described above with respect to FIG.

図94及び95は、本発明の一実施形態に於いて使用される、2つの異なるカラーバランス分配フィルタを図示している。この実施形態に於いて、図94に図示された非対称中央部重点カラーバランスフィルタが、赤色及び緑色のサブピクセルに関連付けられたカバレッジ値を分配するために使用される。一方、図95に図示された非対称カラーバランスフィルタは、青色のサブピクセルに関連付けられたカバレッジ値を分配するために使用される。それ故、本発明のこの実施形態は、ある色に対して、他の色に対する分配フィルタとは形状が異なる分配フィルタを使用している点で、図49に関して上述された処理とは異なっている。   94 and 95 illustrate two different color balance distribution filters used in one embodiment of the present invention. In this embodiment, the asymmetric center-weighted color balance filter illustrated in FIG. 94 is used to distribute the coverage values associated with the red and green subpixels. On the other hand, the asymmetric color balance filter illustrated in FIG. 95 is used to distribute the coverage value associated with the blue sub-pixel. Therefore, this embodiment of the present invention differs from the process described above with respect to FIG. 49 in that it uses a distribution filter that differs in shape from one for other colors. .

本出願の発明者の一人は、人間の目では青色に比して緑色を知覚し易いので、異なる色のサブピクセルに関連するカラーバランスカバレッジ値は、そうした異なる分配フィルタを使用するはずだということを発見した。非線形カラーバランス(2色画像に関する非線形カラーバランスを含む)に関連する本発明の異なる実施形態に於いて、異なるカラーバランスフィルタを、各異なるサブピクセル色に対して使用することが可能な、同一カラーバランスフィルタを、そうした色のすべてに対して使用することが可能であり、対称カラーバランスフィルタ、又は、非対称カラーバランスフィルタの何れかを使用することが出来る。   One of the inventors of this application is that the human eye is more likely to perceive green than blue, so color balance coverage values associated with different color sub-pixels should use such different distribution filters. I found In different embodiments of the invention relating to non-linear color balance (including non-linear color balance for two-color images), the same color that can use different color balance filters for each different sub-pixel color A balance filter can be used for all such colors, and either a symmetric color balance filter or an asymmetric color balance filter can be used.

図94及び95に図示された特定のカラーバランスフィルタは、0〜126の尺度で計算されるカバレッジ値を用いて使用するために設計されている。0〜126の値を有する所定の計算されたカバレッジ値は、テーブルの左側にある関連するカバレッジ値が、それ自身のカバレッジ値に最も近い、図94及び95のテーブルの右側にある、5つの分配値から成る分配値一式に関連付けられている。例えば、所定の赤色又は青色のサブピクセルに対して計算されたカバレッジ値が126である場合、所定のサブピクセルの左側2つ、及び、右側2つのサブピクセルに対して計算されているアルファ値に「1」加算され、所定のサブピクセルの左側1つ、及び、右側1つにあるサブピクセルに対して計算されているアルファ値に「3」加算され、所定のサブピクセル自体に対して計算されているアルファ値に「4」加算される。この特定の実施形態では、アルファ値は0〜12のスケールで計算される。   The particular color balance filter illustrated in FIGS. 94 and 95 is designed for use with coverage values calculated on a scale of 0-126. A given calculated coverage value having a value between 0 and 126 has five distributions on the right side of the table of FIGS. 94 and 95, with the associated coverage value on the left side of the table being closest to its own coverage value. Associated with a set of distribution values consisting of values. For example, if the coverage value calculated for a given red or blue subpixel is 126, the alpha value calculated for the two left and two right subpixels of the given subpixel "1" is added, and "3" is added to the alpha value calculated for the left sub-pixel and the right sub-pixel of the given sub-pixel and calculated for the given sub-pixel itself. “4” is added to the current alpha value. In this particular embodiment, the alpha value is calculated on a scale of 0-12.

図94及び95の最後の行に図示されたカラーバランス分配の相対的なサイズは、所望の分配比率をより正確に反映している。これは、これらの最後の行のそれぞれに於いて分配されたより大きな値が、最後の行のそれぞれの上方に位置する行で見られるよりも、大きな数値の解像度を許容するからである。   The relative size of the color balance distribution illustrated in the last row of FIGS. 94 and 95 more accurately reflects the desired distribution ratio. This is because the larger value distributed in each of these last rows allows a larger numerical resolution than is seen in the rows located above each of the last rows.

当然のことながら、バランスがとられているカバレッジ値又は輝度値を記述するために、より高い数値精度を使用する幾つかの他の実施形態において、広範囲の輝度で使用されるバランス分配は、図94及び95の最後の行に於いて反映されたそれらの比率にむしろ近い、異なるサブピクセルへの寄与間の比率を有する。このことが特に当てはまるのは、図94、及び/又は、図95に図示された一般的な種類のフィルタが、図48乃至52に関して上述されているように、画像の2色サブピクセル最適化に関するカラーバランスに使用される場合である。これは、ビットマップ画像に関するそうした2色サブピクセル最適化に於いて、サブピクセル最適化されているビットマップに於いて使用されるものに比して、低い解像度で出力画像の輝度を算出することが、一般的に望ましくないからである。   Of course, in some other embodiments that use higher numerical accuracy to describe the coverage or luminance values that are balanced, the balance distribution used in a wide range of luminance is It has a ratio between the contributions to the different subpixels, rather close to those ratios reflected in the last row of 94 and 95. This is particularly true for the general type of filter illustrated in FIGS. 94 and / or 95, as described above with respect to FIGS. 48-52, for two-color sub-pixel optimization of an image. This is the case when used for color balance. This calculates the brightness of the output image at a lower resolution in such a two-color subpixel optimization for a bitmap image than that used in a subpixel optimized bitmap. This is because it is generally undesirable.

図60のループ6008によって、ステップ6018が1行の各ピクセルの各サブピクセルに対して実行された時点で、そうした各ピクセルは、その3つのサブピクセルのそれぞれに対して計算された別々のアルファ値を有し、そうした各アルファ値は13の不透明度レベルの内、1つを有する。このことは、各ピクセルが異なる2197の取り得る結合アルファ値の内、一つ(即ち、13の2乗)を有することが可能であることを意味する。本発明の他の実施形態に於いては、より高い又はより低い解像度を有するアルファ値を使用することが出来る。   When step 6018 is performed for each subpixel of each pixel in a row by loop 6008 of FIG. 60, each such pixel has a separate alpha value calculated for each of its three subpixels. Each such alpha value has one of 13 opacity levels. This means that each pixel can have one (ie 13 squared) of the different 2197 possible combined alpha values. In other embodiments of the present invention, alpha values with higher or lower resolution can be used.

本発明の多くの実施形態に於いて、特に、制限された演算能力を有するコンピュータ上に於いて、又は、フォントビットマップを保存又はダウンロードするために必要な回線容量又は記憶容量を低減することが望ましいシステムに於いて実行するように設計された実施形態に於いては、そうしたカラーバランス後に取り得る異なるサブピクセルアルファ値の2197の組み合わせである比較的大きな色空間から、より小さな色空間にマッピングすることが好ましい。   In many embodiments of the invention, particularly on computers with limited computing power, or to reduce the line or storage capacity required to store or download font bitmaps. In an embodiment designed to perform in the desired system, mapping from a relatively large color space that is a combination of 2197 different subpixel alpha values that can be taken after such color balance to a smaller color space. It is preferable.

図60に於ける本発明の実施形態は、ループ6020に於けるそうしたマッピングを実行する。ループ6008が現在の行に於ける各ピクセルに対して実行された時点で、ループ6020はそうした各ピクセルに対してさらなる関数6022を実行する。関数6022は、ピクセルのサブピクセルのそれぞれに対して計算された3つのアルファ値を取得し、それらを、ピクセルの3つのアルファ値の取り得る組み合わせによって定義された2197の取り得る色値のそれぞれから、122の値の内、1つの値にマッピングするルックアップテーブルの入力値として使用する。この実施形態に於いては、色空間はそうした少数の色に低減されている。その結果、256値の色空間を有する機械装置が、そのように制限された色空間の半分以上をその他で利用するために、なお有している一方で、サブピクセル最適化されたフォントの表示に於ける使用のために選択された122の値のそれぞれを表示することが出来る。フォントビットマップを表示するためのそうした小さなカラーパレットを使用することによって、そうしたフォントビットマップを保存するために必要とされるビット数が低減され、ダウンロードするためにより効率的になる。本発明のこの特徴に関する他の実施形態に於いて、そうしたマッピングで使用されるソース及び送信先の色空間は、異なるサイズを有する可能性がある。   The embodiment of the present invention in FIG. 60 performs such a mapping in loop 6020. When loop 6008 is executed for each pixel in the current row, loop 6020 performs a further function 6022 for each such pixel. Function 6022 takes the three alpha values calculated for each of the pixel's sub-pixels and derives them from each of the 2197 possible color values defined by the possible combinations of the three alpha values of the pixel. , 122 is used as an input value for a lookup table that maps to one value. In this embodiment, the color space is reduced to such a small number of colors. As a result, a machine having a 256-value color space still has sub-pixel optimized font display while still having more than half of the color space so limited for other uses. Each of the 122 values selected for use in can be displayed. By using such a small color palette for displaying font bitmaps, the number of bits required to store such font bitmaps is reduced and more efficient to download. In other embodiments related to this aspect of the invention, the source and destination color spaces used in such mapping may have different sizes.

図96は、本発明の一実施形態に於いて、そうしたカラーマッピングを生成するために使用されている方法9600を図示している。当然のことながら、他の実施形態に於いては、他の種類のマッピングを使用することが可能である。幾つかの実施形態に於いては、より小さな色空間へのそうしたマッピングを全く必要としない。   FIG. 96 illustrates a method 9600 that is used to generate such a color mapping in one embodiment of the invention. Of course, other types of mappings can be used in other embodiments. In some embodiments, no such mapping to a smaller color space is required.

図96の方法は、図60乃至95に関して上述した非線形カラーバランスサブピクセル最適化アルゴリズムによって計算される制限された色空間を使用してビットマップが表示される、一つ又は複数のフォントから複数文字を実行するステップ9602で始まる。これが実行される場合、ヒストグラムは、それぞれの取り得る2196の異なる複合ピクセルアルファ値が任意のピクセルに対して計算される回数を保持する。このヒストグラムは有用であるが、これは、サブピクセル最適化ビットマップに於けるピクセルに対して計算された3色のアルファ値の殆どが、2196のそうした3色アルファ値の取り得る色空間全体の様々な小さな領域に集中する傾向があるからである。この集中は恐らく非線形カラーバランスに関してより顕著になるが、これは、それがカラーバランスに起因する輝度分配の量を実質的に低減するからである。   The method of FIG. 96 uses multiple characters from one or more fonts in which a bitmap is displayed using a limited color space calculated by the nonlinear color balance subpixel optimization algorithm described above with respect to FIGS. Starting at step 9602. When this is done, the histogram holds the number of times each possible 2196 different composite pixel alpha value is calculated for any pixel. Although this histogram is useful, it means that most of the three color alpha values calculated for the pixels in the subpixel optimization bitmap are over the entire possible color space of 2196 such three color alpha values. This is because they tend to concentrate on various small areas. This concentration is likely to be more pronounced with respect to non-linear color balance because it substantially reduces the amount of luminance distribution due to color balance.

次に関数9604は、関数9606及び9608を実行することによって、この例では122色を有する制限されたカラーパレットを生成する。関数9606は、形成されているパレットの一部として、各サブピクセルが13のアルファレベルの内、1つのレベルを有することが可能な場合、全ピクセルアルファ値に対して取り得る、13のグレースケール値を選択する。次に、関数9608は、以前ステップ9602によって計算されたヒストグラムに於ける最も頻繁に出現する109の他の色を選択する。   Next, function 9604 generates a limited color palette having 122 colors in this example by executing functions 9606 and 9608. Function 9606 is the 13 gray scales that can be taken for all pixel alpha values if each subpixel can have one of 13 alpha levels as part of the palette being formed. Select a value. Next, function 9608 selects the 109 other most frequently occurring colors in the histogram previously calculated by step 9602.

制限されたカラーパレットが選択された時点で、ループ9610が2196の取り得る全ピクセルアルファ値のそれぞれに対して実行される。そうしたそれぞれの取り得るアルファ値に対して、条件9612は、その入力色が122色の内の1色と正確に一致するかを確認するためにテストを行う。一致する場合、関数9614は、入力色と、構成されたルックアップテーブルに於けるその同一出力色とを関連付ける。条件9612が満たされない場合、ループ9618及び関数9628は、ループ9610の現在の入力色に対して実行される。   When a limited color palette is selected, a loop 9610 is performed for each of the 2196 possible total pixel alpha values. For each such possible alpha value, condition 9612 tests to see if the input color matches exactly one of the 122 colors. If there is a match, function 9614 associates the input color with its same output color in the constructed lookup table. If condition 9612 is not met, loop 9618 and function 9628 are performed on the current input color of loop 9610.

ループ9618は、パレットに於ける122の出力色のそれぞれに対して実行される。それは、マッピングされる入力色の赤のアルファ値とループ9618の現在の出力色との差(ri−ro)が、現在の入力色の緑のアルファ値と現在の出力色に対する緑の出力アルファ値との差(gi−go)と同一符号であるかを確認するためにテストを行う条件9620を有している。また、条件9620は、現在の出力色に関する赤のアルファ値と緑のアルファ値との差(ro−go)が、入力色に関する赤のアルファ値と緑のアルファ値との差(ri−gi)(いくらかの余裕を持たせる為に、取り得る値Xを加算)よりも小さいかを確認するためにテストを行う。入力色と該入力色がマッピングされる出力色間の比較的顕著な差を防止することを目的とした、これら2つの条件が満たされる場合、関数9622乃至9626が実行される。   Loop 9618 is performed for each of the 122 output colors in the palette. That is, the difference (ri-ro) between the red alpha value of the mapped input color and the current output color of loop 9618 is the green alpha value of the current input color and the green output alpha value for the current output color. And a condition 9620 for performing a test in order to confirm whether or not the same sign as the difference (gi-go). The condition 9620 indicates that the difference between the red alpha value and the green alpha value for the current output color (ro-go) is the difference between the red alpha value and the green alpha value for the input color (ri-gi). Test to see if it is less than (add possible value X to give some margin). If these two conditions are met, aimed at preventing a relatively significant difference between the input color and the output color to which the input color is mapped, functions 9622-9626 are executed.

関数9622は、入力色から出力色までの距離を計算する。関数9624は、その距離が現在のループ9618に於ける入力色までのこれまでで最短距離であるかを確かめるためにテストを行う。関数9624のテストが満たされる場合、ステップ9626はループ9618の現在の出力色を、許容可能な最も近いパレット色として保存する。ループ9618が制限されたパレットの122の出力色のそれぞれに対して実行された後、ステップ9628は、ループ9610の現在の入力色を、ループ9618で計算された許容可能な最も近いパレット色に関連付ける。   A function 9622 calculates the distance from the input color to the output color. Function 9624 tests to see if that distance is the shortest distance ever to the input color in the current loop 9618. If the test of function 9624 is satisfied, step 9626 saves the current output color of loop 9618 as the closest acceptable palette color. After loop 9618 has been performed for each of the 122 output colors of the restricted palette, step 9628 associates the current input color of loop 9610 with the closest allowable palette color calculated in loop 9618. .

ループ9610が、取り得る入力色のそれぞれに対して実行された時点で、それらの入力色のそれぞれは、122出力色の1色にマッピングされる。   When loop 9610 is executed for each possible input color, each of those input colors is mapped to one of the 122 output colors.

図96に図示された特定のカラーマッピングスキームでは、カラーバランスによって生成された非グレースケールピクセルの色値がステップ9608で選択された109の最も頻繁に発生する非グレースケールの色値の内の1つにマッピングされなければ、グレースケールの色値にマッピングされる。一般に、これは全てのビットマップをグレースケールアルファ値で表示する従来のアンチエイリアスと、少なくとも同程度に良好な結果をもたらす。   In the particular color mapping scheme illustrated in FIG. 96, the color value of the non-grayscale pixels generated by color balance is one of 109 most frequently occurring non-grayscale color values selected in step 9608. If not mapped to one, it is mapped to a grayscale color value. In general, this yields at least as good results as conventional anti-aliasing, which displays all bitmaps with grayscale alpha values.

図97は、図60及び96の方法で生成される種類のフォントビットマップをサブピクセルアドレス可能スクリーン上に表示するために使用されるアルゴリズム9700を図示している。   FIG. 97 illustrates an algorithm 9700 used to display a font bitmap of the type generated by the method of FIGS. 60 and 96 on a subpixel addressable screen.

関数9704と、ループ9706及び9714で構成されたループ9702は、表示される各文字列に対して実行される。   A function 9704 and a loop 9702 composed of loops 9706 and 9714 are executed for each character string to be displayed.

関数9704は、文字列が、その文字列に対する平均背景色値を決定するために描画されるビットマップの矩形に於けるポイント一式をサンプリングする。他の実施形態に於いては、背景色が各文字に対して、又は、各文字の各ピクセルに対して別々に決定されるが、図示された実施形態に於いては、演算処理を節約するために背景色が各文字列に対して1回だけ決定される。   Function 9704 samples a set of points in a bitmap rectangle where the string is drawn to determine an average background color value for the string. In other embodiments, the background color is determined separately for each character or for each pixel of each character, but in the illustrated embodiment, it saves computation. Therefore, the background color is determined only once for each character string.

文字列に対する背景色が決定された時点で、ループ9706は、図96に関して上述された122の全ピクセルアルファ値のそれぞれに対して、サブループ9708及び関数9712を実行する。   Once the background color for the string has been determined, loop 9706 performs sub-loop 9708 and function 9712 for each of the 122 total pixel alpha values described above with respect to FIG.

ループ9708は、3つのサブピクセル色のそれぞれに対して関数9710を実行する。この関数9710は、現在のサブピクセル色に対応する現在の全ピクセルアルファ値のコンポーネントに関する関数として、現在のサブピクセル色に対して輝度値を算出する。
関数9710は、算出している輝度値を、描画される文字列の前景色に於ける現在のサブピクセルの対応する色に関する輝度によって乗算されたサブピクセルのアルファ値に、関数9704によって決定された背景色に於ける現在のサブピクセルの対応する色に関する輝度によって乗算された現在のサブピクセルのアルファ値を減算したものを加えた値に等しく設定する。
Loop 9708 performs function 9710 for each of the three subpixel colors. This function 9710 calculates a luminance value for the current subpixel color as a function for the current total pixel alpha value component corresponding to the current subpixel color.
Function 9710 is determined by function 9704 to a subpixel alpha value multiplied by the luminance value being calculated by the luminance for the corresponding color of the current subpixel in the foreground color of the drawn string. Set equal to the subtraction of the alpha value of the current subpixel multiplied by the luminance for the corresponding color of the current subpixel in the background color.

このループが3つのサブピクセルのそれぞれに対して実行された時点で、関数9712は、ループ9706の現在の全ピクセルアルファ値を、ループ9708で計算された3つのサブピクセル輝度で構成された全ピクセルの色値にマッピングする。   When this loop is performed for each of the three subpixels, function 9712 calculates the current total pixel alpha value of loop 9706 to be the total pixel composed of the three subpixel luminances calculated in loop 9708. Maps to the color value of.

次に、ループ9714は、サブピクセルアドレス可能な表示上に表示される現在の文字列の各文字に対して、関数9716及びループ9718を実行する。   Next, loop 9714 performs function 9716 and loop 9718 for each character of the current string displayed on the subpixel addressable display.

関数9716は、現在の文字に対するフォントビットマップにアクセスする。次に、ループ9718はそのビットマップの各ピクセルに対して、関数9720及び9722を実行する。関数9720は、文字のフォントビットマップに於ける現在のピクセルに対して示された、ループ9706によって現在の全ピクセルアルファ値にマッピングされている色値を求める。この色値が求められた時点で、関数9722は、サブピクセルアドレス可能表示に於ける対応するピクセルを全ピクセルの色値に設定する。   Function 9716 accesses the font bitmap for the current character. Next, loop 9718 performs functions 9720 and 9722 for each pixel of the bitmap. Function 9720 determines the color value mapped to the current full pixel alpha value by loop 9706, shown for the current pixel in the font bitmap of the character. When this color value is determined, function 9722 sets the corresponding pixel in the subpixel addressable display to the color value of all pixels.

ループ9718が文字列の各文字の各ピクセルに対して実行された時点で、文字列がサブピクセル最適化法で完全に表示される。   When the loop 9718 is executed for each pixel of each character in the string, the string is fully displayed with the sub-pixel optimization method.

図98乃至101は、画像及びフォントの拡大/縮小、及び、サブピクセル最適化に関する技術が如何にうまくいくかを図示している。図98及び100は、一般的なブラウザプログラムを使用して、640×480ピクセルでレイアウトされ、表示された2つの異なるウェブページの概要を図示している。図99及び101は、それらの画像及びテキストが320×240表示上に適合するように上述した方法で拡大/縮小された後に於ける、同一ウェブページを図示している。残念ながら、320×240ピクセル画像は全ピクセルの平均輝度によって決定されたグレースケール値で印刷されおり、それ故、サブピクセル解像度によって加えられた実際の明瞭さは、これらの画像に於いて示されていない。   FIGS. 98-101 illustrate how the techniques for image / font scaling and sub-pixel optimization work. FIGS. 98 and 100 illustrate an overview of two different web pages laid out and displayed at 640 × 480 pixels using a common browser program. FIGS. 99 and 101 illustrate the same web page after the images and text have been scaled in the manner described above to fit on a 320 × 240 display. Unfortunately, 320x240 pixel images are printed with grayscale values determined by the average luminance of all pixels, so the actual clarity added by the subpixel resolution is shown in these images. Not.

図102乃至113は、本発明の一実施形態に於けるプロキシサーバと薄型クライアントコンピュータとの間の相互作用をより詳細に図示している。   102-113 illustrate in more detail the interaction between a proxy server and a thin client computer in one embodiment of the present invention.

図102は、図2に関して上述した種類のプロキシサーバ210及び薄型クライアント200を含むシステムの高度に概略化したブロック図である。   FIG. 102 is a highly schematic block diagram of a system that includes a proxy server 210 and thin client 200 of the type described above with respect to FIG.

プロキシサーバ210は、完全なウェブブラウザの標準機能を実行するためのプログラム10202を含むブラウザ10200を有している。このプログラムが変更されているのは、ブラウザが薄型クライアントに対するプロキシとして動作するからである。プロキシブラウザが要求されたウェブページのHTML記述10204をネットワーク上で受信する場合、それはそのウェブページの2次元レイアウト10206を生成する。   The proxy server 210 has a browser 10200 that includes a program 10202 for executing the standard functions of a complete web browser. This program is changed because the browser acts as a proxy for thin clients. When the proxy browser receives an HTML description 10204 of the requested web page over the network, it generates a two-dimensional layout 10206 of the web page.

図103は、表示が図98及び99に図示されたウェブページのHTML記述の一部を図示している。図103に図示された数字10300は、図98及び99に図示されたウェブページの左側コラムに図示されたHTMLに於けるテキスト部分を図示している。数字10302は、同一コラムに図示された単語「Section」を表示するために使用されたビットマップを識別する画像タグを指し示している。   FIG. 103 illustrates a portion of the HTML description of the web page whose display is illustrated in FIGS. The numeral 10300 illustrated in FIG. 103 illustrates the text portion in the HTML illustrated in the left column of the web page illustrated in FIGS. The number 10302 points to an image tag that identifies the bitmap used to display the word “Section” illustrated in the same column.

プロキシブラウザコードがウェブページのダウンロードを受信する場合、それは仮想レイアウト解像度でウェブページのレイアウト10206を作成しようとする。仮想レイアウト解像度は多くの場合、それがウェブページの全て又は一部を表示しているとプロキシブラウザが見なすウインドウのサイズとなっている仮想スクリーンサイズの幅に対応する。それがウェブページを表示しているとブラウザが見なすウインドウを、仮想スクリーン10208と呼ぶことにする。   When the proxy browser code receives a web page download, it attempts to create a web page layout 10206 at the virtual layout resolution. The virtual layout resolution often corresponds to the width of the virtual screen size, which is the size of the window that the proxy browser considers to display all or part of a web page. The window that the browser considers as displaying a web page will be referred to as a virtual screen 10208.

図104は、図98及び99に図示されたウェブページのレイアウト10206を図示しており、それは、黒色太線矩形部10208に於いて、そのレイアウトへの仮想スクリーン画面のマッピングを図示している。レイアウト10206に対する図104に図示され仮想スクリーンの位置を前提として、10220は薄型クライアント上に表示された仮想スクリーン画像を図示している。   FIG. 104 illustrates the layout 10206 of the web page illustrated in FIGS. 98 and 99, which illustrates the mapping of the virtual screen screen to that layout in the black thick line rectangle 10208. FIG. Given the location of the virtual screen shown in FIG. 104 relative to the layout 10206, 10220 illustrates a virtual screen image displayed on the thin client.

今日のウェブページの多くは、記載例のシステムに於いて使用された640×480の仮想スクリーン解像度よりも大きな要素を有している。そのレイアウトは、ウェブページのオブジェクトをレイアウトするために必要な最小ピクセル幅、又は、仮想スクリーン幅の何れかの内、何れか大きい方を有する。例えば、今日、多くのウェブページが800ピクセルの最小可能幅の解像度でレイアウトされることは一般的である。この場合、仮想画面はレイアウトよりも小さなピクセル幅を有する。これは、図104に図示された例の場合である。仮想レイアウト幅を前提として、仮想レイアウトの高さは、ウェブページのすべてを表示するために必要な高さである。   Many of today's web pages have elements larger than the 640 × 480 virtual screen resolution used in the described system. The layout has either the minimum pixel width required to lay out the objects of the web page or the virtual screen width, whichever is greater. For example, it is common today that many web pages are laid out with a resolution of the smallest possible width of 800 pixels. In this case, the virtual screen has a smaller pixel width than the layout. This is the case of the example shown in FIG. Given the virtual layout width, the height of the virtual layout is the height required to display all of the web page.

図102に図示されたビューウインドウ10210は、薄型クライアントのスクリーン上に実際に表示される仮想スクリーンの一部を表している。図99、101、104に図示されたビューに於いては、ビューウインドウは仮想スクリーンに相当する。   The view window 10210 illustrated in FIG. 102 represents a portion of a virtual screen that is actually displayed on the thin client screen. In the views shown in FIGS. 99, 101, and 104, the view window corresponds to a virtual screen.

しかし、ユーザが仮想スクリーンの部分上で拡大表示する場合、図102に図示されたズームの倍率制御10216が変化し、ビューウインドウは仮想スクリーンのサブセットにマッピングされる。   However, if the user zooms in on a portion of the virtual screen, the zoom magnification control 10216 illustrated in FIG. 102 changes and the view window is mapped to a subset of the virtual screen.

図102に図示されたスクロール制御10218によって、ビューウインドウはレイアウトに対応して移動する。ビューウインドウが仮想スクリーン上の現在位置に位置していないレイアウトの部分を含むように移動される場合、仮想スクリーンをスクロールするためにブラウザソフトウェアに命令が送信される。イベント待ち行列10220は、イベント、即ち、薄型クライアント上で受信され、ブラウザによって対応するアクションに対するプロキシサーバにアップロードされているユーザ入力を保存する。薄型クライアントのスクリーン上で発生するイベントは、ビューウインドウを介して仮想スクリーン上の対応する位置にマッピングされ、その後、プロキシブラウザのイベント待ち行列に配置されるので、プロキシブラウザは、あたかもそれが映像出力装置上に直接描画していると見なす仮想スクリーン上の適切な位置で受信されたかのように、そうした入力に対応する。   The view window moves corresponding to the layout by the scroll control 10218 shown in FIG. If the view window is moved to include a portion of the layout that is not currently located on the virtual screen, instructions are sent to the browser software to scroll the virtual screen. The event queue 10220 stores events, ie user input received on the thin client and uploaded by the browser to the proxy server for the corresponding action. Events that occur on the thin client's screen are mapped to the corresponding location on the virtual screen via the view window, and then placed in the proxy browser's event queue, so the proxy browser is as if it were video output It responds to such input as if it were received at the appropriate location on the virtual screen that it considers drawing directly on the device.

図102のブラウザプログラム10202は、それが仮想スクリーン上にオブジェクトを描画しているとみなす度に、ダウンロード表示リスト10212に於ける、これに対応する拡大/縮小された位置に、対応する縮小されたオブジェクトを生成するように変更される。   Each time the browser program 10202 of FIG. 102 considers that it is drawing an object on the virtual screen, the corresponding reduced scaled position in the download display list 10212 is displayed. Modified to create an object.

この表示リストは、ネットワーク10222を介して、数字10212Aによって示されるように、表示リストを保存するクライアントコンピュータにダウンロードされる。この表示リストによって参照される縮小された画像10214もダウンロードされる。薄型クライアント上に位置するプログラム10218は、表示リストに含まれる文字列、画像、及び、他の要素を、薄型クライアントスクリーン10221上に表示する。ユーザが薄型クライアントスクリーン上でクリックする場合、薄型クライアントのオペレーティングシステム10222は、薄型クライアントスクリーン上でのそうしたクリック、及び、クリック位置を、イベント待ち行列10224にセットする。薄型クライアント上でローカルに取り扱われるプログラムに関係しないそうした各イベントは、上述の通り、プロキシサーバのイベント待ち行列10220にアップロードされる。   This display list is downloaded via the network 10222 to the client computer that stores the display list, as indicated by the numeral 10212A. A reduced image 10214 referenced by this display list is also downloaded. A program 10218 located on the thin client displays a character string, an image, and other elements included in the display list on the thin client screen 10221. When a user clicks on the thin client screen, the thin client operating system 10222 sets such clicks and click positions on the thin client screen in the event queue 10224. Each such event not related to a program handled locally on the thin client is uploaded to the proxy server's event queue 10220 as described above.

図105A乃至110は、薄型クライアントがプロキシを介してウェブページをブラウズすることが出来るように、これらの相互作用を制御するために設計された、ブラウザ及び薄型クライアントコンピュータ上のプログラム及びデータ構造に関する高度に簡略化された擬似コード記述である。   FIGS. 105A-110 show a high level of programs and data structures on browsers and thin client computers designed to control these interactions so that thin clients can browse web pages through a proxy. This is a simplified pseudo code description.

図105A及び105Bは、薄型クライアントに対するプロキシとして機能することを促進するために使用される、図102に図示されたブラウザのコード10202の一部に関する高度に簡略化された擬似コード表記である。   105A and 105B are highly simplified pseudo-code notations for a portion of the browser code 10202 illustrated in FIG. 102 that is used to facilitate acting as a proxy for thin clients.

これらの図で図示された特定の実施形態に於いて、通常使用するために設計された大規模ウェブブラウザは、それがプロキシとして機能するようにパッチ修正されている。当然のことながら、本発明の他の実施形態に於いて、プロキシとしてブラウザを動作させるのに必要な機能を、より密接かつ見事にブラウザのコードに統合することが出来る。さらに他の実施形態では、オペレーティングシステムに於けるコード、又は、オペレーティングシステムの呼び出しに割り込む関数に於けるコードは、薄型クライアントに対するプロキシとして標準ウェブブラウズプログラムを動作させるために使用することが出来る。   In the particular embodiment illustrated in these figures, a large web browser designed for normal use has been patched so that it functions as a proxy. Of course, in other embodiments of the present invention, the functions necessary to operate the browser as a proxy can be more closely and finely integrated into the browser code. In yet another embodiment, code in the operating system or code in a function that interrupts an operating system call can be used to run a standard web browsing program as a proxy for thin clients.

図105Aに図示された実施形態に於いて、プロキシブラウザがウェブページに対する薄型クライアントからの要求を受信する場合、ステップ10502及び10504は、その要求を当該要求のURLに示されたサーバコンピュータに伝達する。   In the embodiment illustrated in FIG. 105A, when the proxy browser receives a request from a thin client for a web page, steps 10502 and 10504 communicate the request to the server computer indicated in the URL of the request. .

ブラウザが図102に関して上述された仮想スクリーン10208の描画又は再描画を完了したという指示を自身のコードから受信する場合、関数10506及び10510は、図106A乃至106Cに図示されたスクリーンキャプチャ及びダウンロードルーチンを呼び出す。   If the browser receives an indication from its own code that it has finished drawing or redrawing the virtual screen 10208 described above with respect to FIG. 102, the functions 10506 and 10510 perform the screen capture and download routines illustrated in FIGS. 106A-106C. call.

図106A乃至106Cは、スクリーンキャプチャ及びダウンロードルーチン10600に関する高度に簡略化された擬似コード記述である。   106A-106C are highly simplified pseudocode descriptions for the screen capture and download routine 10600. FIG.

このルーチンが、前述の図105Aの関数10510によって呼び出される場合、そのステップ10602は、仮想スクリーン内に全体的又は部分的に適合するウェブページのレイアウトに於ける各要素を描画するためのルーチンがブラウザによって呼び出される、スクリーン再描画をブラウザに対して要求する。図106A乃至106Bのルーチンは、これらの描画呼び出しの各々に含まれる情報を記録し、図102に図示されたダウンロード表示リスト10212を生成するためにこれを使用する。   If this routine is called by function 10510 of FIG. 105A described above, its step 10602 is a routine for rendering each element in the layout of a web page that fits entirely or partially within the virtual screen. Calls the browser to redraw the screen, called by. The routine of FIGS. 106A-106B records the information contained in each of these drawing calls and uses it to generate the download display list 10212 illustrated in FIG.

ブラウザが図106Aの測定文字列ルーチン10606を呼び出す場合、このルーチンによって関数10608乃至10618が実行される。そうした呼び出しは、仮想スクリーンにレイアウトしようとしているテキストのサイズを決定するために、ブラウザによって形成される。図示されていないが、図106A乃至106Bに図示されたスクリーンキャプチャ及びダウンロードルーチンが実行中ではないとしても、これら同一の関数10608乃至10618は、ブラウザが文字列のサイズを測定するために呼び出しを行う際は何時でも実行される。これにより、ウェブページの全ての仮想レイアウトは関数1068乃至10618によって提供されたフォントマトリクスを使用する。   When the browser calls the measurement string routine 10606 of FIG. 106A, functions 10608 through 10618 are executed by this routine. Such a call is made by the browser to determine the size of the text that is to be laid out on the virtual screen. Although not shown, these same functions 10608-10618 make calls to the browser to measure the size of the string even though the screen capture and download routines shown in FIGS. 106A-106B are not running. It is executed at any time. Thus, all virtual layouts of the web page use the font matrix provided by functions 1068-10618.

関数10608は、測定文字列呼び出しに於いて特定されたフォントを、異なるフォントファミリー、及び、異なるフォントサイズを有するフォントにマッピングする。このフォント置換は、数字10610乃至10616によって示された3つの事項によって制御される。   Function 10608 maps the font specified in the measurement string call to a font having a different font family and a different font size. This font substitution is controlled by three things indicated by numerals 10610 to 10616.

事項10610は、測定文字列ルーチンに対する呼び出しに於ける、要求されたフォントサイズの関数として、置換フォントに対するサイズを選択し、表示倍率を選択しようとする。   Item 10610 attempts to select a size for the replacement font as a function of the requested font size in a call to the measurement string routine and to select a display scale factor.

表示倍率は、ビューウインドウが薄型クライアント上に表示される同一次元に沿った、ビューウインドウ及び解像度に対応する仮想スクリーン1028の一部に関する所定の次元に沿った解像度の比率である。場合によっては、表示倍率は水平及び垂直方向に沿って使用される異なる縮尺比率を表すための異なるコンポーネントを有するが、多くの場合、表示倍率は、水平及び垂直解像度の両方に対して使用される単一縮尺比率で構成される。   The display magnification is the ratio of resolution along a predetermined dimension for the portion of the virtual screen 1028 corresponding to the view window and resolution along the same dimension that the view window is displayed on the thin client. In some cases, display magnification has different components to represent different scale ratios used along the horizontal and vertical directions, but in many cases display magnification is used for both horizontal and vertical resolutions. Consists of a single scale ratio.

記載されている特定の実施形態に於いて、ウェブページのレイアウトが実行される場合、該レイアウトは非ズーム表示倍率に対して実行される。非ズーム表示倍率は、図102のビューウインドウ10210が仮想スクリーン10208と同一サイズである倍率である。その結果、非ズーム表示倍率は、仮想スクリーンが表示されるスクリーンの解像度に対する、仮想スクリーンの解像度の比率と等しい。ウェブページの表示後、ユーザがレイアウトの一部に於いて拡大表示を行う場合、ビューウインドウ10210は仮想スクリーンの下位部分にのみ対応し、表示倍率は レイアウト要素がより大きなサイズで表示される事実を反映させるために、その非ズーム値から変更する。現在の実施形態は、仮想スクリーン全体の表示に対して、テキストのレイアウトを最適化するための非ズーム表示倍率を使用する内容をレイアウトするのだが、これは、このようにしてユーザが一般にレイアウトを見たいと考えているのだということを仮定しているからである。他の実施形態に於いて、仮想レイアウトを非ズーム表示倍率以外の表示倍率に対して最適化することが出来る。   In the particular embodiment described, when a web page layout is performed, the layout is performed for non-zoom display magnification. The non-zoom display magnification is a magnification at which the view window 10210 in FIG. 102 is the same size as the virtual screen 10208. As a result, the non-zoom display magnification is equal to the ratio of the resolution of the virtual screen to the resolution of the screen on which the virtual screen is displayed. If the user zooms in on a part of the layout after the web page is displayed, the view window 10210 only corresponds to the lower part of the virtual screen, and the display magnification is the fact that the layout elements are displayed in a larger size. Change from its non-zoom value to reflect. The current embodiment lays out content that uses a non-zoom display magnification to optimize the layout of the text for the display of the entire virtual screen, which is why the user generally lays out the layout. This is because we are assuming that you want to see. In other embodiments, the virtual layout can be optimized for display magnifications other than non-zoom display magnification.

図102に図示された実施形態に於いて、この倍率がズーム/倍率制御10216に保存されている。仮想スクリーンが640×480の解像度を有し、ビューウインドウが仮想スクリーンのサイズに等しく、ビューウインドウが320×240表示の全体に表示される場合、倍率は「2」であり、このことは、ブラウザがその仮想スクリーン上に要素を描画しているとみなす2分の1ピクセル解像度で、薄型クライアントのスクリーン上に要素が描画されることを意味している。   In the embodiment illustrated in FIG. 102, this magnification is stored in the zoom / magnification control 10216. If the virtual screen has a resolution of 640x480, the view window is equal to the size of the virtual screen, and the view window is displayed over the entire 320x240 display, the magnification is "2", which means that the browser Means that the element is rendered on the thin client's screen at half-pixel resolution, assuming that the element is rendered on that virtual screen.

図106Aの事項10612は、事項10610のみによって選択されるフォントの平均ピクセルサイズよりも狭く高いフォントファミリーで、薄型クライアントスクリーン上に表示された場合に小さくなる、全てのフォントサイズを置換する。640×480仮想スクリーンから320×240表示スクリーンに低減する場合、ビットマップ形式とは対照的に、これは文字に於いて表現された殆ど又は全てのウェブページテキストを有することが出来る。この置換が実行されるのは、一つには、本発明の本実施形態を用いて使用されるサブピクセルアドレス可能表示が、垂直方向に於けるサブピクセル解像度に比して、3倍の水平方向に於けるサブピクセル解像度を有するからである。この理由により、文字幅の低減は、文字高の低減に比して、可読性に与える負の影響が少ない。このように、そうしたサブピクセルアドレス可能表示スクリーン上に比較的容易に読み取り可能なテキストの最大量を表示するために、この置換によって、文字幅が表示倍率を超える倍率で効果的に縮小され、そうした文字の高さは、表示倍率未満の倍率で効果的に縮小される。例えば、図56、57、99、101、168、169、172、173、174に図示された小型スクリーン表示のフォントは、そうした方法で拡大/縮小されたフォントによって全て置換されている。   Item 10612 in FIG. 106A replaces all font sizes that are smaller and higher when displayed on a thin client screen in a font family that is narrower and higher than the average pixel size of the font selected by item 10610 alone. When reducing from a 640 × 480 virtual screen to a 320 × 240 display screen, in contrast to the bitmap format, this can have most or all of the web page text expressed in characters. This replacement is performed, in part, when the subpixel addressable display used with this embodiment of the present invention is 3 times horizontal compared to the subpixel resolution in the vertical direction. This is because it has sub-pixel resolution in the direction. For this reason, reducing the character width has less negative impact on readability than reducing the character height. Thus, in order to display the maximum amount of text that is relatively easily readable on such a subpixel addressable display screen, this replacement effectively reduces the character width by a factor that exceeds the display magnification. The character height is effectively reduced at a magnification less than the display magnification. For example, the fonts of the small screen display shown in FIGS. 56, 57, 99, 101, 168, 169, 172, 173, and 174 are all replaced by fonts enlarged / reduced in such a manner.

これらの図中のフォントは、8ピクセル/emのピクセルサイズを有している。このフォントに於ける殆どの小文字は、4ピクセルコラム又はそれ未満のアドバンス幅内に適合する。4ピクセル又はそれ未満の幅は、あるとすれば、そうした幅を有する文字の形状の間に発生する間隔を含む。これらの特別なフォントでは、ローマ字の小文字の内、80%を越える小文字がそうしたアドバンス幅内に適合する。これらの文字は、一般に幅よりもかなり高くする、4ピクセル行以上の高さ「x」を有する。一般に、そうした比較的幅の狭いフォントは、幅の広いフォントに比して、所定の可読性レベルで所定の領域内にあるより多くのテキストを表示することが出来る。   The fonts in these figures have a pixel size of 8 pixels / em. Most lowercase letters in this font fit within an advance width of 4 pixel columns or less. A width of 4 pixels or less includes the spacing that occurs between the shapes of characters having such width, if any. In these special fonts, more than 80% of the lowercase Roman letters fit within such advance width. These characters have a height “x” of 4 pixel rows or more, which is generally much higher than the width. In general, such a relatively narrow font can display more text within a given area at a given readability level than a wider font.

数字10614及び10616によって表現された事項は、最小フォントサイズを制限するためにフラグが設定されているか否かを確かめるためにテストを行うが、このテストは、所定のピクセルサイズ未満で薄型クライアントの表示上に表示されるフォントは存在しないはずだということを示している。一般に、このフラグは、小さ過ぎて読むことが出来ないテキストの表示を防止するために設定される。仮想スクリーンサイズを有する表示上に実際に表示される場合、ウェブページテキストを通常、どのように表示するかということに関して、より正確な縮小表現をユーザが見たいと考える際には、それは設定されない。表示倍率が大きい、即ち、テキストサイズに対してそうした最小制限を行うことで、ウェブページのレイアウトの概観を劇的に変化させる場合、そうした要求が特に起こり易い。   The matter represented by the numbers 10614 and 10616 tests to see if a flag is set to limit the minimum font size, but this test is less than a predetermined pixel size and displays thin clients. Indicates that the font displayed above should not exist. Generally, this flag is set to prevent display of text that is too small to be read. When actually displayed on a display with a virtual screen size, it is not set when the user wants to see a more accurate reduced representation of how web page text is normally displayed. . Such demands are particularly likely to occur when the display magnification is large, i.e. making such a minimum restriction on the text size dramatically changes the appearance of the layout of the web page.

大抵の場合、システムが最小フォントサイズを制限している場合、ステップ10614及び10616は、置換フォントサイズが最小ピクセルサイズ未満になることを防止する。本発明の現在の実施形態に於いて、この最小ピクセルサイズは8ピクセル/emである。本実施形態の開発者は、7ピクセル/emでのサブピクセル表示用のヒントフォントを開発し、そうしたフォントが比較的読み易いと考えたのだが、そうした小さなフォントは読み難いというフィードバックを他のユーザから受け付けた。   In most cases, if the system limits the minimum font size, steps 10614 and 10616 prevent the replacement font size from becoming less than the minimum pixel size. In the current embodiment of the invention, this minimum pixel size is 8 pixels / em. The developer of this embodiment developed a hint font for displaying a sub-pixel at 7 pixels / em and thought that such a font was relatively easy to read. However, feedback from other users that such a small font is difficult to read. Accepted from.

最小フォントサイズへの制限は、多くの場合、ウェブページの様々なサイズのフォントが実際に表示される相対的なフォントのサイズを実質的に変更する。   Limiting the minimum font size often substantially changes the relative font size at which the various sizes of fonts on the web page are actually displayed.

本発明の幾つかの実施形態に於いて、全てのウェブテキストは1つのフォントサイズで表示される。殆どのウェブページに於いては、実際に大きなフォントがビットマップによって表現されるので、実際にこの方法は殆どのウェブページで非常にうまくいっている。   In some embodiments of the invention, all web text is displayed in one font size. In most web pages, this method actually works very well on most web pages, since actually large fonts are represented by bitmaps.

測定文字列ルーチンが呼び出されたフォントが何れのフォントファミリーとフォントサイズに置き換わるのかを、関数10608が決定した時点で、その測定が非ズーム表示倍率によって拡大された後に、置換されたフォント及びフォントサイズにおける文字列の個々の文字のサイズを前提として、関数10618がルーチンが呼び出された文字列の文字列測定に戻る。   When the function 10608 determines which font family and font size the font for which the measurement string routine was called replaces, the font and font size replaced after the measurement is magnified by the non-zoom display magnification. Given the size of each character in the character string at, function 10618 returns to character string measurement of the character string from which the routine was called.

この値に戻ることによって、ブラウザのレイアウトエンジンは、非ズーム表示倍率、即ち、仮想スクリーンが薄型クライアントスクリーン上に表示される仮想スクリーンの解像度と実際の解像度の比率によって、それらの文字が実際に表示されるピクセルサイズに関連して、拡大/縮小される文字に対するフォントマトリクスを使用するウェブページをレイアウトする。このことは、仮想スクリーンが、そのレイアウトの結果として表示される実際のフォントマトリクスとは異なるフォントマトリクスを使用してレイアウトされていることを意味している。   By returning to this value, the browser layout engine actually displays the characters according to the unzoomed display magnification, ie the ratio of the virtual screen resolution to the actual resolution at which the virtual screen is displayed on the thin client screen. Lay out a web page that uses a font matrix for the characters to be scaled in relation to the pixel size to be scaled. This means that the virtual screen is laid out using a font matrix that is different from the actual font matrix displayed as a result of the layout.

スクリーンキャプチャ及びダウンロードルーチンが、図106Aの文字列描画ルーチン10620に対する呼び出しを受信する場合、このルーチンによって関数10621及び10624が実行される。   When the screen capture and download routine receives a call to the string rendering routine 10620 of FIG. 106A, the routine executes functions 10621 and 10624.

関数10621は、文字列の描画が始まるスクリーン位置を文字列が最終的に表示される薄型クライアントスクリーン上の対応する位置に変換する。この変換は、ビューウインドウ10210、及び、図102に図示された仮想スクリーン10208との間のマッピングを考慮している。このマッピングは、制御10216によって保存された現在のズーム設定と、図102に図示されたスクロール制御10218によって保存された現在のスクロール設定の両方を反映している。   The function 10621 converts the screen position where the drawing of the character string starts to the corresponding position on the thin client screen where the character string is finally displayed. This conversion takes into account the mapping between the view window 10210 and the virtual screen 10208 illustrated in FIG. This mapping reflects both the current zoom setting saved by control 10216 and the current scroll setting saved by scroll control 10218 illustrated in FIG.

関数10622は、数字10606乃至10618に関して上述された、測定文字列ルーチンに対する以前の呼び出しによる、文字列に関連付けられた置換されたフォントファミリー及びサイズと、現在の文字列を表示するために要求された任意の他の属性とが、そうしたフォント属性に対する現在の値と異なるかどうかを確認するためにテストを行う。そうした各フォント属性に対する現在の値は、図102に図示されたダウンロード表示リスト10212に既に記録されたフォントコマンドによって定義された、そうした各属性に対する最後の値によって決定される。そうした相違が発見される場合、関数10623は、そうしたフォント属性を現在の文字列の表示に適した属性に変更する表示リストの現在の最後に、フォントコマンドを保存する。   Function 10622 was requested to display the current string with the replaced font family and size associated with the string, from a previous call to the measurement string routine described above for numbers 10606 to 10618. Test to see if any other attributes are different from the current values for those font attributes. The current value for each such font attribute is determined by the last value for each such attribute defined by the font command already recorded in the download display list 10212 illustrated in FIG. If such a difference is found, function 10623 saves the font command at the current end of the display list that changes such font attributes to those suitable for displaying the current string.

関数10624は、文字列描画ルーチンが呼び出された文字列と、図102に図示された、ダウンロード表示リスト10212の最後に、ステップ10622によって計算され、変換されたスクリーン位置を保存する。図108に関して後述するように、文字列の変換された開始位置とその文字を含む表示リストに於ける文字列コマンドを設定することによって、これを実行する。   The function 10624 stores the screen position calculated and converted by the step 10622 at the end of the download display list 10212 illustrated in FIG. This is done by setting a character string command in the display list that includes the converted start position of the character string and its character, as will be described below with respect to FIG.

スクリーンキャプチャ及びダウンロードルーチンが矩形描画ルーチン10626に対する呼び出しを受信する場合、このルーチンによって関数10628乃至10634が実行される。異なる背景色を有するウェブページの領域を生成するだけでなく、テキストの下線、又は、ウェブページのレイアウトの別々の部分の間の境界として使用可能な水平及び垂直ラインを描画するために、通常、ブラウザが矩形描画コマンドを呼び出す。   When the screen capture and download routine receives a call to the rectangle drawing routine 10626, the routine executes functions 10628 through 10634. In order to draw horizontal and vertical lines that can be used not only to generate areas of a web page with different background colors, but also to underline text, or as boundaries between different parts of a web page layout, The browser calls the rectangle drawing command.

関数10628は、呼び出しに含まれた幾何学的な値を、対応する矩形が薄型クライアントの表示上に描画される、対応する幾何学的な値に変換する。これは、矩形の開始スクリーン位置、矩形の幅、及び、矩形の高さを変換することを含む。   Function 10628 converts the geometric value included in the call to a corresponding geometric value in which the corresponding rectangle is rendered on the thin client display. This includes converting the starting screen position of the rectangle, the width of the rectangle, and the height of the rectangle.

関数10630は、矩形の色が、表示リストに於ける現在(即ち、最後)の矩形色と異なるかどうかを確認するためにテストを行う。異なる場合、関数10632は、現在の背景色を矩形描画ルーチンに対する現在の呼び出しに於いて指定された色に変更する表示リストの最後に背景色コマンドを追加する。   Function 10630 tests to see if the color of the rectangle is different from the current (ie, last) rectangle color in the display list. If so, function 10632 adds a background color command to the end of the display list that changes the current background color to the color specified in the current call to the rectangle drawing routine.

次に、関数10634は、矩形と、矩形の変換されたスクリーン位置、幅、高さを、矩形コマンドとともに、ダウンロード表示リストの最後に保存する。   Next, the function 10634 saves the rectangle and the converted screen position, width, and height of the rectangle together with the rectangle command at the end of the download display list.

スクリーンキャプチャ及びダウンロードルーチンが、図106Bに図示されたビットマップ描画ルーチン10636に対する呼び出しを受信する場合、このルーチンによって、関数10638乃至10670が実行される。図形、フォントの図形、バナー広告、及び、ホットゾーン及びページの他のグラフィカルユーザインターフェース(GUI)ビットマップに関連した画像を表示するために、ブラウザはビットマップ画像ルーチンを呼び出す。   If the screen capture and download routine receives a call to the bitmap rendering routine 10636 illustrated in FIG. 106B, this routine causes functions 10638 through 10670 to be performed. To display graphics, font graphics, banner advertisements, and images associated with hot zones and other graphical user interface (GUI) bitmaps of the page, the browser calls a bitmap image routine.

幾つかの実施形態に於いて、ウェブページを表示するために必要な回線容量を低減するために、所定のアニメーションに関する第1スクリーンのみがダウンロード表示リストに取り込まれ、記録される。他の実施形態に於いては、特に、より高度な回線容量リンクに対してそうした制約を適用する必要はない。     In some embodiments, only the first screen for a given animation is captured and recorded in the download display list to reduce the line capacity required to display the web page. In other embodiments, it is not necessary to apply such constraints, especially for more advanced line capacity links.

図106A乃至106Cに関して上述された本発明の実施形態に於いては、特定のグラフィカルユーザインターフェース(GUI)に関連付けられたビットマップ描画が無視されるが、これは、薄型クライアントのプログラムがそうした制御に対してサブピクセル最適化され、縮小されたビットマップを保存するからである。   In the embodiment of the invention described above with respect to FIGS. 106A-106C, the bitmap drawing associated with a particular graphical user interface (GUI) is ignored, which is what the thin client program does for such control. This is because the sub-pixel optimized and reduced bitmap is saved.

ステップ10638は、ビットマップ描画ルーチンが呼び出された画像のURLが、ダウンロード表示リストにおいて参照された画像のそれぞれを含むダウンロード画像リスト(図示せず)に既に存在するかどうかを確かめるためにテストを行う。存在しない場合、要求されたビットマップは、まだ現在のダウンロードに対して処理されておらず、関数10642乃至10662をそれに対して実行する必要はない。   Step 10638 tests to see if the URL of the image for which the bitmap rendering routine was invoked already exists in a download image list (not shown) that includes each of the images referenced in the download display list. . If not, the requested bitmap has not yet been processed for the current download and there is no need to perform functions 10642 through 10661 against it.

関数10642は、ビットマップがカラービットマップかどうかを確かめるためにテストを行う。カラービットマップの場合、関数10642によって、関数10644乃至10654が実行される。関数10644は、それぞれが単一の2色スペクトルからの色のみを含む別々の処理を正当化するために、十分なサイズの1つ又は複数の個々の領域に対してカラー画像をスキャンする。2色スペクトルは、RGBカラーキューブにおけるラインにある色一式に対応する(即ち、赤、緑、青の値によって定義されたカラーキューブは、3つの主要な次元のそれぞれに分布している)。   Function 10642 tests to see if the bitmap is a color bitmap. In the case of a color bitmap, functions 10644 through 10654 are executed by function 10642. Function 10644 scans the color image against one or more individual regions of sufficient size to justify separate processing, each containing only colors from a single two-color spectrum. A two-color spectrum corresponds to a set of colors in a line in the RGB color cube (ie, a color cube defined by red, green, and blue values is distributed in each of the three major dimensions).

個々の処理を正当化するには十分大きいと思われる画像の2色部分のそれぞれに対して、関数10646によって、関数10648及び10650が実行される。関数10648は、画像の現在の部分に於いて、その前景色及び背景色として、その2色スペクトルの最も極端な端部を使用し、それが画像のその部分を縮小する程度を決定するための現在の表示倍率を使用して、図42乃至53に関して上述した種類の2色サブピクセル最適化を実行する。下記の数段落に記載されたステップ10654及び10658に於いて実行されるサブピクセル最適化は、プロキシブラウザの仮想レイアウトに於ける画像の解像度と、薄型クライアントのスクリーン上に表示される解像度との比率である表示倍率によって画像を縮小する。   Functions 10648 and 10650 are performed by function 10646 for each of the two color portions of the image that appear to be large enough to justify the individual processing. Function 10648 uses the most extreme end of the two-color spectrum as its foreground and background colors in the current part of the image and determines how much it will reduce that part of the image. A two-color subpixel optimization of the type described above with respect to FIGS. 42-53 is performed using the current display magnification. The subpixel optimization performed in steps 10654 and 10658 described in the following paragraphs is the ratio of the resolution of the image in the proxy browser virtual layout to the resolution displayed on the thin client screen. The image is reduced by the display magnification which is.

このサブピクセル最適化が実行された後、関数10650は、前景色が色彩的にあまりにもアンバランスであるかどうかを決定する。即ち、それが純粋な赤、緑、又は、青に近いということである。この場合、そうした色の純粋さによって、それがカラー画像の空間解像度を表示可能な精度が低減される。この場合、グレースケール値により似通った対応する色によって、前景色を置換することが可能であり、それ故、より正確な空間解像度を可能にする。   After this subpixel optimization is performed, function 10650 determines whether the foreground color is too chromatically unbalanced. That is, it is close to pure red, green, or blue. In this case, the purity of such a color reduces the accuracy with which it can display the spatial resolution of the color image. In this case, it is possible to replace the foreground color with a corresponding color that more closely resembles the grayscale value, thus allowing more accurate spatial resolution.

本発明の幾つかの実施形態に於いて、そうした前景色の置換は使用されないが、これは、それによってカラー画像の色のバランスが乱されるからである。一般に、前景色がカラー画像全体のかなりの部分に現れていない限り、そうした前景色の置換を使用しない方が良い。小型フォント又は他の形状が最適化されているビットマップ画像によって表現されている場合、そうした色の置換が最もうまくいく。 本発明の他の実施形態に於いて、2色画像に関連付けられた背景色を変更することが出来る。しかし、ウェブページ上で画像の背景色を変更することは、多くの場合勧めることは出来ない。   In some embodiments of the present invention, such foreground color substitution is not used because it disturbs the color balance of the color image. In general, it is better not to use such foreground color replacement unless the foreground color appears in a significant portion of the overall color image. Such color replacement works best when a small font or other shape is represented by an optimized bitmap image. In other embodiments of the present invention, the background color associated with a two-color image can be changed. However, it is often not advisable to change the background color of an image on a web page.

現在の画像の非2色部分のそれぞれに対して、関数10652によって、ステップ10654は、現在の表示倍率でビットマップのその部分に於いて、図14乃至41に関して上記した種類の多色サブピクセル最適化を実行する。   For each non-bicolor portion of the current image, by function 10652, step 10654 causes the multi-color subpixel optimization of the type described above with respect to FIGS. Execute the conversion.

ビットマップ描画ルーチンが呼び出されたビットマップが、グレースケールビットマップである場合、関数10656によって、ステップ10658は、現在の表示倍率で前景色及び背景色として黒及び白を使用するビットマップ上で、2色サブピクセル最適化を実行する。   If the bitmap for which the bitmap drawing routine was called is a grayscale bitmap, then by function 10656, step 10658 causes the current display magnification to use black and white as the foreground and background colors, Perform two-color subpixel optimization.

関数10662は、縮小され、サブピクセル最適化されたビットマップを、固有の画像ID、そのURL、及び、拡大/縮小された幅と高さとともに、画像リストの最後に保存する。   Function 10661 saves the reduced, sub-pixel optimized bitmap with the unique image ID, its URL, and the scaled width and height at the end of the image list.

ビットマップ描画ルーチンが呼び出された画像が予め画像リストに存在したか否かに関わらず、プログラムが関数10664まで進む時までには、それはそのリストに存在し、ID番号、及び、変換された幅及び高さが割り当てられている。この時、関数10664は、ビットマップ描画ルーチンが画像に対して呼び出されたスクリーン位置を、薄型クライアントのスクリーンに適用可能な位置に変換し、次に、画像の画像ID、その変換されたスクリーン位置、及び、ダウンロード表示リストの最後にあるその変換された幅及び高さを有する、図108に図示された種類の画像位置コマンドを保存する。   Regardless of whether the image from which the bitmap rendering routine was called was previously in the image list, by the time the program proceeds to function 10664, it will be present in the list, the ID number, and the converted width And a height is assigned. At this time, the function 10664 converts the screen position at which the bitmap rendering routine is called for the image into a position applicable to the thin client screen, and then the image ID of the image, the converted screen position. And store the image position command of the type illustrated in FIG. 108 with its converted width and height at the end of the download display list.

本発明の幾つかの実施形態に於いて、全てのビットマップ画像は、多色サブピクセル最適化ルーチンを使用して、サブピクセル最適化されている。他の実施形態に於いては、グレースケールビットマップのみが任意の2色サブピクセル最適化処理を受ける。   In some embodiments of the invention, all bitmap images are subpixel optimized using a multicolor subpixel optimization routine. In other embodiments, only the grayscale bitmap is subjected to an optional two-color subpixel optimization process.

本発明の幾つかの実施形態に於いて、ベクトル記述によって定義された形状に対してサブピクセル最適化を実行することによって、ベクトル画像を処理することが出来る。そうした幾つかの実施形態に於いて、サブピクセル最適化がプロキシ上で実行されるが、他の実施形態に於いては、薄型クライアント上で実行される。ベクトル、又は幾何学的に定義された描画の利点の1つは、それらの記述によって画像を表現することが可能であるという簡潔さにある。このように、薄型クライアントに対する回線容量が第一の制限である場合、画像に関するベクトル記述をダウンロードし、その後、薄型クライアントにサブピクセル最適化を使用してそれらをレンダリングさせることはあり得ることである。   In some embodiments of the present invention, vector images can be processed by performing sub-pixel optimization on the shape defined by the vector description. In some such embodiments, subpixel optimization is performed on the proxy, while in other embodiments it is performed on the thin client. One of the advantages of vector or geometrically defined drawing is the simplicity of being able to represent images by their description. Thus, if line capacity for thin clients is the primary limitation, it is possible to download vector descriptions for the images and then have the thin clients render them using sub-pixel optimization. .

幾つかの実施形態に於いて、画像に対して画像認識を実行し、その後、認識された画像を記号表記で薄型クライアントにダウンロードすることが可能である。例えば、多くのウェブページに於いて大きなテキストをビットマップで表示することが一般的である。そうしたビットマップ上で光学的文字認識を実行することができ、該当する文字及びそれらのフォント、又は、それらのフォントの近似が、そのページを記述するために必要な回線容量を低減するために、薄型クライアントに記号的にダウンロードされる。   In some embodiments, it is possible to perform image recognition on an image and then download the recognized image to the thin client in symbolic notation. For example, it is common to display large text in bitmaps on many web pages. Optical character recognition can be performed on such bitmaps, and the corresponding characters and their fonts, or approximations of those fonts, to reduce the line capacity required to describe the page, Downloaded symbolically to thin clients.

スクリーンキャプチャ及びダウンロードルーチンが、例えば、ラジオボタン、チェックボックス、テキストフィールド、又は、ブラウザからのボタンなど、制御オブジェクトを生成するルーチンに対する呼び出しを受信する場合、図106Cに図示された制御生成ルーチン10666によって、関数10667乃至10670が実行される。関数10667は、ブラウザが描画される制御を要求したスクリーン位置を、それが薄型クライアントのスクリーンに描画される位置に変換する。図108に図示されているように、関数10668は、対応するテキストラベルを含むダウンロード表示リストに対応する制御生成コマンドをセットし、関数10670は制御オブジェクトの対応するブラウザ側の部分を生成する。   If the screen capture and download routine receives a call to a routine that creates a control object, such as a radio button, check box, text field, or button from a browser, for example, by the control generation routine 10666 illustrated in FIG. , Functions 10667 to 10670 are executed. Function 10667 translates the screen location that the browser requested control of rendering to the location where it was rendered on the thin client's screen. As illustrated in FIG. 108, function 10668 sets a control generation command corresponding to a download display list that includes a corresponding text label, and function 10670 generates a corresponding browser-side portion of the control object.

本発明の本実施形態に於いて、薄型クライアントのスクリーンに表示された制御オブジェクトの機能性は、プロキシと薄型クライアントとの間で共有されている。例えば、チェックボックスがチェックされたかどうか、どのラジオボタン一式が押下されたかどうか等の状態情報は、薄型クライアントに保存されている。これにより、ユーザが制御オブジェクトに情報を入力する度に、薄型クライアントからプロキシに通信する必要性が回避される。一般に、クライアントがそうしたサーバへの中継のために、そうした情報をプロキシに送信する必要があるのは、そうした制御に対して保存された情報が、元々ウェブページを生成したリモートサーバコンピュータに送信されることを示す、何らかのボタンをユーザがクリックする場合に限られる。   In this embodiment of the present invention, the functionality of the control object displayed on the thin client screen is shared between the proxy and the thin client. For example, state information such as whether a check box is checked and which set of radio buttons is pressed is stored in the thin client. This avoids the need to communicate from the thin client to the proxy each time the user enters information into the control object. In general, a client needs to send such information to a proxy for relay to such a server because the information stored for that control is sent to the remote server computer that originally generated the web page. This is limited to the case where the user clicks on any button indicating that this is the case.

薄型クライアントにリンクする、より高い回線容量を有する本発明の他の実施形態に於いて、プロキシ上で実行される個々の制御オブジェクトに関連付けられた機能性をより多く、又は、実質的に全て有することによって、薄型クライアントのコードを簡略化することが望ましい。   In other embodiments of the present invention that have higher line capacity linked to thin clients, have more or substantially all the functionality associated with individual control objects running on the proxy Thus, it is desirable to simplify the thin client code.

スクリーンキャプチャ、及び、ダウンロードルーチンが、図106Aの関数10602によって要求されたスクリーン再描画の完了を決定する場合、図106Cの関数10672によって、関数10674が図107に図示されたダウンロード表示リストルーチン10700を呼び出す。   If the screen capture and download routine determines completion of the screen redraw requested by function 10602 of FIG. 106A, function 10672 of FIG. 106C causes function 10474 to execute the download display list routine 10700 illustrated in FIG. call.

図107に示すように、ダウンロード表示リストルーチンは、ダウンロードストリームで新たな薄型クライアントのスクリーン上に新たに全部又は一部が表示される、ダウンロード表示リストに全ての要素をセットする関数10702を含んでいる。通常、これは、現在のビューウインドウ内で発生するブラウザの仮想スクリーンに於ける任意の要素を含んでいる。しかしながら、以下で説明するように、薄型クライアントのスクリーン上で先のビットマップのかなりの部分を再利用可能なスクロールの場合に於いては、薄型クライアントスクリーンの現在のビットマップの再利用可能な部分に存在しないビューウインドウの部分に於いて、少なくとも部分的に発生する要素のみがダウンロードストリームにセットされる。   As shown in FIG. 107, the download display list routine includes a function 10702 that sets all elements in the download display list, all or part of which is newly displayed on the new thin client screen in the download stream. Yes. This typically includes any element in the browser's virtual screen that occurs within the current view window. However, as described below, in the case of scrolling where a significant portion of the previous bitmap can be reused on the thin client screen, the reusable portion of the current bitmap on the thin client screen. Only those elements that occur at least partially in the portion of the view window that do not exist in the download stream are set in the download stream.

本発明の多くの実施形態に於いて、ダウンロード表示リストを生成する図106A乃至106Cの関数は、それがビューウインドウ内に適合しない場合、ダウンロード表示リスト上の要素を入力しない。他の実施形態に於いて、このフィルタリングは関数10702に於いて行われる。   In many embodiments of the present invention, the function of FIGS. 106A-106C that generates a download display list does not enter an element on the download display list if it does not fit within the view window. In other embodiments, this filtering is performed in function 10702.

本発明の多くの実施形態に於いて、薄型クライアントスクリーン内に実際に適合するそうした要素の部分のみをダウンロードするために、ダウンロードされる要素が切り取られる。これは、ダウンロードに必要なビット数を低減するという利点を有するが、演算の複雑化を招く。   In many embodiments of the present invention, the downloaded element is clipped to download only those portions of the element that actually fit within the thin client screen. This has the advantage of reducing the number of bits required for download, but it complicates the operation.

薄型クライアントスクリーン上に表示されるダウンロード表示リスト上の全ての要素がダウンロードストリームにセットされた時点で、図108に於ける数字項目10818によって示されているように、関数10704は、ダウンロードストリームに於ける対応する画像位置コマンドを有する全ての画像のビットマップを、ダウンロードストリームの最後に設置する。そうしたビットマップをダウンロードストリームの最後にセットする前に、本発明の幾つかの実施形態はそれらに非可逆圧縮を実行する。幾つかの実施形態に於いて、使用されるアルゴリズムは、緑の色値の差異が赤の色値の差異に比してより知覚可能であり、赤の色値の差異が青の色値の差異に比してより知覚可能である事実を考慮したメトリックを使用し、画像中の色値を、RGB色値に於ける視覚的に知覚不能な差異を有する色のクラスタに集合させるアルゴリズムである。   When all elements on the download display list displayed on the thin client screen are set in the download stream, the function 10704 is set in the download stream, as indicated by the numeric item 10818 in FIG. Bitmaps of all images with corresponding image position commands are placed at the end of the download stream. Prior to setting such bitmaps at the end of the download stream, some embodiments of the present invention perform lossy compression on them. In some embodiments, the algorithm used is that the difference in green color value is more perceptible than the difference in red color value, and the difference in red color value is An algorithm that uses a metric that takes into account the fact that it is more perceptible compared to the difference and aggregates the color values in the image into clusters of colors that have visually unperceivable differences in RGB color values. .

次に関数10705は、可逆圧縮アルゴリズムを使用して、非可逆アルゴリズムによって以前圧縮された画像を含むダウンロードストリームを圧縮する。この目的のために、標準的な従来技術の可逆圧縮アルゴリズムを使用することが出来る。   Function 10705 then uses a lossless compression algorithm to compress the download stream containing the images previously compressed by the lossy algorithm. For this purpose, standard prior art lossless compression algorithms can be used.

図108は、そうしたダウンロード表示ストリームに関する概略図である。幾つかの実施形態に於いて、そうしたストリームは実際にはマークアップ言語を使用して表現される。   FIG. 108 is a schematic diagram regarding such a download display stream. In some embodiments, such a stream is actually represented using a markup language.

図108に図示されたフォントコマンド10812は、図106Aの関数10623による表示リストに記録されたフォントコマンドを表している。   A font command 10812 illustrated in FIG. 108 represents a font command recorded in the display list by the function 10623 in FIG. 106A.

図108の文字列コマンド10814は、図106Aのステップ10624によるダウンロード表示リストに記録されたコマンドを表している。   A character string command 10814 in FIG. 108 represents a command recorded in the download display list in step 10624 in FIG. 106A.

図108の背景色コマンド10806は、図106Aに図示された関数10632によって入力された背景色コマンドを表している。   A background color command 10806 in FIG. 108 represents a background color command input by the function 10632 illustrated in FIG. 106A.

図108の矩形コマンド10808は、図106Aの関数10634によって保存された矩形情報を表している。   A rectangle command 10808 in FIG. 108 represents the rectangle information saved by the function 10634 in FIG. 106A.

図108に図示された画像位置コマンド10810は、図106Bの関数10664によって記録された画像位置コマンドを表している。   The image position command 10810 illustrated in FIG. 108 represents the image position command recorded by the function 10664 of FIG. 106B.

図108の制御コマンド10816は、図106Cの関数10668によってダウンロード表示リストにセットされた制御コマンドを表している。   A control command 10816 in FIG. 108 represents a control command set in the download display list by the function 10668 in FIG. 106C.

ここで図107を再び参照すると、ダウンロードストリームに対する全ての要素が選択され、送信する準備が完了する時点で、関数10706は、ブラウザコンピュータと薄型クライアントとの間のソケット接続を開き、次に、関数10708は、薄型クライアントに、ダウンロードストリームの表示リスト情報を送信する。次に、薄型クライアントは、図109A乃至109Cに関して以下で詳細に記載するように、情報を表示する。   Referring back to FIG. 107, once all elements for the download stream have been selected and are ready to be sent, function 10706 opens a socket connection between the browser computer and the thin client, and then the function 10708 transmits the display list information of the download stream to the thin client. The thin client then displays the information as described in detail below with respect to FIGS. 109A-109C.

ここで図106Cを再び参照すると、関数10674に於けるダウンロード表示リストルーチンへの呼び出しが完了する時点で、関数10676は表示リストをクリアし、薄型クライアントにダウンロードされる次のスクリーンに対して、新たな表示リストを生成することが可能である。   Referring now again to FIG. 106C, upon completion of the call to the download display list routine in function 10474, function 10676 clears the display list, and for the next screen downloaded to the thin client, a new one is displayed. Display lists can be generated.

ここで図105Aを再び参照すると、同図に図示された関数10510によって呼び出されたスクリーンキャプチャ及びダウンロードルーチンの完了については今説明した通りである。   Referring again to FIG. 105A, the completion of the screen capture and download routine called by function 10510 illustrated in FIG. 105 is as just described.

図105Aに図示されているように、ブラウザのプロキシコードが、薄型クライアントのスクリーン上に表示された1つ又は複数の制御オブジェクトの状態に関してブラウザコードの他の部分からクエリを受信する場合、関数10514によって、関数10516及び10518が実行される。関数10516は、その一つ又は複数の制御オブジェクトの状態に関して、薄型クライアントにクエリを送信する。そうした状態情報を薄型クライアントから受信する場合、関数10518は、そうした状態情報に対する要求を行ったプログラムにそれを戻す。   If the browser proxy code receives a query from another part of the browser code regarding the state of the one or more control objects displayed on the thin client screen, as illustrated in FIG. Thus, functions 10516 and 10518 are executed. Function 10516 sends a query to the thin client regarding the state of the one or more control objects. If such state information is received from the thin client, function 10518 returns it to the program that made the request for such state information.

図106Cの関数10666乃至10670に関して上述したように、本発明のこの実施形態は、そうした制御が表示されるウェブページのウェブサイトに送信されたそうした状態情報を有する選択を行う前に、ユーザが情報を変更するので、通信回線容量を低減するために、例えばラジオボタン、チェックボックス、及びテキスト入力フィールドなど、個々の制御オブジェクトに関する状態情報について実際にクライアントに描画及び保存をさせる。一般に、ユーザが送信ボタンをクリックする場合、関連するクリックイベントがプロキシコンピュータまで送信され、それによりスクリーン座標が仮想レイアウトスクリーン上に於ける対応する座標に変換され、次に、仮想スクリーン解像度を有し、ブラウザが表示していると見なすスクリーン上であたかもクリックイベントが生成されているかのように、そのクリックイベントに対応するためのブラウザコードに対して、ブラウザのイベント待ち行列にそれがセットされる。これが実行される時点で、ブラウザコードは従来、現在のウェブページの全ての制御オブジェクトに関する状態を要求し、これにより、現在のウェブページが由来するウェブサーバに情報が戻ることを知らせることが出来る。関数10514乃至10518の操作を引き起こすのは、そうした要求である。   As described above with respect to functions 10666 to 10670 in FIG. 106C, this embodiment of the present invention allows the user to make a selection before making a selection with such status information sent to the website of the web page on which such control is displayed. Therefore, in order to reduce the communication line capacity, for example, the client actually draws and saves state information regarding individual control objects such as radio buttons, check boxes, and text input fields. In general, when the user clicks the submit button, the associated click event is sent to the proxy computer, which converts the screen coordinates to the corresponding coordinates on the virtual layout screen, and then has the virtual screen resolution. The browser code for responding to the click event is set in the browser's event queue as if the click event had been generated on the screen that the browser assumed to be displaying. When this is done, the browser code conventionally requests the state for all control objects of the current web page, thereby notifying the web server from which the current web page is derived that the information is returning. It is such a request that causes the operation of functions 10514 to 10518.

ブラウザのプロキシコードがスクロール又は移動コマンドを薄型クライアントから受信する場合、関数10520によって、図105Aの関数10522乃至10534が実行される。   When the browser proxy code receives a scroll or move command from the thin client, function 10520 causes functions 10522 through 10534 of FIG. 105A to be executed.

関数10522は、スクロール又は移動に対応して、図102に図示されたビューウインドウ10210をブラウザのレイアウト10206に関連して移動させる。次に、関数10526は、移動前にビューウインドウに存在したビューウインドウの任意のかなりの部分が、移動後に未だビューウインドウに存在するかどうかを確認するためにテストを行う。かなりの部分がビューウインドウに存在する場合、このことは、薄型ブラウザスクリーン上に現在表示されているビットマップの実質的な部分が、要求されたスクロール又は移動の実行後に、表示に於いて再利用可能であることを意味する。この場合、関数10528は、図108に於けるダウンロードストリームの最上部付近に図示されたスクロールコマンド10804を、スクロールされたスクリーンに対して生成される新しい表示リストの開始位置にセットする。そうしたスクロールコマンドは、薄型クライアントの画面の以前のスクリーンビットマップのどの部分を再利用するかを示すXYシフト値を含んでいる。   Function 10522 moves the view window 10210 illustrated in FIG. 102 relative to the browser layout 10206 in response to scrolling or moving. The function 10526 then tests to see if any significant portion of the view window that was present in the view window before the move is still present in the view window after the move. If a significant portion is present in the view window, this means that a substantial portion of the bitmap currently displayed on the thin browser screen can be reused in the display after performing the requested scroll or move. It means that it is possible. In this case, function 10528 sets the scroll command 10804 illustrated near the top of the download stream in FIG. 108 to the starting position of the new display list generated for the scrolled screen. Such a scroll command includes an XY shift value indicating which portion of the previous screen bitmap of the thin client screen is to be reused.

図108に於いて、クリアコマンド10802及びスクロールコマンド10804は、ダウンロードストリームの開始位置に図示されており、これにより、両コマンドを説明することが出来る。本実施形態に於いて、2つのコマンドの内、クリアコマンド又はスクロールコマンドの一つだけが所定のダウンロードストリームを開始し、クリアコマンドは、薄型クライアントのスクリーンが全体的に再描画される場合に使用され、スクロールコマンドは、薄型クライアントの先のビットマップの部分が新しいスクリーンで再利用するためにシフトされる場合に使用される。   In FIG. 108, a clear command 10802 and a scroll command 10804 are shown at the start position of the download stream, and thus both commands can be explained. In this embodiment, only one of the two commands, the clear command or the scroll command, starts a predetermined download stream, and the clear command is used when the thin client screen is entirely redrawn. And the scroll command is used when the portion of the thin client's previous bitmap is shifted for reuse on a new screen.

以前ダウンロード及び描画が実行され、スクロールコマンドを使用可能となる、スクリーン表示の実質的な部分を再利用することによって位置を比較的小さく変更することを含むスクロールに於いて、薄型クライアントにダウンロードされるデータ量を実質的に低減することが出来る。例えば、本出願の出願時点に於いて一般的な、比較的低速度のデジタル携帯電話リンクを介してブラウザと薄型クライアントが通信する状況など、特に、ブラウザと薄型クライアント間の回線容量が制限されている状況に於いて、これは、スクロールされたスクリーンが薄型クライアント上に表示可能な割合を実質的に向上させることが出来る。   Downloaded to a thin client in a scroll that involves a relatively small change in position by reusing a substantial portion of the screen display, previously downloaded and rendered, enabling scroll commands The amount of data can be substantially reduced. For example, when a browser and a thin client communicate via a relatively low-speed digital cellular phone link, which is common at the time of filing of this application, the line capacity between the browser and the thin client is particularly limited. In certain circumstances, this can substantially improve the rate at which scrolled screens can be displayed on thin clients.

スクロールコマンド又は移動コマンドの結果生じる移動されたビューウインドウが、図102に概略的に図示された、仮想スクリーン10206に現在存在しないウェブページのレイアウトの部分を含む場合、図105Aの関数10530によって、関数10532及び10534が実行される。関数10532は、ビューウインドウの全てがブラウザの仮想スクリーン内に含まれるように、ブラウザの仮想スクリーンをスクロールさせ、次に、関数10534が新たに移動された仮想スクリーンに対して、ブラウザからの再描画を要求する。この描画が完了する時点で、関数10506及び10510は、図106A乃至106Cに関して上述されているように、新たに描画された要素を取り込み、描画する。   If the moved view window resulting from the scroll or move command includes a portion of the layout of the web page that does not currently exist on the virtual screen 10206, schematically illustrated in FIG. 102, the function 10530 of FIG. 10532 and 10534 are executed. Function 10532 scrolls the browser virtual screen so that all of the view windows are contained within the browser virtual screen, and then function 10534 redraws from the browser for the newly moved virtual screen. Request. Upon completion of this drawing, functions 10506 and 10510 capture and draw the newly drawn elements as described above with respect to FIGS. 106A-106C.

ブラウザのプロキシが薄型クライアントからズームコマンドを受信する場合、図105Aの関数10536によって、関数10538乃至10552が実行される。   When the browser proxy receives a zoom command from the thin client, functions 10538 through 10552 are executed by function 10536 in FIG. 105A.

関数10538は、ズーム変更に従って表示倍率を変更する。   A function 10538 changes the display magnification according to the zoom change.

関数10540は、選択されたズームに従って、ビューウインドウをブラウザの仮想ウインドウに関連して拡大/縮小する。   Function 10540 scales the view window relative to the browser virtual window according to the selected zoom.

関数10542は、拡大/縮小されたビューウインドウが仮想スクリーン内に現在含まれていないウェブページのレイアウトの部分を含むかどうかを確かめるためにチェックを行う。ウェブページのレイアウト部分を含む場合、関数10542によって、関数10544が仮想スクリーンをスクロールする、又は、縮尺ビューウインドウを仮想スクリーン内に適合させるために解像度を変更する。   Function 10542 checks to see if the scaled view window includes a portion of the web page layout that is not currently included in the virtual screen. When including the layout portion of the web page, function 10542 causes function 10544 to scroll the virtual screen or change the resolution to fit the scale view window within the virtual screen.

仮想スクリーンをスクロールすることによって、新しいビューウインドウが仮想スクリーンに適合することが出来る場合、ウェブページを再びレイアウトする必要がなく、仮想スクリーン内にある異なる場所を表示すること、及び/又は、異なる倍率で仮想スクリーン表示することによって、ズーム前に存在した同一レイアウトを表示するために、ズームを使用することが出来る。しかし、ズームが、図105Aに図示された実施形態に於いて、ビューウインドウを仮想スクリーンサイズに比して大きくするズームアウトである場合、プロキシブラウザはクライアント上に表示されたビューウインドウの任意の部分に供給された任意の入力を、それがあたかもプロキシブラウザの仮想スクリーン上の対応する位置で発生したかのように処理することが出来るように、ビューウインドウが仮想スクリーン内に完全に適合可能な新たな仮想スクリーンサイズで、ウェブページを表示することが必要となる。記載されている実施形態に於いて、新しい仮想スクリーン解像度が先のレイアウトに於いて使用されたレイアウト解像度に比して大きい場合、これによりウェブページは新しいレイアウトで表示され、異なる位置で改行させることが出来る
例えば、プロキシブラウザがパッチを適用されるというよりは、ズームされた表示をサポートするために設計された実施形態、レイアウト全体のダウンロードに関連してクライアントが直接ズームを行う図115に関して上述された実施形態など、本発明に関する他の実施形態に於いて、極端なズームアウトはウェブページの再レイアウトを必要としない。
By scrolling the virtual screen, if the new view window can fit into the virtual screen, there is no need to lay out the web page again, displaying different locations within the virtual screen, and / or different magnifications With the virtual screen display, the zoom can be used to display the same layout that existed before the zoom. However, in the embodiment illustrated in FIG. 105A, if the zoom is a zoom out that enlarges the view window relative to the virtual screen size, the proxy browser may allow any part of the view window displayed on the client. A new view window that can be fully adapted to fit within the virtual screen so that any input supplied to it can be processed as if it occurred at the corresponding location on the proxy browser's virtual screen. It is necessary to display a web page with a large virtual screen size. In the described embodiment, if the new virtual screen resolution is larger than the layout resolution used in the previous layout, this causes the web page to be displayed in the new layout, causing line breaks at different positions. For example, an embodiment designed to support zoomed display rather than a proxy browser being patched, described above with respect to FIG. 115 where the client zooms directly in relation to downloading the entire layout. In other embodiments related to the present invention, such as the embodiment, extreme zoom-out does not require web page re-layout.

最後に、関数10552は、スクリーン再描画を呼び出す。これにより、スクリーンキャプチャ及びダウンロードルーチンが、新しいズーム倍率で現在のビューウインドウの再描画を取得し、対応する表示情報を薄型クライアントにダウンロードするので、新しいズーム設定でウェブページを表示することが出来る。   Finally, function 10552 calls screen redraw. As a result, the screen capture and download routine acquires a redraw of the current view window at the new zoom magnification and downloads the corresponding display information to the thin client, so that the web page can be displayed with the new zoom setting.

図105Bに示されているように、ブラウザのプロキシが薄型クライアントから仮想解像度変更コマンドを受信する場合、関数10554によって、関数10556乃至10560が実行される。関数10556は、図102に図示された仮想解像度制御10214に保存されたブラウザの仮想スクリーン解像度を要求された解像度に変更する。次に、ステップ10560は、スクリーン再描画を要求する。これは、ブラウザが新しい仮想スクリーン解像度で現在のウェブページを再びレイアウトし、ビューウインドウが薄型クライアントスクリーン上に有するピクセル数に対する、ビューウインドウが仮想スクリーンに有するピクセル数の比率に対応する表示の倍率で、仮想スクリーンの全てを再描画するからである。   As shown in FIG. 105B, when the browser proxy receives the virtual resolution change command from the thin client, the functions 10556 to 10560 are executed by the function 10554. Function 10556 changes the virtual screen resolution of the browser stored in the virtual resolution control 10214 illustrated in FIG. 102 to the requested resolution. Next, step 10560 requests a screen redraw. This is the display magnification corresponding to the ratio of the number of pixels the view window has on the virtual screen to the number of pixels the view window has on the thin client screen when the browser lays out the current web page again at the new virtual screen resolution. This is because the entire virtual screen is redrawn.

仮想解像度に於けるそうした変更によって、そうしたレイアウト内の画像及びテキストのサイズに関連してレイアウトが実行されるサイズを変更する。ユーザが、サイズに於けるそうした変更をキャンセルする仮想スクリーンに関連して、ビューウインドウの相対的なサイズに於ける変更をユーザが行わない限り、相対的なレイアウトサイズに於けるそうした変更によって、スクリーン上に表示される画像及びテキストのサイズを変更する。相対的なビューウインドウサイズに於けるそうした補償的な変更がない場合、仮想解像度を低減することによって、画像及びテキストがスクリーン上に表示されるサイズを大きくし、テキストラインのより多くをより大きなテキストサイズで一度にスクリーン上に適合させるように、それらに表示されたフォントのサイズに関連して、テキストラインをより短くする傾向がある。それ故、ある特定の種類のズーム機能をウェブページの表示に供給するために、仮想レイアウトサイズに於ける変更を使用することが出来る。   Such a change in virtual resolution changes the size at which the layout is performed relative to the size of the images and text in such a layout. Unless the user makes a change in the relative size of the view window in relation to a virtual screen that cancels such a change in size, such a change in the relative layout size will cause the screen to change. Change the size of the image and text displayed above. In the absence of such compensatory changes in the relative view window size, reducing the virtual resolution increases the size at which images and text are displayed on the screen, allowing more text lines to be larger text. There is a tendency to make the text lines shorter in relation to the size of the fonts displayed on them to fit on the screen at a time in size. Therefore, changes in the virtual layout size can be used to provide a certain type of zoom function to the display of the web page.

発明者は、倍率2でレイアウトを縮小することを含む、典型的なPDAのサイズである320×240スクリーン上にウェブページを表示する際に、640×480の仮想スクリーンを使用して、極めて良好な可読性を供給することが出来るということを発見した。しかしながら、より大きな解像度表示に対して表示された場合に、ウェブページがどのように見えるかをユーザが見ることが出来るようにするためには、可読性が犠牲になるとしても、例えば、PDAサイズの320×240画面上に800×600の仮想スクリーン解像度を表示する場合など、ウェブページをさらに低減された縮尺で表示することに本発明を利用することが出来る。言うまでもなく、ページのレイアウトは、結果的に生じるフォントサイズに於ける相対的な増大のために、そうした解像度で表示するために元々意図したレイアウトとは全く異なるが、最小フォントサイズが制限されることをユーザが選択する場合、図106Aの関数10614に関して上述されたように、より大きな仮想解像度を有するテキストでさえ、読み取り可能なフォントで表示される。   The inventor is very good at using a 640x480 virtual screen when displaying a web page on a 320x240 screen, which is a typical PDA size, including reducing the layout by a factor of 2 I found out that it can provide easy readability. However, in order to allow the user to see how the web page will look when displayed against a larger resolution display, even if readability is sacrificed, for example PDA size The present invention can be used to display a web page at a further reduced scale, such as when displaying a 800 × 600 virtual screen resolution on a 320 × 240 screen. Needless to say, the layout of the page is quite different from the layout originally intended to display at such resolutions due to the relative increase in the resulting font size, but the minimum font size is limited. , Even text with a larger virtual resolution is displayed in a readable font, as described above with respect to function 10614 of FIG. 106A.

図105Bの関数10562によって示されているように、ブラウザのプロキシコードが、薄型クライアントのスクリーン上でのクリックに関連して薄型クライアントから他のユーザ入力を受信する場合、関数10564は、仮想スクリーン上の対応する位置に対するクリックに関連して、薄型クライアントスクリーンの位置を変換し、殆どのブラウザのコードが、それがレイアウトしていると見なす仮想スクリーン上でユーザが実際にクリックしたかのように、ブラウザがイベントに対応することが出来るように、関数10566はこのイベントをブラウザのイベント待ち行列に中継する。   If the browser proxy code receives other user input from the thin client in connection with a click on the thin client screen, as indicated by function 10562 of FIG. 105B, the function 10564 is displayed on the virtual screen. In response to a click on the corresponding position of the, it converts the position of the thin client screen, as if most of the browser code actually clicked on the virtual screen it considered to be laying out Function 10566 relays this event to the browser's event queue so that the browser can respond to the event.

これが、ウェブリンクがテキストリンクであろうと画像リンクであろうと、薄型クライアント上に表示されたウェブページ上のウェブリンクを選択するために、プロキシ上のブラウザが薄型クライアントのユーザからの入力に対応する方法である。例えば、ユーザが薄型クライアントスクリーン上に表示されたリンクをクリックする場合、それが表示していると見なす仮想スクリーンに於ける同一リンクをユーザがクリックしたかのように動作するプロキシ上のブラウザに対応するクリックが中継される。次に、プロキシのブラウザは、リンクに対応してインターネットを介してHTTP要求を発することによって対応する。そのリンクに対応するウェブページが受信される場合、ブラウザはそれを仮想画面上にレイアウトし、表示しようとし、これによって、図105Aの関数10506及び10510が、ビューウインドウに対応するレイアウトのその部分に含まれた情報を取り込み、そのスクリーン上に表示するために薄型クライアントにそれをダウンロードさせる。その結果、薄型クライアントのユーザは、通常のブラウズコンピュータのユーザと略同一の方法で、ウェブをブラウズすることができる。   Whether this is a text link or an image link, the browser on the proxy responds to input from the thin client user to select the web link on the web page displayed on the thin client Is the method. For example, if a user clicks on a link displayed on a thin client screen, it supports a browser on a proxy that behaves as if the user clicked on the same link on the virtual screen that it considers displayed Click to be relayed. The proxy browser then responds by issuing an HTTP request over the Internet in response to the link. If a web page corresponding to the link is received, the browser will attempt to lay it out on the virtual screen and display it, so that functions 10506 and 10510 in FIG. 105A are placed in that portion of the layout corresponding to the view window. Capture the contained information and let the thin client download it for display on its screen. As a result, thin client users can browse the web in much the same way as regular browse computer users.

図109A乃至109Cは、薄型クライアントコンピュータのユーザがそのスクリーンを使用して、ワールドワイドウェブ(WWW)をブラウズ出来るように、プロキシブラウザに関連して動作するのに役立つように設計された、薄型クライアントコンピュータ上に於けるコード10900に関する高度に簡略化された擬似コード表記である。   FIGS. 109A-109C illustrate a thin client designed to help work in conjunction with a proxy browser so that a thin client computer user can use its screen to browse the World Wide Web (WWW). A highly simplified pseudo code notation for code 10900 on a computer.

図109Aの関数10902は、図107の関数10708によって薄型クライアントに送信されたダウンロードストリームの全て又は最初の部分の受信に対応する。関数10902は、受信される順番でそのストリームに含まれた、図108に図示された種類の個々のコマンドへの対応を開始することにより、このような対応を行う。ダウンロードストリームが完全に受信されるまで、新しいスクリーンの描画作業を遅延する必要がないように、関数10902は、1つ又は複数のコマンドが受信され次第、これを開始する。ダウンロードストリームに含まれた各種異なるコマンドへの対応については、図109A乃至109Bに於いて数字10904乃至10956が付与された関数によって示されている。   The function 10902 of FIG. 109A corresponds to the reception of all or the first part of the download stream sent to the thin client by the function 10708 of FIG. The function 10902 performs such a response by starting to respond to individual commands of the type illustrated in FIG. 108 that are included in the stream in the order in which they are received. The function 10902 starts as soon as one or more commands are received so that the drawing work for a new screen does not need to be delayed until the download stream is completely received. Correspondence to various different commands included in the download stream is indicated by functions to which numerals 10904 to 10956 are assigned in FIGS. 109A to 109B.

関数10904及び10906によって示されているように、薄型クライアントがダウンロードストリームに於けるクリアコマンドを読み取る場合、例えば、全体的に白の値に設定されることによって、スクリーン上に表示されたビットマップがクリアされる。   When the thin client reads a clear command in the download stream, as indicated by functions 10904 and 10906, the bitmap displayed on the screen is set, for example, by setting it to a generally white value. Cleared.

薄型クライアントが、ダウンロードストリームに於けるスクロールコマンドを読み取る場合、関数10908によって、関数10910及び10912が実行される。関数10910は、コマンドに含まれたXYシフト値によって示されたスクリーン上の新しい位置へのスクロールコマンドに於いて指定されたスクロールの後で再利用される薄型クライアントスクリーンのビットマップの一部をコピーする。そして、関数10912は、スクリーンの残りの部分をクリアする。   When the thin client reads a scroll command in the download stream, functions 10910 and 10912 are executed by function 10908. Function 10910 copies a portion of the thin client screen bitmap that will be reused after the scroll specified in the scroll command to the new position on the screen indicated by the XY shift value included in the command. To do. Function 10912 then clears the remaining portion of the screen.

薄型クライアントが、ダウンロードストリームに於ける背景色コマンドを読み取る場合、関数10914及び10916は、現在の矩形背景色変数を、コマンドで指定された色に設定する。これにより、背景色の値が変更されるまで、矩形コマンドに対応して薄型クライアントによって描画された全ての矩形は、その特定の色値を有する。   When the thin client reads a background color command in the download stream, functions 10914 and 10916 set the current rectangular background color variable to the color specified by the command. Thus, until the background color value is changed, all rectangles drawn by the thin client corresponding to the rectangle command have the specific color value.

薄型クライアントがダウンロードストリームに於ける矩形コマンドを読み取る場合、関数10918及び10920は、現在の背景色を使用し、コマンドに於いて指定されたスクリーン位置、幅、及び、高さを有する矩形を描画する。   When the thin client reads a rectangle command in the download stream, functions 10918 and 10920 use the current background color and draw a rectangle with the screen position, width, and height specified in the command. .

薄型クライアントが画像位置コマンドを読み取る場合、関数10922及び10923はこの時点で何も実行しない。これは、通常、そうした画像位置コマンドに於いて参照された画像を描画するために必要なビットマップが、そうした場合に受信されていないからである。他の実施形態に於いて、ブラウザは矩形描画コマンドを画像に関連付け、これにより、画像に関連付けられたブラウザスクリーンの一部が、ビットマップ画像の表示位置を示す画像上に描画された矩形を有することになる。   If the thin client reads an image position command, functions 10922 and 10923 do nothing at this point. This is because the bitmap required to render the image referenced in such an image position command is usually not received in such a case. In another embodiment, the browser associates a rectangle drawing command with the image so that a portion of the browser screen associated with the image has a rectangle drawn on the image that indicates the display position of the bitmap image. It will be.

薄型クライアントがフォントコマンドを読み取る場合、関数10924及び10926は、フォントコマンドに記載された全てのフォント属性を、そのコマンドに於けるそれらの属性に対して記載された値に設定する。   When the thin client reads a font command, functions 10924 and 10926 set all the font attributes listed in the font command to the values listed for those attributes in the command.

本発明の異なる実施形態に於いて、異なるフォント属性を使用することが出来る。少なくとも、フォントファミリー、フォントサイズ、及び、フォントの前景色が、フォント属性でサポートされることが好ましい。   Different font attributes can be used in different embodiments of the invention. At least the font family, font size, and font foreground color are preferably supported in the font attributes.

薄型クライアントがダウンロードストリームに於ける文字列コマンドを読み取る場合、関数10928によって、関数10930乃至10940が実行される。   When the thin client reads a character string command in the download stream, functions 10930 to 10940 are executed by the function 10928.

関数10930は、薄型クライアントがフォントビットマップキャッシュに於いて、現在のフォント属性値によって指定された現在のサイズ及びフォントファミリーに於ける現在の文字列の各文字に対するビットマップを有するかどうかを確認するためにテストを行う。このビットマップを有していない場合、関数10932乃至10936が実行される。   Function 10930 determines whether the thin client has a bitmap in the font bitmap cache for each character of the current string in the current size and font family specified by the current font attribute value. To test. If it does not have this bitmap, functions 10932 through 10936 are executed.

関数10932は、図2に関して上述したフォントサーバ134に、クライアントのインターネット接続を介してHTTP要求を送信する。要求されたフォントがフォントサーバから受信される場合、関数10934及び10936は、それを薄型クライアントのフォントビットマップキャッシュにセットする。   Function 10932 sends an HTTP request over the client's Internet connection to font server 134 described above with respect to FIG. If the requested font is received from the font server, functions 10934 and 10936 set it in the thin client's font bitmap cache.

注目すべきは、本発明の幾つかの実施形態では、関数10930及び10936を使用する必要がないように、薄型クライアントブラウザソフトウェアの一部として、永続的にフォントビットマップを十分に保存することである。他の実施形態に於いては、図109Aに図示された例に於けるフォントビットマップに図示されているように、サブピクセル最適化フォントアウトラインは、薄型クライアントによって永続的に保存されるか、必要に応じて要求される。   It should be noted that in some embodiments of the present invention, the font bitmap is permanently saved as part of the thin client browser software so that the functions 10930 and 10936 need not be used. is there. In other embodiments, as illustrated in the font bitmap in the example illustrated in FIG. 109A, the subpixel optimized font outline is either permanently stored or required by the thin client. As required.

薄型クライアントが現在の文字列をレンダリングするために必要なフォントビットマップの全てを有する場合、関数10938及び10940は、前景色を含む現在のフォント属性値を使用して、文字列を指定されたスクリーン位置でスクリーン上に描画する。現在の実施形態に於いて、フォントビットマップは、図60、96、97に関して上述された種類のアルファ値ビットマップとして表される。そのように実行する場合、文字列が描画されるスクリーンビットマップの一部から、背景色が抽出される。   If the thin client has all of the font bitmaps needed to render the current string, functions 10938 and 10940 use the current font attribute value, including the foreground color, to specify the string for the specified screen. Draw on the screen at the position. In the current embodiment, the font bitmap is represented as an alpha value bitmap of the type described above with respect to FIGS. When executed in this manner, the background color is extracted from a part of the screen bitmap on which the character string is drawn.

幾つかの実施形態に於いて、演算を低減するために、文字列が描画されるスクリーンの部分の色値は、比較的少ない数のポイントでサンプリングされ、これらのサンプリングされた色値の平均値は、図97に関して上述しているように、文字列表示全体に対する背景色として使用される。   In some embodiments, to reduce computation, the color value of the portion of the screen on which the string is drawn is sampled at a relatively small number of points and the average of these sampled color values. Is used as the background color for the entire character string display, as described above with respect to FIG.

記載されている実施形態に於いて、ダウンロードストリームに含まれる文字列の全ては、単一のラインテキスト文字列であり、これらの多くがプロキシブラウザのレイアウトエンジンによるライン境界を越えた連続テキストのラッピングから生じている。結果として、この実施形態では、薄型クライアントがそうしたテキストの任意のラッピングを実行する必要はない。   In the described embodiment, all of the strings contained in the download stream are single line text strings, many of which are continuous text wrapping across line boundaries by the proxy browser layout engine. Arising from. As a result, in this embodiment, the thin client need not perform any wrapping of such text.

関数10940は、文字列のビットマップ画像を、文字列の文字に対応する別々の複数のフォントビットマップで構成することによって描画する。通常、そうした構成では、各種別々の文字は、異なる別々のフォントビットマップによって表される。   The function 10940 draws a bitmap image of a character string by composing a plurality of different font bitmaps corresponding to the characters of the character string. Usually, in such a configuration, each different character is represented by a different separate font bitmap.

異なるフォントサイズ(例えば表示倍率に於ける変化によって生じた異なるフォントサイズ)でのそうした構成に於いて使用されたフォントは、そうした各フォントサイズで可読性を向上させるために選択された各文字の形状及びピクセル配列を有している。殆どの実施形態に於いて、ビットマップのピクシレーションを用いて文字形状の配列を改善するために、フォントビットマップに関連して、文字の形状及び位置を選択することによって、こうした改善された可読性を実現する。そのような形状及びピクセル配列は、10ピクセル/em又はそれ未満のフォントビットマップを扱う場合に特に重要であるが、8ピクセル/em又はそれ未満では、さらに重要である。これは、フォントビットマップのより粗いピクシレーションのために、フォントビットマップが小さくなるにつれて読み難くなるからであり、それ故、フォントビットマップがそうしたピクシレーションに適合するために選択された文字の形状及び配置を有することがより一層重要になる。   The fonts used in such a configuration with different font sizes (eg, different font sizes caused by changes in display magnification) are the shape of each character selected to improve readability at each such font size and It has a pixel array. In most embodiments, such improved readability is achieved by selecting the character shape and position relative to the font bitmap to improve the character shape alignment using bitmap pixilation. To realize. Such shapes and pixel arrays are particularly important when dealing with font bitmaps of 10 pixels / em or less, but are more important at 8 pixels / em or less. This is because of the coarser pixilation of the font bitmap, it becomes harder to read as the font bitmap becomes smaller, and therefore the shape of the character that the font bitmap has been chosen to conform to such pixilation And having an arrangement becomes even more important.

本発明の多くの実施形態に於いて、より小さな縮尺のステップ10940によって使用されたフォントビットマップは、ピクセル内で発生するカラーアンバランスのみが分配される、上述の種類の非線形カラーバランスによって生成されたサブピクセル最適化されたビットマップである。そうしたサブピクセル最適化が、それらの粗いビットマップピクシレーションにうまく適合するように、適切に形成され、配置されたアウトラインに組み合わされる場合、描画された結果として生じるビットマップは、それらの小さなピクセルサイズを考慮すると、極めて読み易い。本発明の他の実施形態に於いて、そうした小さなピクセルサイズでの可読性を改善するために形成され、位置されたアウトラインを同様に有する非サブピクセル最適化されたアンチエイリアスフォントが使用される。   In many embodiments of the present invention, the font bitmap used by the smaller scale step 10940 is generated by a non-linear color balance of the type described above in which only the color imbalance occurring within the pixel is distributed. A sub-pixel optimized bitmap. When such subpixel optimizations are combined with well-formed and placed outlines to fit well with their coarse bitmap pixilation, the resulting bitmaps rendered will have their small pixel size Is extremely easy to read. In other embodiments of the present invention, non-subpixel optimized anti-aliased fonts are used that also have outlines that are formed and positioned to improve readability at such small pixel sizes.

ここで図109Bを参照すると、薄型クライアントがダウンロードストリームからの制御コマンドを読み取る場合、関数10942によって関数10944乃至10948が実行される。関数10944は、現在の制御コマンドに於いて指定された制御IDに対応するデータ、又は、プログラムオブジェクトを既に生成しているかどうかを確認するためにテストを行う。生成していない場合、関数10946は、制御コマンドに於いて指定された種類のデータ又はプログラムオブジェクトを生成し、それをそのコマンドで指定された制御IDに関連付ける。   Referring now to FIG. 109B, when the thin client reads a control command from a download stream, functions 10944 through 10948 are executed by the function 10942. The function 10944 performs a test to confirm whether data corresponding to the control ID specified in the current control command or a program object has already been generated. If not, function 10946 creates the type of data or program object specified in the control command and associates it with the control ID specified in the command.

次に、ステップ10948は、指定された種類の制御オブジェクトのサブピクセル最適化されたビットマップを、制御コマンドに於いて指定された位置に於いて、薄型クライアントのスクリーン上に描画する。次に、ステップ10948は、サブピクセル最適化されたフォントを使用して、制御オブジェクトのビットマップ上に、制御に関連付けられたテキストを描画する。次に、ステップ10948は、制御のビットマップに対応する表示スクリーン位置を有するホットゾーンを、薄型クライアント上で制御を表すデータオブジェクト又はプログラムオブジェクトと関連付ける。   Step 10948 then renders a sub-pixel optimized bitmap of the specified type of control object on the thin client screen at the location specified in the control command. Step 10948 then renders the text associated with the control on the control object's bitmap using the sub-pixel optimized font. Step 10948 then associates a hot zone having a display screen location corresponding to the control bitmap with a data or program object representing the control on the thin client.

薄型クライアントがダウンロードストリームからの画像コマンドを読み取る場合、関数10950によって、関数10952乃至10956が実行される。   When the thin client reads an image command from the download stream, functions 10950 to 10956 are executed by the function 10950.

関数10952は、現在の画像コマンドと同一の画像IDを有する画像位置コマンドが発生する毎に、現在の表示ストリームをスキャンする。そうした各画像位置コマンドに対して、関数10952によって、関数10954は薄型クライアントのスクリーン上の画像位置コマンドで指定された位置にビットマップを描画する。全ての薄型クライアントの描画関数と同様に、薄型クライアントスクリーン上に適合しない画像の任意の部分は、そうした描画操作に於いて切り取られる。   The function 10952 scans the current display stream each time an image position command having the same image ID as the current image command is generated. For each such image position command, function 10952 causes function 1095 to render a bitmap at the position specified by the image position command on the thin client screen. As with all thin client drawing functions, any portion of the image that does not fit on the thin client screen will be cropped in such a drawing operation.

次に、関数10956は、これらの描画された任意のビットマップと同一位置で発生する表示リストに於ける、他の全てのアイテムを再描画する。これが必要なのは、ウェブページがテキストを画像の最上部にセットすることが一般的であり、それ故、ビットマップ画像と同一位置に表示されるはずの任意の文字列は、これらの画像が描画された後で再描画されることが望ましい。本発明の一実施形態に於いて、薄型クライアントは、そのリストに於ける最初の画像位置コマンドの後に発生する、ダウンロードストリームの表示リストの全ての非画像要素を単に再描画する。   Next, function 10956 redraws all other items in the display list that occur at the same position as any of these drawn bitmaps. This is typically required when a web page sets the text at the top of the image, so any string that should appear in the same position as the bitmap image is rendered by these images. It is desirable to redraw afterwards. In one embodiment of the invention, the thin client simply redraws all non-image elements in the display list of the download stream that occur after the first image position command in the list.

図110に図示されているように、テキスト入力フィールドに関連付けられたホットゾーン上でユーザがクリックする場合、図109Bの関数10958及び10960によって、関数10962乃至10978で構成されるキーボードルーチンが実行される。   As shown in FIG. 110, when the user clicks on a hot zone associated with a text entry field, the functions 10958 and 10960 in FIG. .

関数10962は、図111に図示されているように、薄型クライアントのスクリーン上に、ポップアップユーザキーボード11102、及び、テキスト編集フィールド11104を表示する。次に、ユーザがポップアップキーボードの「Enter(入力)」キーを押下するまで、ループ10964が実行される。このループ中に、ユーザがテキスト文字を打ち込む度に、関数10966によって、関数10968は文字に関するサブピクセル最適化テキストビットマップをポップアップキーボードのテキスト編集ライン上の現在のカーソル位置にセットし、カーソルのビットマップを新たに描画された文字の後ろの位置に移動させる。そして、関数10970は、ポップアップキーボードのプログラムに関連付けられた一時的なテキスト編集文字列に打ち込まれた文字を追加する。   Function 10962 displays a pop-up user keyboard 11102 and a text edit field 11104 on the thin client screen, as shown in FIG. The loop 10964 is then executed until the user presses the “Enter” key on the pop-up keyboard. During this loop, each time the user types a text character, function 10966 causes function 10968 to set the subpixel-optimized text bitmap for the character to the current cursor position on the text editing line of the pop-up keyboard and the cursor bit. Move the map to the position after the newly drawn character. The function 10970 then adds the typed character to the temporary text edit string associated with the pop-up keyboard program.

ユーザがポップアップキーボードの「Enter(入力)」キーを押下する場合、関数10972によって、関数10974乃至10978が実行される。関数10974は、ポップアップキーボードが引き起こされるテキスト編集制御に於けるポップアップキーボードに関連付けられた、一時的なテキスト編集文字列の値を保存する。関数10976は、サブピクセル最適化ビットマップを使用して、図112に示されるように、薄型クライアントのスクリーン上の制御オブジェクトのテキスト入力フィールド11000のビットマップに、テキスト編集文字列の文字を描画する。   When the user presses the “Enter” key on the pop-up keyboard, functions 10972 through 10974 are executed by the function 10972. Function 10974 saves the value of the temporary text edit string associated with the pop-up keyboard in the text edit control that causes the pop-up keyboard to be triggered. Function 10976 uses the subpixel optimized bitmap to render the text edit string characters in the bitmap of the text input field 11000 of the control object on the thin client screen, as shown in FIG. .

次に、関数10978は、ポップアップキーボードの上に、ポップアップキーボードが描画される前にスクリーン上に表示されたビットマップを描画することによって、薄型クライアントのスクリーンからポップアップキーボードを取り除く。   Next, function 10978 removes the pop-up keyboard from the thin client screen by drawing on the pop-up keyboard a bitmap displayed on the screen before the pop-up keyboard is drawn.

図113は、ポップアップキーボードルーチンをテキスト入力フィールドにテキストを入力する以外の目的で使用することが出来ることを図示している。図109A乃至109Cの擬似コードに表示されていないが、ポップアップキーボードは、薄型クライアントに表示されたユーザが見たいと考えているウェブページのURLを入力するために使用することも出来る。   FIG. 113 illustrates that the pop-up keyboard routine can be used for purposes other than entering text into the text entry field. Although not displayed in the pseudo code of FIGS. 109A-109C, the pop-up keyboard can also be used to enter the URL of the web page that the user wants to see displayed on the thin client.

ボタンバー又はツールバーをグラフィカルユーザインターフェース(GUI)の最上部に有する本発明の一実施形態を図示しているという点を除いて、図114は実質的に図113と同一である。このボタンバーは、その左端に、一般的にウェブブラウザで見られる種類の「Back(戻る)」ボタン及び「Foward(進む)」ボタンを有している。またそれは、こちらも一般的にウェブブラウザで見られるボタンであるが、リフレッシュボタン、ブックマークボタン、及び、ヒストリーボタンにそれぞれ対応する「R」、「B」、「H」でラベル付けされたボタンを有している。また、ボタンバーは、クリックされた場合に図114に図示されたポップアップキーボードが現れるURLテキスト入力フィールドを有する。ポップアップキーボードが表示されていない場合、このテキスト入力フィールドは、薄型クライアントのスクリーン上に表示された現在のウェブページのURLを表示する。本発明の一実施形態に於いて、ユーザは、ハードウェアのボタンを押下することによって、そうしたツールバーの表示、非表示を選択することが出来る。この実施形態に於いて、そのようなツールバーが表示されていないとしても、ユーザは、例えばバックコマンドやフォーワードコマンドなど、より一般的なウェブブラウズ機能の幾つかを呼び出すために、ハードウェアボタンを使用することが出来る。   FIG. 114 is substantially identical to FIG. 113 except that it illustrates an embodiment of the present invention having a button bar or toolbar at the top of a graphical user interface (GUI). This button bar has at its left end a “Back” button and a “Forward” button of the type commonly found in web browsers. It is also a button that is generally found in web browsers, but buttons labeled "R", "B", and "H" corresponding to the refresh button, bookmark button, and history button, respectively. Have. The button bar also has a URL text input field in which the pop-up keyboard shown in FIG. 114 appears when clicked. If the pop-up keyboard is not displayed, this text entry field displays the URL of the current web page displayed on the thin client screen. In an embodiment of the present invention, the user can select to display or hide such a toolbar by pressing a hardware button. In this embodiment, even if such a toolbar is not displayed, the user can click a hardware button to invoke some of the more common web browsing functions, such as back commands and forward commands. Can be used.

本発明の他の実施形態に於いて、そうしたグラフィカルユーザインターフェース(GUI)のツールバーもまた、ウェブページの表示のズーム、及び/又は、相対的なレイアウトサイズ(即ち、仮想レイアウト解像度)を含む、ブラウザの他の機能にユーザがアクセスすることが可能なボタン又はメニューを有することが好ましい。   In other embodiments of the present invention, such a graphical user interface (GUI) toolbar also includes zooming of the display of the web page and / or relative layout size (ie, virtual layout resolution). It is preferable to have buttons or menus that allow the user to access other functions.

ここで図109Bを再び参照すると、ユーザが、ボタン又はメニューアイテム制御のホットゾーン上でクリックする場合、関数10980によって関数10981及び10982が実行される。   Referring now again to FIG. 109B, if the user clicks on a button or menu item controlled hot zone, functions 10981 and 10982 are executed by function 10980.

関数10981は、ボタン又はメニューアイテムの外見を適切に変更する。ボタンの場合であれば、ボタンに関連付けられたビットマップがボタンが、押下されていることを示すために再描画される。メニューアイテムの場合であれば、最終的な選択がなされたか否かに応じて、サブメニューが表示されるか、又は、メニューアイテムの表示が取り除かれる。   Function 10981 changes the appearance of the button or menu item appropriately. In the case of a button, the bitmap associated with the button is redrawn to indicate that the button is pressed. In the case of a menu item, the submenu is displayed or the display of the menu item is removed depending on whether or not the final selection has been made.

メニューアイテムの場合に於いて、最終的な選択が成された場合、又は、ボタンが押下され、解除された場合、関数10982は、ボタンの制御ID又はメニューアイテムの制御ID、及び、それが選択されたという指示をブラウザに送信し、ブラウザはブラウザ上の対応するボタン又はメニューアイテムの制御オブジェクトをあたかも押下されたように動作させることによって対応する。   In the case of a menu item, if the final selection is made, or if the button is pressed and released, the function 10982 is the button control ID or menu item control ID and it is selected. The browser responds by operating the corresponding button or menu item control object on the browser as if it were pressed.

ユーザが、他の種類の薄型クライアント制御に関連付けられたホットゾーン上でクリックする場合、関数10983は、これに応じて、薄型クライアントの表示上の制御のビットマップの外見を変更する。例えば、チェックボックスの場合であれば、スクリーン上の制御の表示にチェックが表示されるか、又は、表示から取り除かれる。次に、ステップ10985は、制御オブジェクトに対応して、対応する状態変更を保存する。上述したように、記載の実施形態に於いて、通信の要求を低減するために、ブラウザがそうした情報を要求するまでは、そうした制御オブジェクトの状態は、ブラウザに伝達されない。   If the user clicks on a hot zone associated with another type of thin client control, function 10983 changes the appearance of the control's bitmap on the thin client's display accordingly. For example, in the case of a check box, a check is displayed in or removed from the control display on the screen. Next, step 10985 saves the corresponding state change corresponding to the control object. As described above, in the described embodiment, the state of such control objects is not communicated to the browser until the browser requests such information in order to reduce communication requirements.

クライアントプログラム、又は、コンピュータの制御インターフェースに関連付けられていない薄型クライアントのスクリーンの他の部分上でユーザがクリックする場合、関数10986及び10987は、クリックが発生したスクリーン位置に加えて、そのクリックに関連するイベントを、プロキシブラウザに送信する。図105Bの関数10562乃至10556に関して上述されたように、ブラウザは、そうしたクリックの位置を仮想スクリーン上の対応する位置に変換し、仮想スクリーンの解像度で、それが描画しているとブラウザが見なすスクリーン上で、クリックがあたかも発生したかのように、そうしたクリックに対応する。幾つかの実施形態に於いて、通信の要求をさらに低減するために、他のクリックが、プロキシのブラウザが対応することになっているユーザ入力に一致すると考える根拠を薄型クライアントが有する場合に限り、薄型クライアントはそうした他のクリックをブラウザに報告する。   When a user clicks on a client program or other part of the thin client screen that is not associated with the computer's control interface, functions 10986 and 10987 are associated with the click in addition to the screen location where the click occurred. Event to be sent to the proxy browser. As described above with respect to functions 10562 through 10556 of FIG. 105B, the browser converts the position of such clicks to a corresponding position on the virtual screen, and the screen that the browser considers to be rendering at the resolution of the virtual screen. Above, respond to such clicks as if they had occurred. In some embodiments, to further reduce communication requirements, only if the thin client has a rationale that other clicks match the user input that the proxy browser is supposed to support The thin client reports these other clicks to the browser.

ここで図109Cを再び参照すると、薄型クライアントが、一つ又は複数の制御オブジェクトの状態を要求するプロキシブラウザからのクエリを受信する場合、関数10988によって、関数10989は薄型クライアント上の対応する制御の状態を問い合わせ、関数10909は、そうした状態情報をプロキシブラウザに送信する。図105Aの関数10518に関して上記されたように、次にプロキシブラウザは、あたかもその情報が、仮想スクリーンに関連した対応する制御オブジェクトの現在の状態の一部であるかのように、それを要求したブラウザの部分に、そうした要求された情報を返す。   Referring back to FIG. 109C, if the thin client receives a query from a proxy browser requesting the state of one or more control objects, function 10988 causes function 10998 to return the corresponding control on the thin client. Querying the status, function 10909 sends such status information to the proxy browser. As described above with respect to function 10518 of FIG. 105A, the proxy browser then requested it as if it was part of the current state of the corresponding control object associated with the virtual screen. Return the requested information to the browser part.

薄型クライアントのユーザが、そのスクリーンをスクロールするためにコマンドを入力する場合、関数10991及び10992は、そのスクロールコマンドをプロキシにアップロードする。これによって、図105Aに関して上記された関数10520乃至10534は、新たにスクロールされた位置に、現在のウェブページを表示するために、新しいダウンロードストリームを生成し、ダウンロードする。   If the thin client user enters a command to scroll the screen, functions 10991 and 10992 upload the scroll command to the proxy. This causes the functions 10520-10534 described above with respect to FIG. 105A to generate and download a new download stream to display the current web page at the newly scrolled position.

ユーザが、薄型クライアント上に表示された画像のズーム(即ち、縮尺)を変更するためにコマンドを入力する場合、関数10993及び10994は、対応するズームコマンドをプロキシにアップロードする。これによって、図105Aに関して上述された関数10536及び10552は、新しいズーム設定で現在のウェブページを表示するために、薄型クライアントにダウンロードされた新しいダウンロードストリームをもたらす。   When the user enters a command to change the zoom (ie, scale) of the image displayed on the thin client, functions 10993 and 10994 upload the corresponding zoom command to the proxy. Thereby, the functions 10536 and 10552 described above with respect to FIG. 105A result in a new download stream downloaded to the thin client to display the current web page with the new zoom setting.

ユーザが薄型クライアントの表示に関する仮想解像度を変更するためにコマンドを入力する場合、即ち、プロキシブラウザ上の仮想スクリーンがレイアウトされる解像度を変更する場合、関数10995及び10996は、選択された仮想解像度をプロキシにアップロードする。これにより、図105Bに関して上述された関数10554乃至10560は、プロキシブラウザの仮想スクリーン解像度を変更し、新しい解像度で仮想スクリーンを再びレイアウトし、対応するダウンロードストリームを薄型クラインアントに送信するので、それは、ウインドウに対応する仮想スクリーンの一部を現在のズーム設定で薄型クライアントスクリーン上に表示することが出来る。仮想解像度に於ける変更は、仮想レイアウトの幅に関連して、例えばテキスト及びイメージ等のレイアウト要素の相対的なサイズを変更する傾向があるので、本明細書中では、仮想解像度は相対的なレイアウトサイズとして言及される場合がある。   If the user enters a command to change the virtual resolution for the display of the thin client, i.e., changes the resolution at which the virtual screen on the proxy browser is laid out, functions 10995 and 10996 will return the selected virtual resolution. Upload to proxy. This causes functions 10554 to 10560 described above with respect to FIG. 105B to change the virtual screen resolution of the proxy browser, re-lay out the virtual screen at the new resolution, and send the corresponding download stream to the thin client. A portion of the virtual screen corresponding to the window can be displayed on the thin client screen with the current zoom setting. Since changes in virtual resolution tend to change the relative size of layout elements, such as text and images, relative to the width of the virtual layout, in this document virtual resolution is relative. Sometimes referred to as layout size.

図109Cの最下部に図示されているように、ユーザが薄型クライアントの制御グラフィカルユーザインターフェース(GUI)に関連付けられた他のコマンドを入力する場合、関数10997によって、省略記号10999によって示された、これに対する適切な応答が実行される。そのような他の関数は、ブックマークの選択、ブックマークされたウェブページへのアクセス、Back(戻る)及びFoward(進む)機能、ブラウザのユーザインターフェースの一部となり得る任意の他の関数を含む。物理的なボタンの使用、又は、薄型クライアントコンピュータへの他の物理的入力、例えばボタン、メニューアイテム、又は、ダイアログボックス制御などのグラフィックオブジェクトの選択、又は、仮想のその他任意の周知のグラフィカルユーザインターフェース(GUI)技術によって、そうした要求を選択することが出来る。   If the user enters other commands associated with the thin client control graphical user interface (GUI), as illustrated at the bottom of FIG. 109C, this is indicated by the ellipsis 10999 by function 10997. An appropriate response to is executed. Such other functions include bookmark selection, access to bookmarked web pages, Back and Forward functions, and any other functions that can be part of the browser user interface. Use of physical buttons or other physical input to thin client computers, eg selection of graphic objects such as buttons, menu items or dialog box controls, or any other well known graphical user interface Such requirements can be selected by (GUI) technology.

図115乃至117は、薄型クライアントがプロキシサーバを介してウェブをブラウズ可能にする代替方法に関する。この実施形態に於いて、図117に図示されているように、プロキシコンピュータによって生成されたウェブページの全体的なレイアウト10206は、薄型クライアントによってダウンロードされキャッシュされる。後述するように、これにより薄型クライアントは実質的により速くレイアウト内をスクロールすることが出来るのであるが、これにより、薄型クライアントが視認される各ウェブページに対してレイアウト全体及び全画像をダウンロードしようとするので、ダウンロードされる総ビット数を増加させる可能性がある。   115-117 relate to an alternative method that allows thin clients to browse the web through a proxy server. In this embodiment, as illustrated in FIG. 117, the overall layout 10206 of the web page generated by the proxy computer is downloaded and cached by the thin client. As will be described later, this allows the thin client to scroll through the layout substantially faster, but this will attempt to download the entire layout and all images for each web page that the thin client sees. This may increase the total number of bits downloaded.

図115は、そうしたページレイアウトキャッシュスキームで使用可能なプロキシブラウザコード11500の一部を図示している。   FIG. 115 illustrates a portion of proxy browser code 11500 that can be used in such a page layout caching scheme.

本発明のこの実施形態に於いて、プロキシブラウザは薄型クライアントからウェブページに対する要求を受信する場合、関数11502によって関数11504乃至11524が実行される。   In this embodiment of the invention, when the proxy browser receives a request for a web page from a thin client, functions 11504 through 11524 are executed by function 11502.

図115の関数11502に関連付けられた擬似コードによって図示されているように、この特別なウェブキャッシングに関する実施形態に於いては、薄型クライアントは、所望の仮想解像度、ズーム設定、及び、ビューウインドウ位置を含む、ページに対する所望のビュー設定でウェブページを要求することが出来る。これを実行するのは、ページが要求される度に、そうした設定値を別々に入力する必要なく、所望の仮想解像度、ズーム設定、及び、ビューウインドウ位置で、ユーザがそうしたウェブページを自動的に視認出来るように、ユーザがそうしたビュー設定を、特定のURL又はURLパス名の部分を含むブックマークに関連付けることを可能にするためである。例えば、これにより、ユーザはそのページの所望箇所に於いて自動的にズームされた表示で、通常アクセスされたウェブページを視認することが出来る。   In this particular web caching embodiment, as illustrated by the pseudo code associated with function 11502 in FIG. 115, the thin client can specify the desired virtual resolution, zoom settings, and view window position. A web page can be requested with desired view settings for the page. This is done so that each time a page is requested, the user automatically selects such a web page at the desired virtual resolution, zoom setting, and view window position without having to enter such settings separately. This is to allow the user to associate such view settings with a bookmark that includes a specific URL or URL pathname portion so that it can be viewed. For example, this allows the user to view a normally accessed web page with an automatically zoomed display at the desired location on the page.

ウェブページに対する要求が薄型クライアントから受信された時点で、プロキシブラウザ上の関数11504は、薄型クライアントから要求されたURLに於いて識別されたサーバからそのウェブページを要求する。ウェブページがサーバから受信される場合、関数11506によって、関数11507乃至11516が実行される。   When a request for a web page is received from the thin client, function 11504 on the proxy browser requests the web page from the server identified in the URL requested from the thin client. When a web page is received from the server, functions 11506 through 11516 are executed by function 11506.

関数11507によって、プロキシ上のブラウザのレイアウトエンジンは、ウェブページに対する薄型クライアントからの要求に於いて指定されたビュー設定に関連付けられた仮想スクリーン解像度で、受信されたウェブページをレイアウトする。図106Aの関数10606乃至10618に関して上記されたものと同様の方法で、置換されたフォントに対して拡大/縮小された文字列測定を使用して、このレイアウトを実行する。使用される倍率は、現在のページに対する要求において指定されたビュー設定によって決定される。   Function 11507 causes the browser's layout engine on the proxy to lay out the received web page with the virtual screen resolution associated with the view settings specified in the request from the thin client for the web page. This layout is performed using scaled string measurements for the substituted fonts in a manner similar to that described above with respect to functions 10606 through 10618 of FIG. 106A. The magnification used is determined by the view settings specified in the request for the current page.

関数11508は、現在の要求に関するビュー設定に於いて潜在的なビューウインドウを含む、結果として生じたレイアウトに関連して、仮想スクリーン位置を特定する。それ故、例えばビュー設定がレイアウトの一番右の640×480部分を見ることを要求し、レイアウトが800ピクセル幅を有するように強制される場合、仮想スクリーン位置は、レイアウトに於いて、約ピクセルコラム160からピクセルコラム800に拡張する。   Function 11508 identifies the virtual screen location in relation to the resulting layout, including potential view windows in view settings for the current request. Thus, for example, if the view settings require viewing the rightmost 640 × 480 portion of the layout, and the layout is forced to have an 800 pixel width, the virtual screen position will be approximately pixels in the layout. The column 160 is expanded to the pixel column 800.

図117に於いて概略的に図示されているように、関数11518によって、関数11520はレイアウトされているウェブページに関連して受信されたそれぞれの画像11702を拡大/縮小、及び、サブピクセル最適化する。   As schematically illustrated in FIG. 117, function 11518 causes function 11520 to scale each received image 11702 associated with the laid-out web page and subpixel optimization. To do.

ウェブページに於いて参照された全画像が受信され、拡大/縮小され、サブピクセル最適化された時点で、関数11522によって、関数11523はそのレイアウトに対して表示リストを作成し、その表示リスト、及び、全ての関連するサブピクセル最適化、拡大/縮小された画像を圧縮する。次に、関数11524は、後に縮小されたサブピクセル最適化された画像が続く、ウェブページレイアウトを含むダウンロードストリームで、その圧縮されたデータを薄型クライアントに送信する。   When all images referenced in the web page have been received, scaled, and sub-pixel optimized, function 11522 causes function 11523 to create a display list for the layout, the display list, And compress all relevant sub-pixel optimized, scaled images. Next, function 11524 sends the compressed data to the thin client in a download stream that includes a web page layout followed by a reduced sub-pixel optimized image.

本発明の該特徴に関する他の実施形態に於いて、画像の全て又はその一部でさえもプロキシサーバにダウンロードされる前に、レイアウトの部分を薄型クライアントにダウンロードすることが出来る。これにより、薄型クライアントはウェブページのテキストの表示をより迅速に開始することが出来る。多くのウェブページは、それらの画像全てのサイズに関する記述を含んでいるので、多くの場合、そうしたレイアウトを実行するソフトウェアによって画像が受信される前に、ウェブページの適切なレイアウトを実行することが出来る。そうではない場合、そのページは全画像のサイズを確認する際に、再びレイアウトされなければならず、その後で、こうした新たなレイアウトをクライアントまで送信することが出来る。   In other embodiments relating to this aspect of the invention, a portion of the layout can be downloaded to the thin client before all or even a portion of the image is downloaded to the proxy server. Thereby, the thin client can start displaying the text of the web page more quickly. Many web pages contain a description of the size of all of their images, so in many cases it is possible to perform proper layout of web pages before the images are received by software that performs such layout. I can do it. If not, the page must be laid out again to verify the size of the entire image, after which these new layouts can be sent to the client.

異なる縮尺で以前ダウンロードされた一つ又は複数の画像を再び拡大/縮小し、サブピクセル最適化するために、ユーザが薄型クライアントから要求を受信する場合、関数11526乃至11532は、そうした画像を再び拡大/縮小及びサブピクセル最適化し、圧縮し、そして薄型クライアントにダウンロードする。これにより、ユーザが異なるズーム設定でダウンロードされたウェブページレイアウトを見ようとする場合、ユーザは異なるサブピクセル最適化されたサイズでウェブページを見ることが出来る。   If the user receives a request from a thin client to rescale / re-scale and sub-pixel optimize one or more previously downloaded images at different scales, functions 11526-11532 re-scale those images. / Reduce and sub-pixel optimize, compress and download to thin client. This allows the user to view the web page with different sub-pixel optimized sizes when the user wants to view the downloaded web page layout with different zoom settings.

スクリーン入力のイベントが薄型クライアントから受信されると、関数11534によって、関数11536乃至11542が実行される。   When a screen input event is received from the thin client, functions 11536 through 11542 are executed by function 11534.

関数11536は、コマンドに関連付けられたページレイアウト座標が、図117に示された、現在プロキシブラウザの仮想スクリーン10208にマッピングされているウェブページレイアウト10206の部分10206Aに一致するかどうかを確かめるためにテストを行う。一致しない場合、関数11538は、そのコマンドに関連付けられたレイアウト座標を含むレイアウトの新しい部分10206Bまで仮想スクリーンをスクロールする。   Function 11536 tests to see if the page layout coordinates associated with the command match the portion 10206A of the web page layout 10206 currently mapped to the proxy browser virtual screen 10208 shown in FIG. I do. If not, function 11538 scrolls the virtual screen to a new portion 10206B of the layout that includes the layout coordinates associated with the command.

関数11540は、受信されたスクリーンイベントのページレイアウト座標に対応する仮想スクリーン座標を計算する。そして、あたかもユーザが仮想スクリーン自体に於ける対応する仮想スクリーン座標でクリックしたかのように、例えばリンクのクリック等のイベントにそれが対応出来るように、関数11542は仮想スクリーン座標と共に入力スクリーンイベントをブラウザのイベント待ち行列にセットする。   Function 11540 calculates virtual screen coordinates corresponding to the page layout coordinates of the received screen event. The function 11542 then displays the input screen event along with the virtual screen coordinates so that it can respond to an event such as a link click, as if the user clicked on the corresponding virtual screen coordinates in the virtual screen itself. Set in the browser event queue.

図116は、図115及び117に図示されたページレイアウトキャッシュスキームをサポートするために使用可能な薄型クライアントコードの一部に関する高度に簡略化された擬似コード記述である。   FIG. 116 is a highly simplified pseudo code description for a portion of thin client code that can be used to support the page layout cache scheme illustrated in FIGS. 115 and 117.

薄型クライアントがページレイアウトの表示リストを含むダウンロードストリームを受信開始する場合、関数11602によって、関数11604及び11606が実行される。   When the thin client starts to receive the download stream including the display list of the page layout, the functions 11604 and 11606 are executed by the function 11602.

関数11604は、ビューウインドウ(例えば、図117に図示されたビューウインドウ10210A)のマッピングをページレイアウトに関連して設定し、次に、そのマッピングに基づいて現在のクライアント側の表示倍率を計算する。   Function 11604 sets the mapping of the view window (eg, view window 10210A illustrated in FIG. 117) in relation to the page layout, and then calculates the current client-side display magnification based on the mapping.

関数11620は、現在のクライアント側の倍率を使用して、現在のビューウインドウ内に適合するダウンロードされたページレイアウトの任意の部分を表示する。このプロセスは、関数11622乃至11630を含む。   Function 11620 displays any portion of the downloaded page layout that fits within the current view window using the current client-side magnification. This process includes functions 11622-11630.

関数11622は、現在のクライアント側の倍率に関する関数であるフォントサイズを用いて、現在のビューウインドウ内に発生する各文字列要素を表示する。それが実行され場合、そうした文字が表示されるピクセルサイズが変化する際に、必要に応じて、それがフォントのヒンティングによる不均一な影響から生じる可能性のある、文字の相対的なサイズに於ける任意の不均一な変更に対して調整を行う。コンピュータスクリーン上でのテキスト表示と、さらに高解像度で印刷される際の該テキストの外観との間のWYSIWYG通信を提供するために、従来から使用されている技術に類似した、例えば文字間の間隔の変更など、不連続及び不均衡を補う技術を使用することによって、関数11622はこれを実行する。以前表示されたサイズとは異なるサイズを有するフォントビットマップが要求される場合、そうした異なるサイズの文字に対するフォントビットマップに対して、薄型クライアント上の記憶装置からアクセスすることと、ネットワークフォントサーバからアクセスすることと、フォントアウトラインから必要なサイズでラスタ化することの何れかを行うことが出来る。   A function 11622 displays each character string element generated in the current view window using a font size which is a function related to the current client-side magnification. If that is done, when the pixel size at which such characters are displayed changes, if necessary, to the relative size of the characters, which may result from non-uniform effects due to font hinting Make adjustments for any non-uniform changes in To provide WYSIWYG communication between text display on a computer screen and the appearance of the text when printed at higher resolution, for example, spacing between characters The function 11622 does this by using techniques that compensate for discontinuities and imbalances, such as changes in. If a font bitmap with a size different from the previously displayed size is required, access the font bitmap for those different size characters from the storage on the thin client and from the network font server. Or rasterizing at the required size from the font outline.

関数11620によって生成された表示が、ビットマップ画像10818が縮小された倍率とは異なる倍率の場合、関数11624によって、関数11626乃至11630が実行される。これらはプロキシサーバに対して、ビューウインドウ内に全体的又は部分的に存在する全画像を新しい倍率で再び拡大/縮小し、サブピクセル最適化するように要求する。その後、同一画像のビットマップは、そうした画像に対する一時的な表示を提供するために、薄型クライアント上に保存、表示された、以前縮小されたサブピクセル最適化画像10818からローカルに再び拡大/縮小される。そして、元のサイズから再び拡大/縮小され、要求された画像、及び、ウェブページに関連付けられたより高い解像度のビットマップが、プロキシサーバから薄型クライアントにより受信された場合、それらは表示スクリーン上の適切な位置に描画される。   If the display generated by function 11620 is at a different magnification than the magnification at which bitmap image 10818 was reduced, functions 11626 through 11630 are executed. They require the proxy server to re-scale / re-scale all images that are wholly or partly in the view window with the new magnification and to sub-pixel optimize. The bitmap of the same image is then rescaled locally from the previously reduced subpixel optimized image 10818 stored and displayed on the thin client to provide a temporary display for such images. The Then, if the requested image and the higher resolution bitmap associated with the web page are received by the thin client from the proxy server, they are scaled again from the original size, and they are displayed on the display screen as appropriate. It is drawn at the correct position.

幾つかの実施形態に於いて、ユーザが表示のズームを変更する場合、新しい倍率でスクリーン上のページの部分に対応する任意の画像のビットマップは、適切にサブピクセル最適化された画像がダウンロードされるまで、ユーザにそうした画像の一時的な表示を提供するために、薄型クライアント上に生成された画像に関する迅速であるが粗い表現で表示される。新しい倍率が以前ダウンロードされたビットマップの倍率の整数倍である場合、そうした迅速な表示を比較的生成し易い。ビットマップ倍率の整数倍ではない場合、多くの方法の内、任意の方法で一時的な表示を生成することが出来る。例えば、それらは図12乃至53に関して上述された方法の内一つの方法で生成されたサブピクセル最適化された画像になり得る。ソース画像が出力画像に比して低解像度である場合でさえも、これらの方法に記載された基本的な手順を適用することが出来る。さらにコンピュータ処理的に単純な方法は、整数の換算比を有する画像として、及び、以前の画像に対して描画されることを目的とする適切に拡大/縮小された画像よりも多くの空間を占めないように、適切な縮尺と同一、又は、それより小さなサイズで切り取られた画像、又は、拡大/縮小された画像として、以前の画像を表示することである。   In some embodiments, if the user changes the zoom of the display, the bitmap of any image corresponding to the portion of the page on the screen at the new magnification will be downloaded with the appropriate sub-pixel optimized image. Until then, it is displayed in a quick but coarse representation of the image generated on the thin client to provide the user with a temporary display of such an image. If the new magnification is an integer multiple of the previously downloaded bitmap magnification, it is relatively easy to generate such a quick display. If it is not an integer multiple of the bitmap magnification, a temporary display can be generated in any of a number of ways. For example, they can be sub-pixel optimized images generated by one of the methods described above with respect to FIGS. The basic procedure described in these methods can be applied even when the source image has a lower resolution than the output image. Furthermore, a computationally simple method occupies more space than an appropriately scaled image intended to be rendered as an image with an integer conversion ratio and relative to a previous image. The previous image is displayed as an image that has been cut out at a size that is the same or smaller than the appropriate scale, or an enlarged / reduced image.

ユーザがプロキシブラウザに送信されるスクリーン入力を生成する場合、関数11632乃至11636は、その入力の薄型クライアントスクリーン座標を、対応するページレイアウト座標に変換する。そして、スクリーン入力及び対応するページレイアウト座標がプロキシブラウザにアップロードされる。次に、プロキシブラウザは図115に関して上述された関数11534乃至11542を使用して、そうした入力に対応する。これにより、あたかもユーザがプロキシブラウザの仮想スクリーン上のウェブページの対応する部分でクリックしたかのように、プロキシブラウザがそうしたスクリーン入力に対応する。   When the user generates screen input to be sent to the proxy browser, functions 11632 through 11636 convert the thin client screen coordinates of the input into corresponding page layout coordinates. Then, the screen input and the corresponding page layout coordinates are uploaded to the proxy browser. The proxy browser then responds to such input using functions 11534 through 11542 described above with respect to FIG. This allows the proxy browser to respond to such screen input as if the user had clicked on the corresponding portion of the web page on the proxy browser's virtual screen.

ユーザがウェブページのコンテンツに関連してより迅速にスクロール、及び/又は、ズームを行うことが出来るように、例えば図115乃至117に関して上述したような、薄型クライアントが現在スクリーン上に表示されているウェブページの部分よりも多くの部分を保存可能なキャッシングスキームを使用することが出来る。このことが特に当てはまるのは、薄型クライアントがプロキシサーバに対して比較的低い回線容量を有する場合である。   A thin client is currently displayed on the screen, eg, as described above with respect to FIGS. 115-117, so that the user can scroll and / or zoom more quickly in relation to the content of the web page. A caching scheme that can store more parts than web page parts can be used. This is especially true when the thin client has a relatively low line capacity relative to the proxy server.

この出願の時点で一般的に利用可能な現在のデジタル携帯電話通信速度に関連した回線容量と同程度に低い回線容量を使用した場合でさえ、ウェブの比較的迅速なブラウズを可能にするために、ここで記載したそうしたキャッシングスキームに関する実施形態を実行することが出来る。これは、通常、殆どのウェブページに含まれる画像を除く全コンテンツを、3000バイト、又は、それ未満に適合するように圧縮することが出来るからである。それ故、現在のデジタル携帯電話の通信速度で、殆どのウェブページのテキスト部分全体を数秒でダウンロードすることができ、テキストの最初の部分をさらに短い時間で描画することが出来る。言うまでもなく、画像のダウンロードにはより多くの時間を要する可能性はあるが、ウェブページの最初の画像の内、大型画像以外は、一般的に数秒以内で表示することが出来る。そして、より高速の通信回線でこの遅延を大幅に低減することが出来る。   To enable relatively quick browsing of the web, even when using a line capacity as low as that associated with the current digital mobile phone communication speeds generally available at the time of this application Embodiments relating to such caching schemes described herein can be implemented. This is because all content except images contained in most web pages can usually be compressed to fit 3000 bytes or less. Therefore, at the current digital mobile phone communication speed, the entire text portion of most web pages can be downloaded in seconds, and the first portion of text can be rendered in a shorter time. Needless to say, it may take more time to download the image, but the first image on the web page, other than the large image, can generally be displayed within a few seconds. This delay can be greatly reduced with a higher-speed communication line.

図118乃至120は、仮想的なウェブブラウズ環境に於いて使用可能であるが、小型スクリーン上でウェブをブラウズする際に特に有用である、本発明に関する特徴を図示したものである。これは、例えば、上記に於いて議論した薄型クライアントコンピュータなどの小型スクリーン装置上での使用を含む。本発明のこれらの特徴は、ウェブページの選択された部分へのズームイン又はズームアウトを含んでいるので、ここで説明したレイアウトキャッシングスキームを使用することによって、薄型クライアントコンピュータ上で迅速に動作させるために実行することが出来る。   118-120 illustrate features relating to the present invention that can be used in a virtual web browsing environment, but are particularly useful when browsing the web on a small screen. This includes, for example, use on small screen devices such as thin client computers discussed above. These features of the present invention include zooming in or out on selected portions of the web page so that it can be operated quickly on a thin client computer by using the layout caching scheme described herein. Can be executed.

図118は、640×480の仮想解像度でレイアウトされ、その後、320×240スクリーン上で表示するために縮小され、サブピクセル最適化された、標準的なウェブページの図を示している。視力の良い人であれば、殆どの人が通常ハンドヘルドコンピュータを使用する距離でそうしたコンテンツを読み取ることが出来る。しかし、より大きなサイズで表示される場合には、殆どのウェブページのコンテンツをさらに容易に読み取り可能にすることが出来る。殆どのウェブページがマルチコラムでレイアウトされているので、多くの場合、ユーザが読み始めたいと考えるコラム部分の最上部に表示を迅速にズーム可能であることが好ましい。ユーザがズームされたビューで表示スクリーンの最上部付近に表示したいと考える垂直方向の位置に、所望のテキストコラムを越えて、ポインティングデバイス11902をドラッグすることによって、ユーザはこれを実行することができる。表示がこの種類のズームを実行するモードの状態である場合、図119に図示された種類の水平線形ドラッグによって、その表示がスクリーンの幅に適合するように、ドラッグによって示されたウェブページレイアウトの幅を拡大/縮小する。図119に図示された例に於いて、このユーザ入力によって、図120に図示されたように、その表示がズームされる。   FIG. 118 shows a diagram of a standard web page that is laid out at a virtual resolution of 640 × 480 and then reduced and subpixel optimized for display on a 320 × 240 screen. Most people with good vision can read such content at a distance that usually uses a handheld computer. However, when displayed in a larger size, the content of most web pages can be made more easily readable. Since most web pages are laid out in multiple columns, it is often desirable to be able to quickly zoom the display to the top of the column portion that the user wants to begin reading. The user can do this by dragging the pointing device 11902 beyond the desired text column to a vertical position that the user wants to display near the top of the display screen in a zoomed view. . When the display is in a mode that performs this type of zooming, the horizontal linear drag of the type illustrated in FIG. 119 allows the web page layout of the dragged web page layout to be matched to the screen width. Increase / decrease width. In the example illustrated in FIG. 119, this user input zooms the display as illustrated in FIG.

また、ユーザインターフェースによって、ユーザはスクリーン上に図示されたウェブページレイアウトに於ける領域の周囲の選択ボックスをドラッグすることが可能となり、ウェブページに於いて選択された領域がスクリーンに適応するように、システムがウェブページの表示をズームすることが好ましい。   The user interface also allows the user to drag a selection box around the area in the web page layout shown on the screen so that the area selected on the web page will fit on the screen. Preferably, the system zooms the display of the web page.

また、そうしたドラッグに於いて、ユーザがスクリーンの所定の端部に関連付けられた境界を越えて、ポインティングデバイスをドラッグ可能であることが望ましく、これが実行される場合、これに対応して、そうしたドラッグの開始として、スクリーン内に全体的に適合するには大き過ぎる、又は、不適切に位置づけられているウェブページレイアウト内で、幅、高さ、又は、領域に適合させるためのズームをユーザが実行することを選択可能にするために、スクリーン上に表示されたウェブページの部分がスクロールするそうしたドラッグによって、大き過ぎてドラッグ中に表示される倍率でスクリーン上に適合出来ないレイアウトの部分が選択される場合、テキスト及び画像が表示されるサイズを低減するために倍率を変更する。   Also, in such a drag, it is desirable that the user be able to drag the pointing device beyond the boundary associated with a given edge of the screen, and if this is done, corresponding drag As a starting point, the user performs a zoom to fit the width, height, or area in a web page layout that is too large or improperly positioned to fit entirely within the screen Such a drag that scrolls the portion of the web page displayed on the screen to make it selectable will select the portion of the layout that is too large to fit on the screen at the magnification displayed during the drag. In order to reduce the size at which text and images are displayed, the magnification is changed.

レイアウトに於ける選択された幅、高さ、領域がスクリーンに適合するように拡大/縮小されるということは、その最大次元が、スクリーンの3分の2、及び、完全に対応する次元との間の範囲に分布するように拡大/縮小されるということを意味する。一般的には、そうした拡大/縮小によって、選択された長さ及び領域が、スクリーンの80乃至90%から完全に対応する次元の範囲まで分布する最大次元を有することが望ましい。   The fact that the selected width, height, and area in the layout are scaled to fit the screen means that its maximum dimension is two-thirds of the screen and a fully corresponding dimension. It means that it is enlarged / reduced so as to be distributed in the range between. In general, with such scaling, it is desirable for the selected length and area to have a maximum dimension distributed from 80-90% of the screen to a fully corresponding dimension range.

図121乃至図128は、ズームクリックと呼ばれる本発明の特徴を図示している。この特徴によって、低解像度で見られるスクリーン、極めて小さなスクリーン、又は所望のスクリーン位置に関連して正確に容易に配置出来ないポインティングデバイスと共に使用されるスクリーン内で、ユーザがより簡単に、且つ、正確にアイテムを選択することが出来る。これが特に有用であるのは、携帯電話サイズのスクリーン、ポインティングデバイスとして指を使用するタッチスクリーンデバイス、及び/又は、ポインティングデバイスを正確にセットすることが困難な走行中の車などの環境で使用されるタッチスクリーンデバイスを取り扱う場合である。   121 to 128 illustrate a feature of the present invention called zoom click. This feature makes it easier and more accurate for the user in screens used at low resolutions, very small screens, or pointing devices that cannot be accurately placed in relation to the desired screen position. You can select items. This is particularly useful in environments such as mobile phone-sized screens, touch screen devices that use a finger as a pointing device, and / or a moving car where it is difficult to accurately set the pointing device. This is the case when handling touch screen devices.

ズームクリックに於いて、ユーザがスクリーンに於ける所定の位置でクリックダウンする場合、ユーザがクリックしたスクリーンの部分が拡大された縮尺で表示される。その後、ユーザは、所望の位置にポインティングデバイスが位置するまで、この拡大された表示に於いて、押下されたポインティングデバイスで自由にナビゲートする。この時点で、ユーザはポインティングデバイスの押下を終了し、解除することができ、これにより、押下の解除に於ける現在の位置が、従来のグラフィカルユーザインターフェース(GUI)のクリックに対応する目的の為に選択された位置として取り扱われる。   In zoom click, when the user clicks down at a predetermined position on the screen, the portion of the screen clicked by the user is displayed at an enlarged scale. The user is then free to navigate with the pressed pointing device in this enlarged display until the pointing device is located at the desired location. At this point, the user can finish pressing the pointing device and release it, so that the current position in the release of the pressing is for the purpose of responding to a conventional graphical user interface (GUI) click. Are handled as the selected position.

ズームクリックを使用して、ダブルクリックを異なる方法で表現することが出来る。最も簡単な方法の一つは、単にズームクリック直後の素早い第2のクリック及び解除を記録し、ズームクリックをダブルクリックに変換するように、ズームクリックと同一位置に接近することということである。   Zoom clicks can be used to express double clicks differently. One of the simplest methods is to simply record a quick second click and release immediately after the zoom click and move closer to the same position as the zoom click so as to convert the zoom click into a double click.

ズームクリックに関する他の実施形態では、異なって動作するが、好ましい実施形態によって、ズームクリックに於けるダウンクリック中の拡大図に於けるポインタの動きは、そうした拡大/縮小図に於ける通常のポインタナビゲーションと同一の割合で発生する。これは、例えば、表示解像度を2倍にするズームクリックに於いて、ユーザが他の場合に比して2倍のポインティング解像度を有することを意味する。また、ズームクリックモードでダウンクリックを維持する間にユーザがポインタを移動させると同時に、スクリーンの端部、又は端部付近に到達する場合、このモードでユーザがページ全体をナビデートすることが出来るように、画像がスクロールすることが望ましい。   Other embodiments relating to zoom clicks operate differently, but according to the preferred embodiment, pointer movement in an enlarged view during a down click in a zoom click is a normal pointer in such an enlarged / reduced view. Occurs at the same rate as navigation. This means that, for example, in zoom clicks that double the display resolution, the user has a pointing resolution that is twice that of other cases. In addition, when the user moves the pointer while maintaining the down click in the zoom click mode, and at the same time reaches the edge of the screen or near the edge, the user can navigate the entire page in this mode. Thus, it is desirable that the image scrolls.

図121乃至128の例に於いて、2つ折りの携帯電話機/コンピュータ120Cが図示されている。この例では、携帯電話機が320×240全ピクセル解像度、及び、カラーサブピクセルアドレス指定能力を有することが想定されている。言うまでもなく、本発明の他の実施形態に於いては、他の解像度を使用することが出来る。使い易くするために、携帯電話機は、ユーザの指で操作可能なタッチセンシティブスクリーンを有すると仮定されている。他の実施形態に於いては、タッチパッド、消しゴム付きポインタ、マウス、ナビゲーションボタン、超音波ビジュアルタッチスクリーンポインタ位置検出装置など、他の種類のポインティングデバイスをズームクリックと共に使用することが出来る。   In the example of FIGS. 121-128, a folded phone / computer 120C is shown. In this example, it is assumed that the mobile phone has 320 × 240 full pixel resolution and color subpixel addressability. Of course, other resolutions can be used in other embodiments of the invention. For ease of use, the cell phone is assumed to have a touch-sensitive screen that can be operated with the user's finger. In other embodiments, other types of pointing devices can be used with zoom clicks, such as a touchpad, a pointer with an eraser, a mouse, a navigation button, an ultrasonic visual touch screen pointer position detector.

図121は、図11及び図110に示す「priceline.com」のウェブページと同一の画像を有する携帯電話機を図示している。   FIG. 121 illustrates a mobile phone having the same image as the web page of “priceline.com” illustrated in FIGS. 11 and 110.

図122は、ズームクリックモードで、ユーザが図110に関して議論したものと同一のテキスト入力フィールド11000を選択するために、スクリーン上にユーザの指12102を押下しようとする場合に、何が起こるかを図示している。ユーザが自分の指をタッチスクリーンに接触させる際に、カーソルが置かれる正確な位置を前もって推定することは困難な場合が多い。ズームクリックがこれに対して役立つのは、任意の選択がなされる前に、タッチスクリーンを接触している指から生じるカーソル170の位置をユーザが確認することが出来るからである。また、それは、例えば図123に図示された所望のテキスト入力フィールド1100など、ユーザが所望のリンクや制御の上にカーソル12204を位置付けすることを容易にする、より大きな表示尺度のスクリーンを図示している。   FIG. 122 illustrates what happens when in zoom click mode, the user attempts to press the user's finger 12102 on the screen to select the same text entry field 11000 as discussed with respect to FIG. It is shown. When the user touches his / her finger on the touch screen, it is often difficult to estimate in advance the exact position where the cursor will be placed. The zoom click is useful for this because the user can see the position of the cursor 170 resulting from the finger touching the touch screen before any selection is made. It also illustrates a larger display scale screen that facilitates the user to position the cursor 12204 over a desired link or control, such as the desired text entry field 1100 illustrated in FIG. 123, for example. Yes.

ユーザが図123に図示された位置に於けるカーソルを備えたタッチスクリーンから、指を離す時点で、図124に図示されているように、上述の図111に於いてポップアップキーボードが現れる場合と同様に、ポップアップキーボード11102が現れる。   As shown in FIG. 124, when the user releases his / her finger from the touch screen having the cursor at the position shown in FIG. 123, the same as when the pop-up keyboard appears in FIG. Pop-up keyboard 11102 appears.

図125に図示されているように、ズームクリックモードで、ユーザが、ポップアップキーボード11102に於いて所望の文字(この例では「b」)に接触しようとする場合、接触されたキーボードの部分の画像が大きく拡大される。図125に図示された例に於いて、ユーザは最初にタッチスクリーンを押下した時点では、カーソル12204を正確に所望の位置に位置付けていない。ユーザは、図126に図示された位置にカーソル11102を位置付けるために、指12202をドラッグすることによって、ズームクリックモードに於けるこの問題を容易に修正することが出来る。その後、ユーザがスクリーンから指を離す場合、スクリーン画像は通常の縮尺に戻るが、これにより、次の文字がキーボード内の何処に位置しようが、ポップアップキーボード11102の全体が表示されて、次の文字を迅速に選択することが可能となる。   As shown in FIG. 125, in zoom click mode, when the user attempts to touch a desired character (“b” in this example) on the pop-up keyboard 11102, an image of the touched portion of the keyboard Is greatly expanded. In the example illustrated in FIG. 125, when the user first depresses the touch screen, the cursor 12204 is not accurately positioned at the desired position. The user can easily correct this problem in the zoom click mode by dragging the finger 12202 to position the cursor 11102 at the position illustrated in FIG. Thereafter, when the user lifts his / her finger from the screen, the screen image returns to the normal scale. This causes the entire pop-up keyboard 11102 to be displayed, regardless of where the next character is located in the keyboard. Can be selected quickly.

図127に図示されているように、図126に於ける選択された文字「b」は、ポップアップキーボードのテキスト入力フィールド11104に入力されたように表示される。   As shown in FIG. 127, the selected character “b” in FIG. 126 is displayed as if it was entered in the text entry field 11104 of the pop-up keyboard.

ユーザが、図125乃至127に図示された処理によって文字の選択を継続する場合、ユーザは、「Enter(入力)」キーの選択を受けて、テキストの全文字列を入力することが出来るようになり、これにより、図128に示されたように、ウェブページの所望の位置に所望のテキストが入力される。   When the user continues to select characters by the processing illustrated in FIGS. 125 to 127, the user can select the “Enter” key and input the entire character string of the text. Thus, as shown in FIG. 128, a desired text is input at a desired position on the web page.

本発明の多くの実施形態に於いて、ズームクリックで使用されるズームは、スクリーン上の全部又は一部に以前表示されたビットマップを、例えば2倍、3倍などの整数倍で拡大することを含む。これにより、比較的処理能力の低いプロセッサを使用した場合でも、そうしたズーミングを実質的に瞬間に実行することが出来るので、ズームクリックは極めて速いユーザインターフェースとなる。   In many embodiments of the present invention, the zoom used with zoom clicks enlarges a bitmap that was previously displayed in whole or in part on the screen by an integer multiple, such as 2x or 3x. including. Thus, even when using a processor with a relatively low processing capability, such zooming can be performed substantially instantaneously, so zoom clicks provide a very fast user interface.

図129乃至137は、ウェブブラウザのユーザが、実質的により大きな倍率でライン境界を越えて、リフロー、又は、再レイアウトされるウェブページからテキストの部分を選択することが出来る発明の特徴を図示している。そうしたテキストのリフローは、小型スクリーンを有する表示上で特に有用であるが、これは、テキストのリフローによって、選択されたウェブテキストが、さらに大きなフォントで表示され、同時に、そうしたテキストの全ラインがそうしたスクリーン内に適合することが出来るからである。これにより、そうしたテキストの連続するラインを読むために、繰り返し水平方向にスクロールを進めたり戻したりする必要がなく、そうしたラインを素早く読むことが出来る。   FIGS. 129-137 illustrate features of the invention that allow a web browser user to select a portion of text from a web page that will be reflowed or re-layed across line boundaries at substantially greater magnification. ing. Such text reflow is particularly useful on displays with small screens, because text reflow causes the selected web text to be displayed in a larger font and at the same time all lines of such text are This is because it can fit within the screen. This allows you to read such lines quickly without having to repeatedly scroll back and forth horizontally to read those consecutive lines of text.

小型スクリーン表示の解像度がどの程度高解像度であるかに関わらず、表示が比較的接近して保持されていない限り、人間の目では比較的大きな解像度でそれが表示するもののみを視認することが出来る。本発明のこの特徴によって、ウェブテキストを、比較的大きな倍率で表示の幅内に適合するラインを越えて一塊として表示することが出来る。例えば、それにより、対角4インチスクリーンを有するハンドヘルドコンピュータのユーザは、5、6フィート離れて立っている人のグループが見るのに充分な大きさの縮尺でテキストを表示することが出来る。同様に、それにより、ユーザは携帯電話や腕時計サイズの表示を顔の近くまで保持することなく、これらの表示上でテキストを視認することが出来る。また、スクリーンから比較的遠くに離れた人や、視力が正常ではない人に対して、ウェブテキストを表示するために、通常のサイズのコンピュータ表示スクリーンと共にそれを使用することが出来る。   Regardless of how high the resolution of a small screen display is, the human eye can only see what it displays at a relatively large resolution unless the display is kept relatively close. I can do it. This feature of the present invention allows web text to be displayed as a lump over a line that fits within the width of the display at a relatively large magnification. For example, it allows a user of a handheld computer with a 4 inch diagonal screen to display text at a scale large enough for a group of people standing 5 or 6 feet apart. Similarly, it allows the user to see text on these displays without holding the cell phone or watch size display close to the face. It can also be used with a normal sized computer display screen to display web text to people who are relatively far away from the screen or to people with poor vision.

図129は、本発明の該特徴に従って、ウェブテキストを再表示するためにクライアントコンピュータで使用可能なプログラム12900に関する、高度に簡略化された擬似コード記述を示している。   FIG. 129 shows a highly simplified pseudo-code description for a program 12900 that can be used on a client computer to redisplay web text in accordance with this aspect of the invention.

当然のことながら、本発明の該特徴はクライアントコンピュータでの使用に制限されない。事実、図140乃至141に関して後述する種類のシステムに於いて見られるように、ウェブブラウザ以外のアプリケーションによって生成されたビジュアル出力を見る際に、変更を加えて、本発明の該特徴を使用することが出来る。   Of course, the features of the present invention are not limited to use with client computers. In fact, as seen in systems of the type described below with respect to FIGS. 140-141, use this feature of the present invention with modifications when viewing visual output generated by an application other than a web browser. I can do it.

多くのウェブページは、異なるコラムにテキストをレイアウトするように、即ち、そうしたレイアウトに関連して異なる水平方向の位置にテキストをレイアウトするように設計されている。ウェブページは、テーブルやフレームの使用を含む複数の異なる方法で、そうした異なる所望の水平置換を示すことが出来る。好ましい実施形態に於いて、異なる所望の水平置換に関するそうした指示を反映するために、そうした複数コラムレイアウトで、ウェブページのテキストを表示するオプションを有するウェブブラウザを用いて、そうしたテキストのリフローが使用される。ユーザが、新しい倍率で1つのコラムに於けるテキストのリフローに対して、そうしたマルチコラムウェブページレイアウトの領域を選択する場合、関数12902によって、関数12904乃至12908が実行される。   Many web pages are designed to lay out text in different columns, i.e., lay out text in different horizontal positions in relation to such layout. The web page can show such different desired horizontal permutations in a number of different ways, including the use of tables and frames. In a preferred embodiment, such text reflow is used with a web browser that has the option of displaying the text of a web page in such a multi-column layout to reflect such instructions regarding different desired horizontal substitutions. The If the user selects a region of such a multi-column web page layout for text reflow in a single column at a new scale factor, functions 12904 through 12904 are performed.

本発明の幾つかの実施形態に於いて、ユーザがより大きな縮尺でリフローしたいと考えているウェブページの幅の部分を越えて、例えば図130に図示されたスタイラス11902等のポインティングデバイスをドラッグすることによって、そうした選択を実行する。現在議論している方法によって、テキストをライン境界を越えてリフローすることができ、テキストの選択されたコラムをさらに大きなフォントで表示し、同時にそうしたテキストのライン全体をスクリーン内に適合させるという点を除いて、これは、図119に関して既に議論した内容と同様である。   In some embodiments of the present invention, the user drags a pointing device, such as the stylus 11902 illustrated in FIG. 130, beyond the width of the web page that the user wishes to reflow at a larger scale. To make that choice. The currently discussed method allows text to be reflowed across line boundaries, displaying selected columns of text in a larger font, and simultaneously fitting the entire line of text into the screen. Except this is similar to what has already been discussed with respect to FIG.

図129の関数12904は、選択されたレイアウト領域内に実質的に存在する、現在のウェブページのレイアウトに於ける全ての文字列と対応する下線部(即ち、リンクとしてのテキストのラベリング)を選択する。   Function 12904 in FIG. 129 selects all strings in the current web page layout that are substantially within the selected layout region and corresponding underlined portions (ie, labeling text as links). To do.

図131は、図117の下半分に示された図に類似した、図130に図示されたウェブページのレイアウト10206Aの最上部を図示している。図131に於いて、破線の矩形13102は、図130に於いてユーザによって選択されたコラムに対応するウェブページのレイアウトの部分を表している。   FIG. 131 illustrates the top of the web page layout 10206A illustrated in FIG. 130, similar to the view shown in the lower half of FIG. 131, a broken-line rectangle 13102 represents a portion of the layout of the web page corresponding to the column selected by the user in FIG.

本発明の幾つかの実施形態に於いて、かなりの部分、例えば、その長さの3分の2、又は、4分の3が、ユーザによって選択された領域内に適合する場合、文字列は選択された領域内に存在すると見なされる。例えば、図130に於いて、ユーザは同図に表示されたスクリーンの右側部分でテキストを選択しようとしていた。しかし、図130の例では、ユーザは、スタイラスのドラッグで、意図したコラムの幅を正確に選択することが出来なかった。それにも関わらず、関数12904は、選択された領域内に実質的に存在する全文字列を選択するので、あたかもユーザが意図したコラムを正確に選択したかのように、テキストリフローが実行される。   In some embodiments of the present invention, if a significant portion, eg, two-thirds or three-quarters of its length, fits within the region selected by the user, the string is It is considered to exist within the selected area. For example, in FIG. 130, the user was trying to select text in the right portion of the screen displayed in the figure. However, in the example of FIG. 130, the user cannot accurately select the intended column width by dragging the stylus. Nevertheless, function 12904 selects substantially all the strings that exist in the selected region, so text reflow is performed as if the user had correctly selected the intended column. .

図132は、選択された領域内に含まれる、図131に図示されたウェブページのレイアウトに於ける文字列の最初の部分を図示している。この図に於いて、下線部はリンクに対応するテキストの部分を示している。   FIG. 132 illustrates the first part of the string in the layout of the web page illustrated in FIG. 131 that is contained within the selected region. In this figure, the underlined portion indicates the portion of text corresponding to the link.

選択された領域の文字列の全てが選択された時点で、関数12906は、レイアウトに於ける接近性又は他の特質によって、それらが同一パラグラフの一部であることを示す、1つ又は複数の連続する文字列の内、任意のグループをラベル付けする。これは、パラグラフブラケット(Pが付された括弧)13202によって、図132に図示されている。   When all of the strings in the selected region have been selected, function 12906 may indicate that one or more of them are part of the same paragraph, due to accessibility or other characteristics in the layout. Label any group within a string of characters. This is illustrated in FIG. 132 by paragraph brackets (parentheses marked with P) 13202.

図132に図示されたように、この方法は、パラグラフである文字の全グループ分けを検出しない可能性があるが、そのテキストに対応するHTMLを参照する必要なく、それらの多くを検出するのである。記載されている本発明の実施形態に於いて、そうしたHTMLがプロキシサーバに保存されるが、これは、そのようなアクセスがクライアントコンピュータ及びプロキシサーバ間の通信に関連付けられた遅延が必要となることを意味している。他の実施形態に於いて、特に、クライアントコンピュータが常駐するフルブラウザを有する実施形態、又は、プロキシコンピュータへの高いアクセス回線容量接続を有する実施形態に於いて、選択された文字列が如何にしてパラグラフに於いてグループ化されるべきかを、より正確に決定するために、HTMLコードへのアクセスを使用することが出来る。他の実施形態に於いて、プロキシサーバにダウンロードされたレイアウト情報は、ウェブページのHTML内に含まれるパラグラフ境界に関する任意の情報を有することが出来る。幾つかの実施形態に於いて、そうしたリフローされたテキストを表示する薄型クライアント上ではなく、プロキシサーバ上で、そうしたテキストのリフローを実行することができ、これにより、プロキシサーバは、ウェブページの表示に含まれたパラグラフのグループ分けに関する任意の情報に直接アクセスすることが出来る。   As illustrated in FIG. 132, this method may not detect all groupings of characters that are paragraphs, but detects many of them without having to reference the HTML corresponding to the text. . In the described embodiment of the invention, such HTML is stored on a proxy server, which requires that such access requires a delay associated with communication between the client computer and the proxy server. Means. In other embodiments, particularly where the client computer resides in a full browser or in an embodiment with a high access line capacity connection to a proxy computer, how the selected string is Access to HTML code can be used to more accurately determine what should be grouped in a paragraph. In other embodiments, the layout information downloaded to the proxy server can include any information regarding paragraph boundaries contained within the HTML of the web page. In some embodiments, such text reflow can be performed on a proxy server rather than on a thin client that displays such reflowed text so that the proxy server can display a web page. You can directly access any information about the grouping of paragraphs contained in the.

選択された文字列がパラグラフにグループ化された時点で、関数12908は、表示スクリーン(又は、画像が表示スクリーン全体よりも小さい領域に表示されている場合には、表示ウインドウ)の幅を越えて、選択された拡大倍率を使用して、各パラグラムのテキストをリフローする。   When the selected strings are grouped into paragraphs, the function 12908 goes beyond the width of the display screen (or display window if the image is displayed in a smaller area than the entire display screen). Reflow the text of each paragram using the selected magnification.

このテキストリフロー処理は、図132の最上部に於ける文字列が新しい倍率でレイアウトされている図133に図示されている。図示されている例に於いて、図130のテキストは、同一スクリーン内に於いて元のサイズの2倍でリフローするために選択されている。薄型クライアントのユーザインターフェースによって、ユーザが適度なフォントサイズから極端に大きなフォントサイズに及ぶ、選択されたテキストリフロー関数を用いて使用される、複数の異なる倍率を選択可能であることが好ましい。   This text reflow process is illustrated in FIG. 133 in which the character string at the top of FIG. 132 is laid out at a new magnification. In the example shown, the text of FIG. 130 has been selected to reflow at twice the original size within the same screen. The thin client user interface preferably allows the user to select a plurality of different magnifications used with the selected text reflow function, ranging from moderate font sizes to extremely large font sizes.

図133に於いて、下線部は図132の下線部とは異なるものを表示するために使用されている。図133に於いて、図132に於ける通常のレイアウト文字列から生じた各ライン上のテキストは、連続するアンダーラインで図示されている。図132に於ける異なる文字列から生じる、図133に於ける同一ライン上のテキスト部分の間に於ける下線部の間隔は、それらの違いをより簡単に見ることが出来るように誇張されている。   In FIG. 133, the underlined portion is used to display something different from the underlined portion of FIG. In FIG. 133, the text on each line resulting from the normal layout string in FIG. 132 is illustrated with a continuous underline. The spacing of the underlined portion between the text portions on the same line in FIG. 133 resulting from the different character strings in FIG. 132 is exaggerated so that the differences can be seen more easily. .

図133に於いて、ラインの境界を越えて一塊になっている図132に図示された元のレイアウトから生じる個々の文字列の全てが、1つのライン上の部分から、次のライン上の継続する部分まで、矢印によって示されている。   In FIG. 133, all of the individual strings resulting from the original layout illustrated in FIG. 132 that are clustered across line boundaries are continued from the portion on one line to the next line. This is indicated by the arrows.

図134は、図130及び131に図示された元のレイアウトの選択された文字列が、薄型クライアントのスクリーン上に約2倍のサイズでリフローされた時点で、どのように見えるかを示す概略図である。図134を参照して分かる通り、ウェブテキストはそうしたテキストリフローによって、遠くから格段に見易くなる。2倍の代わりに、4倍又は6倍で同一テキストをリフローすることによって、表示スクリーンから相当離れた場所にいるユーザに対して、同一ウェブコンテンツを表示することが可能になる。   FIG. 134 is a schematic diagram showing how the selected string of the original layout illustrated in FIGS. 130 and 131 looks when it is reflowed on the thin client screen at approximately twice the size. It is. As can be seen with reference to FIG. 134, such text reflow makes the web text much easier to see from a distance. By reflowing the same text at 4 times or 6 times instead of 2 times, it becomes possible to display the same web content to a user located far away from the display screen.

図135乃至137は、リフローされるテキストの部分をユーザが選択可能な他の方法を図示している。   FIGS. 135-137 illustrate other ways in which the user can select the portion of text to be reflowed.

図135は、他のテキストの一部分、又は、複数部分が侵入するテキストの中央コラムを有するウェブページの部分を図示している。   FIG. 135 illustrates a portion of a web page having a central column of text into which another portion of text or multiple portions intrude.

図136は、ウェブページ全体のレイアウトの縮小ビューをユーザがどのように取得したかを図示している。多くの実際の実施形態に於いては、小さ過ぎるので個々の文字としてそうした縮小ビューで表示することが出来ないテキストの部分を示すために、テキストグリーキングが使用される。ウェブページ全体のレイアウトが薄型クライアント自体に保存された、図115乃至117に関して上述されたような、薄型クライアントコンピュータ上で、そうした縮小ビューを迅速に生成することが出来る。   FIG. 136 illustrates how the user obtained a reduced view of the layout of the entire web page. In many practical embodiments, text greeking is used to indicate portions of text that are too small to be displayed in such a reduced view as individual characters. Such reduced views can be quickly generated on a thin client computer, as described above with respect to FIGS. 115-117, where the entire web page layout is stored on the thin client itself.

図136に於いて、多角形領域に於ける角部でウェブページの表示をクリックすることによって、ユーザが拡大ウェブページビュー上のそうした領域を定義可能なモードを、ユーザが選択している。これが実行される時点で、何れのテキストがリフローされるかを選択するために、選択された領域が図129に図示された関数12904によって使用される。   In FIG. 136, the user has selected a mode in which the user can define such an area on the enlarged web page view by clicking on the display of the web page at a corner in the polygonal area. When this is done, the selected region is used by function 12904 illustrated in FIG. 129 to select which text is reflowed.

図137は、選択されたテキストがリフローされ、表示された時点で、選択されたテキストがどのように見えるかを図示している。   FIG. 137 illustrates how the selected text will appear when the selected text is reflowed and displayed.

図138乃至139は、図2に関して上述されたフォントサーバ230をより詳細に説明している。   FIGS. 138 through 139 describe the font server 230 described above with respect to FIG. 2 in more detail.

図138に於いては、複数のクライアントブラウザ200が存在し、各クライアントブラウザが、同一のプロキシサーバ210を介して1つ又は複数のサーバ220からのコンテンツにアクセスし、同一フォントサーバ230からのフォントにアクセスするという点を除いて、図138は図2に対応している。   In FIG. 138, there are a plurality of client browsers 200, and each client browser accesses content from one or a plurality of servers 220 via the same proxy server 210, and fonts from the same font server 230 are displayed. FIG. 138 corresponds to FIG.

これは、各薄型クライアントブラウザで使用するために販売され、ライセンスを受け、又は、頒布されたソフトウェアが、クライアントが有していないフォントを同一フォントサーバ230から検索するようにプログラムされ、同一プロキシサーバ210を介してウェブ要求を実行するようにプログラムされているからである。言うまでもなく、本発明の該特徴に関する他の実施形態に於いて、薄型クライアントは、それらの地理的位置、又は、インターネットサービスプロバイダなどの要因に基づいて、一般的な複数のプロキシサーバの内、何れのプロキシサーバを使用すべきかを選択するようにプログラムされている。フォントを要求、受信する一般的な複数のフォントサーバの内、何れかのフォントサーバを選択するために、薄型クライアントは同様の内容を検討することが出来る。   This is the same proxy server where the software sold, licensed or distributed for use with each thin client browser is programmed to retrieve fonts that the client does not have from the same font server 230 This is because it is programmed to execute the web request via 210. Of course, in other embodiments relating to this feature of the present invention, thin clients may use any of a number of common proxy servers based on their geographical location or factors such as Internet service providers. Programmed to choose which proxy server to use. In order to select any one of a plurality of general font servers that request and receive fonts, the thin client can consider the same contents.

図139は、図138に図示された種類のフォントサーバ上で使用可能なプログラム13900の高度に簡略化された擬似コード記述である。また、通常のブラウザコンピュータに加えて、ウェブブラウザ以外のアプリケーションを実行するコンピュータに対してフォントを供給するために、このフォントサーバを使用することが出来る。   FIG. 139 is a highly simplified pseudo code description of a program 13900 that can be used on a font server of the type illustrated in FIG. In addition to a normal browser computer, this font server can be used to supply fonts to a computer that executes an application other than a web browser.

フォントサーバが、コンピュータから指定されたフォントの文字に対するHTTP要求を受信する場合、関数13902によって、ステップ13904乃至13922が実行される。   When the font server receives an HTTP request for a character of the specified font from the computer, steps 13904 to 13922 are executed by the function 13902.

図139に図示されたフォントサーバコードの特定の実施形態は、指定されたサイズで指定されたフォントに対して設計された各文字を別個のHTTP要求で特定するプロトコルと共に使用するために設計されている。それは、所望のフォント、フォントサイズ、及び、文字を、URLパス名の一部として指定する。言うまでもなく、他の実施形態に於いては、フォントサーバによって、HTTP要求が複数の文字、複数のフォントを指定可能であり、そして/又は、URLパス名以外でフォントを指定することが可能である。   The particular embodiment of the font server code illustrated in FIG. 139 is designed for use with a protocol that identifies each character designed for a specified font at a specified size in a separate HTTP request. Yes. It specifies the desired font, font size, and characters as part of the URL path name. Of course, in other embodiments, an HTTP request can specify multiple characters, multiple fonts, and / or a font other than a URL pathname, by a font server. .

各文字フォント形状を別々に要求するシステムに於いて、HTTPプロトコル1.1又はそれ以降のプロトコルが使用されることが好ましいが、これは、そうした各要求を処理するために別個の接続をオープン、又は、クローズする必要なく、そうしたプロトコルによって、複数のHTTP要求を所定のクライアントコンピュータからサーバによって処理することが出来るからである。   In systems that require each character font shape separately, the HTTP protocol 1.1 or later protocol is preferably used, which opens a separate connection to handle each such request, Alternatively, it is possible to process a plurality of HTTP requests from a predetermined client computer by a server by using such a protocol without the need for closing.

図139に図示された本発明の実施形態に於いて、フォントサーバが、要求に於いて指定されたURLパス名に一致するフォントビットマップを現在保存していると判断する場合、関数13904によって、関数13906が、URL要求がなされたネットワークアドレスに対するHTTPの応答に於いて、そのフォントを送信し、その後、関数13908が関連するアカウントに処理を命令する。そのようにダウンロードされたフォントは、フォントビットマップ、又は、フォントアウトライン記述の何れかであっても良い。   In the embodiment of the present invention illustrated in FIG. 139, if the font server determines that it currently stores a font bitmap that matches the URL pathname specified in the request, then by function 13904, Function 13906 sends the font in the HTTP response to the network address for which the URL request was made, and then function 13908 directs the associated account to process. The downloaded font may be either a font bitmap or a font outline description.

そうしたアカウントの命令は、本発明のすべての実施形態に於いて使用される訳ではない。それが使用される実施形態の幾つかに於いて、命令されたアカウントは、フォントが送信されるコンピュータに関連するアカウントである。他の実施形態に於いては、命令は、そうしたフォントの仕様を含んだウェブページに関連付けられたグループのアカウントに対して行われる。さらに他の実施形態に於いては、命令は、上述した種類のプロキシサーバに関連付けられたアカウント、又は、そうしたプロキシサーバのサービスのユーザに対して行われる。   Such account instructions are not used in all embodiments of the invention. In some of the embodiments in which it is used, the commanded account is the account associated with the computer to which the font is sent. In other embodiments, the instructions are made to a group account associated with a web page that includes such a font specification. In yet another embodiment, the instructions are made to an account associated with a proxy server of the type described above, or to a user of such a proxy server service.

要求されたフォントがフォントサーバの記憶装置に存在せず、要求されたフォントがフォントサーバの対応するアウトラインフォントを有するビットマップである場合、関数13910によって、関数13912乃至13922が実行される。   If the requested font does not exist in the font server storage and the requested font is a bitmap with the font server's corresponding outline font, functions 13912 through 13922 are executed by function 13910.

関数13912は、HTTP要求のフォントパス名によって示されたサイズ及び実行可能な変換などの属性を有するビットマップを生成する。この関数は、要求されたフォントのパス名によって、サブピクセル最適化バージョンのフォントが望まれていることが示されたかどうかを決定することを含む。それが示された場合、関数13914及び13916は、好ましくは、図55乃至96に関して上述された非線形カラーバランス法を使用して、サブピクセル最適化バージョンのフォントを生成する。   The function 13912 generates a bitmap having attributes such as the size and executable conversion indicated by the font path name of the HTTP request. This function includes determining whether the pathname of the requested font indicated that a subpixel optimized version of the font was desired. Where indicated, the functions 13914 and 13916 preferably generate a sub-pixel optimized version of the font using the non-linear color balance method described above with respect to FIGS.

フォントビットマップが生成された時点で、関数13918は、ネットワークを介して、要求中のアドレスに対するHTTPの応答に於いてビットマップを送信する。関数13920は、要求に於いて指定されたパス名に対応するアドレスで、フォントビットマップをキャッシュする。関数13922は、関数13910に関して既に議論したように、命令が実行される実施形態に於いて、処理に関連するアカウントに命令する。   When the font bitmap is generated, function 13918 sends the bitmap in the HTTP response to the requesting address over the network. Function 13920 caches the font bitmap at the address corresponding to the path name specified in the request. Function 13922 commands the account associated with the process in the embodiment in which the command is executed, as previously discussed with respect to function 13910.

図140は、リモートコンピュータ1400上で起動する1つ又は複数のアプリケーションによって、薄型クライアントコンピュータ200が、スクリーン出力として生成されたテキスト及び画像に対応するデジタルコンテンツを表示することが出来るように、本発明の特定の特徴を使用することが出来ることを図示している。そうしたアプリケーションは、ウェブブラウザ、表計算、ワードプロセッサ、データベースプログラム、又は、仮想スクリーン表示を生成可能な以如何なる種類のソフトウェアであっても良い。   FIG. 140 illustrates the present invention so that thin client computer 200 can display digital content corresponding to text and images generated as screen output by one or more applications running on remote computer 1400. It illustrates that certain features of can be used. Such an application may be a web browser, spreadsheet, word processor, database program, or any type of software capable of generating a virtual screen display.

リモートコンピュータは、リモートコンピュータのオペレーティングシステム14004のディスパッチテーブル14008に於けるフックを含む、リモートスクリーン生成プログラム14006を含む。これらのフックは、所定の表示解像度でスクリーンに対して、テキスト、形状、ライン、制御オブジェクト、ビットマップを描画するために、一つ又は複数のアプリケーション14002によって実行されたオペレーティングシステムに対する呼び出しを遮る。幾つかの実施形態に於いて、そうした描画コマンドによって、コンテンツがリモートコンピュータに関連付けられたスクリーン上に実際に表示され、その他の実施形態に於いては、リモートコンピュータにはスクリーンが存在しないので、そうした描画コマンドが仮想スクリーンに対して実行される。以下のテキストに於いて、簡略化するために、仮想スクリーンとして、所定のクライアントコンピュータ上でグラフィック出力を表示し、ユーザ入力を受信しているとこれらのアプリケーションが判断する映像空間について言及する。   The remote computer includes a remote screen generation program 14006 that includes hooks in the dispatch table 14008 of the remote computer operating system 14004. These hooks block calls to the operating system executed by one or more applications 14002 to draw text, shapes, lines, control objects, and bitmaps on the screen at a predetermined display resolution. In some embodiments, such a drawing command causes the content to actually be displayed on the screen associated with the remote computer, while in other embodiments the remote computer does not have a screen, so A drawing command is executed on the virtual screen. In the text below, for the sake of simplicity, reference is made to the video space that these applications determine as receiving a user input and displaying a graphic output as a virtual screen on a given client computer.

アプリケーション14002の1つがオペレーティングシステムに対して表示要素を描画するように要求する場合、リモートスクリーンジェネレータの対応するルーチン14010への対応する呼び出しを行うために、オペレーティングシステムのディスパッチテーブルに於けるフックの一つによって、その呼び出しが遮られる。図102、及び、106A乃至106Cに関して上述した方法と同様の方法に於いて、これにより、図102及びそれに続く図に関して上述された表示リスト10212と実質的に類似した、ダウンロード表示リスト10212Aが生成される。そうしたシステムに関する多くの実施形態に於いて、ビットマップ描画ルーチンの呼び出しによって、上述の種類の縮小及びサブピクセル最適化された画像がダウンロード用に生成され、測定文字列ルーチン及び文字列描画ルーチンへの呼び出しは、8ピクセル/em又はそれ未満と同様に小さなサイズのフォントを含む、サブピクセル最適化されたフォント又は他のアンチエイリアス処理されたフォントの置換及びフォントマトリクスを含む。   When one of the applications 14002 requests the operating system to draw a display element, one of the hooks in the operating system dispatch table is used to make a corresponding call to the corresponding routine 14010 of the remote screen generator. The call is blocked by one. In a manner similar to that described above with respect to FIGS. 102 and 106A-106C, this produces a download display list 10212A that is substantially similar to the display list 10212 described above with respect to FIG. 102 and subsequent figures. The In many embodiments for such systems, a bitmap rendering routine call generates a reduced and sub-pixel optimized image of the type described above for download and provides the measurement string routine and string rendering routine. Calls include sub-pixel optimized fonts or other anti-aliased font substitutions and font matrices, including fonts as small as 8 pixels / em or less.

図102に図示された制御10214乃至10218に対応する、ズーム、スクロール、及び、仮想レイアウト制御1412は、仮想スクリーンへの薄型クライアントのビューウインドウのマッピングを制御し、したがって、アプリケーションによって仮想スクリーンに描画された要素が、ダウンロード表示リスト10212Aに描画され配置される表示倍率を制御する。これが画像ビットマップのサブピクセル最適化と、図106A乃至106Cに関して上述された種類のフォント置換とを含むことが好ましい。   The zoom, scroll, and virtual layout controls 1412 corresponding to the controls 10214 to 10218 illustrated in FIG. 102 control the mapping of the thin client's view window to the virtual screen and are therefore rendered on the virtual screen by the application. The display magnification that is drawn and arranged in the download display list 10212A is controlled. This preferably includes sub-pixel optimization of the image bitmap and font substitution of the type described above with respect to FIGS. 106A-106C.

ダウンロード表示リストが所定の仮想スクリーンに対して生成された時点で、図109A乃至109Cに関して上述された方法と同様の方法で、後にそのスクリーン上にダウンロード表示リストを描画する、対応するクライアントコンピュータにダウンロード表示リストが圧縮され、ダウンロードされる。   When a download display list is generated for a given virtual screen, download to a corresponding client computer that will later draw the download display list on that screen in a manner similar to that described above with respect to FIGS. 109A-109C. The display list is compressed and downloaded.

本発明の幾つかの実施形態に於いて、仮想スクリーンに対する個々の描画は、薄型クライアントにダウンロードされた対応する描画コマンドを有する。仮想スクリーンへの対応する変更に応答して、薄型クライアントスクリーンに対する僅かな変更を実行可能な速度を速めるために、これを利用することが出来る。   In some embodiments of the invention, each drawing on the virtual screen has a corresponding drawing command downloaded to the thin client. This can be used to increase the speed at which minor changes to the thin client screen can be performed in response to corresponding changes to the virtual screen.

図140に図示された実施形態に於いて、スクリーン位置に関連付けられたユーザ入力が、薄型クライアントからリモートコンピュータにアップロードされ、スクリーン位置は、薄型クライアントのビューウインドウと仮想スクリーン間のマッピングを反映するために、スクリーン座標を変換させる。これが実行される時点で、そうしたイベントは。それらの変換されたスクリーン座標を用いてリモートコンピュータオペレーティングシステムのイベント待ち行列にセットされ、これにより、関連するアプリケーション14002は、あたかもそれがリモートコンピュータの対応する仮想スクリーン上に入力されたかの様に、そのイベントに対応する。   In the embodiment illustrated in FIG. 140, user input associated with a screen location is uploaded from the thin client to the remote computer, and the screen location reflects the mapping between the thin client's view window and the virtual screen. To convert the screen coordinates. At the time this is done, such an event. These transformed screen coordinates are used to set the event queue of the remote computer operating system, so that the associated application 14002 will have its input as if it were entered on the corresponding virtual screen of the remote computer. Corresponds to the event.

例えば、ラップリンク社(所在地:ZIPコード98011、アメリカ合衆国 ワシントン州 ボセル ノースクリークパークウェイ 18912 スイート100)のLapLink、又は、シマンテック社(所在地:ZIPコード95014 アメリカ合衆国 カリフォルニア州 クパティーノ スティーヴンスクリークブルバード 20330)のpcAnyware等の、スクリーン共有アプリケーションによって使用される技術の多くを、図140に図示された種類の本発明の実施形態と共に使用することが出来る。実際、同図に於けるリモートコンピュータが自身のスクリーンを有する場合、図140に図示された実施形態を、クライアントコンピュータとリモートコンピュータ間でのスクリーン共有を実行するために使用することが出来る。   For example, LapLink (location: ZIP code 98011, Washington, Washington, USA, North Creek Parkway 18912 Suite 100), LapLink, or Symantec (location: ZIP code 95014, Cupertino Steven Creek Boulevard, California, USA 20330) pcAnyware, etc. Many of the techniques used by screen sharing applications can be used with embodiments of the present invention of the type illustrated in FIG. Indeed, if the remote computer in the figure has its own screen, the embodiment illustrated in FIG. 140 can be used to perform screen sharing between the client computer and the remote computer.

当然のことながら、クライアントコンピュータが十分な演算能力を有する実施形態に於いては、クライアント及びリモートコンピュータは、ピアツーピアの方法で動作可能である。リモートコンピュータは、専用のアプリケーションサーバコンピュータであっても良いし、例えば、デスクトップコンピュータ、ラップトップコンピュータ、又は、タブレットコンピュータを含むパーソナルコンピュータ等の如何なる種類のコンピュータであっても良い。   Of course, in embodiments where the client computer has sufficient computing power, the client and the remote computer can operate in a peer-to-peer manner. The remote computer may be a dedicated application server computer or any type of computer such as a desktop computer, a laptop computer, or a personal computer including a tablet computer.

図141は、上述した本発明の特徴に従って、そうしたアプリケーションによって生成されたスクリーン表示が、縮小、及び/又は、サブピクセル最適化されるように、1つ又は複数のアプリケーション14002によって生成されたオペレーティングシステムの呼び出しを遮るために、コンピュータのオペレーティングシステム14004のディスパッチテーブル14008に於いてフックを用いている点で、図140に図示された実施形態に幾分類似している本発明の実施形態を図示している。図141の実施形態が図140に図示されたクライアントサーバの実施形態と異なるのは、図141に図示されているように、それが1つのコンピュータシステム14100上で動作するように設計されている点である。それらの出力があたかも高解像度を有する仮想スクリーンに表示されているかのように、修正することなく、そうしたプログラムを実行するために、低解像度スクリーンであるが、デスクトップアプリケーションの起動に十分なパワーを備えるコンピュータ上で、このシステムのプログラミングを使用することが出来る。また、より大型のスクリーンの一部に、アプリケーションの出力スクリーンに関する縮小版を描画するために、それを使用することが出来る。   FIG. 141 illustrates an operating system generated by one or more applications 14002 such that screen displays generated by such applications are reduced and / or sub-pixel optimized in accordance with features of the invention described above. 140 illustrates an embodiment of the present invention that is somewhat similar to the embodiment illustrated in FIG. 140 in that it uses a hook in the dispatch table 14008 of the computer operating system 14004 to block calls to ing. The embodiment of FIG. 141 differs from the client server embodiment illustrated in FIG. 140 in that it is designed to operate on a single computer system 14100, as illustrated in FIG. It is. A low-resolution screen, but with enough power to launch a desktop application to run such programs without modification, as if their output were displayed on a virtual screen with high resolution You can use the programming of this system on a computer. It can also be used to draw a reduced version of the application's output screen on a portion of a larger screen.

この実施形態に於いては、それらの出力がスクリーン10220A上に表示される解像度に比して、より大きな仮想解像度で、スクリーン上で動作していることがアプリケーション14002に報告される。そうしたアプリケーションが、スクリーンに対して要素を描画するために、オペレーティングシステムに対する呼び出しを行う場合、OSディスパッチテーブル14008にセットされたフックによって、拡大/縮小されたサブピクセル最適化スクリーンジェネレータプログラム14006Aの一部分14010A内の対応する描画ルーチンが起動される。この置換描画ルーチンは、上述されたように、縮小、及び/又は、サブピクセル最適化されたビットマップの作成を含む、仮想スクリーン表示リスト10206Bに対応する要素を描画する。また、それによって、現在のビューウインドウ10210C内に適合する仮想スクリーンの部分に描画されたそうしたスクリーン要素の任意の部分が、オペレーティングシステムで描画コマンドを呼び出すこと、又は、それら自身をそのスクリーン上に直接描画することによって、コンピュータ14100の表示スクリーン10220A上に、縮小、及び/又は、サブピクセル最適化された方法で即座に表示される。   In this embodiment, the application 14002 is reported that their outputs are operating on the screen at a higher virtual resolution than the resolution displayed on the screen 10220A. When such an application makes a call to the operating system to render an element on the screen, a portion 14010A of the subpixel optimized screen generator program 14006A scaled by hooks set in the OS dispatch table 14008. The corresponding drawing routine in is started. This replacement rendering routine renders elements corresponding to the virtual screen display list 10206B, including the creation of reduced and / or sub-pixel optimized bitmaps as described above. It also allows any part of those screen elements drawn on the part of the virtual screen that fits within the current view window 10210C to call the drawing command in the operating system, or to place them directly on that screen. By drawing, it is immediately displayed on the display screen 10220A of the computer 14100 in a reduced and / or sub-pixel optimized manner.

アプリケーションプログラムが測定文字列コマンドに対してオペレーティングシステムを呼び出す際に、そのコマンドも同様に遮られ、これにより、その呼び出しは、図106Aの関数10608乃至10618に関して上述された方法で、置換されたフォントサイズに対するフォントマトリクスを返す。   When an application program invokes the operating system for a measurement string command, that command is similarly blocked, so that the call is replaced with a font that has been replaced in the manner described above with respect to functions 10608 through 10618 in FIG. 106A. Returns the font matrix for the size.

コンピュータのスクリーンへのスクリーンイベント入力は、オペレーティングシステムのイベント待ち行列から抽出され、そうしたイベントがスクリーン上で生成されたスクリーン座標を、そうした変換を制御するために、その仮想スクリーンへのビューウインドウのマッピングを使用して、表示リストによって表現された仮想スクリーンのレイアウトに於ける対応する位置に変換するイベント位置スケーラに送られる。イベントの座標が適切に変換された時点で、イベントはオペレーティングシステムのイベント待ち行列に戻され、オペレーティングシステムによって、あたかもイベントが仮想スクリーン上に入力されたかのように、アプリケーションがイベントに対応する。   Screen event input to the computer screen is extracted from the operating system event queue, and the screen coordinates at which such events are generated on the screen map the view window to that virtual screen to control such transformations. Is sent to the event position scaler which translates to the corresponding position in the virtual screen layout represented by the display list. When the event coordinates are properly transformed, the event is returned to the operating system event queue, and the application responds to the event as if it had been entered on the virtual screen by the operating system.

図141に図示された種類の本発明に関する実施形態によって、コンピュータのユーザは、標準的なコンピュータアプリケーション14002によって生成されたスクリーン上で、それらのアプリケーションが、選択されたテキストリフローをサブピクセル最適化、縮小、ズーム、及び、実行する機能をサポートするべく設計されていない場合であっても、これらの機能を行うことが出来る。   According to embodiments of the present invention of the type illustrated in FIG. 141, computer users can subpixel optimize selected text reflows on a screen generated by a standard computer application 14002, These functions can be performed even if not designed to support scaling, zooming, and performing functions.

図示しない本発明の他の実施形態に於いて、コンピュータのオペレーティングシステムは、図141に図示された拡大/縮小されたサブピクセル最適化スクリーンジェネレータ14006Aに図示された種類の機能性を含むように変更することが出来る。さらに本発明の他の実施形態に於いて、ブラウザプログラムを含むアプリケーションプログラム14002を、そうした機能性の全部又は一部を直接的にサポートするために変更することが出来る。   In another embodiment of the present invention not shown, the computer operating system is modified to include the type of functionality illustrated in the scaled subpixel optimized screen generator 14006A illustrated in FIG. I can do it. Furthermore, in other embodiments of the present invention, the application program 14002 including the browser program can be modified to directly support all or part of such functionality.

図142は、例えば、同図に図示された薄型クライアントコンピュータ200A乃至200Dなどの薄型クライアントコンピュータを、ワイヤレスネットワークを介して、インターネットコンテンツ、又は、アプリケーションプログラムにアクセスするために使用することが出来るように、図102及び140に図示された本発明の実施形態を如何にして使用することが出来るかを図示している。   FIG. 142 illustrates that a thin client computer such as, for example, the thin client computers 200A-200D illustrated in FIG. 142 can be used to access Internet content or application programs over a wireless network. Figures 102 and 140 illustrate how the embodiments of the invention illustrated in Figures 102 and 140 can be used.

この図に於いて、コンピュータ200A乃至200Dは、図102及び140に図示された薄型ライアントコンピュータ200に対応する。コンピュータ200Aはハンドヘルドコンピュータである。薄型クライアントコンピュータ200Bは、携帯電話機である。薄型クライアントコンピュータ200Cは、腕時計型コンピュータである。薄型クライアントコンピュータ200Dは、頭部装着型コンピュータ、又は、ポータブルコンピュータ用の頭部装着型ディスプレイである。これらの薄型クライアントコンピュータのそれぞれは、サブピクセルアドレス可能な表示を有することが出来る。   In this figure, computers 200A to 200D correspond to the thin client computer 200 shown in FIGS. The computer 200A is a handheld computer. The thin client computer 200B is a mobile phone. The thin client computer 200C is a wristwatch type computer. The thin client computer 200D is a head mounted computer or a head mounted display for a portable computer. Each of these thin client computers can have a subpixel addressable display.

本出願の出願時に於いて、本発明の殆どの特徴で使用するのに充分高い解像度を有するうした種類の各装置に対して、現在スクリーンを製造することは可能である。例えば、現時点で、2インチ又はそれ未満の対角長を有する320×240カラーLCD表示を製造することは可能である。現在、さらに高解像度を有する有機LED装置を製造することが出来る。近い将来、そうした小型スクリーンのコストは低下するはずであり、それらの利用可能性及び解像度は増大するはずである。   At the time of filing of the present application, it is now possible to produce a screen for each type of device that has a sufficiently high resolution for use with most features of the present invention. For example, it is currently possible to produce a 320 × 240 color LCD display having a diagonal length of 2 inches or less. At present, it is possible to manufacture organic LED devices having higher resolution. In the near future, the cost of such small screens should decrease, and their availability and resolution should increase.

図142に図示された薄型クライアントコンピュータの全ては、図102に図示された種類のリモートプロキシサーバコンピュータ210、又は、図140に関して図示された種類のリモートアプリケーションサーバ14000に関して上述された種類の情報を、送受信可能にするワイヤレストランシーバを有している。そうしたトランシーバは、ワイヤレスLANトランシーバ14204と通信するためのワイヤレスLANトランシーバであってもよく、ワイヤレスインターネットトランシーバ14202と通信するためのデジタル携帯電話ワイヤレストランシーバであってもよく、また、両方の種類のワイヤレストランシーバと通信するように設計されたトランシーバであることが望ましい。他の実施形態に於いて、例えば、Bluetooth又は赤外線通信など、他の種類の無線通信を使用することが出来る。   All of the thin client computers illustrated in FIG. 142 receive the type of information described above with respect to the remote proxy server computer 210 of the type illustrated in FIG. 102 or the remote application server 14000 of the type illustrated with respect to FIG. It has a wireless transceiver that enables transmission and reception. Such a transceiver may be a wireless LAN transceiver for communicating with a wireless LAN transceiver 14204, a digital cell phone wireless transceiver for communicating with a wireless internet transceiver 14202, and both types of wireless transceivers. It is desirable for the transceiver to be designed to communicate with. In other embodiments, other types of wireless communications can be used, such as, for example, Bluetooth or infrared communications.

図142に図示されたリモートコンピュータ14000AA乃至14000ACは、図140に図示されたリモートサーバコンピュータ14000に対応する。   The remote computers 14000AA to 14000AC illustrated in FIG. 142 correspond to the remote server computer 14000 illustrated in FIG.

図142に図示されたリモートアプリケーションサーバコンピュータ14000AAは、ラップトップコンピュータ、デスクトップコンピュータ、サーバコンピュータ、又は、リモートアプリケーションサーバコンピュータ14000として動作するようにプログラム可能な他の種類のコンピュータを表現している。サブピクセル最適化されたアプリケーションサーバ14000ABは、そうしたクライアントに関連したLAN又はWANに接続された複数の薄型クライアントコンピュータ用のアプリケーションを実行するために設計されている、図140に図示された一般的な種類のリモートコンピュータである。リモートコンピュータ14000AA及び14000ABは、プライベートローカルエリアワイヤレストランスミッタ14204を介して、薄型クライアントと通信可能であるか、又は、数字10222及び14202によって示されているように、ワイヤレスインターネットを介して薄型クライアントと通信可能である。   The remote application server computer 14000AA illustrated in FIG. 142 represents a laptop computer, desktop computer, server computer, or other type of computer that can be programmed to operate as a remote application server computer 14000. The subpixel-optimized application server 14000AB is designed to run applications for multiple thin client computers connected to a LAN or WAN associated with such a client, as shown in FIG. A kind of remote computer. Remote computers 14000AA and 14000AB can communicate with the thin client via private local area wireless transmitter 14204, or can communicate with the thin client via the wireless Internet, as indicated by numerals 10222 and 14202. It is.

サブピクセル最適化されたアプリケーションサーバ14000ACは、複数の薄型クライアントコンピュータ200がインターネットを介して、数字14202によって示されたワイヤレストランスミッションネットワークによって、アプリケーションを使用することが出来るように、直接的にインターネットに接続されている点を除いて、サーバ14000ABに類似したアプリケーションサーバである。   The subpixel optimized application server 14000AC connects directly to the Internet so that multiple thin client computers 200 can use the application over the Internet by the wireless transmission network indicated by numeral 14202. This is an application server similar to the server 14000AB except for the above.

図142に於いて、図102に関して上述された種類のプロキシサーバ210は、LAN又はWAN14204に接続されていることが図示されている。例えば、これは、企業がインターネットに接続しないことを希望するウェブブラウズを処理しようとするプロキシサーバであっても良い。当然のことながら、例えば、商業的なプロキシ提供サービスを供給する企業によって運営されているプロキシサーバなど、他のプロキシサーバは、通常、図142に於いても同様に図示されたインターネット10222に直接的に接続される。   In FIG. 142, a proxy server 210 of the type described above with respect to FIG. 102 is shown connected to a LAN or WAN 14204. For example, this may be a proxy server that attempts to handle web browsing that the company wishes to not connect to the Internet. Of course, other proxy servers, such as, for example, a proxy server operated by a company that provides commercial proxy provisioning services, are typically directly connected to the Internet 10222 also illustrated in FIG. Connected to.

図142に図示されたシステムによって、実質、常に都合良く持ち運び可能な小型コンピュータは、ウェブページ及び殆どのアプリケーションプログラムの出力にアクセスし、表示することが出来る。本出願の出願時に於いて、例えば、図142に図示されたLANトランシーバ14204などの比較的安価なワイヤレスLANトランシーバの回線容量は、ケーブルモデムに接続されたデスクコンピュータ上でそうしたデジタルコンテンツを見ることが出来る速さと略同様の速さで、図142に図示された種類の薄型クライアントが、ウェブコンテンツ又はアプリケーションプログラムの出力を見ることが出来る程、充分に高速である。そして、これは、ポケットの中、手首の上、又は、眼鏡の一部として持ち運び可能な機械であり、スイッチがオンの状態になって数秒以内にそうしたメディアにアクセス可能な機械装置である。   The system illustrated in FIG. 142 allows a small computer that is practically always convenient to carry to access and display web pages and the output of most application programs. At the time of filing this application, the line capacity of a relatively inexpensive wireless LAN transceiver, such as, for example, the LAN transceiver 14204 illustrated in FIG. 142, allows such digital content to be viewed on a desk computer connected to a cable modem. The thin client of the type illustrated in FIG. 142 is fast enough to see the output of the web content or application program at a rate similar to that possible. And this is a machine that can be carried in a pocket, on the wrist, or as part of eyeglasses, and is a mechanical device that can access such media within seconds after the switch is turned on.

本出願の出願時にアメリカで一般的に利用可能なデジタル携帯電話の回線容量に於いて、通常、殆どのウェブページのテキスト全体をダウンロードするためには数秒かかり、ウェブページの画像をダウンロードするには、さらに時間がかる。言うまでもなく、本発明の多くの実施形態は、テキストの一部が受信され次第、テキストの表示を開始し、ユーザはダウンロードされたページの一部を極めて迅速に見始めることが出来る。   Downloading the web page image usually takes a few seconds to download the entire text of most web pages on the digital cellular phone capacity generally available in the United States at the time of filing this application It takes more time. Of course, many embodiments of the present invention begin displaying text as soon as a portion of the text is received, allowing the user to begin viewing a portion of the downloaded page very quickly.

本出願時に於いて、数十万ビット/秒、又は、数百万ビット/秒の範囲で回線容量を提供可能な、新規のより高速なデジタル携帯電話システムが開発されている。そのような、より高速のシステムが一般的に展開されるようになった時点で、本発明のユーザは、DSLやケーブルモデム接続を介して、デスクトップ又はラップトップ上でウェブページにアクセスする場合と殆ど同じスピードと快適さで、ユーザが移動する殆どの場所で数秒以内にスイッチをオンの状態にすることが可能な小型のポータブルデバイス上で、ウェブページ及びアプリケーションスクリーンを読み取ることができ、やり取りすることが出来る。
本発明のユーザは、DSL又はケーブルモデムを介してデスクトップコンピュータ又はラップトップコンピュータ上でアクセスしているかのように、移動先の大抵の場所でスイッチオンから数秒以内に使用され得る小型の携帯装置上で、ウェブページやアプリケーション画面を読んで相互に対話出来る様になる。
At the time of this application, a new, higher-speed digital cellular phone system capable of providing line capacity in the range of hundreds of thousands of bits / second or millions of bits / second has been developed. When such higher speed systems are commonly deployed, users of the present invention may access web pages on a desktop or laptop via a DSL or cable modem connection. Read and interact with web pages and application screens on a small portable device that can be switched on within seconds in most places where the user moves, with almost the same speed and comfort I can do it.
The user of the present invention is on a small portable device that can be used within a few seconds of switch-on in most places of travel, as if accessing on a desktop or laptop computer via DSL or cable modem Now you can read web pages and application screens and interact with each other.

図143乃至144は、図102に関して上述された種類のプロキシサーバ、又は、図140に関して上述された種類のリモートアプリケーションサーバコンピュータの何れかに対して、薄型クライアントとして機能することが出来る、ハンドヘルドコンピュータ200Aに関する2つの図を示している。   FIGS. 143-144 illustrate a handheld computer 200A that can function as a thin client to either a proxy server of the type described above with respect to FIG. 102 or a remote application server computer of the type described above with respect to FIG. Figure 2 shows two diagrams.

図143に於いて、コンピュータは、使用するために設計された縦方向で図示されている。コンピュータ上のネイティブオペレーティングシステムは、フォント及びグラフィカルユーザインターフェース(GUI)要素を縦方向で描画するように設計されている。これは、本出願の出願時に販売されたハンドヘルドコンピュータの多くが設計され、構築された方法である。例えば、今日、240×320全ピクセル解像度を有するサブピクセルアドレス可能スクリーンを有する、複数のそうしたハンドヘルドコンピュータが市場に存在する。また、これらのコンピュータの多くは、表示が意図された縦方向に位置する時に、水平方向に走るサブピクセルストライプを有する。   In FIG. 143, the computer is shown in a vertical orientation designed for use. The native operating system on a computer is designed to render fonts and graphical user interface (GUI) elements vertically. This is the way many of the handheld computers sold at the time of filing this application were designed and built. For example, there are a number of such handheld computers on the market today that have sub-pixel addressable screens with 240 × 320 full pixel resolution. Many of these computers also have sub-pixel stripes that run horizontally when the display is positioned in the intended vertical direction.

残念ながら、そうした縦方向では、殆どの人がコンピュータの使用時に慣れており、且つ、殆どのウェブページが設計されている横方向の縦横比の種類を提供しない。更に、そうしたコンピュータが水平方向のサブピクセルストライプを有する場合、そうしたストライプは、垂直方向に於いて、サブピクセル解像度の全ての潜在的増加をもたらす。残念ながら、テキストの表示は、そうした垂直方向の解像度に於ける増加に比して、水平方向の解像度に於ける増加から、実質的に恩恵を受ける傾向がある。   Unfortunately, in such a portrait orientation, most people are accustomed to using computers and do not provide the kind of aspect ratio that most web pages are designed for. Furthermore, if such a computer has horizontal subpixel stripes, such stripes provide all potential increases in subpixel resolution in the vertical direction. Unfortunately, the display of text tends to benefit substantially from an increase in horizontal resolution compared to an increase in such vertical resolution.

これらの全ての理由のために、そうした縦向きの機械を使用する本発明の多くの実施形態は、図144に図示されているように、そうした機械を90度回転させた場合に、それらを使用するように設計されており、それ故、殆どのコンピュータスクリーンのレイアウトに関する縦横比にむしろ近い、横方向の縦横比を有しており、その結果、それらのサブピクセルは、テキストの表示に最も有用な水平方向の解像度に於ける増加を提供する。そうした多くの実施形態に於いて、上述の薄型クライアント200は、横方向の機械装置として見られるために回転され、縮小フォント及び画像ビットマップが横方向で描画される縦方向の携帯情報端末(PDA)である。サブピクセル最適化を使用するそうした実施形態に於いて、そうしたPDAを使用するために設計された縦方向でピクセルが見られる場合に現れるサブピクセルの直交配置というよりは、そうしたピクセルが横方向で見られる場合に現れる各ピクセル内のサブピクセルの空間配置に対してサブピクセル最適化された画像、及び/又は、フォントビットマップを使用して、ウェブページが表示される。   For all these reasons, many embodiments of the present invention that use such vertical machines use them when they are rotated 90 degrees, as illustrated in FIG. Have a horizontal aspect ratio that is rather close to the aspect ratio for most computer screen layouts, so that their sub-pixels are most useful for displaying text Provides an increase in horizontal resolution. In many such embodiments, the thin client 200 described above is rotated to be viewed as a horizontal machine and a vertical personal digital assistant (PDA) in which reduced fonts and image bitmaps are drawn in the horizontal direction. ). In such embodiments that use sub-pixel optimization, rather than the orthogonal arrangement of sub-pixels that appears when pixels are viewed in the vertical direction designed to use such PDAs, such pixels are viewed in the horizontal direction. The web page is displayed using a sub-pixel optimized image and / or font bitmap for the spatial arrangement of sub-pixels within each pixel that appears.

図145は、サブピクセル最適化を使用して、例えば、矩形、楕円、線、及び、曲線などの基本的な形状を描画する要求に対応するために、本実施形態の幾つかの特徴を如何にして使用することが出来るかを示す、高度に簡略化された擬似コード表記である。多くの異なる種類のアプリケーション、オペレーティングシステム、及び、薄型クライアントソフトウェアに於いて、そうした機能を使用することが出来る。   FIG. 145 illustrates some of the features of this embodiment to meet the requirement to draw basic shapes such as rectangles, ellipses, lines, and curves using subpixel optimization. It is a highly simplified pseudo code notation that shows how it can be used. Such functionality can be used in many different types of applications, operating systems, and thin client software.

図145の例では、図示された擬似コードは、他の使用方法の中でも、図109Aに関して上述された矩形コマンド10918の代わりに使用可能な矩形描画関数14500に関連している。そうしたルーチンは、その位置、幅、及び/又は高さが、表示されるサブピクセルアドレス可能スクリーンの全ピクセル解像度に比して、より高度な解像度で定義された矩形を描画するための呼び出しによって、呼び出される。これに対応して、関数14502は、そうしたより高度な解像度で定義された矩形の画像をレンダリングするために、サブピクセル解像度でサブピクセル最適化ルーチンを使用する。例えば上述のスキームのように、多くの場合、非線形カラーフィルタリングを有する2色最適化スキームが、最高の視認可能な空間解像度を提供する傾向のあるモノクロ矩形を別にすれば、仮想の任意のサブピクセル最適化スキームを使用して、これを実行することが出来る。   In the example of FIG. 145, the illustrated pseudo code is associated with a rectangle drawing function 14500 that can be used in place of the rectangle command 10918 described above with respect to FIG. 109A, among other uses. Such routines can be called by a call to draw a rectangle whose position, width, and / or height is defined at a higher resolution compared to the total pixel resolution of the displayed subpixel addressable screen. Called. Correspondingly, function 14502 uses a subpixel optimization routine at subpixel resolution to render a rectangular image defined at such higher resolution. For example, as described above, in many cases, a two-color optimization scheme with non-linear color filtering, except for a monochrome rectangle that tends to provide the highest viewable spatial resolution, can be any arbitrary subpixel. This can be done using an optimization scheme.

図146は、サーバからダウンロードされたアプレットによって、クライアントのスクリーン上にサブピクセル最適化したスクリーン要素を描画可能とするための、サーバ及び/又はプロキシコンピュータ上で起動可能なコード14602、及び、薄型クライアントコンピュータを含む、クライアントコンピュータ上で起動可能なコード14604に関する高度に簡略化された擬似コード表記14600である。   FIG. 146 illustrates code 14602 that can be run on a server and / or proxy computer to allow sub-pixel optimized screen elements to be rendered on the client's screen by an applet downloaded from the server, and a thin client. A highly simplified pseudocode notation 14600 for code 14604 that can be run on a client computer, including a computer.

そうした実施形態に於いて、クライアントの関数14606は、サーバからメディアを要求する。クライアントコンピュータ上で起動可能な1つ又は複数のアプレットプログラムを含む、メディア又はデータをダウンロードすることによって、サーバは関数14608で対応する。関数14610に於いて、クライアントコンピュータは、アプレットを含むメディアを受信し、関数14612はそのアプレットをロード及び実行する。関数14614に於いて、クライアントコンピュータ上のサブピクセルアドレス可能スクリーンにサブピクセル最適化された要素を描画する。   In such an embodiment, the client function 14606 requests media from the server. By downloading media or data containing one or more applet programs that can be run on the client computer, the server responds with function 14608. In function 14610, the client computer receives the media containing the applet, and function 14612 loads and executes the applet. In function 14614, the subpixel optimized elements are rendered on the subpixel addressable screen on the client computer.

サブピクセル最適化されたビットマップを複製又は生成すること、サブピクセル最適化されたフォントでテキストをレンダリングすること、例えばベクトル定義されたグラフィック、又は、例えばライン、矩形、及び、楕円などの比較的単純な幾何学的形状など、サブピクセル最適化された形状を描画すること、の何れかによって、アプレットはサブピクセル最適化された要素を描画することが出来る。   Duplicate or generate subpixel-optimized bitmaps, render text in subpixel-optimized fonts, eg vector-defined graphics, or relatively, eg lines, rectangles and ellipses By drawing a sub-pixel optimized shape, such as a simple geometric shape, an applet can draw a sub-pixel optimized element.

図147及び148は、ロールオーバ画像、及び、GIFFアニメーションのそれぞれに対して、サブピクセル最適化を如何にして適用することが出来るかを図示している。   FIGS. 147 and 148 illustrate how sub-pixel optimization can be applied to rollover images and GIFF animations, respectively.

図147に図示されたサブピクセル最適化ルーチン14700に於いて、ポインティングデバイスが検知出来るように、画像に関連付けられたスクリーンの部分に存在しない場合に表示される非ロールオーバ画像14702と、ポインティングデバイスが検知出来るように、そのスクリーン部分に存在する場合に表示されるロールオーバ画像14704は、両方とも、関数14706によって縮小され、サブピクセル最適化される。これにより、拡大/縮小され、サブピクセル最適化された非ロールオーバ画像14708、及び、拡大/縮小され、サブピクセル最適化されたロールオーバ画像14710が生成される。次に関数14712は、ポインタがそれらの関連付けられたスクリーン領域上に検出可能に存在するか否かということに基づいて、これらの2つのサブピクセル最適化された画像の内、何れを表示させるのかを選択するために使用される。これにより、2つのサブピクセル最適化された画像は、複合「ロールオーバ」グラフィックとして機能する。   In the subpixel optimization routine 14700 illustrated in FIG. 147, a non-rollover image 14702 that is displayed when the pointing device is not present in the portion of the screen associated with the image, so that the pointing device can be detected, As can be detected, both rollover images 14704 displayed when present on the screen portion are reduced and sub-pixel optimized by function 14706. Thus, a non-rollover image 14708 that has been enlarged / reduced and sub-pixel optimized and a rollover image 14710 that has been enlarged / reduced and sub-pixel optimized are generated. The function 14712 then displays which of these two subpixel optimized images to display based on whether the pointer is detectably present on their associated screen area. Used to select. This allows the two sub-pixel optimized images to function as a composite “rollover” graphic.

本発明のこの特徴に関する他の実施形態に於いて、同様の技術を、ボタンに関連付けられた2つの画像、即ち、ボタンが押下されてない場合に表示される画像と、ボタンが押下されている場合に表示される画像、に適用することが出来る。   In other embodiments relating to this aspect of the invention, a similar technique is used for two images associated with a button: an image that is displayed when the button is not pressed, and a button that is pressed. It can be applied to the image displayed in the case.

図148に図示された方法14800は、図147に関して上述された方法に類似している。それは、GIFFアニメーションの別個の画像14802乃至148906のそれぞれを取得し、縮小され、サブピクセル最適化された対応するGIFFアニメーション一式を生成するために、関数14808に於いてサブピクセル最適化する。次に、関数14816は、サブピクセル最適化されていないGIFFアニメーションが表示される方法と実質的に同一の方法で、サブピクセル最適化された画像を表示する。   The method 14800 illustrated in FIG. 148 is similar to the method described above with respect to FIG. It takes each of the separate images 14802 to 148906 of the GIFF animation and optimizes the subpixels in function 14808 to produce a corresponding reduced and subpixel optimized GIFF animation set. Next, function 14816 displays the sub-pixel optimized image in a manner that is substantially the same as the way the non-sub-pixel optimized GIFF animation is displayed.

薄型クライアントコンピュータ上のスクリーンを含む、サブピクセルアドレス可能スクリーン上のウェブページへのアクセスを含む上述の発明に関する他の特徴を用いて、図147及び148に関して上述されたサブピクセル最適化を使用することが出来る。   Using the sub-pixel optimization described above with respect to FIGS. 147 and 148 with other features relating to the above-described invention, including access to web pages on sub-pixel addressable screens, including screens on thin client computers. I can do it.

図149は、3Dアニメーションをサブピクセル最適化する方法14900を図示している。この方法は、アニメーションの連続フレームのそれぞれに対して、関数14904乃至14908一式を実行することを含んでいる。   FIG. 149 illustrates a method 14900 for subpixel optimization of a 3D animation. The method includes performing a set of functions 14904-14908 for each successive frame of animation.

関数14904は、現在のフレームのビットマップ、又は、最後のフレームから変更された画像の少なくともそれらの部分のビットマップを作成するために、3Dアニメーションエンジンを実行する。この関数は、そうしたビットマップのサブピクセル最適化されたバージョンが表示される全ピクセル解像度よりも高解像度で、そうしたビットマップを生成する。   Function 14904 executes the 3D animation engine to create a bitmap of the current frame or a bitmap of at least those portions of the image that have changed since the last frame. This function produces such a bitmap at a higher resolution than the full pixel resolution at which a sub-pixel optimized version of such bitmap is displayed.

次に関数14906は、フレームビットマップ、又は、少なくとも最終フレームからのフレームビットマップに於いて実行された変更を、縮小及びサブピクセル最適化するために、例えば上述された技術などの技術を使用する。   The function 14906 then uses a technique such as the technique described above to reduce and sub-pixel optimize the changes made in the frame bitmap, or at least the frame bitmap from the last frame. .

次に、関数14908は、フレームビットマップの、縮小され、サブピクセル最適化された画像、又は、少なくともフレームの変更された部分の、縮小され、サブピクセル最適化された画像を、サブピクセルアドレス可能スクリーン上に表示する。   Next, function 14908 can subpixel address the reduced, subpixel optimized image of the frame bitmap, or the reduced, subpixel optimized image of at least the modified portion of the frame. Display on the screen.

ユーザがゲームを実行することができ、サブピクセル最適化によって可能となるより高度な解像度で、そうしたゲームで生成される画像を視認することが出来るようにするためには、図149に図示された方法が特に有用である。小型スクリーンを有するハンドヘルドデバイスに於いて、そうした目的をその方法に使用することが出来る。リモートコンピュータ上で生成されたアニメーション画像を表示するクライアントコンピュータ、及び、そうした動画をローカルに生成するコンピュータの両方にその方法を使用することが出来る。   To allow the user to run games and view the images generated by such games at a higher resolution enabled by sub-pixel optimization, it is illustrated in FIG. The method is particularly useful. In a handheld device with a small screen, such a purpose can be used in the method. The method can be used for both client computers that display animated images generated on remote computers and computers that generate such animations locally.

図150及び151は、図149の方法がクライアントサーバのゲームアプリケーションで使用可能な一つの方法を図示している。   FIGS. 150 and 151 illustrate one method in which the method of FIG. 149 can be used in a client server game application.

図150は、そうした実施形態に於いて使用されるゲームサーバコンピュータ上でのプログラム15000を図示している。数字15002及び15004で示されているように、ゲームサーバが、1つ又は複数のゲームクライアントコンピュータからユーザ入力を受信する場合、入力をゲームエンジンに送信する。そうした入力がスクリーン入力の場合、ユーザのスクリーン解像度と、ゲームエンジンがスクリーン入力と関連付ける空間との差を補正するために、入力が適切に拡大/縮小される。   FIG. 150 illustrates a program 15000 on a game server computer used in such an embodiment. As indicated by the numbers 15002 and 15004, when the game server receives user input from one or more game client computers, it sends the input to the game engine. If such input is a screen input, the input is appropriately scaled to compensate for the difference between the user's screen resolution and the space that the game engine associates with the screen input.

関数15006に於いて、ゲームエンジンのコンピュータは、現在のフレーム、又は、以前の表示リストに対する現在のフレームに関連付けられた任意の変更に対する表示リストを算出する。次に、関数15008は、3Dレンダリングプログラムに、現在のフレームに対して生成された表示リストに対応するフレームビットマップをレンダリングさせ、現在のフレームのビットマップに必要な変更をレンダリングさせる。そうしたビットマップは、関数15010によって生成されるサブピクセル最適化画像の解像度よりもより高度な解像度で生成される。   In function 15006, the game engine computer calculates a display list for the current frame or any changes associated with the current frame relative to the previous display list. The function 15008 then causes the 3D rendering program to render a frame bitmap corresponding to the display list generated for the current frame and render the necessary changes to the current frame bitmap. Such a bitmap is generated at a higher resolution than the resolution of the subpixel optimized image generated by function 15010.

クライアントが異なるクライアントに対して異なるスクリーン画像を生成する場合、これらの別個のビューのそれぞれに対して、関数15008が別個に実行される。   If the client generates different screen images for different clients, the function 15008 is performed separately for each of these separate views.

次に、関数15010は、現在のフレームのビットマップ、又は、フレームに対する現在の変更のビットマップを、縮小し、サブピクセル最適化する。また、この関数がそうした変更のビットマップのみを縮小している場合、これに対して、それはそれらの変更に関連付けられたスクリーン位置を縮小する。   Next, function 15010 reduces and subpixel optimizes the bitmap of the current frame or the bitmap of the current change to the frame. Also, if this function only reduces the bitmap of such changes, it reduces the screen position associated with those changes.

次に、関数15012は、サブピクセル最適化されたビットマップを圧縮し、そして適切な場合には、それらの位置を圧縮し、関数15014は、圧縮され、拡大/縮小され、サブピクセル最適化された画像と、クライアントに表示するための任意のそうした位置をダウンロードする。   Next, function 15012 compresses the subpixel-optimized bitmaps and, where appropriate, compresses their positions, and function 15014 compresses, scales, and subpixel optimizes. Downloaded images and any such locations for display to the client.

図151は、図150のプログラムに使用するために設計されたゲームクライアント上のプログラム15100を図示している。   FIG. 151 illustrates a program 15100 on a game client designed for use with the program of FIG.

関数15101は、ダウンロードされた画像を受信し、関数15102はそれらを解凍する。次に、関数15104は、拡大/縮小された、サブピクセル最適化されたアニメーションフレームビットマップを表示、又は、以前のアニメーションスクリーンの画像に対する変更のビットマップを、そうした変更に適用された位置に表示する。これはサブピクセルアドレス可能表示に於いて実行される。   Function 15101 receives the downloaded images and function 15102 decompresses them. Next, function 15104 displays the scaled, subpixel-optimized animation frame bitmap, or displays a bitmap of changes to the previous animation screen image at the position applied to those changes. To do. This is done in a subpixel addressable display.

数字15106及び15108によって示されているように、クライアントがユーザ入力を受信する場合、そうした入力に関連付けられた任意のスクリーン座標が適切に変換されるように、その入力をゲームサーバにアップロードする。   As indicated by the numbers 15106 and 15108, when the client receives user input, it uploads the input to the game server so that any screen coordinates associated with such input are properly translated.

本発明の該特徴に関する他の実施形態に於いて、ゲームサーバとゲームクライアント間の機能性の配分は異なる可能性がある。幾つかの実施形態に於いて、プロキシサーバとは異なるゲームサーバ上で元々生成されたゲームコンテンツを薄型クライアント上に表示するために、一般的に上述のプロキシサーバに類似したプロキシサーバをサブピクセル最適化の実行に使用することが出来る。さらに他の実施形態に於いて、ゲームクライアント自身がサブピクセル最適化を実行することが出来る。   In other embodiments relating to this aspect of the invention, the distribution of functionality between the game server and the game client may be different. In some embodiments, a proxy server generally similar to the proxy server described above is sub-pixel optimized to display game content originally generated on a game server different from the proxy server on the thin client. Can be used to implement In yet another embodiment, the game client itself can perform subpixel optimization.

図152は、関連付けられた透明マップを有する画像が、そうした画像、及び、関連付けられた透明マップの両方のサブピクセル最適化で表示することが可能な、本発明の特徴に関する高度に簡略化された擬似コード記述である。   FIG. 152 is a highly simplified illustration of features of the present invention that allow an image with an associated transparency map to be displayed with sub-pixel optimization of both such images and the associated transparency map. Pseudo code description.

図152に図示されたプログラム15200は、前景画像、即ち、背景又は他の以前のビットマップの最上部の表示が関連付けられた透明ビットマップによって制御される画像、に関する拡大/縮小されサブピクセル最適化されたビットマップを生成する関数15202を含む。使用されるサブピクセル最適化は、2色サブピクセル最適化、又は、多色カラーサブピクセル最適化の何れか、或いは、これら2つの組み合わせであっても良い。上述の方法を含めて、画像のサブピクセル最適化された表現を生成する方法として周知の任意の方法を使用することが出来る。   The program 15200 illustrated in FIG. 152 scales sub-pixel optimization for foreground images, ie, images controlled by a transparent bitmap associated with the display of the top of the background or other previous bitmap. A function 15202 for generating a generated bitmap. The sub-pixel optimization used may be either a two-color sub-pixel optimization or a multi-color sub-pixel optimization, or a combination of the two. Any method known to generate a sub-pixel optimized representation of an image can be used, including the methods described above.

関数15204は、画像の関連付けられた透明マップのサブピクセル最適化を実行する。2色サブピクセル最適化を使用することが望ましいが、これは、アルファ値が0から1の範囲に及び、3コンポーネント色空間における直線に沿って変化する透明値を、透明マップの高解像度ソース画像が有するからである。そうしたソース画像アルファ値はグレースケールカラーに対応するが、これは、そのマップのサブピクセル最適化された出力画像に於ける任意のピクセルに対応する透明マップソース画像の領域が、一定の透明値で覆われる場合、その出力ピクセルのサブピクセルのすべてが同一のアルファ値を有する傾向があるからである。上述の非線形カラーバランスを使用して、透明マップの2色サブピクセル最適化を実行することが望ましい。   Function 15204 performs sub-pixel optimization of the associated transparency map of the image. It is desirable to use two-color sub-pixel optimization, which is a high-resolution source image of a transparency map, with alpha values ranging from 0 to 1 and varying along a straight line in a three-component color space. It is because it has. Such source image alpha values correspond to grayscale colors, which means that the area of the transparent map source image corresponding to any pixel in the sub-pixel optimized output image of the map has a constant transparency value. This is because when covered, all of the subpixels of the output pixel tend to have the same alpha value. It is desirable to perform a two-color subpixel optimization of the transparency map using the nonlinear color balance described above.

前景画像、及び、それに関連付けられた透明マップに関するそうしたサブピクセル最適化が実行された時点で、関数15206は、サブピクセル最適化表示にこの組み合わせを表示する。この処理は、表示された画像の各ピクセル列の各サブピクセルに対するループ15210を含む、各ピクセル列に対するループ15208を実行することを含む。関数15210によって、関数15212及び15214が各サブピクセルに対して実行される。関数15212は、現在のアルファ値をサブピクセル最適化透明マップの対応するサブピクセルのアルファ値に設定する。次に、関数15214は、現在のサブピクセルの輝度を、「現在のアルファ値」に「サブピクセル最適化された前景画像の対応するサブピクセルの輝度値」を乗算した値に、「1から現在のアルファ値を減算した値」に「透明画像が描画されている背景ビットマップに於ける現在のサブピクセルの以前の輝度値」を乗算した値を加算した値に設定する。   When such subpixel optimization is performed on the foreground image and its associated transparency map, function 15206 displays this combination in the subpixel optimization display. This process includes performing a loop 15208 for each pixel column, including a loop 15210 for each subpixel of each pixel column of the displayed image. Function 15210 causes functions 15212 and 15214 to be performed for each subpixel. Function 15212 sets the current alpha value to the alpha value of the corresponding subpixel of the subpixel optimized transparency map. Next, the function 15214 calculates the current sub-pixel brightness by multiplying the “current alpha value” by the “sub-pixel optimized foreground image corresponding sub-pixel brightness value”. The value obtained by multiplying “the value obtained by subtracting the alpha value of” by “the previous luminance value of the current subpixel in the background bitmap on which the transparent image is drawn” is added.

これは、前景画像が以前のビットマップ上に描画される場合に、個々のサブピクセルのそれぞれの輝度値が前景画像の対応するサブピクセル値、又は、以前のビットマップの対応するサブピクセル値から算出される程度が、サブピクセル最適化された透明マップの対応するサブピクセルアルファ値の関数として規定されることを意味する。   This is because when the foreground image is rendered on the previous bitmap, the respective luminance value of each individual subpixel is derived from the corresponding subpixel value of the foreground image or the corresponding subpixel value of the previous bitmap. It means that the calculated degree is specified as a function of the corresponding subpixel alpha value of the subpixel optimized transparency map.

本発明の幾つかの実施形態に於いて、透明マップに関連付けられた画像は、サーバ又はブラウザコンピュータ上で拡大/縮小及びサブピクセル最適化され、ダウンロードされ、そして、クライアントコンピュータ上に関数15206によって表示される。本発明の他の実施形態に於いて、そうしたサブピクセル最適化透明画像は、記録されたデジタルメディア上で利用可能になる。さらに本発明の他の実施形態に於いて、上記画像は、それらを表示する同一のコンピュータによって生成される。   In some embodiments of the present invention, the image associated with the transparency map is scaled and subpixel optimized on the server or browser computer, downloaded, and displayed by function 15206 on the client computer. Is done. In other embodiments of the present invention, such subpixel optimized transparency images are made available on recorded digital media. In yet another embodiment of the invention, the images are generated by the same computer that displays them.

本発明の他の実施形態に於いて、サブピクセル最適化されていない透明マップに含まれるアルファ値を使用して、サブピクセル最適化された前景画像を表示することが出来る。   In other embodiments of the invention, alpha values contained in non-subpixel optimized transparency maps can be used to display a subpixel optimized foreground image.

本発明の幾つかの実施形態に於いて、1つの色に知覚的に近い色のグループを表すために、非可逆カラー圧縮を使用する。1次元透明値、図70、96、及び、97に関して上述された種類の3次元透明(即ち、不透明度又はアルファ)値、又は、RGBコンポーネント値と同様に、特別色次元として透明コンポーネント値を有する色値で、そうした圧縮を実行することが出来る。そうした圧縮に於いて、1又は0のアルファ値、或いは1又は0に極めて近い値を示す透明値又はコンポーネント色値が、それぞれ1又は0から懸け離れた透明値で表現されることを回避することが一般的には望ましい。これは、透明度の範囲の両極での不透明性に於ける僅かな変化に対して、透明度の範囲の他の部分に於けるそうした変化に比して、目はより敏感であるからである。   In some embodiments of the invention, lossy color compression is used to represent a group of colors that are perceptually close to one color. One-dimensional transparency value, a three-dimensional transparency (ie, opacity or alpha) value of the type described above with respect to FIGS. 70, 96 and 97, or a transparent component value as a special color dimension, similar to an RGB component value Such compression can be performed on color values. In such compression, avoiding transparency values or component color values that exhibit an alpha value of 1 or 0, or a value very close to 1 or 0, with transparency values that are far from 1 or 0, respectively. Generally desirable. This is because the eye is more sensitive to slight changes in opacity at both extremes of the transparency range compared to those changes in other parts of the transparency range.

サブピクセル最適化されていない画像が透明マップに使用される全ての目的のために、サブピクセル最適化された表示上で、透明マップを有するサブピクセル最適化画像を使用することが出来る。これは、アニメーション及びウェブページのレイアウトに於ける使用を含む。   For all purposes where non-subpixel optimized images are used for transparency maps, subpixel optimized images with transparency maps can be used on subpixel optimized displays. This includes use in animation and web page layout.

図153乃至162は、映像、及び/又は、アニメーションのサブピクセル最適化に関する本発明の特徴に関する、高度に簡略化された擬似コード記述である。映像及びアニメーションが使用される仮想の他のコンテンツだけでなく、ウェブブラウズのコンテンツに於いて、そうしたサブピクセル最適化を使用することが出来る。   FIGS. 153 through 162 are highly simplified pseudocode descriptions relating to features of the present invention relating to subpixel optimization of video and / or animation. Such sub-pixel optimization can be used in web browsing content as well as other virtual content where video and animation are used.

図153は、映像キーフレーム間の補間を使用して表示された映像をサブピクセル最適化するために使用されるプログラム15300を示している。このプログラムは、サブピクセル最適化される映像が圧縮フォーマットで受信される場合に使用される関数15302を含む。それはそうした映像を解凍し、サブピクセル最適化することが出来る。   FIG. 153 shows a program 15300 that is used to sub-pixel optimize a displayed video using interpolation between video key frames. The program includes a function 15302 that is used when the video to be subpixel optimized is received in a compressed format. It can decompress such images and optimize sub-pixels.

関数15304は、映像のキーフレームを縮小し、サブピクセル最適化する。関数15306はキーフレーム間の補間された変更を縮小するが、サブピクセル最適化を行わない。図153に図示された本発明のこの特徴に関する幾つかの実施形態に於いて、そうした補間された変更をサブピクセル最適化することが出来るが、これを実行することによる利益は殆んどない。これは、そうした変更がスクリーン上にあまりにも速くあらわれるので、それらのサブピクセル最適化が認識されず、それらのサブピクセル最適化を回避することによって、コンピュータ上の負荷を低減するからである。   Function 15304 reduces the keyframe of the video and optimizes the subpixel. Function 15306 reduces interpolated changes between key frames, but does not perform subpixel optimization. In some embodiments relating to this aspect of the invention illustrated in FIG. 153, such interpolated changes can be sub-pixel optimized, but there is little benefit from doing so. This is because such changes appear on the screen too quickly, so their subpixel optimizations are not recognized and reduce the computational burden by avoiding those subpixel optimizations.

関数15308は、サブピクセル最適化されたキーフレーム、及び、サブピクセル最適化されていないフレーム間の補間を用いて、縮小された映像をサブピクセルアドレス可能表示上に表示する。   Function 15308 displays the reduced video on a subpixel addressable display using interpolation between subpixel optimized key frames and non-subpixel optimized frames.

本発明の他の実施形態に於いて、明確に認識するのに充分長い一つの位置で、スクリーン上に存在する映像の部分を単にサブピクセル最適化するというこの概念を、他の方法で使用することが出来る。   In other embodiments of the present invention, this concept of simply sub-pixel optimizing the portion of the image present on the screen at one location long enough to be clearly recognized is used in other ways. I can do it.

図154は、表示フレームに対して描画される、部分−全体−フレーム画像要素の連続によって、全体的又は部分的に表現された映像をサブピクセル最適化するために使用することが出来るプログラムを図示している。一般的に、そうした映像もまた、全体フレーム画像を含み、必要に応じて、その中に存在する1つ又は複数のオブジェクトの動きを表すためにスクリーンを徐々に変更するために、一部−全体−フレーム描画の連続を使用する。これは、図149に関して上述した種類のアニメーションを含む。またそれは、図153に関して上述した一般的な種類のキーフレーム及びフレーム間の補間を有する映像を含む、映像圧縮の様々な方法を含むことが出来る。   FIG. 154 illustrates a program that can be used to subpixel-optimize a video that is represented in whole or in part by a sequence of part-full-frame image elements drawn against a display frame. Show. In general, such images also include full-frame images and, if necessary, part-to-full to gradually change the screen to represent the movement of one or more objects present therein. Use a frame drawing sequence. This includes the type of animation described above with respect to FIG. It can also include various methods of video compression, including video with the general types of key frames and interpolation between frames described above with respect to FIG.

図154のプログラムは、サブピクセル最適化される映像が圧縮形式で受信される場合に使用される関数15402を含んでおり、この場合、その関数がその映像を解凍する。次に、関数15404は、映像に含まれる任意のフレーム画像を拡大/縮小し、サブピクセル最適化し、表示倍率でそれらを縮小する。次に、関数15406は、任意の変更ビットマップを拡大/縮小し、サブピクセル最適化し、そうした画像のサイズとそれらの位置を、その倍率で拡大/縮小する。   The program of FIG. 154 includes a function 15402 that is used when a sub-pixel optimized video is received in a compressed format, where the function decompresses the video. Next, the function 15404 enlarges / reduces any frame images included in the video, optimizes the sub-pixels, and reduces them by the display magnification. Next, function 15406 scales any modified bitmaps, subpixel optimizes, and scales those image sizes and their positions by that factor.

関数15407及び15408は、映像シーケンスに於ける拡大/縮小及びサブピクセル最適化された任意の映像フレームを、サブピクセルアドレス可能スクリーン上に繰り返し表示する。そうした映像フレームの表示後、関数15406によって、その変更ビットマップに関連付けられた拡大/縮小位置で、そのフレームのビットマップに対して、任意の一つ又は複数の拡大/縮小され、サブピクセル最適化された変更ビットマップを表示する。   Functions 15407 and 15408 repeatedly display any video frame that has been scaled and subpixel optimized in the video sequence on a subpixel addressable screen. After display of such a video frame, function 15406 allows any one or more scaled subpixel optimizations for the bitmap of the frame at the scaled position associated with the modified bitmap. Display the modified bitmap.

図154の方法によって、サブピクセル最適化された映像及びアニメーションが、サブピクセル最適化に必要な演算量を低減する方法で描画可能になるということが分かるが、これは、図154の方法では、その映像画像に対して変更が加えられる度に、フレーム全体のサブピクセル最適化を必要とする訳ではないからである。   It can be seen that the method of FIG. 154 makes it possible to draw a video and animation optimized for subpixels in a method that reduces the amount of computation required for subpixel optimization. In the method of FIG. This is because every time a change is made to the video image, sub-pixel optimization of the entire frame is not required.

図155及び156は、フレームに関連して移動するサブピクセル最適化された画像を表示可能な2つの異なる方法を図示している。   FIGS. 155 and 156 illustrate two different ways in which a sub-pixel optimized image that moves relative to the frame can be displayed.

より大きな画像に関連して、サブピクセルアドレス可能表示上で、画像が全ピクセルの値を増加させて移動するように、図155は固定のサブピクシレーションで画像を表示するプログラム15500を含む。それは、上述した方法を含む任意の方法で生成可能なサブピクセル最適化画像を保存する関数15502を含む。それは、各連続フレーム時間に対して実行されるループ15503を含む。このループは、関数15504及び15506で構成されている。関数15504は、より大きな画像に関連して、画像に対する動きを算出する。この移動計算に於いて、各表示フレームでオブジェクトに対して計算された位置は、最も近い水平及び垂直方向の全ピクセル位置に近似され、画像のサイズと方向は変更されない。関数15506は、それに対して計算された全ピクセル解像度位置で、関数15504によって画像を表示する。画像のサブピクセル最適化されたビットマップを1つだけ計算しなければならず、その単一の画像がスクリーン上を横切るように繰り返し使用されるので、この方法はコンピュータ処理的に極めて効率的である。   FIG. 155 includes a program 15500 that displays an image with a fixed sub-pixilation so that the image moves in increments of all pixels on a sub-pixel addressable display in conjunction with a larger image. It includes a function 15502 that saves a subpixel optimized image that can be generated in any manner, including the methods described above. It includes a loop 15503 that is executed for each successive frame time. This loop consists of functions 15504 and 15506. Function 15504 calculates motion relative to the image in relation to the larger image. In this movement calculation, the position calculated for the object in each display frame is approximated to the nearest horizontal and vertical pixel positions, and the image size and direction are not changed. Function 15506 displays the image with function 15504 at the full pixel resolution position calculated for it. This method is computationally very efficient because only one subpixel-optimized bitmap of the image has to be computed, and that single image is used repeatedly across the screen. is there.

図156は、サブピクシレーションの変更によって動画を表示するプログラム15600を図示している。それは、移動される画像の高解像度ソース画像を保存する関数15602を含んでいる。またそれは、各連続フレーム時間に対して実行されるループ15603を含んでいる。このループは、あるとすれば、現在のフレームに対して、現在の変換、回転、及び/又は、高解像度ソース画像の転換を計算する関数15604を含む。次に、そのループの関数15606は、そのように生じた、変換、回転、及び/又は、転換されたビットマップの、縮小及びサブピクセル最適化されたビットマップを生成する。このサブピクセル最適化では、それが全ピクセル解像度よりも高度な解像度で表示されるサブピクセル配列に関連して、この変換されたビットマップの位置が考慮される。次に、フレームループの関数15608は、サブピクセルアドレス可能表示上に、結果として生じるサブピクセル最適化されたビットマップを表示する。   FIG. 156 illustrates a program 15600 that displays a moving image by changing sub-pixilation. It includes a function 15602 that saves a high resolution source image of the image being moved. It also includes a loop 15603 that is executed for each successive frame time. This loop includes a function 15604 that calculates the current transformation, rotation, and / or transformation of the high resolution source image, if any, for the current frame. The loop function 15606 then generates a reduced and sub-pixel optimized bitmap of the resulting transformed, rotated, and / or transformed bitmap. This subpixel optimization takes into account the location of this transformed bitmap in relation to the subpixel array in which it is displayed at a higher resolution than the full pixel resolution. The frame loop function 15608 then displays the resulting subpixel optimized bitmap on the subpixel addressable display.

ゲームアニメーションに於ける妖精に加えて、動画文字、又は、より大きなフレームに関連して移動されるその他の視覚表現を表示するために、図155又は156に関して上述された方法の何れかを使用することが出来る。   In addition to fairies in game animation, use any of the methods described above with respect to FIG. 155 or 156 to display animated characters or other visual representations that are moved in relation to larger frames. I can do it.

図155の方法は、ビジュアルオブジェクトの動きに関するより精度の低い表現を提供する傾向にあるが、コンピュータ処理的にはより効率的である。図156の方法は、より精度の高い視覚表現を提供するが、コンピュータ処理的には費用がかかる。   The method of FIG. 155 tends to provide a less accurate representation of the movement of visual objects, but is more computationally efficient. The method of FIG. 156 provides a more accurate visual representation, but is computationally expensive.

本発明の幾つかの実施形態に於いて、これら2つの方法の組み合わせを使用することが出来る。例えば、オブジェクトとサブピクセル配列間に於ける可能なマッピングの小さなサブセットを保存することができ、オブジェクトが移動すると、それが表示されるサブピクセル配列に関連して、その現在位置に関するより高度な解像度の表現を最も詳細に表現する、そうした保存されたマッピングの方法で表示される。   In some embodiments of the invention, a combination of these two methods can be used. For example, a small subset of possible mappings between an object and a subpixel array can be stored, and when an object moves, a higher resolution with respect to its current location relative to the subpixel array on which it is displayed It is displayed in such a stored mapping way that represents the expression in detail.

図157及び/又は158は、サブピクセルアドレス可能スクリーン上に表示するために、DVD又はHDTV映像を縮小し、サブピクセル最適化することによって、DVD又はHDTV映像の表示を最適化するために使用される、本発明の特徴を図示している。これが特に有用であるのは、垂直方向よりも水平方向に於いて、より高度なサブピクセル解像度を有するサブピクセルアドレス可能スクリーンと共に使用される場合であり、これは、一般にDVD及びHDTV映像が、高さが高いと言うよりは実質的に幅が広い縦横比を有しているからである。   FIGS. 157 and / or 158 are used to optimize the display of DVD or HDTV video by reducing the DVD or HDTV video and subpixel optimization for display on a subpixel addressable screen. The features of the present invention are illustrated. This is particularly useful when used in conjunction with subpixel addressable screens that have a higher subpixel resolution in the horizontal direction than in the vertical direction, which is generally the case for DVD and HDTV video. This is because the aspect ratio is substantially wide rather than high.

図159は、異なる属性を有する別個のオブジェクトとして、映像画像のサブコンポーネントを表す映像フォーマットに適用可能な本発明の特徴を図示している。図159に於ける特別な例は、MPEG4映像の表示をサブピクセル最適化するプログラム15900を含んでいる。   FIG. 159 illustrates features of the present invention that can be applied to video formats representing sub-components of video images as separate objects with different attributes. A special example in FIG. 159 includes a program 15900 for sub-pixel optimization of the display of MPEG4 video.

図159に図示されたプログラムは、MPEG4映像を受信し、解凍する関数15902を含んでいる。それは、MPEG4映像に於いて異なる種類のオブジェクトを縮小する際に、異なるサブピクセル最適化方法を使用する関数15904及び15906を含んでいる。この関数は、好ましくは非線形カラーバランスを用いて、2色オブジェクトに2色サブピクセル最適化を使用し、多色オブジェクトに多色サブピクセル最適化を使用する。関数15908は、サブピクセル最適化スクリーン上に、2色オブジェクト及び多色オブジェクトの組み合わせを表示し、MPEG4の記述によって指示されているように、スクリーンに関連して、そうしたサブピクセル最適化オブジェクトを移動させ、図155及び/又は156に関して既に議論した種類の方法を使用する。   The program illustrated in FIG. 159 includes a function 15902 for receiving and decompressing MPEG4 video. It includes functions 15904 and 15906 that use different subpixel optimization methods in reducing different types of objects in MPEG4 video. This function uses two-color subpixel optimization for two-color objects and multi-color subpixel optimization for multi-color objects, preferably using non-linear color balance. Function 15908 displays a combination of two-color and multi-color objects on the subpixel optimization screen and moves those subpixel optimization objects relative to the screen as indicated by the MPEG4 description. And use a method of the type already discussed with respect to FIGS. 155 and / or 156.

本発明の幾つかの特徴は、MPEG4データストリームに於ける異なるオブジェクトタイプに対して、異なるサブピクセル最適化アルゴリズムを使用することに限定されない。しかし、そうした異なるサブピクセル最適化アルゴリズムを使用することによって、例えばテキストなど、2色オブジェクトに対してより高度な知覚解像度を提供することができ、これにより、幾分改善された画像を提供するという利点を有するのである。   Some features of the present invention are not limited to using different subpixel optimization algorithms for different object types in the MPEG4 data stream. However, by using such a different subpixel optimization algorithm, it is possible to provide a higher perceptual resolution for a two-color object, eg text, thereby providing a somewhat improved image. It has advantages.

図160及び161は、ユーザがコンピュータネットワーク上のサブピクセル最適化映像にアクセスするシステムに関する。   160 and 161 relate to a system in which a user accesses sub-pixel optimized video on a computer network.

図160は、サブピクセル最適化され、縮小された映像を提供するサーバコンピュータによって使用されるプログラム16000を図示している。そうしたサーバは、さらに他のサーバコンピュータから、クライアントによって要求された映像にアクセスし、その後、クライアントにダウンロードする前に、それを縮小し、サブピクセル最適化するプロキシサーバであっても良い。他の実施形態に於いて、サブピクセル最適化された映像の提供は、そうした仲介プロキシサーバを介さずに実行される。   FIG. 160 illustrates a program 16000 used by a server computer to provide sub-pixel optimized and reduced video. Such a server may be a proxy server that accesses the video requested by the client from another server computer and then scales it down and subpixel optimizes it before downloading to the client. In other embodiments, the provision of sub-pixel optimized video is performed without going through such an intermediary proxy server.

図160のプログラムは、クライアントコンピュータから特定の映像に対する要求を受信する関数16002を含む。例えば、図160に図示された実施形態など、多くの実施形態に於いて、この要求は、映像がサブピクセル最適化される水平及び垂直方向のサブピクセル解像度も記述する。1つの固定サブピクセル解像度を有するクライアント一式を提供するだけの実施形態に於いては、要求の一部として、そうした情報を必要としない。   The program of FIG. 160 includes a function 16002 for receiving a request for a specific video from a client computer. In many embodiments, such as the embodiment illustrated in FIG. 160, this requirement also describes the horizontal and vertical subpixel resolution at which the video is subpixel optimized. In embodiments that only provide a set of clients with one fixed subpixel resolution, such information is not required as part of the request.

関数16004は、要求された映像コンテンツを受信する。上述したように、リモートサーバから映像コンテンツにアクセスすること、実行中のコンピュータに関連付けられたRAM又は大容量記憶装置から映像コンテンツにアクセスすること、そうしたコンテンツを動的に生成させること、又は、幾つかのソースから入力された映像を選択すること、によって、これを実行することが出来る。   Function 16004 receives the requested video content. As described above, accessing video content from a remote server, accessing video content from RAM or mass storage associated with a running computer, dynamically generating such content, or some This can be done by selecting video input from any source.

関数16006は、関数16002の要求に関連付けられたサブピクセル解像度に受信された映像を縮小し、サブピクセル最適化する。次に、関数16008は、サブピクセル最適化映像を圧縮し、関数16010は、要求している装置に、その圧縮された映像をダウンロードする。   Function 16006 reduces the received video to the subpixel resolution associated with the request of function 16002 and optimizes the subpixel. Next, function 16008 compresses the subpixel optimized video, and function 16010 downloads the compressed video to the requesting device.

そうしたサブピクセル最適化画像に使用される圧縮アルゴリズムは、そうしたサブピクセル最適化された画像に於ける任意のピクセルに関連付けられた色値の位置が、比較的限られた色の距離以上の距離でRGB色空間に於いて移動されない限り、サブピクセル最適化によって可能となる増大された空間解像度を実質的に減少させることなく、ある程度の損失を有した圧縮アルゴリズムを有することが出来る。   The compression algorithm used for such sub-pixel optimized images is such that the position of the color value associated with any pixel in such a sub-pixel optimized image is at a distance that is greater than or equal to the relatively limited color distance. Unless moved in the RGB color space, it is possible to have a compression algorithm with some loss without substantially reducing the increased spatial resolution possible with subpixel optimization.

図161は、図160に記載された本発明の特徴に使用可能なシステム16100を表している。このシステムは、プロキシコンピュータコード16100、及び、薄型クライアントコンピュータコード16112を有しており、これらの両方が高度に簡略化された擬似コードによって図161に図示されている。   FIG. 161 depicts a system 16100 that can be used with the features of the present invention described in FIG. The system has proxy computer code 16100 and thin client computer code 16112, both of which are illustrated in FIG. 161 by highly simplified pseudo code.

薄型クライアントが所定の映像に対するユーザ要求を受信する場合、関数16113は、映像がプロキシに表示されるサブピクセル解像度を含む、映像に対する要求を送信することによって対応する。プロキシがそうした映像に対する要求を受信する場合、その関数16100によって、関数16103は、映像を取得可能なサーバに、映像への対応する要求を送信する。多くの実施形態に於いて、これは、そうした要求のURLに於いて識別されたサーバである。   If the thin client receives a user request for a given video, function 16113 responds by sending a request for the video that includes the sub-pixel resolution at which the video is displayed on the proxy. When the proxy receives a request for such a video, according to its function 16100, the function 16103 sends a corresponding request for the video to a server capable of obtaining the video. In many embodiments, this is the server identified in the URL of such a request.

要求された映像がプロキシサーバによって受信される場合、関数16104によって、関数16106乃至16110が実行される。関数16106は、映像を、クライアントからの要求に関連図けられたサブピクセル解像度まで縮小し、サブピクセル最適化し、関数16108は、そのサブピクセル最適化された映像を圧縮し、関数16110は、それを要求したクライアントに、それをダウンロードする。   If the requested video is received by the proxy server, function 16104 causes functions 16106 through 16110 to be performed. Function 16106 reduces the video to the subpixel resolution planned for the request from the client, optimizes the subpixel, function 16108 compresses the subpixel optimized video, and function 16110 Download it to the client that requested it.

クライアントがプロキシから要求された映像を受信する場合、関数16114によって、関数16115は映像を解凍し、関数16116はサブピクセルアドレス可能表示上に、その縮小され、解凍された映像を表示する。   When the client receives the requested video from the proxy, function 16114 causes function 16115 to decompress the video and function 16116 displays the scaled and decompressed video on a subpixel addressable display.

図162乃至166は、デジタルインクの見た目を向上させるために、本発明の特徴をどのように使用することが出来るかを図示している。デジタルインクは、通常、ユーザがポインティングデバイスによって文字を書く、又は、図形を描画しようとすることに対応して、スクリーン上に描画される白黒のビットマップである。従来、デジタルインクビットマップは、各ピクセルが黒、白、又は、デバイスによってはグレースケール値として表示される全ピクセル解像度で通常表現されている。   FIGS. 162-166 illustrate how the features of the present invention can be used to improve the appearance of digital ink. Digital ink is a black and white bitmap that is usually drawn on a screen in response to a user writing a character or drawing a graphic with a pointing device. Traditionally, digital ink bitmaps are typically represented at full pixel resolution where each pixel is displayed as black, white, or as a grayscale value on some devices.

本発明の1つの特徴は、より高解像度でデジタルインクを表現するためのサブピクセル最適化を使用することにある。デジタルインクがコンピュータメモリ内に於いて、点及び線、又は、そうした複数点間の曲線で表現される場合、そうした複数点間の線に関する結果的として生じる数学的記述は、スクリーンの全ピクセル解像度に比して、遙かに高い解像度を有することが出来る。   One feature of the present invention is the use of sub-pixel optimization to represent digital ink at higher resolution. When digital ink is represented in computer memory as points and lines, or curves between such points, the resulting mathematical description of the lines between such points is the total pixel resolution of the screen. In comparison, it can have a much higher resolution.

図162は、デジタルインクを視認可能な透明度を最適化するために使用することが出来るプログラムに関する高度に簡略化された擬似コード記述である。   FIG. 162 is a highly simplified pseudocode description for a program that can be used to optimize the transparency with which digital ink is visible.

図162に図示されたデジタルインクコード16200は、点の集合、及び、そうした複数点間の曲線又は直線として、ポインティングデバイスのストロークを記録することによって、デジタルインク描画モードの状態で、ポインティングデバイスを用いてユーザ入力に応答する関数16202を含む。関数16206は、直線及び曲線のサブピクセル最適化を使用して、スクリーン上にインクを描画する。実質的に任意のサブピクセル最適化スキームを用いてこれを実行することが出来るが、例えば、上述の非線形カラーバランスを使用する2色サブピクセル最適化スキームなど、2色サブピクセル最適化スキームを用いて実行することが望ましい。   The digital ink code 16200 illustrated in FIG. 162 uses the pointing device in the digital ink drawing mode by recording the stroke of the pointing device as a set of points and a curve or straight line between such points. A function 16202 responsive to user input. Function 16206 draws ink on the screen using straight and curved sub-pixel optimization. This can be done using virtually any sub-pixel optimization scheme, but using a two-color sub-pixel optimization scheme, such as the two-color sub-pixel optimization scheme using the nonlinear color balance described above. It is desirable to execute.

図163は、ハンドヘルドコンピュータ16300のスクリーン上に描画された、幾つかのデジタルインク16302を図示している。この図示は、全ピクセル輝度値のみを表現可能なプリンタで印刷されるので、図163に図示されたデジタルインクは、グレースケールアンチエイリアスとしてサブピクセル最適化を表示する。当然のことながら、サブピクセルアドレス可能表示上で画像を見る場合、図163に図示されている画像も、さらに明瞭に見える。   FIG. 163 illustrates several digital inks 16302 rendered on the screen of the handheld computer 16300. Since this illustration is printed with a printer that can only represent all pixel luminance values, the digital ink illustrated in FIG. 163 displays sub-pixel optimization as a grayscale anti-aliasing. Of course, when viewing an image on a subpixel addressable display, the image illustrated in FIG. 163 also appears more clearly.

デジタルインクプログラムのユーザが、デジタルインクの部分の表現を拡大することを選択する場合、関数16208によって、関数16212は、非線形カラーバランスと共に2色サブピクセル最適化を使用して、ユーザが選択した拡大サイズで、デジタルインクの直線及び曲線のサブピクセル最適化されたビットマップを生成する。次に、関数16212は、ユーザのスクリーン上に、その拡大された画像を表示する。   If the user of the digital ink program chooses to enlarge the representation of the portion of the digital ink, function 16208 causes function 16212 to use the two-color subpixel optimization with non-linear color balance and the user selected enlargement. Generate digital ink linear and curved sub-pixel optimized bitmaps by size. Next, function 16212 displays the magnified image on the user's screen.

図164は、図163に図示されたデジタルインク16302の一部分に関する拡大された表現16302Aを図示している。これにより、図165に図示されたビットマップ16302Bによって図示されているように、図163に図示されたデジタルインクの表現16302のピクシレーションを単に拡大することによって生成される表現に比して、実質的により明瞭なデジタルインクの表現が提供される。   FIG. 164 illustrates an expanded representation 16302A for a portion of the digital ink 16302 illustrated in FIG. This is substantially compared to the representation generated by simply expanding the pixilation of the digital ink representation 16302 illustrated in FIG. 163, as illustrated by the bitmap 16302B illustrated in FIG. 165. A clearer representation of digital ink is provided.

注目すべきは、図165に図示されたビットマップの表現は、実際には、デジタルインクの幾つかの拡大された表現に比して、より見易いということである。これは、幾つかのデジタルインクの表現で使用されていないアンチエイリアスを用いて、図163に図示されたビットマップが全ピクセルグレースケール値で印刷されているからである。   It should be noted that the bitmap representation illustrated in FIG. 165 is actually easier to see than some enlarged representations of digital ink. This is because the bitmap illustrated in FIG. 163 is printed with full pixel grayscale values using anti-aliasing not used in some digital ink representations.

関数16214によって、関数16216は、非線形カラーバランスと共に2色サブピクセル最適化を使用して、選択された縮小されたサイズで、インクの直線及び曲線のサブピクセル最適化されたビットマップを生成し、関数16218は、サブピクセルアドレス可能表示上にその縮小されたビットマップを表示する。そうした処理の結果は、図166に図示されたビットマップ16302Cによって図示されている。   Function 16214 causes function 16216 to generate sub-pixel optimized bitmaps of ink lines and curves at a selected reduced size using two-color sub-pixel optimization with non-linear color balance, Function 16218 displays the reduced bitmap on a subpixel addressable display. The result of such processing is illustrated by the bitmap 16302C illustrated in FIG.

オン又はオフの全ピクセルとして記録されたデジタルインクに対応するために、本発明のこれらの特徴を修正することが出来る。そうした「オン」のピクセルで表現された各ストロークの中心線をルーチンに評価させ、その後、上述されているように、様々なスケールでデジタルインクの中心線のサブピクセル最適画像を生成することによって、これを実行することが出来る。さらに正確ではあるが、コンピュータ処理的に費用のかかるアプローチは、そうしたデジタルインクの連続部分と、例えばベジエ曲線などの対応する直線及び曲線の連続との間の最適な適合を求める。   These features of the present invention can be modified to accommodate digital ink recorded as all pixels on or off. By allowing the routine to evaluate the centerline of each stroke represented by such “on” pixels, and then generating subpixel optimal images of the digital ink centerline at various scales, as described above, You can do this. A more accurate but computationally expensive approach seeks an optimal fit between a continuous portion of such digital ink and a corresponding straight line and curve series, such as a Bezier curve.

他の実施形態に於いて、そうしたビットマップ上でサブピクセル最適化された拡大/縮小を単に実行することによって、デジタルインク描画によって生成されたビットマップ上で、サブピクセル最適化を実行することが出来る。   In other embodiments, performing subpixel optimization on a bitmap generated by digital ink drawing by simply performing subpixel optimized scaling on such a bitmap. I can do it.

サブピクセル最適化をグレースケールアンチエイリアスで置換することによって、デジタルインクに関する本発明の幾つかの実施形態を、サブピクセル最適化されていない表示と共に使用することが出来る。   By replacing sub-pixel optimization with grayscale anti-aliasing, some embodiments of the present invention for digital ink can be used with non-sub-pixel optimized displays.

図167は、サーバ、クライアント、プロキシサーバ、薄型クライアント、リモート、デスクトップ、又は、上述された他のコンピュータの多くが有することが出来るコンポーネントを図示している。当然のことながら、図167に図示されたコンポーネントの全てが、そうした全てのコンピュータに存在する訳ではなく、殆どのそうしたコンピュータは、図167に図示されたコンポーネント以外に他のコンポーネントを有する。   FIG. 167 illustrates components that a server, client, proxy server, thin client, remote, desktop, or many of the other computers described above may have. Of course, not all of the components illustrated in FIG. 167 are present on all such computers, and most such computers have other components in addition to those illustrated in FIG.

本発明の様々な特徴を用いて使用される殆どのコンピュータが、本発明のそうした特徴に関する関数を実行し、そうした特徴の方法に従ってデータ16704を読み出し及び書き出しをするために、プログラム16702を実行可能な何らかの種類のプロセッサ16716を有している、ということを明確にするために同図が示されている。本発明は、方法だけでなく、そうしたコンピュータプログラム及びデータに関し、さらには、そうした方法を実行、又は、そうしたデータを使用するために、プログラムされた、及び/又は、ハードウェアに組み込まれたコンピュータシステムに関する。   Most computers used with the various features of the present invention can execute programs 16702 to execute functions relating to those features of the present invention and to read and write data 16704 in accordance with the methods of such features. The figure is shown to clarify that it has some kind of processor 16716. The present invention relates not only to methods but also to such computer programs and data, and further to computer systems that are programmed and / or embedded in hardware to perform or use such methods. About.

殆どのそうしたコンピュータに於いて、本発明のプログラムは、機械可読形式で、RAM16706、ROM16707、又は、例えば、ハードドライブ16708、フロッピドライブ16709、CD−ROMドライブ16711、及び/又は、DVDドライブ16713など、大容量記憶装置に保存される。また、例えば、フロッピディスク16710、CD−ROM16712、DVD−ROM16714、又は、仮想の任意の他の機械可読記憶媒体に、本発明のプログラムを保存することが出来る。また、例えばネットワークインターフェース16720など、ある種の通信ポートを介してコンピュータが受信可能な数字16719で示された伝搬信号として、本発明のプログラム及び/又はデータを表現することが出来る。   In most such computers, the program of the present invention is in machine readable form, such as RAM 16706, ROM 16707, or hard drive 16708, floppy drive 16709, CD-ROM drive 16711, and / or DVD drive 16713, for example. Stored in mass storage. Further, for example, the program of the present invention can be stored in a floppy disk 16710, a CD-ROM 16712, a DVD-ROM 16714, or any other virtual machine-readable storage medium. Further, the program and / or data of the present invention can be expressed as a propagation signal indicated by a numeral 16719 that can be received by a computer via a certain communication port such as a network interface 16720.

図168は、図60乃至97に関して上述された非線形カラーバランス法を使用して、生成された小型のサブピクセル最適化されたフォントを示す320×240スクリーンの全ピクセルグレースケール表現を提供している。同図は、そのテキストの部分が破線部16800で囲まれている点を除いて、図56と同じである。   FIG. 168 provides a 320 × 240 screen full pixel grayscale representation showing the small sub-pixel optimized font generated using the nonlinear color balance method described above with respect to FIGS. . This figure is the same as FIG. 56 except that the text portion is surrounded by a broken line portion 16800.

図169は、破線部16800内の図168に図示したビットマップの部分に関する8倍の拡大図である。図169は、図168に図示されたフォントに於ける垂直ストロークの殆どが、その左側に、そうしたフォントの明瞭さをぼかすカラーバランス分配を含んでいることを図示している。この同一の僅かなぼかしが、図1、10、11、99、101、104、110乃至114、121乃至128、130、及び、144に図示された小型フォントに於いて生じている。   FIG. 169 is an 8 × enlarged view of the portion of the bitmap illustrated in FIG. FIG. 169 illustrates that most of the vertical strokes in the font illustrated in FIG. 168 include a color balance distribution on the left side that blurs the clarity of such fonts. This same slight blurring occurs in the small fonts illustrated in FIGS. 1, 10, 11, 99, 101, 104, 110-114, 121-128, 130, and 144.

サブピクセル最適化フォントビットマップを生成する非線形カラーバランス法の主な利点の一つが、そうした分配がカラーバランスに必要ない場合、輝度値の分配を防止しようとする非線形法によって、文字フォント形状のぼかしを低減するための能力である。   One of the main advantages of the non-linear color balance method of generating sub-pixel optimized font bitmaps is that if such distribution is not necessary for color balance, the non-linear method tries to prevent the distribution of luminance values by blurring the character font shape Is the ability to reduce

図169に図示された種類のフォントの主なストロークの左に、色値の望ましくない拡散を観測した場合、本発明のこの特徴の発明者は、そうした拡散を低減することが出来るかどうかを確かめようとした。この発明者は、そうした拡散のソースが何かを割り出そうとした。   When observing an undesirable diffusion of color values to the left of the main stroke of the type of font illustrated in FIG. 169, the inventors of this feature of the present invention have determined whether such diffusion can be reduced. I tried. This inventor tried to figure out what the source of such diffusion was.

ここで再び図170を参照すると、この発明者は、非線形カラーバランス処理が行われたビットマップの生成に使用されるアルゴリズムが、サブピクセル17000の2つのパディングコラムを、実際の非ゼロカバレッジ値17004を含む(即ち、ラスタ化で表現されている文字フォント形状の一部分によって実際に覆われた)文字フォント形状のラスタ化に於ける左端のサブピクセルコラム17002の左側に自動的に設定するよう設計されていたことを発見した。そうした非ゼロカバレッジ値を含む左端のサブピクセルコラムの左側にある、2つのサブピクセルコラムにカラーバランス色値を拡散可能にする余地を与えるために、これを実行する。これが望ましいのは、部分的に覆われたサブピクセルの左側2ピクセルにカラーバランス分配を可能にする、上述された非線形カラーバランスアルゴリズによって、そうした左側の分散が必要とされる場合である。   Referring again to FIG. 170, the inventor found that the algorithm used to generate the non-linear color balanced bitmap produced two padding columns of subpixels 17000, the actual non-zero coverage value 17004. Is designed to automatically set to the left of the leftmost sub-pixel column 17002 in the rasterization of a character font shape that contains (ie, actually covered by a portion of the character font shape represented by the rasterization) I found what I was doing. This is done to give room for the two subpixel columns on the left side of the leftmost subpixel column containing such non-zero coverage values to allow the color balance color value to be diffused. This is desirable when such left-side dispersion is required by the nonlinear color balance algorithm described above that allows color balance distribution to the left two pixels of the partially covered sub-pixel.

残念ながら、2つのそうしたサブピクセルコラム17000のみを用いて、ラスタ化サブピクセル配列をパディングすることは、そうしたカバレッジ値を含む左端のサブピクセルコラム17002を、2つのパディングサブピクセルコラムを含むピクセルコラムの右端サブピクセルコラムにするという、好ましくない影響を有する傾向がある。RGB表示では、これにより、実際のカバレッジ値を有する左端のサブピクセルコラムが青色サブピクセルに対応する。   Unfortunately, padding a rasterized subpixel array using only two such subpixel columns 17000 will result in the leftmost subpixel column 17002 containing such coverage values being replaced by the pixel column containing two padding subpixel columns. There is a tendency to have an unfavorable influence on the rightmost subpixel column. In RGB display, this causes the leftmost sub-pixel column with the actual coverage value to correspond to the blue sub-pixel.

これが望ましくないのは、それによって、フォントビットマップに於ける一番左のピクセルコラムのピクセルが、実際のカバレッジ値を有していない2つの一番左のサブピクセルと、非ゼロカバレッジ値を有する一番右のサブピクセルを有し、カラーバランスを達成するために、その非ゼロカバレッジ値が分配されることが要求されるからである。これが、図169に図示された主要な垂直ストロークの殆どの左方向の不鮮明な状態に関する理由である。   This is undesirable because it causes the pixel in the leftmost pixel column in the font bitmap to have two leftmost subpixels that do not have an actual coverage value and a non-zero coverage value. This is because the non-zero coverage value is required to be distributed in order to have the rightmost sub-pixel and achieve color balance. This is the reason for the blurring of most of the major vertical strokes illustrated in FIG.

発明者は、サブピクセルコラムの幅に比して垂直ストロークの境界を適切に段階的に位置づけ可能なシステムでヒンティングされた文字フォント形状が、例えば図171に図示された端部17100など、一番左の垂直ストロークの一番左の端部を、非ゼロカバレッジ値17002を含む一番左のサブピクセルコラムへの極僅かな距離で開始するために、これらの文字フォント形状をヒンティングした者によって、多くの場合設計されていることを言及した。これは、非線形カラーバランスが分配しなければならなかったサブピクセルコラム17002内に含まれた非ゼロカバレッジ値の量を実質的に低減し、これにより、文字のサブピクセル最適化された表現に於ける好ましくない不鮮明な状態を大幅に低減する。   The inventor has found that a character font shape hinted by a system capable of appropriately grading the boundary of the vertical stroke relative to the width of the sub-pixel column is, for example, the end 17100 shown in FIG. Those who hinted these character font shapes to start the leftmost edge of the leftmost vertical stroke at a very slight distance to the leftmost subpixel column containing the non-zero coverage value 17002 Said that it is often designed. This substantially reduces the amount of non-zero coverage values contained within the subpixel column 17002 that the non-linear color balance had to distribute, so that in the subpixel optimized representation of the character. This significantly reduces unwanted blurring.

例えば、発明者は、最良のヒンティングの組み合わせの多くがそうしたアルゴリズムに使用された場合、結果として生じるビットマップに於ける第2の一番左のピクセルコラム17103に、如何なるカラーバランス拡散をも要求しないために、全体的に覆われた1つ又は複数のピクセルを有するように、例えば図171に図示された垂直ストローク17102などの文字の第1垂直ストロークが、右側に3つの連続するサブピクセルコラムにおける合計カバレッジを用いて、1つのサブピクセルコラムに僅かに入る一番左の端部を有することを発見した。   For example, the inventor requires any color balance diffusion in the second leftmost pixel column 17103 in the resulting bitmap when many of the best hinting combinations are used in such an algorithm. The first vertical stroke of a character, such as vertical stroke 17102 illustrated in FIG. 171, for example, has three consecutive subpixel columns on the right side so that it has one or more pixels that are totally covered. Using the total coverage at, we found that it has a leftmost edge that fits slightly into one subpixel column.

そうした最適化されたヒンティング処理に於いて、第1垂直ストロークの一番右の端部から3、6、又は、9サブピクセルコラムの距離で始まる3つの隣接するサブピクセルコラムを覆うように、次の垂直ストロークが配置される。これにより、例えば図171に図示された垂直ストローク17104及び17106など、次の垂直ストロークが、如何なるカラーバランスも必要としないように、全体的に覆われた複数のピクセルを有する。   In such an optimized hinting process, to cover three adjacent subpixel columns starting at a distance of 3, 6, or 9 subpixel columns from the rightmost end of the first vertical stroke, The next vertical stroke is placed. Thus, the next vertical stroke, such as vertical strokes 17104 and 17106 illustrated in FIG. 171, for example, has a plurality of pixels that are totally covered so that no color balance is required.

図168乃至171に図示された種類のフォントは、従来技術の方法によって生成された殆どのサブピクセル最適化フォントビットマップに比して読みやすいが、これらの調査の結果、本発明者は、図172乃至174に図示されているように、より明瞭なサブピクセル最適化フォントの生成方法を発見した。   Although the types of fonts illustrated in FIGS. 168 through 171 are easier to read than most sub-pixel optimized font bitmaps generated by prior art methods, as a result of these studies, the inventor has shown that FIG. As illustrated in FIGS. 172 to 174, a clearer method of generating subpixel optimized fonts has been discovered.

フォントビットマップを生成及び表示するための新たなより明瞭な方法を使用していることを除いて、図172は、図168に図示された種類のウェブページのサブピクセル最適化された320×240ピクセル表示を表現する、全ピクセルグレースケールビットマップを図示している。   Except for using a new and clearer method for generating and displaying font bitmaps, FIG. 172 is a sub-pixel optimized 320 × 240 for a web page of the type illustrated in FIG. Figure 2 illustrates an all pixel grayscale bitmap representing a pixel representation.

図173は、17200の数字が割り当てられた破線ボックスに図示された図172の部分の4倍拡大図を示している。   FIG. 173 shows a four times enlarged view of the portion of FIG. 172 illustrated in the dashed box assigned the number 17200.

図174は、図173の破線部17300に図示されたテキストの部分をさらに4倍拡大した図を示している。   FIG. 174 shows a further magnified view of the text portion shown in broken line portion 17300 in FIG. 173.

図172乃至174を見ると分かるように、これらの図に図示されたフォントビットマップに含まれる垂直ストロークの多くから発生する色値の水平方向の拡散は比較的少ない。注目すべきは、カラーバランスに起因する任意の拡散のためではなく、これらの図中のテキストが、背景色を有する図172のウェブページの部分から選択されたために、図173及び174における規則的な薄い灰色の背景が生じるということである。これらの図に図示されたフォントは、図168及び169に図示されたフォントに比して実質的に明瞭である。   As can be seen in FIGS. 172 through 174, the horizontal spread of color values resulting from many of the vertical strokes contained in the font bitmaps illustrated in these figures is relatively low. It should be noted that the regularity in FIGS. 173 and 174 is not due to any diffusion due to color balance, but because the text in these figures was selected from the portion of the web page of FIG. A light gray background. The font illustrated in these figures is substantially clearer than the font illustrated in FIGS. 168 and 169.

本発明者は、文字の一番左側の垂直ストロークの一番左の端部を、ピクセル境界の左端に揃えることによって、こうした改善を行った。多くの実施形態に於いて、図175に図示された3つのパディングサブピクセルコラム17500を、非ゼロカバレッジ値を有する一番左のサブピクセルコラムの前に挿入することによって、これを実行する。これは、文字のアウトラインによって全体的又は部分的に覆われた一番左のラスタ化ユニット(即ち、サブピクセル)を、ピクセルコラムの一番左の端部に自動的に揃える。一番左のアウトライン端部がラスタ化ユニットの一番左の端部に揃えられるように、文字がヒンティングされる場合、これにより、一番左のアウトライン端部が、結果として生じるフォントビットマップに於けるピクセルの一番左の端部に自動的に揃えられる。フォントアウトラインの一番左の端部が垂直ストロークである場合、これにより、非線形カラーバランスの後でさえ、明瞭な一番左の垂直ストロークを有するフォントビットマップを非常に簡単に生成することができる。   The inventor made this improvement by aligning the leftmost edge of the leftmost vertical stroke of the character with the left edge of the pixel boundary. In many embodiments, this is done by inserting the three padding subpixel columns 17500 illustrated in FIG. 175 in front of the leftmost subpixel column having a non-zero coverage value. This automatically aligns the leftmost rasterization unit (ie, subpixel), wholly or partially covered by the character outline, to the leftmost end of the pixel column. If the character is hinted so that the leftmost outline edge is aligned with the leftmost edge of the rasterization unit, this will cause the leftmost outline edge to be the resulting font bitmap. Is automatically aligned to the leftmost edge of the pixel at. If the leftmost edge of the font outline is a vertical stroke, this makes it very easy to generate a font bitmap with a clear leftmost vertical stroke even after nonlinear color balance .

図176は、本発明に使用可能な多くの可能なヒンティングインターフェースの1つを図示している。このヒンティングインターフェースに於いて、破線17602は、所望の文字の左側ベアリングを対話形式で定義するために、ユーザによって移動可能なラインである。破線17604は、右側ベアリングを定義する移動可能なラインである。左側ベアリングは、ペン位置と呼ばれることもある、文字が描画される位置に対する第1参照ポイントと、描画される文字のビットマップの一番左の端部との間の距離である。ライン17604は、テキストのラインに沿って、ペン位置が次の連続する文字の描画開始点に通常配置されるビットマップに対する位置に対応する。右側ベアリングは、ライン17604と描画される文字のビットマップの一番右の端部との間の距離である。アドバンス幅は、ライン17604とライン17602との間の距離として定義される。これは、文字のビットマップの描画前のペン位置と描画後のペン位置との間の通常の全幅を表している。他の実施形態に於いて該当する必要はないが、幾つかの実施形態に於いては、左側ベアリングとアドバンス幅は、複数のピクセル幅に近似される。場合によっては、左側ベアリング値、及び/又は、右側ベアリング値は負の値になり得る。例えば、連続する文字に関連付けられたビットマップは、多くの場合、互いのアドバンス幅の部分に重なるようなイタリック体のフォントでは、しばしばこのような事態が発生する。   FIG. 176 illustrates one of many possible hinting interfaces that can be used with the present invention. In this hinting interface, the dashed line 17602 is a line that can be moved by the user to interactively define the left-hand bearing of the desired character. Dashed line 17604 is a movable line defining the right bearing. The left bearing is the distance between the first reference point, sometimes referred to as the pen position, to the position where the character is drawn and the leftmost end of the bitmap of the drawn character. Line 17604 corresponds to the position relative to the bitmap where the pen position is normally placed at the drawing start point of the next successive character along the line of text. The right bearing is the distance between the line 17604 and the rightmost end of the drawn character bitmap. The advance width is defined as the distance between line 17604 and line 17602. This represents the normal full width between the pen position before drawing of the character bitmap and the pen position after drawing. Although not necessary in other embodiments, in some embodiments, the left bearing and advance width approximate multiple pixel widths. In some cases, the left bearing value and / or the right bearing value can be negative. For example, this often occurs in italic fonts where bitmaps associated with consecutive characters often overlap each other's advance width portions.

図176に図示された小型の矩形ドット17606のそれぞれは、サブピクセル最適化フォントビットマップにおいて、個々のサブピクセルに対応するラスタ化ユニットの中心に対応する。この特別なヒンティングインターフェースに於いて、文字フォント形状のアウトラインに半分以上覆われたラスタ化ユニットが黒色で示される。但し、さらに進んだインターフェースでは、そうしたラスタ化ユニットをグレースケールカバレッジ値で表示することが出来る。文字フォント形状のアウトラインは同図に図示されており、アウトラインに於いてセグメントを定義する各ポイントは、制御ポイントであろうがセグメントエンドポイントであろうが、数字が割り当てられている。   Each of the small rectangular dots 17606 illustrated in FIG. 176 corresponds to the center of the rasterization unit corresponding to an individual subpixel in the subpixel optimized font bitmap. In this special hinting interface, rasterized units that are more than half covered by the outline of the character font shape are shown in black. However, more advanced interfaces can display such rasterized units with grayscale coverage values. The outline of the character font shape is shown in the figure, and each point defining a segment in the outline is assigned a number, whether it is a control point or a segment end point.

図177乃至181は、図182に含まれた高度に簡略化された擬似コードに記載されたステップの幾つかを説明する一助となるように使用される。   FIGS. 177 through 181 are used to help explain some of the steps described in the highly simplified pseudo code contained in FIG.

図182に図示された擬似コードが、図172乃至175に関して上述された、より明瞭な非線形のカラーバランスサブピクセル最適化ビットマップを生成するための改良された方法に関連する計算上の特徴に焦点を当てていることを除けば、図182は、図60に図示された疑似コードに一般的に対応するプログラム6000Aに関する高度に簡略化された擬似コード記述である。   The pseudo code illustrated in FIG. 182 focuses on computational features associated with the improved method for generating a clearer non-linear color balance sub-pixel optimized bitmap described above with respect to FIGS. 172 through 175. 182 is a highly simplified pseudo code description for program 6000A that generally corresponds to the pseudo code illustrated in FIG.

この擬似コードが、文字フォント形状を配置可能なラスタ化ユニットの最もタイトな矩形配列を決定する関数18202を有しており、ヒンティングによって定義されたそうしたラスタ化ユニットに対する文字フォント形状の配列を考慮に入れている。   This pseudo code has a function 18202 that determines the tightest rectangular array of rasterized units that can arrange character font shapes, taking into account the array of character font shapes for those rasterized units defined by hinting. Is put in.

それが発生する個々のラスタ化ユニットに対するフォントアウトラインの位置は、この関数によって変更されない。したがって、そうしたアウトラインの一番左側のポイントが、それが位置するラスタ化ユニットの左側端部以外で発生する場合、そのラスタ化ユニットは、関数18202によって生成される最もタイトな矩形配列の一番左側の端部で発生し、アウトラインの一番左側のポイントは、その矩形の一番左側のラスタ化ユニットコラム内で発生するが、その一番左側のコラムの一番左側の端部では発生しない。   The position of the font outline relative to the individual rasterization unit where it occurs is not changed by this function. Thus, if the leftmost point of such an outline occurs outside of the left end of the rasterization unit in which it is located, that rasterization unit will be leftmost in the tightest rectangular array produced by function 18202. The leftmost point of the outline occurs in the leftmost rasterization unit column of the rectangle, but does not occur at the leftmost end of the leftmost column.

図177及び178は、この関数を説明する一助となるべく使用される。図177は、ヒンティングされた文字フォント形状のアウトラインに対応する。図178は、図177に図示された文字アウトラインに対して、関数18202によって返される、(それぞれのサイズがサブピクセルに対応する)ラスタ化ユニットの矩形を図示している。このグリッドは、文字フォント形状を含むラスタ化ユニットが適合する、最も緊密で、最小の矩形に対応する。   Figures 177 and 178 are used to help illustrate this function. FIG. 177 corresponds to the outline of the hinted character font shape. FIG. 178 illustrates a rasterization unit rectangle (each size corresponding to a subpixel) returned by function 18202 for the character outline illustrated in FIG. 177. This grid corresponds to the tightest and smallest rectangle to which the rasterization unit containing the character font shape fits.

関数18202が完了した時点で、関数6002A乃至6006が実行される。これらは、図60のステップ6002乃至6006に対応する。それらは、関数18202によって返された矩形に含まれる各ラスタ化ユニットに対するカバレッジ値を決定するために使用される。そうした各カバレッジ値は、ラスタ化されている高解像度文字フォント形状アウトラインによって覆われたサブピクセルの割合を表している。   When the function 18202 is completed, functions 6002A to 6006 are executed. These correspond to steps 6002 to 6006 in FIG. They are used to determine the coverage value for each rasterization unit contained in the rectangle returned by function 18202. Each such coverage value represents the percentage of subpixels covered by the rasterized high resolution character font shape outline.

図179は、図178に図示された配列に於ける各ラスタ化ユニットに対して計算されたカバレッジ値を図示している。そこでは、カバレッジが黒に色付けされたラスタ化ユニットの割合で表現される。図179に於いて、文字フォント形状アウトラインによって覆われたユニットの対応する部分がラスタ化ユニットの最上部で発生する場合、カバレッジを表す各ラスタ化ユニットに於ける結果として生じる棒グラフの部分は、ラスタ化ユニットの最上部に設置される。   FIG. 179 illustrates the calculated coverage values for each rasterization unit in the array illustrated in FIG. There, the coverage is expressed as a percentage of rasterized units colored black. In FIG. 179, if the corresponding portion of the unit covered by the character font shape outline occurs at the top of the rasterization unit, the resulting bar graph portion in each rasterization unit representing coverage is Installed at the top of the unit.

図180に於いて、個々のラスタ化ユニットの全てに対する棒グラフは、上述した図46乃至52、及び、図92乃至93に図示されたカバレッジ値の表現により厳密に対応させるために、対応するサブピクセルユニットの最下部から設置される。   In FIG. 180, the bar graphs for all of the individual rasterization units correspond to the corresponding subpixels in order to more closely correspond to the coverage value representations illustrated in FIGS. 46 to 52 and FIGS. 92 to 93 described above. Installed from the bottom of the unit.

文字フォント形状がラスタ化された時点で、ステップ18204は、サブピクセルカバレッジ値の結果として生じる配列を、サブピクセルアドレス可能ピクセルの配列にマッピングする。上述のタイトな矩形に於けるラスタ化ユニットの第1コラムをピクセル行の一番左のサブピクセルに揃えることによって、ステップ18204はこれを実行する。これによって、非ゼロカバレッジ値を有するラスタ化ユニットの一番左側のコラムが、図175に関して上述された全ピクセルに一番左のサブピクセルコラムとして配置される。図177乃至181で図示された例では、これによって、結果として生じるサブピクセル配列が、図181に於いて18102とラベル付けされた中央の5つのピクセルコラムに図示されているように見える。   Once the character font shape has been rasterized, step 18204 maps the resulting array of subpixel coverage values to an array of subpixel addressable pixels. Step 18204 does this by aligning the first column of the rasterization unit in the tight rectangle described above with the leftmost subpixel of the pixel row. This places the leftmost column of the rasterization unit having a non-zero coverage value as the leftmost subpixel column for all pixels described above with respect to FIG. In the example illustrated in FIGS. 177-181, this causes the resulting subpixel array to appear as illustrated in the central five pixel columns labeled 18102 in FIG. 181.

次に、ステップ18206は、現在の文字に対して生成されているビットマップ配列を、3つのサブピクセルで構成されるピクセルコラム1804に当てる。実際の非ゼロカバレッジ値を含む一番左側のサブピクセルコラムを有するピクセルの左側にこのパディングコラムを設置する。これにより、この例のサブピクセル配列が、図181のピクセルコラム18104及び18102の組み合わせによって示されるように見える。   Step 18206 then applies the bitmap array generated for the current character to a pixel column 1804 composed of three subpixels. Place this padding column on the left side of the pixel with the leftmost subpixel column containing the actual non-zero coverage value. Thus, the sub-pixel array of this example appears as shown by the combination of pixel columns 18104 and 18102 in FIG.

次に、ステップ18208は、ビットマップのサブピクセルコラムの合計が3の偶数倍、即ち、全ピクセルコラムの偶数倍になるように、ビットマップ配列に右側の2つ又はそれを超えるサブピクセルコラムを当てる。これにより、この例のサブピクセル配列が、図181のピクセルコラム18104,18102,及び、18106の組み合わせによって示されるように見える。   Next, step 18208 adds the right two or more subpixel columns to the bitmap array so that the sum of the subpixel columns in the bitmap is an even multiple of 3, ie, an even multiple of all the pixel columns. Hit it. Thus, the sub-pixel arrangement of this example appears as shown by the combination of pixel columns 18104, 18102, and 18106 in FIG.

ステップ18210は、パディングピクセルコラムの追加を相殺するために、左側ベアリング値、及び/又は、右側ベアリング値を調整する。したがって、例えば、さもなければ1ピクセル幅の左側ベアリングを有するビットマップは、左側パディングコラムの追加を相殺するために、ゼロの左側ベアリングを有するように変更される。同様に、右側に追加された余分のピクセルコラムを有するビットマップは、1ピクセル幅だけ右側ベアリングを減少させる。   Step 18210 adjusts the left bearing value and / or the right bearing value to offset the addition of padding pixel columns. Thus, for example, a bitmap that would otherwise have a 1 pixel wide left bearing would be modified to have a zero left bearing to offset the addition of the left padding column. Similarly, a bitmap with an extra pixel column added to the right will reduce the right bearing by one pixel width.

次に、関数18212は、多くの実施形態において、上記図60に図示されたループ6008によって記載されたステップに対応する非線形カラーバランスを実行する。   Next, function 18212 performs a non-linear color balance corresponding to the steps described by the loop 6008 illustrated in FIG. 60 above, in many embodiments.

これが実行された時点で、上述の図96に記載された種類のパックト色値表現を使用する実施形態に於いて、ステップ18214は、カラーバランス処理後に生じるピクセル色値を、より制限されたカラーパレットからの対応値に変換する。   When this is done, in an embodiment using a packed color value representation of the type described in FIG. 96 above, step 18214 determines that the pixel color values that result after the color balance process are more limited to a color palette. To the corresponding value from.

ここで留意すべきは、図182の方法によって、図168及び169に関して上述された不要な色拡散を引き起こしがちになることなく、必要となる可能性のある任意のカラーバランスのための余地が与えられるということである。図182の方法は、ラスタ化されているフォント形状によって覆われた領域に対応する任意のサブピクセルの左側及び右側に少なくとも2つのサブピクセルが存在することを確実にすることによって、これを実行する。   Note that the method of FIG. 182 provides room for any color balance that may be required without tending to cause the unwanted color diffusion described above with respect to FIGS. 168 and 169. It is that. The method of FIG. 182 does this by ensuring that there are at least two subpixels to the left and right of any subpixel that corresponds to the area covered by the rasterized font shape. .

本発明のこの特徴に関する他の実施形態に於いて、不鮮明さを低減する非線形カラーバランスの能力を最大限に利用するために、フォント形状及び垂直ストロークの一番左の端部及び一番右の端部を全ピクセル境界に揃えるための他の方法が使用される。幾つかのそうした実施形態に於いて、パッディングピクセルコラムがフォントビットマップの左側又は右側に追加されたかどうかは、カラーバランス分配がそうした位置で必要とされたかどうかという関数となり得る。   In another embodiment of this aspect of the invention, the font shape and the leftmost edge of the vertical stroke and the rightmost character are used to maximize the ability of non-linear color balance to reduce blurring. Other methods for aligning the edges to all pixel boundaries are used. In some such embodiments, whether padding pixel columns have been added to the left or right side of the font bitmap can be a function of whether color balance distribution was required at those locations.

図183は、図182に記載された方法によって生成されたビットマップを使用して、文字の文字列を描画するための関数を記載している。この擬似コードは、図182の方法で生成されたビットマップに使用された本発明の特徴に焦点を当てているという点を除いて、図97に関して上述された擬似コードに類似している。   FIG. 183 describes a function for drawing a character string using the bitmap generated by the method described in FIG. This pseudo code is similar to the pseudo code described above with respect to FIG. 97, except that it focuses on the features of the present invention used in the bitmap generated by the method of FIG.

図183に図示された描画文字列関数18300が呼び出される場合、ステップ18302は、ペン位置を文字列の表示が先頭になっている場所を示す描画文字列呼び出しによって特定された開始位置に設定する。   When the drawing character string function 18300 shown in FIG. 183 is called, step 18302 sets the pen position to the start position specified by the drawing character string call indicating the place where the display of the character string is the head.

次に、図97に記述されたループ9714に類似するループ9714Aが、表示に対する文字列の各文字に対して実行される。   Next, a loop 9714A similar to the loop 9714 described in FIG. 97 is performed for each character in the character string for display.

このループに於いて、ステップ9716は、現在の文字のフォントビットマップにアクセスする。次に、ステップ18304は、文字の開始点を現在のペン位置に設定する。次に、ステップ18306は、左側ベアリングによって現在のペン位置を調整する。上記に於いて既に述べたように、左側ベアリングは、文字ビットマップに余分な1ピクセルコラムがその左側に当てられているという事実を考慮するために、通常の状態から変更されているので、左側ベアリングが1ピクセルコラムの幅だけ減少されている。   In this loop, step 9716 accesses the font bitmap of the current character. Next, step 18304 sets the starting point of the character to the current pen position. Step 18306 then adjusts the current pen position with the left bearing. As already mentioned above, the left bearing has been changed from its normal state to account for the fact that the character bitmap has an extra 1 pixel column on its left side, so the left side The bearing is reduced by the width of one pixel column.

次に、ステップ9718Aがフォントビットマップに於ける各ピクセルに対して実行される。これは、現在のピクセルの値が非ゼロであるかどうかを確認するためにテストを行うサブステップ18308を有する。現在のピクセルの値が非ゼロであれば、画面上に於いて、現在のペン位置の関数として定義された位置にピクセルを描画する。   Step 9718A is then performed for each pixel in the font bitmap. It has a sub-step 18308 that performs a test to see if the current pixel value is non-zero. If the current pixel value is non-zero, draw the pixel at a position defined on the screen as a function of the current pen position.

現在のピクセルの値がゼロの場合、それは全体的に透明なピクセルを表現し、これは、以前、現在のピクセルの位置に存在した背景色が変更されずに残されていることを意味する。本発明のこの実施形態に於いて、図96に記載された関数は、そうした全体的に透明なピクセルを表現するために、ゼロの値を保持している。   If the value of the current pixel is zero, it represents a totally transparent pixel, which means that the background color that previously existed at the current pixel position is left unchanged. In this embodiment of the invention, the function described in FIG. 96 retains a value of zero to represent such a totally transparent pixel.

透明なピクセルを書き込まないようにすることは、図183に記載された実施形態に於いて、ビットマップの全てのピクセルに適用される。透明なピクセルを書き込まないようにすることは、図182に関して上記したステップ18206によって、文字フォントビットマップの一番左側の端部に設置されたパディングコラムに於けるピクセルに関しては特に重要である。これは、そうしたパディングコラムに於けるピクセルが、垂直ストローク境界が垂直ピクセル境界に揃えられている場合に非線形カラーバランスの結果として、パディングコラムに拡散された色値を有さないからである。その結果、そのようなピクセルは透明になり、左側の文字によってピクセル位置に設置されている可能性のある色値は、変化のない状態を保持することが可能でり、これにより、カバレッジ又はカラーバランス情報を有する隣接文字のピクセルコラムを互いに近接して設置することが出来る。   Avoiding writing transparent pixels applies to all pixels of the bitmap in the embodiment described in FIG. Avoiding writing transparent pixels is especially important for pixels in the padding column located at the leftmost end of the character font bitmap by step 18206 described above with respect to FIG. This is because the pixels in such a padding column do not have color values diffused into the padding column as a result of nonlinear color balance when the vertical stroke boundary is aligned with the vertical pixel boundary. As a result, such pixels become transparent, and color values that may have been placed at the pixel location by the left-hand letter can remain unchanged, thereby increasing coverage or color. Pixel columns of adjacent characters having balance information can be placed close to each other.

透明で、記載のない、「e」に関連付けられた左側のパディングコラムを通じて表示可能となっている「w」からの色値を有する場合、例えば、図173の数字17302によって示された位置においてこれを確認することが出来る。また、「r」と「e」の間のピクセルコラムが、「e」の透明なパディングピクセルコラムに重ねられていない「r」からの色値を有する図174の数字17402によって示された位置でこれを確認することが出来る。   If it has a color value from “w” that is transparent and not shown, and that can be displayed through the left padding column associated with “e”, for example, at the position indicated by numeral 17302 in FIG. Can be confirmed. Also, the pixel column between “r” and “e” is at the position indicated by numeral 17402 in FIG. 174 with a color value from “r” that is not superimposed on the transparent padding pixel column of “e”. This can be confirmed.

当業者には理解可能であるが、関数9718Aは、ビットマップのそれぞれを適切な位置に描画するために、ピクセルが描画される位置を制御するある種の繰り返しが、フォントビットマップの各行に対して繰り返されることを要求する。   As will be appreciated by those skilled in the art, function 9718A provides a certain iteration that controls where the pixels are drawn in order to draw each of the bitmaps at the appropriate location for each row of the font bitmap. To be repeated.

当然のことながら、本発明の他の実施形態に於いて、次の文字の対応するピクセルが透明な場合に、一つの文字からの非透明色値を単に透けて見えるようにする関数というよりは、むしろ、隣接文字からの非透明ピクセル値との重なりを結合可能な関数を提供することが出来る。   Of course, in other embodiments of the invention, rather than a function that simply shows through the non-transparent color values from one character when the corresponding pixel of the next character is transparent. Rather, it can provide a function that can combine the overlap with non-transparent pixel values from neighboring characters.

そうした処理がサブピクセル対サブピクセルに基づいて、そうした透明値の結合を可能にすることが望ましい。そうした処理は、さらに演算処理が必要ではあるが、間隔の近い文字のさらに正確な表現を提供することが出来る。   It would be desirable for such processing to allow the combination of such transparency values based on subpixel-to-subpixel. Such processing can provide more accurate representations of closely spaced characters, although more computational processing is required.

この結果を達成する一つの方法は以下の通りである。即ち、文字間の任意の重複するピクセルに関連付けられた3つの対応するアルファコンポーネント値のそれぞれを追加し、任意のコンポーネント値を最大可能値で切り取る。そして、結果として生じるピクセルのそれぞれを描画し、前景色及び背景色がその位置でどの程度描画されるべきかを決定するために、結合されたコンポーネントアルファ値を使用する。   One way to achieve this result is as follows. That is, each of the three corresponding alpha component values associated with any overlapping pixels between characters is added, and any component value is clipped at the maximum possible value. It then draws each of the resulting pixels and uses the combined component alpha value to determine how much foreground and background colors should be drawn at that location.

ユーザによって移動可能なライン又は制御で構成されたインターフェース特性18402を有するという点を除いて、図184は図176に関して上述されたインターフェースに類似したヒンティングインターフェースを図示している。この制御によって、ユーザは、自身の文字フォント形状アウトラインに対して、一番左側のパディングピクセルコラムに付随するピクセルコラムの一番左の端部に位置を揃えるように選択的に位置付けることが出来る。   FIG. 184 illustrates a hinting interface similar to the interface described above with respect to FIG. 176, except that it has interface characteristics 18402 configured with lines or controls movable by the user. With this control, the user can selectively position the character font shape outline so as to align with the leftmost end of the pixel column associated with the leftmost padding pixel column.

そうしたインターフェース特性が望ましいのは、単一の垂直ストローク以外の一番左の端部を有するフォントをヒンティングする場合である。例えば、最大ピクセル幅未満で、その左端部に突き出ている小型のセリフ活字を備えた一番左の主要な垂直ストロークを有する文字フォント形状を処理する場合、ヒンティング実行者が、より左側のセリフ活字ではなく、むしろ、全ピクセル境界に揃えられた主要な一番左の端部を有することを望んでいる可能性がある。図184に図示されたインターフェース特性は、ヒンティング実行者がそうした配列を選択し易いものにする。   Such interface characteristics are desirable when hinting fonts that have a leftmost edge other than a single vertical stroke. For example, if you are processing a character font shape that has a leftmost major vertical stroke with a small serif type protruding less than the maximum pixel width and protruding at its left edge, the hinting performer will Rather than type, you may wish to have a primary leftmost edge that is aligned to the full pixel boundary. The interface characteristics illustrated in FIG. 184 make it easier for hinters to select such an arrangement.

ヒンティング実行者に同等の能力を与える他の方法によって、図170又は171に関して上述されているように、2つのサブピクセルパディングコラムのみを追加するかどうか、または、図175、181、及び、182に関して上述されているように、3つ又はそれを超えるそうしたサブピクセルパディングコラムを追加するかどうかをユーザが選択することが出来る。   Whether to add only two sub-pixel padding columns, as described above with respect to FIG. 170 or 171, or FIGS. 175, 181, and 182, as described above with regard to FIG. As described above with respect to, the user can choose whether to add three or more such sub-pixel padding columns.

今述べた非線形カラーバランスサブピクセル最適化画像をより明瞭にするための方法は、図172乃至174に図示された種類の小型フォントだけでなく、例えば図55に図示された比較的大型のフォントなど、より大きなフォントにも適用することが出来る。   The method for clarifying the nonlinear color balance subpixel optimized image just described is not only a small font of the type shown in FIGS. 172 to 174 but also a relatively large font shown in FIG. It can also be applied to larger fonts.

当然のことながら、サブピクセル最適化は、通常、3つの異なる種類のピクセル、即ち、前景ピクセル、背景ピクセル、及び、中間的にカラーバランスされたピクセルで、フォントビットマップを表現することが出来る。前景ピクセルは、表現されているフォント形状によって全体的に覆われたフォント画像の部分を表現しており、文字が表現される前景色で描画される。背景画素は、フォント形状によって全体的に覆われていないフォント画像の部分を表現しており、背景色でフォントが表示される最上部に描画される。中間ピクセルは、フォント形状で部分的に覆われたピクセル、及び/又は、部分的に覆われた近傍ピクセルに対してカラーバランス分配を受け付けるピクセルを表現している。サブピクセルのそれぞれの色は、カラーバランスによって別々に決定される。   Of course, sub-pixel optimization can typically represent a font bitmap with three different types of pixels: foreground pixels, background pixels, and intermediate color balanced pixels. The foreground pixel represents the part of the font image that is entirely covered by the represented font shape, and is drawn in the foreground color where the characters are represented. The background pixel expresses a portion of the font image that is not entirely covered by the font shape, and is drawn on the uppermost portion where the font is displayed with the background color. An intermediate pixel represents a pixel that is partially covered with a font shape and / or a pixel that receives a color balance distribution for neighboring pixels that are partially covered. Each color of the sub-pixel is determined separately by the color balance.

図46、47、52、及び、93に関して上述された種類の従来技術の非線形カラーバランスがフォントに適用された場合、文字形状の端部が完全にピクセル境界に揃えられたとしても、文字形状の各端部を越えて、サブピクセルの色の変化の方向に、カラーバランスが実行される。ヒンティングがどんなに上手くいっても、これが全ての文字の形状の空間的な不鮮明さをもたらす。   When a prior art non-linear color balance of the type described above with reference to FIGS. 46, 47, 52, and 93 is applied to a font, the character shape will be corrected even if the character shape edges are perfectly aligned with the pixel boundaries. Beyond each edge, color balance is performed in the direction of subpixel color change. No matter how good the hinting is, this leads to spatial blurring of all character shapes.

図48、49、51、及び、91に関して上述した種類の非線形カラーバランスがフォントに適用される場合、カラーバランスによって生じる空間的な不鮮明さを大いに低減するために、ヒンティングを使用することが出来る。端部がピクセル境界に揃えられている文字の形状の部分に於いて、カラーバランス分配がピクセル境界を越えて必要にならない場合が多い。これは、そうした非線形カラーバランスのみが所定のピクセル内で生じるカラーアンバランスを分配するからである。これは、前景ピクセルをそうした位置に於いて、サブピクセルの色の変化の方向に沿って背景ピクセルの次に配置させ、フォント形状の知覚される明瞭さを大幅に向上させる。このことは、図173及び174に図示されており、これらの図中で、垂直ストロークの端部がピクセル境界と一直線になるように、垂直ストロークの実質的な部分が図示された8ピクセル/emでヒンティングされている。その結果、前景ピクセルは、多くのそうした垂直ストロークの端部の実質的な部分に沿って、背景ピクセルの次に水平方向に配置される。図168及び169に図示された一番左側の垂直ストローク端部のそれ程最適ではないヒンティングを使用する場合でさえ、カラーバランスの不明瞭さの合計は、従来技術の線形カラーバランスから生じる不明瞭さの合計に比して実質的に小さい。   Hinting can be used to greatly reduce the spatial blur caused by color balance when nonlinear color balance of the type described above with respect to FIGS. 48, 49, 51 and 91 is applied to the font. . Color balance distribution is often not required across pixel boundaries in character-shaped portions whose edges are aligned with pixel boundaries. This is because only such non-linear color balance distributes the color imbalance that occurs within a given pixel. This places the foreground pixel at that location next to the background pixel along the direction of the subpixel color change, greatly improving the perceived clarity of the font shape. This is illustrated in FIGS. 173 and 174, in which a substantial portion of the vertical stroke is illustrated with 8 pixels / em so that the end of the vertical stroke is aligned with the pixel boundary. Hinting at. As a result, the foreground pixels are placed horizontally next to the background pixels along a substantial portion of the ends of many such vertical strokes. Even when using the less optimal hinting of the leftmost vertical stroke end illustrated in FIGS. 168 and 169, the total color balance ambiguity is the ambiguity resulting from the prior art linear color balance. Substantially smaller than the total.

図185乃至190は、特に、比較的小さい又は比較的低解像度のスクリーン上でブラウズが実行される場合に、ウェブページのブラウズを向上させるために使用可能なユーザインターフェースの技術革新に関する高度に簡略化された擬似コード記述である。   FIGS. 185 through 190 are highly simplified regarding user interface innovations that can be used to improve browsing of web pages, especially when browsing is performed on a relatively small or relatively low resolution screen. Pseudo-code description.

図185は、図129乃至134に関して上述された選択テキストリフロー法に関するより高度なレベルの記述である。この方法18500は、ウェブページのコンテンツにアクセスする関数18502と、ウェブページのコンテンツの最初のレイアウトを実行する関数18504とを含み、ウェブページ内のテキストについて示された異なる水平方向の位置にテキストをセットする。   FIG. 185 is a higher level description of the selected text reflow method described above with respect to FIGS. This method 18500 includes a function 18502 for accessing the content of the web page and a function 18504 for performing an initial layout of the content of the web page, and placing the text at different horizontal positions indicated for the text in the web page. set.

ウェブページの記述に使用されるマークアップ言語は、テキストの異なる部分が異なる水平方向の位置、又は、ウェブページの異なる水平方向の範囲に描画されることを指示する複数の方法(2つだけ例を挙げると、テーブルとフレームの使用)を有している。   The markup language used to describe web pages is a number of methods (only two examples) that indicate that different parts of the text are drawn at different horizontal positions or different horizontal ranges of the web page. For example, it has a table and a frame).

そうしたレイアウトが実行された段階で、関数18506は、レイアウトの要素を所定の縮尺、及び、最初のレイアウトで決定された相対的な位置に表示する。この表示が実行された後、ステップ18508は、最初のレイアウトの表示に於ける所定の水平方向位置でテキストの一部を、ユーザが選択出来るようにする。これを可能にする1つの方法は、図130に関して上述されている。   When such a layout is performed, function 18506 displays the elements of the layout at a predetermined scale and relative position determined by the initial layout. After this display is performed, step 18508 allows the user to select a portion of the text at a predetermined horizontal position in the display of the initial layout. One way to enable this is described above with respect to FIG.

そうした選択が実行される場合、関数18510によって、関数18512及び18514が実行される。関数18512は、ユーザが選択したテキストの第2レイアウトを実行する。コラムのライン幅に比して、異なった、通常より大きなフォントサイズをテキストが有する新しいコラムのラインを越えて、この2番目のレイアウトが選択されたテキストをリフローする。この第2レイアウトが実行される場合、関数18514は、ウェブページが表示されているスクリーン、又は、スクリーンウインドウ幅の少なくとも3分の2を満たす縮尺で、新しいコラムのレイアウトを表示する。   If such a selection is performed, function 18510 causes functions 18512 and 18514 to be performed. Function 18512 performs a second layout of the text selected by the user. This second layout reflows the selected text beyond the new column line where the text has a different and larger than normal font size compared to the line width of the column. When this second layout is performed, function 18514 displays the layout of the new column at a scale that satisfies at least two-thirds of the screen on which the web page is displayed, or the screen window width.

図135乃至137に関して上述したように、そのように選択されたテキストリフロー法に於ける第2レイアウトによって、ユーザはウェブページのレイアウトの選択部分を、全体的に読み易いフォントサイズで見ることが出来る。小型スクリーン、及び/又は、視聴者から比較的離れたスクリーンの両方の低解像度スクリーンに関して、非常に大きな利点である。そうした方法に於ける第1レイアウトによって、ユーザはウェブページがより通常に近い表示でどのように見えるよう計画されているかを視認することができ、見たいと考えるテキストのどの部分をより大きなフォントサイズで再表示するかを、より迅速に選択することが出来る。   As described above with respect to FIGS. 135-137, the second layout in the text reflow method so selected allows the user to view selected portions of the layout of the web page in a generally readable font size. . This is a huge advantage for low resolution screens, both small screens and / or screens that are relatively remote from the viewer. The first layout in such a way allows the user to see how the web page is planned to look in a more normal display, and what part of the text they want to see is the larger font size. You can select more quickly whether or not to redisplay.

図186は、図118乃至120に関して上述した一般的な種類のズーム・トゥ・フィット法18600に関する高水準の擬似コード記述である。   FIG. 186 is a high-level pseudocode description for the general kind of zoom-to-fit method 18600 described above with respect to FIGS.

この方法は、ウェブページのコンテンツにアクセスする関数18602と、ウェブページのコンテンツをレイアウトする関数18604を含んでいる。   The method includes a function 18602 for accessing the contents of the web page and a function 18604 for laying out the contents of the web page.

そうしたレイアウトの表示がスクリーン上に表示される時点で、関数18608によって、ユーザはこの表示を越えてポインティングデバイスをドラッグすることが出来る。そうしたドラッグ中、スクリーンの端部に関連付けられた境界を越えてドラッグが継続する場合、関数18610によって、関数18612がスクリーン端部の反対側で以前にはスクリーン上に存在しなかったレイアウトの部分を、スクリーン上でスクロールさせる。これを実行するのは、大き過ぎて現在の表示縮尺でスクリーン上に全体的に適合することが出来ないレイアウトの部分、又は、一部だけがスクリーン上に存在するように、ドラッグの開始時点で位置したレイアウトの部分を、ユーザがドラッグで選択できるようにするためである。   When a display of such a layout is displayed on the screen, function 18608 allows the user to drag the pointing device beyond this display. During such dragging, if dragging continues beyond the boundary associated with the edge of the screen, function 18610 causes function 18612 to remove the portion of the layout that did not previously exist on the screen opposite the screen edge. Scroll on the screen. This is done at the start of the drag so that there is a portion of the layout that is too large to fit entirely on the screen at the current display scale, or that only a portion is on the screen. This is because the user can select the portion of the layout that has been positioned by dragging.

ユーザがドラッグを解除する場合、関数18614によって、関数18616及び18618が実行される。関数18618によって、レイアウトの一部がドラッグの最初と最後に一致するレイアウト上の位置に基づいて選択されたものとして定義される。そのように選択された部分は、ドラッグの水平又は垂直方向の範囲を有するレイアウトの部分、又は、そうしたドラッグの最初と最後に対応する対角部を有する領域を備えたレイアウトの部分に対応することが可能である。そして、関数18618は、レイアウトの選択された部分を実質的にスクリーンに適合する縮尺で表示する。実質的にスクリーンに適合するということは、選択された幅、高さ、又は、領域が、対応する寸法又はスクリーンの寸法、或いは、表示が実行されているスクリーンの部分の、少なくとも3分の2を占めることを意味する。   If the user releases the drag, function 18614 causes functions 18616 and 18618 to be executed. Function 18618 defines a portion of the layout as being selected based on the position on the layout that matches the beginning and end of the drag. The part so selected corresponds to the part of the layout with the horizontal or vertical extent of the drag, or the part of the layout with the diagonals corresponding to the beginning and end of such drag. Is possible. Function 18618 then displays the selected portion of the layout at a scale that substantially fits the screen. Substantially conforming to the screen means that the selected width, height, or area is at least two-thirds of the corresponding dimension or screen dimension, or portion of the screen where the display is being performed. Means to occupy.

図187は、ユーザがウェブページのレイアウトの表示内で、容易にナビゲート可能なドラッグスクロール法18700に関する高水準の擬似コード記述である。   FIG. 187 is a high-level pseudocode description for a drag scroll method 18700 that allows a user to easily navigate within the display of a web page layout.

この方法は、ウェブページのコンテンツにアクセスする関数18702、ウェブページのコンテンツのレイアウトを実行する関数18704、及び、所定の倍率でレイアウトの全部又は一部を表示する関数18706を含む。その後、関数18708によって、ユーザはレイアウトの表示を越えてポインティングデバイスをドラッグすることが出来る。関数18710は、以前スクリーン上に存在しなかったレイアウトの部分を、スクリーン端部を越えてスクリーン上でスクロールすることにより、スクリーン端部に関連付けられた境界を越えて、そうした任意のドラッグに対応する。   The method includes a function 18702 for accessing the content of the web page, a function 18704 for performing the layout of the content of the web page, and a function 18706 for displaying all or part of the layout at a predetermined magnification. Thereafter, function 18708 allows the user to drag the pointing device beyond the display of the layout. Function 18710 responds to any such drag across the boundary associated with the screen edge by scrolling on the screen across the screen edge a portion of the layout that did not previously exist on the screen. .

ズーム選択関数の一部、又は、ズーム選択関数から独立したものとして、この方法を使用することが出来る。この方法には、表示スクリーンの端部、又は、表示スクリーンの端部近傍で、境界を越えてポインティングデバイスを単にドラッグさせることにより、ユーザがウェブページのレイアウトの表示をスクロール出来るという利点を有する。この方法は、スクロールバーを利用したスクロールに比して、かなり自然で速い。   This method can be used as part of the zoom selection function or independent of the zoom selection function. This method has the advantage that the user can scroll the display of the layout of the web page by simply dragging the pointing device across the border at or near the edge of the display screen. This method is much more natural and faster than scrolling using a scroll bar.

図188は、ウェブページのレイアウトの所望の部分に於いて、ユーザが即座にズームインすることを選択可能なクリックズーム法18800に関する高水準の擬似コード記述である。この方法は、ウェブページのコンテンツにアクセスする関数18802、ウェブページのコンテンツのレイアウトを実行する関数18804、及び、ウェブページのレイアウトの全部又は一部を第1縮尺で表示する関数18806を含む。関数18808によって、ユーザは第1縮尺で表示されたレイアウトの表示に於いて、選択された位置でポインティングデバイスをクリックすることができ、関数18810は、クリックが実行されたレイアウトに於ける位置の周囲でレイアウトの部分のズームイン表示を実行することによって、そうしたクリックに応答する。一般的に、ズームイン表示は、クリックが実行されたレイアウトに於ける位置を中心とする。   FIG. 188 is a high level pseudo-code description for the click zoom method 18800 that allows the user to choose to zoom in on the desired portion of the layout of the web page. The method includes a function 18802 for accessing web page content, a function 18804 for performing web page content layout, and a function 18806 for displaying all or part of the web page layout at a first scale. Function 18808 allows the user to click on the pointing device at the selected position in the display of the layout displayed at the first scale, and function 18810 surrounds the position in the layout where the click was performed. Respond to such clicks by performing a zoomed-in view of the portion of the layout. In general, zoom-in display is centered on the position in the layout where the click was performed.

図189は、図121乃至128に関して上述されたズームクリック法18900に関する高度に簡略化された擬似コード記述である。   FIG. 189 is a highly simplified pseudocode description for the zoom click method 18900 described above with respect to FIGS. 121-128.

この方法は、ウェブページのコンテンツにアクセスする関数18902、そのコンテンツのレイアウトを実行する関数18094、及び、関連付けられたポインティングデバイスを有する表示スクリーン上に、ウェブページのレイアウトの前部又は一部を第1縮尺で表示する関数18906を含む。図189に記載されたこの方法に関する特定の実施形態に於いて、スクリーンはタッチスクリーンであり、ポインティングデバイスを人の指にすることが可能であることが意図されている。   This method includes a function 18902 for accessing web page content, a function 18094 for performing layout of the content, and a front or part of the web page layout on a display screen having an associated pointing device. It includes a function 18906 that displays at one scale. In the particular embodiment relating to this method described in FIG. 189, the screen is a touch screen and it is intended that the pointing device can be a human finger.

第1縮尺でレイアウトの表示が実行された時点で、タッチスクリーン表示に対して押下が実行された際に、関数18908が対応する。そうした押下が発生する場合、この関数によって、関数18910乃至18922が実行される。   When the display of the layout is executed at the first scale, the function 18908 corresponds to the pressing of the touch screen display. If such a press occurs, functions 18910 through 18922 are executed by this function.

関数18910は、スクリーン上で、第1縮尺のウェブページの部分の表示を、より大きな縮尺のウェブページの部分のズームイン表示に置換する。このズームされた部分は、タッチスクリーンの押下に関連付けられたレイアウトに於ける選択された位置を含む。選択レイアウト位置は、選択時の第1縮尺での表示に於いて有していた位置と、実質的に同一の位置をスクリーン上に有することが望ましい。実質的に同一位置ということは、選択された位置が、ズームの直前及び直後のスクリーン上に、スクリーン上に位置する同一の接触に対応するように見える位置を有するはずだということを意味する。これは、選択された位置のスクリーン位置に於ける変化が、そうしたズームの直後に於いて、スクリーンの幅又は高さの20%を超える割合で(そして、望ましくは、その量に比してかなり少ない量で)変更しないことを意味することが望ましい。   Function 18910 replaces the display of the portion of the first scale web page with a zoomed-in display of the portion of the larger scale web page on the screen. This zoomed portion includes the selected position in the layout associated with the touch screen press. It is desirable that the selected layout position has substantially the same position on the screen as the position that was displayed in the display at the first scale at the time of selection. Substantially the same position means that the selected position should have a position on the screen immediately before and after zooming that appears to correspond to the same contact located on the screen. This is because the change in the screen position of the selected position is more than 20% of the width or height of the screen immediately after such zooming (and preferably significantly compared to that amount). It is desirable to mean no change (in a small amount).

ズームイン表示が表示された時点で、関数18912は、接触に関連付けられたウェブページのレイアウトに於ける選択された位置を示すために、スクリーンが接触されている位置の上方にカーソルを表示する。タッチスクリーンデバイスによっては、特に、比較的精密なポイントを有するスタイラスを用いて使用するように設計されたデバイスでは、そうしたカーソルを必要としないが、これは、スクリーンが接触されているポイントをユーザが相当正確に見ることが出来るからである。しかし、ポインティングデバイスとして指を用いて使用するように設計されたタッチスクリーンに於いて、ユーザがそうした接触に関連付けられたスクリーンの表示に於ける位置を正確に確認できるように、多くの場合、スクリーンが接触されている位置の上にカーソルをセットすることが望ましい。これが特に望ましいのは、例えば図121乃至128に図示された、人間の指の大きさに比して比較的小さな表示を用いてこの方法が使用される場合である。   When the zoom-in display is displayed, function 18912 displays a cursor above the position where the screen is touched to indicate the selected position in the layout of the web page associated with the touch. Some touch screen devices do not require such a cursor, especially with devices designed for use with styluses that have relatively precise points, but this allows the user to determine the point at which the screen is touched. This is because it can be seen fairly accurately. However, in touch screens designed to be used with a finger as a pointing device, in many cases, the screen will allow the user to pinpoint the position in the display of the screen associated with such contact. It is desirable to set the cursor on the position where the is touching. This is particularly desirable when the method is used with a display that is relatively small compared to the size of a human finger, for example as illustrated in FIGS.

接触が続く間、関数18914は、ズーム表示に於いてカーソルを対応させて移動させることによって、接触の任意の動きに対応する。また、そうした接触が続く間、スクリーンの端部を越えて、以前スクリーン上に表示されていなかったレイアウトの部分を、ズームされた縮尺でスクリーン上でスクロールすることによって、関数18916はスクリーン端部に関連付けられた境界を越えて、接触の任意の動きに対応する。これにより、ユーザは、ズームクリックモードの状態でウェブページのズームされた表示内で迅速に、且つ、便利にスクロールすることが出来る。   While the contact continues, function 18914 corresponds to any movement of the contact by moving the cursor correspondingly in the zoom display. Also, while such contact continues, function 18916 is moved to the screen edge by scrolling across the screen edge at the zoomed scale, beyond the edge of the screen, the portion of the layout that was not previously displayed on the screen. Respond to any movement of contact across the associated boundary. This allows the user to scroll quickly and conveniently within the zoomed display of the web page in the zoom click mode.

関数18918は、ユーザがウェブページのズーム表示に於ける所定の位置で接触を解除する場合に応答する。接触が解除される場合、関数18920は、あたかも解除位置に対応するウェブページに於ける位置でポインティングデバイスのクリックが発生したかのように動作する。例えば、ウェブリンクに対応するレイアウト位置で接触が解除される場合、システムはリンクを選択することによって対応し、ラジオボタンの位置で接触が解除される場合には、システムは、ラジオボタンの状態を切り替えることによって対応する。   Function 18918 responds when the user releases contact at a predetermined position in the zoomed display of the web page. When contact is released, function 18920 operates as if a pointing device click occurred at a position in the web page corresponding to the release position. For example, if the contact is released at the layout position corresponding to the web link, the system responds by selecting the link, and if the contact is released at the position of the radio button, the system changes the state of the radio button. Respond by switching.

これが実行された時点で、関数18922は、スクリーン上でズームインされたレイアウトの表示を、ポインティングデバイスの押下が関数18908によって検知される前にウェブページが表示されていた同一の倍率でレイアウトの表示に置換する。   When this is done, function 18922 converts the zoomed-in layout display on the screen to the layout display at the same magnification at which the web page was displayed before the pointing device press was detected by function 18908. Replace.

図121乃至128に関して上述したように、ズームクリックによって、選択された部分のコンテンツを読み易く、且つ、ポインティングデバイスで正確に選択し易くするズームインの縮尺で、ウェブページの所望の部分をユーザが迅速に視認及び選択できるようにするための有益な技術を提供する。   As described above with respect to FIGS. 121-128, zoom clicks allow a user to quickly select a desired portion of a web page at a zoomed-in scale that makes it easier to read the content of the selected portion and to select it accurately with a pointing device. It provides a useful technique for enabling visual recognition and selection.

図190は、ユーザがテキストラインを表現するためにグリーキングを使用してウェブページのズームアウトビューを視認することが可能な方法19000に関する高度に簡略化された擬似コード記述である。グリーキングは、読み取り不可能なグラフィック表現でテキストの部分が文書中にレイアウトされるサイズに関する表現である。   FIG. 190 is a highly simplified pseudocode description of a method 19000 that allows a user to view a zoomed-out view of a web page using greeking to represent a text line. Gleeking is an unreadable graphic representation of the size with which a portion of text is laid out in a document.

この方法は、ウェブページのコンテンツにアクセスする関数19002、ウェブページのコンテンツのレイアウトを実行する関数19004、及び、ウェブページのコンテンツ表示のレイアウトを有するようにユーザが選択した縮尺を検出する関数19006及び19014を含む。   The method includes a function 19002 for accessing web page content, a function 19004 for performing web page content layout, a function 19006 for detecting a scale selected by a user to have a web page content display layout, and 19014 is included.

ユーザがウェブページのレイアウトを所定のより大きな縮尺で表示することを選択した場合、関数19006によって、関数19008はウェブページのレイアウトの部分をそのより大きなスケールで表示させる。これは、より大きな縮尺で表示するために拡大/縮小されたビットマップ画像でレイアウトの画像を表現するための関数19010を実行することと、より大きな縮尺での表示に適したサイズを有する別々のビットマップで構成されたビットマップでウェブページの文字列のレイアウトを表現する関数19012を実行することを含む。   If the user chooses to display the web page layout at a predetermined larger scale, function 19006 causes function 19008 to display the portion of the web page layout at its larger scale. This involves performing a function 19010 to represent the image of the layout in a bitmap image that has been scaled for display at a larger scale and a separate size having a size suitable for display at a larger scale. It includes executing a function 19012 that represents a layout of a character string of a web page with a bitmap composed of bitmaps.

一方、小さ過ぎるので、読み取り可能なサイズで、少なくとも幾つかのウェブページのテキストを所定のより小さな表示縮尺で表示することが不可能なそうした表示縮尺をユーザが選択した場合、関数19014によって、関数19016はより小さな縮尺でウェブページのレイアウトの部分を表示させる。これは、より小さな縮尺で表示するために縮小されたビットマップ画像を用いてレイアウト画像を表現する関数19018を実行することと、より小さな縮尺での表示に於いて、個々の文字列のサイズ及び位置を示すグリーキングされたテキスト表現で構成されるビットマップを用いて、少なくとも幾つかの文字列を表現する関数19020を実行することを含む。   On the other hand, if the user selects such a display scale that is too small to read at least some of the web page text in a readable size at a predetermined smaller display scale, function 19014 causes function 19016 displays the portion of the web page layout at a smaller scale. This is done by executing function 19018 that represents a layout image using a bitmap image that has been reduced for display at a smaller scale, and for displaying at a smaller scale, Performing a function 19020 that represents at least some strings using a bitmap composed of a greeked textual representation of the location.

多くの場合、そうしたグリーキングに於ける文字列を表現するために使用されるビットマップは、小さな縮尺でウェブページのレイアウトに於ける対応する文字列のサイズに一致する幅、及び/又は、高さを有する直線又は矩形に過ぎない。   In many cases, the bitmap used to represent a string in such greeking is a width and / or height that matches the size of the corresponding string in the web page layout at a small scale. It is only a straight line or a rectangle having a thickness.

テキストが小さすぎて読めないようなサイズでレイアウトを表示する場合、テキストのグリーキングされた表現を使用することによって、そうした表示をより容易、且つ、快適に見ることが出来るようになり、一般に、そうしたグリーキングは、読み取り不可能な小さなフォントビットマップから対応する文字列画像を生成する場合に比して、その生成に必要な演算処理が少ない。   If the layout is displayed in a size that the text is too small to be readable, using a greeked representation of the text makes it easier and more comfortable to see such display, Such greeking requires less calculation processing to generate a corresponding character string image from a small font bitmap that cannot be read.

図190に図示された方法に関する主要な使用方法の1つは、ユーザに対してウェブページのレイアウトのオーバービューを即座に視認可能とさせ、例えば、図136及び137に関して上述されたウェブページなど、そうしたウェブページの異なる部分を即座に選択可能にさせることである。   One of the primary uses for the method illustrated in FIG. 190 is to allow the user to immediately see an overview of the layout of the web page, such as the web page described above with respect to FIGS. 136 and 137, etc. The ability to select different parts of such web pages instantly.

コンピュータユーザインターフェースの当業者は、図185乃至190に記載された方法の幾つかを、互いの組み合わせ、及び、単一ユーザインターフェースモードの一部として上述された本発明の他の特徴との組み合わせで使用することが出来るが、その他の方法を、一般的に異なるユーザインターフェース、又は、異なるユーザインターフェースモーで使用するということを評価するだろう。   Those skilled in the art of computer user interfaces can combine some of the methods described in FIGS. 185-190 in combination with each other and with other features of the invention described above as part of a single user interface mode. Although it can be used, it will be appreciated that other methods are generally used with different user interfaces or different user interface modes.

図191乃至229は、例えば携帯電話など、非常に小型のスクリーン表示に於いて特に有用であるが、他の種類のコンピュータに於いても使用可能な発明の特徴を説明している。この明細書では、本発明のこれらの特徴をまとめて本発明の新規特徴と呼び、本出願が優先権を主張する本出願の開始時点でリストに上げられた関連出願の何れにも特許請求されていないと信ずる。   FIGS. 191 through 229 illustrate features of the invention that are particularly useful in very small screen displays, such as cellular phones, but can be used in other types of computers. In this specification, these features of the present invention are collectively referred to as the novel features of the present invention and claimed in any of the related applications listed at the beginning of this application from which this application claims priority. I believe it is not.

図217は、図217乃至225に関して記述されている本発明の新規特徴に関する実施形態に於いて、プロキシサーバ上で実行されたメインループ21700の高度に簡略化された表現である。この実施形態は、図115及び116に関して上述した種類のクライアントプロキシシステムを使用している。図217のテキスト21702によって図示されているように、このメインループのステップは、テキスト21704乃至21706によって示された相違点を除いて、図115に関して上述したステップに類似している。   FIG. 217 is a highly simplified representation of the main loop 21700 executed on the proxy server in an embodiment relating to the novel features of the invention described with respect to FIGS. 217-225. This embodiment uses a client proxy system of the type described above with respect to FIGS. As illustrated by text 21702 in FIG. 217, the steps of this main loop are similar to the steps described above with respect to FIG. 115 except for the differences indicated by texts 21704-21706.

テキスト21704で図示されているように、図217乃至225に図示された特定の実施形態は、図115の関数11526乃至11532に記述された再スケール(拡大/縮小)をサポートしない。本発明の新規特徴に関する他の実施形態は、オーバービューウインドウ、及び/又は、拡大ビューウインドウに於けるそうした拡大/縮小をサポートすることが出来る。   As illustrated by text 21704, the particular embodiment illustrated in FIGS. 217-225 does not support the rescaling described in functions 11526-11532 of FIG. 115. Other embodiments of the novel features of the present invention can support such scaling in the overview window and / or the magnified view window.

テキスト21706で示されているように、図217乃至225に記載された本発明の新規特徴に関する特定の実施形態に於いて、プロキシは、所望の仮想スクリーン幅を要求するという事実以外に、レイアウト幅の決定に役立てるために、レイアウトのサブセットとして、仮想スクリーンに関するコンセプトを有していない。 レイアウトエンジンは、レイアウト要素のサイズがより大きな仮想レイアウト幅を要求しない限り、仮想レイアウトをこの要求された幅に限定しようとする。図115に記載された実施形態に於いては、仮想スクリーンを最初に移動させる必要があるが、この実施形態に於いて、プロキシは仮想スクリーンとしてレイアウト全体を処理し、最初に仮想スクリーンを移動させる必要なく、仮想レイアウトに於ける任意の倍所で発生するクリックに対応することが出来る。   As indicated by the text 21706, in certain embodiments relating to the novel features of the present invention described in FIGS. 217-225, in addition to the fact that the proxy requires a desired virtual screen width, the layout width As a subset of the layout, it does not have a concept for virtual screens. The layout engine attempts to limit the virtual layout to this requested width unless the size of the layout element requires a larger virtual layout width. In the embodiment described in FIG. 115, the virtual screen needs to be moved first, but in this embodiment, the proxy processes the entire layout as a virtual screen and moves the virtual screen first. It can handle clicks that occur anywhere in the virtual layout without need.

図217乃至225に図示された実施形態は、図115に関して記載された実施形態のように、所定のウェブページのレイアウト全体の表示リストを薄型クライアントにダウンロードする。これにより、クライアントコンピュータは、ウェブページの連続部分をプロキシにダウンロードさせるために必要な遅延を被ることなく、ウェブページの新たな部分に移動されたクライアントの表示として、ダウンロードされたウェブページに於ける任意の位置にその表示を即座に移動させることが出来る。   The embodiment illustrated in FIGS. 217 through 225 downloads a display list of the entire layout of a given web page to the thin client, as in the embodiment described with respect to FIG. This allows the client computer in the downloaded web page to display the client moved to a new portion of the web page without incurring the delay necessary to cause the proxy to download a continuous portion of the web page. The display can be immediately moved to an arbitrary position.

本発明の他の実施形態に於いては、ウェブページ全体を一度にダウンロードしなくても良い。例えば、本発明のこうした新規特徴の一つの代表例では、プロキシサーバの仮想レイアウトの800×945部分に対応する、400×473ピクセルの表示リストをダウンロードした。そうした実施形態に於いて、ユーザがウェブページの以前ダウンロードされた部分から移動した場合、クライアントは、その後でウェブページのレイアウトの新規部分をダウンロードしたプロキシに通知する。   In other embodiments of the invention, the entire web page may not be downloaded at once. For example, one representative example of these new features of the present invention downloaded a 400 × 473 pixel display list corresponding to the 800 × 945 portion of the proxy server virtual layout. In such embodiments, if the user navigates away from the previously downloaded portion of the web page, the client then notifies the downloaded proxy of the new portion of the web page layout.

図218は、本発明の新規特徴に関連するクライアントコンピュータのブラウザプログラムのメインループ21800の一部を説明している。同図には図示されていないが、当然のことながら、クライアントのメインループは図116に関して上述されたそうしたステップに類似のステップを含む。さらに、それは数字21802乃至21878で示された関数を含む。   FIG. 218 illustrates a portion of the client computer browser program main loop 21800 associated with the novel features of the present invention. Although not shown in the figure, it should be appreciated that the client main loop includes steps similar to those described above with respect to FIG. In addition, it includes the functions indicated by the numbers 21802 to 21878.

関数21802は、関数21804乃至21806を実行させることによって、プロキシサーバからの要求されたウェブページに関する表示リストの受信に対応する。関数21804は、表示の最初に選択された部分、即ち、任意のスクリーンウインドウに最初に示される部分を、ダウンロードされた表示リストで示されているように、ウェブページのレイアウトの上部左隅にセットする。これは、ユーザがウェブページの他の部分を表示目的で選択するために何らかの対処をする前に、任意の表示スクリーンに表示されるウェブページレイアウトの部分である。   The function 21802 corresponds to receiving a display list regarding the requested web page from the proxy server by causing the functions 21804 to 21806 to be executed. Function 21804 sets the first selected portion of the display, i.e., the portion initially displayed in any screen window, to the upper left corner of the layout of the web page, as shown in the downloaded display list. . This is the portion of the web page layout that is displayed on any display screen before the user takes any action to select other portions of the web page for display purposes.

代替実施形態に於いて、表示目的で最初に選択されたウェブページの部分は、例えば、図115のステップ11502に関して上述した種類のビュー設定の使用等、他の手段で設定可能である。   In an alternative embodiment, the portion of the web page that is initially selected for display purposes can be set by other means, such as using a view setting of the type described above with respect to step 11502 of FIG.

関数21806は、ダウンロードされた表示リストの連続する要素をクライアントコンピュータ上に保存される表示リストデータ構造に変換することによって、それらの要素のクライアントによる受信に対応する。現在の実施形態に於いて、ダウンロードされた表示リストは、クライアント上のウェブページを示す表示リストにセットされることになる対応するデータ構造を決定するために、ステップ21806に於けるクライアントブラウザで後に解析されるページ記述言語で実際に伝達される。   Function 21806 accommodates receipt of those elements by the client by converting successive elements of the downloaded display list into a display list data structure stored on the client computer. In the current embodiment, the downloaded display list is later set by the client browser in step 21806 to determine the corresponding data structure that will be set to the display list that represents the web page on the client. Actually communicated in the page description language being parsed.

幾つかの実施形態に於いて、オーバービュー及び拡大ビューウインドウに対するビットマップは、ダウンロードされたウェブページレイアウトに対応する表示リストから動的に生成される。他の実施形態に於いて、レイアウトビットマップは、ダウンロードされた表示リストから該表示リストで指定された縮小された解像度で作成され、拡大表示は単に最大解像度で該ビットマップの一部を表示し、オーバービューは該ビットマップのさらに縮小されたバージョンを表示する。   In some embodiments, bitmaps for the overview and enlarged view windows are dynamically generated from a display list corresponding to the downloaded web page layout. In another embodiment, the layout bitmap is created from the downloaded display list at the reduced resolution specified in the display list, and the enlarged display simply displays a portion of the bitmap at the maximum resolution. The overview displays a further reduced version of the bitmap.

関数21808は、図218の受信された種類の入力の下で意図された一つ又は複数の関数にプログラムフローを向かわせることによって、所定種類の入力の受信に対応する、分岐関数を示している。   Function 21808 illustrates a branch function corresponding to receiving a predetermined type of input by directing the program flow to the function or functions intended under the received type of input of FIG. .

仮想的な任意の適切なユーザインターフェースハードウェア、及び/又は、ソフトウェアルーチンによって、分岐関数21808が対応する入力を生成することが出来る。図191に図示された種類の携帯電話を使用する場合、図191及び192に図示された携帯電話に類似の種類のメニュー19104を使用することによって、及び、そうした携帯電話のフォンパッド19105に於ける所望のメニューアイテムに対応する数字を有するキーの押下によって、そうした選択を実行することが可能である。また、ボタン19108及び19112の一つを押下することによって、そうした入力の一つ又は複数を選択することが可能であり、ボタン(19108)及び19112のそれぞれは、所定時間でキー定義タブ19106及び19110のそれぞれに定義された現在の関数を有する。例えば図229に図示された実施形態など、携帯情報端末(PDA)で実行する実施形態を含む他の実施形態に於いて、ユーザ入力の入力に適切な任意のユーザインターフェースを使用することが出来る。   The bifurcation function 21808 can generate the corresponding input by any suitable user interface hardware and / or software routine virtually. When using a cell phone of the type illustrated in FIG. 191, by using a menu 19104 of a type similar to the cell phone illustrated in FIGS. 191 and 192, and in the phone pad 19105 of such cell phone Such a selection can be performed by pressing a key having a number corresponding to the desired menu item. It is also possible to select one or more of such inputs by pressing one of buttons 19108 and 19112, each of buttons (19108) and 19112 being key definition tabs 19106 and 19110 at a predetermined time. Each with a current function defined. In other embodiments, including those running on a personal digital assistant (PDA), such as the embodiment illustrated in FIG. 229, any user interface suitable for entering user input can be used.

関数21810及び21812によって図示しているように、ユーザが図195乃至199に図示された種類の分割ビューを見たいという要望を示す入力を生成する場合、プログラムはビューモードを分割ビューモードに設定する。これにより、図219の関数に対応する、図218に図示された数字21856及び21858によって示された関数を実行することによって、クライアントブラウザを分割ビューモードで実行する。   As illustrated by functions 21810 and 21812, if the user generates an input indicating a desire to view a split view of the type illustrated in FIGS. 195-199, the program sets the view mode to split view mode. . This runs the client browser in split view mode by executing the function indicated by the numbers 21856 and 21858 illustrated in FIG. 218, corresponding to the function of FIG. 219.

関数21814及び21816は、ビューモードをオーバービューオンリーモードに設定することによって、図191乃至193に図示された種類のオーバービューオンリーモードを見るというユーザ選択に対応する。これにより、クライアントブラウザは、図220の関数に対応する、図218に於ける数字21860及び21862で示された機能を実行することによって、オーバービューオンリーモードで機能する。   Functions 21814 and 21816 correspond to a user selection to view an overview only mode of the type illustrated in FIGS. 191 to 193 by setting the view mode to an overview only mode. Thus, the client browser functions in the overview only mode by executing the functions indicated by numerals 21860 and 21862 in FIG. 218, corresponding to the functions in FIG.

関数21818及び21820によって示されているように、図194に図示されたタ種類の拡大オンリービューをユーザが選択する場合、該ビューモードは拡大オンリーモードに設定される。これにより、図221の関数に対応する、数字21860及び21862で示された拡大オンリーモード関数が実行される。   As shown by functions 21818 and 21820, when the user selects the type of enlarged only view shown in FIG. 194, the view mode is set to the enlarged only mode. As a result, the enlarged only mode function indicated by numerals 21860 and 21862 corresponding to the function of FIG. 221 is executed.

関数21822及び21824は、ビューモードを拡大鏡モードに設定することによって、図208乃至211に図示された種類の拡大鏡ビューを見るためのユーザ選択に対応する。これにより、図224の関数に対応する数字21864及び21866で示された拡大鏡モード機能が実行される。   Functions 21822 and 21824 correspond to a user selection to view a magnifying glass view of the type illustrated in FIGS. 208-211 by setting the view mode to magnifying glass mode. Thereby, the magnifier mode function indicated by numerals 21864 and 21866 corresponding to the function of FIG. 224 is executed.

ユーザが図205乃至207に図示された種類のリフローテキストオンリービューを選択する場合、関数21826及び21830は、ビューモードをリフローテキストロンリービューに設定する。これにより、図222の関数に対応する、数字21868及び21870で示された関数が実行される。   If the user selects a reflow text only view of the type illustrated in FIGS. 205-207, functions 21826 and 21830 set the view mode to reflow text lonely view. Thereby, the functions indicated by numerals 21868 and 21870 corresponding to the functions of FIG. 222 are executed.

関数21832及び21834は、ビューモードをリフローテキスト分割ビューモードに設定することにより、図201乃至203に図示された種類のリフローテキスト分割ビューを見るためのユーザ選択に対応する。これにより、図223A及び223Bの関数に対応する、数字21872及び21874で示された関数が実行させる。   Functions 21832 and 21834 correspond to a user selection to view a reflow text split view of the type illustrated in FIGS. 201-203 by setting the view mode to reflow text split view mode. As a result, the functions indicated by numerals 21872 and 21874 corresponding to the functions in FIGS. 223A and 223B are executed.

ユーザがリフローテキストサイズ選択を実行する場合、関数21836及び21838は、現在のリフローテキストサイズを選択されたサイズに設定する。多くの好ましい実施形態に於いて、リフローテキストサイズは、例えば、「小」、「中」、「大」、及び、「特大」としてラベル付け可能な複数の一連のサイズの内、選択されたサイズを示す。それぞれのそうしたサイズ選択によって、通常、関連付けられた異なるサイズのフォントを有するウェブページテキストが、例えば、ヘディングテキストをボディテキストに比して大きくすることにより、そうした異なるサイズに幾分比例する方法で拡大/縮小される。   If the user performs a reflow text size selection, functions 21836 and 21838 set the current reflow text size to the selected size. In many preferred embodiments, the reflow text size is selected from a series of sizes that can be labeled as, for example, “small”, “medium”, “large”, and “extra large”. Indicates. With each such size selection, web page text with a different size font associated with it usually expands in a way that is somewhat proportional to such different sizes, for example by making the heading text larger than the body text. / Reduced.

ユーザがコラム幅制限のオン/オフの状態を切り換えることを選択する場合、関数21840及び21842は、コラム幅制限が予めオフの状態であればオンの状態に切り換えて、予めオンの状態であればオフの状態に切り換える。図225乃至228に関して後述するように、コラム幅制限は、拡大ビューウインドウ内で適合する幅にウェブページのレイアウトに於けるテキストコラムの幅を制限する。   If the user chooses to switch the column width limit on / off, functions 21840 and 21842 will switch to the on state if the column width limit is previously off, and if it is on beforehand. Switch to the off state. As described below with respect to FIGS. 225-228, the column width restriction limits the width of the text column in the layout of the web page to a width that fits within the enlarged view window.

ユーザがカーソルナビゲーションを選択する場合、関数21844及び21846はナビゲーションモードをカーソルナビゲーションに設定する。多くの携帯電話に関する実施形態に於いて、これにより、例えば図191に図示されたスイッチ19114で、ナビゲーションロッカースイッチの上下左右の動きが、図191乃至200に図示されたカーソル19116を対応する方向に直接移動させる。   If the user selects cursor navigation, functions 21844 and 2184 set the navigation mode to cursor navigation. In many cell phone embodiments, this causes, for example, the switch 19114 illustrated in FIG. 191 to cause the movement of the navigation rocker switch to move the cursor 19116 illustrated in FIGS. Move directly.

ユーザがビューナビゲーションを選択する場合、関数21848及び21850は、ナビゲーションモードをビューナビゲーションに設定する。これにより、ナビゲーションスイッチの上下左右の動きが、対応する方向に拡大ビュー、テキストリフロービュー、又は、他の種類のビューを直接移動させる。   If the user selects view navigation, functions 21848 and 21850 set the navigation mode to view navigation. Thereby, the up / down / left / right movement of the navigation switch directly moves the enlarged view, the text reflow view, or another type of view in the corresponding direction.

例えば、カーソルがウェブページに表示されたリンク上に位置する際に選択ボタンを押下することによって、ユーザがリンクを選択する場合、関数21852及び21854は、プロキシサーバに該リンクに関連付けられたウェブページに対する要求を送信し、そのソースからのウェブページに対する要求を含む、図115及び217に関して上述された方法でプロキシサーバに対応させ、ウェブページのレイアウトを実行し、その後、該レイアウトに対応する縮小された表示リストを作成し、クライアントにダウンロードする。   For example, if the user selects a link by pressing a select button when the cursor is positioned on a link displayed on the web page, the functions 21852 and 21854 may cause the proxy server to associate the web page associated with the link. Respond to the proxy server in the manner described above with respect to FIGS. 115 and 217, including the request for the web page from its source, perform the layout of the web page, and then scale down to correspond to the layout Create a display list and download it to the client.

上述の通り、数字21856及び21858、数字21860及び21862、数字21864及び21866、数字21868及び21870、数字21872及び21874、数字21876及び21878に対応する関数については、それぞれ、図219、220、221,222、223A及び223B、及び、224に於いて、さらに詳細に説明されている。   As described above, the functions corresponding to the numbers 21856 and 21858, the numbers 21860 and 21862, the numbers 21864 and 21866, the numbers 21868 and 21870, the numbers 2172 and 21874, and the numbers 21762 and 21878 are shown in FIGS. 223A and 223B and 224 are described in further detail.

図219は、ビューモードが分割ビューに設定される場合に実行される、一連の関数21900を説明している。これらの関数により作り出されたスクリーンショットは、図195乃至199に図示されている。   FIG. 219 describes a series of functions 21900 that are executed when the view mode is set to split view. Screen shots produced by these functions are illustrated in FIGS. 195-199.

関数21902は、表示関数21904乃至21910によって作り出された要素を同時に表示する。   Function 21902 displays the elements created by display functions 21904 through 21910 simultaneously.

スクリーンユーザインターフェースの当業者が理解しているように、多くの実施形態に於いて、同図、及び、図220乃至224に図示された表示関数は、通常、イベント駆動型であり、これは、それらの表示関数が、関連付けられた表示要素の表示を作成し、変更し、移動させることを示すイベントに対応して、通常、スクリーン上に表示されたビットマップに対して変更を加えるだけだということを意味する。   As will be appreciated by those skilled in the art of screen user interfaces, in many embodiments, the display functions illustrated in the figure and in FIGS. 220-224 are typically event driven, Those display functions usually only make changes to the bitmap displayed on the screen in response to an event that indicates creating, changing, and moving the display of the associated display element. Means that.

関数21904は、例えば図195に図示されたオーバービューウインドウ19200A等のオーバーウインドウをスクリーンの第1水平部分に表示する。   The function 21904 displays, for example, an overview window such as the overview window 19200A illustrated in FIG. 195 on the first horizontal portion of the screen.

図195乃至199に図示された分割スクリーンに関する実施形態は、マイクロソフト社によってサポートされたスマートフォン仕様に於いて使用された176×220ピクセル解像度で表示されている。この実施形態に於いて、オーバービューウインドウは、その中に位置する可能性のある任意のスクロールバーを含め、合計176×132ピクセルのサイズを有しており、殆どのデスクトップコンピュータ及びラップトップコンピュータに対して一般的な、同一の縦横比4対3をそのサイズに割り当てている。   The embodiment for the split screen illustrated in FIGS. 195 through 199 is displayed at the 176 × 220 pixel resolution used in the smartphone specification supported by Microsoft Corporation. In this embodiment, the overview window has a total size of 176.times.132 pixels, including any scroll bars that may be located therein, on most desktop and laptop computers. On the other hand, a common aspect ratio of 4 to 3 is assigned to the size.

詳細に説明されている実施形態に於いて、プロキシサーバの仮想レイアウトに於ける800ピクセル幅、及び、ダウンロードされた表示リストによって表示された縮小レイアウトに於ける400ピクセル幅に対応するレイアウトの一部に適合するように、オーバービューウインドウ19200Aは、表示リストに記載された解像度から水平方向及び垂直方向に縮小された、ダウンロード済みの表示リストで説明されたレイアウトの一部を示す。オーバービューウインドウが垂直スクロールバーを含む場合、表示されたレイアウトの部分は、スクロールバーに必要とされる幅に減少される。   In the embodiment described in detail, a portion of the layout corresponding to 800 pixels wide in the virtual layout of the proxy server and 400 pixels wide in the reduced layout displayed by the downloaded display list. The overview window 19200A shows a portion of the layout described in the downloaded display list, scaled down horizontally and vertically from the resolution listed in the display list. If the overview window includes a vertical scroll bar, the portion of the displayed layout is reduced to the width required for the scroll bar.

他の実施形態に於いて、オーバービューウインドウに適合するために拡大/縮小されたウェブページ全体を有する能力をユーザに提供することが出来るが、ウェブページのサイズが大き過ぎて、視聴者にとって、そのように拡大/縮小されたビューが殆ど役に立たなくなるのであれば、多くの場合、これは望ましくない。   In other embodiments, the user can be provided with the ability to have the entire web page scaled to fit the overview window, but the web page size is too large for the viewer. In many cases this is undesirable if such a scaled view becomes almost useless.

関数21906は、図195に図示された拡大された表示ウインドウ19400Aをスクリーンの第2水平部分に表示する。図195乃至199に図示された実施形態に於いて、全体的に拡大されたウインドウは、それが表示されるスクリーンの最大176ピクセル幅、及び、88ピクセル高を有する。これは、プロキシサーバ上に形成されたプロキシサーバの仮想レイアウトに於ける352×176ピクセルのサイズに対応する。   Function 21906 displays the enlarged display window 19400A illustrated in FIG. 195 on the second horizontal portion of the screen. In the embodiment illustrated in FIGS. 195-199, the generally enlarged window has a maximum 176 pixel width and 88 pixel height of the screen on which it is displayed. This corresponds to a size of 352 × 176 pixels in the virtual layout of the proxy server formed on the proxy server.

拡大されたビューウインドウは、ダウンロードされた表示リストに記載された最大解像度でオーバービューウインドウに図示されたレイアウトの一部のサブパートを表示している。図示された実施形態に於いて、拡大されたビューウインドウは、オーバービューウインドウに関連して「拡大」される。実際、プロキシサーバ上で形成された仮想レイアウト、及び、その要素の多くが殆どのデスクトップコンピュータ又はラップトップコンピュータ上で見られるサイズに関連して、それは倍率2で縮小される。   The enlarged view window displays some subparts of the layout shown in the overview window at the maximum resolution described in the downloaded display list. In the illustrated embodiment, the enlarged view window is “enlarged” relative to the overview window. In fact, it is scaled down by a factor of 2 in relation to the virtual layout formed on the proxy server and the size of many of its elements found on most desktop or laptop computers.

拡大されたビューウインドウに於けるテキストはアンチエイリアスフォントビットマップで表示され、該ビットマップは、拡大されたビューウインドウに表示される実際の解像度に対して、可読性を最適化、又は、改善するために選択された文字アウトラインの形状及びピクセル配置を有する。拡大されたウインドウを表示するスクリーンが、垂直方向で実行されるサブピクセル文字列を有する場合、図55乃至97、及び、図168乃至184に関して上述されたフォントと全く同一、又は、類似の垂直方向にサブピクセル最適化されたフォントを使用することが出来る。水平方向でサブピクセルストリッピングが実行される場合、上述の非線形サブピクセル最適化の水平換算を使用するフォントなど、水平方向にサブピクセル最適化されたフォントを使用することが出来る。   The text in the enlarged view window is displayed with an anti-aliased font bitmap, which can be used to optimize or improve readability for the actual resolution displayed in the enlarged view window. It has the shape and pixel arrangement of the selected character outline. If the screen displaying the enlarged window has a subpixel string that runs in the vertical direction, the vertical direction is identical or similar to the font described above with respect to FIGS. 55 through 97 and FIGS. 168 through 184 Sub-pixel optimized fonts can be used. When sub-pixel stripping is performed in the horizontal direction, a font that is sub-pixel optimized in the horizontal direction can be used, such as a font that uses the horizontal conversion of nonlinear sub-pixel optimization described above.

関数21908は、図195乃至199のオーバービューウインドウに表示された、拡大されたビューインジケータ19504を表示する。これは、オーバービューウインドウに表示されたウェブページレイアウトに関連して、拡大されたビューウインドウに現在表示されているレイアウトの一部の位置を示す。   Function 21908 displays an enlarged view indicator 19504 displayed in the overview window of FIGS. 195-199. This indicates the position of the portion of the layout currently displayed in the enlarged view window relative to the web page layout displayed in the overview window.

関数21910は、オーバービューウインドウ、及び、拡大されたビューウインドウの両方に於いて、図195乃至199に図示されているカーソル19116を表示する。該カーソルは、オーバービュー及び拡大されたビューの両方のそれぞれに於けるレイアウトに関連して、同一位置を有する。   The function 21910 displays the cursor 19116 shown in FIGS. 195 to 199 in both the overview window and the enlarged view window. The cursor has the same position relative to the layout in both the overview and the magnified view.

このカーソルは、異なる実施形態、異なるビューウインドウに於いて、又は、選択可能なリンク、テキスト、テキスト領域、他の種類のウェブコンテンツの上に位置するかどうかに関する関数として、異なる形状を有することが出来る。図191乃至211に関する様々な実施形態に於いて、カーソルは、小型の十字形状19116、リンク選択記号19116A、又は、テキストカーソル19116Bとして図示されている。   This cursor may have different shapes as a function of whether it is located in different embodiments, in different view windows, or over selectable links, text, text areas, or other types of web content. I can do it. In various embodiments with respect to FIGS. 191 to 211, the cursor is illustrated as a small cross 1919, a link selection symbol 19116A, or a text cursor 19116B.

低解像度表示に於いて、カーソルは比較的大きくなる傾向があり、これにより、高解像度表示に比して、テキスト及び画像の視認をさらに妨害する傾向にあるので、幾つかの実施形態に於いては、ユーザは、カーソルの表示をオフの状態に切り替える為のすべて、又は、幾つかの視認モードに於ける選択肢が与えられる。   In low resolution displays, the cursor tends to be relatively large, which in some embodiments tends to further hinder the viewing of text and images compared to high resolution displays. The user is given an option in all or several viewing modes to switch the cursor display off.

分割ビューに於いて、関数21914乃至21948を実行させることによって、関数21912は、例えば図191に図示されたロッカースイッチの押下など、ナビゲーション入力の受信に対応する。   By executing functions 21914 through 21948 in the split view, function 21912 corresponds to receiving navigation input, such as pressing a rocker switch illustrated in FIG.

現在のナビゲーションモードがビューナビゲーションモード、即ち、ユーザが拡大されたウインドウに表示されたレイアウトの一部を直接移動させることによってナビゲート可能なモードにある場合、関数21914によって、関数21916乃至21928が実行される。   If the current navigation mode is in view navigation mode, i.e., a mode in which the user can navigate by directly moving a portion of the layout displayed in the enlarged window, function 21914 causes functions 21916 through 21928 to be executed. Is done.

関数21916によって、関数21918及び21920は、これに対応して、受信されたナビゲーション入力によって示された方向で、(a)拡大されたビューウインドウに表示されたウェブページレイアウトの一部と、(b)オーバービューウインドウに於けるレイアウトに関連した拡大されたビューインジケータ、の両方を移動させる。   Function 21916 causes functions 21918 and 21920 to correspondingly (a) a portion of the web page layout displayed in the enlarged view window in the direction indicated by the received navigation input, and (b ) Move both the enlarged view indicator associated with the layout in the overview window.

関数21916乃至21920によって実行された移動によって、オーバービューウインドウに於けるウェブページレイアウトの一部を越えて、そして、ウェブページレイアウトの以前非表示であった部分の上に、拡大されたビューインジケータの一部を移動させる場合、関数21922によって、関数21924乃至21928もまた、その移動の一環として実行される。   The movement performed by functions 21916 to 21920 causes the enlarged view indicator to extend beyond a portion of the web page layout in the overview window and above the previously hidden portion of the web page layout. If a part is moved, function 21922 also causes functions 21924 to 21928 to be executed as part of the movement.

関数21924は、レイアウトの以前非表示であった部分をオーバービューウインドウでスクロールする。関数21926は、ウェブページレイアウトの以前非表示であった部分の上に拡大されたビューインジケータを移動させる。そして、関数21928は、拡大されたビューウインドウに表示されたレイアウトのサブパートをこれに対してスクロールする。異なる実施形態に於いて、そうした関数の命令を変更することが出来る。   Function 21924 scrolls the previously hidden portion of the layout in the overview window. Function 21926 moves the magnified view indicator over the previously hidden portion of the web page layout. The function 21928 scrolls the layout subpart displayed in the enlarged view window. In different embodiments, the instructions of such functions can be changed.

図196乃至199は、分割スクリーンモードに於ける関数21914乃至21928によって実行されるビューナビゲーションを図示している。   FIGS. 196 through 199 illustrate view navigation performed by functions 21914 through 21928 in split screen mode.

図196は、ウェブページレイアウトの左端部に、拡大されたビューインジケータ19504を使用した分割ビューを図示している。図197は、関数21916及び21920の動作によって、拡大されたビューインジケータ、及び、拡大されたビューに於けるレイアウトの一部を右に移動した後の分割ビューを図示している。   FIG. 196 illustrates a split view using an enlarged view indicator 19504 at the left edge of the web page layout. FIG. 197 illustrates the magnified view indicator and the split view after moving a portion of the layout in the magnified view to the right by the operation of functions 21916 and 21920.

図198は、図197に於ける拡大されたビューの位置から、オーバービューウインドウに表示されたレイアウトの一部の下端まで、ユーザが拡大されたビューを下方向にナビゲートした後の分割ビューを図示している。   FIG. 198 shows the divided view after the user navigates the enlarged view downward from the position of the enlarged view in FIG. 197 to the lower end of a part of the layout displayed in the overview window. It is shown.

図199は、関数21916乃至21920の動作だけでなく、関数21922乃至21928の動作を介して、図198に於けるオーバービューウインドウに表示されたオーバービューの一部の下方に、ユーザが拡大されたビューを下方向にナビゲートした後の分割ビューを表示している。   FIG. 199 shows that the user has been enlarged below the portion of the overview displayed in the overview window in FIG. 198 through the operation of functions 21922 to 21928 as well as the operation of functions 21916 to 21920. The split view is displayed after navigating down the view.

関数21922乃至21928の動作、及び、同図の何処かに含まれた類似の関数の動作によって、ユーザは、オーバービューウインドウに図示されたレイアウトの一部の境界を越えて、拡大されたウインドウをスムーズにナビゲートすることが出来る。   By the action of functions 21922 to 21928 and the action of a similar function included somewhere in the figure, the user can move the enlarged window beyond the boundary of a part of the layout shown in the overview window. You can navigate smoothly.

図196乃至199に図示された実施形態に於いて、拡大されたビュー内に保持するように、自動的にカーソルを移動させる。他の実施形態に於いて、カーソルの位置を拡大されたビューの位置から独立させることが出来る。通常、そうした他の実施形態がカーソルナビゲーションモードの状態にあった場合、拡大されたビューはそのビューにカーソルを保持するために移動し、これにより、ユーザは拡大されたビューに表示されたより大きな縮尺で、カーソルの位置を継続して視認することが可能となる。   In the embodiment illustrated in FIGS. 196-199, the cursor is automatically moved to hold in the enlarged view. In other embodiments, the position of the cursor can be independent of the position of the magnified view. Typically, when such other embodiments are in the cursor navigation mode, the magnified view moves to hold the cursor in that view, which allows the user to use a larger scale displayed in the magnified view. Thus, it is possible to visually recognize the position of the cursor.

現在のナビゲーションモードが、分割スクリーンの表示時に、カーソルナビゲーションモード、即ち、ユーザが直接カーソルを移動させることが出来るモードの状態にある場合、関数21930によって、関数21932乃至21948が実行される。   When the current navigation mode is in the cursor navigation mode, that is, the mode in which the user can directly move the cursor when the split screen is displayed, the functions 21932 to 21948 are executed by the function 21930.

関数21932は、入力によって示された方向で、拡大されたビュー、及び、オーバービューの両方に表示されたウェブページレイアウトの一部に関連して、カーソルを直接移動させる。   Function 21932 moves the cursor directly in the direction indicated by the input, relative to the portion of the web page layout displayed in both the enlarged view and the overview.

この関数は、拡大されたビューウインドウに表示されたウェブページレイアウトのサブパートを越えて、拡大されたビューウインドウに於ける以前非表示であったウェブページレイアウトの一部の上に、カーソルを移動させる場合、関数21934によって、関数21936乃至21940がこの移動の一環として実行される。   This function moves the cursor over a part of the web page layout that was previously hidden in the magnified view window, beyond a subpart of the web page layout displayed in the magnified view window. If so, function 21934 causes functions 21936 through 21940 to be executed as part of this movement.

関数21936は、ウェブページレイアウトの以前非表示であった部分の上にカーソルを移動させる。関数21938は、拡大されたビューウインドウに関連してウェブページレイアウトをスクロールし、これにより、カーソルが移動される以前に非表示であった部分が、拡大されたビューウインドウに於いてスクロールされる。そして、関数21940は、これに対して、オーバービューウインドウに於いて拡大表示インジケータを移動させる。   Function 21936 moves the cursor over the previously hidden portion of the web page layout. Function 21938 scrolls the web page layout in relation to the enlarged view window, so that the portion that was hidden before the cursor was moved is scrolled in the enlarged view window. Then, the function 21940 moves the enlarged display indicator in the overview window.

関数21934乃至21940によって、カーソルモードの状態で、拡大されたビューの境界に対してカーソルを押下することによって、レイアウトに関連して拡大されたビューウインドウをユーザがスクロールすることが出来るということが分かる。本発明に関する代替実施形態に於いて、ユーザは拡大されたビューの外側でカーソルをスクロール可能としても良い。   Functions 21934 through 21940 show that in cursor mode, the user can scroll the enlarged view window relative to the layout by pressing the cursor against the enlarged view boundary. . In an alternative embodiment related to the present invention, the user may be able to scroll the cursor outside the magnified view.

関数21932によって実行された移動によって、オーバービューウインドウに於けるウェブページレイアウトの部分を越えて、ウェブページレイアウトの以前に非表示であった部分の上に、拡大されたビューインジケータの部分を移動させる場合、関数21942によって、関数21944乃至21948がこの移動の一環として実行される。   The movement performed by function 21932 moves the portion of the magnified view indicator beyond the portion of the web page layout in the overview window over the previously hidden portion of the web page layout. If so, function 21944 performs functions 21944 through 21948 as part of this movement.

関数21944は、レイアウトの以前に非表示であった部分を、オーバービューウインドウに於いてスクロールする。関数21946は、拡大されたビューインジケータをウェブページレイアウトの以前に非表示であった部分の上に移動させる。そして、関数21948は、これに対して、拡大されたビューウインドウに於いて表示されたレイアウトのサブパートをスクロールする。   Function 21944 scrolls the previously hidden portion of the layout in the overview window. Function 21946 moves the magnified view indicator over the previously hidden portion of the web page layout. The function 21948 then scrolls the sub-parts of the layout displayed in the enlarged view window.

図220は、ユーザがクライアントブラウザをオーバービューオンリーモードにすることを選択した場合に、クライアントブラウザによって実行される一連の関数22000を図示している。図191乃至193は、このモードで生成された176×220解像度のスクリーンショットである。   FIG. 220 illustrates a series of functions 22000 executed by the client browser when the user chooses to put the client browser into overview-only mode. FIGS. 191 to 193 are screenshots of 176 × 220 resolution generated in this mode.

関数22002によって、関数22004及び22006は、オーバービューウインドウ19200及びカーソル19116を同時にクライアントブラウザの表示スクリーン上に表示させる。   By function 22002, functions 22004 and 22006 cause the overview window 19200 and cursor 19116 to be displayed simultaneously on the display screen of the client browser.

関数22004によって表示されたオーバービューウインドウは、スクリーンの略全てに表示される。オーバービューウインドウは、ダウンロードされた表示リストによって記載されたレイアウトの一部を表示し、その表示リストに記載された解像度から縮小される。   The overview window displayed by the function 22004 is displayed on almost the entire screen. The overview window displays a part of the layout described by the downloaded display list, and is reduced from the resolution described in the display list.

図示された実施形態に於いて、オーバービューオンリーモードでのオーバービューウインドウは、図219に関して上述された分割モードに於いて図示されたオーバービューウインドウと同一の倍率で、このレイアウトを縮小する。   In the illustrated embodiment, the overview window in the overview only mode reduces this layout by the same magnification as the overview window illustrated in the split mode described above with respect to FIG.

幾つかの実施形態に於いて、例えば、図193の最下部に図示された「メニュー(Menu」」タブや、「終了(Quit)」タブなど、制御や、その他の目的の余地を残すために、オーバービューウインドウは、スクリーンの全てではなく、略全てを覆っている。   In some embodiments, for example, to leave room for control and other purposes, such as the “Menu” tab and the “Quit” tab illustrated at the bottom of FIG. 193. The overview window covers almost all of the screen, not everything.

オーバービューオンリーウインドウのサイズを記述する場合に、「略全て」という用語を使用しているが、これは、スクリーンの領域の少なくとも80%を覆っていることを意味する為に使用されることがあるという状況に比べると、それ程極端ではない意味である。幾つかの実施形態に於いて、そうした「略全て」のカバレッジは、ブラウザプログラムによって占められたスクリーンの一部に関連している。   When describing the size of an overview-only window, the term “substantially all” is used, but this may be used to mean that it covers at least 80% of the screen area. It means that it is not so extreme compared to the situation. In some embodiments, such “substantially all” coverage is associated with the portion of the screen occupied by the browser program.

現在のナビゲーションモードがビューナビゲーションモードである場合に、クライアントコンピュータがオーバービューオンリーモードの状態で、ユーザからナビゲーション入力を受信する場合、関数22010及び22012は、入力によって示された方向でオーバービューウインドウに表示されたレイアウトの一部をスクロールする。   If the current navigation mode is the view navigation mode and the client computer receives navigation input from the user in the overview only mode, functions 22010 and 22012 are displayed in the overview window in the direction indicated by the input. Scroll through a portion of the displayed layout.

一方、クライアントがナビゲーション入力を受信する際に、カーソルナビゲーションの状態にある場合、関数22014によって、関数22016乃至22022が実行される。   On the other hand, when the client receives the navigation input and is in the cursor navigation state, the functions 22016 to 22022 are executed by the function 22014.

関数22016は、入力によって示された方向で、オーバービューウインドウに表示されたウェブページレイアウトの一部に関連してカーソルを直接移動させる。   Function 22016 moves the cursor directly in relation to the portion of the web page layout displayed in the overview window in the direction indicated by the input.

関数22016によって実行されたこの移動によって、オーバービューウインドウに於けるウェブページレイアウトの一部を越えて、ウェブページレイアウトの以前に非表示であった部分の上にカーソルを移動させる場合、関数22018によって、関数22020及び22022もまた、この移動の一環として実行される。関数22020は、レイアウトの以前に非表示であった部分をオーバービューウインドウにスクロールする。そして、関数22022は、ウェブページレイアウトの以前非表示であった部分の上にカーソルを移動させる。これらの関数によって、ユーザはオーバービューウインドウをスクロールすることが出来る。   If this move performed by function 22016 causes the cursor to move over a portion of the web page layout in the overview window over a previously hidden portion of the web page layout, function 22018 Functions 22020 and 22022 are also performed as part of this movement. Function 22020 scrolls the portion of the layout that was previously hidden to the overview window. Function 22022 then moves the cursor over the previously hidden portion of the web page layout. These functions allow the user to scroll the overview window.

図221は、クライアントブラウザが拡大オンリービューモードの状態にある場合、クライアントブラウザプログラムによって実行される一連の関数22100を図示している。このモードで生成された表示に関する176×220解像度のスクリーンショットは、図194に図示されている。   FIG. 221 illustrates a series of functions 22100 that are executed by the client browser program when the client browser is in the expanded-only view mode. A screen shot of 176 × 220 resolution for the display generated in this mode is shown in FIG.

図194に図示されているように、関数22102によって、関数22104及び22106が拡大されたビューウインドウ19400及びカーソル19116を同時に表示させる。拡大オンリービューに於いて、拡大されたビューウインドウは、クライアントのスクリーンの略全て(即ち、少なくともクライアントのスクリーンの80%)を占めている。   As shown in FIG. 194, a function 22102 causes a view window 19400 and a cursor 19116 in which the functions 22104 and 22106 are enlarged to be displayed simultaneously. In magnified only view, the magnified view window occupies almost all of the client screen (ie, at least 80% of the client screen).

図示された本発明の実施形態に於いて、この拡大されたビューウインドウは、(a)ダウンロードされた表示リストに記載された最大解像度でウェブページレイアウトの一部を表示し、(b)拡大されたビューに表示される解像度に対する可読性を改善、又は、最適化するために、ビットマップのピクセルを用いて形成され配置された文字アウトラインを有する、同一のアンチエイリアス処理、又は、サブピクセル最適化処理が行われたフォントビットマップを使用してテキストを表示する、という点で、図219に関して上述された分割ビューに表示されたウインドウに類似している。   In the illustrated embodiment of the present invention, the enlarged view window (a) displays a portion of the web page layout at the maximum resolution listed in the downloaded display list, and (b) is enlarged. The same anti-aliasing or sub-pixel optimization process with character outlines formed and arranged using bitmap pixels to improve or optimize the readability of the resolution displayed in the view It is similar to the window displayed in the split view described above with respect to FIG. 219 in that the text is displayed using the done font bitmap.

ナビゲーション入力が拡大オンリービューに於いて受信される場合、図221に於いて略最大スクリーンオーバービューというよりは、むしろ、略最大スクリーン拡大ビューに関連して、ナビゲーションが実行されるという点を除いて、関数22110乃至22122は、それぞれがオーバービューオンリービューで実行する場合と同一の方法で、ナビゲーションを実行する。   If navigation input is received in an enlarged only view, the navigation is performed in relation to the substantially maximum screen magnified view rather than the approximately maximum screen magnified view in FIG. , Functions 22110 to 22122 perform navigation in the same way as when each is performed in overview only view.

図222は、リフローテキストオンリービューモードの状態にある場合、クライアントコンピュータによって、一連の関数22200が実行されることを図示している。このモードで生成されたスクリーンショットのシミュレーションが、図205乃至207に図示されている。   FIG. 222 illustrates a series of functions 22200 being executed by the client computer when in the reflow text only view mode. Simulations of screenshots generated in this mode are shown in FIGS.

カーソルが現在位置する、又は、最も近くにあるコラムのテキストが、リフローテキストサイズでリフローされていなかった場合、図222の関数22201及び22202は、現在選択されたリフローテキストサイズで、新たにリフローされたテキストコラムのラインを越えて、そのコラムのテキストをレイアウトする。   If the text of the column where the cursor is currently located or nearest is not reflowed with the reflow text size, the functions 22201 and 22202 of FIG. 222 are reflowed with the currently selected reflow text size. Lay out the text of the column beyond the line of the text column.

図示された実施形態に於いて、ユーザがリフローされるコラムの幅を選択する必要がない点を除いて、図130乃至134に関して上述された方法に類似の方法で、このテキストのリフローを実行することが出来る。その代わりに、このシステムは、リフローされるコラムとして、カーソルが現在位置するコラムを選択するか、又は、任意のテキストを含むコラムにカーソルが現在位置していない場合、現在のカーソル位置に最も近いものとして、そのテキストを含むコラムが選択される。   In the illustrated embodiment, this text reflow is performed in a manner similar to that described above with respect to FIGS. 130-134, except that the user does not need to select the width of the column to be reflowed. I can do it. Instead, the system selects the column where the cursor is currently positioned as the reflowed column, or is closest to the current cursor position if the cursor is not currently positioned in a column containing any text As a matter, the column containing the text is selected.

幾つかの実施形態に於いて、分割スクリーンが表示される場合、及び、ユーザがリフローテキストモードへの変更を選択する際に、システムが拡大ビューナビゲーションモードの状態にある場合、リフローの為に自動的に選択されたテキストコラムは、拡大ビューの中心に最も近いコラムである。   In some embodiments, when a split screen is displayed, and when the user chooses to change to reflow text mode, if the system is in enlarged view navigation mode, it will automatically Selected text column is the column closest to the center of the enlarged view.

ここで説明された実施形態に於いて、リフローされたテキストのより迅速な表示を可能にするために、テキストコラムのリフローがクライアントブラウザ上で実行される。このレイアウトに関連する演算は、通常、多くのウェブページのレイアウトに関連した演算に比して、それ程複雑ではないので、テキストコラムのリフローを容易に実行することが出来る。他の実施形態に於いて、リフローされたテキストビューに対するテキストコラムのリフローを、プロキシサーバ上で実行することが出来る。   In the embodiment described herein, text column reflow is performed on the client browser to allow for faster display of the reflowed text. The operations associated with this layout are usually not as complex as the operations associated with the layout of many web pages, so text column reflow can be easily performed. In other embodiments, text column reflow for reflowed text views can be performed on the proxy server.

現在選択されたリフローテキストサイズで決定されたサイズを有するフォントを使用して、テキストリフローを実行する。通常、リフローされたコラムの幅に関連してリフローされたテキストのサイズは、ウェブページのレイアウトに於けるコラムの幅に関連して選択されたテキストのフォントに比して大きい。テキストコラムが異なるサイズのフォントを有する場合、概ね比例する方法で、一つ又は複数のそうした個別のフォントサイズを、選択されたリフロー済みのフォントサイズの関数として個別に拡大/縮小することが出来る。   Perform text reflow using a font having a size determined by the currently selected reflow text size. Typically, the reflowed text size relative to the reflowed column width is larger than the text font selected relative to the column width in the web page layout. If the text column has different sized fonts, one or more such individual font sizes can be individually scaled as a function of the selected reflowed font size in a generally proportional manner.

関数22203によって、関数22204及び22206は、図205乃至207に図示されたリフローされたテキストウインドウ20502、及び、カーソル19116A又は19116Bの両方を同時に表示させる。関数22204は、リフローされたテキストウインドウをクライアントコンピュータのスクリーンの略全て(即ち、80%又はそれより大きな割合)に表示する。スクリーンを右、そして、左に交互に移動させる必要なく、テキストのラインを読み取ることが出来るように、この表示はリフローされたテキストコラムの最大幅を表示する。   Function 22203 causes functions 22204 and 22206 to simultaneously display both the reflowed text window 20502 illustrated in FIGS. 205-207 and the cursor 19116A or 19116B. Function 22204 displays the reflowed text window on substantially all of the client computer's screen (ie, 80% or greater). This display shows the maximum width of the reflowed text column so that lines of text can be read without having to move the screen alternately to the right and left.

図205乃至207の疑似スクリーンショットに図示されていないが、文字アウトラインの形状及びピクセル配置がそのウインドウで表示される解像度に対して、可読性を改善、又は、最適化するために選択されているアンチエイリアスフォントビットマップを用いて、このウインドウに於けるテキストを表示することが望ましい。幾つかの実施形態に於いて、これは、例えば、図55乃至97、及び、図168乃至184に関して上述された垂直サブピクセル最適化フォント等、非線形サブピクセル最適化フォントのユーザを含む。   Although not illustrated in the pseudo-screen shots of FIGS. 205-207, the anti-aliasing where the character outline shape and pixel placement is selected to improve or optimize readability for the resolution displayed in the window It is desirable to display the text in this window using a font bitmap. In some embodiments, this includes users of non-linear sub-pixel optimized fonts, such as, for example, the vertical sub-pixel optimized fonts described above with respect to FIGS. 55-97 and FIGS. 168-184.

関数22201乃至22206の動作については、図204及び205に於いて説明されている。図204は、図219の関数によって形成された分割ビューに於けるウェブページに関連して、カーソル19116の位置を図示している。図205は、図204に図示された位置にカーソルが位置する際に、ユーザがそのビューモードを選択する場合に生じる、リフローテキストオンリービューを図示している。図204及び205の比較から判る通り、カーソル19116に最も近いテキストコラムが、図205に図示された、結果的に生じるリフローされたテキストウインドウ20502に表示される。   The operation of functions 22201 to 22206 is described in FIGS. FIG. 204 illustrates the position of the cursor 19116 in relation to the web page in the split view formed by the function of FIG. FIG. 205 illustrates a reflow text only view that occurs when the user selects that view mode when the cursor is positioned at the position illustrated in FIG. As can be seen from a comparison of FIGS. 204 and 205, the text column closest to the cursor 19116 is displayed in the resulting reflowed text window 20502 illustrated in FIG.

ビューナビゲーションが選択された際に、リフローテキストオンリービューモードでナビゲーション入力を受信する場合、関数22210によって、関数22212乃至22232が実行される。   Functions 22212 through 22232 are executed by function 22210 when navigation input is received in reflow text-only view mode when view navigation is selected.

ナビゲーション入力が水平移動を目的とする場合、関数22212によって、関数22214が実行される。この関数は、この入力の受信以前に表示されたテキストコラムの左側、又は、右側にテキストコラムが存在するか否かを確かめるためにテストを行い、テキストコラムが存在する場合、この関数によって、関数22216乃至22220が実行される。   If the navigation input is intended for horizontal movement, function 22212 causes function 22214 to be executed. This function tests to see if there is a text column on the left or right side of the text column displayed prior to receiving this input, and if there is a text column, this function 22216 to 22220 are executed.

関数22216は、そのコラムに於ける最も近い位置にカーソルを移動させる。関数22218は、関数22202に関して上述された方法と同一の方法で、そのコラムに存在するテキストを、リフローされたテキストコラムにリフローする。関数22220は、リフローされたテキストウインドウにあるカーソルに最も近い、この新たにリフローされたテキストコラムにテキストを表示する。   Function 22216 moves the cursor to the closest position in the column. Function 22218 reflows the text present in that column into the reflowed text column in the same manner as described above with respect to function 22202. Function 22220 displays the text in this newly reflowed text column that is closest to the cursor in the reflowed text window.

図205及び207は、関数22216乃至22220の動作を説明している。図207は、ユーザがそのビューを右側に移動させるナビゲーションコマンドを送信する場合に生じる、図205に図示されたコラムの右にあるコラムに於けるテキストの表示を図示している。図205に於いて、表示されたテキストは、図204に於ける拡大されたビューの殆どを占めるテキストコラムに対応する。図207に於いて、表示されたテキストは、図204に於ける拡大されたビューの右側から始まるコラムに於けるテキストに対応する。   205 and 207 illustrate the operation of the functions 22216 to 22220. FIG. 207 illustrates the display of text in the column to the right of the column illustrated in FIG. 205 that occurs when the user sends a navigation command that moves the view to the right. In FIG. 205, the displayed text corresponds to the text column occupying most of the enlarged view in FIG. In FIG. 207, the displayed text corresponds to the text in the column starting from the right side of the enlarged view in FIG.

リフローテキストオンリービューに於いて、ビューナビゲーションで垂直移動を受信する場合、関数22222によって、関数22224乃至22232が実行される。   In the reflow text only view, when a vertical movement is received by view navigation, functions 22224 to 22232 are executed by function 22222.

関数22224は、リフローされたテキストウインドウに表示されたリフローされたテキストコラムの一部を、入力によって示された垂直方向にスクロールする。そうしたスクロールは、図205と、図205に図示されたテキストの下位部を表示する図206との間の変化によって示されている。   Function 22224 scrolls a portion of the reflowed text column displayed in the reflowed text window in the vertical direction indicated by the input. Such scrolling is indicated by a change between FIG. 205 and FIG. 206, which displays a sub-portion of the text illustrated in FIG.

そうしたスクロールがリフローされたコラムの最上部又は最下部に到達する場合、関数22226によって、関数22228乃至22232が実行される。関数22228は、上方又は下方の最も近くにあるテキスト又はテキストコラムの最下部又は最上部に、それぞれカーソルを設置する。関数22230は、リフローされたテキストウインドウ内に適合するように、新しいコラムのテキストをリフローする。そして、関数22232は、リフローされたテキストウインドウにあるカーソル、及び、その近傍のテキストを表示する。   If such scroll reaches the top or bottom of the reflowed column, function 22226 causes functions 22228 to 22232 to be executed. Function 22228 places the cursor at the bottom or top of the nearest text or text column above or below, respectively. Function 22230 reflows the text in the new column to fit within the reflowed text window. The function 22232 displays the cursor in the reflowed text window and the text in the vicinity thereof.

システムがカーソルナビゲーションモードの状態の場合、ナビゲーション入力の受信時に、関数22234によって関数22236乃至22254が実行される。   If the system is in cursor navigation mode, functions 22236 through 22254 are executed by function 22234 upon receipt of navigation input.

関数22236は、リフローされたテキストウインドウに表示されたリフローされたコラムのテキストの一部に関連して、ナビゲーション入力によって示された方向に、カーソルを直接移動させる。   Function 22236 moves the cursor directly in the direction indicated by the navigation input in relation to the portion of text in the reflowed column displayed in the reflowed text window.

所定のラインの端部を越えて、水平方向の左、又は、右の移動のそれぞれでカーソルを移動させる場合、関数22238及び22240は、上方のラインの最後、又は、下方のラインの最初にカーソルを移動させる。   If the cursor is moved with a horizontal left or right movement beyond the end of a given line, functions 22238 and 22240 may cause the cursor to end at the top of the upper line or at the beginning of the lower line, respectively. Move.

関数22236又は22240の移動が、現在のリフローされたコラムの最上部又は最下部を越える場合、関数22242によって、関数22244乃至22248が実行される。関数22244は、上方又は下方の最も近いテキストコラムの最下部又は最上部にそれぞれカーソルを設置する。関数22246は、リフローされたテキストウインドウ内に適合させるために、新しいコラムのテキストをリフローする。関数22248は、カーソル及びその近傍のテキストをリフローされたテキストウインドウに表示する。   If the movement of function 22236 or 22240 exceeds the top or bottom of the current reflowed column, function 22242 causes functions 22244 to 22248 to be executed. Function 22244 places the cursor at the bottom or top of the nearest text column above or below, respectively. Function 22246 reflows the text in the new column to fit within the reflowed text window. Function 22248 displays the cursor and nearby text in the reflowed text window.

22236又は22240の移動によって、ナビゲーション入力が生成される前に、リフローされたテキストウインドウに表示されたテキストコラムの一部を越えて、リフローされたテキストウインドウに以前非表示であったテキストコラムの一部の上に、カーソルを移動させる場合、関数22250によって、関数22252乃至22254がそうした移動の一環として実行される。   The movement of 22236 or 22240 causes one of the text columns that were previously hidden in the reflowed text window to cross some of the text columns displayed in the reflowed text window before the navigation input is generated. When moving the cursor over a section, function 22250 causes functions 22252 through 22254 to be executed as part of such movement.

関数22252は、リフローされたテキストコラムの以前非表示であった部分の上にカーソルを移動させ、関数22252は、リフローされたテキストウインドウに関連して、リフローされたテキストコラムをスクロールさせ、これにより、カーソルが移動される以前非表示であった部分が、リフローされたテキストウインドウにスクロールされる。   Function 22252 moves the cursor over the previously hidden portion of the reflowed text column, and function 22252 scrolls the reflowed text column relative to the reflowed text window, thereby The portion that was hidden before the cursor was moved is scrolled to the reflowed text window.

図223A及び223Bは、クライアントがリフローテキスト分割ビューにある場合に実行される一連の関数22300を図示している。図201乃至203は、この表示モードで生成されるビューに関する疑似スクリーンショットである。   223A and 223B illustrate a series of functions 22300 that are executed when the client is in a reflow text split view. 201 to 203 are pseudo screenshots regarding the view generated in this display mode.

カーソルが現在位置する、又は、最も近くに位置するコラムのテキストが、現在のリフローされたテキストサイズでリフローされていない場合、図222に於ける類似の数字が割り当てられた関数に一致し得る図223Aの関数22201及び22202は、現在選択されたリフローテキストサイズで、新たにリフローされたテキストコラムのラインを越えて、そのコラムのテキストをレイアウトする。   A diagram that may match the function assigned a similar number in FIG. 222 if the text of the column where the cursor is currently or closest is not reflowed with the current reflowed text size Functions 22201 and 22202 of 223A lay out the text of the column beyond the line of the newly reflowed text column at the currently selected reflow text size.

図223Aの関数22302によって、関数22304乃至22310が、リフローされたテキスト分割ビューの要素を同時に表示する。   Function 22302 in FIG. 223A causes functions 22304 through 22310 to simultaneously display the elements of the reflowed text split view.

関数22304は、表示スクリーンの第1水平部分にオーバービューウインドウ19200Aを表示する。このオーバービューウインドウは、ダウンロードされた表示リストによって表現されたレイアウトの一部を表示し、表示リストに於いて表現された解像度から縮小される。図示された実施形態に於いて、このオーバービューウインドウは、図195乃至199及び図219に関して上述された分割ビューのウインドウに一致する。   Function 22304 displays an overview window 19200A on the first horizontal portion of the display screen. The overview window displays a portion of the layout expressed by the downloaded display list and is reduced from the resolution expressed in the display list. In the illustrated embodiment, this overview window corresponds to the split view window described above with respect to FIGS. 195-199 and 219.

関数22306は、図201乃至203に図示された、リフローされたテキストウインドウ20102をスクリーンの第2水平部分に表示する。このウインドウは、リフローされたテキストコラムの最大幅を表示し、これにより、それぞれのラインに対して左右にスクロールする必要なく、そのテキストを読み取ることが出来る。   Function 22306 displays the reflowed text window 20102 illustrated in FIGS. 201-203 on the second horizontal portion of the screen. This window displays the maximum width of the reflowed text column so that the text can be read without having to scroll left and right for each line.

図205乃至207に図示された、略最大スクリーンでリフローされたテキストウインドウ20502に関して上述されたビットマップと同一のアンチエイリアスフォントビットマップを使用して、部分的なスクリーンでリフローされたテキストウインドウ20102にテキストを表示することが望ましい。   Text in reflowed text window 20102 with partial screen using the same anti-aliased font bitmap as described above with respect to text window 20502 reflowed with approximately maximum screen, illustrated in FIGS. It is desirable to display.

関数22300は、図201乃至203に図示された表示されたテキストインジケータ20104を、リフローされたテキストウインドウに現在表示されているオーバービューウインドウに表示されたテキストの一部を示すオーバービューウインドウに表示する。   Function 22300 displays the displayed text indicator 20104 illustrated in FIGS. 201-203 in an overview window showing a portion of the text displayed in the overview window currently displayed in the reflowed text window. .

関数22310は、それぞれのそうしたウインドウに於けるテキストに対して、同一位置を有するオーバービューウインドウ、及び、リフローされたテキストウインドウの両方にカーソルを表示する。   Function 22310 displays a cursor in both the overview window having the same position and the reflowed text window for the text in each such window.

図223A及び223Bに於ける関数の残りの部分は、リフローされたテキスト分割ビューに於けるナビゲーションを図示している。変更又は追加に対応する図223A及び223Bに於いて下線が付されたテキストを除いて、これらの関数は、図222に図示された関数22210乃至22254に一致する。図223A及び223Bに於いて、図222に図示された関数に対応する関数は、後に文字「A」が続く同一の番号を有する。   The remainder of the functions in FIGS. 223A and 223B illustrate navigation in the reflowed text split view. Except for the text underlined in FIGS. 223A and 223B corresponding to changes or additions, these functions correspond to the functions 22210-22254 illustrated in FIG. In FIGS. 223A and 223B, the function corresponding to the function illustrated in FIG. 222 has the same number followed by the letter “A”.

図222に図示されたナビゲーションに対する図223A及び223Bのナビゲーション間の相違は、(1)関数22312、22314、22316、22324、22326、及び22328によって示されているように、リフローされたテキストウインドウに表示されたテキストに於ける変化に対応するための、表示されたテキストインジケータの移動と、(2)関数22318乃至22324、及び、関数2230乃至22326で示されているように、リフローされたウインドウに表示されたテキストの一部を、オーバービューウインドウ上の表示されたテキストインジケータに表示可能にする必要がある場合に於ける、オーバービューウインドウに表示されたウェブページレイアウトの一部のスクロールと、(3)関数22236Aで示されているように、リフローされたテキストウインドウ及びオーバービューウインドウの両方に於けるカーソルの移動、を含む。   The differences between the navigations of FIGS. 223A and 223B relative to the navigation illustrated in FIG. 222 are displayed in the reflowed text window as indicated by (1) functions 22312, 22314, 22316, 22324, 22326, and 22328. The displayed text indicator is moved to accommodate changes in the text being displayed, and (2) displayed in the reflowed window as shown by functions 22318 through 22324 and functions 2230 through 22326 Scrolling a portion of the web page layout displayed in the overview window when it is necessary to make a portion of the displayed text visible in the displayed text indicator on the overview window; ) Function 2223 As indicated by A, including movement of at cursor both reflow text window and the overview window.

図224は、ビューモードが拡大鏡ビューに設定される場合に機能する一連の関数22400を図示している。こうした一連の関数は、関数22402乃至22454を含む。このモードのスクリーンショットが、図208乃至211に図示されている。   FIG. 224 illustrates a series of functions 22400 that work when the view mode is set to magnifying glass view. Such a series of functions includes functions 22402 to 22454. Screen shots of this mode are illustrated in FIGS.

関数22402によって、関数22404乃至22410が拡大鏡表示の要素を同時に表示させる。   The function 22402 causes the functions 22404 to 22410 to simultaneously display the elements of the magnifier display.

拡大鏡ウインドウによって覆われた部分を除いて、関数22404は、表示スクリーンの略全てに於いて、オーバービューウインドウ19200Bを表示する。このオーバービューウインドウは、ダウンロードされた表示リストによって表現されたレイアウトの一部を表示し、表示リストに表現された解像度から縮小される。図示された実施形態に於いて、オーバービューは、分割ビュー、オーバービューオンリーモード、及び、リフローテキスト分割ビューに於ける、オーバービューウインドウと同一の解像度でウェブページレイアウトを表示する。   Except for the portion covered by the magnifier window, function 22404 displays the overview window 19200B on substantially all of the display screen. The overview window displays a part of the layout expressed by the downloaded display list, and is reduced from the resolution expressed in the display list. In the illustrated embodiment, the overview displays the web page layout at the same resolution as the overview window in split view, overview only mode, and reflow text split view.

オーバービューウインドウが拡大ビューウインドウで「覆われている」と表現する場合、オーバービューウインドウの一部が、ユーザインターフェースの観点から、表示上で拡大されたビューによって覆われているように見えるということを意味する。オーバービューウインドウが拡大されたビューで覆われているように見えるのは、拡大されたビューが、図209と210の間、及び、図210と211との間に位置するように移動される場合に、オーバービューウインドウの以前に「覆われた」部分から拡大されたビューが離れるように、以前に「覆われた」部分が表示されるからである。当然のことながら、殆どの実施形態に於いて、任意の時点で拡大されたビューによって覆われている表示スクリーンの部分に於けるピクセルが、拡大されたウインドウのビットマップのみを表示する。   When the overview window is described as “covered” in the enlarged view window, a portion of the overview window appears to be covered by the enlarged view on the display from the user interface perspective. Means. The overview window appears to be covered by the magnified view when the magnified view is moved so that it is positioned between FIGS. 209 and 210 and between FIGS. 210 and 211. This is because the previously “covered” portion is displayed so that the enlarged view leaves the previously “covered” portion of the overview window. Of course, in most embodiments, pixels in the portion of the display screen that is covered by the magnified view at any given time will only display the bitmap of the magnified window.

関数22408は、オーバービューウインドウに図示されたレイアウトの一部を越えて、拡大されたビューウインドウ19400Bを表示する。拡大されたビューは、ダウンロードされた表示リストに表現された最大解像度で、オーバービューウインドウに表示されたレイアウトの覆われたサブポーションの内、拡大されたサブパートを表示する。   Function 22408 displays an enlarged view window 19400B beyond a portion of the layout illustrated in the overview window. The enlarged view displays an enlarged subpart of the covered subportions of the layout displayed in the overview window at the maximum resolution represented in the downloaded display list.

関数22408は、オーバービューに表示されたレイアウトに関連して、拡大されたビューに表示されたレイアウトのサブパートの位置を示す、一つ又は複数の拡大されたサブパートマーカを表示する。図示された実施形態に於いて、拡大されたサブパートマーカは、図208乃至211に於いて20804及び20806としてラベル付けされ、拡大されたビューウインドウの端部に設置される。マーカ20804は、拡大されたビューウインドウに表示されたレイアウトの一部のオーバービューウインドウに対して垂直位置を示しており、マーカ20806は、オーバービューウインドウのレイアウトのその部分の水平位置を表示する。   Function 22408 displays one or more magnified subpart markers that indicate the position of the subpart of the layout displayed in the magnified view in relation to the layout displayed in the overview. In the illustrated embodiment, the enlarged subpart markers are labeled 20804 and 20806 in FIGS. 208-211 and are placed at the end of the enlarged view window. A marker 20804 indicates a vertical position with respect to a part of the overview window displayed in the enlarged view window, and a marker 20806 displays a horizontal position of the part of the layout of the overview window.

関数22410は、ユーザ可動カーソル19116を拡大されたビューウインドウに表示する。カーソルの位置に対応するオーバービューウインドウの一部が拡大されたビューで覆われているので、カーソルはこのモードでオーバービューウインドウに表示されない。   Function 22410 displays user movable cursor 19116 in the enlarged view window. Since the portion of the overview window corresponding to the cursor position is covered with an enlarged view, the cursor is not displayed in the overview window in this mode.

拡大鏡モードの状態で、クライアントコンピュータがナビゲーション入力を受信する場合、関数22412によって、関数22414乃至22426が実行される。   When the client computer receives navigation input in the magnifier mode, functions 22414 through 22426 are executed by function 2212.

入力が垂直ナビゲーション入力の場合、関数22414によって、関数22416乃至22420が実行される。関数22416は、余裕が有れば、入力に対応する垂直方向で、オーバービューウインドウに関連して拡大されたビューウインドウを垂直に移動させる。関数22418は、拡大されたビューで表示されたレイアウトの拡大されたサブパートの位置を垂直に移動させる。そして、関数22420は垂直拡大されたサブパートマーカを垂直に移動させ、これにより、それらの位置は、そうした移動後にオーバービューウインドウに於けるレイアウトに関連して、拡大されたサブパートの垂直位置に対応する。   If the input is a vertical navigation input, function 22414 causes functions 22416 through 22420 to be performed. The function 22416 vertically moves the enlarged view window relative to the overview window in the vertical direction corresponding to the input, if there is room. Function 22418 moves the position of the enlarged subpart of the layout displayed in the enlarged view vertically. Function 22420 then moves the vertically magnified subpart markers vertically, so that their positions correspond to the vertical position of the magnified subpart in relation to the layout in the overview window after such movement. .

通常、関数22416乃至22420の動作によって、拡大されたビューを移動するので、その垂直中心は、オーバービューウインドウに関連して、ウェブページレイアウトの拡大された部分の位置を覆った状態を維持している。この状態が生じる場合、垂直に拡大されたサブパートマーカの位置は、表示スクリーン全体に関連して移動されるが、拡大されたウインドウに関連して同一位置を維持する。図示された実施形態に於いて、拡大されたビューが、最大オーバービューウインドウに対応する空間の最上部又は最下部に達する場合、さらなる上方向ナビゲーション又は下方向ナビゲーションが、それぞれ、拡大されたビューウインドウを移動させないが、垂直に拡大されたサブパートマーカを上方向又は下方向に移動させる。   Usually, the operation of functions 22416 to 22420 moves the magnified view so that its vertical center remains in relation to the overview window and covers the position of the magnified portion of the web page layout. Yes. When this condition occurs, the position of the vertically enlarged subpart marker is moved relative to the entire display screen, but remains the same relative to the enlarged window. In the illustrated embodiment, when the magnified view reaches the top or bottom of the space corresponding to the largest overview window, further upward navigation or downward navigation, respectively, is magnified view window. However, the sub-part marker expanded vertically is moved upward or downward.

図209と211との間の相違は、関数22414乃至22420によって実行される種類の拡大されたビューの垂直ナビゲーションを図示している。   The difference between FIGS. 209 and 211 illustrates the vertical navigation of the type of magnified view performed by functions 22414 to 22420.

水平ナビゲーション入力を受信する場合、関数22422によって、関数22424及び22426が実行される。   When receiving horizontal navigation input, function 22422 performs functions 22424 and 22426.

関数22424は、レイアウトの拡大されたサブパートの位置を水平に移動させる。そして、関数22426は、オーバービューウインドウに於けるレイアウトに関連して、拡大されたサブポーションの水平位置に於ける変化に対応するために、垂直に拡大されたサブポーションマーカを水平に移動させる。   Function 22424 moves the position of the expanded subpart of the layout horizontally. Function 22426 then moves the vertically enlarged subportion marker horizontally to accommodate changes in the horizontal position of the enlarged subportion in relation to the layout in the overview window.

図208と209との間の相違は、拡大鏡ビューモードに於ける水平ナビゲーションについて図示している。ここで留意すべきは、拡大ビュー自体は水平方向に移動しないが、拡大ビューに表示されるレイアウト部分と、水平サブポーションマーカ20806のみが移動するという点である。これは、図示された実施形態に於いて、テキストのより長いラインの表示を可能にするために、拡大されたビューがスクリーンの最大幅を拡大し、これにより、水平方向に移動する余地がなくなるからである。   The differences between FIGS. 208 and 209 illustrate horizontal navigation in the magnifier view mode. It should be noted here that the enlarged view itself does not move in the horizontal direction, but only the layout portion displayed in the enlarged view and the horizontal subportion marker 20806 move. This is because in the illustrated embodiment, the enlarged view enlarges the maximum width of the screen to allow the display of longer lines of text, thereby eliminating the possibility of moving horizontally. Because.

他の実施形態に於いて、オーバービューウインドウは、拡大されたビューの中心の下方に位置する拡大されたビューに表示されたレイアウトの部分を保持するために、拡大されたビューウインドウの下方で、水平にスクロールすることが可能であり、その結果、それはさらに実際の拡大鏡のように動作する。   In another embodiment, the overview window is below the magnified view window to hold a portion of the layout displayed in the magnified view located below the center of the magnified view. It is possible to scroll horizontally, so that it behaves more like a real magnifying glass.

他の実施形態、そして、特に、より広い、又は、より高解像度のスクリーンを有する実施形態に於いて、実際に拡大鏡の幅はスクリーンの幅よりも狭く、このため、図示された実施形態に於いて拡大鏡が垂直移動することが可能な方法と同様の方法で、水平に移動することが可能である。   In other embodiments, and in particular in embodiments having a wider or higher resolution screen, the width of the magnifying glass is actually narrower than the width of the screen, so that in the illustrated embodiment In this case, the magnifying glass can be moved horizontally in the same manner as the magnifying glass can move vertically.

カーソルナビゲーションモードの状態で、拡大鏡表示ビューを表示するクライアントのブラウザがナビゲーション入力を受信する場合、関数22428によって、関数22430乃至22438が実行される。   When the client browser displaying the magnifier display view receives navigation input in the cursor navigation mode, functions 22430 through 22438 are executed by function 22428.

関数22430は、拡大されたビューに表示されたウェブページレイアウトの一部に関連して、入力によって示された方向にカーソルを直接移動させる。関数22432は、関数22430の移動によって、拡大されたビューウインドウに表示されたウェブページレイアウトのサブパートを越えて、拡大されたビューウインドウに於いて以前に非表示であったウェブページレイアウトの一部の上に、カーソルを移動させるか否かを確かめるためにテストを行う。カーソルが上記のように移動する場合、関数22432によって、関数22434乃至22438がその移動の一環として実行される。   Function 22430 moves the cursor directly in the direction indicated by the input in relation to the portion of the web page layout displayed in the enlarged view. The function 22432 moves the function 22430 to move a part of the web page layout that was previously hidden in the enlarged view window beyond the sub-part of the web page layout displayed in the enlarged view window. Above, test to see if you move the cursor. When the cursor moves as described above, function 22432 causes functions 22434 through 22438 to be executed as part of that movement.

関数22434は、ウェブページレイアウトの以前非表示であった部分の上にカーソルを移動させる。関数22434は、拡大されたビューウインドウに関連して、ウェブページレイアウトをスクロールするので、カーソルが移動される以前に非表示であった部分は、拡大された表示ウインドウにスクロールされる。そして、そうしたインジケータを拡大されたビューで表示されたウェブページの一部に対応するオーバービューに関連した位置に対応させることが必要な場合、関数22438は、これに対して拡大されたビューインジケータをスクロールする。   Function 22434 moves the cursor over a previously hidden portion of the web page layout. Since function 22434 scrolls the web page layout in relation to the enlarged view window, the portion that was hidden before the cursor was moved is scrolled to the enlarged display window. Then, if such an indicator needs to correspond to the position associated with the overview corresponding to the portion of the web page displayed in the magnified view, function 22438 sets the magnified view indicator to this. Scroll.

ビューナビゲーションとカーソルナビゲーションモードの何れかで実行される移動によって、拡大されたビューによって覆われた部分を含む、全体的なオーバービューウインドウに対応するレイアウトの一部を越えて、ウェブページレイアウトの以前に非表示であった部分の上に、レイアウトの拡大されたサブパートのサブポーションを移動させる場合、関数22440によって、関数22442乃至22446がそうした移動の一環として実行される。   The web page layout was previously moved beyond the portion of the layout corresponding to the overall overview window, including the portion covered by the magnified view, by movement performed in either view navigation or cursor navigation mode. If the subportion of the enlarged subpart of the layout is moved over the portion that was not displayed in the function, functions 22442 to 22446 are executed by function 22440 as part of such movement.

関数22442は、全体的なオーバービューウインドウに対応する領域に、レイアウトの以前に非表示であった部分をスクロールする。これに対して、関数22444は、拡大されたビューウインドウに表示されたレイアウトのサブパートをスクロールする。そして、必要に応じて、拡大されたビューに表示されたウェブページの一部に対応するオーバービューウインドウに於ける位置に関連した対応を維持するために、関数22448は拡大されたサブポーションマーカを移動させる。   Function 22442 scrolls the previously hidden portion of the layout to the area corresponding to the overall overview window. In contrast, function 22444 scrolls the subparts of the layout displayed in the enlarged view window. Then, if necessary, the function 22448 sets the enlarged subportion marker to maintain a position-related correspondence in the overview window corresponding to the portion of the web page displayed in the enlarged view. Move.

図212乃至216、及び、図225乃至228は、マルチコラムウェブページのレイアウトに於ける、それぞれのコラムの幅を制限する本発明の一つの特徴に関連している。   FIGS. 212 through 216 and FIGS. 225 through 228 relate to one feature of the present invention that limits the width of each column in a multi-column web page layout.

上述の本発明の多くの特徴、及び、特に図219及び221に関して上述された拡大オンリービュー、及び、分割スクリーンビューと併せて、本発明のこの特徴を使用することが出来る。各ラインを読むために右にスクロールし、その後、左にスクロールする必要なく、そうしたコラムの複数のラインのそれぞれに於けるテキスト全体を読むことが出来るように、個々のテキストコラムをウェブページのズームイン/拡大されたビューの範囲に適合する程度に十分狭くさせるという利点を有している。   This feature of the present invention can be used in conjunction with many features of the present invention described above, and in particular the magnified only view and split screen view described above with respect to FIGS. 219 and 221. Scroll the individual text columns to the web page so that you can read the entire text in each of the multiple lines of those columns without having to scroll to the right to read each line and then scroll to the left. / Has the advantage of being narrow enough to fit the range of the enlarged view.

ウェブページプログラムの当業者に知られているように、ウェブページは、コラム中に何が存在するかという定義、コラムの幅、及び、コラムの水平置換を含む、コラムの仕様を有している。所定のコラムの幅及び水平置換は、所定のコラムのコンテンツのサイズによって、又は、所定のコラムの右又は左のコラムの幅によって、例えば、使用可能な表示ウインドウサイズの割合として、無制限のピクセルで仕様が指定される等、複数の方法で定義される。そうした仕様が明示的な場合もあるし、黙示的な場合もある。   As is known to those skilled in web page programs, a web page has a column specification, including definition of what exists in the column, column width, and horizontal column replacement. . The predetermined column width and horizontal permutation is unlimited pixels depending on the content size of the predetermined column or the right or left column width of the predetermined column, for example as a percentage of the available display window size. It is defined in several ways, such as when a specification is specified. Such specifications may be explicit or implicit.

図226は、HTMLテーブルとして定義された3つのコラムの仕様例を提示している。   FIG. 226 presents a specification example of three columns defined as an HTML table.

同図に於いて22602でラベル付けされたラインは、テーブル定義の第1ラインである。ライン22604は、テーブル行の定義を開始する。この特別のテーブルは、3つのコラムで形成された1行のみを有する。   In the figure, the line labeled 22602 is the first line of the table definition. Line 22604 begins the definition of a table row. This special table has only one row formed by three columns.

ライン22606は、第1コラムの幅が200ピクセルとなる仕様を定めている。ライン22608は、第1コラムのコンテンツとなるテキストを示している。   Line 22606 defines a specification in which the width of the first column is 200 pixels. A line 22608 indicates the text that is the content of the first column.

ライン22610は、中央のコラムを定義しており、該コラムに対して明確に指定された幅を与えていないが、そのコラム幅はテーブルが定義される方法で自動的に定義されている。これによって、コラム幅は、他の2つのコラムによって占められていない表示ウインドウに於いて、全ての使用可能な幅を有するように拡大する。ライン22612は、中央のコラムのコンテンツを含んでいる。   Line 22610 defines a central column and does not give a clearly specified width for that column, but the column width is automatically defined in the way the table is defined. This increases the column width to have all available widths in the display window not occupied by the other two columns. Line 22612 contains the contents of the middle column.

ライン22614は、第1コラムと同様に、第3コラムが200ピクセルの幅を有するように仕様を指定している。最後に、ライン22616は、第3コラムのコンテンツの仕様を指定する。   Line 22614, like the first column, specifies the specification such that the third column has a width of 200 pixels. Finally, line 22616 specifies the content specification for the third column.

図227は、図228に図示された外部カスケーディングスタイルシート(CSS)への参照を使用して、図226に定義されたコラムに類似した3つのコラム一式を定義する他の方法を図示している。   FIG. 227 illustrates another method of defining a set of three columns similar to the columns defined in FIG. 226 using a reference to the external cascading style sheet (CSS) illustrated in FIG. Yes.

図212は、図213乃至216に表示されているウェブページのコンテンツの一部を図示している。図212は、例えば、図226又は227に図示された方法等、ウェブページコラムを定義可能な一つ又は複数の異なる方法を使用して、指定されているマルチコラムに配置されたコンテンツを表示している。同図に於いて、コラムの垂直及び水平方向の境界が灰色のラインで示されている。   FIG. 212 illustrates a part of the content of the web page displayed in FIGS. 213 to 216. FIG. 212 displays content arranged in a designated multi-column using one or more different methods that can define web page columns, such as the method illustrated in FIG. 226 or 227, for example. ing. In the figure, the vertical and horizontal boundaries of the column are indicated by gray lines.

図213は、コラム幅に制限がない場合に於ける、図212に図示されたウェブページコンテンツのレイアウトに関する図193に図示された種類のオーバービューオンリービュー19200のシミュレーションである。   FIG. 213 is a simulation of the overview-only view 19200 of the type illustrated in FIG. 193 for the layout of the web page content illustrated in FIG. 212 when the column width is not limited.

図214は、図213に図示されたレイアウトの分割ビューのシミュレーションである。同図は、ウェブページの主要なテキストコラムに於けるテキストラインの幅が、あまりにも広いので、図195乃至199に於いて既に図示された種類の拡大されたビューウインドウ19400Aに適合することが出来ないことを図示している。これは、主要なコラムのテキストのそれぞれの最大ラインを読み取るためには、そうしたテキストの読み取りを遅く、且つ、面倒なものにする傾向のある左右のスクロールが必要となることを意味する。   FIG. 214 is a simulation of the split view of the layout shown in FIG. The figure can be adapted to an enlarged view window 19400A of the kind already illustrated in FIGS. 195 to 199 because the width of the text line in the main text column of the web page is too wide. It is not shown. This means that reading each maximum line of text in the main column requires left and right scrolling, which tends to make such text reading slow and cumbersome.

図215は、図225に関して後述するコラム幅制限プロセスを用いてレイアウトされた同一のウェブページのオーバービューオンリービュー19200のシミュレーションである。   FIG. 215 is a simulation of an overview-only view 19200 of the same web page laid out using the column width restriction process described below with respect to FIG.

図216は、図215に於けるレイアウトと同一のレイアウトの分割ビューに関するシミュレーションである。図216は、図225の幅制限プロセスによって、幅制限を行う前に、ウェブページ上の最も広い幅のテキストコラムであったコラムの幅全体が、分割ビューの拡大されたビューウインドウ19400A内に一度で適合可能となり、そうしたテキストを一層読み易くすることを示している。   FIG. 216 is a simulation regarding a divided view having the same layout as the layout in FIG. 215. FIG. 216 illustrates that the entire width of the column, which was the widest text column on the web page, is once placed in the enlarged view window 19400A of the split view prior to width limitation by the width restriction process of FIG. , Which makes it easier to read such text.

本発明のこの特徴に関する多くの好ましい実施形態に於いて、そうした幅制限されたコラムのテキストが、そうしたテキストが表示されるピクセル解像度に対して可読性を改善、又は、最適化する為に選択された、それらの文字アウトラインの形状及びピクセル配置を有するアンチエイリアスフォントビットマップで表示される。そうしたフォントは、図55乃至97、及び、図168乃至184に関して上述された種類のサブピクセル最適化フォントに成り得る。   In many preferred embodiments relating to this aspect of the invention, the text of such width limited columns has been selected to improve or optimize readability for the pixel resolution at which such text is displayed. , Displayed with anti-aliased font bitmaps having the shape and pixel arrangement of their character outlines. Such a font can be a sub-pixel optimized font of the type described above with respect to FIGS. 55-97 and FIGS. 168-184.

図214及び216に於いては、拡大されたビューウインドウ19400Aは、そうしたウインドウが実際に有する近似値に過ぎないが、これは、それらのウインドウに於けるフォントが、その図に於いてそれらがレンダリングされた解像度に対して選択されたそれらの文字アウトラインの形状及びピクセル配列を有する、上記段落で議論した種類のフォントではないからである。これが、図214及び216の拡大されたビューウインドウに於けるテキストが、図194、195乃至199、及び、図208乃至211のそれぞれに図示され、且つ、レンダリングされるピクセル解像度に対して選択された、文字アウトラインの形状及びピクセル配置をフォントビットマップが有する拡大されたビューウインドウ19400、19400A、及び、19400Bのテキストに比して読み難い理由なのである。   In FIGS. 214 and 216, the enlarged view window 19400A is only an approximation of what such windows actually have, because this means that the fonts in those windows are rendered in the figure. This is because the fonts are not of the type discussed in the previous paragraph, having their character outline shape and pixel arrangement selected for the chosen resolution. This is the text in the enlarged view window of FIGS. 214 and 216, shown in FIGS. 194, 195 to 199, and FIGS. 208 to 211, respectively, and selected for the rendered pixel resolution. That is why the shape and pixel arrangement of the character outline is more difficult to read than the enlarged view windows 19400, 19400A, and 19400B text that the font bitmap has.

図225は、マルチコラムウェブページの要素をそれぞれのコラムの幅が制限されるレイアウトにセットするために使用可能な一連の関数22500を図示している。ウェブページのコンテンツをレイアウトする方法は、当該技術分野に於いては周知である。図225に図示された関数は、本発明の幅制限の特徴に関連した動作に焦点を当てている。   FIG. 225 illustrates a series of functions 22500 that can be used to set the elements of a multi-column web page into a layout in which the width of each column is limited. Methods for laying out web page content are well known in the art. The function illustrated in FIG. 225 focuses on operations associated with the width limiting feature of the present invention.

図217乃至224で説明されたクライアントプロキシブラウザスキームに於いて、図225のマルチコラムレイアウトは、図115の関数11507で説明されたレイアウトプロセスの一環として、プロキシサーバで実行される。本発明の他の実施形態に於いて、任意の仲介プロキシコンピュータを必要とすることなく、要求されたウェブページを表示しているエンドユーザのコンピュータ上で、そうしたレイアウトをローカルに実行することが出来る。小型コンピュータがさらなるメモリ容量と演算能力を獲得するにつれて、クライアント上でローカルにウェブページレイアウトを実行することはより魅力的になる。   In the client proxy browser scheme described in FIGS. 217 through 224, the multi-column layout of FIG. 225 is performed at the proxy server as part of the layout process described by function 11507 of FIG. In other embodiments of the present invention, such a layout can be performed locally on the end user's computer displaying the requested web page without the need for any intermediary proxy computer. . As small computers acquire more memory capacity and computing power, it becomes more attractive to perform web page layout locally on the client.

図225の関数22502は、ウェブページに於いて指定されたそれぞれのコラムに対してループを実行する。このループは、関数22504乃至22524を含む。   The function 22502 of FIG. 225 executes a loop for each column specified in the web page. This loop includes functions 22504 to 22524.

関数22504は、2つの要因の関数として、定義された水平位置にコラムをレイアウトする。これら2つの要因の内、第1要因は、ライン22506に図示されているように、コラムの指定された水平置換である。コラム幅制限が選択される場合、第2要因は、ライン22508及び22510上に図示されているように、そうしたコラム幅制限によって引き起こされた、現在のコラムの左側にレイアウトされたコラムの指定された幅に於ける任意の減少である。   Function 22504 lays out the column at a defined horizontal position as a function of two factors. Of these two factors, the first factor is the designated horizontal permutation of the column, as illustrated by line 22506. If a column width limit is selected, the second factor is the designated column of the column laid out to the left of the current column caused by such column width limits, as illustrated on lines 22508 and 22510. Any decrease in width.

この明細書及び付随する特許請求の範囲に於いて使用されているように、コラムの指定された水平置換は、例えば、表示スクリーンの幅に関する固定ピクセル位置及び割合などの観点に於ける、その水平置換に関する任意の明確な定義だけでなく、何れのコラムがその左右に位置するかということに関する定義を含んでいる。このように、コラム水平置換が、その左側にあるコラム幅の減少によって変更される場合でさえも、それはやはりその左側に同一コラムを有するので、その位置は依然としてその水平置換に関する関数なのである。   As used in this specification and the appended claims, a specified horizontal permutation of a column is its horizontal in terms of, for example, a fixed pixel position and percentage with respect to the width of the display screen. It includes definitions as to which columns are to the left and right of the column, as well as any unambiguous definitions for substitution. Thus, even if the column horizontal permutation is changed by reducing the column width on its left side, it still has the same column on its left side, so its position is still a function of that horizontal permutation.

コラム幅制限が選択される場合、関数22512によって、関数22514及び22516がループ22502の現在のコラム内にある任意の画像を、最大の所望コラム幅内に適合するサイズまで縮小させる。   If the column width limit is selected, function 22512 causes functions 22514 and 22516 to reduce any image that is in the current column of loop 22502 to a size that fits within the maximum desired column width.

図示された実施形態に於いて、所望の最大コラム幅は、表示時に図216に図示された拡大されたビュー19400A内に適合する幅である。他の実施形態に於いて、所望の最大コラム幅は、そうした実施形態に使用される幅であって、分割スクリーン、又は、スクリーンウインドウ全体としても良い、所定の表示ウインドウ内に適合する幅である。   In the illustrated embodiment, the desired maximum column width is the width that fits within the enlarged view 19400A illustrated in FIG. 216 when displayed. In other embodiments, the desired maximum column width is the width used in such embodiments and fits within a given display window, which may be a split screen or the entire screen window. .

関数22518は、ライン22520乃至22524で示された2つの要因の関数として決定された幅で、現在のコラムに任意のテキスト及び/又は画像の位置をレイアウトする。テキスト22520に示されているように、これらの要因の内、第1要因は、コラムの指定された幅である。コラム幅制限が選択される場合、これらの要因の内、第2要因は、数字22522及び22524で示されているように、コラム幅が最大の所望コラム幅を越えないようにするために必要な指定された幅の任意の減少である。   Function 22518 lays out the position of any text and / or image in the current column with a width determined as a function of the two factors indicated by lines 22520 through 22524. Of these factors, the first factor is the specified width of the column, as shown in text 22520. If a column width limit is selected, the second of these factors is necessary to ensure that the column width does not exceed the maximum desired column width, as indicated by the numbers 22522 and 22524. An arbitrary reduction of the specified width.

図212に図示されたウェブページコンテンツは、その最上部に、2つの幅の狭いテキストコラム21206、及び、そうした幅の狭いテキストコラムのそれぞれに関連した画像コラム21208を有する、メインテキストコラム21204を含む。図225に於ける擬似コードに図示されていないが、そうした幅制限なしで、それらの幅が最大の所望コラム幅に比して狭かったとしても、図215に図示されているように、コラム幅制限は、それらの2つの幅の狭いテキストコラムの幅を減少させる。ウェブページのメインコラム21204の幅を減少させるために、これが実行される。しかし、可読性及びウェブページの全体的な様相を維持するためには、テキストコラムや画像が一部となっている包括的なコラムの幅を減少させる為に、コラム幅制限プロセスが、そうしたテキストコラム及び画像を縮小する幅に関して下限を有していることが好ましい。   The web page content illustrated in FIG. 212 includes a main text column 21204 at the top with two narrow text columns 21206 and an image column 21208 associated with each of those narrow text columns. . Although not shown in the pseudo code in FIG. 225, the column widths are not shown as shown in FIG. 215, even if their width is narrower than the maximum desired column width without such width restrictions. The restriction reduces the width of those two narrow text columns. This is done to reduce the width of the main column 21204 of the web page. However, in order to maintain readability and the overall appearance of the web page, the column width limit process is used to reduce the width of the comprehensive column that the text column or image is part of. It is also preferable to have a lower limit for the width for reducing the image.

この下限のために、これら2つの小型テキストコラム、及び、それらに関連する画像を含むメインコラム21204は、最大の所望コラム幅よりも幅が広い状態にされる。   Because of this lower limit, these two small text columns and the main column 21204 containing the images associated with them are made wider than the maximum desired column width.

したがって、メインコラムに於けるテキストのメインボディは、図215に於ける双頭の矢印で示された、そのメインボディが一部となっているメインコラム21204のコラム幅に比して幅が狭い幅21504でレイアウトされている。   Therefore, the main body of the text in the main column is narrower than the column width of the main column 21204, which is indicated by the double-headed arrow in FIG. 21504 is laid out.

本発明の他の実施形態に於いては、コラムに於ける画像又は非テキスト要素の幅を縮小又は制限するために、労力が割かれることはなく、コラムに於けるテキストの幅だけが最大の所望コラム幅に制限される。これにより、テキストラインを所望のビューウインドウ内に適合するサイズまで短くするという価値のある結果を達成することになるが、それにより、多くのコラムの大部分は、テキストで満たされた幅の一部のみを有する傾向となり、図215に図示された空白21506に類似した空白を作り出す。   In other embodiments of the invention, no effort is expended to reduce or limit the width of image or non-text elements in a column, only the width of text in the column is maximized. Limited to the desired column width. This achieves a worthwhile result of shortening the text line to a size that fits within the desired view window, so that most of the many columns are of a width that is filled with text. Tend to have only parts, creating a blank similar to the blank 21506 illustrated in FIG.

図217乃至225に於ける擬似コードは、低解像度表示上にウェブページを表示するように設計されており、これにより、所謂「拡大されたビューウインドウ」に於いてさえ、それはウェブページコンテンツを縮小する。この実施形態に於いて、ウェブページは、レイアウト倍率1(即ち、その要素が仮想レイアウトで縮小されていない)を有する仮想解像度で、プロキシサーバによってレイアウトされ、その後、仮想レイアウトのコンテンツは、クライアントによってダウンロードされ表示される表示リストに於いて、表示倍率2で縮小される。   The pseudo code in FIGS. 217 through 225 is designed to display a web page on a low resolution display so that, even in a so-called “enlarged view window”, it reduces the web page content. To do. In this embodiment, the web page is laid out by the proxy server at a virtual resolution having a layout factor of 1 (ie, its elements are not reduced in the virtual layout), after which the virtual layout content is In the display list that is downloaded and displayed, it is reduced by a display magnification of 2.

他の低解像度に関する実施形態に於いて、ウェブページのコンテンツを縮小するレイアウト倍率で元のレイアウトを実行することによって、そうした縮小を実行することができ、その後、レイアウトが本来レイアウトされる縮小された縮尺で表示されるように、表示倍率1を使用する。   In other low-resolution embodiments, such reduction can be performed by performing the original layout at a layout magnification that reduces the content of the web page, after which the reduced layout is originally laid out. A display magnification of 1 is used so that it is displayed in scale.

そうした低解像度表示に関する実施形態に於いて、レイアウト倍率及び/又は表示倍率によって、ウェブページのレイアウトの表示が、コラム幅制限とは独立して、画像及びテキスト文字を含むウェブページの要素の殆ど又は全てを縮小されたピクセル解像度で表示させる。そうした実施形態に於いて、コラム幅制限は、あまりにも広いので、ウェブページの表示に関する他の特徴のすべてを圧縮するために使用される縮小を用いても、所望のウインドウに適合することが出来ないコラムの幅を狭くする。   In such low resolution display embodiments, depending on the layout scale and / or display scale, the display of the layout of the web page is independent of the column width limit, most of the elements of the web page including images and text characters, or Display everything with reduced pixel resolution. In such an embodiment, the column width limit is so wide that even the reduction used to compress all of the other features related to the display of the web page can be adapted to the desired window. Narrow column width.

図191乃至228に関して議論された本発明の特徴に関する幾つかの実施形態に於いて、レイアウト及び倍率は、両方とも1とすることができ、また、組み合わされた場合、ウェブページのコンテンツが全く縮小されず、もしかしたら、拡大さえされる値を有することが出来る。   In some embodiments relating to the features of the present invention discussed with respect to FIGS. 191 to 228, the layout and scale can both be unity, and when combined, the web page content is totally reduced. Not, possibly even having values that are even magnified.

別の実施形態に於いては、コラム幅制限のプロセスを別の方法で実行することが出来る。例えば、幾つかの実施形態に於いて、幅制限なしに所定のコラムが有する幅と、最大の所望の幅とを比較することと、必要に応じて、コラム幅が過剰な長さになることを防ぐ為に、所定のコラムの幅を狭くすることによって、コラム幅制限のプロセスを達成することが出来る。恐らく多くのウェブページの魅力を低減させてしまうだろうが、幾つかの実施形態に於いて、コラム幅制限のプロセスは、コラムの指定された幅とは関係なく、同一幅を有するように全てのコラム幅を狭くすることを含めることが出来る。したがって、幅制限がない場合には、最大の所望の幅に比して幅の狭いコラムを、そうしたより狭い幅で表示することが望ましい。   In other embodiments, the column width limiting process can be performed in other ways. For example, in some embodiments, comparing the width of a given column with the maximum desired width without width restrictions and, if necessary, the column width may be excessive. In order to prevent this, the column width limiting process can be achieved by narrowing the width of a given column. Perhaps it will reduce the attractiveness of many web pages, but in some embodiments, the column width limiting process is all about having the same width, regardless of the specified width of the column. Narrowing the column width can be included. Therefore, if there is no width limitation, it is desirable to display columns that are narrower than the maximum desired width with such narrower widths.

そうした実施形態に於いて、コラム幅が低減されないという規則の例外は、図215に関して図示されたような状況に於いて、コラム幅が別の方法で最大の所望コラム幅より狭い幅となる場合である。即ち、発生した多数のコラムが全面的なコラム内の行に水平方向に配列される場合、それ自体がテキストを直接含むという例外、及び、コラム幅制限がない場合に最大の所望コラム幅を越える幅を有するという例外が発生する可能性がある。このような場合、全面的なコラムの幅を減少することが出来るように、図215に図示されているように、水平方向の行にあるコラムが、最大の所望コラム幅に比して実質的に短い長さまで減少された幅を有しても良い。   In such embodiments, the exception to the rule that the column width is not reduced is when the column width is otherwise narrower than the maximum desired column width in the situation as illustrated with respect to FIG. is there. That is, if a large number of generated columns are arranged horizontally in rows within the entire column, the maximum desired column width will be exceeded if there is an exception that it itself contains text directly and there is no column width restriction An exception of having a width may occur. In such a case, as shown in FIG. 215, the columns in the horizontal row are substantially smaller than the maximum desired column width so that the overall column width can be reduced. The width may be reduced to a short length.

図229は、図191乃至228に関して上述された本発明の特徴もまた、携帯電話に加えて、他の種類のコンピュータデバイスに適用することが出来ることを図示するために提示されている。図229は、携帯情報端末(PDA)上の分割スクリーンビューのシミュレーションを図示している。この例に於いては、図示されたウェブページの指定されたレイアウトとPDAのより大きなピクセル幅の組み合わせによって、最も幅の広いテキストコラムが幅制限を必要とすることなく表示可能であるので、コラム幅制限を必要としないが、分割ビューが表示され、コラム幅制限が実施されている。分割ビューは、オーバービューウインドウ19200C、拡大されたビューウインドウ19400C、オーバービューウインドウに於ける拡大されたビューインジケータ19504C、及び、オーバービュー及び拡大されたビューの両方に表示されたカーソル19116を含む。   FIG. 229 is presented to illustrate that the features of the present invention described above with respect to FIGS. 191 to 228 can also be applied to other types of computing devices in addition to mobile phones. FIG. 229 illustrates a split screen view simulation on a personal digital assistant (PDA). In this example, the combination of the specified layout of the illustrated web page and the larger pixel width of the PDA allows the widest text column to be displayed without requiring a width limit, so the column Although no width restriction is required, a split view is displayed and column width restriction is implemented. The split view includes an overview window 19200C, an enlarged view window 19400C, an enlarged view indicator 19504C in the overview window, and a cursor 19116 displayed in both the overview and the enlarged view.

当然のことながら、他の実施形態に於いて、図191乃至228に図示された本発明の幾つかの特徴は、他の種類のコンピュータデバイス、又は、デスクトップコンピュータ、ラップトップコンピュータ、手首装着型コンピュータ、頭部装着型ディスプレイ、さらに大きな表示スクリーンのサブポーション上に形成されたウインドウに於ける表示を含む、他の種類の表示に於いて動作可能である。   Of course, in other embodiments, some of the features of the invention illustrated in FIGS. 191 through 228 may include other types of computer devices or desktop computers, laptop computers, wrist-mounted computers. It can operate in other types of displays, including head mounted displays and displays in windows formed on subportions of larger display screens.

また、他の実施形態に於いて、他の解像度を表示スクリーンに対して使用可能であり、様々なウインドウのサイズに対して使用可能である。   Also, in other embodiments, other resolutions can be used for the display screen and can be used for various window sizes.

当然のことながら、前述の記載及び図面は、説明及び図解を行うためだけに使用されるものであり、本発明は添付の特許請求の解釈がそのように限定されている場合を除いて、それに限定されるものではない。情報開示を有する当業者は、本発明の範囲を逸脱することなく、そこに修正及び変形を加えることが出来る。   It should be understood that the foregoing description and drawings are used for illustration and illustration only, and that the invention is not to be construed unless the interpretation of the appended claims is so limited. It is not limited. Those skilled in the art having the disclosure of information can make modifications and variations therein without departing from the scope of the invention.

広く特許請求されているように、本出願の発明に関する多くの特徴は、任意の1種類のオペレーティングシステム、コンピュータハードウェア、又は、コンピュータネットワークでの使用に限定されず、それ故、本発明の他の実施形態は、異なるソフトウェア及びハードウェアシステムを使用することが出来る。   As broadly claimed, many features relating to the invention of this application are not limited to use with any one type of operating system, computer hardware, or computer network; The embodiments can use different software and hardware systems.

さらに、当然のことながら、実質的に異なる構成又は手順を用いて、多くの異なるプログラム及びデータ構造によって、以下の特許請求の範囲に記載された関数を実行することが出来る。これは、プログラムというものが、どんな複雑な所定の発想も当業者に理解された時点で、実質的に無制限の方法で表現することが出来る極端に柔軟な技術だからである。このように、特許請求の範囲は図面に記載された正確なステップ、及び/又は、ステップの順番に限定されることを意味していない。このことが特に当てはまるのは、不必要に詳細を提示することでユーザに負担をかけることなく、本発明を実施するために、当業者が知る必要のある事項をより効果的に伝達させるために、上記のテキストに記載された擬似コードが高度に簡略化されたからである。そうした簡略化のために、上述した擬似コードの構造は、多くの場合、本発明を実施する際に当業者のプログラマーが使用する実際のコードの構造とは相当異なる。さらに、明細書中のソフトウェアで実行されることが示されたプログラム化した動作の多くを、他の実施形態に於けるハードウェアで実行することが出来る。   Further, it should be understood that the functions recited in the following claims can be performed by a number of different programs and data structures using substantially different configurations or procedures. This is because a program is an extremely flexible technique that can be expressed in a virtually unlimited way once any complex predetermined idea is understood by those skilled in the art. Thus, the claims are not meant to be limited to the exact steps and / or order of steps described in the drawings. This is especially true in order to more effectively communicate what needs to be known by those skilled in the art to implement the present invention without burdening the user by unnecessarily providing details. This is because the pseudo code described in the above text is highly simplified. For such simplification, the pseudo code structure described above is often quite different from the actual code structure used by programmers skilled in the art in practicing the present invention. Furthermore, many of the programmed operations shown to be performed with software in the specification can be performed with hardware in other embodiments.

上記で議論した本発明の特徴に関する多くの実施形態に於いて、本発明のそうした特徴に関する他の実施形態に於いて別々に生じる可能性のある本発明の様々な特徴は、同時に発生することが示されている。   In many embodiments relating to the features of the invention discussed above, various features of the invention that may occur separately in other embodiments relating to those features of the invention may occur simultaneously. It is shown.

本明細書の様々な部分に於いて記載されたサブピクセル最適化及び非線形カラーバランスに関する様々な図面の殆どは、垂直方向のサブピクセルストライピングを有するRGBサブピクセルアドレス可能表示に関する。当然のことながら、非線形カラーバランス及びサブピクセル最適化に関連する本発明の多くの特徴を、水平方向のサブピクセルストライピングを有するサブピクセル表示と同様に、BGR又は他の種類のサブピクセルアドレス可能性を有するサブピクセル表示を用いて使用することが出来る。   Most of the various drawings relating to subpixel optimization and non-linear color balance described in various parts of this specification relate to RGB subpixel addressable displays with vertical subpixel striping. Of course, many features of the present invention related to non-linear color balance and sub-pixel optimization, such as BGR or other types of sub-pixel addressability, as well as sub-pixel displays with horizontal sub-pixel striping. Can be used with subpixel displays.

上記で示した非線形カラーバランス法に於いて、カラーバランスによって分配されたサブピクセルの輝度の部分のみが、ピクセル内の最小サブピクセル輝度値よりも高い部分である。しかし、他の実施形態に於いては、例えば、ピクセルの平均サブピクセル輝度、又は、最大サブピクセル輝度とは異なる部分など、ピクセル内でカラーアンバランスを引き起こすサブピクセルの輝度の他の部分を分配することが出来る。そうした実施形態に於いて、実際に、平均値又は最大値よりも低いサブピクセル輝度は、そうしたサブピクセルの近傍に於いてサブピクセル輝度の重み付けられた減少で分配可能な負の輝度値となる。   In the non-linear color balance method shown above, only the luminance portion of the sub-pixel distributed by the color balance is a portion higher than the minimum sub-pixel luminance value in the pixel. However, in other embodiments, other parts of the sub-pixel brightness that cause color imbalance within the pixel, such as, for example, the average sub-pixel brightness of the pixel or a part that differs from the maximum sub-pixel brightness are distributed. I can do it. In such embodiments, in fact, subpixel luminances below the average or maximum value result in negative luminance values that can be distributed with a weighted decrease in subpixel luminance in the vicinity of such subpixels.

上記に図示した全ての非線形カラーバランス法は、ピクセルに対応するサブピクセル内でカラーアンバランスを引き起こすサブピクセルの輝度の部分を分配するだけである。これが実行されるのは、全ピクセル内で一般的に発見される3つの連続するRGB又はBGRサブピクセルの配列が、知覚的に良好にカラーバランスされているからである。そうした全ピクセルのサブピクセルが等しい輝度である場合、緑色が中央の色ではない順番で、同一強度で表示された同一の3色のサブピクセルの分離したセットに比して、表面上、より色のバランスが取れているように見える傾向がある。これが、全ピクセル境界以外で現れるフォントの端部がカラーアンバランスしているように見える理由の1つなのである。   All the non-linear color balance methods illustrated above only distribute the portion of the subpixel luminance that causes color imbalance within the subpixel corresponding to the pixel. This is done because the array of three consecutive RGB or BGR subpixels commonly found within all pixels is perceptually well color balanced. If all such sub-pixels are of equal brightness, the surface is more colored on the surface compared to a separate set of the same three-color sub-pixels displayed at the same intensity in the order that the green is not the central color. Tend to seem to be balanced. This is one of the reasons why the edges of fonts that appear outside of all pixel boundaries appear to be color unbalanced.

しかし、他の非線形カラーバランスに関する実施形態を、個々の全ピクセル内でカラーアンバランスを引き起こすサブピクセル輝度を分配することだけに制限する必要はない。他の非線形カラーバランスに関する実施形態は、全ピクセル以外の領域内でのサブピクセルカラーアンバランスの割合を決定し、全体的又は部分的にアンバランスに基づいたサブピクセル輝度値をそうした領域に分配することが出来る。例えば、一般的に生じる複数のアンバランスパターンのそれぞれに対して、カラーバランスの知覚を維持しながら、アンバランスカバレッジ値のどの分配が最小の空間拡散を生成したかを発見するための研究を行うことができ、全ピクセル領域以外の空間領域で発生するカラーアンバランスを分配するために、そうした知覚的に選択された分配を使用することが出来る。   However, other non-linear color balance embodiments need not be limited to only distributing sub-pixel brightness that causes color imbalance within all individual pixels. Other non-linear color balance embodiments determine the percentage of sub-pixel color imbalance in regions other than all pixels and distribute sub-pixel luminance values based on imbalance in whole or in part to such regions. I can do it. For example, for each of the multiple unbalance patterns that commonly occur, conduct research to discover which distribution of unbalance coverage values produced the smallest spatial spread while maintaining color balance perception Such perceptually selected distributions can be used to distribute color imbalances that occur in spatial regions other than the full pixel region.

本発明のある特徴は、ラインカバレッジ技術によって、個々のピクセルに対して輝度値を計算するサブピクセル最適化画像の生成及び使用に関する。当然のことながら、下記に特許請求された本発明に関する他の特徴は、そうしたラインカバレッジ関数、又は、エリアカバレッジ関数に関する特定の詳述なしに、サブピクセル輝度を決定するそうした方法に限定されるものではなく、例えば、領域サンプリング技術を含むがこれに限定されないカラービットマップ、グレースケールビットマップ、フォント、及び、他の形状で構成されるソース画像を用いてカバレッジ値を決定するための他の周知の方法を使用することが出来る。   One aspect of the invention relates to the generation and use of sub-pixel optimized images that calculate luminance values for individual pixels by line coverage techniques. Of course, other features of the invention claimed below are limited to such methods of determining sub-pixel brightness without specific details regarding such line coverage functions or area coverage functions. Rather, for example, other well known for determining coverage values using source images composed of color bitmaps, grayscale bitmaps, fonts, and other shapes, including but not limited to region sampling techniques Can be used.

上記議論では、サブピクセル最適化ビットマップに於ける輝度値又はカバレッジ値を割り当てるために使用されるソース画像ウインドウは矩形であり、多色サブピクセル最適化画像に於ける全ピクセルに一致するサイズ、及び、2色サブピクセル最適化画像に於いてサブピクセルに一致するサイズを有する。他の実施形態に於いては、異なる形状及びサイズのウインドウを使用することが出来る。例えば、多色サブピクセル最適化画像に於いて、ソース画像ウインドウは、全出力画像ピクセルに一致するサイズに比して幾分小さなサイズを有しても良い。幾つかの実施形態に於いて、ソース画像ウインドウに於けるカバレッジ値又は輝度値を出力画像に於けるカバレッジ値又は輝度値に変換するために、不規則な重み付け関数を使用することが出来る。例えば、多色サブピクセル最適化画像に於いて、サイズ及び位置が、輝度を決定しているサブピクセルに一致するソース画像ウインドウの部分に於ける輝度に対して、より重み付けをすることが好ましい。事実、図17乃至19に関して議論されたラインカバレッジ配置は、そうした中央重み付けを提供しているが、これは、ラインカバレッジ値を決定しようとしているサブピクセルの位置に一致するソース画像ウインドウの部分を通じてのみ、垂直線が延びているからである。   In the above discussion, the source image window used to assign luminance or coverage values in the subpixel optimized bitmap is rectangular and has a size that matches all pixels in the multicolor subpixel optimized image, And a size that matches the sub-pixel in the two-color sub-pixel optimized image. In other embodiments, windows of different shapes and sizes can be used. For example, in a multicolor subpixel optimized image, the source image window may have a size that is somewhat smaller than the size that matches all output image pixels. In some embodiments, an irregular weighting function can be used to convert a coverage value or luminance value in the source image window to a coverage value or luminance value in the output image. For example, in a multicolor subpixel optimized image, it is preferable to weight more for the luminance in the portion of the source image window whose size and position matches the subpixel that is determining the luminance. In fact, the line coverage arrangement discussed with respect to FIGS. 17-19 provides such central weighting, but only through the portion of the source image window that matches the position of the subpixel for which the line coverage value is being determined. This is because the vertical line extends.

本発明の幾つかの特徴は、サブピクセル最適化の使用に明確に関連しているが、多くの他の特徴は、サブピクセル最適化に依存していない。本発明の幾つかのそうした特徴に於いては、サブピクセル最適化を含まないアンチエイリアスの形式を使用することが出来る。サブピクセル最適化を含まないアンチエイリアスの形式によって、そうしたアンチエイリアスを使用せずに提供可能な解像度に比して、画像がより高度な解像度を有しているように見せることが出来る。これは、特にフォント画像の場合に当てはまる。例えば、適切なサブピクセル最適化によって、小型フォントはより読み易くなるが、フォントが適切な形状を有し、適切にヒンティングされ、サブピクセル最適化と共に、又は、サブピクセル最適化を用いずにアンチエイリアスを使用した場合、7ピクセル/emと同程度に小さなフォントを比較的容易に読み取ることが可能である。   While some features of the present invention are clearly related to the use of subpixel optimization, many other features are not dependent on subpixel optimization. In some such features of the invention, an anti-aliasing form that does not involve sub-pixel optimization can be used. A form of anti-aliasing that does not include sub-pixel optimization can make the image appear to have a higher resolution than can be provided without using such anti-aliasing. This is especially true for font images. For example, proper subpixel optimization makes small fonts easier to read, but the font has the right shape and is properly hinted, with or without subpixel optimization When anti-aliasing is used, a font as small as 7 pixels / em can be read relatively easily.

本明細書、及び、付随する特許請求の範囲に於いて、「スクリーン」、特に、縮小された画像、テキスト、又は、ウェブページレイアウトが表示されるスクリーンについて言及することによって、一般には、例えばスクリーン上のグラフィックウインドウなど、スクリーン全体又はスクリーンの一部の何れかを含むことが出来る。例えば、参照される縮小スクリーン画像を、かなり大きなスクリーン上のウインドウに於いて表示しても良いし、例えば図114に図示されたツールバーのように、特定のグラフィカルユーザインターフェース(GUI)要素にスペースが設けられた後に残される小型スクリーンの一部に表示しても良い。また、当然のことながら、例えば大型スクリーンによって、非サブピクセル最適化技術を用いて可能となる、より高度な空間解像度でコンテンツを見ることが出来るように、大型スクリーンの全て又はかなりの部分を越えて、画像及び/又はテキストを表示するために、本発明の特定のサブピクセル最適化の特徴を使用することが出来る。   In this specification and the appended claims, by referring to a “screen”, particularly a screen on which a reduced image, text, or web page layout is displayed, in general, for example, a screen. It can include either the entire screen or a portion of the screen, such as the graphic window above. For example, the referenced reduced screen image may be displayed in a fairly large on-screen window, or there may be space in certain graphical user interface (GUI) elements, such as the toolbar illustrated in FIG. You may display on a part of small screen left after providing. Also, of course, beyond all or a significant portion of the large screen, so that the content can be viewed at a higher spatial resolution, eg, enabled by a large screen, using non-subpixel optimization techniques. Thus, certain sub-pixel optimization features of the present invention can be used to display images and / or text.

特に、比較的低解像度のスクリーンを備えたシステム上で、ウェブブラウズ、及び/又は、他の種類のコンピュータで作成されたコンテンツの表示を向上させるための本発明に係る幾つかの特徴に従って使用される処理を示す図。In particular, used in accordance with several features of the present invention to enhance web browsing and / or other types of computer generated content display on systems with relatively low resolution screens. FIG. ポータブルブラウザ、プロキシサーバ、ウェブサーバ、及び、フォントサーバを有する、本発明が実行可能なネットワークコンピューティング環境を示す図。1 illustrates a network computing environment in which the present invention can be implemented having a portable browser, a proxy server, a web server, and a font server. ブラウザ、及び、ウェブサーバを有する、本発明が実行可能な代替ネットワークコンピューティング環境を示す図。1 illustrates an alternative network computing environment in which the present invention can be implemented having a browser and a web server. FIG. ブラウザ、及び、ウェブサーバを有する、本発明が実行可能な第2代替ネットワークコンピューティング環境を示す図。FIG. 4 illustrates a second alternative network computing environment in which the present invention can be implemented having a browser and a web server. ブラウザ、及び、ウェブサーバを有する、本発明が実行可能な第3代替ネットワークコンピューティング環境を示す図。FIG. 6 illustrates a third alternative network computing environment in which the present invention can be implemented having a browser and a web server. 表示される標準的なウェブコンテンツと、そのコンテンツを拡大/縮小、及び/又は、サブピクセル最適化するための処理を含むブラウザ機能と、を有する本発明が実行可能なコンピュータシステムを示す図。1 is a diagram illustrating a computer system in which the present invention can be implemented having standard web content to be displayed and browser functionality including processing for scaling the content and / or sub-pixel optimization. FIG. 表示されるコンテンツ、そのコンテンツを拡大/縮小、及び/又は、サブピクセル最適化するためのプロキシ処理、及び、ブラウザ機能を有する、本発明が実行可能な代替コンピュータシステムを示す図。The figure which shows the alternative computer system which can perform this invention which has the proxy processing for the content to be displayed, the expansion / contraction of the content, and / or subpixel optimization, and a browser function. 以前に拡大/縮小、及び/又は、サブピクセル最適化されたコンテンツを有する本発明が実行可能な第2代替コンピュータシステムを示す図。FIG. 5 shows a second alternative computer system in which the present invention with previously scaled and / or sub-pixel optimized content can be implemented. 従来の垂直ストライプ型RGB液晶表示装置を示す図。The figure which shows the conventional vertical stripe type | mold RGB liquid crystal display device. 図1のステップ108及び112のそれぞれに関して参照された、画像及びテキストの両方に関するサブピクセル最適化の実行に含まれる本発明の幾つかの特徴を示す図。FIG. 2 illustrates some features of the present invention involved in performing subpixel optimization for both images and text, referenced with respect to each of steps 108 and 112 of FIG. 320×240カラーディスプレイ上に標準的なウェブコンテンツを表示する際に、本発明に関する現在の実施形態によって提供される可読性のレベルを示す図。FIG. 6 illustrates the level of readability provided by the current embodiment of the present invention when displaying standard web content on a 320 × 240 color display. より高解像度のソースビットマップ画像102の一部にわたって行われるピクセルとサブピクセルグリッドのマッピングを示す図。FIG. 6 shows pixel and sub-pixel grid mapping performed over a portion of a higher resolution source bitmap image 102. 図12のマッピンググリッドの一部分に関する拡大図。FIG. 13 is an enlarged view of a part of the mapping grid of FIG. 12. 低解像度の表示装置の赤色(R)サブピクセルの輝度を算出するために用いられるソース画像上のウインドウの位置決めを示す図。FIG. 6 shows the positioning of a window on a source image used to calculate the luminance of a red (R) subpixel of a low resolution display device. 低解像度の表示装置の緑色(G)サブピクセルの輝度を算出するために用いられるそうしたウインドウの位置決めを示す図。FIG. 4 shows the positioning of such a window used to calculate the brightness of the green (G) subpixel of a low resolution display device. 低解像度の表示装置の青色(B)サブピクセルの輝度を算出するために用いられるそうしたウインドウの位置決めを示す図。FIG. 6 shows the positioning of such a window used to calculate the luminance of the blue (B) subpixel of a low resolution display device. 一つ又は複数の異なる色のピクセルによって覆われた、より高解像度のソース画像に於いて、赤色ピクセルの関連ウインドウの一部を推定することによって、比較的低解像度を有する表示装置上の赤色サブピクセルに関するサブピクセル輝度を算出するためのスキャンラインカバレッジ法で使用されるスキャンラインを説明する図。In a higher resolution source image covered by one or more different color pixels, a red sub-pixel on a display device having a relatively low resolution is estimated by estimating a portion of the associated window of red pixels. The figure explaining the scan line used with the scan line coverage method for calculating the sub pixel brightness | luminance regarding a pixel. 図17に図示された低解像度表示装置の緑色(G)サブピクセルの輝度を算出するために使用される類似のスキャンラインを示す図。FIG. 18 illustrates a similar scan line used to calculate the luminance of the green (G) subpixel of the low resolution display device illustrated in FIG. 17. 図17及び18に図示された低解像度表示装置の青色(B)副画素の輝度を算出するために使用される類似のスキャンラインを示す図。FIG. 19 shows a similar scan line used to calculate the luminance of the blue (B) subpixel of the low resolution display device shown in FIGS. 17 and 18. 単純比較の為に図21及び22と同一シート上に示された図17を繰り返す図。The figure which repeats FIG. 17 shown on the same sheet | seat as FIG. 21 and 22 for a simple comparison. 赤色ピクセルのソース画像ウインドウ内に於いて、異なるソース画像ピクセルで覆われた、図20に図示された水平スキャンラインの複数部分を示す図。FIG. 21 illustrates portions of the horizontal scan line illustrated in FIG. 20 covered with different source image pixels within a red pixel source image window. 赤色ピクセルのソース画像ウインドウ内に於いて、異なるソース画像ピクセルで覆われた、図20に図示された垂直スキャンラインの複数部分を示す図。FIG. 21 illustrates portions of the vertical scan line illustrated in FIG. 20 covered with different source image pixels in a red pixel source image window. 図18と同一であり、単純比較の為に図24及び25と同一シート上に示された図。FIG. 26 is the same as FIG. 18 and is shown on the same sheet as FIGS. 24 and 25 for simple comparison. 緑色ピクセルのソース画像ウインドウ内に於いて、異なるソース画像ピクセルで覆われた、図23に図示された水平スキャンラインの複数部分を示す図。FIG. 24 illustrates portions of the horizontal scan line illustrated in FIG. 23 covered with different source image pixels in a green pixel source image window. 緑色ピクセルのソース画像ウインドウ内に於いて、異なるソース画像ピクセルで覆われた、図23に図示された垂直スキャンラインの複数部分を示す図。FIG. 24 illustrates portions of the vertical scan line illustrated in FIG. 23 covered with different source image pixels within a green pixel source image window. 図19と同一であり、単純比較の為に図27及び28と同一シート上に示された図。FIG. 28 is the same as FIG. 19 and is shown on the same sheet as FIGS. 27 and 28 for simple comparison. 青色ピクセルのソース画像ウインドウ内に於いて、異なるソース画像ピクセルで覆われた、図26に図示された水平スキャンラインの複数部分を示す図。FIG. 27 illustrates portions of the horizontal scan line illustrated in FIG. 26 covered with different source image pixels within a blue pixel source image window. 青色ピクセルのソース画像ウインドウ内に於いて、異なるソース画像ピクセルで覆われた、図26に図示された垂直スキャンラインの複数部分を示す図。FIG. 27 illustrates portions of the vertical scan line illustrated in FIG. 26 covered with different source image pixels within a blue pixel source image window. 例えば、図17乃至図28に関して説明したラインカバレッジ値等のラインカバレッジ値に基づいてサブピクセル輝度値を算出する、サブピクセル最適化方法に関する高度に簡略化された擬似コード記述を示す図。For example, a highly simplified pseudocode description for a subpixel optimization method that calculates subpixel luminance values based on line coverage values such as the line coverage values described with respect to FIGS. サブピクセル最適化され、拡大/縮小された画像に於いてピクセルの色を算出するための「ラインカバレッジ」法に関する代替実施形態に於いて、2本の水平スキャンライン及び2本の垂直スキャンラインをどのように使用することが出来るかを示す図。In an alternative embodiment for a “line coverage” method for calculating pixel color in a sub-pixel optimized and scaled image, two horizontal scan lines and two vertical scan lines are used. The figure which shows how it can be used. サブピクセル最適化され、拡大/縮小された画像に於いてピクセルの色を算出するための「ラインカバレッジ」法に関する代替実施形態に於いて、2本の対角スキャンラインをどのように使用することが出来るかを示す図。How to use two diagonal scanlines in an alternative embodiment for a "line coverage" method for calculating pixel color in sub-pixel optimized and scaled images The figure which shows whether it can do. サブピクセル最適化された画像に於いて画素の色を算出するための「ラインカバレッジ」法に関する代替実施形態に於いて、2本の対角スキャンライン、1本の水平スキャンライン、及び、1本の垂直スキャンラインの組み合わせをどのように使用することが出来るかを示す図。In an alternative embodiment for a “line coverage” method for calculating pixel color in a sub-pixel optimized image, two diagonal scan lines, one horizontal scan line, and one The figure which shows how the combination of the vertical scan line of can be used. 2分の1水平及び垂直スケーリングに於いて、2本の水平カバレッジラインに対するラインカバレッジを示す図。The figure which shows the line coverage with respect to two horizontal coverage lines in a half horizontal and vertical scaling. 図33に図示された2分の1水平及び垂直スケーリングに於いて、2本の垂直カバレッジラインに対するラインカバレッジを示す図。FIG. 34 is a diagram illustrating line coverage for two vertical coverage lines in the half horizontal and vertical scaling illustrated in FIG. 33. 約5分の2水平及び垂直スケーリングに於いて、2本の水平カバレッジラインに対するラインカバレッジを示す図。The figure which shows the line coverage with respect to two horizontal coverage lines in about 2/5 horizontal and vertical scaling. 図35に図示された約5分の2水平及び垂直スケーリングに於いて、2本の垂直カバレッジラインに対するラインカバレッジを示す図。FIG. 36 is a diagram illustrating line coverage for two vertical coverage lines in about two-fifth horizontal and vertical scaling illustrated in FIG. 約3分の2水平及び垂直スケーリングに於いて、2本の水平カバレッジラインに対するラインカバレッジを示す図。The figure which shows the line coverage with respect to two horizontal coverage lines in about 2/3 horizontal and vertical scaling. 図37に図示された約3分の2水平及び垂直スケーリングに於いて、2本の垂直カバレッジラインに対するラインカバレッジを示す図。FIG. 38 is a diagram illustrating line coverage for two vertical coverage lines in about two-thirds horizontal and vertical scaling illustrated in FIG. サブピクセル最適化され、拡大/縮小された画像の色値を算出するための「エリアカバレッジ」法で使用されるソース画像ピクセルウインドウを示す図。FIG. 6 shows a source image pixel window used in an “area coverage” method for calculating color values of a sub-pixel optimized and scaled image. 一つのそうした「エリアカバレッジ」法に従って、サブピクセルの輝度値を算出するために使用されるソース画像ウインドウ内に於いて、異なるソース画像ピクセルの領域を示すために異なるハッチングを使用している点を除いて、図39に類似する図。According to one such “area coverage” method, in the source image window that is used to calculate the luminance value of the sub-pixel, it uses different hatching to indicate areas of different source image pixels. FIG. 40 is similar to FIG. 39 except for FIG. 例えば、図39及び図40に関して議論されたエリアカバレッジ値に基づいてサブピクセル輝度値を算出する、サブピクセル最適化法に関する高度に簡略化された擬似コード記述を示す図。FIG. 41 illustrates a highly simplified pseudocode description for a subpixel optimization method that calculates subpixel luminance values based on, for example, the area coverage values discussed with respect to FIGS. 39 and 40. 赤色サブピクセルに輝度値を関連付けるために、ビットマップ画像に関する拡大/縮小された2色サブピクセル最適化画像の生成に於いて使用可能な、ソース画像ウインドウ、及び、関連付けられたスキャンラインを図示する図。Figure 8 illustrates a source image window and associated scan lines that can be used in generating a scaled two-color subpixel optimized image for a bitmap image to associate a luminance value with a red subpixel. Figure. 緑色サブピクセルに輝度値を関連付けるために、ビットマップ画像に関する拡大/縮小された2色サブピクセル最適化画像の生成に於いて使用可能な、ソース画像ウインドウ、及び、関連付けられたスキャンラインを図示する図。FIG. 6 illustrates a source image window and associated scan lines that can be used in generating a scaled two-color sub-pixel optimized image for a bitmap image to associate a luminance value with a green sub-pixel. Figure. 青色サブピクセルに輝度値を関連付けるために、ビットマップ画像に関する拡大/縮小された2色サブピクセル最適化画像の生成に於いて使用可能な、ソース画像ウインドウ、及び、関連付けられたスキャンラインを図示する図。Figure 8 illustrates a source image window and associated scan lines that can be used in generating a scaled two-color subpixel optimized image for a bitmap image to associate a luminance value with a blue subpixel. Figure. RGBサブピクセル表示グリッドの一部に関連付けられた、一連のソース画像グレースケールピクセルの輝度を図示する図。FIG. 6 illustrates the brightness of a series of source image grayscale pixels associated with a portion of an RGB subpixel display grid. 図45に図示された個別のサブピクセルに関連する輝度が、従来の線形フィルタリング法でどのように分配されるかを示す図。FIG. 46 illustrates how the luminance associated with the individual subpixels illustrated in FIG. 45 is distributed with a conventional linear filtering method. 1ピクセル行に於ける複数のサブピクセルに適用されている図46に図示された従来の線形フィルタリング法の結果によって生じるサブピクセル輝度値を図示する図。FIG. 47 is a diagram illustrating subpixel luminance values resulting from the conventional linear filtering method illustrated in FIG. 46 applied to multiple subpixels in a pixel row. 非線形フィルタリング下での、最小サブピクセル輝度値の分配を示す図。FIG. 6 shows the distribution of minimum subpixel luminance values under non-linear filtering. 図48に図示された非線形フィルタリング法下での、超過輝度値の分配を示す図。FIG. 49 is a diagram illustrating distribution of excess luminance values under the nonlinear filtering method illustrated in FIG. 48. 元のソースピクセル輝度と、線形及び非線形フィルタリング法の結果とを比較する図。FIG. 3 compares the original source pixel brightness with the results of linear and nonlinear filtering methods. 元のソースピクセル輝度と、線形及び非線形フィルタリング法の結果とを比較する図。FIG. 3 compares the original source pixel brightness with the results of linear and nonlinear filtering methods. 元のソースピクセル輝度と、線形及び非線形フィルタリング法の結果とを比較する図。FIG. 3 compares the original source pixel brightness with the results of linear and nonlinear filtering methods. 2色ビットマップのサブピクセル最適化された表現を作成するためのソフトウェアの方法に関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description of a software method for creating a sub-pixel optimized representation of a two-color bitmap. ユーザが色と位置的な解像度を動的にトレードオフ可能な処理に関するフローチャート。The flowchart regarding the process in which a user can trade off color and positional resolution dynamically. アウトラインフォント記述により定義された文字フォント形状と、サブピクセルでアドレス可能なディスプレイ上に形状を表現するために使用されるサブピクセルを有するピクセル配列との間のマッピングを示す図。FIG. 4 shows a mapping between a character font shape defined by an outline font description and a pixel array with subpixels used to represent the shape on a display that is addressable with subpixels. 本発明の一実施形態で作成されたウェブページの320×240スクリーンに関するスクリーンショット。4 is a screen shot of a 320 × 240 screen of a web page created in one embodiment of the present invention. 図56に図示されたスクリーンショットの2倍拡大図。FIG. 57 is a double enlarged view of the screen shot shown in FIG. 56. コンピュータが如何にしてフォントビットマップ、又は、フォントサーバからのフォントアウトラインにアクセスすることが可能かを示す図。FIG. 4 shows how a computer can access a font bitmap or a font outline from a font server. コンピュータが如何にしてフォントビットマップ、又は、コンピュータ内に蓄積したフォントアウトラインにアクセスすることが可能かを示す図。FIG. 4 is a diagram showing how a computer can access a font bitmap or a font outline stored in the computer. 図48乃至図52に記載された種類の非線形カラーバランスを使用する文字フォント形状のサブピクセル最適化ビットマップを算出するためのアルゴリズムに関する高度に簡略化した擬似コード表現。A highly simplified pseudo-code representation for an algorithm for calculating a sub-pixel optimized bitmap of a character font shape using a non-linear color balance of the type described in FIGS. 例えば図55に図示されたピクセル配列に関する個々のピクセルの3つのサブピクセルの各々に対してカバレッジ値を決定するために使用される、例えば図55に図示された文字フォント形状画像におけるソース画像ウインドウのサイズを示す図。For example, the source image window in the character font shape image shown in FIG. 55, for example, used to determine the coverage value for each of the three sub-pixels of the individual pixels for the pixel array shown in FIG. The figure which shows size. 例えば図55に図示されたピクセル配列に関する個々のピクセルの3つのサブピクセルの各々に対してカバレッジ値を決定するために使用される、例えば図55に図示された文字フォント形状画像におけるソース画像ウインドウのサイズを示す図。For example, the source image window in the character font shape image shown in FIG. 55, for example, used to determine the coverage value for each of the three sub-pixels of the individual pixels for the pixel array shown in FIG. The figure which shows size. 例えば図55に図示されたピクセル配列に関する個々のピクセルの3つのサブピクセルの各々に対してカバレッジ値を決定するために使用される、例えば図55に図示された文字フォント形状画像におけるソース画像ウインドウのサイズを示す図。For example, the source image window in the character font shape image shown in FIG. 55, for example, used to determine the coverage value for each of the three sub-pixels of the individual pixels for the pixel array shown in FIG. The figure which shows size. 非スクエアラスタ化ユニット(通常、従来技術に於ける全ピクセル)に対するカバレッジ値を算出するために使用されている幾つかの従来技術を示す図。FIG. 3 shows some prior art techniques used to calculate coverage values for non-square rasterized units (usually all pixels in the prior art). 非スクエアラスタ化ユニット(通常、従来技術に於ける全ピクセル)に対するカバレッジ値を算出するために使用されている幾つかの従来技術を示す図。FIG. 3 shows some prior art techniques used to calculate coverage values for non-square rasterized units (usually all pixels in the prior art). 非スクエアラスタ化ユニット(通常、従来技術に於ける全ピクセル)に対するカバレッジ値を算出するために使用されている幾つかの従来技術を示す図。FIG. 3 shows some prior art techniques used to calculate coverage values for non-square rasterized units (usually all pixels in the prior art). 非スクエアラスタ化ユニット(通常、従来技術に於ける全ピクセル)に対するカバレッジ値を算出するために使用されている幾つかの従来技術を示す図。FIG. 3 shows some prior art techniques used to calculate coverage values for non-square rasterized units (usually all pixels in the prior art). サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. サブピクセルに対するカバレッジ値を算出するための本発明に関する幾つかの実施形態で使用される加重ラインカバレッジ値を使用する、ラスタ化ユニットのカバレッジ値を算出するためのコンピュータを利用した効率的な方法を示す図。An efficient computer-based method for calculating the coverage value of a rasterization unit using the weighted line coverage value used in some embodiments of the present invention for calculating the coverage value for a subpixel. FIG. 図68乃至図87に関して上述した一般的な種類の加重ラインカバレッジアルゴリズムを用いて使用可能なカバレッジラインに関する他の配置の幾つかを示す図。FIG. 88 illustrates some of the other arrangements for coverage lines that can be used with the general type of weighted line coverage algorithm described above with respect to FIGS. 図68乃至図87に関して上述した一般的な種類の加重ラインカバレッジアルゴリズムを用いて使用可能なカバレッジラインに関する他の配置の幾つかを示す図。FIG. 88 illustrates some of the other arrangements for coverage lines that can be used with the general type of weighted line coverage algorithm described above with respect to FIGS. 図68乃至図87に関して上述した一般的な種類の加重ラインカバレッジアルゴリズムを用いて使用可能なカバレッジラインに関する他の配置の幾つかを示す図。FIG. 88 illustrates some of the other arrangements for coverage lines that can be used with the general type of weighted line coverage algorithm described above with respect to FIGS. 仮想フォントアウトラインの一部の画像へのピクセル配置及び各サブピクセルのマッピングを示す図。The figure which shows the pixel arrangement | positioning to the one part image of a virtual font outline, and the mapping of each sub pixel. 図91に図示された配列のサブピクセルに対して計算されている、対応するカバレッジ値を示す図。FIG. 92 is a diagram illustrating corresponding coverage values calculated for the sub-pixels in the array illustrated in FIG. 91. 図46に対応しており、図46のように、従来技術の線形カラーバランス法が、所定のピクセル行内に於ける一連の隣接するサブピクセルに対して、個々のサブピクセルのカバレッジ値の全てを如何にして分配するかを示す図。Corresponding to FIG. 46, as shown in FIG. 46, the prior art linear color balance method calculates all of the individual subpixel coverage values for a series of adjacent subpixels within a given pixel row. The figure which shows how to distribute. 図60に関して記載された非線形カラーバランス法を用いて使用可能なカラーバランスフィルタを示す図。FIG. 61 illustrates a color balance filter that can be used using the non-linear color balance method described with respect to FIG. 図60に関して記載された非線形カラーバランス法を用いて使用可能なカラーバランスフィルタを示す図。FIG. 61 illustrates a color balance filter that can be used using the non-linear color balance method described with respect to FIG. 例えば図60に図示された方法によって、フォントビットマップに対して算出された全ピクセルのアルファ値を、そうした全ピクセルのアルファ値のより制限された色空間に表現するために使用可能な、アルゴリズムに関する高度に簡略化された擬似コード記述。For example, an algorithm that can be used to represent the alpha value of all pixels calculated for a font bitmap in the more limited color space of the alpha value of all pixels by the method illustrated in FIG. Highly simplified pseudo code description. 図60及び図96に図示された方法の組み合わせによって作成されたフォントビットマップを使用する、サブピクセルアドレス可能ディスプレイに於いてテキスト文字列を表示するためのアルゴリズムに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description for an algorithm for displaying text strings in a subpixel addressable display using a font bitmap created by a combination of the methods illustrated in FIGS. 60 and 96 . それぞれが異なるウェブページの640×480レイアウトに関するスクリーンショットである図98及び図100と、本発明が320×240スクリーン上にこれら2つのウェブページのそれぞれを如何にして表示可能かを示す図99及び図101を用いて、本発明が320×240スクリーン上にウェブページを如何にして適切に表示可能かを示す図。98 and 100, each of which is a screen shot of a 640 × 480 layout of a different web page, and FIGS. 99 and 99 showing how the present invention can display each of these two web pages on a 320 × 240 screen. FIG. 101 is a diagram showing how the present invention can properly display a web page on a 320 × 240 screen using FIG. 101. それぞれが異なるウェブページの640×480レイアウトに関するスクリーンショットである図98及び図100と、本発明が320×240スクリーン上にこれら2つのウェブページのそれぞれを如何にして表示可能かを示す図99及び図101を用いて、本発明が320×240スクリーン上にウェブページを如何にして適切に表示可能かを示す図。98 and 100, each of which is a screen shot of a 640 × 480 layout of a different web page, and FIGS. 99 and 99 showing how the present invention can display each of these two web pages on a 320 × 240 screen. FIG. 101 is a diagram showing how the present invention can properly display a web page on a 320 × 240 screen using FIG. 101. それぞれが異なるウェブページの640×480レイアウトに関するスクリーンショットである図98及び図100と、本発明が320×240スクリーン上にこれら2つのウェブページのそれぞれを如何にして表示可能かを示す図99及び図101を用いて、本発明が320×240スクリーン上にウェブページを如何にして適切に表示可能かを示す図。98 and 100, each of which is a screen shot of a 640 × 480 layout of a different web page, and FIGS. 99 and 99 showing how the present invention can display each of these two web pages on a 320 × 240 screen. FIG. 101 is a diagram showing how the present invention can properly display a web page on a 320 × 240 screen using FIG. 101. それぞれが異なるウェブページの640×480レイアウトに関するスクリーンショットである図98及び図100と、本発明が320×240スクリーン上にこれら2つのウェブページのそれぞれを如何にして表示可能かを示す図99及び図101を用いて、本発明が320×240スクリーン上にウェブページを如何にして適切に表示可能かを示す図。98 and 100, each of which is a screen shot of a 640 × 480 layout of a different web page, and FIGS. 99 and 99 showing how the present invention can display each of these two web pages on a 320 × 240 screen. FIG. 101 is a diagram showing how the present invention can properly display a web page on a 320 × 240 screen using FIG. 101. 幾つかのデータ構造と、プロキシサーバ及び薄型クライアントコンピュータによって、薄型クラインアントコンピュータのユーザが縮小され、サブピクセル最適化されたスクリーン上でウェブコンテンツにアクセス可能にするために使用されるプログラムに関する概略ブロック図。Schematic block for several data structures and programs used by proxy servers and thin client computers to reduce the thin client computer user's access to web content on a subpixel optimized screen Figure. 図98及び図99で説明されたウェブページのHTMLコードの一部。Part of the HTML code of the web page described in FIG. 98 and FIG. プロキシサーバと、この例で図99に図示されたウェブページの一部に対応する、プロキシサーバの仮想スクリーン内に収まるレイアウトの一部によって作成されるウェブページのレイアウトを示す図。FIG. 99 is a diagram showing a layout of a web page created by the proxy server and a part of the layout that fits in the virtual screen of the proxy server corresponding to the part of the web page shown in FIG. 99 in this example. 図102に図示されたプロキシサーバ上でのプログラムに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description for the program on the proxy server illustrated in FIG. 図102に図示されたプロキシサーバ上でのプログラムに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description for the program on the proxy server illustrated in FIG. ウェブページの一部に表現をキャプチャし、縮小し、サブピクセル最適化し、薄型クライアントコンピュータにそれをダウンロードするためのプロキシサーバプログラムに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description for a proxy server program to capture, reduce, sub-pixel optimize, and download a representation to a portion of a web page. ウェブページの一部に表現をキャプチャし、縮小し、サブピクセル最適化し、薄型クライアントコンピュータにそれをダウンロードするためのプロキシサーバプログラムに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description for a proxy server program to capture, reduce, sub-pixel optimize, and download a representation to a portion of a web page. ウェブページの一部に表現をキャプチャし、縮小し、サブピクセル最適化し、薄型クライアントコンピュータにそれをダウンロードするためのプロキシサーバプログラムに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description for a proxy server program to capture, reduce, sub-pixel optimize, and download a representation to a portion of a web page. 図106A乃至図106Cのプログラムによってキャプチャされたウェブページの表現を実際にダウンロードするためのプログラムに関する高度に簡略化された疑似コード記述。106. A highly simplified pseudo code description for a program for actually downloading a representation of a web page captured by the program of FIGS. 106A-106C. 図107に於いて説明されたプログラムによって薄型クライアントコンピュータにダウンロードされたデータに関する高度に簡略化された表現。A highly simplified representation of the data downloaded to the thin client computer by the program described in FIG. 図102に図示された薄型クライアントにおけるプログラムに関する高度に簡略化された擬似コードの表現。FIG. 102 is a highly simplified representation of pseudo code for the program in the thin client illustrated in FIG. 図102に図示された薄型クライアントにおけるプログラムに関する高度に簡略化された擬似コードの表現。FIG. 102 is a highly simplified representation of pseudo code for the program in the thin client illustrated in FIG. 図102に図示された薄型クライアントにおけるプログラムに関する高度に簡略化された擬似コードの表現。FIG. 102 is a highly simplified representation of pseudo code for the program in the thin client illustrated in FIG. 図102に図示された薄型クライアントにおけるウェブページの表示上のテキスト入力フィールド上でユーザがクリックした場合、ユーザがテキスト入力フィールドにテキストを入力可能になるポップアップキーボードが如何にして表示されるかを説明する図。Describes how a pop-up keyboard is displayed that allows the user to enter text in the text entry field when the user clicks on the text entry field on the web page display in the thin client illustrated in FIG. To do. 図102に図示された薄型クライアントにおけるウェブページの表示上のテキスト入力フィールド上でユーザがクリックした場合、ユーザがテキスト入力フィールドにテキストを入力可能になるポップアップキーボードが如何にして表示されるかを説明する図。Describes how a pop-up keyboard is displayed that allows the user to enter text in the text entry field when the user clicks on the text entry field on the web page display in the thin client illustrated in FIG. To do. 図102に図示された薄型クライアントにおけるウェブページの表示上のテキスト入力フィールド上でユーザがクリックした場合、ユーザがテキスト入力フィールドにテキストを入力可能になるポップアップキーボードが如何にして表示されるかを説明する図。Describes how a pop-up keyboard is displayed that allows the user to enter text in the text entry field when the user clicks on the text entry field on the web page display in the thin client illustrated in FIG. To do. 所望のウェブページにユーザがアクセス可能なURLを入力するために、同一のポップアップキーボードをユーザがどのように使用することが出来るかを説明する図。The figure explaining how a user can use the same pop-up keyboard in order to input URL which a user can access to a desired web page. グラフィカルユーザインターフェース(GUI)ボタン、及び、URLのテキスト入力フィールドを含む薄型クライアントコンピュータスクリーンの最上部にツールバーを有する、本発明の一実施形態を説明する点以外は、実質的に図13と同一である図。Except for describing an embodiment of the present invention having a toolbar at the top of a thin client computer screen that includes a graphical user interface (GUI) button and a text input field for a URL, it is substantially the same as FIG. A certain figure. ウェブページに関連して、クライアントコンピュータがより迅速にスクロール及びズーム出来るように、ウェブページ全体のレイアウトを保存する本発明の代替実施形態で使用される、プロキシサーバ及び薄型クライアントコンピュータとのそれぞれに於けるプログラムに関する高度に簡略化された疑似コード表現。In each of the proxy server and thin client computer used in an alternative embodiment of the present invention that preserves the layout of the entire web page so that the client computer can scroll and zoom more quickly in relation to the web page. A highly simplified pseudo-code representation of programs ウェブページに関連して、クライアントコンピュータがより迅速にスクロール及びズーム出来るように、ウェブページ全体のレイアウトを保存する本発明の代替実施形態で使用される、プロキシサーバ及び薄型クライアントコンピュータとのそれぞれに於けるプログラムに関する高度に簡略化された疑似コード表現。In each of the proxy server and thin client computer used in an alternative embodiment of the present invention that preserves the layout of the entire web page so that the client computer can scroll and zoom more quickly in relation to the web page. A highly simplified pseudo-code representation of programs 図115及び図116で説明された擬似コードの動作説明に役立てるために使用される概略図。119 is a schematic diagram used to help explain the operation of the pseudo code described in FIGS. 115 and 116; FIG. 本発明によって、ユーザが如何にしてウェブページ又はスクリーンの一部を迅速に選択し、その後、選択された部分にズームすることが可能となるかを説明する図。FIG. 4 illustrates how the present invention allows a user to quickly select a portion of a web page or screen and then zoom to the selected portion. 本発明によって、ユーザが如何にしてウェブページ又はスクリーンの一部を迅速に選択し、その後、選択された部分にズームすることが可能となるかを説明する図。FIG. 4 illustrates how the present invention allows a user to quickly select a portion of a web page or screen and then zoom to the selected portion. 本発明によって、ユーザが如何にしてウェブページ又はスクリーンの一部を迅速に選択し、その後、選択された部分にズームすることが可能となるかを説明する図。FIG. 4 illustrates how the present invention allows a user to quickly select a portion of a web page or screen and then zoom to the selected portion. ユーザがウェブページ又はスクリーンの一部をより正確に視認し、選択可能になる本発明のズームクリックに関する一つの特徴を説明する図。The figure explaining one characteristic regarding the zoom click of this invention which a user can visually recognize a part of a web page or a screen more correctly, and can select. ユーザがウェブページ又はスクリーンの一部をより正確に視認し、選択可能になる本発明のズームクリックに関する一つの特徴を説明する図。The figure explaining one characteristic regarding the zoom click of this invention which a user can visually recognize a part of a web page or a screen more correctly, and can select. ユーザがウェブページ又はスクリーンの一部をより正確に視認し、選択可能になる本発明のズームクリックに関する一つの特徴を説明する図。The figure explaining one characteristic regarding the zoom click of this invention which a user can visually recognize a part of a web page or a screen more correctly, and can select. ユーザがウェブページ又はスクリーンの一部をより正確に視認し、選択可能になる本発明のズームクリックに関する一つの特徴を説明する図。The figure explaining one characteristic regarding the zoom click of this invention which a user can visually recognize a part of a web page or a screen more correctly, and can select. ユーザがウェブページ又はスクリーンの一部をより正確に視認し、選択可能になる本発明のズームクリックに関する一つの特徴を説明する図。The figure explaining one characteristic regarding the zoom click of this invention which a user can visually recognize a part of a web page or a screen more correctly, and can select. ユーザがウェブページ又はスクリーンの一部をより正確に視認し、選択可能になる本発明のズームクリックに関する一つの特徴を説明する図。The figure explaining one characteristic regarding the zoom click of this invention which a user can visually recognize a part of a web page or a screen more correctly, and can select. ユーザがウェブページ又はスクリーンの一部をより正確に視認し、選択可能になる本発明のズームクリックに関する一つの特徴を説明する図。The figure explaining one characteristic regarding the zoom click of this invention which a user can visually recognize a part of a web page or a screen more correctly, and can select. ユーザがウェブページ又はスクリーンの一部をより正確に視認し、選択可能になる本発明のズームクリックに関する一つの特徴を説明する図。The figure explaining one characteristic regarding the zoom click of this invention which a user can visually recognize a part of a web page or a screen more correctly, and can select. ユーザが、大きな倍率で所定のスクリーンを越えてリフローされたテキストを選択可能にするためのプログラムに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description for a program that allows the user to select text that has been reflowed over a given screen at a large magnification. 図129に図示されたテキストのリフロー機能が如何に実行されるかを説明するために使用される図。129 is a diagram used to describe how the text reflow function illustrated in FIG. 129 is performed; FIG. 図129に図示されたテキストのリフロー機能が如何に実行されるかを説明するために使用される図。129 is a diagram used to describe how the text reflow function illustrated in FIG. 129 is performed; FIG. 図129に図示されたテキストのリフロー機能が如何に実行されるかを説明するために使用される図。129 is a diagram used to describe how the text reflow function illustrated in FIG. 129 is performed; FIG. 図129に図示されたテキストのリフロー機能が如何に実行されるかを説明するために使用される図。129 is a diagram used to describe how the text reflow function illustrated in FIG. 129 is performed; FIG. 図129に図示されたテキストのリフロー機能が如何に実行されるかを説明するために使用される図。129 is a diagram used to describe how the text reflow function illustrated in FIG. 129 is performed; FIG. 図129に図示されたテキストのリフロー機能が如何に実行されるかを説明するために使用される図。129 is a diagram used to describe how the text reflow function illustrated in FIG. 129 is performed; FIG. 図129に図示されたテキストのリフロー機能が如何に実行されるかを説明するために使用される図。129 is a diagram used to describe how the text reflow function illustrated in FIG. 129 is performed; FIG. 図129に図示されたテキストのリフロー機能が如何に実行されるかを説明するために使用される図。129 is a diagram used to describe how the text reflow function illustrated in FIG. 129 is performed; FIG. 複数のクライアントコンピュータが共通のフォントサーバ、及び/又は、共通のプロキシサーバにアクセスするために如何にしてプログラムすることが出来るかを説明するために使用される図。FIG. 5 is used to illustrate how multiple client computers can be programmed to access a common font server and / or a common proxy server. 1つ又は複数のフォントサーバ上で使用可能なプログラムに関する高度に簡略化された擬似コード記述。A highly simplified pseudo code description of a program that can be used on one or more font servers. (一つ又は複数のウェブブラウザを有することが出来るが、これに限定されない)アプリケーションによって実行されたリモートコンピュータのオペレーティングシステムに対する割り込み要求によって、縮小され、サブピクセル最適化された方法で、リモートコンピュータ上で実行するこうしたアプリケーションによって描画されるスクリーンをクライアントコンピュータが視認可能にするために、本発明の特定の特徴を如何にして使用することが出来るかを説明する図。On a remote computer in a reduced, sub-pixel optimized manner by an interrupt request to the remote computer's operating system executed by an application (which can include, but is not limited to, one or more web browsers) FIG. 6 illustrates how certain features of the present invention can be used to make a client computer visible to a screen rendered by such an application running on the computer. 所定のコンピュータ上で実行する(一つ又は複数のウェブブラウザを有することが出来るが、これに限定されない)アプリケーションが、所定のコンピュータのスクリーン上でサブピクセル最適化され、縮小されたビューを生成するためにプログラムされていないとしても、そうしたアプリケーションによって実行されたコンピュータのオペレーティングシステムに対する割り込み要求によって、サブピクセル最適化され、縮小されたビューが、そうしたアプリケーションプログラムによって生成されたスクリーン出力を如何にして有することが出来るかを説明する図。An application running on a given computer (which can include, but is not limited to, one or more web browsers) is sub-pixel optimized on a given computer screen to produce a reduced view How can a subpixel-optimized, reduced view have a screen output generated by such an application program due to an interrupt request to the computer's operating system executed by such application, even if not programmed for The figure explaining whether it can do. ポータブル小型スクリーンの薄型クライアントコンピュータが、ローカル、及び/又は、インターネットのワイヤレス通信を介して、ウェブコンテンツ、及び/又は、種々のアプリケーションプログラムのスクリーン出力にアクセス出来るように、本発明に関する特定の特徴を如何にして使用することが出来るかを説明する図。Certain features relating to the present invention enable portable small screen thin client computers to access web content and / or screen output of various application programs via local and / or Internet wireless communications. The figure explaining how it can be used. 本発明に関する幾つかの実施形態において、縦方向で実行するようにプログラムされたオペレーティングシステムを有するコンピュータデバイスを回転させることによって、サブピクセル最適化された出力が如何にして横方向で表示されるのかを説明するために使用される図。In some embodiments relating to the present invention, by rotating a computing device having an operating system programmed to run in the vertical direction, how the sub-pixel optimized output is displayed in the horizontal direction The figure used for explaining. 本発明に関する幾つかの実施形態において、縦方向で実行するようにプログラムされたオペレーティングシステムを有するコンピュータデバイスを回転させることによって、サブピクセル最適化された出力が如何にして横方向で表示されるのかを説明するために使用される図。In some embodiments relating to the present invention, by rotating a computing device having an operating system programmed to run in the vertical direction, how the sub-pixel optimized output is displayed in the horizontal direction The figure used for explaining. サブピクセル最適化の解像度を用いて、単純な形状を描画するために使用されるプログラムに関する、高度に簡略化された擬似コード記述。A highly simplified pseudo-code description for a program used to draw a simple shape with subpixel optimization resolution. コンピュータのスクリーン上にサブピクセル最適化された要素を描画するためにウェブアプレットをどのように使用することが可能かということに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description of how a web applet can be used to draw sub-pixel optimized elements on a computer screen. ロールオーバ画像をどのようにサブピクセル最適化することが出来るかを説明する高度に簡略化されたブロック図。A highly simplified block diagram illustrating how a rollover image can be sub-pixel optimized. GIFFアニメーションをどのようにサブピクセル最適化することが出来るかを説明する高度に簡略化されたブロック図。A highly simplified block diagram illustrating how a GIFF animation can be sub-pixel optimized. 3Dアニメーションをどのようにサブピクセル最適化することが出来るかということに関する高度に簡略化された擬似コード記述。A highly simplified pseudocode description of how 3D animation can be sub-pixel optimized. クライアントコンピュータ上にサブピクセル最適化されたゲーム画像を提供するために、クライアント/サーバゲームシステムをどのように使用することが可能かということに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description of how a client / server game system can be used to provide a sub-pixel optimized game image on a client computer. クライアントコンピュータ上にサブピクセル最適化されたゲーム画像を提供するために、クライアント/サーバゲームシステムをどのように使用することが可能かということに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description of how a client / server game system can be used to provide sub-pixel optimized game images on a client computer. サブピクセル最適化されたディスプレイが、如何にして対応する透過マップを有する画像で構成することが出来るかということに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description of how a subpixel optimized display can be constructed with an image having a corresponding transparency map. キーフレーム間の補間を使用する映像が、どのようにしてサブピクセル最適化することが出来るかということに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description of how video using interpolation between keyframes can be sub-pixel optimized. 表現が全フレームよりも少ない部分へのスクリーン変化を描画することを含む映像を、どのようにしてサブピクセル最適化することが可能かということに関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description of how a sub-pixel can be optimized for an image that includes drawing screen changes to parts where the representation is less than a full frame. ディスプレイウィンドウに関連して移動する画像を表示するための異なる方法に関する高度に簡略化された疑似コード記述。A highly simplified pseudo-code description of different ways to display moving images relative to a display window. ディスプレイウィンドウに関連して移動する画像を表示するための異なる方法に関する高度に簡略化された疑似コード記述。A highly simplified pseudo-code description of different ways to display moving images relative to a display window. 種々の圧縮技術によって表現された映像に対して、サブピクセル最適化を如何にして適用することが出来るかということに関する高度に簡略化された疑似コード表示。A highly simplified pseudo-code representation of how sub-pixel optimization can be applied to video represented by various compression techniques. 種々の圧縮技術によって表現された映像に対して、サブピクセル最適化を如何にして適用することが出来るかということに関する高度に簡略化された疑似コード表示。A highly simplified pseudo-code representation of how sub-pixel optimization can be applied to video represented by various compression techniques. 種々の圧縮技術によって表現された映像に対して、サブピクセル最適化を如何にして適用することが出来るかということに関する高度に簡略化された疑似コード表示。A highly simplified pseudo-code representation of how sub-pixel optimization can be applied to video represented by various compression techniques. サーバコンピュータが、クライアントコンピュータにサブピクセル最適化され、縮小されたビデオをダウンロード可能にするためのプログラムに関する高度に簡略化された擬似コード表記。A highly simplified pseudo-code notation for a program that allows a server computer to download sub-pixel optimized and reduced video to a client computer. クライアントコンピュータ、及び、プロキシコンピュータの両方に於いて、クライアントコンピュータがプロキシコンピュータを介して、他のサーバからの縮小された、サブピクセル最適化された映像にアクセス可能になるプログラムに関する高度に簡略化された擬似コード表記。Highly simplified for programs that allow client computers and proxy computers to access reduced, sub-pixel optimized video from other servers via proxy computers. Pseudo code notation. 電子インクをより明瞭に視認することが可能なプログラムに関する高度に簡略化された擬似コード表記。Highly simplified pseudo-code notation for programs that allow you to see electronic ink more clearly. 図162に関して記載されたプログラムの利点を説明するのに役立てるために使用される図。162 is a diagram used to help explain the advantages of the program described with respect to FIG. 162. FIG. 図162に関して記載されたプログラムの利点を説明するのに役立てるために使用される図。162 is a diagram used to help explain the advantages of the program described with respect to FIG. 162. FIG. 図162に関して記載されたプログラムの利点を説明するのに役立てるために使用される図。162 is a diagram used to help explain the advantages of the program described with respect to FIG. 162. FIG. 図162に関して記載されたプログラムの利点を説明するのに役立てるために使用される図。162 is a diagram used to help explain the advantages of the program described with respect to FIG. 162. FIG. 本発明が方法だけでなく、機械可読形式で保存された方法に関連した、又は、伝搬信号で具体化される、プログラム及びデータ、そして、そうした方法を実行するため及び/又はそうしたプログラム及び/又はデータを使用するためのプログラムされたコンピュータシステム、及び/又は、ハードウェアに組み込まれたコンピュータシステム、に関連することを説明する図。The invention relates not only to methods but also to methods stored in machine-readable form or embodied in a propagated signal, and to carry out such methods and / or such programs and / or FIG. 6 illustrates things related to a programmed computer system for using data and / or a computer system embedded in hardware. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 4 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 4 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 4 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 4 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 4 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 5 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 4 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 5 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 4 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 4 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 4 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 5 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 5 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 5 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 5 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 5 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 本発明によって作成された、カラーバランスされ、サブピクセル最適化されたフォントビットマップの明瞭さを向上させるための本発明に対するさらなる改善を説明するために使用される図。FIG. 5 is used to illustrate a further improvement to the present invention to improve the clarity of a color balanced, sub-pixel optimized font bitmap created by the present invention. 図129乃至図134に関して記載された選択されたテキストのリフロー法に関するより高レベルな記述。A higher level description of the selected text reflow method described with respect to FIGS. 図118乃至図120に関して記載された一般的な種類のズームトゥフィット(zoom−to−fit)法に関する高レベル疑似コード記述。A high-level pseudo-code description for the general kind of zoom-to-fit method described with respect to FIGS. ユーザがウェブページのレイアウトのディスプレイ内で容易にナビゲート可能なドラッグスクロール法に関する高レベル擬似コード記述。A high-level pseudo-code description of the drag scroll method that allows the user to easily navigate within the display of the web page layout. ユーザがウェブページのレイアウトの表示の所望部分に速やかにズームインを選択出来るようにする、クリックズーム法に関する高レベル擬似コード記述。A high-level pseudo-code description for the click-zoom method that allows the user to quickly select zoom-in on the desired portion of the web page layout display. 図121乃至図128に関して記載された、ズームクリック法に関する高度に簡略化された擬似コード記述。A highly simplified pseudocode description for the zoom click method described with respect to FIGS. 121-128. ユーザがグリーキングを使用するウェブページのズームアウト表示を視認可能な方法に関する高度に簡略化された擬似コード記述。A highly simplified pseudo-code description of how a user can view a zoomed-out display of a web page that uses greeking. 220×176ピクセルスクリーンに於いて、図192乃至図216に図示されたスクリーンショットを生成するために使用可能な、マイクロソフト社のスマートフォン仕様と互換性のある携帯電話の上面図。FIG. 219 is a top view of a mobile phone compatible with the Microsoft smartphone specification that can be used to generate the screenshots illustrated in FIGS. 192-216 on a 220 × 176 pixel screen. ウェブページの縮小されたオーバービューが表示され、ユーザによってそのウェブページの異なる表示が選択可能であり、また、ウェブの閲覧に共通する他の機能を実行可能なメニューが表示される、図191に図示された携帯電話のスクリーンの画像を図示するスクリーンショット。A reduced overview of the web page is displayed, a different menu display can be selected by the user, and a menu that can perform other functions common to web browsing is displayed in FIG. A screen shot illustrating an image of the screen of the illustrated mobile phone. 表示中のメニューを有していない図192に於けるウェブページオーバービューと同一のウェブページのオーバービューを図示するスクリーンショット。195 is a screenshot illustrating an overview of a web page that is identical to the web page overview in FIG. 192 without a menu being displayed. デスクトップコンピュータ、又は、ラップトップコンピュータ上で通常見られるサイズの約2分の1のサイズで、拡大されたビューによって多くのウェブページの要素を実際に表示している図193に図示されたオーバービューの一部に関する拡大されたビューを図示するスクリーンショット。The overview illustrated in FIG. 193, which actually displays many web page elements in an enlarged view, approximately half the size normally found on a desktop or laptop computer. Screenshot illustrating a magnified view of a portion of. スクリーンの最上部が、図193に図示されたビューの縮尺をオーバービューウインドウが有することを図示しており、スクリーンの最下部が、図194に図示された縮尺を有する拡大されたビューウインドウを図示している分割ビューを図示するスクリーンショット。The top of the screen illustrates the overview window having the view scale illustrated in FIG. 193, and the bottom of the screen illustrates the enlarged view window having the scale illustrated in FIG. 194. Screenshot showing the split view shown. 同一シート上に存在する図197乃至図199との単純比較の為に、図195のスクリーンショットと同一のスクリーンショットを図示するスクリーンショット。195 is a screenshot illustrating the same screenshot as that of FIG. 195 for simple comparison with FIGS. 197 to 199 existing on the same sheet. ユーザがウインドウに於ける表示を図196に図示された位置から右にナビゲートする場合に生じる拡大されたビューに於けるビューを図示するスクリーンショット。195 is a screenshot illustrating a view in an enlarged view that occurs when the user navigates the display in the window to the right from the position illustrated in FIG. ユーザがウインドウに於ける表示を図197に於ける位置から下方向にナビゲートする場合に生じる拡大されたビューウインドウに於けるビューを示すスクリーンショット。196 is a screenshot showing the view in the enlarged view window that occurs when the user navigates the display in the window downward from the position in FIG. オーバービューウインドウに於ける表示をスクロールさせる為に、ユーザがそのウインドウに於けるビューを図198に於ける位置からさらに下方向にナビゲートする場合に生じる拡大されたビューウインドウに於けるビューを図示するスクリーンショット。Illustrates the view in the enlarged view window that occurs when the user navigates the view in that window further down from the position in FIG. 198 to scroll the display in the overview window. Screenshot to do. 同一シート上に存在する図201乃至203との単純比較の為に提供された図198のスクリーンショットと同一のスクリーンショット。The same screenshot as that of FIG. 198 provided for simple comparison with FIGS. 201 to 203 residing on the same sheet. 最上部のウインドウが図200に見られるオーバービューウインドウであるが、最下部のウインドウは、オーバービューウインドウに図示されたテキストの選択された部分をより簡単に読むことが出来るように、スクリーンの幅に関連してより大きなフォントサイズでリフローしている、リフローされたテキストウインドウである、分割ビューを図示する模擬スクリーンショット。Although the top window is the overview window seen in FIG. 200, the bottom window is the width of the screen so that a selected portion of the text shown in the overview window can be read more easily. A simulated screenshot illustrating a split view, a reflowed text window that is reflowing with a larger font size in relation to. ユーザがリフローされたテキストコラムで下方向にスクロールを行った後の図201に図示された種類の分割ビューを図示するスクリーンショット。201 is a screenshot illustrating a split view of the type illustrated in FIG. 201 after the user scrolls down in the reflowed text column. ユーザが右方向にスクロールを行った後、図201の分割ビューと同一の分割ビューを図示するスクリーンショットであり、右側の次のコラムに於けるテキストをリフローされたテキストウインドウに表示させる図。FIG. 201 is a screen shot illustrating the same split view as the split view of FIG. 201 after the user has scrolled to the right, displaying text in the next column on the right side in a reflowed text window. 同一シート上に存在する図205乃至207との単純比較の為に提供された、図200のスクリーンショットと同一のスクリーンショット。A screen shot identical to the screen shot of FIG. 200, provided for simple comparison with FIGS. 205-207 residing on the same sheet. 図204に於けるカーソル位置に最も近いコラムに於けるテキストに関する略全スクリーンのリフローされたテキストビューを図示する、模擬スクリーンショット。FIG. 205 is a simulated screenshot illustrating a nearly full screen reflowed text view of the text in the column closest to the cursor position in FIG. 204. ユーザが図205に図示されたテキストコラムに於いて下方向にスクロールした後のそうしたリフローされたテキストビューを図示する模擬スクリーンショット。A simulated screenshot illustrating such a reflowed text view after the user scrolls down in the text column illustrated in FIG. ユーザが右方向にスクロールした後のそうしたリフローされたテキストビューを図示する模擬スクリーンショットであり、ウェブページの次のコラムから右側にテキストを表示させる図。FIG. 5 is a simulated screenshot illustrating such a reflowed text view after the user has scrolled to the right, displaying text on the right side from the next column of the web page. 拡大されたビューウインドウがオーバービューウインドウの一部を越えて表示される、図191乃至207に図示されているものと同一のウェブページの拡大鏡ビューを図示するスクリーンショット。209 is a screenshot illustrating a magnifying glass view of the same web page as illustrated in FIGS. 191 to 207, with the magnified view window displayed beyond a portion of the overview window. ユーザが拡大されたビューで表示されたレイアウトの一部を、図208に於けるビューに関連して右にスクロールした後の拡大鏡ビューを図示するスクリーンショット。A screen shot illustrating the magnifier view after the user has scrolled the portion of the layout displayed in the magnified view to the right in relation to the view in FIG. ユーザが図209に於けるビューに関連して、拡大されたビューで表示されたレイアウトの一部を下方向にスクロールした後の拡大鏡ビューを図示するスクリーンショット。209 is a screenshot illustrating a magnifying glass view after the user scrolls down a portion of the layout displayed in the enlarged view in relation to the view in FIG. ユーザが図210に於けるビューに関連して、拡大されたビューに於いて表示されたレイアウトの一部をさらに下方向にスクロールした後の拡大鏡ビューを図示するスクリーンショット。FIG. 23 is a screenshot illustrating the magnifier view after the user has scrolled further down the portion of the layout displayed in the magnified view in relation to the view in FIG. ウェブページのコンテンツの一部に関する表現であり、細い灰色のラインでそのコラムの多くに関する側部、最上部、及び/又は、最下部を図示する図。FIG. 3 is a representation of a portion of the content of a web page and illustrates the side, top, and / or bottom of many of its columns with thin gray lines. コラム幅制限が使用されない場合、図212に図示されたウェブページコンテンツが如何にしてレイアウトされる可能性があるのかを説明する模擬スクリーンショット。FIG. 23 is a simulated screenshot illustrating how the web page content illustrated in FIG. 212 may be laid out if column width restrictions are not used. 図195乃至図199に図示された一般的な種類の分割スクリーンビューを図示する模擬スクリーンショットであり、図213にレイアウトされているように、表示中のウェブページのテキストのメイン部分のライン幅があまりにも広いので、一度に拡大表示ウインドウに適合することが出来ないことを図示する図。FIGS. 195 to 199 are simulated screen shots illustrating the general types of split screen views illustrated in FIGS. 195 to 199, and the layout of FIG. The figure which illustrates that it cannot fit in an enlarged display window at once because it is too wide. 図212に図示されたウェブページコンテンツが如何にしてコラム幅制限を使用してレイアウトすることが可能であるかを図示する模擬スクリーンショット。A simulated screenshot illustrating how the web page content illustrated in FIG. 212 can be laid out using column width restrictions. 図214に図示されたものと同一種類の分割スクリーンビューを図示するスクリーンショットであり、コラム幅制限を使用した場合、ウェブページのテキストのメイン部分のライン幅は、一度に拡大されたビューウインドウに適合させるためには十分狭いことを図示する図。FIG. 214 is a screen shot illustrating the same type of split screen view as shown in FIG. 214, and when using column width restrictions, the line width of the main part of the text on the web page is expanded into a view window enlarged at once Figure illustrating that it is narrow enough to fit. 図191乃至図211、及び、図213乃至図216に図示されたスクリーンショットを作成するために使用可能な、プログラムされた関数に関する高度に簡略化された擬似コード表示。A highly simplified pseudocode display of programmed functions that can be used to create the screenshots illustrated in FIGS. 191 through 211 and FIGS. 213 through 216. 図191乃至図211、及び、図213乃至図216に図示されたスクリーンショットを作成するために使用可能な、プログラムされた関数に関する高度に簡略化された擬似コード表示。A highly simplified pseudocode display of programmed functions that can be used to create the screenshots illustrated in FIGS. 191 through 211 and FIGS. 213 through 216. 図191乃至図211、及び、図213乃至図216に図示されたスクリーンショットを作成するために使用可能な、プログラムされた関数に関する高度に簡略化された擬似コード表示。A highly simplified pseudocode display of programmed functions that can be used to create the screenshots illustrated in FIGS. 191 through 211 and FIGS. 213 through 216. 図191乃至図211、及び、図213乃至図216に図示されたスクリーンショットを作成するために使用可能な、プログラムされた関数に関する高度に簡略化された擬似コード表示。A highly simplified pseudocode display of programmed functions that can be used to create the screenshots illustrated in FIGS. 191 through 211 and FIGS. 213 through 216. 図191乃至図211、及び、図213乃至図216に図示されたスクリーンショットを作成するために使用可能な、プログラムされた関数に関する高度に簡略化された擬似コード表示。A highly simplified pseudocode display of programmed functions that can be used to create the screenshots illustrated in FIGS. 191 through 211 and FIGS. 213 through 216. 図191乃至図211、及び、図213乃至図216に図示されたスクリーンショットを作成するために使用可能な、プログラムされた関数に関する高度に簡略化された擬似コード表示。A highly simplified pseudocode display of programmed functions that can be used to create the screenshots illustrated in FIGS. 191 through 211 and FIGS. 213 through 216. 図191乃至図211、及び、図213乃至図216に図示されたスクリーンショットを作成するために使用可能な、プログラムされた関数に関する高度に簡略化された擬似コード表示。A highly simplified pseudocode display of programmed functions that can be used to create the screenshots illustrated in FIGS. 191 through 211 and FIGS. 213 through 216. 図191乃至図211、及び、図213乃至図216に図示されたスクリーンショットを作成するために使用可能な、プログラムされた関数に関する高度に簡略化された擬似コード表示。A highly simplified pseudocode display for programmed functions that can be used to create the screenshots illustrated in FIGS. 191 through 211 and FIGS. 213 through 216. 図191乃至図211、及び、図213乃至図216に図示されたスクリーンショットを作成するために使用可能な、プログラムされた関数に関する高度に簡略化された擬似コード表示。A highly simplified pseudocode display of programmed functions that can be used to create the screenshots illustrated in FIGS. 191 through 211 and FIGS. 213 through 216. 図191乃至図211、及び、図213乃至図216に図示されたスクリーンショットを作成するために使用可能な、プログラムされた関数に関する高度に簡略化された擬似コード表示。A highly simplified pseudocode display of programmed functions that can be used to create the screenshots illustrated in FIGS. 191 through 211 and FIGS. 213 through 216. ウェブページコンテンツが、横方向に配置された一連のコラムに関するコンテンツ、幅、及び、水平置換に対する仕様を提供可能な多くの方法の内、2つの方法を図示する図。FIG. 6 illustrates two of the many ways in which web page content can provide content, width, and specifications for horizontal replacement for a series of columns arranged in a horizontal direction. ウェブページコンテンツが、横方向に配置された一連のコラムに関するコンテンツ、幅、及び、水平置換に対する仕様を提供可能な多くの方法の内、2つの方法を図示する図。FIG. 3 illustrates two of the many ways in which web page content can provide content, width, and specifications for horizontal replacement for a series of columns arranged in a horizontal direction. ウェブページコンテンツが、横方向に配置された一連のコラムに関するコンテンツ、幅、及び、水平置換に対する仕様を提供可能な多くの方法の内、2つの方法を図示する図。FIG. 3 illustrates two of the many ways in which web page content can provide content, width, and specifications for horizontal replacement for a series of columns arranged in a horizontal direction. 本発明に関するその特徴が、同図に図示された携帯情報端末(PDA)など、携帯電話以外のコンピュータ上で使用可能であることを図示する図。The figure which illustrates that the characteristic regarding this invention can be used on computers other than a mobile telephone, such as a personal digital assistant (PDA) illustrated in the figure.

Claims (70)

表示されるウェブページを示すデジタルコンテンツを受け付けることと、
前記ウェブページをレイアウトすることと、
第1倍率で前記ウェブページのレイアウト部分をオーバービューウインドウに表示することと、前記レイアウトの複数要素が前記オーバービューウインドウに於いてよりも、拡大されたビューウインドウに於いて、より大きく見えるようにする第2倍率の状態にある前記拡大されたビューウインドウに於ける表示を用いて、前記オーバービューウインドウに表示された前記レイアウト部分のサブパートを前記拡大されたビューウインドウに表示することと、前記拡大されたビューウインドウに現在表示されている前記オーバービューウインドウに表示された前記レイアウト部分の前記サブパートを示す拡大されたビューインジケータを、前記オーバービューウインドウに表示することと、を同時に行うことによって、前記ウェブページの分割ビューを形成することと、
前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートを移動させることと、これに対して、前記オーバービューウインドウに表示された前記レイアウトに関連して、前記拡大されたビューインジケータを移動させることと、によって、ユーザからのナビゲーション入力に対応し、前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートが、そうした移動後に前記拡大されたビューインジケータによって示された前記レイアウトの前記サブパートに継続して対応することと、を備え、
前記オーバービューウインドウ及び前記拡大されたビューウインドウが、所定の幅及び高さを有する単一の矩形表示スクリーンの異なる部分に同時に表示され、
前記オーバービューウインドウ及び前記拡大されたビューウインドウのそれぞれが、前記スクリーンと略同一の幅であるが、それぞれは前記スクリーンの高さの異なる部分を占める、コンピュータデバイスに於けるメディア表示方法。
Accepting digital content indicating the web page to be displayed;
Laying out the web page;
Displaying the layout portion of the web page in the overview window at a first magnification, so that multiple elements of the layout appear larger in the enlarged view window than in the overview window; Displaying the subpart of the layout portion displayed in the overview window in the enlarged view window using the display in the enlarged view window in the second magnification state; and Simultaneously displaying in the overview window an enlarged view indicator indicating the subpart of the layout portion displayed in the overview window currently displayed in the overview window. Web page split And forming the-menu,
Moving the subpart of the layout displayed in the enlarged view window, and moving the enlarged view indicator relative to the layout displayed in the overview window The subpart of the layout displayed in the enlarged view window in response to a navigation input from a user is transferred to the subpart of the layout indicated by the enlarged view indicator after such movement. Continuously responding,
The overview window and the enlarged view window are simultaneously displayed on different portions of a single rectangular display screen having a predetermined width and height;
A method of displaying media on a computing device, wherein each of the overview window and the enlarged view window is approximately the same width as the screen but each occupies a different portion of the screen height.
前記拡大されたビューウインドウの高さが、前記拡大されたビューウインドウ及び前記オーバービューウインドウを併せた高さの半分未満を占める、請求項1に記載のコンピュータデバイスに於けるメディア表示方法。   The media display method according to claim 1, wherein the height of the enlarged view window occupies less than half of the combined height of the enlarged view window and the overview window. 前記スクリーンは、前記ウェブページレイアウトが前記拡大されたビューウインドウ及びオーバービューウインドウで表示される方向に関連して縦方向を有する、請求項1に記載のコンピュータデバイスに於けるメディア表示方法。   The method of claim 1, wherein the screen has a vertical direction relative to a direction in which the web page layout is displayed in the enlarged view window and the overview window. 前記オーバービューウインドウ及び前記拡大されたビューウインドウのそれぞれは、縦よりも横の長さが長く、それによって、前記オーバービューウインドウ及び前記拡大されたビューウインドウの両方が表示される前記スクリーンが縦方向を有するという事実にもかかわらず、前記オーバービューウインドウ及び拡大されたビューウインドウのそれぞれが横方向を有することになる、請求項3に記載のコンピュータデバイスに於けるメディア表示方法。   Each of the overview window and the enlarged view window is longer in the horizontal direction than the vertical direction, so that the screen on which both the overview window and the enlarged view window are displayed is in the vertical direction. 4. The method of displaying media in a computing device according to claim 3, wherein each of the overview window and the enlarged view window has a horizontal direction in spite of the fact that the display window has a horizontal direction. 前記分割ビューは、携帯情報端末(PDA)の表示スクリーン上に表示される、請求項1に記載のコンピュータデバイスに於けるメディア表示方法。   The media display method according to claim 1, wherein the divided view is displayed on a display screen of a personal digital assistant (PDA). 前記分割ビューが携帯電話の表示スクリーン上に表示される、請求項1に記載のコンピュータデバイスに於けるメディア表示方法。   The method of displaying media on a computing device according to claim 1, wherein the divided view is displayed on a display screen of a mobile phone. 表示されるウェブページを示すデジタルコンテンツを受け付けることと、
ウェブページをレイアウトすることと、
第1倍率でウェブページのレイアウト部分をオーバービューウインドウに表示することと、前記レイアウトの複数要素が前記オーバービューウインドウに於いてよりも、拡大されたビューウインドウに於いてより大きく見えるようにする第2倍率の状態にある前記拡大されたビューウインドウに於ける表示を用いて、前記オーバービューウインドウに表示された前記レイアウト部分のサブパートを拡大されたビューウインドウに表示することと、前記拡大されたビューウインドウに現在表示されている前記オーバービューウインドウに表示された前記レイアウト部分の前記サブパートを示す拡大されたビューインジケータを、前記オーバービューウインドウに表示することと、を同時に行うことで、分割ビューである前記ウェブページの第1ビューを形成することによって、ユーザからの第1ビュー選択入力に対応することと、
前記分割ビューが表示される際に、前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートを移動させることと、これに対して、前記オーバービューウインドウに表示されたレイアウトに関連して前記拡大されたビューインジケータを移動させることとによって、ユーザからのナビゲーション入力に対応し、これにより、前記拡大されたビューウインドウに表示された前記レイアウトのサブパートが、そうした移動後に前記拡大されたビューインジケータによって示された前記レイアウトのサブパートに継続して対応することと、
前記オーバービューウインドウ及び前記拡大されたビューウインドウに関する前記分割ビューの組み合わせを有していない第2ビューを形成することによって、ユーザからの第2ビュー選択入力に対応することと、を備える、コンピュータデバイスに於けるメディア表示方法。
Accepting digital content indicating the web page to be displayed;
Laying out web pages,
Displaying the layout portion of the web page in the overview window at a first magnification and making the elements of the layout appear larger in the enlarged view window than in the overview window. Using the display in the enlarged view window in a double magnification state to display sub-parts of the layout portion displayed in the overview window in the enlarged view window; and The enlarged view indicator showing the subpart of the layout part displayed in the overview window currently displayed in the window is displayed in the overview window, thereby simultaneously providing a split view. First of the web page By forming the-menu, and correspond to the first view selection input from the user,
Moving the subparts of the layout displayed in the enlarged view window when the split view is displayed, as opposed to the layout displayed in the overview window; Responsive to navigation input from the user by moving the magnified view indicator so that the subparts of the layout displayed in the magnified view window are moved by the magnified view indicator after such movement Continuously responding to the indicated subparts of the layout;
Responding to a second view selection input from a user by forming a second view that does not have a combination of the split views with respect to the overview window and the magnified view window. Media display method.
前記ウェブページのレイアウト部分は、前記レイアウトの複数要素が前記拡大ウインドウに於いてよりもより小さく見えるようにする第2倍率で表示され、
全体の表示サイズが、前記オーバービューウインドウと前記分割ビューに於ける拡大されたビューウインドウを併せたサイズに略等しい、
前記第2ビューはオーバービューオンリービューである、請求項7に記載のコンピュータデバイスに於けるメディア表示方法。
The layout portion of the web page is displayed at a second magnification that allows multiple elements of the layout to appear smaller than in the enlarged window;
The overall display size is approximately equal to the combined size of the overview window and the enlarged view window in the split view,
The method of displaying media on a computer device according to claim 7, wherein the second view is an overview only view.
前記ウェブページのレイアウト部分は、前記レイアウトの複数要素を前記オーバービューウインドウに於いてよりもより大きく見せるようにする倍率で表示され、
全体の表示サイズが前記オーバービューウインドウと前記分割ビューに於ける前記拡大されたビューウインドウを併せた大きさに略等しい、
前記第2ビューは拡大オンリービューである、請求項7に記載のコンピュータデバイスに於けるメディア表示方法。
The layout portion of the web page is displayed at a scale factor that makes multiple elements of the layout appear larger than in the overview window;
The overall display size is approximately equal to the combined size of the overview window and the enlarged view window in the split view;
The media display method in a computer device according to claim 7, wherein the second view is an enlarged only view.
前記デジタルコンテンツは前記ウェブページの一部として表示されるテキストを有し、
第2ビュー選択入力に対する前記対応は、新しいテキストコラムのラインを越えて、前記新しいコラムのライン幅に関連して、前記分割ビューで使用された前記レイアウトに於ける前記選択されたテキストのレイアウト幅に関連した前記選択されたテキストのフォントサイズよりも大きい一つ又は複数のフォントサイズで、テキストの前記選択された部分をリフローすることを含む、前記ウェブページのテキストの選択された部分の第2レイアウトの実行を有し、
前記第2ビューは、前記新しいテキストコラムの最大幅が前記スクリーンに表示されるリフローされたテキストウインドウを有する、請求項7に記載のコンピュータデバイスに於けるメディア表示方法。
The digital content has text displayed as part of the web page;
The correspondence to the second view selection input is that the layout width of the selected text in the layout used in the split view is related to the line width of the new column beyond the line of the new text column. Reflowing the selected portion of the text with one or more font sizes larger than the font size of the selected text associated with the second of the selected portion of the text of the web page Have a layout run and
The method of displaying media on a computing device according to claim 7, wherein the second view comprises a reflowed text window in which the maximum width of the new text column is displayed on the screen.
前記第2ビューのリフローされたテキストウインドウは、前記第1ビューに関する前記拡大されたビューウインドウと前記オーバービューウインドウを併せた大きさと略同一である、請求項10に記載のコンピュータデバイスに於けるメディア表示方法。   The media of claim 10, wherein the reflowed text window of the second view is approximately the same size as the combined size of the enlarged view window and the overview window for the first view. Display method. 前記第2ビューは、前記リフローされたテキストウインドウの表示と、 前記レイアウトの複数要素を前記拡大されたビューに於いてよりも小さく見えるようにし、テキストを前記リフローされたテキストウインドウに於いてよりも小さなフォントに見えるようにする倍率で、前記ウェブページのレイアウト部分を表示する第2オーバービューウインドウと、の表示を同時に有する分割ビューに関する第2形式であり、
前記第2オーバービューウインドウは、前記リフローされたテキストウインドウに現在表示されているテキストの前記部分の表示を含む、請求項10に記載のコンピュータデバイスに於けるメディア表示方法。
The second view displays the reflowed text window and makes the elements of the layout appear smaller than in the enlarged view, and text is displayed in the reflowed text window. And a second overview window that simultaneously displays a second overview window that displays a layout portion of the web page at a magnification that makes it look like a small font,
The method of displaying media on a computing device according to claim 10, wherein the second overview window includes a display of the portion of text currently displayed in the reflowed text window.
前記第1ビュー及び第2ビューは、携帯情報端末(PDA)の表示スクリーンに表示される、請求項7に記載のコンピュータデバイスに於けるメディア表示方法。   The method of claim 7, wherein the first view and the second view are displayed on a display screen of a personal digital assistant (PDA). 前記第1ビュー及び第2ビューは、携帯電話の表示スクリーンに表示される、請求項7に記載のコンピュータデバイスに於けるメディア表示方法。   The method of claim 7, wherein the first view and the second view are displayed on a display screen of a mobile phone. ウェブページの一部として一つ又は複数のコラムに表示されるテキストを含む、表示される前記ウェブページを表示するデジタルコンテンツを受信することと、
前記ウェブページの第1レイアウトを実行することと、
新しいコラムのライン幅に関連して、前記第1レイアウトに於ける前記選択されたテキスト幅に関連した前記選択されたテキストのフォントサイズに比して、より大きな一つ又は複数のフォントサイズで、新しいテキストコラムの前記ラインを越えて、前記テキストの選択された部分をリフローすることを含む、前記ウェブページのテキストの選択された部分の第2レイアウトを実行することと、
オーバービューウインドウに於ける第1倍率で前記ウェブページレイアウトの一部を表示することと、前記新しいテキストコラムの最大幅が、前記リフローされたテキストウインドウに表示されたテキストの一部を前記オーバービューウインドウに於いてよりも、より大きなフォントで表示させる第2倍率で、前記スクリーン上に表示されるリフローされたテキストウインドウに於いて、前記リフローされ、選択されたテキストを表示することと、を同時に行うことによって、前記ウェブページの分割ビューを作成すること、で構成される、コンピュータデバイスに於けるメディア表示方法。
Receiving digital content displaying the displayed web page, including text displayed in one or more columns as part of the web page;
Performing a first layout of the web page;
In relation to the line width of the new column, with one or more font sizes larger than the font size of the selected text in relation to the selected text width in the first layout; Performing a second layout of the selected portion of the text of the web page comprising reflowing the selected portion of the text beyond the line of a new text column;
Displaying a portion of the web page layout at a first magnification in an overview window; and a maximum width of the new text column to display a portion of the text displayed in the reflowed text window. Simultaneously displaying the reflowed and selected text in a reflowed text window displayed on the screen at a second magnification that displays in a larger font than in the window. A method for displaying media on a computing device, comprising: creating a split view of the web page by performing.
現在、前記リフローされたテキストウインドウに表示されている前記オーバービューウインドウに表示されたテキストの前記サブパートを示す表示されたテキストインジケータを前記オーバービューウインドウに表示することと、
前記リフローされたテキストウインドウに表示されたテキストの前記一部を移動させること、及び、これに対して前記オーバービューウインドウに表示された前記レイアウトに関連して、前記表示されたテキストインジケータを移動させることによって、ユーザからのナビゲーション入力に対応し、これにより、前記リフローされたテキストウインドウに表示された前記テキストの前記サブパートが、そうした移動後に前記表示されたテキストインジケータによって示された前記テキストの前記サブパートに継続して対応することをさらに含む、請求項15に記載のメディア表示方法。
Displaying a displayed text indicator in the overview window indicating the subpart of the text displayed in the overview window currently displayed in the reflowed text window;
Moving the portion of the text displayed in the reflowed text window and moving the displayed text indicator relative to the layout displayed in the overview window. In response to a navigation input from a user, whereby the subpart of the text displayed in the reflowed text window is the subpart of the text indicated by the displayed text indicator after such movement. The media display method according to claim 15, further comprising continuously responding to.
表示されるウェブページを表示するデジタルコンテンツを受信することと、
前記ウェブページをレイアウトすることと、
第1倍率で前記ウェブページレイアウトの一部をオーバービューウインドウに表示することと、前記レイアウトの要素を前記オーバービューウインドウに於いてよりも、前記拡大されたビューウインドウに於いて、より大きく見せる第2倍率の状態にある前記拡大されたビューウインドウに於ける表示を用いて、前記オーバービューウインドウに表示された前記レイアウトの前記一部のサブパートを拡大されたビューウインドウに表示することと、前記拡大されたビューウインドウに現在表示されている前記オーバービューウインドウに示された前記レイアウトの前記一部の前記サブパートを示す拡大されたビューインジケータを、前記オーバービューウインドウで表示することと、を同時に行うことによって、前記ウェブページの分割ビューを生成することと、
前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートを移動させることと、これに対応して、前記オーバービューウインドウに表示された前記レイアウトに関連して、前記拡大されたビューインジケータを移動させることと、によって、ユーザからのナビゲーション入力に対応し、これにより、前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートが、そうした移動後に前記拡大されたビューインジケータによって示された前記レイアウトの前記サブパートに継続して対応することと、で構成され、
前記オーバービューウインドウに関連して、前記ウェブページレイアウトをスクロールし、これにより、前記以前に非表示であった部分が前記オーバービューウインドウにスクロールされることと、前記拡大されたビューインジケータの前記部分を、前記ウェブページレイアウトの前記以前非表示であった部分の上に移動させることと、これに対応して、前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートをスクロールし、これにより、前記拡大されたビューウインドウに表示された前記サブパート、がそうした移動後に前記拡大されたビューインジケータによって示された前記ウェブページレイアウトの前記サブパートに対応することと、によって、前記ナビゲーション入力が生成される前に、前記オーバービューウインドウに表示された前記ウェブページレイアウトの前記一部を越えて、前記ウェブページレイアウトの以前非表示であった部分の上に、ナビゲーション入力への前記対応が、前記拡大されたビューインジケータの一部を移動させるナビゲーション入力への対応を含む、コンピュータデバイスに於けるメディア表示方法。
Receiving digital content displaying a displayed web page;
Laying out the web page;
Displaying a portion of the web page layout in the overview window at a first magnification, and displaying elements of the layout larger in the enlarged view window than in the overview window. Using the display in the enlarged view window in a double magnification state to display the partial subparts of the layout displayed in the overview window in the enlarged view window; and Simultaneously displaying, in the overview window, an enlarged view indicator showing the subpart of the part of the layout shown in the overview window currently displayed in the overview window To split the web page. And generating,
Moving the subpart of the layout displayed in the enlarged view window and correspondingly moving the enlarged view indicator in relation to the layout displayed in the overview window In response to navigation input from a user, whereby the subpart of the layout displayed in the enlarged view window is indicated by the enlarged view indicator after such movement. Continuously responding to the subpart of
Scrolling the web page layout in relation to the overview window, whereby the previously hidden portion is scrolled to the overview window, and the portion of the enlarged view indicator Over the previously hidden portion of the web page layout, and correspondingly scrolling the subpart of the layout displayed in the enlarged view window, thereby The navigation input is generated by the subpart displayed in the enlarged view window corresponding to the subpart of the web page layout indicated by the enlarged view indicator after such movement. Before the above -Beyond the part of the web page layout displayed in the window, above the previously hidden part of the web page layout, the correspondence to navigation input is part of the enlarged view indicator. A method for displaying media on a computing device, including a response to navigation input to move the object.
前記分割ビューは、携帯情報端末(PDA)の前記表示スクリーンに表示される、請求項17に記載のコンピュータデバイスに於けるメディア表示方法。   The media display method in a computer device according to claim 17, wherein the divided view is displayed on the display screen of a personal digital assistant (PDA). 前記分割ビューは、携帯電話の前記表示スクリーンに表示される、請求項17に記載のコンピュータデバイスに於けるメディア表示方法。   The method according to claim 17, wherein the divided view is displayed on the display screen of a mobile phone. 表示されるウェブページを表示するデジタルコンテンツを受信することと、
前記ウェブページをレイアウトすることと、
第1倍率でレイアウトされた前記ウェブページの一部をオーバービューウインドウに表示することと、前記レイアウトの要素を前記オーバービューウインドウに於いてより、拡大されたビューウインドウに於いて、より大きく見えるようにさせる第2倍率の状態で、前記拡大されたビューウインドウに於ける表示で、前記オーバービューウインドウに表示された前記レイアウトの一部のサブパートを前記拡大されたビューウインドウに表示することと、現在、前記拡大されたビューウインドウに表示されている前記オーバービューウインドウに表示された前記レイアウトの一部のサブパートを示す拡大されたビューインジケータを前記オーバービューウインドウに表示することと、
前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートを移動させることと、これに対して、前記オーバービューウインドウに表示された前記レイアウトに関連して、前記拡大されたビューインジケータを移動させることと、によってユーザからのナビゲーション入力に対応し、これにより、前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートが、そうした移動後に前記拡大されたビューインジケータによって示された前記レイアウトの前記サブパートに継続して対応することと、を同時に行うことによって、前記ウェブページの分割ビューを生成することとで構成され、
前記ナビゲーション入力への対応は、前記拡大されたビューインジケータと、前記拡大されたビューウインドウに表示された前記ウェブページレイアウトの一部を直接移動させることによって、ナビゲーション入力の第1形式に対応することと、前記拡大ビューに表示された前記ウェブページレイアウトの前記一部に対応して、カーソルを直接移動させることによって、ナビゲーション入力の第2形式に対応することと、を含む、コンピュータ・デバイスに於けるメディア表示方法。
Receiving digital content displaying a displayed web page;
Laying out the web page;
Displaying a portion of the web page laid out at the first magnification in the overview window, and making the layout elements appear larger in the enlarged view window than in the overview window. Displaying a partial subpart of the layout displayed in the overview window in the enlarged view window in a state of the second magnification to be displayed in the enlarged view window; Displaying an enlarged view indicator in the overview window indicating a subpart of a portion of the layout displayed in the overview window displayed in the enlarged view window;
Moving the subpart of the layout displayed in the enlarged view window, and moving the enlarged view indicator relative to the layout displayed in the overview window In response to navigation input from a user, whereby the subpart of the layout displayed in the enlarged view window is displayed in the layout of the layout indicated by the enlarged view indicator after such movement. Continuously responding to the subparts, and generating a split view of the web page by simultaneously performing,
Corresponding to the navigation input corresponds to a first form of navigation input by directly moving the enlarged view indicator and a portion of the web page layout displayed in the enlarged view window. And corresponding to a second form of navigation input by moving a cursor directly in response to the portion of the web page layout displayed in the enlarged view. Media display method.
前記ナビゲーション入力の第2形式への対応は、
前記拡大されたビューウインドウに表示された前記ウェブページレイアウトのサブパートを越えて、前記ナビゲーション入力の所定の第2形式が生成される前に、前記拡大されたビューウインドウに於ける以前非表示であった前記ウェブページレイアウトの一部の上に、カーソルを移動させることと、
前記拡大されたビューウインドウに関連して前記ウェブページレイアウトをスクロールし、これにより、前記カーソルが移動される前記以前非表示であった部分が、前記拡大されたビューウインドウに於いてスクロールされ、表示されることと、
これに対応して、前記拡大されたビューインジケータを前記オーバービューウインドウに於いてスクロールし、これにより、前記拡大されたビューインジケータによって示された前記ウェブページレイアウトのサブパートが前記拡大されたビューウインドウに表示された前記ウェブページレイアウトのサブパートに継続して対応することと、を行うことによる、ナビゲーション入力に関する所定の第2形式への対応を含む、請求項20に記載のコンピュータデバイスに於けるメディア表示方法。
The correspondence to the second form of the navigation input is as follows:
Being previously hidden in the enlarged view window before the predetermined second form of the navigation input is generated beyond a subpart of the web page layout displayed in the enlarged view window. Moving the cursor over a portion of the web page layout;
Scrolls the web page layout in relation to the enlarged view window so that the previously hidden portion to which the cursor is moved is scrolled and displayed in the enlarged view window And
Correspondingly, the magnified view indicator is scrolled in the overview window so that the sub-part of the web page layout indicated by the magnified view indicator is in the magnified view window. 21. A media display on a computing device according to claim 20, comprising responding to a predetermined second format for navigation input by continuously responding to the displayed sub-part of the web page layout. Method.
前記拡大されたビューウインドウ、及び、前記オーバービューウインドウの両方に於ける前記ウェブページレイアウトに関連して、前記カーソルが同一位置に表示される、請求項20に記載のコンピュータデバイスに於けるメディア表示方法。   21. A media display in a computing device according to claim 20, wherein the cursor is displayed at the same location relative to the web page layout in both the enlarged view window and the overview window. Method. 前記分割ビューが、デジタルコンテンツを閲覧可能なブラウザコンピュータの一部であるスクリーン上に表示され、
前記ブラウザコンピュータが、所定のウェブページを要求するユーザ入力に対して、コンピュータネットワーク上でプロキシサーバからのそのウェブページを要求することによって対応するブラウザプログラムを含み、
前記プロキシサーバが、コンピュータネットワーク上で、前記ユーザ要求を、前記要求されたウェブページを保存、又は、動的に生成する一つ又は複数のサーバに伝達し、
前記一つ又は複数のサーバが前記要求されたウェブページを前記プロキシサーバに送信し、
前記プロキシサーバが、デジタルコンテンツの前記受信として、前記ダウンロードされたウェブページを受信し、
前記プロキシサーバが前記ウェブページの前記レイアウトを実行し、
前記プロキシサーバが前記ウェブページレイアウトを前記ブラウザコンピュータにダウンロードし、
その後、前記ブラウザコンピュータ上で実行している前記閲覧プログラムが、前記オーバービューウインドウ、及び、前記拡大されたビューウインドウに於ける前記ダウンロードされたウェブページレイアウトの前記表示を作成することによって、前記分割ビューを作成する、請求項20に記載のコンピュータデバイスに於けるメディア表示方法。
The split view is displayed on a screen that is part of a browser computer capable of viewing digital content;
The browser computer includes a browser program that responds to user input requesting a predetermined web page by requesting the web page from a proxy server over a computer network;
The proxy server communicates the user request over a computer network to one or more servers that store or dynamically generate the requested web page;
The one or more servers send the requested web page to the proxy server;
The proxy server receives the downloaded web page as the reception of digital content;
The proxy server performs the layout of the web page;
The proxy server downloads the web page layout to the browser computer;
Thereafter, the viewing program running on the browser computer creates the display of the downloaded web page layout in the overview window and the enlarged view window, thereby dividing the segmentation. The method of displaying media on a computing device according to claim 20, wherein the view is created.
前記ブラウザコンピュータは携帯情報端末(PDA)である、請求項23に記載のコンピュータデバイスに於けるメディア表示方法。   24. A media display method in a computer device according to claim 23, wherein the browser computer is a personal digital assistant (PDA). 前記ブラウザコンピュータは携帯電話である、請求項23に記載のコンピュータデバイスに於けるメディア表示方法。   24. A media display method in a computer device according to claim 23, wherein the browser computer is a mobile phone. 前記第1ビュー及び第2ビューは、携帯情報端末(PDA)の前記表示スクリーン上に表示される、請求項20に記載のコンピュータデバイスに於けるメディア表示方法。   21. The method of displaying media on a computing device according to claim 20, wherein the first view and the second view are displayed on the display screen of a personal digital assistant (PDA). 前記第1ビュー及び第2ビューは、携帯電話の前記表示スクリーン上に表示される、請求項20に記載のコンピュータデバイスに於けるメディア表示方法。   The method of claim 20, wherein the first view and the second view are displayed on the display screen of a mobile phone. 表示されるウェブページを表示するデジタルコンテンツを受信することと、
前記ウェブページをレイアウトすることと、
第1倍率でレイアウトされた前記ウェブページの一部をオーバービューウインドウに表示することと、前記レイアウトの要素を前記オーバービューウインドウに於いてより、拡大されたビューウインドウに於いて、より大きく見せる第2倍率の状態となっている前記拡大されたビューウインドウに於ける表示を用いて、前記オーバービューウインドウに表示された前記レイアウトの前記一部のサブパートを拡大されたビューウインドウに表示することと、現在、前記拡大されたビューウインドウに表示されている前記オーバービューウインドウに表示された前記レイアウトの前記一部の前記サブパートを示す拡大されたビューインジケータを前記オーバービューウインドウに表示することと、を同時に行うことによって、前記ウェブページの分割ビューを生成することと、
これに対応して、前記拡大されたビューウインドウに表示された前記ウェブページレイアウトの前記一部に関連して、カーソルを移動させることによって、ユーザからのナビゲーション入力に対応すること、で構成され、
ナビゲーション入力への前記対応が、前記所定のナビゲーション入力が生成される前に、前記拡大されたビューウインドウに表示された前記ウェブページの前記サブパートを越えて、前記拡大されたビューウインドウに非表示であった前記ウェブページレイアウトの一部の上に、前記カーソルを移動させることと、前記カーソルが移動される前記以前非表示であった部分が前記拡大されたビューウインドウにスクロールされ、表示されるように、前記拡大されたビューウインドウに関連して前記ウェブページレイアウトをスクロールすることと、これに対して、前記オーバービューウインドウに於いて前記拡大されたビューインジケータをスクロールし、これにより、前記拡大されたビューインジケータによって示された前記ウェブページレイアウトの前記サブパートが前記拡大されたビューウインドウに表示された前記ウェブページレイアウトの前記サブパートに継続して対応すること、による所定のナビゲーション入力への対応を含む、コンピュータデバイスに於けるメディア表示方法。
Receiving digital content displaying a displayed web page;
Laying out the web page;
Displaying a portion of the web page laid out at a first magnification in an overview window; and displaying elements of the layout larger in the enlarged view window than in the overview window. Using the display in the enlarged view window in a double magnification state, displaying the partial subpart of the layout displayed in the overview window in the enlarged view window; Simultaneously displaying an enlarged view indicator in the overview window indicating the subpart of the portion of the layout displayed in the overview window currently displayed in the enlarged view window. By doing the web page And generating the split view,
Correspondingly, a navigation input from a user is accommodated by moving a cursor in relation to the portion of the web page layout displayed in the enlarged view window,
The correspondence to a navigation input is hidden in the enlarged view window beyond the subpart of the web page displayed in the enlarged view window before the predetermined navigation input is generated. The cursor is moved over a part of the web page layout that is present, and the previously hidden part to which the cursor is moved is scrolled and displayed in the enlarged view window. Scrolling the web page layout relative to the magnified view window, while scrolling the magnified view indicator in the overview window, thereby The web page label indicated by the view indicator That out of the subpart corresponding continues to the subpart of the web page layout displayed on the enlarged view window includes a corresponding to a predetermined navigation input by, in the media display method on a computer device.
前記カーソルが前記ナビゲーション入力に対応して移動されるように、前記拡大されたビューウインドウ、及び、前記オーバービューウインドウの両方に前記於けるウェブページレイアウトに関連して、前記カーソルが同一位置に表示される、請求項28に記載のコンピュータデバイスに於けるメディア表示方法。   The cursor is displayed in the same position in relation to the web page layout in both the enlarged view window and the overview window so that the cursor is moved in response to the navigation input. 30. A method for displaying media in a computing device according to claim 28. デジタルコンテンツを閲覧可能なブラウザコンピュータの一部であるスクリーン上に前記分割ビューが表示され、
前記ブラウザコンピュータは、所定のウェブページを要求するユーザ入力に対してコンピュータネットワーク上でプロキシサーバからそのウェブページを要求することによって対応するブラウザプログラムを含み、
前記プロキシサーバは、コンピュータネットワーク上で、前記ユーザ要求を、前記要求されたウェブページを保存、又は、動的に生成する、一つ又は複数のサーバに伝達し、
前記一つ又は複数のサーバは、前記要求されたウェブページを前記プロキシサーバに送信し、
前記プロキシサーバはデジタルコンテンツの前記受信として、前記ダウンロードされたウェブページを受信し、
前記プロキシサーバは、前記ウェブページの前記レイアウトを実行し、
前記プロキシサーバは前記ウェブページレイアウトを前記ブラウザコンピュータにダウンロードし、
その後、前記ブラウザコンピュータで実行している前記ブラウザプログラムは、前記オーバービューウインドウ及び前記拡大されたビューウインドウに於ける前記ダウンロードされたウェブページレイアウトの前記表示を作成することによって、前記分割ビューを生成する、請求項28に記載のコンピュータデバイスに於けるメディア表示方法。
The split view is displayed on a screen that is part of a browser computer capable of viewing digital content;
The browser computer includes a browser program that responds to a user input requesting a predetermined web page by requesting the web page from a proxy server over a computer network;
The proxy server communicates the user request over a computer network to one or more servers that store or dynamically generate the requested web page;
The one or more servers send the requested web page to the proxy server;
The proxy server receives the downloaded web page as the reception of digital content,
The proxy server executes the layout of the web page;
The proxy server downloads the web page layout to the browser computer;
Thereafter, the browser program running on the browser computer generates the split view by creating the display of the downloaded web page layout in the overview window and the enlarged view window. The method for displaying media in a computer device according to claim 28.
前記ブラウザコンピュータは携帯情報端末(PDA)である、請求項30に記載のコンピュータデバイスに於けるメディア表示方法。   31. A media display method in a computer device according to claim 30, wherein the browser computer is a personal digital assistant (PDA). 前記ブラウザコンピュータは携帯電話である、請求項30に記載のコンピュータデバイスに於けるメディア表示方法。   31. A media display method in a computer device according to claim 30, wherein the browser computer is a mobile phone. 前記第1ビュー及び第2ビューは、携帯情報端末(PDAの)の前記表示スクリーンに表示される、請求項28に記載のコンピュータデバイスに於けるメディア表示方法。   29. The media display method in a computer device according to claim 28, wherein the first view and the second view are displayed on the display screen of a personal digital assistant (PDA). 前記第1ビュー及び第ビュー示は、携帯電話の前記表示スクリーンに表示される、請求項28に記載のコンピュータデバイスに於けるメディア表示方法。   30. The method of displaying media in a computer device according to claim 28, wherein the first view and the first view display are displayed on the display screen of a mobile phone. 表示されるウェブページを表示するデジタルコンテンツを受信することと、
前記ウェブページをレイアウトすることと、
第1倍率で前記ウェブページレイアウトの一部をオーバービューウインドウに表示し、前記レイアウトの要素を前記オーバービューウインドウに於いてより、拡大されたビューウインドウに於いて、より大きく見せる第2倍率の状態になっている前記拡大されたビューウインドウに於ける表示を用いて、前記オーバービューウインドウに表示された前記レイアウトの前記一部のサブパートを前記拡大されたビューウインドウに表示することと、現在、前記拡大されたビューウインドウに表示されている前記オーバービューウインドウに表示された前記レイアウトの前記一部の前記サブパートを示す拡大されたビューインジケータを前記オーバービューウインドウに表示することと、を同時に行うことによって、前記ウェブページの分割ビューを生成することと、
これに応じて、前記拡大されたビューウインドウ、及び、前記オーバービューウインドウに表示された前記ウェブページレイアウトの前記一部に関連して、カーソルを移動させることによって、ユーザからのナビゲーション入力に対応し、これにより、前記カーソルが前記ナビゲーション入力に対応して移動されるように、前記カーソルが両方のウインドウに於ける前記レイアウトの同一部分を指し示すことと、で構成される、コンピュータデバイスに於けるメディア表示方法。
Receiving digital content displaying a displayed web page;
Laying out the web page;
A second magnification state in which a portion of the web page layout is displayed in an overview window at a first magnification, and the elements of the layout are shown larger in the enlarged view window than in the overview window. Displaying the partial subpart of the layout displayed in the overview window in the enlarged view window using the display in the enlarged view window being Simultaneously displaying, in the overview window, an enlarged view indicator indicating the subpart of the part of the layout displayed in the overview window displayed in the enlarged view window. , Split view of the web page And generating,
In response, navigation input from the user is accommodated by moving a cursor in relation to the enlarged view window and the portion of the web page layout displayed in the overview window. A medium in a computing device comprising: the cursor pointing to the same part of the layout in both windows so that the cursor is moved in response to the navigation input Display method.
ウェブページの一部として表示されるテキストを含む、表示されるウェブページを表示するデジタルコンテンツを受信することと、
前記ウェブページをレイアウトすることと、
第1倍率で前記ウェブページレイアウトの一部をオーバービューウインドウに表示することと、前記レイアウトの要素を前記オーバービューウインドウに於いてより、拡大されたビューウインドウに於いて、より大きく見せる第2倍率の状態で、前記拡大されたビューウインドウに於ける表示を用いて、前記オーバービューウインドウに表示された前記レイアウトの前記一部のサブパートを拡大されたビューウインドウに表示することと、現在、前記拡大されたビューウインドウに表示されているオーバービューウインドウに表示された前記レイアウトの前記一部の前記サブパートを示す拡大されたビューインジケータを前記オーバービューウインドウに表示することと、を同時に行うことによって、前記ウェブページの分割ビューを作成することと、
前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートを移動させることと、これに対応して、前記オーバービューウインドウに表示されたレイアウトに関連して、前記拡大されたビューインジケータを移動させることと、によって、ユーザからのナビゲーション入力に対応し、これにより、前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートが、そうした移動後に前記拡大されたビューインジケータによって示された前記レイアウトの前記サブパートに継続して対応することと、で構成され、
文字形状及びピクセル配置が前記文字形状の端部の配置の割合を増加させるために選択されているフォントビットマップによって、前記拡大されたビューウインドウに於ける前記フォントビットマップのピクセル解像度を前提として、前記フォントビットマップのピクセル境界を用いて、前記ウェブページに於ける複数のテキスト文字のそれぞれが前記拡大されたビューウインドウに表示される、コンピュータデバイスに於けるメディア表示方法。
Receiving digital content displaying the displayed web page, including text displayed as part of the web page;
Laying out the web page;
Displaying a portion of the web page layout in the overview window at a first magnification, and a second magnification that makes the elements of the layout appear larger in the enlarged view window than in the overview window. In the state, using the display in the enlarged view window, displaying the partial subpart of the layout displayed in the overview window in the enlarged view window; Simultaneously displaying in the overview window an enlarged view indicator indicating the subpart of the part of the layout displayed in the overview window displayed in the overview window. Create a split view of a web page And that,
Moving the subpart of the layout displayed in the enlarged view window and correspondingly moving the enlarged view indicator in relation to the layout displayed in the overview window In response to a navigation input from a user, whereby the subpart of the layout displayed in the enlarged view window of the layout indicated by the enlarged view indicator after such movement. Continuing to correspond to the subpart,
Given the font resolution of the font bitmap in the enlarged view window, with the character shape and pixel placement being selected to increase the percentage of placement of the end of the character shape, A media display method in a computer device, wherein each of a plurality of text characters in the web page is displayed in the enlarged view window using pixel boundaries of the font bitmap.
前記ウェブページレイアウトは、前記拡大されたビューウインドウで使用される前記フォントビットマップのレイアウトを定義し、
前記オーバービューウインドウに於いて表示された前記ウェブページレイアウトの表示は、低解像度表示が前記オーバービューウインドウに表示された低解像度フォントビットマップ表示のピクセル境界を用いて、文字形状の端部の配置の前記割合を増加させるために選択された文字形状及びピクセル配置を有していない、前記レイアウトに含まれた前記フォントビットマップに関する縮小された低ピクセル解像度表示を含む、請求項36に記載のコンピュータデバイスに於けるメディア表示方法。
The web page layout defines a layout of the font bitmap used in the enlarged view window;
The display of the web page layout displayed in the overview window uses the pixel boundaries of the low resolution font bitmap display in which the low resolution display is displayed in the overview window, and the arrangement of the ends of the character shape 37. The computer of claim 36, comprising a reduced low pixel resolution display for the font bitmap included in the layout that does not have the character shape and pixel arrangement selected to increase the percentage of Media display method on the device.
前記拡大されたビューウインドウに於いて文字を表示するために使用されたフォントビットマップは、前記フォントビットマップが前記拡大されたビューウインドウに於いて表示される解像度に対して、アンチエイリアスが実行される、アンチエイリアスフォントビットマップである、請求項36に記載のコンピュータデバイスに於けるメディア表示方法。   The font bitmap used to display characters in the enlarged view window is anti-aliased for the resolution at which the font bitmap is displayed in the enlarged view window. 38. A method of displaying media on a computing device according to claim 36, wherein the media display method is an anti-aliased font bitmap. 拡大されたビューウインドウに表示されたテキストはラテンアルファベット文字で構成され、小文字の大部分が4ピクセル又はそれ未満のアドバンス幅で表示されるフォントで表示される、請求項38に記載のコンピュータデバイスに於けるメディア表示方法。   39. The computing device of claim 38, wherein the text displayed in the enlarged view window is composed of Latin alphabetic characters and is displayed in a font that is displayed with an advance width of most 4 lowercase letters or less. Media display method. 前記オーバービューウインドウ及び前記拡大されたビューウインドウは、個別アドレス可能な、異なる色のサブピクセルの所定の配置で構成されたピクセルを有するスクリーン上に表示され、
前記拡大されたビューウインドウに於いて文字を表示するために使用された前記アンチエイリアスフォントビットマップは、前記フォントビットマップによって示されている文字形状によって覆われる所定のサブピクセルの割合を表すカバレッジ値と、少なくとも前記フォントビットマップの幾つかのサブピクセルの場合、所定のサブピクセルに関するカバレッジ値と、異なる色の一つ又は複数の近傍のサブピクセル一式に関するカバレッジ値との間の差異から生じるカラーアンバランスを回避するために作成された、異なる色のサブピクセルを含む、前記所定のカバレッジ値から近傍サブピクセルのカバレッジ値への前記所定のサブピクセルのカバレッジ値の割合に関するカラーバランス分配と、少なくとも前記フォントビットマップの幾つかのサブピクセルの場合、一つ又は複数の近傍のサブピクセルからのカバレッジ値から、所定のサブピクセルのカバレッジ値への一つ又は複数の前記カラーバランス分配と、の機能として、異なる色のサブピクセルに関する前記所定の配置を有するスクリーンピクセルのそれぞれの所定のサブピクセルに対して、輝度値を割り当てるサブピクセル最適化ビットマップであり、
前記カラーバランス分配は、一部となっている全ピクセル内に於いて、カラーアンバランスを引き起こすサブピクセルのカバレッジ値の一部の分配に実質的に制限される、請求項38に記載のコンピュータデバイスに於けるメディア表示方法。
The overview window and the enlarged view window are displayed on a screen having pixels configured with a predetermined arrangement of sub-pixels of different colors, individually addressable;
The anti-aliased font bitmap used to display characters in the enlarged view window has a coverage value that represents the percentage of a given subpixel covered by the character shape indicated by the font bitmap; Color unbalance resulting from the difference between the coverage value for a given subpixel and the coverage value for a set of one or more neighboring subpixels of different colors, at least for some subpixels of the font bitmap A color balance distribution relating to a ratio of the coverage value of the predetermined sub-pixel to the coverage value of the neighboring sub-pixel, including at least the sub-pixels of different colors, How many bitmaps The sub-pixels of different colors as a function of one or more of the color balance distributions from coverage values from one or more neighboring sub-pixels to coverage values of a given sub-pixel. A sub-pixel optimization bitmap that assigns a luminance value to each predetermined sub-pixel of a screen pixel having said predetermined arrangement of pixels;
40. The computing device of claim 38, wherein the color balance distribution is substantially limited to a distribution of a portion of the subpixel coverage value that causes color imbalance within all pixels that are part. Media display method.
前記デジタルコンテンツは、画像及びテキスト文字列の両方を有し、
前記レイアウトに於ける水平及び垂直の仮想位置を、前記画像のそれぞれと、所定のラインに表示されたテキストの文字列のそれぞれの位置に割り当てるために、前記ウェブページの前記レイアウトは、前記画像及びテキストに対する仮想レイアウトピクセルサイズを使用する仮想ピクセル解像度で、前記画像及びテキストをレイアウトすることを含み、
前記第2倍率は、前記拡大されたビューウインドウで表示された前記ウェブページレイアウトの前記一部を、前記仮想ピクセル解像度で実行された前記レイアウトに於ける対応する位置に関連して、前記第2倍率で縮小されるピクセル解像度を用いて表示させる、非単一値を有し、
前記第2倍率によって縮小されるように、仮想ウェブページレイアウトに於ける前記画像及びテキストの位置に対応するピクセル座標に、前記拡大されたビューウインドウに於ける画像及びテキストが表示され、
前記第2倍率によって縮小されるように、仮想レイアウトに於ける前記画像及びテキストに使用されるピクセルサイズに対応する縮小されたピクセルサイズで、前記拡大されたビューウインドウに前記画像及びテキストが描画され、
前記拡大されたビューウインドウに於ける前記テキストの文字列の画像は、前記仮想レイアウトに於ける前記文字列の文字に割り当てられたサイズに関連して、前記第2倍率によって縮小されたピクセルサイズを有するフォントビットマップの連続で構成され、
前記拡大されたビューウインドウに於ける前記文字の一つを表示するために使用されるフォントビットマップによって示された文字の前記形状及びピクセル配置は、前記フォントビットマップが前記拡大されたビューウインドウに表示される解像度で、ビットマップのピクセル境界を用いて、前記文字形状の端部の配置の割合を増加させるために選択されている、請求項36に記載のコンピュータデバイスに於けるメディア表示方法。
The digital content has both an image and a text string,
In order to assign horizontal and vertical virtual positions in the layout to each of the images and each position of a text string displayed on a predetermined line, the layout of the web page includes the images and Laying out the image and text at a virtual pixel resolution using a virtual layout pixel size for the text;
The second magnification is the second magnification relative to the portion of the web page layout displayed in the enlarged view window in relation to a corresponding position in the layout performed at the virtual pixel resolution. Have a non-single value to display with pixel resolution scaled down by magnification,
The image and text in the enlarged view window are displayed at pixel coordinates corresponding to the position of the image and text in a virtual web page layout as reduced by the second magnification,
The image and text are rendered in the enlarged view window at a reduced pixel size corresponding to the pixel size used for the image and text in a virtual layout as reduced by the second magnification. ,
The image of the text string in the enlarged view window has a pixel size reduced by the second magnification in relation to the size assigned to the text string in the virtual layout. Consisting of a series of font bitmaps,
The shape and pixel placement of the character indicated by the font bitmap used to display one of the characters in the enlarged view window is such that the font bitmap is in the enlarged view window. 37. A method for displaying media in a computing device according to claim 36, wherein at a resolution to be displayed, the pixel boundaries of the bitmap are used to increase the percentage of placement of the end of the character shape.
前記分割ビューは、デジタルコンテンツを閲覧可能なブラウザコンピュータの一部であるスクリーン上に表示され、
前記ブラウザコンピュータは、コンピュータネットワーク上でプロキシサーバから、所定のウェブページを要求することによって、そのウェブページを要求するユーザ入力に対応するブラウザプログラムを有しており、
前記プロキシサーバは、コンピュータネットワーク上で前記ユーザ要求を、前記要求されたウェブページの保存、又は、動的な生成を行う一つ又は複数のサーバに伝達し、
前記一つ又は複数のサーバは、前記要求されたウェブページを前記プロキシサーバに送信し、
前記プロキシサーバはデジタルコンテンツの前記受信として、前記ダウンロードされたウェブページを受信し、
前記プロキシサーバは前記ウェブページの前記レイアウトを実行し、
前記プロキシサーバは前記ウェブページレイアウトを前記ブラウザにダウンロードし、
その後、前記ブラウザコンピュータ上で実行している前記ブラウザプログラムが、前記オーバービューウインドウ、及び、前記拡大されたビューウインドウに於ける前記ウェブページレイアウトの前記表示を実行する、請求項36に記載のコンピュータデバイスに於けるメディア表示方法。
The split view is displayed on a screen that is part of a browser computer capable of viewing digital content;
The browser computer has a browser program corresponding to a user input requesting a web page by requesting a predetermined web page from a proxy server on a computer network;
The proxy server communicates the user request over a computer network to one or more servers that store or dynamically generate the requested web page;
The one or more servers send the requested web page to the proxy server;
The proxy server receives the downloaded web page as the reception of digital content,
The proxy server performs the layout of the web page;
The proxy server downloads the web page layout to the browser;
37. The computer of claim 36, wherein the browser program running on the browser computer then performs the display of the web page layout in the overview window and the enlarged view window. Media display method on the device.
前記ブラウザコンピュータは携帯電話である、請求項42に記載のコンピュータデバイスに於けるメディア表示方法。   43. A media display method in a computer device according to claim 42, wherein the browser computer is a mobile phone. 前記ブラウザコンピュータは、ハンドヘルドコンピュータ、又は、ウェアラブルコンピュータである、請求項42に記載のコンピュータデバイスに於けるメディア表示方法。   43. A media display method in a computer device according to claim 42, wherein the browser computer is a handheld computer or a wearable computer. 前記分割ビューは、携帯情報端末(PDA)の前記表示スクリーン上に表示される、請求項36に記載のコンピュータデバイスに於けるメディア表示方法。   38. A media display method in a computer device according to claim 36, wherein the divided view is displayed on the display screen of a personal digital assistant (PDA). 前記分割ビューは、携帯電話の前記表示スクリーンに表示される、請求項36に記載のコンピュータデバイスに於けるメディア表示方法。   40. The method of claim 36, wherein the split view is displayed on the display screen of a mobile phone. 表示されるウェブページを表示するデジタルコンテンツを受信することと、
前記ウェブページをレイアウトすることと、
第1倍率で、前記ウェブページレイアウトの一部をオーバービューウインドウに表示することと、前記レイアウトの要素をオーバービューウインドウに於いてより、より大きく見せる第2倍率で、前記拡大されたビューウインドウが前記オーバービューウインドウに表示されるレイアウトの覆われたサブポーションの拡大されたサブパートを表示する前記オーバービューウインドウに表示された前記レイアウトのサブポーション上に拡大されたビューウインドウを表示することと、を同時に行うことにより、前記ウェブページのビューを生成することと、
前記オーバービューウインドウに関連して、前記拡大されたビューウインドウを移動させることと、これに対応して、前記拡大されたビューウインドウに表示された前記レイアウトの拡大されたサブパートを移動させ、これにより、拡大されたビューウインドウに表示された前記ウェブページレイアウトの前記一部が、そうした移動後に、前記オーバービューウインドウに表示された前記レイアウトの前記覆われたサブポーションのサブパートに継続して対応することと、によって、ユーザからのナビゲーション入力に対応することと、で構成されるコンピュータデバイスに於けるメディア表示方法。
Receiving digital content displaying a displayed web page;
Laying out the web page;
Displaying the portion of the web page layout in the overview window at a first magnification, and the enlarged view window at a second magnification that makes the layout elements appear larger than in the overview window. Displaying an enlarged view window on a subportion of the layout displayed in the overview window, displaying an enlarged subpart of a covered subportion of the layout displayed in the overview window; and Generating a view of the web page by doing simultaneously,
Moving the magnified view window relative to the overview window and correspondingly moving the magnified subpart of the layout displayed in the magnified view window, thereby The portion of the web page layout displayed in the enlarged view window continues to correspond to a subpart of the covered subportion of the layout displayed in the overview window after such movement. And a method for displaying a media in a computer device, which corresponds to navigation input from a user.
前記オーバービューウインドウに表示された前記レイアウトに関連して、前記拡大されたビューウインドウ上に表示された前記レイアウトの前記サブパートの前記位置を示す、一つ又は複数の拡大されたサブパートマーカを表示することをさらに含む、請求項47に記載のコンピュータデバイスに於けるメディア表示方法。   In association with the layout displayed in the overview window, display one or more enlarged subpart markers that indicate the position of the subpart of the layout displayed on the enlarged view window. The method for displaying media in a computer device according to claim 47, further comprising: 一つ又は複数の前記拡大されたサブパートマーカは、一つ又は複数の前記拡大されたビューウインドウの端部の幅、及び/又は、高さのサブパートに沿って伸びており、前記オーバービューに表示された前記レイアウトに関連して、前記拡大されたビューウインドウに表示された前記レイアウトの前記サブパートの水平及び/又は垂直の範囲及び位置をそれぞれ示す、請求項48に記載のコンピュータデバイスに於けるメディア表示方法。   One or more of the enlarged subpart markers extend along one or more of the enlarged view window's edge width and / or height subparts and are displayed in the overview 49. Media in a computing device according to claim 48, each showing a horizontal and / or vertical extent and position of the subparts of the layout displayed in the enlarged view window in relation to the arranged layout Display method. 前記拡大されたビューウインドウは、前記オーバービューウインドウと略同一の幅を有しており、
前記ユーザによるナビゲーション入力への前記対応は、前記オーバービューウインドウに関連して、前記拡大されたビューウインドウを垂直に移動させることと、前記レイアウトに関連して、前記拡大されたビューウインドウに表示された前記レイアウトの前記拡大されたサブパートの位置を垂直に移動させることと、前記オーバービューウインドウに表示された前記レイアウトに関連して、前記レイアウトの前記拡大されたサブパートの垂直位置に於ける前記変化に対応するために、一つ又は複数の前記拡大されたサブパートマーカを垂直に移動させることと、によって、垂直ナビゲーション入力に対応することと、前記レイアウトに関連して、前記拡大されたビューウインドウに表示されたレイアウトの前記拡大されたサブパートの前記位置を水平に移動させることと、前記オーバービューウインドウに表示された前記レイアウトに関連して、前記レイアウトの前記拡大されたサブパートの水平位置に於ける前記変化に対応するために、一つ又は複数の前記拡大されたサブパートマーカを水平に移動させることと、によって、前記オーバービューウインドウに関連して、前記拡大されたビューウインドウを実質的に移動させることなく、水平ナビゲーション入力に対応することと、を含む、請求項48に記載のコンピュータデバイスに於けるメディア表示方法。
The enlarged view window has substantially the same width as the overview window;
The correspondence to the navigation input by the user is displayed in the enlarged view window relative to the overview window and in relation to the layout, the vertical movement of the enlarged view window. Moving the position of the enlarged subpart of the layout vertically and the change in the vertical position of the enlarged subpart of the layout in relation to the layout displayed in the overview window. Moving one or more of the enlarged subpart markers vertically to accommodate a vertical navigation input, and in relation to the layout, to the enlarged view window. The enlarged subpart of the displayed layout One or more to move the position horizontally and to accommodate the change in the horizontal position of the enlarged subpart of the layout in relation to the layout displayed in the overview window. Moving the enlarged sub-part marker horizontally with respect to the overview window and responding to horizontal navigation input without substantially moving the enlarged view window; 49. A method for displaying media in a computing device according to claim 48, comprising:
前記デジタルコンテンツはテキストを含み、
前記レイアウトは、前記テキストを前記ウェブページレイアウトにレイアウトし、
前記拡大されたビューウインドウに表示される前記解像度で、前記フォントビットマップのピクセル境界を使用して、前記文字形状及びピクセル配置が前記文字形状の端部の配置の割合を増加させるために選択されているフォントビットマップによって、前記テキストの複数文字のそれぞれが前記拡大されたビューウインドウに表示される、請求項47に記載のコンピュータデバイスに於けるメディア表示方法。
The digital content includes text;
The layout lays out the text in the web page layout;
At the resolution displayed in the enlarged view window, using the font bitmap's pixel boundaries, the character shape and pixel placement are selected to increase the proportion of edge placement of the character shape. 48. A method for displaying media in a computing device according to claim 47, wherein each of the plurality of characters of the text is displayed in the enlarged view window by a font bitmap.
前記拡大されたビューウインドウに於いて表示されたフォントビットマップと同一のフォントビットマップを使用するが、前記文字形状及びピクセル配列が選択されているピクセル解像度よりも、低ピクセル解像度に縮小して、前記オーバービューウインドウが、前記拡大されたビューウインドウに表示された同一のウェブページレイアウトの縮小された表現を表示する、請求項51に記載のコンピュータデバイスに於けるメディア表示方法。   Use the same font bitmap as the font bitmap displayed in the enlarged view window, but reduce the character shape and pixel array to a lower pixel resolution than the selected pixel resolution, 52. A method of displaying media on a computing device according to claim 51, wherein the overview window displays a reduced representation of the same web page layout displayed in the enlarged view window. 前記拡大されたビューウインドウに於いて文字を表示するために使用された前記フォントビットマップは、フォントビットマップが前記拡大されたビューウインドウに表示されている解像度に対して、アンチエイリアスが実行されるアンチエイリアス化フォントビットマップである、請求項51に記載のコンピュータデバイスに於けるメディア表示方法。   The font bitmap used to display characters in the enlarged view window is an anti-alias that is anti-aliased for the resolution at which the font bitmap is displayed in the enlarged view window. 52. A method of displaying media in a computer device according to claim 51, wherein the media display method is a normalized font bitmap. 前記拡大されたビューウインドウに表示されたテキストは、ラテンアルファベットの文字で構成され、小文字の大部分が4ピクセル又はそれ未満のアドバンス幅で表示されるフォントで表示される、請求項53に記載のコンピュータデバイスに於けるメディア表示方法。   54. The text displayed in the enlarged view window is displayed in a font composed of letters of the Latin alphabet, with the majority of lowercase letters displayed at an advance width of 4 pixels or less. A method for displaying media on a computer device. 前記オーバービューウインドウ及び前記拡大されたビューウインドウが表示される前記スクリーンは、個別アドレス可能な、異なる色のサブピクセルに関する所定の配置で構成されたピクセルを有しており、
前記拡大されたビューに於いて文字を表示するために使用される前記アンチエイリアスフォントビットマップは、前記フォントビットマップによって示されている文字形状によって覆われた所定のサブピクセルの割合を示すカバレッジ値と、少なくとも前記フォントビットマップの幾つかのサブピクセルの場合、異なる色のサブピクセルを含み、前記所定のサブピクセルに関するカバレッジ値と、異なる色の所定の一つ又は複数の近傍のサブピクセル一式に関するカバレッジ値との差異から生じるカラーアンバランスを回避するために作成された、前記カバレッジ値から近傍のサブピクセルのカバレッジ値までの所定のサブピクセルのカバレッジ値の割合に関するカラーバランス分配と、少なくとも前記フォントビットマップの幾つかのサブピクセルの場合、一つ又は複数の近傍のサブピクセルからの前記カバレッジ値から、前記所定のサブピクセルのカバレッジ値への一つ又は複数の前記カラーバランス分配と、の関数として、異なる色のサブピクセルの前記所定の配置を有するスクリーンピクセルのそれぞれの所定のサブピクセルに輝度値を割り当てるサブピクセル最適化ビットマップであり、
前記カラーバランス分配は、一部となっている全ピクセル内でカラーアンバランスを引き起こすサブピクセルのカバレッジ値の一部の分配に実質的に制限されている、請求項53に記載のコンピュータデバイスに於けるメディア表示方法。
The screen on which the overview window and the enlarged view window are displayed has pixels configured in a predetermined arrangement with respect to sub-pixels of different colors that are individually addressable;
The anti-aliased font bitmap used to display characters in the magnified view has a coverage value that indicates the percentage of a given sub-pixel covered by the character shape indicated by the font bitmap; At least some of the sub-pixels of the font bitmap, including sub-pixels of different colors, coverage values for the predetermined sub-pixels and coverage for a predetermined set of one or more neighboring sub-pixels of different colors A color balance distribution for a ratio of coverage values of a given sub-pixel from the coverage value to a coverage value of a neighboring sub-pixel, created to avoid color imbalance resulting from a difference from the value, and at least the font bits Several sub-maps In the case of a ksel, sub-pixels of different colors as a function of the coverage value from one or more neighboring sub-pixels and one or more of the color balance distributions to the coverage value of the predetermined sub-pixel. A sub-pixel optimization bitmap that assigns a luminance value to each predetermined sub-pixel of a screen pixel having the predetermined arrangement of:
54. The computing device of claim 53, wherein the color balance distribution is substantially limited to a distribution of a portion of the subpixel coverage value that causes color imbalance within all pixels that are part. Media display method.
前記デジタルコンテンツは、一つ又は複数の画像、及び、一つ又は複数のテキスト文字列を含み、
前記レイアウトに於ける水平及び垂直の仮想位置を、前記画像のそれぞれ、及び、所定のラインに表示されたテキストの文字列のそれぞれの部分に割り当てるために、前記ウェブページの前記レイアウトは、前記画像及びテキストに対するレイアウトピクセルサイズを使用する仮想ピクセル解像度で、前記画像及びテキストをレイアウトすることを含み、
前記仮想ピクセル解像度で実行されたレイアウトに於ける対応する部分に関連して、前記第2倍率によって縮小されるピクセル解像度で、前記拡大されたビューウインドウに表示された前記ウェブページレイアウトの一部が表示され、
前記拡大されたビューウインドウに於ける画像及びテキストは、前記第2倍率によって縮小されているように、仮想ウェブページレイアウトに於ける前記画像及びテキストの位置に対応するピクセル座標に表示され、
前記第2倍率によって縮小されるように、仮想レイアウトに於ける前記画像及びテキストに対して使用された前記ピクセルサイズに対応する縮小されたピクセルサイズで、前記画像及びテキストは前記拡大されたビューウインドウに描画され、
前記拡大されたビューウインドウに於けるテキストの文字列の前記画像は、前記仮想レイアウトに於ける前記文字列の前記文字に割り当てられた前記サイズに関連して、前記第2倍率によって縮小されたピクセルサイズを有し、それぞれのそうしたフォントビットマップによって表示された前記文字形状の前記形状及びピクセル配置が、ビットマップのピクセル境界を用いて、前記文字形状の端部の配置の割合を増加させるために選択されている、フォントビットマップの連続で構成されている、請求項47に記載のコンピュータデバイスに於けるメディア表示方法。
The digital content includes one or more images and one or more text strings,
In order to assign horizontal and vertical virtual positions in the layout to each of the images and to respective portions of text strings displayed in a predetermined line, the layout of the web page is the image And laying out the image and text at a virtual pixel resolution using a layout pixel size for the text,
A portion of the web page layout displayed in the enlarged view window at a pixel resolution reduced by the second magnification is associated with a corresponding portion in the layout performed at the virtual pixel resolution. Displayed,
The image and text in the enlarged view window are displayed at pixel coordinates corresponding to the position of the image and text in a virtual web page layout, as reduced by the second magnification,
With the reduced pixel size corresponding to the pixel size used for the image and text in a virtual layout as reduced by the second magnification, the image and text are the enlarged view window. Drawn on
The image of the text string in the enlarged view window is reduced by the second scale factor in relation to the size assigned to the text in the text string in the virtual layout. The shape and pixel arrangement of the character shape having a size and represented by each such font bitmap to increase the proportion of the arrangement of the end of the character shape using the pixel boundaries of the bitmap 48. A method for displaying media on a computing device according to claim 47, comprising a series of selected font bitmaps.
前記オーバービューウインドウ及び前記拡大されたビューウインドウは、デジタルコンテンツを閲覧可能なブラウザコンピュータの一部であるスクリーン上に表示され、
前記ブラウザコンピュータは、所定のウェブページを要求するユーザ入力に対して、コンピュータネットワーク上でプロキシサーバからの前記所定のウェブページを要求することによって対応するブラウザプログラムを含み、
前記プロキシサーバは、コンピュータネットワーク上で、前記ユーザ要求を、前記要求されたウェブページを保存、又は、動的に生成する一つ又は複数のサーバに伝達し、
前記一つ又は複数のサーバは、前記要求されたウェブページを前記プロキシサーバに送信し、
前記プロキシサーバはデジタルコンテンツの前記受信として、前記ダウンロードされたウェブページを受信し、
前記プロキシサーバは前記ウェブページの前記レイアウトを実行し、
前記プロキシサーバは前記ウェブサイトレイアウトを前記ブラウザにダウンロードし、
その後、前記ブラウザコンピュータ上で実行している前記ブラウザプログラムは、前記オーバービューウインドウ及び前記拡大されたビューウインドウに於ける前記ウェブページレイアウトの前記表示を実行する、請求項47に記載のコンピュータデバイスに於けるメディア表示方法。
The overview window and the enlarged view window are displayed on a screen that is part of a browser computer capable of viewing digital content;
The browser computer includes a browser program that responds to a user input requesting a predetermined web page by requesting the predetermined web page from a proxy server over a computer network;
The proxy server communicates the user request over a computer network to one or more servers that store or dynamically generate the requested web page;
The one or more servers send the requested web page to the proxy server;
The proxy server receives the downloaded web page as the reception of digital content,
The proxy server performs the layout of the web page;
The proxy server downloads the website layout to the browser;
48. The computing device of claim 47, wherein the browser program running on the browser computer then performs the display of the web page layout in the overview window and the enlarged view window. Media display method.
前記ブラウザコンピュータは、携帯電話である、請求項57に記載のコンピュータデバイスに於けるメディア表示方法。   58. A media display method in a computer device according to claim 57, wherein the browser computer is a mobile phone. 前記ブラウザコンピュータは、ハンドヘルドコンピュータ、又は、ウェアラブルコンピュータである、請求項57に記載のコンピュータデバイスに於けるメディア表示方法。   58. The method of displaying media on a computing device according to claim 57, wherein the browser computer is a handheld computer or a wearable computer. 複数の表示可能なテキストの文字列、及び、コラムに於ける文字列、前記コラムのレイアウト幅、及び、前記コラムの水平レイアウト置換に関する仕様をそれぞれが含む、複数コラムの仕様等、多層コラムウェブページのコンテンツにアクセスすることと、
各コラムの水平レイアウト位置が前記コラムの水平置換の仕様の関数として決定される場合、前記コラムのそれぞれに対するレイアウト位置を決定すること等、レイアウト倍率を使用する多層コラムフォーマットに前記ウェブページをレイアウトすることと、
複数の異なる水平置換された前記レイアウトのサブパートの中から、多層コラムレイアウトの所定のサブパートをユーザに選択可能にさせることと、
所定の表示倍率で所定の水平解像度を有する所定のスクリーンウインドウ上に前記ユーザが選択したレイアウト部分を表示することと、で構成され、
前記多層コラムは、一番左のコラムの一番左の端部から、一番右のコラムの一番右の端部まで、総合多層レイアウト幅を有する横方向に配置されたコラム一式を含み、
前記レイアウト倍率で拡大/縮小されているように、前記一つ又は複数のコラムの特定されたレイアウト幅のそれぞれに対応する幅が、最大所望コラム幅よりも長い場合、前記レイアウトは、前記一つ又は複数の前記横方向に配置されたコラムに於けるテキストがレイアウトされる幅を、前記最大所望コラム幅よりも短い、又は、同等の幅に制限することを含み、
前記最大所望コラム幅は前記総合多層コラムレイアウト幅よりも短く、前記所定の倍率で前記所定のウインドウに表示される場合、前記所定のウインドウの幅よりも短い、又は、同等である、ウェブページ表示方法。
Multi-column column web pages, including multiple column specifications, each of which includes multiple displayable text strings, column character strings, column layout width, and column horizontal layout replacement specifications, respectively. Accessing the content of
If the horizontal layout position of each column is determined as a function of the specifications for the horizontal replacement of the column, the web page is laid out in a multi-layer column format that uses layout magnification, such as determining the layout position for each of the columns And
Allowing a user to select a predetermined subpart of a multi-layer column layout from among a plurality of different horizontally replaced subparts of the layout;
Displaying the layout portion selected by the user on a predetermined screen window having a predetermined horizontal resolution at a predetermined display magnification,
The multilayer column includes a set of columns arranged in a lateral direction having an overall multilayer layout width from the leftmost end of the leftmost column to the rightmost end of the rightmost column;
If the width corresponding to each of the specified layout widths of the one or more columns is longer than the maximum desired column width as scaled up / down at the layout magnification, the layout is Or limiting the width in which text in a plurality of the laterally arranged columns is laid out to a width shorter than or equal to the maximum desired column width,
The maximum desired column width is shorter than the total multi-layer column layout width, and when displayed in the predetermined window at the predetermined magnification, the web page display is shorter than or equal to the width of the predetermined window Method.
前記アクセスされたウェブページのコンテンツは一つ又は複数の画像を含み、
個別のコラムに関する前記仕様は、テキスト、及び/又は、一つ又は複数の画像が前記コラムに存在する仕様を含み、
ウェブページのレイアウトは、前記コラムに存在する前記テキスト、及び/又は、複数の画像の位置をレ各コラムに於いてレイアウトすることを含み、
前記レイアウト倍率によって拡大/縮小されているように、前記画像に対応する前記幅が前記最大所望コラム幅よりも長い場合、一つ又は複数の前記横方向に配置されたコラムに於けるテキストがレイアウトされる幅の前記制限は、そうしたコラムにレイアウトされる任意の画像の幅を、そうした画像のサイズを縮小することによって、前記最大所望コラム幅よりも短い、又は、同等の幅に制限することを含む、請求項60に記載のウェブページ表示方法。
The accessed web page content includes one or more images;
The specifications for individual columns include specifications where text and / or one or more images are present in the columns;
The layout of the web page includes laying out the text and / or the positions of a plurality of images existing in the column in each column,
If the width corresponding to the image is longer than the maximum desired column width as scaled by the layout magnification, text in one or more of the horizontally arranged columns is laid out The limitation of the width to be limited is to limit the width of any image laid out in such a column to a width that is shorter than or equal to the maximum desired column width by reducing the size of such an image. The web page display method according to claim 60, further comprising:
前記横方向に配置されたコラムの一つが、前記最大所望コラム幅よりも短いコラムの特定された幅に対応するレイアウト幅を有し、
前記コラムに於ける前記テキストが前記コラムの特定された幅に対応する前記レイアウト幅でレイアウトされる、請求項60に記載のウェブページ表示方法。
One of the laterally arranged columns has a layout width corresponding to a specified width of the column shorter than the maximum desired column width;
61. The method of claim 60, wherein the text in the column is laid out with the layout width corresponding to the specified width of the column.
前記横方向に配置されたコラムの第1コラムのテキスが配置される幅が前記幅制限によって減少され、
前記第1コラムの右側にレイアウトされる前記横方向に配置されたコラムの第2コラムは、前記レイアウト倍率で拡大/縮小されているように、前記第1コラムのテキストの前記レイアウト幅に於ける前記減少の関数として、前記第2コラムの水平置換仕様に関連して減少される右方向の水平置換でレイアウトされる、請求項60に記載のウェブページ表示方法。
The width in which the text of the first column of the laterally arranged columns is arranged is reduced by the width limitation;
The second column of the horizontally arranged columns laid out on the right side of the first column is at the layout width of the text of the first column so that it is enlarged / reduced by the layout magnification. 61. The web page display method according to claim 60, wherein the web page display method is laid out with a horizontal displacement in the right direction that is reduced relative to the horizontal replacement specification of the second column as a function of the reduction.
前記レイアウト倍率、及び/又は、前記表示倍率によって、前記所定の表示倍率の前記所定のスクリーンウインドウ上の前記ユーザが選択したレイアウト部分の表示が、テキストコラムの前記レイアウト幅に関する前記制限の実施とは独立して、縮小されたテキスト解像度で、前記テキストの文字など前記ウェブページの要素を表示する、請求項60に記載のウェブページ表示方法。   The display of the layout portion selected by the user on the predetermined screen window at the predetermined display magnification according to the layout magnification and / or the display magnification is the implementation of the restriction on the layout width of the text column. 61. The web page display method according to claim 60, wherein elements of the web page such as characters of the text are displayed independently at a reduced text resolution. 前記表示に於けるテキストの個別の文字が、フォントビットマップが前記表示に表示される前記解像度に対するピクセル境界を有する前記文字の形状の端部の配列の前記割合を増加させるために、前記文字の形状及びピクセル配列が選択されているフォントビットマップによって、それぞれ表示される、請求項64に記載のウェブページ表示方法。   The individual characters of the text in the display may increase the percentage of the character array edge array having a pixel boundary for the resolution at which a font bitmap is displayed in the display. The web page display method according to claim 64, wherein each of the shapes and the pixel arrangement is displayed by a selected font bitmap. 前記表示に表示された前記フォントビットマップは、前記フォントビットマップが前記表示に表示される解像度に対してアンチエイリアスが実行される、アンチエイリアスフォントビットマップである、請求項65に記載のウェブページ表示方法。   66. The web page display method of claim 65, wherein the font bitmap displayed in the display is an anti-aliased font bitmap in which anti-aliasing is performed on the resolution at which the font bitmap is displayed on the display. . 前記表示に表示されたテキストがラテンアルファベットの文字で構成され、小文字の大部分が4ピクセル又はそれ未満のアドバンス幅で表示されるフォントで表示される、請求項66に記載のウェブページ表示方法。   68. The web page display method according to claim 66, wherein the text displayed in the display is composed of Latin alphabet characters, and the lowercase letters are displayed in a font displayed with an advance width of 4 pixels or less. 所定のスクリーンウインドウが個別アドレス可能で、異なる色のサブピクセルに関する所定の配置で構成されたピクセルを有し、
前記表示に於ける文字を表示するために使用される前記アンチエイリアスフォントビットマップは、前記フォントビットマップで表示されている文字形状によって覆われた所定のサブピクセルの割合を示すカバレッジ値と、少なくとも前記フォントビットマップの幾つかのサブピクセルの場合、前記所定のサブピクセルのカバレッジ値と、所定の一つ又は複数の異なる色の近傍ピクセル一式との間の差異から生じるカラーアンバランスを防ぐためになされる、異なる色のサブピクセルを含む、前記カバレッジ値から近傍サブピクセルのカバレッジ値への、所定のサブピクセルのカバレッジ値の割合に関するカラーバランス配分と、少なくとも前記フォントビットマップの幾つかのサブピクセルの場合、一つ又は複数の近傍サブピクセルからのカバレッジ値から、前記所定のサブピクセルのカバレッジ値に対する一つ又は複数の前記カラーバランス配分と、の関数として、異なる色のサブピクセルに関する前記所定の配置を有する、スクリーンピクセルに関するそれぞれの所定のサブピクセルに輝度値を割り当てるサブピクセル最適化ビットマップであり、
前記カラーバランス配分は、一部となっている全ピクセル内でカラーアンバランスを引き起こすサブピクセルのカバレッジ値の一部の配置に実質的に制限される、請求項66に記載のウェブページ表示方法。
A predetermined screen window is individually addressable and has pixels arranged in a predetermined arrangement with respect to sub-pixels of different colors;
The anti-aliased font bitmap used to display characters in the display includes a coverage value indicating a percentage of a predetermined sub-pixel covered by the character shape displayed in the font bitmap, and at least the In the case of several subpixels of a font bitmap, this is done to prevent color imbalance resulting from the difference between the coverage value of the given subpixel and a given set of neighboring pixels of one or more different colors. A color balance distribution for the ratio of the coverage value of a given subpixel from the coverage value to the coverage value of a neighboring subpixel, including subpixels of different colors, and at least for some subpixels of the font bitmap , From one or more neighboring subpixels Each predetermined sub-pixel for a screen pixel having the predetermined arrangement for sub-pixels of different colors as a function of a leverage value and one or more of the color balance distributions for the coverage value of the predetermined sub-pixel. Is a sub-pixel optimization bitmap that assigns brightness values to
68. The method of claim 66, wherein the color balance distribution is substantially limited to placement of a portion of the subpixel coverage values that cause color imbalance within all pixels that are part.
前記所定の表示倍率で、拡大されたビューウインドウである前記所定のウインドウに於けるレイアウトのユーザが選択した部分の前記表示を実行することと、
前記レイアウトの要素を前記拡大されたビューウインドウに於いてより、より小さく見えるようにする異なる表示倍率で、前記拡大されたビューウインドウに表示されたレイアウトの前記ユーザが選択した部分よりも大きな前記ウェブページレイアウトの一部を、オーバービューウインドウに於いて表示することと、
現在、前記拡大されたビューウインドウに表示されている前記オーバービューウインドウに表示された前記レイアウトの前記一部を示す拡大されたビューインジケータを前記オーバービューウインドウで表示することと、
前記拡大されたビューウインドウに表示された前記ウェブページレイアウトの前記ユーザが選択した部分を移動させることと、また、前記オーバービューウインドウに於ける前記拡大されたビューインジケータをこれに対応して移動させることと、によって、ユーザからのナビゲーション入力に対応し、これにより、前記拡大されたビューウインドウに表示された前記レイアウトの前記一部が、そうした移動後に前記拡大されたビューインジケータによって示された前記レイアウトの前記一部に継続して対応することと、を同時に行うことによって、前記ウェブページの分割ビューが作成される、請求項60に記載のウェブページ表示方法。
Executing the display of the portion selected by the user of the layout in the predetermined window which is an enlarged view window at the predetermined display magnification;
The web larger than the user selected portion of the layout displayed in the enlarged view window at a different display magnification that makes the elements of the layout appear smaller in the enlarged view window Displaying part of the page layout in the overview window;
Displaying an enlarged view indicator in the overview window indicating the portion of the layout displayed in the overview window currently displayed in the enlarged view window;
Moving the user-selected portion of the web page layout displayed in the enlarged view window, and moving the enlarged view indicator in the overview window correspondingly. Corresponding to navigation input from a user, whereby the portion of the layout displayed in the enlarged view window is indicated by the enlarged view indicator after such movement. 61. The web page display method according to claim 60, wherein a split view of the web page is created by simultaneously responding to the portion of the web page.
前記表示がなされる前記スクリーンは、デジタルコンテンツを閲覧可能なブラウザコンピュータの一部であり、
前記ブラウザコンピュータは、所定のウェブページを要求するユーザ入力に対して、コンピュータネットワーク上でプロキシサーバからそのウェブページを要求することによって対応するブラウザプログラムを含み、
前記プロキシサーバは、コンピュータネットワーク上で、前記ユーザ要求を、前記要求されたウェブページを保存、又は、動的に形成する一つ又は複数のサーバに伝達し、
前記一つ又は複数のサーバは、前記要求されたウェブページを前記プロキシサーバに送信し、
前記プロキシサーバは、デジタルコンテンツの前記受信として、前記ダウンロードされたウェブページを受信し、
前記プロキシサーバは、ウェブページの前記レイアウトを実行し、
前記プロキシサーバは前記ウェブページレイアウトを前記ブラウザにダウンロードし、
その後、前記ブラウザコンピュータ上で実行する前記閲覧プログラムが前記レイアウトの前記ユーザが選択した部分に関する前記表示を実行する、請求項60に記載のウェブページ表示方法。
The screen on which the display is made is a part of a browser computer capable of browsing digital content,
The browser computer includes a browser program that responds to a user input requesting a predetermined web page by requesting the web page from a proxy server over a computer network;
The proxy server communicates the user request over a computer network to one or more servers that store or dynamically form the requested web page;
The one or more servers send the requested web page to the proxy server;
The proxy server receives the downloaded web page as the reception of digital content,
The proxy server performs the layout of web pages;
The proxy server downloads the web page layout to the browser;
61. The web page display method according to claim 60, wherein the browsing program executed on the browser computer then executes the display relating to the portion selected by the user of the layout.
JP2004570993A 2002-12-03 2003-12-03 MEDIA DISPLAY METHOD FOR COMPUTER DEVICE, COMPUTER DEVICE, COMPUTER PROGRAM Expired - Fee Related JP4498146B2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US43087202P 2002-12-03 2002-12-03
US44572703P 2003-02-07 2003-02-07
US10/389,445 US7219309B2 (en) 2001-05-02 2003-03-14 Innovations for the display of web pages
PCT/US2003/038342 WO2004051429A2 (en) 2002-12-03 2003-12-03 Innovations for the display of web pages

Publications (3)

Publication Number Publication Date
JP2006518055A true JP2006518055A (en) 2006-08-03
JP2006518055A5 JP2006518055A5 (en) 2007-07-05
JP4498146B2 JP4498146B2 (en) 2010-07-07

Family

ID=32475355

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2004570993A Expired - Fee Related JP4498146B2 (en) 2002-12-03 2003-12-03 MEDIA DISPLAY METHOD FOR COMPUTER DEVICE, COMPUTER DEVICE, COMPUTER PROGRAM
JP2004570994A Pending JP2006524367A (en) 2002-12-03 2003-12-03 Method, system, and program related to enlarged / reduced display of web page

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2004570994A Pending JP2006524367A (en) 2002-12-03 2003-12-03 Method, system, and program related to enlarged / reduced display of web page

Country Status (5)

Country Link
US (1) US7219309B2 (en)
EP (1) EP1579295A4 (en)
JP (2) JP4498146B2 (en)
AU (2) AU2003298825A1 (en)
WO (2) WO2004051429A2 (en)

Families Citing this family (203)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6911987B1 (en) * 1995-07-05 2005-06-28 Microsoft Corporation Method and system for transmitting data for a shared application
US7760187B2 (en) * 2004-07-30 2010-07-20 Apple Inc. Visual expander
US7210099B2 (en) 2000-06-12 2007-04-24 Softview Llc Resolution independent vector display of internet content
ATE459908T1 (en) 2001-05-02 2010-03-15 Bitstream Inc METHODS, SYSTEMS AND PROGRAMMING FOR PRODUCING AND DISPLAYING SUBPIXEL-OPTIMIZED FONT BITMAPS USING NON-LINEAR COLOR BALANCING
US7219309B2 (en) 2001-05-02 2007-05-15 Bitstream Inc. Innovations for the display of web pages
US6904570B2 (en) * 2001-06-07 2005-06-07 Synaptics, Inc. Method and apparatus for controlling a display of data on a display screen
US7307642B2 (en) * 2001-06-28 2007-12-11 Ideaworks 3D Ltd. Graphics compression
US20030014445A1 (en) * 2001-07-13 2003-01-16 Dave Formanek Document reflowing technique
US7849394B2 (en) * 2001-10-25 2010-12-07 The Math Works, Inc. Linked code generation report
US8104017B2 (en) 2001-10-25 2012-01-24 The Mathworks, Inc. Traceability in a modeling environment
US7770130B1 (en) * 2002-02-07 2010-08-03 Viktor Kaptelinin Non-distracting temporary visual clues for scrolling
US8590013B2 (en) 2002-02-25 2013-11-19 C. S. Lee Crawford Method of managing and communicating data pertaining to software applications for processor-based devices comprising wireless communication circuitry
US7418664B2 (en) * 2002-04-03 2008-08-26 Microsoft Corporation Application sharing single document sharing
US7028266B2 (en) * 2002-04-05 2006-04-11 Microsoft Corporation Processing occluded windows during application sharing
US8756513B1 (en) 2002-04-23 2014-06-17 Microsoft Corporation Document viewing mechanism for document sharing environment
US7293243B1 (en) * 2002-05-22 2007-11-06 Microsoft Corporation Application sharing viewer presentation
US7356563B1 (en) 2002-06-06 2008-04-08 Microsoft Corporation Methods of annotating a collaborative application display
US7065704B1 (en) * 2002-07-18 2006-06-20 Embedded Internet Solutions, Inc. Methods for fast HTML rendering
US8015259B2 (en) * 2002-09-10 2011-09-06 Alan Earl Swahn Multi-window internet search with webpage preload
US7552387B2 (en) * 2003-04-30 2009-06-23 Hewlett-Packard Development Company, L.P. Methods and systems for video content browsing
JP4082591B2 (en) 2003-05-20 2008-04-30 インターナショナル・ビジネス・マシーンズ・コーポレーション Data editing apparatus and program
JP4554280B2 (en) * 2003-06-12 2010-09-29 マイクロソフト コーポレーション System and method for displaying images using multiple blending
US20050005028A1 (en) * 2003-07-01 2005-01-06 Jong Huang Automated image markup system and method
JP4177731B2 (en) * 2003-07-28 2008-11-05 株式会社東芝 Electronic device, screen control method, and screen control program
KR100501334B1 (en) * 2003-08-04 2005-07-18 삼성전자주식회사 Apparatus and method for processing multimedia data of home media gateway improving thin client technique
JP2005070898A (en) * 2003-08-20 2005-03-17 Toshiba Corp Information processor and display control method
US7154511B2 (en) * 2003-10-24 2006-12-26 Microsoft Corporation Fast rendering of ink
US9032096B2 (en) * 2003-12-17 2015-05-12 Cisco Technology, Inc. Reducing the impact of network latency on application performance
JP2005182463A (en) * 2003-12-19 2005-07-07 Toshiba Corp Information processor and display control method
JP3949674B2 (en) * 2004-05-11 2007-07-25 株式会社コナミデジタルエンタテインメント Display device, display method, and program
JP4401884B2 (en) * 2004-07-16 2010-01-20 キヤノン株式会社 Video signal processing apparatus and method
US7664751B2 (en) 2004-09-30 2010-02-16 Google Inc. Variable user interface based on document access privileges
US20060085781A1 (en) 2004-10-01 2006-04-20 Lockheed Martin Corporation Library for computer-based tool and related system and method
US7603355B2 (en) * 2004-10-01 2009-10-13 Google Inc. Variably controlling access to content
US8418075B2 (en) * 2004-11-16 2013-04-09 Open Text Inc. Spatially driven content presentation in a cellular environment
US8001476B2 (en) 2004-11-16 2011-08-16 Open Text Inc. Cellular user interface
GB0427811D0 (en) * 2004-12-18 2005-01-19 Ibm User interface with scroll bar control
US20060174212A1 (en) * 2005-02-01 2006-08-03 Eastman Kodak Company Information presentation on wide-screen displays
US8423673B2 (en) 2005-03-14 2013-04-16 Citrix Systems, Inc. Method and apparatus for updating a graphical display in a distributed processing environment using compression
JP4696612B2 (en) * 2005-03-16 2011-06-08 富士ゼロックス株式会社 Display control apparatus and display screen reduction method
JP4900640B2 (en) * 2005-03-30 2012-03-21 京セラ株式会社 Portable terminal device and document display control method thereof
JP4466571B2 (en) * 2005-05-12 2010-05-26 株式会社デンソー Driver status detection device, in-vehicle alarm device, driving support system
US9477775B2 (en) * 2005-06-03 2016-10-25 Nokia Technologies Oy System and method for maintaining a view location during rendering of a page
US20060277488A1 (en) * 2005-06-07 2006-12-07 Eastman Kodak Company Information presentation on wide-screen displays
US20110313853A1 (en) 2005-09-14 2011-12-22 Jorey Ramer System for targeting advertising content to a plurality of mobile communication facilities
US20070061198A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Mobile pay-per-call campaign creation
US7676394B2 (en) 2005-09-14 2010-03-09 Jumptap, Inc. Dynamic bidding and expected value
US8812526B2 (en) 2005-09-14 2014-08-19 Millennial Media, Inc. Mobile content cross-inventory yield optimization
US8666376B2 (en) 2005-09-14 2014-03-04 Millennial Media Location based mobile shopping affinity program
US8503995B2 (en) 2005-09-14 2013-08-06 Jumptap, Inc. Mobile dynamic advertisement creation and placement
US10911894B2 (en) 2005-09-14 2021-02-02 Verizon Media Inc. Use of dynamic content generation parameters based on previous performance of those parameters
US20070061334A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Search query address redirection on a mobile communication facility
US9076175B2 (en) 2005-09-14 2015-07-07 Millennial Media, Inc. Mobile comparison shopping
US8229914B2 (en) 2005-09-14 2012-07-24 Jumptap, Inc. Mobile content spidering and compatibility determination
US8156128B2 (en) 2005-09-14 2012-04-10 Jumptap, Inc. Contextual mobile content placement on a mobile communication facility
US8209344B2 (en) 2005-09-14 2012-06-26 Jumptap, Inc. Embedding sponsored content in mobile applications
US9058406B2 (en) 2005-09-14 2015-06-16 Millennial Media, Inc. Management of multiple advertising inventories using a monetization platform
US8302030B2 (en) 2005-09-14 2012-10-30 Jumptap, Inc. Management of multiple advertising inventories using a monetization platform
US10592930B2 (en) 2005-09-14 2020-03-17 Millenial Media, LLC Syndication of a behavioral profile using a monetization platform
US8364521B2 (en) 2005-09-14 2013-01-29 Jumptap, Inc. Rendering targeted advertisement on mobile communication facilities
US8103545B2 (en) 2005-09-14 2012-01-24 Jumptap, Inc. Managing payment for sponsored content presented to mobile communication facilities
US10038756B2 (en) 2005-09-14 2018-07-31 Millenial Media LLC Managing sponsored content based on device characteristics
US9471925B2 (en) 2005-09-14 2016-10-18 Millennial Media Llc Increasing mobile interactivity
US9703892B2 (en) 2005-09-14 2017-07-11 Millennial Media Llc Predictive text completion for a mobile communication facility
US7752209B2 (en) 2005-09-14 2010-07-06 Jumptap, Inc. Presenting sponsored content on a mobile communication facility
US9201979B2 (en) 2005-09-14 2015-12-01 Millennial Media, Inc. Syndication of a behavioral profile associated with an availability condition using a monetization platform
US7577665B2 (en) 2005-09-14 2009-08-18 Jumptap, Inc. User characteristic influenced search results
US7860871B2 (en) * 2005-09-14 2010-12-28 Jumptap, Inc. User history influenced search results
US8195133B2 (en) 2005-09-14 2012-06-05 Jumptap, Inc. Mobile dynamic advertisement creation and placement
US8805339B2 (en) 2005-09-14 2014-08-12 Millennial Media, Inc. Categorization of a mobile user profile based on browse and viewing behavior
US8832100B2 (en) 2005-09-14 2014-09-09 Millennial Media, Inc. User transaction history influenced search results
US8027879B2 (en) 2005-11-05 2011-09-27 Jumptap, Inc. Exclusivity bidding for mobile sponsored content
US8688671B2 (en) 2005-09-14 2014-04-01 Millennial Media Managing sponsored content based on geographic region
US7660581B2 (en) 2005-09-14 2010-02-09 Jumptap, Inc. Managing sponsored content based on usage history
US8515400B2 (en) 2005-09-14 2013-08-20 Jumptap, Inc. System for targeting advertising content to a plurality of mobile communication facilities
US8290810B2 (en) 2005-09-14 2012-10-16 Jumptap, Inc. Realtime surveying within mobile sponsored content
US8364540B2 (en) * 2005-09-14 2013-01-29 Jumptap, Inc. Contextual targeting of content using a monetization platform
US8819659B2 (en) 2005-09-14 2014-08-26 Millennial Media, Inc. Mobile search service instant activation
US8989718B2 (en) 2005-09-14 2015-03-24 Millennial Media, Inc. Idle screen advertising
US8660891B2 (en) 2005-11-01 2014-02-25 Millennial Media Interactive mobile advertisement banners
US8131271B2 (en) 2005-11-05 2012-03-06 Jumptap, Inc. Categorization of a mobile user profile based on browse behavior
US8311888B2 (en) 2005-09-14 2012-11-13 Jumptap, Inc. Revenue models associated with syndication of a behavioral profile using a monetization platform
US7702318B2 (en) 2005-09-14 2010-04-20 Jumptap, Inc. Presentation of sponsored content based on mobile transaction event
US8615719B2 (en) * 2005-09-14 2013-12-24 Jumptap, Inc. Managing sponsored content for delivery to mobile communication facilities
US8238888B2 (en) 2006-09-13 2012-08-07 Jumptap, Inc. Methods and systems for mobile coupon placement
US7912458B2 (en) 2005-09-14 2011-03-22 Jumptap, Inc. Interaction analysis and prioritization of mobile content
US7769764B2 (en) 2005-09-14 2010-08-03 Jumptap, Inc. Mobile advertisement syndication
US7796837B2 (en) * 2005-09-22 2010-09-14 Google Inc. Processing an image map for display on computing device
GB2431742A (en) * 2005-10-27 2007-05-02 Hewlett Packard Development Co A method of retrieving data from a data repository
US8175585B2 (en) 2005-11-05 2012-05-08 Jumptap, Inc. System for targeting advertising content to a plurality of mobile communication facilities
JP4779584B2 (en) * 2005-11-11 2011-09-28 Kddi株式会社 Content presentation device, small information communication terminal and content presentation program in small information communication terminal
US8571999B2 (en) 2005-11-14 2013-10-29 C. S. Lee Crawford Method of conducting operations for a social network application including activity list generation
CN100356377C (en) * 2005-12-20 2007-12-19 无锡永中科技有限公司 Document display method
US8812978B2 (en) * 2005-12-22 2014-08-19 Xerox Corporation System and method for dynamic zoom to view documents on small displays
KR100735262B1 (en) * 2005-12-29 2007-07-03 삼성전자주식회사 Method for displaying automatically in wireless terminal
US20070156382A1 (en) 2005-12-29 2007-07-05 Graham James L Ii Systems and methods for designing experiments
US20070168855A1 (en) * 2006-01-17 2007-07-19 Sushma Bharat Patel Screen splitting for Web browsers
US20070204220A1 (en) * 2006-02-27 2007-08-30 Microsoft Corporation Re-layout of network content
TW200734913A (en) * 2006-03-10 2007-09-16 Inventec Appliances Corp Electronic device and method using displacement sensor to move position displayed on screen
CN101449270B (en) * 2006-03-15 2011-11-16 谷歌公司 Automatic display of resized images
JP2007256529A (en) * 2006-03-22 2007-10-04 Ricoh Co Ltd Document image display device, information processor, document image display method, information processing method, document image display program, recording medium, and data structure
US8023738B1 (en) * 2006-03-28 2011-09-20 Amazon Technologies, Inc. Generating reflow files from digital images for rendering on various sized displays
US7433548B2 (en) * 2006-03-28 2008-10-07 Amazon Technologies, Inc. Efficient processing of non-reflow content in a digital image
US7788580B1 (en) 2006-03-28 2010-08-31 Amazon Technologies, Inc. Processing digital images including headers and footers into reflow content
US7966557B2 (en) 2006-03-29 2011-06-21 Amazon Technologies, Inc. Generating image-based reflowable files for rendering on various sized displays
US20080068385A1 (en) * 2006-09-15 2008-03-20 Samsung Electronics Co. Ltd. Apparatus and method for changing a screen in a portable terminal
US9128596B2 (en) * 2006-09-22 2015-09-08 Opera Software Asa Method and device for selecting and displaying a region of interest in an electronic document
US7810026B1 (en) 2006-09-29 2010-10-05 Amazon Technologies, Inc. Optimizing typographical content for transmission and display
US8570278B2 (en) 2006-10-26 2013-10-29 Apple Inc. Portable multifunction device, method, and graphical user interface for adjusting an insertion point marker
US7856605B2 (en) 2006-10-26 2010-12-21 Apple Inc. Method, system, and graphical user interface for positioning an insertion marker in a touch screen display
EP2135170A4 (en) * 2006-11-27 2012-01-04 Ooggieya Ltd Measurement of content placement effectiveness over web pages and like media
US20080306794A1 (en) * 2006-11-27 2008-12-11 Ooggieya Ltd. Measurement of content placement effectiveness over web pages and like media
EP2151093A4 (en) * 2007-05-17 2010-07-21 Fat Free Mobile Inc Method and system for transcoding web pages
US20090024916A1 (en) * 2007-07-20 2009-01-22 Burckart Erik J Seamless Asynchronous Updates of Dynamic Content
US8082512B2 (en) * 2007-08-03 2011-12-20 Microsoft Corporation Fractal display advertising on computer-driven screens
EP2193520A4 (en) * 2007-09-28 2010-12-01 Research In Motion Ltd Method and apparatus for providing zoom functionality in a portable device display
CA2700829C (en) 2007-09-28 2015-09-15 Research In Motion Limited Readability control in a portable device display
US20090109243A1 (en) * 2007-10-25 2009-04-30 Nokia Corporation Apparatus and method for zooming objects on a display
US8135574B2 (en) * 2007-11-15 2012-03-13 Weikel Bryan T Creating and displaying bodies of parallel segmented text
US20090128581A1 (en) * 2007-11-20 2009-05-21 Microsoft Corporation Custom transition framework for application state transitions
US8782516B1 (en) 2007-12-21 2014-07-15 Amazon Technologies, Inc. Content style detection
US20090177538A1 (en) * 2008-01-08 2009-07-09 Microsoft Corporation Zoomable advertisements with targeted content
US20090183068A1 (en) * 2008-01-14 2009-07-16 Sony Ericsson Mobile Communications Ab Adaptive column rendering
US20110007096A1 (en) * 2008-02-04 2011-01-13 Access Co., Ltd. Content display method, content display program, and content display device
US8201109B2 (en) 2008-03-04 2012-06-12 Apple Inc. Methods and graphical user interfaces for editing on a portable multifunction device
US8650507B2 (en) * 2008-03-04 2014-02-11 Apple Inc. Selecting of text using gestures
US8122372B2 (en) * 2008-04-17 2012-02-21 Sharp Laboratories Of America, Inc. Method and system for rendering web pages on a wireless handset
US8572480B1 (en) 2008-05-30 2013-10-29 Amazon Technologies, Inc. Editing the sequential flow of a page
US20090303253A1 (en) * 2008-06-05 2009-12-10 Microsoft Corporation Personalized scaling of information
US8396246B2 (en) * 2008-08-28 2013-03-12 Microsoft Corporation Tagging images with labels
US8867779B2 (en) * 2008-08-28 2014-10-21 Microsoft Corporation Image tagging user interface
JP5596914B2 (en) * 2008-09-16 2014-09-24 富士通株式会社 Terminal device, display control method, and program having display function
US9229911B1 (en) 2008-09-30 2016-01-05 Amazon Technologies, Inc. Detecting continuation of flow of a page
US8645823B1 (en) * 2008-10-28 2014-02-04 Adobe Systems Incorporated Converting static websites to resolution independent websites in a web development environment
WO2010062747A1 (en) * 2008-11-03 2010-06-03 Novarra, Inc. Dynamic font metric profiling
KR101330264B1 (en) * 2009-01-30 2013-11-15 주식회사 팬택 Displaying control apparatus for a mobile phone
US9111007B2 (en) * 2009-02-04 2015-08-18 Jataayu Software Limited Adaptive rendering of a webpage on an electronic display device
US8856647B2 (en) * 2009-02-20 2014-10-07 Microsoft Corporation Font handling for viewing documents on the web
US8584050B2 (en) 2009-03-16 2013-11-12 Apple Inc. Methods and graphical user interfaces for editing on a multifunction device with a touch screen display
WO2010118292A1 (en) * 2009-04-09 2010-10-14 Dynavox Systems, Llc Calibration free, motion tolerant eye-gaze direction detector with contextually aware computer interaction and communication methods
EP2254032A1 (en) * 2009-05-21 2010-11-24 Research In Motion Limited Portable electronic device and method of controlling same
US9292582B2 (en) * 2009-05-27 2016-03-22 International Business Machines Corporation Rendering a database record in a fixed display space
US9792385B2 (en) 2009-06-19 2017-10-17 Oath Inc. Systems and methods for improved web-based document retrieval and object manipulation
US20110035254A1 (en) * 2009-08-04 2011-02-10 Yahoo! Inc. User interaction layer
CN101996206B (en) 2009-08-11 2013-07-03 阿里巴巴集团控股有限公司 Method, device and system for displaying web page
US8203582B2 (en) * 2009-08-24 2012-06-19 Samsung Electronics Co., Ltd. Subpixel rendering with color coordinates' weights depending on tests performed on pixels
US20110113365A1 (en) * 2009-11-09 2011-05-12 Microsoft Corporation Scrolling large data sets
US20120290913A1 (en) * 2009-12-14 2012-11-15 Yosef Benraz Computerized tool, system and method for remote access to a computer program
US20110176154A1 (en) * 2010-01-18 2011-07-21 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and storage medium
US8499236B1 (en) 2010-01-21 2013-07-30 Amazon Technologies, Inc. Systems and methods for presenting reflowable content on a display
US9003309B1 (en) 2010-01-22 2015-04-07 Adobe Systems Incorporated Method and apparatus for customizing content displayed on a display device
US20110202829A1 (en) * 2010-02-12 2011-08-18 Research In Motion Limited Method, device and system for controlling a display according to a defined sizing parameter
US8756522B2 (en) * 2010-03-19 2014-06-17 Blackberry Limited Portable electronic device and method of controlling same
US9401099B2 (en) 2010-05-11 2016-07-26 AI Squared Dedicated on-screen closed caption display
US8856682B2 (en) * 2010-05-11 2014-10-07 AI Squared Displaying a user interface in a dedicated display area
US8957920B2 (en) 2010-06-25 2015-02-17 Microsoft Corporation Alternative semantics for zoom operations in a zoomable scene
KR101695816B1 (en) * 2010-07-19 2017-01-13 엘지전자 주식회사 Mobile terminal and method for controlling thereof
US9317622B1 (en) * 2010-08-17 2016-04-19 Amazon Technologies, Inc. Methods and systems for fragmenting and recombining content structured language data content to reduce latency of processing and rendering operations
JP5614215B2 (en) * 2010-10-01 2014-10-29 ミツミ電機株式会社 Display screen switching device, display screen switching method, and display screen switching program
US9811528B2 (en) 2010-12-09 2017-11-07 Yosef Benraz Systems and methods for providing continuing access to a remote computer program
US9244605B2 (en) 2011-05-31 2016-01-26 Apple Inc. Devices, methods, and graphical user interfaces for document manipulation
US10630751B2 (en) 2016-12-30 2020-04-21 Google Llc Sequence dependent data message consolidation in a voice activated computer network environment
US8650188B1 (en) 2011-08-31 2014-02-11 Google Inc. Retargeting in a search environment
US10956485B2 (en) 2011-08-31 2021-03-23 Google Llc Retargeting in a search environment
US20130067366A1 (en) * 2011-09-14 2013-03-14 Microsoft Corporation Establishing content navigation direction based on directional user gestures
US8307279B1 (en) 2011-09-26 2012-11-06 Google Inc. Smooth zooming in web applications
US9355072B2 (en) * 2011-09-28 2016-05-31 Google Inc. Recursive embedding by URL parameterization
CA2781298C (en) * 2011-11-08 2017-01-03 Research In Motion Limited Improved block zoom on a mobile electronic device
KR20130057588A (en) * 2011-11-24 2013-06-03 삼성전자주식회사 Control appratus and method for window making another process in a portable terminal
US9263002B2 (en) * 2011-11-30 2016-02-16 Microsoft Technology Licensing, Llc Application and user interface framework interaction
US9015677B2 (en) * 2011-12-06 2015-04-21 Nice Systems Ltd. System and method for developing and testing logic in a mock-up environment
US9753704B2 (en) 2012-01-18 2017-09-05 Metrologic Instruments, Inc. Web-based scan-task enabled system and method of and apparatus for developing and deploying the same on a client-server network
US9153043B1 (en) 2012-02-16 2015-10-06 Google, Inc. Systems and methods for providing a user interface in a field of view of a media item
US8972853B2 (en) * 2012-04-13 2015-03-03 Business Objects Software Limited Rendering digital report elements using a layout optimization tool
US9069744B2 (en) * 2012-05-15 2015-06-30 Google Inc. Extensible framework for ereader tools, including named entity information
JP6021487B2 (en) * 2012-07-18 2016-11-09 キヤノン株式会社 Information processing system, control method, server, information processing apparatus, and computer program
US10019127B2 (en) 2012-07-31 2018-07-10 Hewlett-Packard Development Company, L.P. Remote display area including input lenses each depicting a region of a graphical user interface
CN102831209B (en) * 2012-08-13 2014-06-11 优视科技有限公司 Rendering method and rendering device for webpage browsing and mobile terminal
WO2014126069A1 (en) * 2013-02-12 2014-08-21 日本電信電話株式会社 Output function dividing system
US8671352B1 (en) 2013-05-07 2014-03-11 Axure Software Solutions, Inc. Variable dimension version editing for graphical designs
US9946806B2 (en) 2013-05-07 2018-04-17 Axure Software Solutions, Inc. Exporting responsive designs from a graphical design tool
US9389759B2 (en) 2013-05-07 2016-07-12 Axure Software Solutions, Inc. Environment for responsive graphical designs
US10614153B2 (en) 2013-09-30 2020-04-07 Google Llc Resource size-based content item selection
US9703757B2 (en) * 2013-09-30 2017-07-11 Google Inc. Automatically determining a size for a content item for a web page
US10431209B2 (en) 2016-12-30 2019-10-01 Google Llc Feedback controller for data transmissions
KR20150052481A (en) * 2013-11-06 2015-05-14 삼성전자주식회사 Contents display method and electronic device implementing the same
US9348495B2 (en) 2014-03-07 2016-05-24 Sony Corporation Control of large screen display using wireless portable computer and facilitating selection of audio on a headphone
JP6360390B2 (en) * 2014-08-26 2018-07-18 任天堂株式会社 Information processing program, information processing apparatus, information processing system, and information processing method
US10777164B2 (en) * 2014-12-19 2020-09-15 Qualcomm Incorporated Power optimization by rendering low-resolution tiles during page load
JP6812141B2 (en) * 2016-05-31 2021-01-13 キヤノン株式会社 Information processing equipment, information processing methods and programs
US20180373686A1 (en) 2017-06-23 2018-12-27 Customink, LLC System and method for automating the creation of a renderable design
FR3071639B1 (en) * 2017-09-22 2020-01-31 Lithium Media METHOD OF OPERATING A COMPUTER DEVICE AND COMPUTER DEVICE USING THE SAME
US10387012B2 (en) * 2018-01-23 2019-08-20 International Business Machines Corporation Display of images with action zones
US10592589B1 (en) 2018-08-21 2020-03-17 Axure Software Solutions, Inc. Multi-view masters for graphical designs
CN109284481B (en) * 2018-09-06 2021-11-19 郑州云海信息技术有限公司 Prompt text processing method and device and computer readable storage medium
US11044312B2 (en) 2018-09-21 2021-06-22 Microsoft Technology Licensing, Llc Storage segment server covered cache
CN111045758A (en) * 2018-10-12 2020-04-21 北京密境和风科技有限公司 View processing method and device, electronic equipment and computer storage medium
US11599325B2 (en) * 2019-01-03 2023-03-07 Bluebeam, Inc. Systems and methods for synchronizing graphical displays across devices
CN110349530B (en) * 2019-06-12 2021-07-23 北海惠科光电技术有限公司 Character boundary processing method, display panel and computer readable storage medium
US11094038B1 (en) * 2020-10-19 2021-08-17 Apple Inc. Variable scaling ratio systems and methods
CN113553801B (en) * 2021-06-30 2022-10-14 上海硬通网络科技有限公司 Typesetting of dynamic effect characters of webpage, device, equipment and storage medium
CN113626126A (en) * 2021-08-18 2021-11-09 平安普惠企业管理有限公司 Application program start page adaptation method, device, equipment and medium
CN113918079B (en) * 2021-11-12 2022-04-08 掌阅科技股份有限公司 Interactive processing method of ink screen equipment, electronic equipment and storage medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002088908A2 (en) * 2001-05-02 2002-11-07 Bitstream Inc. Methods, systems, and programming for producing and displaying subpixel-optimized font bitmaps using non-linear color balancing

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4428065A (en) * 1979-06-28 1984-01-24 Xerox Corporation Data processing system with multiple display apparatus
JPH0652472B2 (en) * 1984-07-23 1994-07-06 インターナショナル・ビジネス・マシーンズ・コーポレーション Image processing method
US4723209A (en) 1984-08-30 1988-02-02 International Business Machines Corp. Flow attribute for text objects
US5341153A (en) 1988-06-13 1994-08-23 International Business Machines Corporation Method of and apparatus for displaying a multicolor image
JPH03201788A (en) 1989-12-28 1991-09-03 Nippon Philips Kk Color display device
JP3083314B2 (en) 1990-10-12 2000-09-04 キヤノン株式会社 Document processing method and apparatus
US5341466A (en) 1991-05-09 1994-08-23 New York University Fractal computer user centerface with zooming capability
US5666530A (en) 1992-12-02 1997-09-09 Compaq Computer Corporation System for automatic synchronization of common file between portable computer and host computer via communication channel selected from a plurality of usable channels there between
DE69418908T2 (en) * 1993-01-26 2000-01-20 Sun Microsystems Inc Method and device for viewing information in a computer database
JPH0728689A (en) 1993-07-09 1995-01-31 Hitachi Ltd Information processor
JP4255511B2 (en) * 1993-04-20 2009-04-15 アップル インコーポレイテッド Interactive user interface
US5533174A (en) 1993-10-26 1996-07-02 Digital Equipment Corporation Network font server
JP2813728B2 (en) * 1993-11-01 1998-10-22 インターナショナル・ビジネス・マシーンズ・コーポレイション Personal communication device with zoom / pan function
US5781714A (en) 1994-05-27 1998-07-14 Bitstream Inc. Apparatus and methods for creating and using portable fonts
US6321158B1 (en) 1994-06-24 2001-11-20 Delorme Publishing Company Integrated routing/mapping information
JP2726631B2 (en) 1994-12-14 1998-03-11 インターナショナル・ビジネス・マシーンズ・コーポレイション LCD display method
US5867156A (en) * 1995-11-08 1999-02-02 Intel Corporation Automatic viewport display synchronization during application sharing
US5727159A (en) 1996-04-10 1998-03-10 Kikinis; Dan System in which a Proxy-Server translates information received from the Internet into a form/format readily usable by low power portable computers
US6076109A (en) 1996-04-10 2000-06-13 Lextron, Systems, Inc. Simplified-file hyper text protocol
JP3544422B2 (en) 1996-03-04 2004-07-21 日本電気株式会社 Article placement device
US6034689A (en) 1996-06-03 2000-03-07 Webtv Networks, Inc. Web browser allowing navigation between hypertext objects using remote control
US5918013A (en) 1996-06-03 1999-06-29 Webtv Networks, Inc. Method of transcoding documents in a network environment using a proxy server
US5911145A (en) 1996-07-29 1999-06-08 Rae Technology, Inc. Hierarchical structure editor for web sites
US5956737A (en) 1996-09-09 1999-09-21 Design Intelligence, Inc. Design engine for fitting content to a medium
US5870559A (en) 1996-10-15 1999-02-09 Mercury Interactive Software system and associated methods for facilitating the analysis and management of web sites
US6486862B1 (en) 1996-10-31 2002-11-26 Kopin Corporation Card reader display system
US6185625B1 (en) 1996-12-20 2001-02-06 Intel Corporation Scaling proxy server sending to the client a graphical user interface for establishing object encoding preferences after receiving the client's request for the object
US6326970B1 (en) 1997-05-16 2001-12-04 Liberate Technologies TV centric layout
US5952994A (en) 1997-07-31 1999-09-14 Hewlett-Packard Company Method for scaling an image
US6044385A (en) * 1997-09-10 2000-03-28 International Business Machines Corporation Method and system for efficiently managing the manipulation of large documents displayed within a computer screen
KR100280175B1 (en) * 1997-10-15 2001-02-01 윤종용 Text Form Display Device and Method Using Tooltip
US6128661A (en) 1997-10-24 2000-10-03 Microsoft Corporation Integrated communications architecture on a mobile device
US6167441A (en) 1997-11-21 2000-12-26 International Business Machines Corporation Customization of web pages based on requester type
US6105042A (en) 1998-02-13 2000-08-15 Cylex Systems, Inc. Multi-user information management system adapted for efficient, remote, on-demand document management, storage and retrieval
US6278448B1 (en) 1998-02-17 2001-08-21 Microsoft Corporation Composite Web page built from any web content
US6185589B1 (en) 1998-07-31 2001-02-06 Hewlett-Packard Company Automatic banner resizing for variable-width web pages using variable width cells of HTML table
US6271840B1 (en) 1998-09-24 2001-08-07 James Lee Finseth Graphical search engine visual index
US6236433B1 (en) 1998-09-29 2001-05-22 Intel Corporation Scaling algorithm for efficient color representation/recovery in video
US6188385B1 (en) 1998-10-07 2001-02-13 Microsoft Corporation Method and apparatus for displaying images such as text
US6236390B1 (en) 1998-10-07 2001-05-22 Microsoft Corporation Methods and apparatus for positioning displayed characters
EP2579246B1 (en) 1998-10-07 2018-05-23 Microsoft Technology Licensing, LLC Mapping samples of foreground/background color image data to pixel sub-components
US6485862B1 (en) * 1998-12-28 2002-11-26 Mitsubishi Denki Kabushiki Kaisha Thin battery and method of manufacturing
DE60040063D1 (en) 1999-01-12 2008-10-09 Microsoft Corp FILTRATION OF IMAGE DATA FOR GENERATING PATTERNS SHOWN ON PICTURE COMPONENTS OF A DISPLAY DEVICE
US6393145B2 (en) 1999-01-12 2002-05-21 Microsoft Corporation Methods apparatus and data structures for enhancing the resolution of images to be rendered on patterned display devices
US6624828B1 (en) 1999-02-01 2003-09-23 Microsoft Corporation Method and apparatus for improving the quality of displayed images through the use of user reference information
US6750875B1 (en) 1999-02-01 2004-06-15 Microsoft Corporation Compression of image data associated with two-dimensional arrays of pixel sub-components
US6708309B1 (en) 1999-03-11 2004-03-16 Roxio, Inc. Method and system for viewing scalable documents
US6456305B1 (en) 1999-03-18 2002-09-24 Microsoft Corporation Method and system for automatically fitting a graphical display of objects to the dimensions of a display window
US6342896B1 (en) 1999-03-19 2002-01-29 Microsoft Corporation Methods and apparatus for efficiently implementing and modifying foreground and background color selections
US6342890B1 (en) 1999-03-19 2002-01-29 Microsoft Corporation Methods, apparatus, and data structures for accessing sub-pixel data having left side bearing information
WO2000060479A1 (en) 1999-03-19 2000-10-12 Microsoft Corporation Methods and apparatus for generating and representing luminance intensity values
AU3762800A (en) 1999-03-19 2000-10-09 Microsoft Corporation Methods and apparatus for representing multiple luminance intensity values as a single value
US6486896B1 (en) 1999-04-07 2002-11-26 Apple Computer, Inc. Scalable scroll controller
US6339426B1 (en) 1999-04-29 2002-01-15 Microsoft Corporation Methods, apparatus and data structures for overscaling or oversampling character feature information in a system for rendering text on horizontally striped displays
EP1203345A4 (en) 1999-04-29 2004-04-14 Microsoft Corp Method, apparatus and data structures for maintaining a consistent baseline position in a system for rendering text
AU4686500A (en) 1999-04-29 2000-11-17 Microsoft Corporation Methods, apparatus and data structures for determining glyph metrics for rendering text on horizontally striped displays
US6437793B1 (en) 1999-07-29 2002-08-20 Bitstream Inc. System for rapidly performing scan conversion with anti-aliasing upon outline fonts and other graphic elements
US6853980B1 (en) 1999-09-07 2005-02-08 Bitstream Inc. System for selecting, distributing, and selling fonts
US6826727B1 (en) 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US6731315B1 (en) * 1999-11-30 2004-05-04 International Business Machines Corporation Method for selecting display parameters of a magnifiable cursor
US6356882B1 (en) 1999-12-29 2002-03-12 Pitney Bowes Inc. Method and system for inputting a weight to a browser in an internet-based shipping system
US6556217B1 (en) 2000-06-01 2003-04-29 Nokia Corporation System and method for content adaptation and pagination based on terminal capabilities
US7210099B2 (en) 2000-06-12 2007-04-24 Softview Llc Resolution independent vector display of internet content
US6971063B1 (en) 2000-07-28 2005-11-29 Wireless Valley Communications Inc. System, method, and apparatus for portable design, deployment, test, and optimization of a communication network
CA2323569A1 (en) 2000-10-18 2002-04-18 Advanced Numerical Methods Ltd. Elastic presentation space
US7016704B2 (en) 2001-04-02 2006-03-21 Move Mobile Systems, Inc. Coordinating images displayed on devices with two or more displays
US7219309B2 (en) 2001-05-02 2007-05-15 Bitstream Inc. Innovations for the display of web pages
US20020169002A1 (en) 2001-05-02 2002-11-14 Imbrie Alyce M. Secure and accountable wireless printing system
AU2003270496A1 (en) 2002-09-09 2004-03-29 Oster Magnetics, Inc. Apparatus for manipulating magnetic fields

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002088908A2 (en) * 2001-05-02 2002-11-07 Bitstream Inc. Methods, systems, and programming for producing and displaying subpixel-optimized font bitmaps using non-linear color balancing
WO2002088979A1 (en) * 2001-05-02 2002-11-07 Bitstream Inc. Methods and systems for displaying media in scaled manner and/or in orientation
WO2002089105A2 (en) * 2001-05-02 2002-11-07 Bitstream, Inc. Methods, systems, and programming for producing and displaying subpixel-optimized images and digital content including such images
WO2002101567A2 (en) * 2001-05-02 2002-12-19 Bitstream Inc. Methods, systems, and programming for displaying media scaled-down by a variable scale factor

Also Published As

Publication number Publication date
AU2003298825A1 (en) 2004-06-23
JP4498146B2 (en) 2010-07-07
WO2004051429A3 (en) 2004-09-16
EP1579295A2 (en) 2005-09-28
WO2004051430A3 (en) 2005-02-03
WO2004051429A2 (en) 2004-06-17
WO2004051430A2 (en) 2004-06-17
AU2003297628A1 (en) 2004-06-23
EP1579295A4 (en) 2008-09-03
AU2003297628A8 (en) 2004-06-23
US20030137522A1 (en) 2003-07-24
AU2003298825A8 (en) 2004-06-23
US7219309B2 (en) 2007-05-15
JP2006524367A (en) 2006-10-26

Similar Documents

Publication Publication Date Title
JP4498146B2 (en) MEDIA DISPLAY METHOD FOR COMPUTER DEVICE, COMPUTER DEVICE, COMPUTER PROGRAM
US7737993B2 (en) Methods, systems, and programming for producing and displaying subpixel-optimized images and digital content including such images
US20040183817A1 (en) Methods, systems, and programming for scaled display of web pages
US7194697B2 (en) Magnification engine
US5710880A (en) Method and system for creating a graphic image with geometric descriptors
JP2006518055A5 (en)
US20020109687A1 (en) Visibility and usability of displayed images
JP4812077B2 (en) DATA DISPLAY METHOD, DATA DISPLAY DEVICE, AND PROGRAM
JP2004021838A (en) Web page preparing method, web page displaying system and web page display method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070508

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080902

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090317

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: 20100323

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: 20100413

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

Free format text: PAYMENT UNTIL: 20130423

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4498146

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140423

Year of fee payment: 4

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

LAPS Cancellation because of no payment of annual fees