WO2007026898A1 - 文字図形表示装置、文字図形表示方法、文字図形表示プログラムおよび記録媒体 - Google Patents

文字図形表示装置、文字図形表示方法、文字図形表示プログラムおよび記録媒体 Download PDF

Info

Publication number
WO2007026898A1
WO2007026898A1 PCT/JP2006/317384 JP2006317384W WO2007026898A1 WO 2007026898 A1 WO2007026898 A1 WO 2007026898A1 JP 2006317384 W JP2006317384 W JP 2006317384W WO 2007026898 A1 WO2007026898 A1 WO 2007026898A1
Authority
WO
WIPO (PCT)
Prior art keywords
character
stroke
dot pattern
main dot
data
Prior art date
Application number
PCT/JP2006/317384
Other languages
English (en)
French (fr)
Inventor
Makoto Sakuta
Yasuhisa Nakamura
Original Assignee
Sharp Kabushiki Kaisha
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 Sharp Kabushiki Kaisha filed Critical Sharp Kabushiki Kaisha
Priority to JP2007533369A priority Critical patent/JP4761477B2/ja
Publication of WO2007026898A1 publication Critical patent/WO2007026898A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/24Generation of individual character patterns
    • G09G5/246Generation of individual character patterns of ideographic or arabic-like characters
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/24Generation of individual character patterns
    • G09G5/28Generation of individual character patterns for enhancement of character form, e.g. smoothing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/20Function-generator circuits, e.g. circle generators line or curve smoothing circuits

