发明名称 Rendering a text image following a line
摘要 A graphics or image rendering system, such as a map image rendering system, receives image data from an image database in the form of vector data that defines various image objects, such as roads, geographical boundaries, etc., and textures defining text strings to be displayed on the image to provide, for example, labels for the image objects. The imaging rendering system renders the images such that the individual characters of the text strings are placed on the image following a multi-segmented or curved line. This rendering system enables text strings to be placed on a map image so that the text follows the center line of a curved or angled road or other image feature without knowing the specifics of the curvature of the line along which the text will be placed when creating the texture that stores the text string information. This feature provides enhanced visual properties within a map image as it allows, for example, road names to be placed anywhere inside a road following the curvature of the road, thus providing a pleasing visual effect within the map image.
申请公布号 US8917276(B2) 申请公布日期 2014.12.23
申请号 US201313847376 申请日期 2013.03.19
申请人 Google Inc. 发明人 Cornell Brian
分类号 G06T11/00;G06T11/20 主分类号 G06T11/00
代理机构 Marshall, Gerstein & Borun LLP 代理人 Marshall, Gerstein & Borun LLP
主权项 1. An image rendering engine, comprising; a communications network interface; a processor; a memory coupled to the processor; a display device coupled to the processor; a first routine, stored in the memory, that executes on the processor to receive, via the communications network interface, a set of vector data comprising data defining one or more image objects and to obtain from the memory one or more text string lookup tables, wherein one of the text string lookup tables stores text characters of at least one text string as a set of pixelated text characters and encoding data defining the center position of each of a plurality of text characters associated with the text string; a second routine, stored in the memory, that executes on the processor to determine a plurality of line segments associated with a line along which the text string is to be rendered, and a range associated with each line segment; a third routine, stored in the memory, that executes on the processor to determine a text box for each of the plurality of line segments, each of the text boxes being oriented to draw text in an upright position along an associated line segment; and a fourth routine, stored in the memory, that executes on the processor to: select one of the text boxes in which to render a text character of the text string;select one or more pixels of a next one of the text characters of the text string;determine if a center of the next one of the text characters, when rendered in the selected one of the text boxes on the image, will be within the range of the line segment associated with the selected one of the text boxes; andrender the pixels of the one of the text characters on the display device using the one of the text boxes if a center of the one of the text characters when rendered in the selected one of the text boxes will be within the range of the line segment associated with the selected one of the text boxes and not render the pixels of the one of the text characters on the display device using the one of the text boxes if a center of the one of the text characters when rendered in the one of the text boxes will not be within the range of the line segment associated with the one of the text boxes.
地址 Mountain View CA US