Claims
- 1. A method of displaying digital content on a screen, said method comprising:
accessing said digital content including images and text strings; laying out said images and text at a virtual pixel resolution using layout pixel sizes for said images and text, so as to assign a horizontal and vertical virtual position in said layout to each of said images and each portion of a string of text displayed on a given line; and drawing at least a portion of said layout on said screen; wherein:
the displayed portion of the layout has a displayed pixel resolution that is scaled down by a scale factor relative to the pixel resolution of said portion in the layout performed at said virtual pixel resolution; images and text in said displayed portion of the layout are shown at pixel coordinates that correspond to the positions of said images and text in the layout, as scaled down by said scale factor; the images and text are drawn in said display at scaled-down pixel sizes that correspond to the pixel sizes used for said images and text in the layout, as scaled down by said scale factor; the image of a string of text in said display is composed from a succession of font bitmaps having pixel sizes that are scaled down by said scale factor relative to the size allocated to the characters of said string in said layout; and the shape and pixel alignment of a given character represented in said display by one of said font bitmaps have been selected as a function of the given size of said bitmap to improve the readability of said bitmap at said given bitmap size.
- 2. A method as in claim 1 wherein said digital content is a web page.
- 3. A method as in claim 2 wherein said layout image sizes at which images are laid out in said web pages are sizes of said images specified by the content of said web page.
- 4. A method as in claim 2 wherein
said method includes allowing a user to select to have said scaled-down display of a given layout performed at different scale factors; different font sizes are used in said scaled-down display for similar text at different selected scale factors; and the shape and pixel alignment of corresponding characters in the font bitmaps of such different font sizes are different to improve readability of font bitmaps at each of such different font sizes.
- 5. A method as in claim 2 wherein said scaled-down pixel sizes include font sizes of 8 pixels per em or less.
- 6. A method as in claim 5 wherein the characters shapes represented by font bitmaps of said pixel size of eight pixel per em or less have been hinted for improved readability at such size.
- 7. A method as in claim 2 wherein:
the size of a given text string at the given scaled-down text size is a function of the pixel dimensions of each character in the string at the given scaled-down pixel size, where the pixel dimensions of each character is determined in part at a function of the dimensions of the pixel bitmap needed to represent the particular character's shape at a desired level of readability at said scaled-down text size; and the size used for a given string in the layout corresponds to the size of the given string at the given scaled-down text size at which said string will be drawn in said scaled-down display, scaled-up by said scale factor.
- 8. A method as in claim 2 wherein:
said screen is part of a computer having an operating system that displays digital content, including text strings composed on said computer from individual font bitmaps, on said screen in a portrait orientation; and said scaled-down display of a portion said layout is drawn on said screen in a landscape orientation; wherein said composing of text from individual font bitmaps composes text in a landscape orientation using font bitmaps having a landscape orientation relative to said screen.
- 9. A method as in claim 8 wherein:
the screen on which the scaled-down display is drawn has pixels comprised of a given arrangement of separately-addressable, differently-colored subpixels; said arrangement of subpixels within pixels of the screen cause subpixel color to vary:
along a first bitmap display axis relative to bitmaps drawn on said screen in a portrait orientation; and along a second, perpendicular bitmap display axis relative to bitmaps drawn on said screen in a landscape orientation; a given font bitmap used to compose the image of text in said scaled-down display is a subpixel-optimized bitmap that:
is optimized for display in which said subpixel color variation occurs along said second display axis relative to said font bitmap; and assigns a luminosity value to each given sub-pixel of a screen pixel having said given arrangement of differently-colored subpixels that is drawn to by said font bitmaps as a function of: a coverage value representing the percent of the given subpixel that is covered by a character shape being represented by the font bitmap; in the case of at least some subpixels of said font bitmap, a color balancing distribution of a percent of the given subpixel's coverage value from said coverage value to coverage values of nearby subpixels, including subpixels of different colors, made to a prevent color imbalance that would result from the difference between the given subpixel's coverage value and the coverage values of a given set of one or more nearby subpixels of different colors; and in the case of at least some subpixels of said font bitmap, such a color balancing distribution to the given subpixel's coverage value of a portion of coverage values from one or more nearby subpixels.
- 10. A method as in claim 2 wherein different portions of text specified by the web page as being different types of text that are commonly displayed with different size fonts are represent with fonts of the same size before performing said layout and display to allow a greater quantity of readable text to fit in the scaled-down display.
- 11. A method as in claim 1 wherein:
the font bitmaps used to compose the image of text in said scaled-down display are anti-aliased bitmaps that assign a color value to a given screen pixel as a graded function of a coverage value representing the percent of the given pixel that is covered by a character shape being represented by the font bitmap; and the shape and pixel alignment of a character represented by such a font bitmap has been selected to increase the degree of alignment of edges of the character shape with pixel boundaries of the font bitmap as a function of the particular pixel size of each such a font bitmap.
- 12. A method as in claim 11 wherein:
the screen on which the scaled-down display is drawn has pixels comprised of a given arrangement of separately-addressable, differently-colored subpixels; the anti-aliased font bitmaps used to compose the image of text in said scaled-down display are subpixel-optimized bitmaps that assign a luminosity value to each given subpixel of a screen pixel having said given arrangement of differently-colored subpixels as a function of:
a coverage value representing the percent of the given subpixel that is covered by a character shape being represented by the font bitmap; in the case of at least some subpixels of said font bitmaps, a color balancing distribution of a percent of the given subpixel's coverage value from said coverage value to coverage values of nearby subpixels, including subpixels of different color, made to a prevent color imbalance that would result from the difference between the given subpixel's coverage value and the coverage values of a given set of one or more nearby subpixels of different colors; and in the case of at least some subpixels of said font bitmaps, such a color balancing distribution to the given subpixel's coverage value of a portion of coverage values from one or more nearby subpixels.
- 13. A method as in claim 12 wherein said color balancing distributions only distribute portions of a subpixel's coverage value that causes color imbalance within the whole pixel of which it is part.
- 14. A method as in claim 12 wherein:
the images drawn in said scaled-down display are subpixel-optimized images that assign a luminosity to each differently-colored subpixel in the display of such a scaled-down image as a function of the amount of luminosity of the given subpixel's color found in a window associated with the given subpixel in the higher resolution image the scaled-down image represents; and the window in the higher resolution image associated with each subpixel of a given pixel has a different position relative to the higher resolution image that corresponds to the different position of its corresponding subpixel in the scaled-down image.
- 15. A method as in claim 1 wherein:
a first computer device performs said accessing of the digital content, laying out of said digital content; said scaling down of said images; a second computer device has said screen and performs said drawing of the scaled-down display on said screen, including the composing of text images from font bitmaps; and said coordinates of images and text produced as a result of said layout, said scaled down images, and said text contained in said digital content are download from said first computer device to said second computer device.
- 16. A method as in claim 1 wherein:
said digital content is a screen image produced at said virtual resolution by one or more application programs; and said scaled-down display shows said portion of said screen image with the images and text of said screen image and their positions scaled down by said scale factor.
- 17. A method of displaying a web page comprising:
accessing the web page, including one or more images and one or more text strings; displaying in a landscape orientation, in a scaled-down manner, a portion of said web page, including at least some of images and text strings; wherein said displaying is performed on a screen of a computer having an operating system that displays an associated graphical user interface on said screen in a portrait orientation; wherein the scaled-down displaying of said web page includes:
displaying a given images at a scaled-down pixel size; and displaying a given text strings with a string image composed on said computer from a plurality of font bitmaps corresponding to the characters of said string when displayed in said landscape orientation; and the shape and pixel alignment of a given character represented in said display by one of said font bitmaps have been selected as a function of the given size of said bitmap to improve the readability of said bitmap at said given bitmap size.
- 18. A method as in claim 17 wherein the operating system can only display said graphical using interface on said screen in said portrait orientation.
- 19. A method as in claim 17 wherein the operating system can display said graphical using interface on said screen in either said portrait or said landscape orientation.
- 20. A method as in claim 17 wherein
said method includes allowing a user to select to have said scaled-down display performed for a given web page at different scale factors; the scale-down pixel size at which each images is shown in displays performed at different scale factors varies as a function of said different scale factors; the sizes of the font bitmaps shown in said string images in displays performed at different scale factors varies as a function of said different scale factors; and the shape and pixel alignment of a given character in the different font bitmaps shown for the given character in displays performed at different scale factors are different to improve readability of the character at each of the different font bitmap sizes used to represent the character at different scale factors.
- 21. A method as in claim 17 wherein:
the font bitmaps used to compose one or more of said string images are anti-aliased bitmaps that assign a color value to given screen pixel as a graded function of a coverage value representing the percent of the given pixel that is covered by a character shape being represented by the font bitmap; and the shape and pixel alignment of a character represented by such a font bitmap has been selected to increase the degree of alignment of edges of the character shape with pixel boundaries of the font bitmap as a function of the particular pixel size of each such a font bitmap.
- 22. A method as in claim 21 wherein:
font bitmaps used to compose string images include small font bitmaps having a small font size of eight pixels per em or less; and the shape and pixel alignment of a character represented by such a small font bitmap has been selected to increase the degree of alignment of edges of the character shape with pixel boundaries of the small font bitmap as a function of the particular pixel size of each such small font bitmap.
- 23. A method as in claim 22 wherein the font bitmaps of said small font size represent a majority of characters of the Roman alphabet within an advance width of four pixel columns or less.
- 24. A method as in claim 23 wherein the font bitmaps of said small font size represent a majority of lowercase letters with an x-height greater than four pixels.
- 25. A method as in claim 21 wherein:
the screen on which the scaled-down display is drawn has pixels comprised of separately-addressable, differently-colored subpixels, in which the differently colored subpixels of each pixel have a first subpixel arrangement when said screen viewed in the landscape orientation, and a second subpixel arrangement when the screen viewed in the portrait orientation; the anti-aliased font bitmaps used to compose said text images are subpixel-optimized bitmaps that assign a luminosity value to each given subpixel of a screen pixel having said first subpixel arrangement as a function of:
a coverage value representing the percent of the given subpixel that is covered by a character shape being represented by the font bitmap; in the case of at least some subpixels of said font bitmaps, a color balancing distribution of a percent of the given subpixel's coverage value from said coverage value to coverage values of nearby subpixels, including subpixels of different color, made to a prevent color imbalance that would result from the difference between the given subpixel's coverage value and the coverage values of a given set of one or more nearby subpixels of different colors; and in the case of at least some subpixels of said font bitmaps, such a color balancing distribution to the given subpixel's coverage value of a portion of coverage values from one or more nearby subpixels.
- 26. A method as in claim 25 wherein:
the subpixels of a given pixel in said screen vary in color along the horizontal direction when said screen is viewed in said landscape direction; so the added resolution made possible by subpixel optimization increases the horizontal resolution available to show text characters drawn on said screen in the landscape orientation.
- 27. A method as in claim 25 wherein said color balancing distributions only distribute portions of a subpixel's coverage value that causes color imbalance within the whole pixel of which it is part.
- 28. A method as in claim 27 wherein the character shapes represented by said subpixel-optimized font bitmaps and the alignment of such shapes to the pixels in said bitmaps have been selected as a function of the size of such bitmaps to improve the alignment of the edges of such shapes which edges of bitmap pixels, so as to decrease the differences between subpixel coverage values within the pixels of such bitmaps that require color balancing to prevent color imbalances.
- 29. A method as in claim 17 wherein said computer is a handheld computer.
- 30. A method as in claim 17 wherein:
the computer on which said scaled-down display is shown requests a web page from a remote computer over a computer network; said remote computer accesses said web page; said remote computer lays said web page out to determine relative positions corresponding to the relative positions at which said images, strings, and links are to be displayed; and said remote computer downloads said images, strings, links, and relative positions over said computer network to said display computer; and said display computer draws said images, strings, and links at relative positions on said screen determined as a function of said downloaded relative positions.
- 31. A method as in claim 30 wherein said remote computer:
scales down each of said displayed images to said scaled-down pixel size and downloads said scaled-down image to the display computer; performs said layout based on a font metrics determined for each strings as a function of the size of the individual font bitmaps that will be used to compose the string image said display computer; and.
- 32. A computer system for displaying digital content on a screen, said system comprising:
one or more processors for executing program instructions stored in computer readable memory; and one or more computer readable memories storing program instructions for causing said one or more processors to:
access said digital content including images and text strings; lay out said images and text at a virtual pixel resolution using layout pixel sizes for said images and text, so as to assign a horizontal and vertical virtual position in said layout to each of said images and each portion of a string of text displayed on a given line; and draw at least a portion of said layout on said screen; wherein the program instructions are such that:
the displayed portion of the layout has a displayed pixel resolution that is scaled down by a scale factor relative to the pixel resolution of said portion in the layout performed at said virtual pixel resolution; images and text in said displayed portion of the layout are shown at pixel coordinates that correspond to the positions of said images and text in the layout, as scaled down by said scale factor; the images and text are drawn in said display at scaled-down pixel sizes that correspond to the pixel sizes used for said images and text in the layout, as scaled down by said scale factor; the image of a string of text in said display is composed from a succession of font bitmaps having pixel sizes that are scaled down by said scale factor relative to the size allocated to the characters of said string in said layout; and the shape and pixel alignment of a given character represented in said display by one of said font bitmaps have been selected as a function of the given size of said bitmap to improve the readability of said bitmap at said given bitmap size.
- 33. A computer system for displaying a web page, said system comprising:
one or more processors for executing program instructions stored in computer readable memory; and one or more computer readable memories storing program instructions for causing said one or more processors to: access the web page, including one or more images and one or more text strings; and display in a landscape orientation, in a scaled-down manner, a portion of said web page, including at least some of images and text strings; wherein said program instructions are such that:
said displaying is performed on a screen of a computer having an operating system that displays an associated graphical user interface on said screen in a portrait orientation; the scaled-down displaying of said web page includes:
displaying a given images at a scaled-down pixel size; and displaying a given text strings with a string image composed on said computer from a plurality of font bitmaps corresponding to the characters of said string when displayed in said landscape orientation; and the shape and pixel alignment of a given character represented in said display by one of said font bitmaps have been selected as a function of the given size of said bitmap to improve the readability of said bitmap at said given bitmap size.
RELATED APPLICATIONS
[0001] This application is a continuation-in-part of, and claims priority under 35 U.S.C. §119 from, PCT application PCT/US02/14380, entitled “Methods and Systems For Displaying Media In Scaled Manner and/or Orientation”, filed on May 2, 2002, having a first priority date of May 2, 2001, and a WO publication number of WO 02/088979 A1. Through this PCT application, the current application claims priority of the following U.S. provisional applications:
[0002] BIT01-1PRO1
[0003] APPLICANT: Sampo J. Kaasila et al.
[0004] TITLE: Methods, Systems, and Programming For Browsing The Web Or Viewing Other Sorts of Media or Computer Output
[0005] SERIAL No. 60/288,287
[0006] FILING DATE: May 2, 2001
[0007] BIT01-1PRO-A
[0008] APPLICANT: Sampo J. Kaasila et al.
[0009] TITLE: Methods, Systems, and Programming For Producing and Displaying Subpixel-Optimized Font Bitmaps Using Non-Linear Color Balancings
[0010] SERIAL No. 60/296,275
[0011] FILING DATE: Jun. 5, 2001
[0012] BIT01-1PRO-A2
[0013] APPLICANT: Sampo J. Kaasila et al.
[0014] TITLE: Methods, Systems, and Programming For Producing and Displaying Subpixel-Optimized Font Bitmaps Using Non-Linear Color Balancings
[0015] SERIAL No. 60/322,922
[0016] FILING DATE: Sep. 17, 2001
[0017] BIT01-1PRO-B
[0018] APPLICANT: Sampo J. Kaasila et al.
[0019] TITLE: Methods, Systems, and Programming For Producing And Displaying Subpixel-Optimized Images and Digital Content Including Such Images
[0020] SERIAL No. 60/296,237
[0021] FILING DATE: Jun. 5, 2001
[0022] BIT01-1PRO-C
[0023] APPLICANT: Sampo J. Kaasila et al.
[0024] TITLE: Methods, Systems, and Programming For Displaying Media Including Both Images And Text In A Subpixel-Optimized Manner
[0025] SERIAL No. 60/296,274
[0026] FILING DATE: Jun. 5, 2001
[0027] BIT01-1PRO-D
[0028] APPLICANT: Sampo J. Kaasila et al.
[0029] TITLE: Methods, Systems, and Programming For Displaying Media Including Text In A Scaled And/Or Subpixel-Optimized Manner
[0030] SERIAL No. 60/296,284
[0031] FILING DATE: Jun. 5, 2001
[0032] BIT01-1PRO-E
[0033] APPLICANT: Sampo J. Kaasila et al.
[0034] TITLE: Methods, Systems, and Programming For Displaying Media In A Scaled-Down Manner
[0035] SERIAL No. 60/296,231
[0036] FILING DATE: Jun. 5, 2001
[0037] BIT01-1PRO-F
[0038] APPLICANT: Sampo J. Kaasila et al.
[0039] TITLE: Methods, Systems, and Programming For Displaying Media Scaled-Down By A Variable Scale Factor
[0040] SERIAL No. 60/296,224
[0041] FILING DATE: Jun. 5, 2001
[0042] BIT01-1PRO-G
[0043] APPLICANT: Sampo J. Kaasila et al.
[0044] TITLE: Methods, Systems, and Programming Involved In Preparing Media For Display On One Computer And Displaying It On Another Computer
[0045] SERIAL No. 60/296,426
[0046] FILING DATE: Jun. 5, 2001
[0047] BIT01-1PRO-H
[0048] APPLICANT: Sampo J. Kaasila et al.
[0049] TITLE: Methods, Systems, and Programming Involved In Displaying Text And/Or Images In A Scaled Down Or Subpixel Optimized Manner
[0050] SERIAL No. 60/296,273
[0051] FILING DATE: Jun. 5, 2001
[0052] BIT01-1PRO-I
[0053] APPLICANT: Sampo J. Kaasila et al.
[0054] TITLE: Methods, Systems, and Programming Involved In The Supply Of Fonts Over A Computer Network
[0055] SERIAL No. 60/296,283
[0056] FILING DATE: Jun. 5, 2001
[0057] BIT01-1PRO-J
[0058] APPLICANT: Sampo J. Kaasila et al.
[0059] TITLE: Methods, Systems, and Programming Involved In Display Of Subpixel Optimized GUI And/Or Multimedia Elements
[0060] SERIAL No. 60/296,281
[0061] FILING DATE: Jun. 5, 2001
[0062] BIT01-1PRO-K
[0063] APPLICANT: Sampo J. Kaasila et al.
[0064] TITLE: Methods, Systems, and Programming Involved In Display Of Digital Content In An Orientation Different Than An Orientation At Which Operating System Can Display
[0065] SERIAL No. 60/296,327
[0066] FILING DATE: Jun. 5, 2001
[0067] The current application also claims priority from U.S. pat. app. Ser. No. 10/138,923, entitled “Methods, Systems, And Programming For Computer Display Of Images, Text, And/Or Digtal Content”, which was filed on May 2, 2002 by S. Kaasila et al, which also claims priority from the above listed provisional applications, and which is hereby incorporated herein by reference in its entirety.
Provisional Applications (13)
|
Number |
Date |
Country |
|
60288287 |
May 2001 |
US |
|
60296275 |
Jun 2001 |
US |
|
60322922 |
Sep 2001 |
US |
|
60296237 |
Jun 2001 |
US |
|
60296274 |
Jun 2001 |
US |
|
60296284 |
Jun 2001 |
US |
|
60296231 |
Jun 2001 |
US |
|
60296224 |
Jun 2001 |
US |
|
60296426 |
Jun 2001 |
US |
|
60296273 |
Jun 2001 |
US |
|
60296283 |
Jun 2001 |
US |
|
60296281 |
Jun 2001 |
US |
|
60296327 |
Jun 2001 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
PCT/US02/14380 |
May 2002 |
US |
Child |
10700378 |
Nov 2003 |
US |