Definitions

  • Character graphic display device character graphic display method, character graphic display program, and recording medium
  • the present invention has a display device such as a liquid crystal display device and the like, a personal computer capable of displaying characters or figures on the display screen of the display device, a character graphic display device such as a word processor, and the characters Character graphic display method for displaying characters or graphics on the display screen of the graphic display device, character graphic display program for causing the computer to execute each step of the character graphic display method, and the character graphic display program are recorded
  • a display device such as a liquid crystal display device and the like
  • a personal computer capable of displaying characters or figures on the display screen of the display device
  • a character graphic display device such as a word processor
  • the characters Character graphic display method for displaying characters or graphics on the display screen of the graphic display device
  • character graphic display program for causing the computer to execute each step of the character graphic display method, and the character graphic display program are recorded
  • the present invention relates to a computer-readable recording medium.
  • a display device provided in a character display device such as a personal computer or a mobile phone includes a display screen provided with a plurality of pixels. By controlling the luminance of each pixel, a character, An image such as a figure is displayed.
  • the pixels constituting the displayed characters should be selected with the width (thickness) of the lines constituting the characters as an arbitrary number of pixels. By using this, characters can be displayed in any size.
  • Skeletal data is coordinate data related to all the line segments (strokes) that make up the skeleton (core) shape of a character.
  • Each stroke is specified so that the shape of each stroke is specified by predetermined skeleton plane coordinates. It consists of the coordinate data of multiple sample points set above. Then, for each character displayed, the coordinate values of the sample points of all the strokes that make up the skeleton shape of each character are scaled based on the skeleton data, and the coordinate system (actual pixel coordinates on the display screen) is scaled.
  • the pixel corresponding to each sample point is obtained, and the luminance values of the pixels around the pixel are set so that the predetermined line width is set based on the display size!
  • characters can be displayed on the display screen in a predetermined size.
  • characters can be displayed in an arbitrary size, characters can be displayed in a display size corresponding to the size of the display screen. Therefore, for example, even when the display screen is large, the width of each line constituting the character displayed corresponding to the size of the display screen can be displayed thick to increase the size of the display character.
  • Patent Document 1 Japanese Unexamined Patent Application Publication No. 2000-267644 discloses a method for efficiently controlling the luminance values of the peripheral pixels of the skeleton pixel of the display character.
  • a plurality of font data set for different resolutions are stored in a processing device, and two types of font data are selected from the stored font data.
  • the two types of font data selected The font data for the desired size is obtained by interpolation processing, the stroke interval is adjusted, and the font data for the intermediate size is generated. Conversion to multi-gradation data.
  • a pixel whose side corresponding to the line width of the displayed character forms a square with a predetermined number of pixels is defined with respect to the start point of the stroke.
  • Patent Document 1 Japanese Patent Laid-Open No. 2000-267644
  • the present invention solves the above-described conventional problems, and the object of the present invention is the same as the horizontal line and the vertical line even when the line segment constituting the character or figure is inclined obliquely.
  • a character graphic display device, character graphic display method, character graphic display program, and character graphic display program capable of displaying characters or graphics in high quality so that it can be recognized as being displayed in a typeface are recorded. It is to provide a recording medium.
  • the character graphic display device of the present invention is a character graphic display device for displaying a character or a graphic on a display screen, and is a skeleton data acquisition means for acquiring skeleton data representing the skeleton of the character or graphic to be displayed.
  • the skeleton data includes stroke data representing a stroke of the character or the figure, and the stroke data includes coordinate data of a plurality of sample points corresponding to the stroke. And the thickness of the line constituting the character or the figure and the sample points corresponding to the stroke are adjacent to each other.
  • Main dot pattern shape determining means for determining the shape of the main dot pattern based on the coordinate data of the two sample points in contact with each other, and a plurality of main dot patterns each having the determined shape do not overlap each other.
  • the display data generation unit generates the display data by arranging at least one sub-dot pattern so as to fill a step formed by the plurality of main dot patterns.
  • the main dot pattern shape determining means determines the shape of the main dot pattern as one of a square and a rhombus according to an inclination of a straight line connecting the two sample points.
  • the main dot pattern shape determining means determines whether or not the straight line connecting the two sample points is an oblique line, and the straight line connecting the two sample points is an oblique line. If it is determined, the shape of the main dot pattern is determined as a rhombus, and if it is determined that the straight line connecting the two sample points is not a diagonal line, the shape of the main dot pattern is determined. Decide on a square.
  • the main dot pattern shape determining means includes an inclination 0 force of a straight line connecting the two sample points 0 ° ⁇ 0 ⁇ 25 °, 65 ° ⁇ ⁇ ⁇ 113 °, 155 ° ⁇ 0 ⁇ 205 °, 2 45 ° ⁇ ⁇ ⁇ 295 ° or 335 ° ⁇ 0 ⁇ 360 °, it is determined that the straight line connecting the two sample points is not a diagonal line; otherwise, the two samples It is determined that the straight line connecting the points is an oblique line.
  • the main dot pattern shape determining means determines the number of pixels on each side of the main dot pattern according to a thickness of a line constituting the character or the graphic.
  • the thickness of the line constituting the character or the figure is set according to the size of the character or the figure or the number of lines constituting the character or the figure.
  • the display data generating means does not arrange the sub-dot pattern when the display screen is being scrolled or when the inclination of the stroke is close to a predetermined direction.
  • the main dot pattern shape determining unit determines the shape of the main dot pattern to be a square
  • the display data generating unit applies one sample point of the two sample points.
  • a square main dot pattern having a predetermined number of pixels on each side is arranged around the corresponding pixel on the display screen, and on the pixel corresponding to the straight line connecting the two sample points on the display screen.
  • a square main dot pattern having a predetermined number of pixels on each side centered on a pixel whose X coordinate value or Y coordinate value is the predetermined number of pixels from the central pixel of the arranged main dot pattern.
  • the display data is generated by arranging.
  • the display data generating means has a central pixel of each of the two main dot patterns.
  • the Y-coordinate difference of ⁇ is set as ⁇
  • the difference between the X coordinates of the central pixels of the two main dot patterns is defined as ⁇ . All pixels included in a right-angled isosceles triangle whose length of two orthogonal sides is I ⁇
  • the display data generating means determines the thickness of a line constituting the character or the figure. as W, the number of pixels W (2) 1/2 'determined as, two diagonal lines of the length the number of pixels W' respectively nearest pixel count an odd W to a value obtained by multiplying the diamond-shaped Ru der
  • the display data is generated by arranging a main dot pattern.
  • the display data generation unit is configured to generate a difference in an X coordinate value from a central pixel of the arranged main dot pattern on a pixel corresponding to a straight line connecting the two sample points on the display screen.
  • the rhombus-shaped main dot pattern is arranged around a pixel where the sum of the absolute value of and the absolute value of the difference between the coordinates is equal to or greater than the number of pixels W ′.
  • the display data generating means includes two main data arranged adjacent to each other.
  • the two main dot patterns are displaced from each other along the corresponding side of the dot pattern, each outermost position on each side of the corresponding side of the two main dot patterns
  • the X coordinate values of the end pixels are X 1 and X2 (however, XI and X2), and all pixels located within each step within the X coordinate value range from XI to X2 are sub-dot patterns.
  • the display data generation unit arranges a composite pattern at the position of the end point of the stroke and the start point of the other stroke.
  • the display data is generated, and the composite pattern is a combination of the main dot pattern to be placed at the end point of the stroke and the main dot pattern to be placed at the start point of the other stroke. is there.
  • the character graphic display method of the present invention is a character graphic display method for displaying a character or a graphic on a display screen, and acquiring skeleton data representing the skeleton of the character or graphic to be displayed.
  • the skeleton data includes stroke data representing a stroke of the character or the figure, and the stroke data includes coordinate data of a plurality of sample points corresponding to the stroke;
  • the character or the figure is Comprising a step of generating display data for Shimesuru.
  • the present invention is also a character graphic display program for causing a computer to execute each step of the character graphic display method.
  • the present invention is a computer-readable recording medium on which the character graphic display program is recorded.
  • the main dot pattern is arranged on the stroke in accordance with the thickness of the line constituting the character or figure, and the shape is determined between the main dot patterns based on the positional relationship of the main dot pattern.
  • a subdot pattern that is determined by A stroke having an arbitrary thickness can be displayed so as to have a thickness and an end point suitable for the inclination of the stroke, and the visibility of characters can be improved.
  • the main dot pattern and the sub-dot pattern so as not to overlap each other, it is possible to avoid redundant processing and display characters at high speed.
  • it is possible to display characters at high speed by setting only the general shape of the characters according to the main dot pattern without arranging the sub-dot pattern in the screen scroll.
  • FIG. 1 is a block diagram showing a configuration of a character display device according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing a structural example of skeleton data in the character display device of FIG.
  • FIG. 3 is a diagram showing an example of skeleton data representing the skeleton shape of the Chinese character “tree”.
  • FIG. 4 is a diagram showing an example in which the skeleton of the skeleton data of the Chinese character “tree” in FIG. 3 is displayed on the coordinate plane.
  • FIG. 5 is a flowchart for explaining a processing procedure by the character display program according to the embodiment of the present invention.
  • FIG. 6 is a flowchart for explaining the processing procedure of step S1050 of FIG.
  • FIG. 7 is a diagram showing an example of stroke data.
  • FIG. 8 is an explanatory diagram for generating display data (pixel data) in the real pixel coordinate system from the stroke A in the skeleton data structure of FIG.
  • FIG. 9 is an explanatory diagram for generating display data in the real pixel coordinate system from the stroke B in the skeleton data structure of FIG.
  • FIG. 10 is an explanatory diagram in the case of generating display data in the actual pixel coordinate system from the stroke in the skeleton data structure of FIG.
  • FIG. 11 is a flowchart for explaining the processing procedure of step S2030 in FIG. Yat.
  • FIG. 12 shows the stroke A shown in FIG. 7 and FIG. 8 when the dot number W indicating the display thickness is “9” and connects the start point Ps and the end point Pe of the stroke A.
  • the sample point force located on the straight line (stroke) is also determined by the square main dot pattern with 9 dots on each side centered on the pixel at the coordinate position P2 that was selected first and the pixel corresponding to the start point Ps. It is a figure which shows the state displayed.
  • FIG. 13 is a diagram showing a display state obtained by controlling the display device 2 based on display data generated when the stroke A in FIG. 7 is displayed with a display thickness of 9 dots. Is
  • FIG. 14 is a flowchart for explaining the processing procedure of step S2040 of FIG.
  • Fig.15 shows a diamond set around the coordinate position corresponding to the sample point (start point Ps) of coordinate data 1 when the stroke B in Fig. 7 is processed with a thickness W of 9 dots. It is a figure which shows the main dot pattern of a shape, respectively.
  • Figure 16 shows a diamond set around the coordinate position corresponding to the sample point (start point Ps) of coordinate data 1 when stroke C in Figure 7 is processed with a thickness W of 9 dots. It is a figure which shows the main dot pattern of a shape, respectively.
  • FIG. 17 shows a display state obtained by controlling display device 2 based on display data generated when stroke B shown in FIG. 7 is displayed with a display thickness of 9 dots.
  • FIG. 18 shows the display state obtained by controlling the display device 2 based on the display data generated when the stroke C shown in FIG. 7 is displayed with a display thickness of 9 dots.
  • FIG. 19 is a diagram showing a state in which a polygonal line is drawn by two strokes A and C.
  • FIG. 20 is a diagram showing a pattern in which squares and rhombuses are combined.
  • FIG. 21 is a diagram for explaining the details of the drawing processing in step S3010 in FIG. 11.
  • FIG. 22 is a diagram for explaining the details of the drawing process in step S3110 in FIG.
  • FIG. 23 is a diagram for explaining the details of the drawing process in step S4020 in FIG.
  • FIG. 24 is a diagram for explaining the details of the drawing processing in step S4110 in FIG.
  • a character display device is illustrated and described as an embodiment of the present invention, but this is intended to limit the present invention to a character display device capable of displaying only characters. It is not a thing. Since it is self-evident that characters and figures can be handled in the same way, a character / graphic display device capable of displaying characters or figures (that is, only letters, figures only, or both letters and figures) can be displayed. It is also obvious that the present invention can be applied. Such a character graphic display device is also within the scope of the present invention.
  • FIG. 1 is a block diagram showing a configuration of an example of an embodiment of a character display device of the present invention.
  • the character display device 1 is, for example, a personal computer, and has a display device 2 having a display screen capable of displaying predetermined images such as characters in color, and a predetermined image such as characters is displayed on the display screen of the display device 2.
  • a control unit 3 for controlling the display device 2.
  • the control unit 3 has a CPU 4 and a main memory 5, and the main memory 5 has a display device.
  • Chair 2, input device 6, and auxiliary storage device 7 are connected to each other.
  • the display screen of the display device 2 has a plurality of square pixels (pixels) arranged in a matrix, and the control unit 3 controls the luminance value of each pixel independently. Thus, characters and the like are displayed on the display screen.
  • the display device 2 is a general color liquid crystal display device
  • three sub-pixels that emit red, blue, and green light are assigned to one pixel.
  • the brightness value representing the brightness level of each sub-pixel is controlled by the control unit 3 so that the color of each pixel is controlled and characters and the like are displayed in color.
  • the auxiliary storage device 7 includes a character display program 8 for causing the display device 2 to perform a character display operation by the control unit 3, and a character display program 8 for each character displayed on the display device 2.
  • the skeleton data defining the skeleton shape is stored. Skeletal data is data related to all the line segments (strokes) that make up the skeleton (core) shape of a character. For each character that can be displayed on the display device 2 ⁇ , Each skeleton data is set.
  • the CPU 4 provided in the control unit 3 monitors and controls the entire character display device 1, and stores the character display program 8 stored in the auxiliary storage device 7 in the main memory 5, By executing the character display program 8, characters as images are displayed on the display screen of the display device 2.
  • the main memory 5 provided in the control unit 3 includes data input from the input device 6, skeleton data for displaying characters on the display device 2, and characters necessary for executing the character display program 8. Temporarily store display programs. Main memory 5 is accessed by CPU 4.
  • the CPU 4 stores the character display program 8 stored in the auxiliary storage device 7 in the main memory 5, and based on the character information input from the input device 6, the character display program stored in the main memory 5 By executing step 8, a character pattern (pixel data) is generated.
  • the generated character pattern sets a luminance value for each of a predetermined number of pixels provided on the display screen of the display device 2 based on character information input from the input device 6. It is a fixed one.
  • the generated character pattern is stored in the main memory 5 and then output to the display device 2.
  • the timing at which the character pattern is output to display device 2 is controlled by CPU4.
  • the character information input by the input device 6 includes, for example, a character code for identifying the character, a character size indicating the character size, and the like.
  • a character code for identifying the character
  • a character size indicating the character size
  • the input device 6 any type of input device capable of inputting a character code, a character size, and the like can be used.
  • a keyboard, mouse, pen input device, etc. are suitably used as the input device 6.
  • auxiliary storage device 7 any type of storage device capable of storing the character display program 8 and the skeleton data 9 can be used.
  • the auxiliary storage device 7 can be attached to and detached from the control device 3.
  • the recording medium can be used as the auxiliary storage device 7. Examples of such a recording medium include a hard disk, CD-ROM, MO, floppy (registered trademark) disk, MD, DVD, IC card, optical card, and the like.
  • the character display program 8 and the skeleton data 9 are not limited to being stored in the auxiliary storage device 7.
  • the character display program 8 and the skeleton data 9 may be stored in the main memory 5 or may be stored in a ROM (not shown).
  • the ROM may be, for example, a mask ROM, EPROM, EEPROM, flash ROM, or the like.
  • the ROM method it is possible to easily realize various process nominations by simply replacing the ROM. Therefore, the ROM method can be suitably applied to a portable terminal device, a mobile phone, and the like.
  • the recording medium for storing the character display program 8 and the skeleton data 9 is a medium other than the medium that holds the program or data fixedly, such as a storage device such as a disk or card, a semiconductor memory, or the like. It may be a medium that fluidly carries a program or data, such as a communication medium used to communicate a program or data in a communication network.
  • the character display device 1 includes means for connecting to a communication line including the Internet
  • the communication line power character display program 8 and the skeleton data 9 can be downloaded.
  • the loader program required for downloading is ROM (Not shown) may be stored in advance, or may be installed in the control unit 3 from the auxiliary storage device 7.
  • Examples of such a character display device 1 include a personal computer.
  • the character display device of the present invention is not limited to a personal computer, and may be an electronic device or an information device having a display device capable of color display or monochrome display.
  • the character display device 1 may be an electronic device such as a word processor equipped with a color liquid crystal display device, a portable information terminal as a portable information tool, a portable phone such as a PHS, a general telephone, or a communication device such as a fax machine. Good.
  • FIG. 2 shows an example of the data structure of the skeleton data for one character stored in the auxiliary storage device 7 shown in FIG.
  • the skeleton data structure shown in Fig. 2 is a character code for specifying a character and the total number M of all strokes that make up the skeleton of one character specified by the character code (M is an integer of 1 or more) And the stroke data which is information necessary for specifying each stroke.
  • the character skeleton data (skeleton data) specified by the character code is defined in advance and stored in the auxiliary storage device 7.
  • Stroke data is obtained by representing each stroke on a skeleton coordinate plane having a predetermined size, for example, on a skeleton coordinate plane configured by an XY coordinate plane having 256 X 256 coordinate points. It is the coordinate data of multiple sample points necessary to identify each stroke, and is necessary to identify one stroke on the coordinate plane for each of all the strokes that form the skeleton of one character.
  • the total number of sample points N (N is an integer of 1 or more) and coordinate data that is the coordinate values of each of the N sample points.
  • the total number N of sample points varies depending on the types of strokes that make up a character. For example, in the case of straight strokes such as vertical and horizontal lines that make up a character, the start and end points of each stroke Two sample points are set. Also, in the stroke of the curve that composes the character, the start point and the end point, and one or more coordinate points located between them are set as sample points according to the state of the curve so that the curve is specified. . Therefore, 1 One stroke is recorded as stroke data, and is specified on the skeleton coordinate plane by connecting each sample point indicated by N coordinate data with a straight line. This skeletal coordinate plane defines the lower left coordinate as the origin (0, 0), the upper direction is defined as the positive direction of the Y coordinate, and the right direction is defined as the positive direction of the X coordinate, as in the normal X—Y coordinate. .
  • one skeleton data includes M pieces of stroke data 13, and coordinate data of N sample points is set for each of the M strokes.
  • FIG. 3 shows the skeleton data structure of the Chinese character “tree”
  • FIG. 4 shows the skeleton shape shown on the skeleton coordinate plane by the skeleton data (skeleton data).
  • the skeleton data 9 of the Chinese character “tree” is the character code S “4458” (JIS division code, 44 divisions 58 points) for designating the Chinese character “tree”, the stroke The number is shown to be “4”. Then, for each of the four strokes # 1 to # 4, stroke data of a predetermined number of sample points is set. Stroke # 1 is the stroke of the horizontal line that makes up the kanji ⁇ wood '', stroke # 2 is the stroke of the vertical line that makes up the kanji ⁇ wood '', strokes # 3 and # 4 are the left and right that make up the kanji ⁇ wood '' This is the stroke of each diagonal line (curve).
  • stroke # 1 is the stroke of the horizontal line that makes up the kanji ⁇ wood ''
  • stroke # 2 is the stroke of the vertical line that makes up the kanji ⁇ wood ''
  • strokes # 3 and # 4 are the left and right that make up the kanji ⁇ wood '' This is the stroke
  • stroke # 1 is a straight line (horizontal line)
  • stroke data the coordinate data of the two sample points of the start point and the end point are stored in that order.
  • Is set, and (4, 192) and (245, 192) are set as the start point and end point coordinate data 1 and 2 as sample points, respectively.
  • stroke # 2 is a straight line (vertical line)
  • the coordinate data of two sample points, the start point and end point are stored in that order as the stroke data.
  • "Is set, and coordinate data 1 (128, 255) as the start point and coordinate data 2 (128, 0) as the end point are set.
  • Stroke # 3 is a slanted line on the left and has a gentle curve, so the stroke data includes coordinate data of three sample points in addition to the two sample points at the start and end points. It is stored and the number of sample points N is set to ⁇ 5 '', and coordinate data 1 (121, 192), coordinate data 2 (97, 141), coordinate data 3 are set as the coordinate data of 5 sample points. (72, 103), coordinate data 4 (41, 69), coordinate data 5 (4, 42) force These are set in order from the start point to the end point.
  • Stroke # 4 is a slanted line on the right side and has a gentle curve, so the stroke data contains three sample points in addition to the two sample points at the start and end points.
  • the number N is set to ⁇ 5 '', and coordinate data 1 (135, 192), coordinate data 2 (156, 146), coordinate data 3 (182, 107), coordinates are set as coordinate data of 5 sample points.
  • Data 4 (213, 72) and coordinate data 5 (251, 42) are set in order from the start point to the end point.
  • FIG. 4 shows all the strokes representing the skeleton shape of the Chinese character “tree” shown in FIG. 3 on the skeleton coordinate plane.
  • stroke # 1 is shown as a straight line connecting the start point (0, 192) and the end point (255, 192), and stroke # 2 is the start point (128, 255) and end point (128 , 0).
  • Stroke # 3 is shown as a straight line connecting five Sampnore points (121, 192), (97, 141), (72, 103), (41, 69) and (4, 42) .
  • Stroke # 4 is shown as five sample points (135, 192), (156, 146), (182, 107), (213, 72) and (251, 42) connected in sequence by a straight line .
  • FIG. 5 is a flowchart for explaining the processing procedure by the character display program 8 executed by the CPU 4. The specific processing procedure of the character display program 8 will be described in detail below for each processing.
  • the CPU 4 obtains the input character information (see step S1000 in FIG. 5, below). The same). For example, when the Chinese character “Thu” is displayed on the display screen of the display device 2, the character information is input from the input device 6 as character code 4458 CFIS point code, 44 points 58 points). For the character size, the overall width and height of the character displayed in the real pixel coordinate system are input as the number of pixels.
  • Step S1010 When the character information input in step S1000 is acquired, the skeleton data 9 for one character corresponding to the input character code is read from the auxiliary storage device 7 and stored in the main memory 5. (Step S1010).
  • the skeleton data 9 of the Chinese character “Tree” shown in FIG. 3 is read.
  • all sample points are scaled for each stroke set in the skeleton data 9 (step S1020).
  • Scaling is a calculation process that maps coordinates on a coordinate plane having a certain size to coordinates on a coordinate plane having a different size. In the present invention, all the strokes in the skeletal coordinate plane are all mapped.
  • each pixel on the display screen in which each pixel, which is each square, is arranged in a matrix is shown as coordinate data of coordinate points in the XY coordinates.
  • the lower left pixel is defined as the origin (0, 0)
  • the upper direction is defined as the positive direction of the Y coordinate
  • the right direction is defined as the positive direction of the X coordinate.
  • the coordinate points of the actual pixel coordinate system correspond to each square pixel, and each square pixel constitutes one dot on the display screen.
  • step S1020 When the scaling in step S1020 is completed, the display thickness (line width) W of each stroke set in the skeleton data is set in accordance with the input character size (step S1030). Details of this processing will be described later.
  • step S1030 the stroke data of the first stroke set in the skeleton data structure read from the auxiliary storage device 7 is extracted (step S1040). ).
  • step S1040 when the first skeletal data 13 is extracted for the skeletal data structural force, the stroke is converted into the actual pixel coordinate system based on the extracted stroke data for one stroke. Display data necessary to display as the set display thickness W is generated (step S1050). Details of this processing will be described later.
  • step S1050 When the display data of the first stroke is generated in step S1050, it is determined whether the processing in steps S1040 to S1050 is completed for all the strokes included in the skeleton data structure ( Step S1060). If display data has not been generated for all strokes (if judgment result power is false (N)), step S1040 Go back to the strokes for which display data has already been generated in the skeleton data structure.
  • step S1030 details of the display thickness setting process in step S1030 in the processing procedure of the character display program 8 shown in FIG. 5 will be described.
  • the display thickness W of the stroke is set so as to increase as the size of the character displayed on the display screen increases.
  • the deviation of the width and height of the character size displayed in the real pixel coordinate system on the display screen does not exceed 40 dots (pixels)
  • 1 dot is set as the display thickness W Is done.
  • the characters are displayed on the display screen of the display device 2 with each square pixel (1 dot) in the actual pixel coordinate system as the line width.
  • the size of the overall width and height of the displayed characters exceeds 40 dots. If either does not exceed 80 dots, 3 dots (pixels) are set as the display thickness W. One square (3 dots x 3 dots) or rhombus with the number of dots set as one side is set as one main dot pattern, and the pixels for displaying characters with the main dot pattern as the line width are set. Similarly, if the size of the overall width and height of displayed characters exceeds 80 dots, if either does not exceed 128 dots, the display thickness W is set to 5 dots (pixels). A square or diamond with 5 dots on one side is set as one main dot pattern.
  • the power that exceeds 128 dots in both the overall width and height of the displayed character When either one does not exceed 192 dots, 7 dots (pixels) are set as the display thickness W, and one side A 7-dot square or diamond is set as one main dot pattern. If the overall width and height of the displayed character exceeds 192 dots, 9 dots is set as the display thickness W, and a square or rhombus with 9 dots on one side is set as one main dot pattern To do. [0067] It should be noted that the setting method of the display thickness W of the stroke described above increases the character width suitable for the displayed character size by increasing the line width of the displayed character as the displayed character size increases. An example of a display that can be used to obtain a display Regardless of the size of the text, the display thickness W may be set constant. Also, set the display thickness W to a smaller value according to the number of character strokes.
  • FIG. 6 is a flowchart showing a subroutine of the stroke display data generation processing (step S1050) shown in FIG. 5, and FIG. 7 is an example of character stroke data for which the stroke display data generation processing shown in FIG. 6 is executed. It is a table
  • the skeleton data structure force is also acquired for the stroke data 13 of all the strokes of the displayed character (step S2010).
  • the coordinate data 1 and the second coordinate data 2 of the first two sample points recorded in order as stroke data are obtained for each stroke.
  • stroke A is a straight line
  • coordinate data 1 (27, 0) indicating the start point of stroke A
  • Coordinate data 2 (0, 9) indicating the end point
  • stroke B has two sample points
  • coordinate data 1 (12, 0) indicating the start point of the straight line
  • coordinate data 2 (0, 27) indicating the end point
  • stroke C is also a straight line since the number of sample points is two, and coordinate data 1 (15, 0) indicating the start point of the straight line and coordinate data 2 (0, 27) indicating the end point are extracted. It is.
  • FIG. 8 is an explanatory diagram in the case of generating display data (pixel data) in the real pixel coordinate system from the stroke A in the skeleton data structure of FIG. 7, and FIG. 9 is the skeleton data of FIG.
  • FIG. 10 is an explanatory diagram for generating display data in the real pixel coordinate system from the stroke B in the structure, and FIG. 10 is for generating display data in the real pixel coordinate system from the stroke in the skeleton data structure in FIG. It is explanatory drawing of.
  • step S2010 when the coordinate data of the two sample points are extracted for the stroke in the skeleton data 9, the straight line connecting the two sample points extracted is slanted. A determination is made as to whether the line is a line (step S2020).
  • step S2020 If it is determined in step S2020 that the straight line connecting the sample points indicated by coordinate data 1 and coordinate data 2 is an oblique line, the main dot pattern is set to a rhombus in step S2040. If the display data is generated and determined to be a vertical line or a horizontal line instead of a diagonal line, in step S2030, the main dot pattern is set to a square and display data is generated.
  • step S2020 If it is determined in step S2020 that the stroke is not an oblique line, a square main dot having a predetermined number of dots on one side so as to have the display thickness W determined in step S1030 in FIG. Display data of a straight line connecting the sample points of coordinate data 1 and coordinate data 2 acquired in step S2020 is generated by the pattern (step S2030). Details of this processing will be described later. Instead of the square main dot pattern, a rectangular main dot pattern may be used.
  • step S 2020 determines whether the stroke is an oblique line. If it is determined in step S 2020 that the stroke is an oblique line, each side has a predetermined number of dots so that the display thickness W is determined in step S 1030 in FIG. Two coordinate data acquired in step S2020 by the main dot pattern of the shape 1 Then, display data of a straight line connecting the sample points of the coordinate data 2 is generated (step S 2040). Details of this processing will also be described later.
  • step S2030 or step S2040 when the display data regarding the display thickness W of the straight line connecting the coordinate data of the first and second sample points in each stroke is obtained, the third stroke data is obtained as the stroke data in each stroke.
  • step S2010 to step S2030 or step S2040 the process from step S2010 to step S2030 or step S2040 is repeated, and the coordinate data 2 and the coordinate data are Display data of a straight line connecting points with 3 is generated (step S 2050). Then, when the display data is generated for one stroke with respect to a straight line connecting the sample points included in the skeleton data structure in sequence, the stroke display data generation processing in step S1050 in the flowchart of FIG. 5 is completed.
  • FIG. 11 is a flowchart showing a display processing procedure for generating display data of the square main dot pattern performed in step S2030 when it is determined in step S2020 shown in FIG. 6 that the line is not an oblique line. is there.
  • the procedure of the display data generation process using the square main dot pattern will be described below with reference to FIG. 11 and FIG. 8, which is an explanatory diagram for the stroke A in FIG.
  • a display thickness W 9
  • a square with 9 dots (pixels) on the side is set as the main dot pattern in the real pixel coordinate system. It is like this.
  • step S2020 If it is determined in step S2020 shown in Fig. 6 that the stroke is not a diagonal line, the coordinate data 1 obtained first from the coordinate data of the two sample points obtained in step S2010 is supported. Set the pixels that make up the square main dot pattern with W dots on one side corresponding to the display thickness W set in step 1030 in Fig. 5, with the starting point Ps of the stroke A to be set as the center point F. Then, this starting point Ps is set to point G (step S 3010).
  • step S3020 the coordinates of the pixel on the stroke A adjacent to the end point Pe side with respect to the point G are obtained by the Bresennom algorithm and set to a new point G (step S3020).
  • step S3 030 it is determined whether the straight line connecting the start point Ps and the end point Pe of the stroke is a vertical line. In this case, if the angle between the straight line corresponding to stroke A and the X axis satisfies ⁇ 1S 45 ° ⁇ ⁇ ⁇ 135 ° or 225 ° ⁇ ⁇ ⁇ 315 °, it is determined as a vertical line. If the angle ⁇ between the straight line corresponding to stroke A and the X axis is not within the above range, it is determined as a horizontal line.
  • step S3070 If it is determined that the straight line of the stroke connecting the start point Ps and the end point Pe is a vertical line, the process proceeds to step S3070. If it is determined that the stroke is not a vertical line, the process proceeds to step S3040.
  • step S3040 the absolute value I ⁇ ⁇ of the difference between the X coordinate value of the real pixel coordinate system corresponding to the newly set point G and the X coordinate value of the real pixel coordinate system corresponding to the center point F is set.
  • step S3100 it is confirmed that the point G does not correspond to the stroke end point Pe, the process returns to step S3020, and the coordinates of the pixel on the stroke A adjacent to the end point Pe side with respect to the point G are returned. To a new point G.
  • X indicates pixel points G sequentially obtained by Bresenham's algorithm with respect to the starting point Ps of the stroke A.
  • step S3110 When the point G corresponds to the stroke end point Pe in step S3100, the process proceeds to step S3110, and a square main dot pattern with a dot number W on one side centered on the point G is selected. Set the pixels to be configured, and proceed to step S2050 in FIG.
  • the absolute value of the difference between the X coordinate value of the pixel corresponding to the point G and the X coordinate value of the pixel corresponding to the center point F is the number of dots indicating the display thickness of the stroke.
  • the main dot pattern set around the point G and the main dot pattern centered at the center point F do not overlap with each other in the X direction. become. Then, the point G that becomes the center of the main dot pattern is set as a new center point F.
  • FIG. 12 shows a square main dot pattern 21 set when the starting point Ps of the stroke A shown in FIGS. 7 and 8 is the center point F and the number of dots W indicating the display thickness is “9”. And a square main dot pattern 22 set adjacent to the main dot pattern.
  • the main dot pattern 21 set with the starting point Ps of the stroke A as the center point F is shown in white, and the main dot pattern 22 set in contact with the main dot pattern 21 is shown in black.
  • step S3060 the absolute value I ⁇ I of the difference between the Y coordinates of the points F and G, which are the centers of the main dot patterns 21 and 22, is calculated. If 1 ⁇ I ⁇ I, each step formed by the displacement of the main dot patterns 21 and 22 in the Y-axis direction is in contact with the main dot patterns 21 and 22, respectively, and in the X and Y directions. All the pixels included in an isosceles triangle whose sides are the lengths in the X and ⁇ directions of each of the “I ⁇ — I—1” pixels arranged adjacent to each other. Select as a subdot pattern. That is, not only a pixel in which all of the pixels are included in the isosceles triangle but also a pixel in which a part of the pixel is included in the isosceles triangle is selected as the sub-dot pattern.
  • a 9 dot x 9 dot square main dot pattern 21 with the starting point Ps of stroke A as the center point F is configured.
  • the coordinate data of 81 pixels and 9 dots x 9 dots adjacent to this main dot pattern 21 It is set as the coordinate data and force display data (pixel data) of 81 pixels that make up the main dot pattern 22 of the square.
  • the absolute value I ⁇ I of the difference between the main dot patterns 21 and 22 in the Y-axis direction is “3”, so the main dot patterns 21 and 22 are formed so as to be shifted in the Y-axis direction.
  • the length of each of the two pixels that are in contact with the main dot patterns 21 and 22 and are adjacent to each other in the X and Y directions is defined as one side.
  • Three pixels included in the isosceles triangle (shown by the shaded pattern in Fig. 12) are set as subdot patterns 23 and 24, respectively.
  • step S3120 the point G confirms whether it corresponds to the end point Pe of the stroke A! /, What! /, And corresponds to the end point Pe of the stroke. If not, the process returns to step S3020, and thereafter the same processing is repeated.
  • step S2050 in FIG. 6 When it is confirmed that the point G is the stroke end point Pe, the process proceeds to step S2050 in FIG. 6, and it is confirmed that the processing for all coordinate positions included in one stroke is completed. Then, when it is confirmed that the processing for all coordinate positions included in one stroke has been completed, the process proceeds to step S1050 in FIG. 5, and the same processing is performed for other strokes constituting the character. Is executed to generate display data for all strokes constituting the character.
  • step S3030 the force explaining the processing procedure when the straight line connecting the stroke start point Ps and the end point Pe is regarded as a horizontal line instead of a vertical line.
  • the main dot pattern set around G is the center point F
  • the main dot pattern set for is in contact with each other in the Y direction without overlapping.
  • step S3100 it is confirmed that point G is not the stroke end point Pe, and step S3020 is entered. Returning, the coordinate position of the pixel adjacent to the point G is obtained by Bresenham's algorithm to be the point G, and thereafter, the processing from step S3030 to step S3070 is repeated.
  • step S3090 the point G is directly Calculate the absolute value I ⁇ I of the difference of the X coordinate value in the real pixel coordinate system from the previous center point F. If 1 I ⁇ I, the main dot pattern centered on point G and point F A step portion is formed by shifting the main dot pattern centered on the X axis in the X-axis direction. As a result, each step portion is in contact with each main dot pattern and mutually in the X and Y directions. All pixels included in an isosceles triangle with the lengths in the X and ⁇ directions of each of the “I ⁇ —
  • steps S3060 and S3090 may be omitted when the display screen is being scrolled. Also, if the tilt of the stroke is close to the horizontal or vertical direction, it may be omitted. This makes it possible to prioritize the drawing speed by reducing the drawing process when the effect of the pattern filling the step of the line segment on the appearance of the output result is minimal.
  • step S3120 in response to the end point p e of the point G is stroke, Do, or verify, in response to the end point Pe of the stroke! / If not, the process returns to step S3020 and repeats the processes after step S3020.
  • step S3120 When it is confirmed in step S3120 that point G corresponds to the stroke end point Pe, as described above, the process proceeds to step S 2050 in FIG. 6 and all the coordinates included in one stroke are obtained. Confirm that the processing for the position has been completed. When it is confirmed that the processing for all coordinate positions included in one stroke has been completed, Proceeding to step S1050, similar processing is performed for other strokes constituting the character, and display data for all strokes constituting the character is generated.
  • Figure 13 shows the display state obtained by controlling display device 2 based on the display data generated when stroke A in Figure 7 is displayed with a display thickness of 9 dots.
  • the power between the main dot patterns of W is displayed smoothly and continuously, and the visibility when the stroke is displayed thickly is remarkably improved.
  • step S2020 of FIG. 6 the straight line connecting the coordinate data 1 of the first sample point and the coordinate data 2 of the second sample point recorded in order as stroke data is an oblique line. What to do if it is judged as (vertical or horizontal)! However, in the following, in step S2020 of FIG. 6, when the straight line connecting the sample point of coordinate data 1 and the second sample point of coordinate data 2 is determined as an oblique line, step S 2040 The specific process will be described based on the flowchart of FIG.
  • step S1030 of the flowchart of FIG. (2) Multiply 1/2 J (WX (2) 1/2 ) to find one or more odd number W that is closest to the multiplication result (see step S4 010 in FIG. 14, and so on).
  • step S4010 when an odd number W 'of 1 or more is obtained, the obtained W' is represented by two diagonal lines with the pixel corresponding to the start point Ps (sample point of coordinate data 1) as the center point F.
  • the diamond shape corresponding to the number of dots is set as the main dot pattern (step S40 20).
  • Figures 15 and 16 show the stroke B and stroke C in Fig. 7 and the thickness W of 9 dots, respectively.
  • step S4030 When the point G is obtained in step S4030, the absolute value I ⁇ I of the difference between the X coordinate values of the real pixel coordinate system corresponding to the obtained point G and the center point F, and the respective Y coordinate values.
  • the total force with the absolute value I ⁇ I of the difference between W and W obtained in step S4010, (I ⁇ I + I ⁇ I ⁇ W) is judged to be! / ⁇ (step S4040).
  • step S4090 If I ⁇ I + I ⁇ I ⁇ W is not satisfied in step S4040, proceed to step S4090, confirm that point G does not correspond to stroke end point Pe, and step Returning to S4120, the coordinates of the pixel adjacent to the end point Pe side with respect to the point G are obtained and set as a new point G (step S4030), and it is determined whether I ⁇ I + I ⁇ I ⁇ W ( Step S4040). Thereafter, the processes of Steps S4090 to S4 120 to Steps S4030 to S4040 are repeated until I ⁇ I + I ⁇ I ⁇ W.
  • the point G corresponds to the stroke end point Pe
  • the pixel of the point G (end point Pe) is the main dot pattern center F
  • each of the two diagonal lines has the number of dots W.
  • the diamond shape is set as the main dot pattern (step S4100), and the process ends.
  • each of the main dot pattern 31 and the main dot pattern 32 of diamond shape A gap (indicated by hatching in FIG. 16) is formed between the sides facing each other.
  • a rhombus-shaped main dot pattern 32 having a diagonal corresponding to the display thickness W is adjacent to the main dot pattern 31.
  • the adjacent sides in the main dot patterns 31 and 32 that are close to each other (sides that are in close contact with each other without forming a gap, or sides in which a gap is formed between them, FIG. 15).
  • the main dot patterns 31 and 32 are shifted from each other along the adjacent edge B and each orthogonal edge to the adjacent edge B. Steps are formed by side C and side A of main dot patterns 31 and 32, respectively.
  • the sub-dot patterns 33 are respectively set so as to fill those stepped portions (step S4060).
  • Each sub-dot pattern 33 has the X-coordinate value of the pixel at each end located on the outermost side on both sides of each adjacent side B in each main dot pattern 31 and 32. Assuming XI and X2 (where X1 ⁇ X2), all pixel force sub-dot patterns 33 located within each step are set in the range where the X coordinate value is between XI and X2.
  • the absolute value I ⁇ I of the difference between the X coordinate value of the real pixel coordinate system corresponding to the point G and the X coordinate value of the pixel of the real pixel coordinate system corresponding to the center point F, and each Y It is determined whether the total force with the absolute value I ⁇ I of the difference in coordinate values is greater than W obtained in step S4010 (I ⁇ I + I ⁇ I> W) (step S4070). If
  • step S41 10 When the main dot pattern, sub-dot pattern, and correction dot pattern are set in this way, it is confirmed whether point G corresponds to the stroke end point Pe (step S41 10), and the stroke end point is determined. If Pe is not supported, the process returns to step S4030, and the operations after step S4030 are repeated.
  • step S4060 and step S4080 may be omitted when the display screen is being scrolled.
  • the stroke may be omitted even when the inclination of the stroke is close to the 45 degree direction, 135 degree direction, 225 degree direction or 315 degree direction. This makes it possible to prioritize the drawing speed by reducing the drawing process in situations where the effect of the pattern filling the line segment on the appearance of the output result is minimal.
  • step S41 10 After that, when it is confirmed that the point G corresponds to the end point Pe of the stroke (step S41 10), the process returns to step S2050 in FIG. 6, and the processing for all coordinate points in one stroke is completed. If processing for all coordinate points for one stroke is complete, go back to step S1060 in Fig. 5 to generate display data for all strokes included in one character. If the display data generation process for all the tokens has been completed, the display data generation process for one character is completed. [0121] Note that Figs. 17 and 18 control the display device 2 based on the display data generated when the strokes B and C shown in Fig. 7 are displayed with a display thickness of 9 dots. Each obtained display state is shown. In any case, each corner is formed by diagonal lines orthogonal to each other at each end point of each stroke, and the step force between the main dot patterns is relaxed and visually recognized. Therefore, the visibility is remarkably improved.
  • Fig. 19 shows the points on the straight line connecting the start and end points of stroke A and stroke C as rectangles when drawing stroke A starting from end point R where stroke C is drawn.
  • FIG. Here, at the point indicated by R, the start point of stroke A overlaps the end point of stroke C.
  • the drawing procedure when the start point of one stroke overlaps the end point of another stroke is as follows.
  • drawing is performed according to the same procedure shown in FIG. 14, and for stroke A, as described above, drawing is performed according to the same procedure shown in FIG.
  • the main dot pattern drawing process of the start point and the end point (specifically, the drawing of step S3010, step S3110 in FIG. 11, step S4020 in step S4020, step S4100 in FIG. 14) Processing) is performed according to the following procedure.
  • step S3010 in FIG. 11 is performed according to the procedure shown in FIG.
  • Step S7010 The current processing point G and the previous drawing center point F are set as the starting points.
  • step S3010 ends. If not, go to step S7020.
  • Step S7020 A square having a width and a height both of stroke width W around the start point is drawn, and the process of step S3010 is completed.
  • step S3110 in FIG. 11 is performed according to the procedure shown in FIG.
  • Step S5010 If the end point of a stroke overlaps the start point of another stroke! In other words, when the end point coordinate of a stroke is the same as the start point coordinate of another stroke)
  • Step S5020 [Proceed. If not, go to step S5030.
  • Step S5020 It is determined by the same method as step S2020 in FIG. 6 whether or not the stroke where the start point and end point of another stroke overlap is an oblique line. If it is determined that the line is an oblique line, the process proceeds to step S5040;
  • Step S5030 A square having a width W and a height W of stroke both centered on point G is drawn, and the process of step S3110 ends.
  • Step S5040 A composite pattern of a square having a width W and a stroke width W both centered on the point G and a rhombus having a height W is drawn, and the process of step S3110 is completed.
  • W is obtained by the same method as in step S4010 in FIG.
  • the above synthesis pattern is a combination of a square and a rhombus, and is a pattern generated in advance on a memory.
  • the drawing of the composite pattern is achieved by drawing by simply copying a pre-generated composite pattern, rather than individually drawing by superimposing the diamond and the square.
  • the waste of redundantly painting the pixels is reduced, so that high speed operation is realized.
  • the composition processing can be reduced by holding the composition pattern generated in advance in the memory in a cache memory mechanism using the slopes of the two line segments as parameters and reusing it.
  • step S4020 in FIG. 14 is performed according to the procedure shown in FIG.
  • Step S8010 The current processing point G and the previous drawing center point F are set as the starting points.
  • step S4020 ends. If not, go to step S8020.
  • Step S8020 Draw a rhombus whose two diagonals are both W around the start point, and finish the process in step 4020.
  • step S4110 in FIG. 14 is performed according to the procedure shown in FIG.
  • the drawing process procedure of FIG. 24 will be described below.
  • Step S6010 When the end point of a stroke overlaps with the start point of another stroke (that is, the coordinates of the end point of the stroke are the same as the coordinates of the start point of another stroke) , Step S6020 [Proceed. If not, go to step S6030.
  • Step S6020 It is determined by the same method as step S2020 in FIG. 6 whether or not the stroke where the start point and end point of another stroke overlap is an oblique line. If it is determined that the line is an oblique line, the process proceeds to step S6040;
  • Step S6030 A composite pattern of a square having a width W and a stroke width W both centered on the point G and a rhombus having a height W is drawn, and the process of step S4110 is completed.
  • the synthetic pattern drawing method is the same as the synthetic pattern drawing method in step S 5040 in FIG.
  • Step S6040 Draws a diamond with W and two diagonals centered on point G, and the process of step S4110 ends.
  • a stroke of a character or a figure is displayed with an arbitrary line width, it is displayed so as to have a thickness and an end point suitable for the inclination of the stroke. Even when the display size is increased, the visibility of characters or figures is remarkably improved. Furthermore, by arranging a plurality of main dot patterns so as not to overlap each other and arranging the main dot patterns and sub dot patterns so as not to overlap, redundant processing can be avoided. Graphic display processing can be performed at high speed. In addition, during the screen scrolling, the character / graphic display process is performed at a higher speed by displaying only the approximate shape of the character / graphic by the main dot pattern without performing the sub-dot pattern placement process. It becomes possible.
  • an electronic device or the like having a display device that displays characters or figures on a display screen such as a mobile phone or a liquid crystal television

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Generation (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Abstract

文字図形表示装置は、文字または図形を構成する線が斜め方向に傾いている場合にも、横線および縦線と同様の書体で表示されていると認識できるように、文字または図形を高品位に表示する。文字図形表示装置は、文字または図形を構成する線の太さと、ストロークに対応する複数のサンプル点のうち互いに隣接する2つのサンプル点の座標データとに基づいて、メインドットパターンの形状を決定するメインドットパターン形状決定手段と、決定された形状をそれぞれ有する複数のメインドットパターンを互いに重複しないように配置することによって、文字または図形を表示するための表示データを生成する表示データ生成手段とを備えている。

Description

文字図形表示装置、文字図形表示方法、文字図形表示プログラムおよび 記録媒体
技術分野
[0001] 本発明は、液晶表示デバイス等のような表示デバイスを有し、表示デバイスの表示 画面に文字または図形を表示することができるパーソナルコンピュータ、ワードプロセ ッサ等の文字図形表示装置、その文字図形表示装置の表示画面に文字または図形 を表示させるための文字図形表示方法、その文字図形表示方法の各ステップをコン ピュータに実行させるための文字図形表示プログラム、その文字図形表示プログラム が記録されたコンピュータ読み取り可能な記録媒体に関する。
背景技術
[0002] パーソナルコンピュータ、携帯電話等の文字表示装置に設けられた表示デバイス は、複数の画素が設けられた表示画面を備えており、各画素の輝度を制御すること によって、表示画面に文字、図形等の画像が表示される。このような表示デバイスに おいて、表示画面に文字を表示する場合には、表示される文字を構成する画素を、 文字を構成する線の幅 (太さ)を任意の画素数として選択することによって、任意のサ ィズで文字を表示することができる。
[0003] 表示画面に文字を表示する場合には、例えば、文字の骨格 (芯)形状を定義する 骨格データに基づいて、表示画面における画素が選択される。骨格データとは、文 字の骨格 (芯)形状を構成する全ての線分 (ストローク)に関する座標データであり、 所定の骨格平面座標にお 、て各ストロークの形状が特定されるように各ストローク上 に設定された複数のサンプル点の座標データによって構成されている。そして、表示 される各文字毎に、骨格データに基づ 、て各文字の骨格形状を構成する全てのスト ロークのサンプル点の座標値をスケーリングして、表示画面における座標系(実ピク セル座標系)において各サンプル点に対応する画素をそれぞれ求めて、表示サイズ に基づ!/、て設定された所定の線幅になるように、その画素の周辺の画素の輝度値を 設定する。これにより、表示画面に所定サイズで文字を表示することができる。 [0004] このような文字表示方法によれば、任意のサイズで文字を表示することができるた めに、表示画面のサイズに対応した表示サイズで文字を表示することができる。従つ て、例えば表示画面が大きい場合にも、表示画面のサイズに対応させて表示される 文字を構成する各線の幅を太く表示して、表示文字のサイズを大きくすることができ る。
[0005] また、このように文字の線幅を太く表示する場合には、表示される文字の視認性を 向上させるために、表示文字を構成する骨格画素のみならず、その周辺の画素の輝 度値を制御する処理も行われており、これにより、表示文字を構成する線を滑らかに 、し力も均整のとれた線幅に表示することができる。し力しながら、このような処理を実 行する場合には、 CPU等の演算制御装置に対する負荷が大きくなるという問題があ る。このために、例えば、携帯電話機のような各種機能が設けられている機器の場合 には、演算制御装置に対する負荷をできるだけ低減する必要があり、上述したような 処理を効率的に行うことが可能なアルゴリズムが要求されている。
[0006] 特許文献 1 (特開 2000— 267644公報)には、表示文字の骨格画素の周辺画素の 輝度値を効率よく制御する方法が開示されている。この特許文献 1に開示された方 法では、異なる解像度のそれぞれに対して設定された複数のフォントデータを処理 装置に記憶し、記憶されたフォントデータの中から 2種類のフォントデータを選択し、 選択された 2種類のフォントデータ力 所望サイズのフォントデータを補間処理で求 めることによって、ストロークの間隔を調整して、中間サイズ用フォントデータを生成し 、生成された中間サイズ用フォントデータを多階調データに変換するようになってい る。また、ストロークデータから任意の線幅のビットマップデータを生成する際に、スト ロークの始点に対して、表示される文字の線幅に対応する一辺が所定画素数の正方 形を構成する画素を設定し、以降は、設定された正方形を構成する画素と、ストロー クのサンプル点との位置関係によって、表示に必要な画素を設定することによって、 各サンプル点に対してそれぞれ設定される正方形を構成する画素が重複して設定さ れな 、ようにすることによって、処理効率を向上させて!/、る。
特許文献 1:特開 2000— 267644公報
発明の開示 発明が解決しょうとする課題
[0007] し力しながら、上記特許文献 1に開示されて 、る従来技術では、ストロークの傾きが 変化しても、設定される画素によって形成される正方形の形状は変化せずに一定に なっている。このために、水平方向および垂直方向に沿った線分 (横線および縦線) におけるそれぞれの端点では、コーナー部が水平方向および垂直方向にそれぞれ 沿った辺によって直角に形成されことによって、ゴシック体のように各端点が明確に 表示されることになるが、斜め方向の線分については、それぞれの端点において、同 様に、コーナー部が水平方向および垂直方向にそれぞれ沿った辺によって直角に 形成されることによって、斜め方向に対して直角になっている各コーナー部分が、横 線および縦線におけるそれぞれの端点のコーナー部よりも強調されて表示されること になり、文字を構成するストローク (線分)の傾き角度によっては、表示される文字の 書体が横線および縦線の場合と比較して大きく変化していると認識されるおそれがあ る。
[0008] さらに、前記特許文献 1に開示されている従来技術では、ストロークの傾き角度の大 きさにかかわらず、同一サイズの正方形が描画される力 表示される線幅の太さは傾 き角度によって変化するために、文字の線幅にばらつきが生じるという問題もある。
[0009] 本発明は、上記従来の問題を解決するものであり、その目的は、文字または図形を 構成する線分が斜め方向に傾 ヽて ヽる場合にも、横線および縦線と同様の書体で 表示されていると認識できるように、文字または図形を高品位に表示することが可能 な文字図形表示装置、文字図形表示方法、文字図形表示プログラムおよびその文 字図形表示プログラムが記録された記録媒体を提供することにある。
課題を解決するための手段
[0010] 本発明の文字図形表示装置は、文字または図形を表示画面に表示する文字図形 表示装置であって、表示されるべき文字または図形の骨格を表す骨格データを取得 する骨格データ取得手段であって、該骨格データは、該文字または該図形のスト口 ークを表すストロークデータを含み、該ストロークデータは、該ストロークに対応する複 数のサンプル点の座標データを含む、骨格データ取得手段と、該文字または該図形 を構成する線の太さと、該ストロークに対応する該複数のサンプル点のうち互いに隣 接する 2つのサンプル点の座標データとに基づいて、メインドットパターンの形状を決 定するメインドットパターン形状決定手段と、該決定された形状をそれぞれ有する複 数のメインドットパターンを互いに重複しな 、ように配置することによって、該文字また は該図形を表示するための表示データを生成する表示データ生成手段とを備えてい る。
[0011] 好ましくは、前記表示データ生成手段は、前記複数のメインドットパターンによって 形成される段差を埋めるように少なくとも 1つのサブドットパターンを配置することによ つて、前記表示データを生成する。
[0012] 好ましくは、前記メインドットパターン形状決定手段は、前記 2つのサンプル点を結 ぶ直線の傾きに応じて、前記メインドットパターンの形状を正方形および菱形の一方 に決定する。
[0013] 好ましくは、前記メインドットパターン形状決定手段は、前記 2つのサンプル点を結 ぶ直線が斜め線であるか否かを判定し、該 2つのサンプル点を結ぶ直線が斜め線で あると判定された場合には、前記メインドットパターンの形状を菱形に決定し、該 2つ のサンプル点を結ぶ直線が斜め線でな ヽと判定された場合には、前記メインドットパ ターンの形状を正方形に決定する。
[0014] 好ましくは、前記メインドットパターン形状決定手段は、前記 2つのサンプル点を結 ぶ直線の傾き 0力 0° ≤ 0 < 25° 、65° ≤ Θ < 113° 、 155° ≤ 0 < 205° 、 2 45° ≤ Θ < 295° または 335° ≤ 0 < 360° の場合には、該 2つのサンプル点を 結ぶ直線が斜め線でないと判定し、それ以外の場合には、該 2つのサンプル点を結 ぶ直線が斜め線であると判定する。
[0015] 好ましくは、前記メインドットパターン形状決定手段は、前記文字または前記図形を 構成する線の太さに応じて、前記メインドットパターンの各辺の画素数を決定する。
[0016] 好ましくは、前記文字または前記図形を構成する線の太さは、該文字または該図形 のサイズ、または、該文字または該図形を構成する線の本数に応じて設定される。
[0017] 好ましくは、前記表示データ生成手段は、前記表示画面がスクロール中である場合 、または、ストロークの傾きが所定の方向に近い場合には、前記サブドットパターンを 配置しない。 [0018] 好ましくは、前記メインドットパターン形状決定手段が、前記メインドットパターンの 形状を正方形に決定した場合において、前記表示データ生成手段は、前記 2つのサ ンプル点のうちの一方のサンプル点に対応する前記表示画面における画素を中心と して、各辺が所定の画素数の正方形のメインドットパターンを配置し、前記表示画面 にお 、て前記 2つのサンプル点を結ぶ直線に対応する画素上で、該配置されたメイ ンドットパターンの中心画素から X座標値または Y座標値の差が該所定の画素数で ある画素を中心として、各辺が該所定の画素数の正方形のメインドットパターンを配 置することによって、前記表示データを生成する。
[0019] 好ましくは、前記表示データ生成手段は、互いに隣接して配置された 2つのメインド ットパターンの左右にそれぞれ段差部が形成されている場合には、該 2つのメインドッ トパターンのそれぞれの中心画素の Y座標の差を ΔΥとして、互いに直交する 2辺の 長さが I ΔΥ | — 1である直角二等辺三角形に含まれる全ての画素をサブドットパタ ーンとして設定し、前記表示データ生成手段は、互いに隣接して配置された 2つのメ インドットパターンの上下にそれぞれ段差部が形成されている場合には、該 2つのメ インドットパターンのそれぞれの中心画素の X座標の差を ΔΧとして、互いに直交す る 2辺の長さが I ΔΧ | — 1である直角二等辺三角形に含まれる全ての画素をサブド ットパターンとして設定する。
[0020] 好ましくは、前記メインドットパターン形状決定手段が、前記メインドットパターンの 形状を菱形に決定した場合において、前記表示データ生成手段は、前記文字また は前記図形を構成する線の太さを Wとして、画素数 Wに(2) 1/2を乗じた値に最も近 い奇数を画素数 W'として求め、 2本の対角線の長さがそれぞれ前記画素数 W'であ る菱形形状のメインドットパターンを配置することによって、前記表示データを生成す る。
[0021] 好ましくは、前記表示データ生成手段は、前記表示画面において前記 2つのサン プル点を結ぶ直線に対応する画素上で、前記配置されたメインドットパターンの中心 画素との X座標値の差の絶対値と Υ座標値の差の絶対値との和が前記画素数 W'以 上となる画素を中心として、前記菱形形状のメインドットパターンを配置する。
[0022] 好ましくは、前記表示データ生成手段は、互いに隣接して配置された 2つのメインド ットパターンの対応する辺に沿って、該 2つのメインドットパターンが互いにずれること により段差が形成されている場合には、該 2つのメインドットパターンの対応する辺に おける両側において最も外側に位置する各端部の画素の X座標値を、それぞれ、 X 1および X2 (但し XIく X2)として、 X座標値が XI以上 X2以下の範囲で、それぞれ の段差部内に位置する全ての画素をサブドットパターンとして設定する。
[0023] 好ましくは、前記表示データ生成手段は、前記ストロークの終点が他のストロークの 始点と重なる場合には、該ストロークの終点および該他のストロークの始点の位置に 合成パターンを配置することによって、前記表示データを生成し、該合成パターンは 、該ストロークの終点に配置されるべきメインドットパターンと該他のストロークの始点 に配置されるべきメインドットパターンとをあら力じめ合成したものである。
[0024] 本発明の文字図形表示方法は、文字または図形を表示画面に表示する表示する 文字図形表示方法であって、表示されるべき文字または図形の骨格を表す骨格デ ータを取得するステップであって、該骨格データは、該文字または該図形のストロー クを表すストロークデータを含み、該ストロークデータは、該ストロークに対応する複数 のサンプル点の座標データを含む、ステップと、該文字または該図形を構成する線 の太さと、該ストロークに対応する該複数のサンプル点のうち互いに隣接する 2つの サンプル点の座標データとに基づ 、て、メインドットパターンの形状を決定するステツ プと、該決定された形状をそれぞれ有する複数のメインドットパターンを互いに重複し ないように配置することによって、該文字または該図形を表示するための表示データ を生成するステップとを包含する。
[0025] また、本発明は、前記文字図形表示方法の各ステップをコンピュータによって実行 させるための文字図形表示プログラムである。
[0026] また、本発明は、前記文字図形表示プログラムが記録されたコンピュータ読み取り 可能な記録媒体である。
発明の効果
[0027] 本発明によれば、文字または図形を構成する線の太さに応じてストローク上にメイン ドットパターンを配置するとともに、各メインドットパターンの間にメインドットパターンの 位置関係に基づいて形状が決定されるサブドットパターンを配置することによって、 任意の太さのストロークを、ストロークの傾きに適した太さおよび端点を有するように表 示することができ、文字の視認性を向上させることが可能となる。さらに、メインドットパ ターンおよびサブドットパターンを互いに重ならないように配置することによって、冗 長な処理を回避して、高速に文字表示を行うことが可能となる。さらに、画面スクロー ル中には、サブドットパターンを配置せず、メインドットパターンによって文字のおおま 力な形状のみを設定することにより、高速に文字表示を行うことが可能となる。
[0028] 従って、本発明によれば、携帯電話機などのように、処理速度が低!、機器に文字 表示装置が搭載される場合でも、負荷を低くして、高速に、高品位な文字表示を行う ことが可能となる。
図面の簡単な説明
[0029] [図 1]図 1は、本発明の実施形態に係る文字表示装置の構成を示すブロック図である
[図 2]図 2は、図 1の文字表示装置における骨格データの構造例を示す図である。
[図 3]図 3は、漢字「木」の骨格形状を表す骨格データの一例を示す図である。
[図 4]図 4は、図 3の漢字「木」の骨格データの骨格を座標平面上に表示した例を示 す図である。
[図 5]図 5は、本発明の実施形態に係る文字表示プログラムによる処理手順について 説明するためのフローチャートである。
[図 6]図 6は、図 5のステップ S1050の処理手順について説明するためのフローチヤ ートである。
[図 7]図 7は、ストロークデータの一例を示す図である。
[図 8]図 8は、図 7の骨格データ構造におけるストローク Aから、実ピクセル座標系に おける表示データ (画素データ)を生成処理する場合の説明図である。
[図 9]図 9は、図 7の骨格データ構造におけるストローク Bから、実ピクセル座標系にお ける表示データを生成処理する場合の説明図である。
[図 10]図 10は、図 10は、図 7の骨格データ構造におけるストロークじから、実ピクセ ル座標系における表示データを生成処理する場合の説明図である。
[図 11]図 11は、図 6のステップ S2030の処理手順について説明するためのフローチ ヤートである。
[図 12]図 12は、図 7および図 8に示されるストローク Aを、表示太さを示すドット数 Wが 「9」の場合にぉ 、て、ストローク Aの始点 Psと終点 Peとを結ぶ直線 (ストローク)上に 位置するサンプル点力も最初に選択された座標位置 P2の画素と、始点 Psに対応す る画素とをそれぞれ中心として、一辺が 9ドットの正方形のメインドットパターンによつ て表示した状態を示す図である。
[図 13]図 13は、図 7のストローク Aを、 9ドットの表示太さで表示する場合に生成される 表示データに基づ 、て表示デバイス 2を制御して得られる表示状態を示す図である
[図 14]図 14は、図 6のステップ S2040の処理手順について説明するためのフローチ ヤートである。
[図 15]図 15は、図 7のストローク Bを、太さ Wを 9ドットとして処理する場合における、 座標データ 1のサンプル点 (始点 Ps)に対応する座標位置を中心として設定された菱 形形状のメインドットパターンをそれぞれ示す図である。
[図 16]図 16は、図 7のストローク Cを、太さ Wを 9ドットとして処理する場合における、 座標データ 1のサンプル点 (始点 Ps)に対応する座標位置を中心として設定された菱 形形状のメインドットパターンをそれぞれ示す図である。
[図 17]図 17は、図 7に示されたストローク Bを、 9ドットの表示太さで表示する場合に生 成される表示データに基づいて表示デバイス 2を制御して得られる表示状態をそれ ぞれ示す図である。
[図 18]図 18は、図 7に示されたストローク Cを、 9ドットの表示太さで表示する場合に 生成される表示データに基づいて表示デバイス 2を制御して得られる表示状態をそ れぞれ示す図である。
[図 19]図 19は、 2本のストローク A、 Cによる折れ線を描画する様子を表す図である。
[図 20]図 20は、正方形と菱形とを合成したパターンを表す図である。
[図 21]図 21は、図 11におけるステップ S3010の描画処理の詳細を説明する図であ る。
[図 22]図 22は、図 11におけるステップ S3110の描画処理の詳細を説明する図であ る。
[図 23]図 23は、図 14におけるステップ S4020の描画処理の詳細を説明する図であ る。
[図 24]図 24は、図 14におけるステップ S4110の描画処理の詳細を説明する図であ る。
符号の説明
[0030] 1 文字表示装置
2 表示デバイス
3 制御部
4 CPU
5 主メモリ
6 入力デバイス
7 補助記憶装置
8 文字表示プログラム
9 骨格データ
発明を実施するための最良の形態
[0031] 以下に、本発明の実施形態について、図面を参照しながら説明する。以下の説明 では、本発明の実施形態として文字表示装置を例示して説明するが、これは、本発 明が、文字のみを表示することが可能な文字表示装置に限定されることを意図したも のではない。文字および図形は同様に扱えることが自明であることから、文字または 図形 (すなわち、文字のみ、または、図形のみ、または、文字および図形の両方)を表 示することが可能な文字図形表示装置に本発明を適用することができることもまた自 明である。このような文字図形表示装置もまた本発明の範囲内である。
[0032] 図 1は、本発明の文字表示装置の実施形態の一例の構成を示すブロック図である 。この文字表示装置 1は、例えば、パーソナルコンピュータであり、文字等の所定の 画像がカラー表示可能な表示画面を有する表示デバイス 2と、表示デバイス 2の表示 画面に文字等の所定の画像が表示されるように表示デバイス 2を制御する制御部 3と を備えている。制御部 3は、 CPU4と主メモリ 5とを有しており、主メモリ 5に、表示デバ イス 2と、入力デバイス 6と、補助記憶装置 7とがそれぞれ接続されている。
[0033] 表示デバイス 2の表示画面は、複数の正方形の画素(ピクセル)がマトリクス状に設 けられており、制御部 3が、各画素の輝度値をそれぞれ独立して制御することによつ て、表示画面に文字等が表示される。
[0034] なお、表示デバイス 2が一般的なカラー液晶表示デバイスである場合、 1つの画素 に対して、赤色、青色および緑色にそれぞれ発光する 3つのサブピクセルが割り当て られる。そして、各サブピクセルの明るさの度合いを表す輝度値を、制御部 3によって 制御することにより、各画素のそれぞれの色が制御され、文字等がカラー表示される
[0035] 補助記憶装置 7には、制御部 3によって表示デバイス 2に文字の表示動作を実行さ せる文字表示プログラム 8と、表示デバイス 2に表示される全ての文字に対して、それ ぞれの骨格形状を定義する骨格データとが記憶されている。骨格データとは、文字 の骨格 (芯)形状を構成する全ての線分 (ストローク)に関するデータであり、表示デ バイス 2ぉ 、て表示可能な全ての文字につ!、て、各文字毎にそれぞれの骨格データ が設定されている。
[0036] 制御部 3に設けられた CPU4は、文字表示装置 1の全体を監視して制御するととも に、補助記憶装置 7に格納された文字表示プログラム 8を、主メモリ 5に格納して、そ の文字表示プログラム 8を実行することによって、表示デバイス 2の表示画面に、画像 としての文字を表示する。
[0037] 制御部 3に設けられた主メモリ 5は、入力デバイス 6から入力されるデータ、表示デ バイス 2に文字を表示するための骨格データ、文字表示プログラム 8を実行するため に必要な文字表示プログラム等を一時的に格納する。主メモリ 5は、 CPU4によって アクセスされる。
[0038] CPU4は、補助記憶装置 7に格納された文字表示プログラム 8を主メモリ 5に格納し て、入力デバイス 6から入力される文字情報に基づいて、主メモリ 5に格納された文字 表示プログラム 8を実行することにより、文字パターン (画素データ)を生成する。生成 される文字パターンは、入力デバイス 6から入力された文字情報に基づいて、表示デ バイス 2の表示画面上に設けられた所定個数の画素のそれぞれに対して輝度値を設 定したものである。生成された文字パターンは、主メモリ 5にー且格納された後、表示 デバイス 2に出力される。文字パターンが表示デバイス 2に出力されるタイミングは、 C PU4によって制御される。
[0039] 入力デバイス 6にて入力される文字情報には、例えば、文字を識別する文字コード 、文字の大きさを示す文字サイズ等が含まれる。入力デバイス 6としては、文字コード 、文字の大きさ等を入力することが可能な任意のタイプの入力デバイスを使用するこ とができる。例えば、キーボード、マウス、ペン入力装置等が、入力デバイス 6として好 適に使用される。
[0040] 補助記憶装置 7としては、文字表示プログラム 8および骨格データ 9を格納すること が可能な任意のタイプの記憶装置を使用することができ、例えば、制御装置 3に対し て着脱可能になった記録媒体が補助記憶装置 7として使用することができる。このよう な記録媒体としては、ハードディスク、 CD-ROM, MO、フロッピー(登録商標)ディ スク、 MD、 DVD, ICカード、光カード等が挙げられる。
[0041] なお、文字表示プログラム 8および骨格データ 9は、補助記憶装置 7に格納されるこ とに限定されない。例えば、文字表示プログラム 8および骨格データ 9は、主メモリ 5に 格納されてもよぐまた、 ROM (図示せず)に格納されてもよい。 ROMは、例えば、マ スク ROM、 EPROM、 EEPROM、フラッシュ ROMなどであってもよい。 ROM方式 の場合には、その ROMを交換するだけで、各種処理のノリエーシヨンを容易に実現 することができる。従って、 ROM方式は、携帯型の端末装置や携帯電話機などに対 して好適に適用することができる。
[0042] さらに、文字表示プログラム 8および骨格データ 9を格納する記録媒体は、上記ディ スク、カード等の記憶装置、半導体メモリ等のように、プログラムあるいはデータを固 定的に担持する媒体以外に、通信ネットワークにおいてプログラムあるいはデータを 通信するために使用される通信媒体のように、プログラムあるいはデータを流動的に 担持する媒体であってもよ ヽ。
[0043] 文字表示装置 1がインターネットを含む通信回線に接続するための手段を備えてい る場合には、その通信回線力 文字表示プログラム 8および骨格データ 9をダウン口 ードすることができる。この場合、ダウンロードに必要なローダープログラムは、 ROM (図示せず)に予め格納されていてもよぐまた、補助記憶装置 7から制御部 3にイン ストールされてもよい。
[0044] このような文字表示装置 1としては、例えばパーソナルコンピュータが挙げられる。
パーソナルコンピュータの場合には、デスクトップ型、ラップトップ型のいずれであつ てもよい。なお、本発明の文字表示装置としては、パーソナルコンピュータに限らず、 カラー表示あるいはモノクロ表示が可能な表示デバイスを有する電子機器、情報機 器であってもよい。例えば、文字表示装置 1は、カラー液晶表示デバイスを備えたヮ ードプロセッサ等の電子機器、携帯情報ツールである携帯情報端末、 PHS等の携帯 電話機、一般の電話機、 FAX等の通信機器であってもよい。
[0045] 図 2は、図 1に示す補助記憶装置 7に格納されている 1つの文字に対する骨格デー タのデータ構造の一例を示している。図 2に示す骨格データ構造は、文字を特定す るための文字コードと、その文字コードにて特定された 1つの文字の骨格を構成する 全てのストロークの総数 M (Mは 1以上の整数)を示すストローク総数と、それぞれの ストロークを特定するために必要な情報であるストロークデータとによって構成されて いる。文字コードにて特定される文字の骨格データ (スケルトンデータ)は、予め定義 されて補助記憶装置 7に格納されて ヽる。
[0046] ストロークデータは、各ストロークを、所定の大きさを有する骨格座標平面上、例え ば、座標点の個数が 256 X 256の X—Y座標平面にて構成された骨格座標平面上 において、各ストロークを特定するために必要な複数のサンプル点の座標データで あり、 1つの文字の骨格を形成する全てのストロークのそれぞれに対して、前記座標 平面上において 1つのストロークを特定するために必要とされるサンプル点の総数 N (Nは 1以上の整数)と、 N個のサンプル点それぞれの座標値である座標データとによ つて構成されている。
[0047] サンプル点の総数 Nは、文字を構成するストロークの種類によって異なり、例えば、 文字を構成する縦線および横線のような直線のストロークの場合、それぞれのスト口 一クの始点および終点の 2個のサンプル点が設定される。また、文字を構成する曲線 のストロークでは、曲線が特定されるように、曲線の状態に応じて、始点および終点と 、それらの間に位置する 1個以上の座標点がサンプル点として設定される。従って、 1 つのストロークは、ストロークデータとして記録されて 、る N個の座標データにてそれ ぞれ示される各サンプル点を直線で結ぶことによって前記骨格座標平面上において 特定される。この骨格座標平面は、通常の X—Y座標と同様に、左下の座標を原点( 0, 0)とし、上方向を Y座標の正方向、右方向を X座標の正方向に定義している。
[0048] このように、 1つの骨格データには、 M個のストロークデータ 13が含まれ、 M個のス トロークのそれぞれに対して N個のサンプル点の座標データがそれぞれ設定されて いる。
[0049] 図 3は、漢字「木」の骨格データ構造を示しており、図 4は、その骨格データ (スケル トンデータ)によって骨格座標平面にて示される骨格形状を示して 、る。
[0050] 図 3において、漢字「木」の骨格データ 9には、漢字「木」を指定するための文字コー ドカ S「4458」(JIS区点コード、 44区 58点)であること、ストローク数が「4」であることが 示されている。そして、 4個のストローク # 1〜# 4のそれぞれに対して、それぞれ所 定の個数のサンプル点のストロークデータが設定されている。ストローク # 1は、漢字 「木」を構成する横線のストローク、ストローク # 2は、漢字「木」を構成する縦線のスト ローク、ストローク # 3および # 4は、漢字「木」を構成する左右の各斜め線(曲線)の それぞれのストロークである。
[0051] ストローク # 1は、直線 (横線)であるので、ストロークデータとしては、始点と終点の 2個のサンプル点の座標データ力 その順番で格納されており、サンプル点の個数 N として「2」が設定され、サンプル点として、始点および終点の座標データ 1および 2と して (4, 192)、 (245, 192)がそれぞれ設定されている。ストローク # 2は、直線 (縦 線)であるので、ストロークデータとしては、始点と終点の 2個のサンプル点の座標デ ータがその順番で格納されており、サンプル点の数 Nとして「2」が設定され、始点とし ての座標データ 1 (128, 255)および終点としての座標データ 2 (128, 0)がそれぞ れ設定されている。
[0052] ストローク # 3は、左側の斜線であり、緩やかな曲線になっているので、ストロークデ ータとしては、始点と終点の 2個のサンプル点以外に 3個のサンプル点の座標データ が格納されており、サンプル点の数 Nとして「5」が設定され、 5個のサンプル点の座 標データとして、座標データ 1 (121, 192)、座標データ 2 (97, 141)、座標データ 3 (72, 103)、座標データ 4 (41, 69)、座標データ 5 (4, 42)力 始点から終点にかけ て順番に設定されている。ストローク # 4は、右側の斜線であり、緩やかな曲線になつ ているので、ストロークデータとしては、始点と終点の 2個のサンプル点以外に 3個の サンプル点が格納されており、サンプル点の数 Nとして「5」が設定され、 5個のサンプ ル点の各座標データとして、座標データ 1 (135, 192)、座標データ 2 (156, 146)、 座標データ 3 (182, 107)、座標データ 4 (213, 72)、座標データ 5 (251, 42)が、 始点から終点にかけて順番に設定されている。
[0053] 図 4は、図 3に示す漢字「木」の骨格形状を表す全てのストロークを、骨格座標平面 上に表示したものである。
[0054] 図 4において、ストローク # 1は、始点(0, 192)と終点(255, 192)とを結ぶ直線と して示され、ストローク # 2は、始点(128, 255)と終点(128, 0)とを結ぶ直線として 示される。ストローク # 3は、 5個のサンプノレ点(121, 192)、 (97, 141)、 (72, 103) 、 (41, 69)および (4, 42)を順番に直線で結んだものとして示される。ストローク # 4 は、 5個のサンプル点(135, 192)、 (156, 146)、 (182, 107)、 (213, 72)および (251, 42)を順番に直線で結んだものとして示される。
[0055] 図 5は、 CPU4によって実行される、文字表示プログラム 8による処理手順を説明す るためのフローチャートである。以下に、文字表示プログラム 8の具体的な処理手順 を、各処理毎に詳細に説明する。
[0056] まず、入力デバイス 6から文字コードおよび文字サイズ (フォントサイズ)力もなる文 字情報が入力されると、 CPU4は、入力された文字情報を取得する(図 5のステップ S 1000参照、以下同様)。例えば、漢字「木」を、表示デバイス 2の表示画面に表示さ せる場合には、入力デバイス 6から文字情報として、文字コードとして 4458番 CFIS区 点コード、 44区 58点)が入力される。文字サイズは、実ピクセル座標系に表示される 文字の全体の幅および高さのサイズが、それぞれ画素数として入力される。
[0057] ステップ S1000にて入力された文字情報が取得されると、入力された文字コードに 対応する 1文字分の骨格データ 9が、補助記憶装置 7から読み出されて主メモリ 5に 格納される (ステップ S1010)。漢字「木」の場合には、図 3に示す漢字「木」の骨格デ ータ 9が読み出される。 [0058] ステップ S1010にて骨格データ 9が読み出されると、骨格データ 9に設定された各 ストローク毎に、全てのサンプル点がスケーリングされる(ステップ S1020)。スケーリ ングとは、ある大きさを有する座標平面上の座標を、異なる大きさの座標平面上の座 標にマッピングする演算処理のことであり、本発明では、骨格座標平面における各ス トロークの全てのサンプル点の座標データを、表示デバイス 2の表示画面における実 ピクセル座標系の座標データに変換する演算処理である。実ピクセル座標系は、そ れぞれが正方形になった各画素がマトリクス状に配置された表示画面における各画 素を、 X—Y座標における座標点の座標データとして示しており、骨格座標平面と同 様に、 1つの文字に対して、左下の画素を原点(0, 0)とし、上方向を Y座標の正方向 、右方向を X座標の正方向として定義している。実ピクセル座標系の座標点は、正方 形の各画素にそれぞれ対応しており、正方形の各画素によって、表示画面における 1ドットがそれぞれ構成されている。
[0059] なお、以下の説明にお 、ては、簡単のために、骨格座標平面の座標と、実ピクセル 座標系の座標とがー致しているものとして説明する。
[0060] ステップ S1020でのスケーリングが終了すると、入力された文字サイズに従って、骨 格データに設定された各ストロークの表示太さ(線幅) Wがそれぞれ設定される (ステ ップ S 1030)。この処理の詳細については、後述する。
[0061] ステップ S1030にて各ストロークの表示太さ Wがそれぞれ決定されると、補助記憶 装置 7から読み出された骨格データ構造に設定された最初のストロークのストローク データが取り出される(ステップ S 1040)。
[0062] ステップ S1040にて、骨格データ構造力も最初のストロークデータ 13が取り出され ると、取り出された 1つのストロークのストロークデータに基づいて、実ピクセル座標系 にお!/、てそのストロークを、設定された表示太さ Wとして表示するために必要な表示 データを生成する(ステップ S1050)。この処理の詳細については、後述する。
[0063] ステップ S1050にて、最初のストロークの表示データが生成されると、骨格データ 構造に含まれる全てのストロークについて、ステップ S 1040〜ステップ S 1050の処理 が完了しているかが判定される(ステップ S1060)。全てのストロークに対して表示デ ータが生成されていない場合 (判定結果力 ^偽 (N)」の場合)には、ステップ S1040 に戻って、骨格データ構造において、すでに表示データが生成されているストローク
(最初のストローク)の次のストローク(2番目のストローク)につ 、て、同様の処理が実 施され、太さ Wの表示データ(画素データ)が生成される。このようにして、全てのスト ロークに対する処理が完了し、全てのストロークに対する表示データが生成されて ヽ る場合 (判定結果が「真 (Y)」の場合)には、文字表示処理が完了し、生成された表 示データが、表示デバイス 2に供給されて、表示デバイス 2において、設定された太さ Wの線幅で、文字が表示される。
[0064] 次に、図 5に示す文字表示プログラム 8の処理手順におけるステップ S1030の表示 太さの設定処理の詳細について説明する。
[0065] ストロークの表示太さ Wは、表示画面に表示される文字のサイズが大きくなるにつ れて太くなるように設定される。この場合、例えば、表示画面における実ピクセル座標 系に表示される文字サイズの幅および高さの 、ずれかが 40ドット(画素)を超えな ヽ 場合には、表示太さ Wとして 1ドットが設定される。これにより、実ピクセル座標系にお ける正方形の各画素(1ドット)を線幅として表示デバイス 2の表示画面に文字が表示 される。
[0066] 表示される文字の全体幅および高さのサイズ力 ともに 40ドットを超える力 いずれ か一方が 80ドットを超えない場合には、表示太さ Wとして 3ドット(画素)が設定され、 設定されたドット数を一辺とする 1つの正方形(3ドット X 3ドット)または菱形を、 1つの メインドットパターンとして、そのメインドットパターンを線幅として文字を表示するため の画素が設定される。以下同様に、表示される文字の全体幅および全体高さのサイ ズカ ともに 80ドットを超える力 いずれか一方が 128ドットを超えない場合には、表 示太さ Wとして 5ドット(画素)が設定され、一辺が 5ドットの正方形または菱形を 1つの メインドットパターンに設定する。表示される文字の全体幅および高さのサイズ力 と もに 128ドットを超える力 いずれか一方が 192ドットを超えない場合には、表示太さ Wとして 7ドット (画素)が設定されて、一辺が 7ドットの正方形または菱形を 1つのメイ ンドットパターンに設定する。表示される文字の全体幅および高さのサイズ力 ともに 192ドットを超える場合には、表示太さ Wとして 9ドットが設定されて、一辺が 9ドットの 正方形または菱形を 1つのメインドットパターンに設定する。 [0067] なお、上述のストロークの表示太さ Wの設定方法は、表示される文字のサイズが大 きくなるにつれて表示文字の線幅を太くすることにより、表示される文字サイズに適し た文字の表示を得るようにした一例を示している力 文字のサイズにかかわらずに、 表示太さ Wを一定に設定しても良い。また、文字の画数に応じて表示太さ Wを小さく 設定してちょい。
[0068] 次に、図 5の文字表示プログラム 8による処理手順における各ストロークに対する表 示データの生成処理 (ステップ S 1050)の詳細を、図 6に基づいて説明する。図 6は、 図 5に示すストロークの表示データ生成処理 (ステップ S1050)のサブルーチンを示 すフローチャート、図 7は、図 6に示すストロークの表示データ生成処理が実施される 文字のストロークデータの一例を示す表である。
[0069] まず、表示される文字の全てのストロークのストロークデータ 13を、骨格データ構造 力も取得する(ステップ S2010)。この場合、各ストローク毎に、ストロークデータとして 順番に記録されている最初の 2つのサンプル点の座標データ 1および 2番目の座標 データ 2がそれぞれ取得される。
[0070] 例えば、図 7に示すストローク Aのストロークデータは、サンプル点の数が 2個である ので、ストローク Aは直線であり、ストローク Aの始点を示す座標データ 1 (27, 0)と、 終点を示す座標データ 2 (0, 9)とが取り出される。ストローク Bも、同様に、サンプル 点の数が 2個であるので、直線の始点を示す座標データ 1 (12, 0)と終点を示す座 標データ 2 (0, 27)とが取り出される。さらに、ストローク Cも、同様にサンプル点の数 が 2個であるので直線であり、直線の始点を示す座標データ 1 (15, 0)と終点を示す 座標データ 2 (0, 27)とが取り出される。
[0071] なお、図 8は、図 7の骨格データ構造におけるストローク Aから、実ピクセル座標系 における表示データ(画素データ)を生成処理する場合の説明図、図 9は、図 7の骨 格データ構造におけるストローク Bから、実ピクセル座標系における表示データを生 成処理する場合の説明図、図 10は、図 7の骨格データ構造におけるストロークじから 、実ピクセル座標系における表示データを生成処理する場合の説明図である。
[0072] ステップ S2010において、骨格データ 9におけるストロークに対して、 2つのサンプ ル点の座標データが取り出されると、取り出された 2つのサンプル点を結ぶ直線が斜 め線であるかの判定が実施される(ステップ S2020)。
[0073] 具体的には、骨格座標平面において、座標データ 1および 2にて示されるサンプル 点同士を結ぶ直線について、 X軸の正方向に対する傾きを Θとして、 0≤ Θく 25° 、 65° ≤ 0 < 113° 、 155° ≤ 0 < 205° 、 245° ≤ 0 < 295° または 335° ≤ Θ < 360° である場合には、斜め線ではな!/、(縦線または横線)と判定し、それ以外 の場合には斜め線であると判定する。
[0074] このステップ S2020において、座標データ 1および座標データ 2にてそれぞれ示さ れるサンプル点を結ぶ直線が斜め線として判定された場合には、ステップ S2040に て、メインドットパターンを菱形に設定して表示データが生成され、斜め線でなく縦線 または横線と判定された場合には、ステップ S2030にて、メインドットパターンを正方 形に設定して表示データが生成される。
[0075] 図 7に示すストロークデータでは、ストローク Aは、図 8に示すように、 X軸の正方向 に対する傾き Θ力 6° となるため斜め線ではないと判定され、ステップ S2030 にて、メインドットパターンを正方形に設定して表示データが生成される。ストローク B は、図 9に示すように、 X軸の正方向に対する傾き Θが 114. 0° となるため、斜め線 であると判定され、ステップ S2040にてメインドットパターンを菱形に設定して表示デ ータが生成される。ストローク Cでは、図 10に示すように、 X軸の正方向に対する傾き 0力 19. 1° となるため、斜め線であると判定され、ステップ S2040にてメインドット ノ ターンを菱形に設定して表示データが生成される。
[0076] ステップ S2020において、ストロークが斜め線でないと判定されると、図 5のステップ S 1030にて決定された表示太さ Wとなるように、一辺が所定のドット数の正方形のメ インドットパターンによって、ステップ S2020で取得された座標データ 1および座標デ ータ 2のサンプル点を結ぶ直線の表示データが生成される(ステップ S2030)。この 処理の詳細については後述する。なお、正方形のメインドットパターンの代わりに、矩 形のメインドットパターンを用いてもよ 、。
[0077] これに対して、ステップ S 2020において、ストロークが斜め線と判定されると、図 5の ステップ S1030にて決定された表示太さ Wとなるように、一辺が所定のドット数の菱 形のメインドットパターンによって、ステップ S2020で取得された 2つの座標データ 1 および座標データ 2のサンプル点を結ぶ直線の表示データが生成される(ステップ S 2040)。この処理の詳細についても後述する。
[0078] ステップ S2030またはステップ S2040において、各ストロークにおける最初と 2番目 のサンプル点の座標データを結ぶ直線の表示太さ Wに関する表示データが得られ ると、各ストロークにおいて、ストロークデータとして 3番目のサンプル点の座標データ 3が存在するかを確認し、座標データ 3が存在する場合には、ステップ S2010〜ステ ップ S2030またはステップ S2040までの処理が繰り返されて、座標データ 2と座標デ ータ 3との点を結ぶ直線の表示データを生成する (ステップ S 2050)。そして、 1つの ストロークについて、骨格データ構造に含まれるサンプル点を順番に結んだ直線に ついて表示データが生成されると、図 5のフローチャートにおけるステップ S1050の ストロークの表示データ生成処理が終了する。
[0079] 図 11は、図 6に示すステップ S2020において、斜め線でないと判定されることによ つてステップ S2030にて実施される正方形のメインドットパターンの表示データの生 成処理手順を示すフローチャートである。以下に、この図 11と、図 7のストローク Aに 対する説明図である図 8に基づいて、正方形のメインドットパターンによる表示データ 生成処理の手順につ!、て説明する。
[0080] 図 8では、図 7に示すストローク Aに対して、表示太さ W= 9として、実ピクセル座標 系にお 、て、一辺が 9ドット(画素)の正方形をメインドットパターンとして設定するよう になっている。
[0081] 図 6に示すステップ S2020において、ストロークが斜め線でないと判定された場合 には、ステップ S2010にて取得された 2つのサンプル点の座標データから、最初に 取得された座標データ 1に対応するストローク Aの始点 Psを中心点 Fとして、図 5のス テツプ 1030で設定された表示太さ Wに対応する一辺が Wドットの正方形のメインドッ トパターンを構成する画素を設定する。そして、この始点 Psを、点 Gに設定する (ステ ップ S 3010)。
[0082] 次に、ブレゼンノヽムのアルゴリズムによって、点 Gに対して終点 Pe側に隣接するスト ローク A上の画素の座標を求めて新たな点 Gに設定する (ステップ S3020)。その後 、ストロークの始点 Psと終点 Peとを結ぶ直線が縦線であるかを判定する (ステップ S3 030)。この場合、ストローク Aに対応する直線と X軸となす角 Θ 1S 45° ≤ θ < 135 ° または 225° ≤ Θ < 315° を満たす場合には縦線と判定する。なお、ストローク A に対応する直線と X軸となす角 Θが上記範囲に無い場合には、横線と判定される。
[0083] 始点 Psと終点 Peとを結ぶストロークの直線が縦線であると判定された場合には、ス テツプ S3070に進み、縦線ではないと判定された場合には、ステップ S3040に進む
[0084] 図 8に示す場合には、ストロークの始点 Psと終点 Peとを結ぶ直線の X軸の正方向に 対する傾き Θは、前述したように、 Θ = 114. 0° になっているために、縦線ではなく 横線であると判定され、ステップ S3040の処理が実行される。
[0085] ステップ S3040においては、新たに設定された点 Gに対応する実ピクセル座標系 の X座標値と、中心点 Fに対応する実ピクセル座標系の X座標値との差の絶対値 I ΔΧ I力 表示太さ Wを示すドット数(=W)と一致するかを判定する。そして、絶対値 I ΔΧ Iカ^ット数 Wと一致する場合( I ΔΧ I =W)には、ステップ S3050に進む。
[0086] 図 8において、 W= 9であり、点 Gは、点 Fに隣接していることから、 | ΔΧ | = 1で あるために、ステップ S3100に進む。そして、ステップ S3100において、点 Gが、スト ロークの終点 Peに対応していないことを確認し、ステップ S3020に戻って、点 Gに対 して終点 Pe側に隣接するストローク A上の画素の座標を求め、新たな点 Gとする。そ して、ストロークの始点 Psと終点 Peとを結ぶ直線が縦線であるかを確認し (ステップ S 3030)、新たに設定された点 Gに対応する実ピクセル座標系の X座標値と、中心点 F に対応する実ピクセル座標系の X座標値との差の絶対値 I ΔΧ I力 表示太さ Wを 示すドット数(=W)と一致するかを判定する (ステップ S3040)。以後、ステップ S304 0において I ΔΧ I =Wでない場合には、 I ΔΧ I =Wになるまで、ステップ S3100 〜ステップ S3020〜S3030〜ステップ S3040の処理を繰り返す。
[0087] 図 8に、ストローク Aの始点 Psに対して、ブレゼンハムのアルゴリズムによって順次 求められる画素の点 Gを、「X」印で示す。
[0088] なお、ステップ S3100において、点 Gが、ストロークの終点 Peに対応している場合 には、ステップ S3110に進み、点 Gを中心とした一辺のドット数が Wの正方形のメイン ドットパターンを構成する画素を設定して、図 6のステップ S2050に進む。 [0089] ステップ S3040において、 I ΔΧ I =Wになると、ステップ S3050に進み、設定さ れた点 Gを中心として一辺のドット数が Wの正方形のメインドットパターンを構成する 画素が設定される。このとき、ステップ S3040〖こおいて、点 Gに対応する画素の X座 標値と、中心点 Fに対応する画素の X座標値との差の絶対値がストロークの表示太さ を示すドット数 Wと一致することが確認されているために、点 Gを中心として設定され るメインドットパターンと、中心点 Fを中心とするメインドットパターンとは重なることなく 、 X方向に相互に接した状態になる。そして、メインドットパターンの中心になった点 G を、新たな中心点 Fとする。
[0090] 図 12は、図 7および図 8に示されるストローク Aの始点 Psを中心点 Fとして、表示太 さを示すドット数 Wが「9」の場合に設定される正方形のメインドットパターン 21と、そ のメインドットパターンに隣接して設定された正方形のメインドットパターン 22とを示し ている。ストローク Aの始点 Psを中心点 Fとして設定されるメインドットパターン 21は白 抜きで示しており、そのメインドットパターン 21に接して設定されるメインドットパターン 22は黒ベタで示している。
[0091] このように、ステップ S3050にお!/、て、一辺が表示太さ Wを示すドット数に等 U、正 方形のメインドットパターン 21および 22が相互に隣接して設定されると、ステップ S3 060において、各メインドットパターン 21および 22の中心である点 Fおよび点 Gの Y 座標の差の絶対値 I ΔΥ Iを計算する。そして、 1 < I ΔΥ Iの場合には、メインドッ トパターン 21および 22の Y軸方向のずれによって形成される各段差部において、各 メインドットパターン 21および 22にそれぞれ接するとともに、 X方向および Y方向にそ れぞれ相互に隣接して並んだ各「 I ΔΥ I— 1」個の画素のそれぞれの X方向およ ひ Ύ方向の長さを一辺とする二等辺三角形に含まれる全ての画素を、サブドットパタ ーンとして選択する。すなわち、その二等辺三角形の内部に画素の全てが含まれて いる画素のみならず、その二等辺三角形の内部に画素の一部が含まれている画素も サブドットパターンとして選択する。
[0092] 図 7のストローク Aを、 9ドットの表示太さで表示する図 12の場合は、ストローク Aの 始点 Psを中心点 Fとした 9ドット X 9ドットの正方形のメインドットパターン 21を構成す る 81個の画素の座標データと、このメインドットパターン 21に隣接する 9ドット X 9ドッ トの正方形のメインドットパターン 22を構成する 81個の画素の座標データと力 表示 データ(画素データ)として設定される。この場合、各メインドットパターン 21および 22 の Y軸方向の差の絶対値 I ΔΥ I は「3」になっていることから、メインドットパターン 2 1および 22の Y軸方向にずれて形成されるそれぞれの段差部において、各メインドッ トパターン 21および 22にそれぞれ接するとともに、 X方向および Y方向に相互に隣 接して並んだ 2個の画素のそれぞれの X方向および Y方向の長さを一辺とする二等 辺三角形に含まれる 3個の画素(図 12に網掛け模様にて示す)が、サブドットパター ン 23および 24としてそれぞれ設定される。
[0093] このようにしてサブドットパターンが設定されると、ステップ S3120において、点 Gが ストローク Aの終点 Peに対応して!/、な!/、かを確認し、ストロークの終点 Peに対応して いない場合には、ステップ S3020に戻り、以後、同様の処理を繰り返す。
[0094] 点 Gがストロークの終点 Peであることが確認されると、図 6のステップ S2050に進み 、 1つのストロークに含まれる全ての座標位置についての処理が終了したことを確認 する。そして、 1つのストロークに含まれる全ての座標位置についての処理が終了し ていることが確認されると、図 5のステップ S1050に進み、文字を構成する他のスト口 ークについても同様の処理が実施されて、文字を構成する全てのストロークについて の表示データが生成される。
[0095] なお、上記の説明では、ステップ S3030において、ストロークの始点 Psと終点 Peを 結ぶ直線が縦線でなく横線とみなされる場合の処理手順を説明した力 ステップ S3 030において、ストロークの始点 Psと終点 Peを結ぶ直線が縦線であると判定される場 合【こ ίま、ステップ S3070【こ進み、ステップ S3070【こお!/、て、ステップ S3020【こて求 められた隣接する座標位置の点 Gおよび中心点 Fの実ピクセル座標系における Υ座 標値の差の絶対値 I ΔΥ I力 表示太さ Wを示すドット数(=W)と一致するかを判 定する。絶対値 I ΔΥ Iカ^ット数 Wと一致する( I ΔΥ I =W)場合には、ステップ S3080に進み、点 Gを中心とした一辺のドット数 Wの正方形のメインドットパターンを 設定する。このとき、ステップ S3070において、点 Gおよび中心点 Fに対応する画素 の Y座標値の差の絶対値がストロークの表示太さを示すドット数 Wと一致することが 確認されているために、点 Gを中心として設定されるメインドットパターンは、中心点 F に対して設定されたメインドットパターンとは重なることなぐ Y方向に相互に接した状 態になる。
[0096] ステップ S3070において、絶対値 I ΔΥ |力ドット数 Wと一致しない場合には、ス テツプ S3100に進み、ステップ S3100にて点 Gが、ストロークの終点 Peでないことを 確認し、ステップ S3020に戻って、点 Gに隣接する画素の座標位置をブレゼンハム のアルゴリズムによって求めて点 Gとし、以後、ステップ S3030〜ステップ S3070の 処理を繰り返す。
[0097] このようにして、ステップ S3070にお!/、て、一辺が表示太さ Wを示すドット数に等し い正方形のメインドットパターンが設定されると、ステップ S3090において、点 Gと直 前の中心点 Fとの実ピクセル座標系における X座標値の差の絶対値 I ΔΧ Iを演算 し、 1く I ΔΧ Iの場合には、点 Gを中心とするメインドットパターンと、点 Fを中心と するメインドットパターンとが X軸方向にずれることによって段差部が形成されて 、るも のとして、その各段差部において、各メインドットパターンにそれぞれ接するとともに、 X方向および Y方向に相互に隣接して並んだ各「 I ΔΧ | —1」個の画素のそれぞれ の X方向および Υ方向の長さを一辺とする二等辺三角形に含まれる全ての画素を、 サブドットパターンとして設定する。
[0098] なお、ステップ S3060およびステップ S3090によるサブドットパターンの設定処理 は、表示画面がスクロール中である場合には、省略してもよい。また、ストロークの傾 きが水平方向または垂直方向に近 、場合にぉ 、ても省略されてもょ 、。このことによ り、線分の段差を埋めるパターンが出力結果の見た目に与える影響が軽微な場面で は、描画処理を少なくして描画速度を優先することが可能である。
[0099] このようにしてサブドットパターンが選択されると、ステップ S3120において、点 Gが ストロークの終点 peに対応して 、な 、かを確認し、ストロークの終点 Peに対応して!/ヽ ない場合には、ステップ S3020に戻り、ステップ S3020以降の処理を繰り返す。
[0100] ステップ S3120において、点 Gがストロークの終点 Peに対応していることが確認さ れると、前述したように、図 6のステップ S 2050に進み、 1つのストロークに含まれる全 ての座標位置についての処理が終了したことを確認する。そして、 1つのストロークに 含まれる全ての座標位置についての処理が終了していることが確認されると、図 5の ステップ S1050に進み、文字を構成する他のストロークについても同様の処理が実 施されて、文字を構成する全てのストロークについての表示データが生成される。
[0101] 図 13は、図 7のストローク Aを、 9ドットの表示太さで表示する場合に生成される表示 データに基づ ヽて表示デバイス 2を制御して得られる表示状態を示して ヽる。このよう に、文字を構成するストロークが縦線でなくて横線とみなされる場合にも、相互に隣 接するメインドットパターンの間の段差部にサブドットパターンが形成されていることに よって、太さ Wのメインドットパターン同士力 滑らかに連続して表示され、ストローク を太く表示する場合における視認性が著しく向上する。
[0102] 以上の説明は、図 6のステップ S2020において、ストロークデータとして順番に記録 されている最初のサンプル点の座標データ 1と 2番目のサンプル点の座標データ 2と を結ぶ直線が斜め線でな 、 (縦線または横線)と判定された場合の処理につ!、てで あつたが、以下に、図 6のステップ S2020において、座標データ 1のサンプル点と 2番 目の座標データ 2のサンプル点とを結ぶ直線が斜め線と判定された場合のステップ S 2040の具体的な処理を、図 14のフローチャートに基づいて説明する。
[0103] なお、この場合にも、ブレゼンハムのアルゴリズムによって、ストローク Aの始点 Psと 終点 Peとを結ぶ直線 (ストローク)上に位置する座標の点 Gとして、始点 Psから順番 に隣接する画素が設定される。図 7のストローク Bおよびストローク Cに対して、ブレゼ ンハムのアルゴリズムによって抽出される点 Gおよび中心点 Fを、図 9および図 10に 示す。
[0104] 始点 Psと終点 Peとを結ぶ直線が斜め線であると判定されると、まず、図 5のフロー チャートのステップ S 1030にお!/、て、設定された表示太さ Wに「(2) 1/2Jを乗算(W X (2) 1/2)し、その乗算結果に最も近い 1以上の奇数 W,を求める(図 14のステップ S4 010参照、以下同様)。
[0105] ステップ S4010において、 1以上の奇数 W'が求められると、始点 Ps (座標データ 1 のサンプル点)に対応する画素を中心点 Fとして、求められた W'が、 2本の各対角線 のそれぞれのドット数となる菱形形状をメインドットパターンに設定する (ステップ S40 20)。
[0106] 図 15および 16は、それぞれ、図 7のストローク Bおよびストローク Cを、太さ Wを 9ドッ トとして処理する場合における、座標データ 1のサンプル点(始点 Ps)に対応する座 標位置を中心点 Fとして設定された菱形形状のメインドットパターン 21をそれぞれ白 抜きで示している。それぞれの菱形形状のメインドットパターン 21は、表示太さ W= 9 であるので、ステップ S4010において、 W,は、 9 X (2) 1/2= 12. 73に最も近い奇数 である 13を対角線の長さのドット数として設定している。
[0107] このようにして、ストロークの始点 Psに対する菱形形状のメインドットパターンが設定 されると、ブレゼンノヽムのアルゴリズムによって、点 Gに対して終点 Pe側に隣接する画 素の座標を求めて、新たな点 Gとする(ステップ S4030)。ブレゼンハムのァルゴリズ ムは公知であるために説明を省略する。
[0108] ステップ S4030において、点 G求められると、求められた点 Gと中心点 Fとに対応す る実ピクセル座標系の X座標値の差の絶対値 I ΔΧ Iと、それぞれの Y座標値の差 の絶対値 I ΔΥ Iとの合計力 ステップ S4010で求められた W,以上( I ΔΧ I + I ΔΥ I≥W)になって!/ヽるかを判定する(ステップ S4040)。
[0109] ステップ S4040において I ΔΧ I + I ΔΥ I ≥W,を満足しない場合には、ステツ プ S4090に進み、点 Gがストロークの終点 Peに対応していないことを確認して、ステ ップ S4120に戻り、点 Gに対して終点 Pe側に隣接する画素の座標を求めて、新たな 点 Gとし (ステップ S4030)、 I ΔΧ I + I ΔΥ I ≥W,になっているかを判定する(ス テツプ S4040)。以後、 I ΔΧ I + I ΔΥ I ≥W,〖こなるまで、ステップ S4090〜S4 120〜ステップ S4030〜ステップ S4040の処理を繰り返す。
[0110] そして、 I ΔΧ | + I ΔΥ | ≥W,を満足する点 Gが得られると、その点を中心点 F として、 2本の各対角線がそれぞれドット数 W'となった菱形形状をメインドットパター ンに設定する(ステップ S4050)。
[0111] このようにして設定される菱形形状のメインドットパターンは、 I ΔΧ I + I ΔΥ I
≥Wを満足するために、直前に中心点 Fを中心として設定された菱形形状のメイン ドットパターンとは重なるおそれがな 、。
[0112] なお、点 Gがストロークの終点 Peに対応していれば、その点 G (終点 Pe)の画素をメ インドットパターン中心 Fとして、 2本の各対角線がそれぞれドット数 W,となった菱形 形状をメインドットパターンに設定し (ステップ S4100)、処理を終了する。 [0113] 図 7に示されたストローク Bでは、図 9に示すように、始点 Psの座標(12, 0)に対して 、ブレゼンハムのアルゴリズムで求められた座標(8, 9)の点 Gにおいて、 ΔΧの絶対 値と ΔΥの絶対値との和は 13 (=W,)( I ΔΧ I = 5、 I ΔΥ I = 9)となり、ステップ S4040における I ΔΧ I + I ΔΥ I ≥W,の条件を満たすため、図 15に示すように 、座標(8, 9)の点 Gを中心として、各対角線が 13ドットの菱形形状がメインドットバタ ーン 32 (黒ベタで示す)として設定される。
[0114] また、図 7に示されたストローク Cでは、図 10に示すように、始点 Psの座標(15, 0) に対して、ブレゼンハムのアルゴリズムで求められた座標(10, 9)の点 Gにおいて、 ΔΧの絶対値と ΔΥの絶対値との和は 14 ( I ΔΧ I = 5、 | ΔΥ | = 9)となって W,( = 13)によりも大きくなる。よって、座標(10, 9)の点 Gが、ステップ S4040における I ΔΧ I + I ΔΥ I ≥W,の条件を満たすため、図 16に示すように座標(10, 9)の 点 Gを中心とした各対角線が 13ドットの菱形形状がメインドットパターン 32 (黒ベタで 示す)として設定される。この場合、 ΔΧの絶対値と ΔΥの絶対値との和力 ドット数 W ,に等しくなぐ 1ドットの差が存在するために、それぞれが菱形形状のメインドットバタ ーン 31およびメインドットパターン 32の間には、相互に対向する辺に沿って間隙(図 16にハッチで示す)が形成されることになる。
[0115] このようにして、ステップ S4050において、図 15および図 16に示すように、対角線 が表示太さ Wに対応した長さになった菱形形状のメインドットパターン 32がメインドッ トパターン 31に隣接して設定されると、各メインドットパターン 31および 32における相 互に近接した近接辺(間隙が形成されることなく密着した辺、または、両者の間に間 隙が形成された辺、図 15および図 16に一括して辺 Bとして示す)に沿って各メインド ットパターン 31および 32同士がずれた状態になっており、従って、それぞれ近接辺 B と、それぞれの近接辺 Bに対して直交する各メインドットパターン 31および 32の辺 C および辺 Aとによって段差部がそれぞれ形成されている。そして、それらの段差部を 埋めるように、サブドットパターン 33 (網掛け模様で示す)がそれぞれ設定される (ステ ップ S4060)。
[0116] 各サブドットパターン 33は、各メインドットパターン 31および 32におけるそれぞれの 近接辺 Bにおける両側にぉ ヽて最も外側に位置する各端部の画素の X座標値を、そ れぞれ XIおよび X2 (但し X1 <X2)とすると、 X座標値が XI以上 X2以下の範囲で、 それぞれの段差部内に位置する全ての画素力 サブドットパターン 33として設定され る。
[0117] その後、点 Gに対応する実ピクセル座標系の X座標値と中心点 Fに対応する実ピク セル座標系の画素の X座標値との差の絶対値 I ΔΧ Iと、それぞれの Y座標値の差 の絶対値 I ΔΥ Iとの合計力 ステップ S4010で求められた W,よりも大きくなつてい るか( I ΔΧ I + I ΔΥ I >W,)を判定する(ステップ S4070)。そして、 | ΔΧ | + I ΔΥ I >W,を満足する場合には、各メインドットパターン 31および 32における近 接辺同士が密着していないために、それらの間に間隙を形成する画素が存在するこ とになり、その間隙を形成する画素の全てを補正用ドットパターン 34として設定する( ステップ S4080)。
[0118] このようにして、メインドットパターン、サブドットパターンおよび補正用ドットパターン が設定されると、点 Gがストロークの終点 Peに対応しているかを確認し (ステップ S41 10)、ストロークの終点 Peに対応していない場合には、ステップ S4030に戻り、ステツ プ S4030以降の動作が繰り返される。
[0119] なお、ステップ S4060およびステップ S4080におけるサブドットパターンおよび補 正用ドットパターンの設定処理は、表示画面がスクロール中である場合には、省略し てもよい。また、ストロークの傾きが 45度方向または 135度方向または 225度方向ま たは 315度方向に近い場合においても省略されてもよい。このことにより、線分の段 差を埋めるパターンが出力結果の見た目に与える影響が軽微な場面では、描画処 理を少なくして描画速度を優先することが可能である。
[0120] その後、点 Gがストロークの終点 Peに対応していることが確認されると (ステップ S41 10)、図 6のステップ S2050に戻り、 1つのストロークにおける全ての座標点に対する 処理が終了したかを確認し、 1つのストロークに対して全ての座標点に対する処理が 終了している場合には、図 5のステップ S1060〖こ戻り、 1つの文字に含まれる全ての ストロークに対する表示データの生成処理が終了しているかを確認し、全てのスト口 ークに対する表示データの生成処理が終了している場合に、 1つの文字に対する表 示データの生成処理は完了する。 [0121] なお、図 17および図 18は、図 7に示されたストローク Bおよび Cを、 9ドットの表示太 さで表示する場合に生成される表示データに基づいて表示デバイス 2を制御して得 られる表示状態をそれぞれ示している。いずれの場合にも、各ストロークのそれぞれ の端点においては、相互に直交する斜め線によってそれぞれのコーナー部が形成さ れており、し力も、各メインドットパターンの間における段差が緩和されて視認されるた めに、視認性が著しく向上している。
[0122] 図 19は、前記ストローク Cを描画した終点 Rを始点としてストローク Aを描画する場 合において、ストローク Aおよびストローク Cの各々の始点と終点とを結ぶ直線上の点 を矩形で表した図である。ここで、 Rで示した点においてストローク Aの始点はストロー ク Cの終点と重なっている。このように、あるストロークの始点が他のストロークの終点 に重なり合って ヽる場合の描画手順は以下のようになる。
[0123] 基本的に、ストローク Cについては、図 14で示した同様の手順に従って描画を行い 、ストローク Aについては、上述したように図 11で示した同様の手順によって描画を 行う力 点 Rのように始点と終点とが重なる場合にぉ 、ては、始点および終点のメイン ドットパターン描画処理(具体的には、図 11におけるステップ S3010、ステップ S311 0、図 14におけるステップ S4020、ステップ S4100の描画処理)が、以下の手順によ つて行われる。
[0124] 図 11におけるステップ S3010の描画処理は、図 21に示される手順で処理される。
以下、図 21の描画処理手順について説明する。
[0125] ステップ S7010 :現在の処理点 Gおよび直前の描画中心点 Fを始点に設定する。
ストロークの始点が他のストロークの終点と重なっている場合(すなわち、ストロークの 始点の座標が他のストロークの終点の座標と同一である場合)には、ステップ S3010 の処理を終える。そうでな!/、場合はステップ S7020に進む。
[0126] ステップ S7020 :始点を中心に幅、高さが共にストロークの太さ Wの正方形を描画 し、ステップ S3010の処理を終える。
[0127] 図 11におけるステップ S3110の描画処理は、図 22に示される手順で処理される。
以下、図 22の描画処理手順について説明する。
[0128] ステップ S5010:ストロークの終点が他のストロークの始点と重なって!/、る場合(すな わち、ストロークの終点の座標が他のストロークの始点の座標と同一である場合)には
、ステップ S5020【こ進む。そうでな ヽ場合 ίまステップ S5030【こ進む。
[0129] ステップ S5020 :他のストロークの始点と終点が重なっているストロークが斜め線で あるかどうかを図 6におけるステップ S2020と同様の方法によって判定する。斜め線 であると判定された場合はステップ S5040に進み、そうでな!/、場合はステップ S503 0に進む。
[0130] ステップ S5030 :点 Gを中心に幅、高さが共にストロークの太さ Wの正方形を描画し 、ステップ S3110の処理を終える。
[0131] ステップ S5040 :点 Gを中心に幅、高さが共にストロークの太さ Wの正方形と、高さ W,の菱形との合成パターンを描画し、ステップ S3110の処理を終える。
[0132] ここで、 W,は、図 14におけるステップ S4010と同様の方法により求められる。
[0133] 上記合成パターンは図 20に示したように、正方形と菱形とを合成したもので、予め メモリ上に生成されたパターンである。すなわち、合成パターンの描画は、菱形と正 方形とを重ね合わせることにより個々に描画するのではなぐ予め生成している合成 パターンを単純にコピーすることによって描画を行うことによって達成される。これによ り、重複して画素を塗りつぶす無駄が削減されるため高速ィ匕が実現される。なお、予 めメモリ上に生成した前記合成パターンを、 2つの線分の傾きをパラメータとしてキヤ ッシュメモリのような仕組みで保持しておき再利用することで、合成の処理を削減する ことができる。
[0134] 図 14におけるステップ S4020の描画処理は、図 23に示される手順で処理される。
以下、図 23の描画処理手順について説明する。
[0135] ステップ S8010 :現在の処理点 Gおよび直前の描画中心点 Fを始点に設定する。
ストロークの始点が他のストロークの終点と重なっている場合(すなわち、ストロークの 始点の座標が他のストロークの終点の座標と同一である場合)には、ステップ S4020 の処理を終える。そうでな!/、場合はステップ S8020に進む。
[0136] ステップ S8020 :始点を中心に 2本の対角線が共に W,の菱形を描画し、ステップ 4 020の処理を終える。
[0137] 図 14におけるステップ S4110の描画処理は、図 24に示される手順で処理される。 以下、図 24の描画処理手順について説明する。
[0138] ステップ S6010:ストロークの終点が他のストロークの始点と重なって!/、る場合(すな わち、ストロークの終点の座標が他のストロークの始点の座標と同一である場合)には 、ステップ S6020【こ進む。そうでな ヽ場合 ίまステップ S6030【こ進む。
[0139] ステップ S6020 :他のストロークの始点と終点が重なっているストロークが斜め線で あるかどうかを図 6におけるステップ S2020と同様の方法によって判定する。斜め線 であると判定された場合はステップ S6040に進み、そうでな!/、場合はステップ S603 0に進む。
[0140] ステップ S6030 :点 Gを中心に幅、高さが共にストロークの太さ Wの正方形と、高さ W,の菱形との合成パターンを描画し、ステップ S4110の処理を終える。合成パター ンの描画方法は、図 22のステップ S 5040における合成パターンの描画方法と同様 である。
[0141] ステップ S6040 :点 Gを中心に 2本の対角線が共に W,の菱形を描画し、ステップ S 4110の処理を終える。
[0142] 以上のように、本発明によれば、文字または図形のストロークを任意の線幅で表示 する場合に、ストロークの傾きに適した太さおよび端点を有するように表示されるため に、表示サイズを大きくする場合にも、文字または図形の視認性が著しく向上する。さ らに、複数のメインドットパターンを互いに重複しないように配置し、メインドットパター ンとサブドットパターンとを重複しな 、ように配置することによって、冗長な処理を回避 することができ、文字図形表示処理を高速に行うことが可能となる。さらに、画面スク ロール中に、サブドットパターンの配置処理を実施せずに、メインドットパターンによつ て文字または図形の概略形状のみを表示することにより、文字図形表示処理をさら に高速に行うことが可能となる。
[0143] 以上、本発明の好ましい実施形態を用いて本発明を例示してきた力 本発明は、こ の実施形態に限定して解釈されるべきものではない。本発明は、特許請求の範囲に よってのみその範囲が解釈されるべきであることが理解される。当業者は、本発明の 具体的な好ま 、実施形態の記載から、本発明の記載および技術常識に基づ 、て 等価な範囲を実施することができることが理解される。本明細書において引用した特 許、特許出願および文献は、その内容自体が具体的に本明細書に記載されている のと同様にその内容が本明細書に対する参考として援用されるべきであることが理解 される。
産業上の利用可能性
本発明によれば、携帯電話機、液晶テレビジョン等のように文字または図形を表示 画面に表示する表示デバイスを備えた電子機器等において、文字または図形のスト ロークを任意の線幅で表示する場合に、ストロークの傾きに適した太さおよび端点を 有するように表示することができ、しかも、高速、かつ、高品位に文字または図形を表 示させることができる。

Claims

請求の範囲
[1] 文字または図形を表示画面に表示する文字図形表示装置であって、
表示されるべき文字または図形の骨格を表す骨格データを取得する骨格データ取 得手段であって、該骨格データは、該文字または該図形のストロークを表すストロー クデータを含み、該ストロークデータは、該ストロークに対応する複数のサンプル点の 座標データを含む、骨格データ取得手段と、
該文字または該図形を構成する線の太さと、該ストロークに対応する該複数のサン プル点のうち互いに隣接する 2つのサンプル点の座標データとに基づいて、メインド ットパターンの形状を決定するメインドットパターン形状決定手段と、
該決定された形状をそれぞれ有する複数のメインドットパターンを互いに重複しな いように配置することによって、該文字または該図形を表示するための表示データを 生成する表示データ生成手段と
を備えた、文字図形表示装置。
[2] 前記表示データ生成手段は、前記複数のメインドットパターンによって形成される 段差を埋めるように少なくとも 1つのサブドットパターンを配置することによって、前記 表示データを生成する、請求項 1に記載の文字図形表示装置。
[3] 前記メインドットパターン形状決定手段は、前記 2つのサンプル点を結ぶ直線の傾 きに応じて、前記メインドットパターンの形状を正方形および菱形の一方に決定する 、請求項 1に記載の文字図形表示装置。
[4] 前記メインドットパターン形状決定手段は、前記 2つのサンプル点を結ぶ直線が斜 め線である力否かを判定し、該 2つのサンプル点を結ぶ直線が斜め線であると判定さ れた場合には、前記メインドットパターンの形状を菱形に決定し、該 2つのサンプル点 を結ぶ直線が斜め線でな 、と判定された場合には、前記メインドットパターンの形状 を正方形に決定する、請求項 1に記載の文字図形表示装置。
[5] 前記メインドットパターン形状決定手段は、前記 2つのサンプル点を結ぶ直線の傾 き 0力 0° ≤ Θ < 25° 、65° ≤ Θ < 113° 、 155° ≤ 0 < 205° 、 245° ≤ Θく 295° または 335° ≤ Θ < 360° の場合には、該 2つのサンプル点を結ぶ直線が斜 め線でないと判定し、それ以外の場合には、該 2つのサンプル点を結ぶ直線が斜め 線であると判定する、請求項 4に記載の文字図形表示装置。
[6] 前記メインドットパターン形状決定手段は、前記文字または前記図形を構成する線 の太さに応じて、前記メインドットパターンの各辺の画素数を決定する、請求項 1に記 載の文字図形表示装置。
[7] 前記文字または前記図形を構成する線の太さは、該文字または該図形のサイズ、 または、該文字または該図形を構成する線の本数に応じて設定される、請求項 1〖こ 記載の文字図形表示装置。
[8] 前記表示データ生成手段は、前記表示画面力 Sスクロール中である場合、または、ス トロークの傾きが所定の方向に近 、場合には、前記サブドットパターンを配置しな 、、 請求項 2に記載の文字図形表示装置。
[9] 前記メインドットパターン形状決定手段が、前記メインドットパターンの形状を正方 形に決定した場合において、前記表示データ生成手段は、前記 2つのサンプル点の うちの一方のサンプル点に対応する前記表示画面における画素を中心として、各辺 が所定の画素数の正方形のメインドットパターンを配置し、前記表示画面にぉ 、て前 記 2つのサンプル点を結ぶ直線に対応する画素上で、該配置されたメインドットパタ ーンの中心画素力 X座標値または Y座標値の差が該所定の画素数である画素を 中心として、各辺が該所定の画素数の正方形のメインドットパターンを配置することに よって、前記表示データを生成する、請求項 4に記載の文字図形表示装置。
[10] 前記表示データ生成手段は、互いに隣接して配置された 2つのメインドットパターン の左右にそれぞれ段差部が形成されている場合には、該 2つのメインドットパターン のそれぞれの中心画素の Y座標の差を ΔΥとして、互いに直交する 2辺の長さが I ΔΥ I —1である直角二等辺三角形に含まれる全ての画素をサブドットパターンとし て設定し、
前記表示データ生成手段は、互いに隣接して配置された 2つのメインドットパターン の上下にそれぞれ段差部が形成されている場合には、該 2つのメインドットパターン のそれぞれの中心画素の X座標の差を ΔΧとして、互いに直交する 2辺の長さが I ΔΧ I 1である直角二等辺三角形に含まれる全ての画素をサブドットパターンとし て設定する、請求項 9に記載の文字図形表示装置。
[11] 前記メインドットパターン形状決定手段が、前記メインドットパターンの形状を菱形 に決定した場合において、前記表示データ生成手段は、前記文字または前記図形 を構成する線の太さを Wとして、画素数 Wに(2) 1/2を乗じた値に最も近 ヽ奇数を画 素数 W'として求め、 2本の対角線の長さがそれぞれ前記画素数 W'である菱形形状 のメインドットパターンを配置することによって、前記表示データを生成する、請求項 4 に記載の文字図形表示装置。
[12] 前記表示データ生成手段は、前記表示画面において前記 2つのサンプル点を結 ぶ直線に対応する画素上で、前記配置されたメインドットパターンの中心画素との X 座標値の差の絶対値と Y座標値の差の絶対値との和が前記画素数 W,以上となる画 素を中心として、前記菱形形状のメインドットパターンを配置する、請求項 11に記載 の文字図形表示装置。
[13] 前記表示データ生成手段は、互いに隣接して配置された 2つのメインドットパターン の対応する辺に沿って、該 2つのメインドットパターンが互いにずれることにより段差 が形成されている場合には、該 2つのメインドットパターンの対応する辺における両側 において最も外側に位置する各端部の画素の X座標値を、それぞれ、 XIおよび X2 ( 但し X1 <X2)として、 X座標値が XI以上 X2以下の範囲で、それぞれの段差部内に 位置する全ての画素をサブドットパターンとして設定する、請求項 11に記載の文字 図形表示装置。
[14] 前記表示データ生成手段は、前記ストロークの終点が他のストロークの始点と重な る場合には、該ストロークの終点および該他のストロークの始点の位置に合成パター ンを配置することによって、前記表示データを生成し、該合成パターンは、該ストロー クの終点に配置されるべきメインドットパターンと該他のストロークの始点に配置される べきメインドットパターンとをあら力じめ合成したものである、請求項 1に記載の文字図 形表示装置。
[15] 文字または図形を表示画面に表示する表示する文字図形表示方法であって、 表示されるべき文字または図形の骨格を表す骨格データを取得するステップであ つて、該骨格データは、該文字または該図形のストロークを表すストロークデータを含 み、該ストロークデータは、該ストロークに対応する複数のサンプル点の座標データ を含む、ステップと、
該文字または該図形を構成する線の太さと、該ストロークに対応する該複数のサン プル点のうち互いに隣接する 2つのサンプル点の座標データとに基づいて、メインド ットパターンの形状を決定するステップと、
該決定された形状をそれぞれ有する複数のメインドットパターンを互いに重複しな いように配置することによって、該文字または該図形を表示するための表示データを 生成するステップと
を包含する、文字図形表示方法。
[16] 請求項 15に記載の文字図形表示方法の各ステップをコンピュータによって実行さ せるための文字図形表示プログラム。
[17] 請求項 16に記載の文字図形表示プログラムが記録されたコンピュータ読み取り可 能な記録媒体。
PCT/JP2006/317384 2005-09-02 2006-09-01 文字図形表示装置、文字図形表示方法、文字図形表示プログラムおよび記録媒体 WO2007026898A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007533369A JP4761477B2 (ja) 2005-09-02 2006-09-01 文字図形表示装置、文字図形表示方法、文字図形表示プログラムおよび記録媒体

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005-255609 2005-09-02
JP2005255609 2005-09-02

Publications (1)

Publication Number Publication Date
WO2007026898A1 true WO2007026898A1 (ja) 2007-03-08

Family

ID=37808982

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/317384 WO2007026898A1 (ja) 2005-09-02 2006-09-01 文字図形表示装置、文字図形表示方法、文字図形表示プログラムおよび記録媒体

Country Status (2)

Country Link
JP (1) JP4761477B2 (ja)
WO (1) WO2007026898A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63286978A (ja) * 1987-05-19 1988-11-24 Sanyo Electric Co Ltd 毛筆書体発生方法
JPH05205062A (ja) * 1992-01-27 1993-08-13 Hitachi Ltd ベクトルデータ/イメージデータ変換方法
JPH1097237A (ja) * 1996-09-20 1998-04-14 Fujitsu Ltd 描画装置
JP2000267644A (ja) * 1999-01-12 2000-09-29 Sanyo Electric Co Ltd フォント処理装置、フォント処理方法及び記憶媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63286978A (ja) * 1987-05-19 1988-11-24 Sanyo Electric Co Ltd 毛筆書体発生方法
JPH05205062A (ja) * 1992-01-27 1993-08-13 Hitachi Ltd ベクトルデータ/イメージデータ変換方法
JPH1097237A (ja) * 1996-09-20 1998-04-14 Fujitsu Ltd 描画装置
JP2000267644A (ja) * 1999-01-12 2000-09-29 Sanyo Electric Co Ltd フォント処理装置、フォント処理方法及び記憶媒体

Also Published As

Publication number Publication date
JP4761477B2 (ja) 2011-08-31
JPWO2007026898A1 (ja) 2009-03-12

Similar Documents

Publication Publication Date Title
JP4498146B2 (ja) コンピュータデバイスに於けるメディア表示方法、コンピュータデバイス、コンピュータプログラム
JP2006524367A5 (ja)
JP2006518055A5 (ja)
US20020093502A1 (en) Character display apparatus, character display method, and recording medium
US6437793B1 (en) System for rapidly performing scan conversion with anti-aliasing upon outline fonts and other graphic elements
JP4162670B2 (ja) シルエット化グレーフォント発生方法
US6766052B2 (en) Character display device, character display method, and recording medium therefor
US7701467B2 (en) Character display apparatus, character display method, character display program, and recording medium
JPH09114999A (ja) 作図装置
KR20040107498A (ko) 표시 장치, 정보 표시 방법, 정보 표시 프로그램, 판독가능 기록 매체, 및 정보 장치
JP4761477B2 (ja) 文字図形表示装置、文字図形表示方法、文字図形表示プログラムおよび記録媒体
JP4726017B2 (ja) 文字データ生成装置、電子情報機器、文字データ生成プログラムおよび可読記録媒体
JP5158752B2 (ja) 表示制御装置、表示装置、表示制御プログラム、コンピュータ読み取り可能な記録媒体、および表示制御方法
WO2006075695A1 (ja) 文字図形表示装置、プログラムおよび記録媒体
US20150347876A1 (en) Display device, display control method, and non-transitory recording medium storing computer readable display control program
JP5492911B2 (ja) 文字作成方法、および文字作成装置
JPS63186366A (ja) 文書作成装置
JP2015191565A (ja) 表示入力装置
JPH11119762A (ja) 表示制御装置、表示制御方法および記憶媒体
JP2006113630A (ja) 情報表示装置
JP2008111954A (ja) 表示制御装置、表示制御プログラム、および表示制御プログラムを記録した記録媒体
JP4726087B2 (ja) データ処理装置、データ処理方法、電子情報機器、制御プログラムおよび可読記録媒体
JP2004157563A (ja) 文字表示装置
JPH06337869A (ja) 文書作成装置及び印刷制御方法
JP2008108187A (ja) Cadデータ変換装置、cadデータ変換方法、及びcadデータ変換プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2007533369

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06810039

Country of ref document: EP

Kind code of ref document: A1