Patents by Inventor Worachai Chaoweeraprasit
Worachai Chaoweeraprasit has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 10417327Abstract: Methods and devices for rendering interactive three-dimensional (3D) fonts may include receiving, at a text platform component executing on a computing device, a request from an application to render text. The methods and devices may include parsing the text to identify at least one glyph in the text. The methods and devices may include accessing a font file that includes a 3D glyph description associated with the at least one glyph and an interaction policy associated with the 3D glyph that determines when and how to animate the 3D glyph. The methods and devices may include rendering at least one 3D glyph based on the 3D glyph description and the interaction policy. The methods and devices may include transmitting at least one rendered 3D glyph.Type: GrantFiled: April 28, 2017Date of Patent: September 17, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Worachai Chaoweeraprasit, Richard Kirkpatrick Manning, Simon Young Tao
-
Publication number: 20190171694Abstract: Methods and devices for previewing downloadable fonts may include receiving a preview font request for a visual representation of at least one font on a display. The methods and devices may include determining whether the at least one font is a locally stored font on the computer device or a downloadable font. The methods and devices may include retrieving, from a preview font file on the computer device, a preview instance that includes one or more glyph outlines to visually represent the at least one font when the at least one font is a downloadable font. The methods and devices may include transmitting the preview instance for presentation on the display.Type: ApplicationFiled: December 1, 2017Publication date: June 6, 2019Inventors: Niklas BORSON, Xueyun ZHU, Worachai CHAOWEERAPRASIT
-
Patent number: 10242480Abstract: Methods and devices for animating variable fonts may include receiving a request to animate one or more glyphs of a variable font in a design space based on one or more animation parameters. The methods and devices may also include determining an animation path in the design space for the one or more glyphs based on the animation parameters and calculating a set of keyframes having respective keyframe positions along the animation path. The methods and devices may include constructing glyph outline data of the one or more glyphs for each keyframe in the set of keyframes. The methods and devices may include generating intermediate glyph outline data at one or more intermediate positions between the keyframe positions and transmitting the glyph outline data and the intermediate glyph outline data.Type: GrantFiled: March 3, 2017Date of Patent: March 26, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Shrinath Shanbhag, Worachai Chaoweeraprasit
-
Publication number: 20180253883Abstract: Methods and devices for animating variable fonts may include receiving a request to animate one or more glyphs of a variable font in a design space based on one or more animation parameters. The methods and devices may also include determining an animation path in the design space for the one or more glyphs based on the animation parameters and calculating a set of keyframes having respective keyframe positions along the animation path. The methods and devices may include constructing glyph outline data of the one or more glyphs for each keyframe in the set of keyframes. The methods and devices may include generating intermediate glyph outline data at one or more intermediate positions between the keyframe positions and transmitting the glyph outline data and the intermediate glyph outline data.Type: ApplicationFiled: March 3, 2017Publication date: September 6, 2018Inventors: Shrinath SHANBHAG, Worachai CHAOWEERAPRASIT
-
Publication number: 20180190004Abstract: Methods and devices for rendering interactive three-dimensional (3D) fonts may include receiving, at a text platform component executing on a computing device, a request from an application to render text. The methods and devices may include parsing the text to identify at least one glyph in the text. The methods and devices may include accessing a font file that includes a 3D glyph description associated with the at least one glyph and an interaction policy associated with the 3D glyph that determines when and how to animate the 3D glyph. The methods and devices may include rendering at least one 3D glyph based on the 3D glyph description and the interaction policy. The methods and devices may include transmitting at least one rendered 3D glyph.Type: ApplicationFiled: April 28, 2017Publication date: July 5, 2018Inventors: Worachai CHAOWEERAPRASIT, Richard Kirkpatrick MANNING, Simon Young TAO
-
Patent number: 9940744Abstract: Remote font management techniques are described. In one or more implementations, one or more layout tables are obtained, located remotely via a network by a computing device, that correspond to a font associated with a request to output text using the font. A layout and glyph dependencies of the text is generated by the computing device using the obtained one or more layout tables to identify glyphs that are involved in an output of the text. The identified glyphs are obtained by the computing device from a font file located remotely from the computing device via the network and the text is rendered by the computing device using the obtained glyphs.Type: GrantFiled: September 15, 2014Date of Patent: April 10, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Niklas Erik Borson, Frank Dwayne Robinson, Worachai Chaoweeraprasit
-
Publication number: 20170249292Abstract: Conditional determination of glyph substitution (GSUB) lookups or glyph positioning (GPOS) lookups in the process of rendering a string of text as a sequence of glyphs is described. A process can include receiving a string of text comprising a sequence of characters, obtaining a sequence of glyph identifiers (IDs) corresponding to the sequence of characters, and determining that a context of the string of text satisfies a condition. Based at least in part on the context satisfying the condition, an alternate lookup can be determined and executed in lieu of a default lookup. Execution of the alternate lookup causes a GSUB operation or a GPOS operation to be performed on the sequence of glyph IDs to ultimately cause the string of text to be rendered on a display as a sequence of glyphs with a typographical feature applied thereto.Type: ApplicationFiled: June 15, 2016Publication date: August 31, 2017Inventors: Peter Geoffrey Constable, Sergey Z. Malkin, Shrinath Shanbhag, Robert Matthew McKaughan, Frank Dwayne Robinson, Gregory Hitchcock, Worachai Chaoweeraprasit
-
Publication number: 20160078656Abstract: Remote font management techniques are described. In one or more implementations, one or more layout tables are obtained, located remotely via a network by a computing device, that correspond to a font associated with a request to output text using the font. A layout and glyph dependencies of the text is generated by the computing device using the obtained one or more layout tables to identify glyphs that are involved in an output of the text. The identified glyphs are obtained by the computing device from a font file located remotely from the computing device via the network and the text is rendered by the computing device using the obtained glyphs.Type: ApplicationFiled: September 15, 2014Publication date: March 17, 2016Inventors: Niklas Erik Borson, Frank Dwayne Robinson, Worachai Chaoweeraprasit
-
Patent number: 9171386Abstract: Techniques for calculating sub-pixel coverage values for text to be displayed, so as to enable caching of the sub-pixel coverage values. The sub-pixel coverage values may enable a linear combination of color information for the text with color information for one or more other, overlapping display elements for calculating composite color values to be used in controlling a display. Such composite color values to be used in controlling sub-pixels of a display may be calculated, in some embodiments, without performing a gamma correction process. Also described are techniques for retrieving cached sub-pixel coverage values and combining the values with color information for text and for other, overlapping display elements to calculate composite color values for sub-pixels of a display. At least one graphics processing unit (GPU) may be configured to perform operations using the sub-pixel coverage information and to calculate the composite color values for the sub-pixels.Type: GrantFiled: October 11, 2011Date of Patent: October 27, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Megha Jain, Miles M. Cohen, Robert A. Brown, Worachai Chaoweeraprasit, Andrew M. Precious, Kanwal VedBrat
-
Publication number: 20150287220Abstract: Techniques for calculating sub-pixel coverage values for text to be displayed, so as to enable caching of the sub-pixel coverage values. The sub-pixel coverage values may enable a linear combination of color information for the text with color information for one or more other, overlapping display elements for calculating composite color values to be used in controlling a display. Such composite color values to be used in controlling sub-pixels of a display may be calculated, in some embodiments, without performing a gamma correction process. Also described are techniques for retrieving cached sub-pixel coverage values and combining the values with color information for text and for other, overlapping display elements to calculate composite color values for sub-pixels of a display. Further described are techniques for cached font color values for the text in a shared memory location, and use of the cached font color values to composite color values for each of multiple pixels.Type: ApplicationFiled: June 22, 2015Publication date: October 8, 2015Inventors: Megha Jain, Miles M. Cohen, Robert A. Brown, Worachai Chaoweeraprasit, Andrew M. Precious, Kanwal VedBrat
-
Publication number: 20140320527Abstract: Methods, systems, and computer-storage media for performing a method of facilitating caching glyph data in hardware are provided. In embodiments, the method includes referencing a first glyph and a second glyph. Thereafter, a determination is made as to whether to merge the first glyph and the second glyph for rendering together as a set of merged glyphs. If it is determined to merge the first glyph and the second glyph, the merged glyph set including the first glyph and the second glyph are rendered. On the other hand, if it is determined to render the first glyph and the second glyph separately, glyph data associated with the first glyph that is in a hardware glyph cache and glyph data associated with the second glyph that is in the hardware glyph cache are used to render the first glyph and the second glyph separately.Type: ApplicationFiled: April 30, 2013Publication date: October 30, 2014Applicant: MICROSOFT CORPORATIONInventors: MILES MARK COHEN, NIKLAS ERIK BORSON, WORACHAI CHAOWEERAPRASIT
-
Publication number: 20130088505Abstract: Techniques for calculating sub-pixel coverage values for text to be displayed, so as to enable caching of the sub-pixel coverage values. The sub-pixel coverage values may enable a linear combination of color information for the text with color information for one or more other, overlapping display elements for calculating composite color values to be used in controlling a display. Such composite color values to be used in controlling sub-pixels of a display may be calculated, in some embodiments, without performing a gamma correction process. Also described are techniques for retrieving cached sub-pixel coverage values and combining the values with color information for text and for other, overlapping display elements to calculate composite color values for sub-pixels of a display. At least one graphics processing unit (GPU) may be configured to perform operations using the sub-pixel coverage information and to calculate the composite color values for the sub-pixels.Type: ApplicationFiled: October 11, 2011Publication date: April 11, 2013Applicant: Microsoft CorporationInventors: Megha Jain, Miles M. Cohen, Robert A. Brown, Worachai Chaoweeraprasit, Andrew M. Precious, Kanwal VedBrat
-
Publication number: 20130063475Abstract: A method for text rendering that is well suited for use in a computing device with a high resolution display but a low-power graphics processing unit (GPU). The method may comprise calculating a coverage representation of the text in a format that can be efficiently processed by the GPU. As a result, the GPU may perform anti-aliasing and subsequent operations in the rendering process. Efficient processing may be achieved by providing the coverage representation in a format that allows values associated with pixels to be computed based on a byte-aligned chunk of bits in the coverage representation. Additionally, processing on the chunks may be performed using at least one lookup table. For large filtering kernels used for anti-aliasing, the lookup tables may be partitioned into portions dependent on dynamic text characteristics and those independent of the dynamic text characteristics.Type: ApplicationFiled: September 9, 2011Publication date: March 14, 2013Applicant: Microsoft CorporationInventors: Miles M. Cohen, Kanwal VedBrat, Andrew M. Precious, Worachai Chaoweeraprasit, Niklas E. Borson, Claire M. L. Andrews, Dylan M. Deverill, Blake D. Pelton, Robert A. Brown
-
Patent number: 7925091Abstract: A method for displaying an input string of character codes as a sequence of glyphs. In one implementation, an ordered list of instructions for transforming an input string of character codes may be generated using syntax-directed translation. The ordered list of instructions may be executed to generate a sequence of glyph indices. A sequence of glyphs corresponding to the sequence of glyph indices may be displayed.Type: GrantFiled: March 30, 2007Date of Patent: April 12, 2011Assignee: Microsoft CorporationInventors: Worachai Chaoweeraprasit, Zhanjia Yang
-
Patent number: 7924285Abstract: Described is a system and method by which text elements to be rendered on a computer display (e.g., paragraph, line or any subset of text including a character or glyph) may be individually or collectively animated, at an author-selected level of granularity. Animation of text may be specified by setting animation properties via direct coding (e.g., in markup) or by specifying animation code to execute on text-related data, just prior to rendering. The text to animate may be static, or dynamically obtained at runtime from an external source. The text to animate is maintained as a whole with other text of the same element, in a text object, until a processing level that produces separate glyph runs, with an animation transform associated with each glyph run to be animated. Also described is an API that supports text animation.Type: GrantFiled: April 6, 2005Date of Patent: April 12, 2011Assignee: Microsoft CorporationInventors: David C. Brown, Worachai Chaoweeraprasit, Zhanjia Yang
-
Publication number: 20080244511Abstract: A method for developing a writing system analyzer. In one implementation, a writing system may be represented in syntax-directed translation. The syntax-directed translation representation of the writing system may be compiled to generate a writing system analyzer. In one implementation, the writing system may be represented in syntax-directed translation by creating an environment using header files with one or more declarations in source code form and formulating one or more rules for representing the writing system using the declarations.Type: ApplicationFiled: March 30, 2007Publication date: October 2, 2008Applicant: Microsoft CorporationInventors: Worachai Chaoweeraprasit, Zhanjia Yang
-
Publication number: 20080240567Abstract: A method for displaying an input string of character codes as a sequence of glyphs. In one implementation, an ordered list of instructions for transforming an input string of character codes may be generated using syntax-directed translation. The ordered list of instructions may be executed to generate a sequence of glyph indices. A sequence of glyphs corresponding to the sequence of glyph indices may be displayed.Type: ApplicationFiled: March 30, 2007Publication date: October 2, 2008Applicant: Microsoft CorporationInventors: Worachai Chaoweeraprasit, Zhanjia Yang
-
Patent number: 7228501Abstract: The invention is generally directed to a method for selecting a font that uses a mark-up language document to group together multiple pre-existing fonts into a single font family or “virtual font.” The mark-up language document includes rules regarding the conditions under which individual fonts within the family are to be used. This permits, for example, a font developer to create, in an efficient manner, an international font using several preexisting fonts.Type: GrantFiled: November 1, 2002Date of Patent: June 5, 2007Assignee: Microsoft CorporationInventors: David C. Brown, Worachai Chaoweeraprasit, Tarek Mahmoud Sayed
-
Publication number: 20060227142Abstract: Described is a system and method by which text elements to be rendered on a computer display (e.g., paragraph, line or any subset of text including a character or glyph) may be individually or collectively animated, at an author-selected level of granularity. Animation of text may be specified by setting animation properties via direct coding (e.g., in markup) or by specifying animation code to execute on text-related data, just prior to rendering. The text to animate may be static, or dynamically obtained at runtime from an external source. The text to animate is maintained as a whole with other text of the same element, in a text object, until a processing level that produces separate glyph runs, with an animation transform associated with each glyph run to be animated. Also described is an API that supports text animation.Type: ApplicationFiled: April 6, 2005Publication date: October 12, 2006Applicant: Microsoft CorporationInventors: David Brown, Worachai Chaoweeraprasit, Zhanjia Yang
-
Publication number: 20040088657Abstract: The invention is generally directed to a method for selecting a font that uses a mark-up language document to group together multiple pre-existing fonts into a single font family or “virtual font.” The mark-up language document includes rules regarding the conditions under which individual fonts within the family are to be used. This permits, for example, a font developer to create, in an efficient manner, an international font using several preexisting fonts.Type: ApplicationFiled: November 1, 2002Publication date: May 6, 2004Applicant: Microsoft CorporationInventors: David C. Brown, Worachai Chaoweeraprasit, Tarek Mahmoud Sayed