Patent · US2006017732A1 · A1 · US
Font representations
- (11) Publication number
- US2006017732A1
- (21) Application number
- 10/917,372
- (22) Filing date
- 2004-08-13
- (30) Priority date
- 2004-07-26
- (43) Publication date
- 2006-01-26
- (51) IPC
- G06T 11/00
- (52) CPC
- G09G Arrangements or circuits for control of indicating devices using static means to present variable information: 5/246
- (73) Assignee
- Microsoft Corp
- (72) Inventors
- Tanya Matskewich; David Kilgrow; David Meltzer
- (54) Title
- Font representations
- (57) Abstract
Methods for rendering font objects include: receiving input identifying an object to be rendered; selecting a data set for rendering the object from: (a) a first data set including font object data in a first format (e.g., trajectory data), and (b) a second data set including font object data in a second format (e.g., outline data); and rendering the object using the selected data set. The data set may be selected based on at least one run time parameter, such as the ppem or space available for the rendering, the desired text size, system resolution, font object complexity, contextual information, etc., to provide a high quality rendered image. Additional data sets (e.g., augmenting data, enhancing data, etc.) may be included to provide more rendering options to further increase the quality of the rendered image under some conditions. The various data sets may be independently created so that each data set can be produced specifically targeted to selected rendering conditions (such as a selected ppem range).
- Full text
- View on Google Patents
Claims (21)
- A method for rendering a desired font object, comprising: receiving a first data set for rendering at least a first portion of the desired font object wherein the first data set includes data relating to a guiding frame associated with at least the first portion of the desired font object; receiving a second data set for rendering at least a second portion of the desired font object; and rendering the desired font object using at least the first data set and the second data set, wherein the data relating to the guiding frame is used in determining at least one of a position, size, or shape of at least some part of the second portion of the desired font object during the rendering.
- A method according to claim 1, wherein the data relating to the guiding frame is used in determining the position of at least some part of the second portion of the desired font object.
- A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 1.
- A method for rendering a desired font object, comprising: receiving a first data set for rendering at least a first portion of the desired font object wherein the first data set includes data relating to a guiding frame associated with at least the first portion of the desired font object; and rendering the desired font object using at least the first data set, wherein the data relating to the guiding frame is used in determining at least one of a position, size, or shape of at least some part of the first portion of the desired font object during the rendering.
- A method according to claim 4, wherein the data relating to the guiding frame is used in determining the position of at least some part of the first portion of the desired font object.
- A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 4.
- A method for rendering a desired font object, comprising: receiving a first data set for rendering at least a first portion of the desired font object wherein the first data set includes data relating to a guiding frame associated with at least the first portion of the desired font object; receiving a second data set for rendering at least a second portion of the desired font object; and rendering the desired font object using at least the first data set and the second data set, wherein the data relating to the guiding frame is used in hinting at least some part of the second portion of the desired font object during the rendering.
- A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 7.
- A method for rendering a desired font object, comprising: receiving a first data set for rendering at least a first portion of the desired font object wherein the first data set includes data relating to a guiding frame associated with at least the first portion of the desired font object; and rendering the desired font object using at least the first data set, wherein the rendering includes hinting of the guiding frame to, at least in part, control a position or size of at least a part of the first portion of the desired font object.
- A method according to claim 9, wherein the hinting adjusts a position of at least the part of the desired font object.
- A method according to claim 9, wherein the hinting adjusts at least one dimension of at least the part of the desired font object.
- A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 9.
- A method for rendering a desired font object, comprising: receiving input data indicating a desired font object to be rendered, wherein the desired font object includes plural portions; determining an amount of pixel space available for rendering the desired font object; and rendering a complete version of the desired font object when the amount of pixel space available is sufficient to render the complete version of the desired font object and rendering a modified version of the desired font object when the amount of pixel space available is insufficient to render the complete version of the desired font object, wherein the modified version of the desired font object has eliminated at least one portion as compared to the complete version of the desired font object.
- A method according to claim 13, wherein the determining step uses guiding frame data associated with at least one of the desired font object or a portion of the desired font object.
- A method according to claim 13, wherein the rendering includes rendering the modified version of the desired font object.
- A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 13.
- A method for rendering a desired font object, comprising: receiving input data indicating a desired font object to be rendered, wherein the desired font object includes at least a first portion and a second portion; determining an amount of pixel space available for rendering the desired font object; and rendering a complete version of the desired font object, including the first portion and the second portion, when the amount of pixel space available is sufficient to render the complete version of the desired font object and rendering a modified version of the desired font object when the amount of pixel space available is insufficient to render the complete version of the desired font object, wherein the modified version of the desired font object has substituted a third portion for at least one of the first portion or the second portion as compared to the complete version of the desired font object.
- A method according to claim 17, wherein the determining step uses guiding frame data associated with at least one of the desired font object or a portion of the desired font object.
- A method according to claim 17, wherein the rendering includes rendering the modified version of the desired font object.
- A method according to claim 19, wherein the third portion replaces both the first portion and the second portion.
- A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 17.
Description
This invention generally relates to systems, methods, and computer-readable media associated with fonts and representations of fonts. Example aspects of this invention relate to designing, storing, compiling, and rendering high-quality, compact fonts that are useful over a wide variety of text sizes and on devices of varying system size and/or resolution.
Improvements in computer related technologies have spawned a wide variety of computer-containing devices that access, store, and display information to their users. Such devices include, for example, laptops and other personal computers (including pen-based computing systems and hand-held computing systems); personal digital assistants; pocket personal computers; mobile and cellular telephones, pagers, and other communication devices; watches; appliances; and many other devices or systems that include monitors or other display devices that present printed and/or graphical information to users. In recent years, such devices have become smaller, lighter, faster, more powerful, and more reliable than ever.
While often taken for granted by the device users, printed or graphical information does not magically appear on display devices, and it does not magically render from printers or other devices associated with computer systems. Rather, the content and appearance of printed and graphical information are carefully controlled by the computer system, display device, and/or printer to assure that it renders in a proper and aesthetically pleasing manner.
Citations (31)
- US5949435A
- US6600490B1
- US5468077A
- US5606649A
- US5825370A
- US5903861A
- US6714199B1
- US6232987B1
- US5923778A
- US6151032A
- US6157390A
- US5852448A
- US5831636A
- US6952210B1
- US6369902B1
- US6249908B1
- US6496191B2
- US6604878B1
- US6956968B1
- US6678410B1
- US6426751B1
- US6512531B1
- US6501475B1
- US6771267B1
- US20010052900A1
- US6760028B1
- US20020168208A1
- US20040006749A1
- US7009612B2
- US20050027547A1
- US20050122327A1
Record as JSON
{
"publication_number": "US2006017732A1",
"country": "US",
"kind": "A1",
"title": "Font representations",
"abstract": "Methods for rendering font objects include: receiving input identifying an object to be rendered; selecting a data set for rendering the object from: (a) a first data set including font object data in a first format (e.g., trajectory data), and (b) a second data set including font object data in a second format (e.g., outline data); and rendering the object using the selected data set. The data set may be selected based on at least one run time parameter, such as the ppem or space available for the rendering, the desired text size, system resolution, font object complexity, contextual information, etc., to provide a high quality rendered image. Additional data sets (e.g., augmenting data, enhancing data, etc.) may be included to provide more rendering options to further increase the quality of the rendered image under some conditions. The various data sets may be independently created so that each data set can be produced specifically targeted to selected rendering conditions (such as a selected ppem range).",
"claims": [
"1. A method for rendering a desired font object, comprising: receiving a first data set for rendering at least a first portion of the desired font object wherein the first data set includes data relating to a guiding frame associated with at least the first portion of the desired font object; receiving a second data set for rendering at least a second portion of the desired font object; and rendering the desired font object using at least the first data set and the second data set, wherein the data relating to the guiding frame is used in determining at least one of a position, size, or shape of at least some part of the second portion of the desired font object during the rendering.",
"2. A method according to claim 1, wherein the data relating to the guiding frame is used in determining the position of at least some part of the second portion of the desired font object.",
"3. A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 1.",
"4. A method for rendering a desired font object, comprising: receiving a first data set for rendering at least a first portion of the desired font object wherein the first data set includes data relating to a guiding frame associated with at least the first portion of the desired font object; and rendering the desired font object using at least the first data set, wherein the data relating to the guiding frame is used in determining at least one of a position, size, or shape of at least some part of the first portion of the desired font object during the rendering.",
"5. A method according to claim 4, wherein the data relating to the guiding frame is used in determining the position of at least some part of the first portion of the desired font object.",
"6. A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 4.",
"7. A method for rendering a desired font object, comprising: receiving a first data set for rendering at least a first portion of the desired font object wherein the first data set includes data relating to a guiding frame associated with at least the first portion of the desired font object; receiving a second data set for rendering at least a second portion of the desired font object; and rendering the desired font object using at least the first data set and the second data set, wherein the data relating to the guiding frame is used in hinting at least some part of the second portion of the desired font object during the rendering.",
"8. A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 7.",
"9. A method for rendering a desired font object, comprising: receiving a first data set for rendering at least a first portion of the desired font object wherein the first data set includes data relating to a guiding frame associated with at least the first portion of the desired font object; and rendering the desired font object using at least the first data set, wherein the rendering includes hinting of the guiding frame to, at least in part, control a position or size of at least a part of the first portion of the desired font object.",
"10. A method according to claim 9, wherein the hinting adjusts a position of at least the part of the desired font object.",
"11. A method according to claim 9, wherein the hinting adjusts at least one dimension of at least the part of the desired font object.",
"12. A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 9.",
"13. A method for rendering a desired font object, comprising: receiving input data indicating a desired font object to be rendered, wherein the desired font object includes plural portions; determining an amount of pixel space available for rendering the desired font object; and rendering a complete version of the desired font object when the amount of pixel space available is sufficient to render the complete version of the desired font object and rendering a modified version of the desired font object when the amount of pixel space available is insufficient to render the complete version of the desired font object, wherein the modified version of the desired font object has eliminated at least one portion as compared to the complete version of the desired font object.",
"14. A method according to claim 13, wherein the determining step uses guiding frame data associated with at least one of the desired font object or a portion of the desired font object.",
"15. A method according to claim 13, wherein the rendering includes rendering the modified version of the desired font object.",
"16. A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 13.",
"17. A method for rendering a desired font object, comprising: receiving input data indicating a desired font object to be rendered, wherein the desired font object includes at least a first portion and a second portion; determining an amount of pixel space available for rendering the desired font object; and rendering a complete version of the desired font object, including the first portion and the second portion, when the amount of pixel space available is sufficient to render the complete version of the desired font object and rendering a modified version of the desired font object when the amount of pixel space available is insufficient to render the complete version of the desired font object, wherein the modified version of the desired font object has substituted a third portion for at least one of the first portion or the second portion as compared to the complete version of the desired font object.",
"18. A method according to claim 17, wherein the determining step uses guiding frame data associated with at least one of the desired font object or a portion of the desired font object.",
"19. A method according to claim 17, wherein the rendering includes rendering the modified version of the desired font object.",
"20. A method according to claim 19, wherein the third portion replaces both the first portion and the second portion.",
"21. A computer-readable medium including computer-executable instructions stored thereon for performing a method according to claim 17."
],
"description_excerpt": "This invention generally relates to systems, methods, and computer-readable media associated with fonts and representations of fonts. Example aspects of this invention relate to designing, storing, compiling, and rendering high-quality, compact fonts that are useful over a wide variety of text sizes and on devices of varying system size and/or resolution.\n\nImprovements in computer related technologies have spawned a wide variety of computer-containing devices that access, store, and display information to their users. Such devices include, for example, laptops and other personal computers (including pen-based computing systems and hand-held computing systems); personal digital assistants; pocket personal computers; mobile and cellular telephones, pagers, and other communication devices; watches; appliances; and many other devices or systems that include monitors or other display devices that present printed and/or graphical information to users. In recent years, such devices have become smaller, lighter, faster, more powerful, and more reliable than ever.\n\nWhile often taken for granted by the device users, printed or graphical information does not magically appear on display devices, and it does not magically render from printers or other devices associated with computer systems. Rather, the content and appearance of printed and graphical information are carefully controlled by the computer system, display device, and/or printer to assure that it renders in a proper and aesthetically pleasing manner.",
"cpc": [
"G09G 5/246"
],
"ipc": [
"G06T 11/00"
],
"assignees": [
"Microsoft Corp"
],
"inventors": [
"Tanya Matskewich",
"David Kilgrow",
"David Meltzer"
],
"filing_date": "2004-08-13",
"publication_date": "2006-01-26",
"priority_date": "2004-07-26",
"application_number": "US-91737204-A",
"family_id": "35656652",
"cited_by_count": 5,
"citations": [
"US5949435A",
"US6600490B1",
"US5468077A",
"US5606649A",
"US5825370A",
"US5903861A",
"US6714199B1",
"US6232987B1",
"US5923778A",
"US6151032A",
"US6157390A",
"US5852448A",
"US5831636A",
"US6952210B1",
"US6369902B1",
"US6249908B1",
"US6496191B2",
"US6604878B1",
"US6956968B1",
"US6678410B1",
"US6426751B1",
"US6512531B1",
"US6501475B1",
"US6771267B1",
"US20010052900A1",
"US6760028B1",
"US20020168208A1",
"US20040006749A1",
"US7009612B2",
"US20050027547A1",
"US20050122327A1"
]
}
Record 5,716 of 8,000 in Patents full text (MLC-0201). Request the full dataset.