WO2009107554A1 - Information processing device, information processing method, and program - Google Patents

Information processing device, information processing method, and program Download PDF

Info

Publication number
WO2009107554A1
WO2009107554A1 PCT/JP2009/053019 JP2009053019W WO2009107554A1 WO 2009107554 A1 WO2009107554 A1 WO 2009107554A1 JP 2009053019 W JP2009053019 W JP 2009053019W WO 2009107554 A1 WO2009107554 A1 WO 2009107554A1
Authority
WO
WIPO (PCT)
Prior art keywords
pixel
line segment
line
gradation
symbol
Prior art date
Application number
PCT/JP2009/053019
Other languages
French (fr)
Japanese (ja)
Inventor
瑞 作田
安久 中村
佳世 岡本
Original Assignee
シャープ株式会社
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 シャープ株式会社 filed Critical シャープ株式会社
Priority to CN200980106789.6A priority Critical patent/CN101960512A/en
Publication of WO2009107554A1 publication Critical patent/WO2009107554A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/40Picture signal circuits
    • H04N1/409Edge or detail enhancement; Noise or error suppression
    • H04N1/4092Edge or detail enhancement
    • G06T5/92
    • 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

Definitions

  • the present invention relates to an information processing apparatus capable of displaying a symbol on a display screen by a stroke font, an information processing method, and a program.
  • a stroke font which is a type of scalable font
  • the scroll font is one of the data formats for representing the shape of characters on a computer.
  • the scroll font is also a form that expresses the shape of a character as a parameter (vector data) of a center line (skeleton line).
  • Patent Document 1 discloses a character display device using a scroll font.
  • characters are displayed on the display screen based on data (i.e., a stroke font) indicating a skeleton of the character called skeleton data.
  • FIG. 27 shows the data structure of the skeleton data.
  • the skeleton data 100 includes a character code 101 for distinguishing types of characters, a stroke number 102 indicating the number of strokes constituting one character, and stroke information 103 corresponding to each stroke. include.
  • one stroke corresponds to one fraction of the number of strokes of characters.
  • a stroke is also part of a character having a line width displayed on the display screen.
  • the stroke information 103 includes the number 104 of coordinates indicating the number of coordinates of a plurality of points constituting the stroke, and a plurality of coordinate data 105 each indicating the coordinates of a plurality of points constituting the stroke. include.
  • FIG. 28 is a diagram showing a data structure of skeleton data regarding a kanji (character) such as "tree".
  • skeleton data on “tree” includes four pieces of stroke information.
  • skeleton data on “trees” includes data indicating skeleton lines of four strokes.
  • the skeletal lines of the strokes corresponding to each piece of stroke information are displayed as strokes # 1 to # 4.
  • the stroke # 1 is defined as a line connecting the start point (4, 192) and the end point (245, 192).
  • Stroke # 3 is a line connecting the start point (121, 192) and the point (97, 141), a line connecting the point (97, 141) and the point (72, 103), and a point (72). , 103) and the point (41, 69), and a line connecting the point (41, 69) and the end point (0, 42).
  • FIG. 29 is a diagram showing the skeleton data of FIG. 28 showing the skeleton of the kanji character "tree" on a coordinate plane.
  • the character display device after the character display device reads the skeleton data 100 from the storage device, the character display device scales the coordinate data (coordinate value) 105 of the skeleton data according to the designated character size. By this scaling, the character display device converts the coordinate system previously set for the coordinate data 105 of the skeleton data 100 into the actual pixel coordinate system for the display screen.
  • the character display device draws a character using the information indicating the skeletal line obtained by scaling.
  • a character to be displayed on the display screen is configured by causing the character display device to have a predetermined line width for each line segment which is an element of the skeletal line.
  • FIG. 30 is a diagram showing an example in which a predetermined line width is given to the line segment.
  • FIG. 30 (a) is an example where the line width is odd
  • FIG. 30 (b) is an example where the line width is even.
  • the character display device sets the gradation of the pixel surrounded by the thick line shown in the figure to a designated gradation (for example, a gradation (for example, black) different from the gradation of the background (for example, white))
  • a designated gradation for example, a gradation (for example, black) different from the gradation of the background (for example, white)
  • the character display device displays characters in a visible manner on the display screen.
  • JP-A-8-138067 Patent Document 2
  • a generation means for sequentially generating a plurality of pixel data in the sub-axis direction of a line segment, a register for holding the luminance reduction rate of each pixel and
  • a line segment anti-aliasing apparatus which comprises: output means for taking out necessary reduction rate data from the register in synchronization with the operation of the generation means and outputting each pixel data.
  • the line segment anti-aliasing device of patent document 2 looks up the reduction rate with respect to the decimal part of the distance between the theoretical line and the drawing pixel (d11 and d01 in the same document (see FIG. 4 and FIG. 5 in the same document)).
  • the line segment anti-aliasing apparatus is configured to acquire reduction rate data by directly referring to the LUT (see FIGS. 4 and 5 of the same document).
  • the line segment anti-aliasing device of the same document can generate a line image only for the line width corresponding to the LUT, it can not output a line image of an arbitrary line width. If it were to be possible to output line images of many types of line widths, the line segment anti-aliasing apparatus would have to hold a huge number of reduction rate data in the LUT. Therefore, also in this case, a large storage capacity is required.
  • the present invention has been made in view of the above problems, and an object thereof is an information processing apparatus capable of making a shaggy inconspicuous in a short processing time without using data such as a look-up table, an information processing apparatus A method and a program are provided.
  • an information processing apparatus is an information processing apparatus for displaying a symbol on a display screen on which a plurality of pixels are arranged in a matrix, and storing information indicating a skeleton of the symbol.
  • the information indicating the skeleton includes information indicating an element line segment which is an element of each skeleton line constituting the skeleton, and based on the information indicating the skeleton, the designated gradation and the row direction of the matrix or
  • the display control unit further includes a display control unit that determines a gradation of a display pixel among the plurality of pixels when the symbol is displayed so as to have a line width specified in any of the column directions.
  • a pixel group corresponding to a line width in which the display pixels are arranged in a line in the direction of the line width is set as an element pixel group, an element line segment and the element line segment are included. Center of element pixel group including overlapping pixels
  • a distance calculation unit that calculates the distance in the direction of the line width with respect to each element pixel group, the gradation of the pixel at one end included in the element pixel group including the center point, and the designated gradation Based on the correction by the gradation correction unit, which is a gradation between the gradation of the background of the displayed symbol and the gradation of the background of the displayed symbol, the gradation correction unit corrects the gradation according to the distance calculated by the distance calculation unit.
  • a display data generation unit for generating display data for displaying the symbol on the display screen.
  • the pixel at one end is a pixel located on the opposite side to the point on the element line segment which is separated from the central point by the distance in the direction of the line width from the central point. Is preferred.
  • the gradation correction unit is a pixel adjacent to the pixel at the other end of the element pixel group including the corrected pixel and in the direction of the line width and not included in the element pixel group. Also, it is preferable to correct the gray level between the gray level of the symbol and the gray level of the background of the symbol, according to the distance calculated by the distance calculation unit.
  • the gradation correction unit corrects the gradation of the symbol or the gradation of the background as the distance increases for the pixels at one end, and the distance increases for the adjacent pixels. It is preferable to make correction that approaches the tone of the symbol from the background tone.
  • each element line segment is a straight line parallel to the row direction or the column direction based on the information indicating the skeleton line
  • a parallel determination unit, a pixel at one end of the element pixel group including pixels overlapping the element line segment determined to be parallel by the parallel determination unit, and a pixel at the other end of the element pixel group It is preferable that the pixel which is adjacent to the line width direction and which is not included in the element pixel group includes a correction limiting unit which limits the correction by the gradation correction unit.
  • the first virtual line is parallel to the Y axis and the other element line segment is the first virtual line.
  • the predetermined relationship is that the value of the X coordinate of the point of intersection is greater than the value of the X coordinate of the first virtual line, when it exists more on the negative direction side of the X axis.
  • the first virtual line is parallel to the Y axis and the other element line segment is the first virtual line.
  • the predetermined relationship is that the value of the X coordinate of the point of intersection is smaller than the value of the X coordinate of the first virtual line, when it exists more on the positive direction side of the X axis.
  • the predetermined relationship is preferably that the value of the Y coordinate of the intersection is larger than the value of the Y coordinate of the first virtual line.
  • the predetermined relationship is preferably that the value of the Y coordinate of the intersection is smaller than the value of the Y coordinate of the first virtual line.
  • the symbol is displayed based on an element line parallel to the row direction or column direction and another element line continuous with the parallel element line and having an inclination with respect to the element line, Assuming that a line passing through each central point in each element pixel group including pixels overlapping the first element line is a first virtual line, the first imaginary line overlaps the pixel overlapping the first element line, and When the virtual line intersects with the second element line segment, the length of the second element line segment is corrected to a length reaching only the pixel adjacent to the pixel including the intersection point, and the first element line segment It is preferable to include an element line segment correction unit that corrects the length of the image to a length that reaches the pixel including the intersection point.
  • the symbol is such that the color is determined by the additive color mixture, and the tone correction unit preferably performs the tone correction by correcting the pixel value for each of the additive color primaries.
  • an information processing apparatus is an information processing apparatus for displaying a symbol on a display screen on which a plurality of pixels are arranged in a matrix, and the skeleton of the symbol stored in the storage device
  • the display control unit is configured to determine the gradation of the display pixel
  • the information indicating the skeleton includes information indicating an element line segment that is an element of each skeleton line that constitutes the skeleton
  • the display control unit When displaying a symbol including a first element line segment parallel to the row direction or the column direction, and a second element line segment continuous with the first element line segment and having an inclination with respect to the first element line segment
  • the gradation correction unit is a part of a group of pixels constituting a display pixel of a symbol, and has a line width including
  • an information processing apparatus is an information processing apparatus for displaying a symbol on a display screen in which a plurality of pixels are arranged in a matrix, and the information processing device is a symbol stored in the storage device.
  • the information processing device is a symbol stored in the storage device.
  • the information indicating the skeleton includes information indicating an element line segment which is an element of each skeleton line constituting the frame, and the display control unit , A symbol including a first element line segment parallel to the row direction or the column direction, and a second element line segment continuous with the first element line segment and having an inclination with respect to the first element line segment Correct the specified gradation when The gradation correction unit is a pixel arranged in the direction of the line width with respect to the pixel overlapping the intersection of the first element line segment and the second element Among the angles formed by the division
  • the gradation correction unit further includes a distance calculation unit that calculates, for each element pixel group, the distance in the direction of the line width between the line segment and the central point of the element pixel group including pixels overlapping the element line segment.
  • the pixels adjacent to the pixel at one end of the element pixel group and the pixels at the other end adjacent to the element pixel group in the line width direction and not included in the element pixel group are as follows: It is preferable that the gradation between the designated gradation and the gradation of the background of the displayed symbol be corrected according to the distance calculated by the distance calculation unit.
  • the information processing method is based on the information indicating the skeleton of the symbol, on the display screen in which the pixels are arranged in a matrix, the designated gradation and the row direction or column of the matrix.
  • the distance calculation step In comprising a step of correcting the gradation corresponding to the calculated distance, based on the correction, and generating display data for displaying the symbol on the display screen.
  • the program is a program for controlling an information processing apparatus having a display screen in which pixels are arranged in a matrix, and the program is based on information indicating a skeleton of a symbol.
  • a pixel group corresponding to a line width in which the display pixels are arranged in a line in the direction of the line width is set as an element pixel group, which is a part of the pixel group constituting the display pixels
  • the gradation of the pixel at one end included in the element group is corrected to the gradation between the gradation of the symbol and the gradation
  • FIG. 2 is a block diagram showing a schematic configuration of an information processing apparatus. It is a block diagram showing the hardware constitutions of the computer system which functions as an information processor. It is a figure showing a part of character after correcting the character of odd line width. It is another figure showing a part of character after correcting the character of odd line width. It is a figure showing a part of character after correcting the character of even line width. It is another figure showing a part of character after correcting the character of even line width.
  • 5 is a flowchart showing the flow of processing in the information processing apparatus. It is the flowchart which showed the detail of the process of FIG.7 S5.
  • Reference Signs List 1 information processing apparatus 12 storage device, 13 first memory, 14 second memory, 15 control unit, 16 display control unit, 20 distance calculation unit, 21 tone correction unit, 22 display data generation unit, 30 parallel determination unit, 31 correction limit unit, 32 line correction unit.
  • FIG. 1 is a block diagram showing a schematic configuration of the information processing apparatus 1.
  • the information processing apparatus 1 includes an input unit 10, an output unit 11, a storage device 12, a first memory 13, a second memory 14, and a control unit 15.
  • the input unit 10 is an input device for receiving an input from a user.
  • the first memory 13 stores the input data.
  • data to be input through the input unit 10 for example, data for specifying a symbol (for example, character code), data of symbol size, type information of symbol line width (for example, bold, middle, Data for specifying the symbol, data for specifying the color of the symbol, and the like.
  • type information of symbol line width for example, bold, middle
  • Data for specifying the symbol data for specifying the color of the symbol, and the like.
  • default values are stored in advance in the storage device 12 and the user does not input a change instruction to the information processing apparatus 1 via the input unit 10 As long as it is configured to be displayed based on the default value.
  • the output unit 11 is a device for displaying data input through the input unit 10 and results of various processing in the control unit 15 based on an instruction from the control unit 15.
  • the output unit 11 also includes a display screen in which pixels are arranged in a matrix.
  • the XY coordinates are set for the matrix, and the positive direction of the X axis is taken as the row direction of the matrix, and the negative direction of the Y axis is taken as the column direction of the matrix. That is, with respect to the display screen facing the user, the right direction is the X axis direction, and the upper direction is the Y axis direction.
  • the output unit 11 performs display using the RGB color model as an example of a color model.
  • the pixel value of the pixel is represented as (R, G, B).
  • the value of the element of R is “the value of R component”
  • the value of the element of G is “the value of G component”
  • the value of the element of B is It is called "the value of the B component”.
  • the storage unit 12 stores skeleton data of various symbols for each symbol. Further, the storage device 12 is configured by, for example, a hard disk drive or a flash memory.
  • the symbol is a concept including characters, figures, symbols and the like.
  • the structure of the skeleton data is the same as the conventional structure shown in FIGS. 27 and 28, and thus the description thereof is omitted here.
  • the first memory 13 is configured of volatile semiconductor memory such as RAM (Random Access Memory).
  • the first memory 13 plays a role as a main storage device with which the CPU (not shown) of the control unit 15 directly exchanges data.
  • the first memory 13 temporarily stores data input by the user, data stored in the storage device 12, and the like.
  • the second memory 14 is a VRAM (Video RAM), and is a memory for holding data to be displayed on the output unit 11.
  • VRAM Video RAM
  • the information processing apparatus 1 includes the first memory 13 and the second memory 14, a part of the area of the first memory 13 is not provided independently of the second memory 14. It may be allocated as a memory area for VRAM.
  • the control unit 15 controls various processes in the information processing device 1.
  • the display control unit 16 in the control unit 15 includes a distance calculation unit 20, a gradation correction unit 21, and a display data generation unit 22.
  • the tone correction unit 21 further includes a parallel determination unit 30, a correction limitation unit 31, and a line segment correction unit 32.
  • the control unit 15 and each unit in the control unit 15 are functional blocks, and the processing in these blocks is realized by software executed by a CPU described later.
  • the display control unit 16 causes the output unit 11 to display the data processed in the control unit 15. Specifically, the display control unit 16 stores the image data in the second memory 14 functioning as a VRAM, and causes the output unit 11 to output the stored image data.
  • the display control unit 16 has a specified line width and a specified gradation in either the row direction or the column direction of the matrix based on the skeleton data (information indicating the skeleton of the symbol).
  • the gradation of the display pixel among the plurality of pixels is determined.
  • skeleton line a line indicating a skeleton of a symbol configured based on coordinate data obtained by scaling coordinate data of skeleton data (see FIG. 28)
  • skeleton line a line indicating the skeleton of the symbol after being changed to the size when displayed on the output unit 11.
  • an element pixel group which is a part of a pixel group constituting a display pixel of a symbol and in which the display pixels are arranged in a line in the direction of the line width is referred to as an “element pixel group”.
  • a line segment that is an element of each skeleton line that constitutes the skeleton of the symbol is referred to as an "element line segment”. That is, an element line segment is a line segment which becomes one element which constitutes a skeletal line, and is a line segment having a certain inclination.
  • the distance calculation unit 20 calculates, for each element pixel group, the distance in the direction of the line width between the element line segment and the central point of the element pixel group including the pixels overlapping the element line segment.
  • the gradation correction unit 21 specifies the correction target pixel for each element line segment, and corrects the designated gradation of the correction target pixel to another gradation according to a predetermined rule.
  • the tone correction unit 21 also performs correction on pixel values of respective color components (that is, R component pixel values, G component pixel values, and B component pixel values).
  • gradation correction refers to correction of the pixel value of each color component. Note that the specification of the correction target pixel and the specific gradation correction method will be described later.
  • the display data generation unit 22 generates display data for displaying a symbol on the display screen based on the correction by the gradation correction unit 21 and temporarily stores the display data in the second memory.
  • the parallel determination unit 30, the correction limitation unit 31, and the line segment correction unit 32 in the gradation correction unit 21 will be described later.
  • FIG. 1 is a block diagram showing the hardware configuration of a computer system 1000 that functions as the information processing apparatus 1.
  • Computer system 1000 includes, as main components, a CPU 110 for executing a program, a mouse 120 and a keyboard 130 for receiving an instruction input by a user of computer system 1000, data generated by execution of the program by CPU 110, or mouse 120 Alternatively, a RAM 140 for volatileally storing data input via the keyboard 130, a hard disk 150 for storing data in a nonvolatile manner, a CD-ROM (Compact Disk-Read Only Memory) driving device 160, and a monitor 170.
  • a communication IF (Interface) 180 is included. Each component is connected to each other by a data bus.
  • the CD-ROM 161 is mounted on the CD-ROM drive 160.
  • the input unit 10 in the information processing apparatus 1 corresponds to the keyboard 130 and the mouse 120
  • the output unit 11 corresponds to the monitor 170
  • the storage device 12 corresponds to the hard disk 150
  • the first memory 13 and the second memory 14 Corresponds to the RAM 140.
  • Processing in computer system 1000 is realized by each hardware and software executed by CPU 110.
  • Such software may be stored in advance in the hard disk 150.
  • software may be stored in a CD-ROM 161 or other storage medium and distributed as a program product.
  • the software may be provided as a downloadable program product by an information provider connected to the so-called Internet.
  • Such software is read from the storage medium by the CD-ROM drive 160 or another reader, or downloaded via the communication IF 180, and then temporarily stored in the hard disk 150.
  • the software is read from the hard disk 150 by the CPU 110 and stored in the RAM 140 in the form of an executable program.
  • the CPU 110 executes the program.
  • Each component which comprises computer system 1000 shown in the figure is general. Therefore, an essential part of the present invention can be said to be software stored in the RAM 140, the hard disk 150, the CD-ROM 161 or other storage medium, or software downloadable via a network.
  • the operation of each hardware of computer system 1000 is well known, and therefore detailed description will not be repeated.
  • the recording medium is not limited to CD-ROM, FD (Flexible Disk), hard disk, magnetic tape, cassette tape, optical disk (MO (Magnetic Optical Disc) / MD (Mini Disc) / DVD (Digital Versatile Disc)) , IC (Integrated Circuit) card (including memory card), optical card, mask ROM, EPROM (Electronically Programmable Read-Only Memory), EEPROM (Electronically Erasable Programmable Read-Only Memory), fixed semiconductor memory such as flash ROM May be a medium that carries the program.
  • the program referred to here includes not only a program directly executable by the CPU but also a program of source program format, a program subjected to compression processing, an encrypted program and the like.
  • the above-mentioned composition is only one mode of a concrete composition to the last, and the composition which does not have the above-mentioned mouse, and is equipped with the keyboard, the monitor, and the hard disk in the information processor 1 may be sufficient.
  • the information processing apparatus 1 can also be configured as a portable type portable information terminal such as an electronic dictionary or a portable telephone.
  • a flash memory can be used instead of the hard disk 150.
  • a touch pen type input device may be provided as the input unit.
  • a thin monitor such as a liquid crystal monitor or an organic EL monitor as the monitor 170.
  • the process performed by the gradation correction unit 21 will be specifically described with reference to FIGS. 3 to 6. Moreover, below, a character is mentioned as an example and demonstrated as an example of a symbol.
  • the display control unit 16 determines the character, character size, line width type of the character, and character color. Identify Then, the display control unit 16 scales the skeleton data of the character based on the specified character size. Further, the line width (designated line width) when the display control unit 16 displays characters on the display screen of the output unit 11 in consideration of the specified character size and the type of the line width of the character is decide. Further, the display control unit 16 displays the characters on the display screen using the color (pixel value) of the specified characters. In addition, the method of using the color of a character is mentioned later.
  • the line width when the information processing apparatus 1 expresses a line width using an odd number of continuous pixels in one row, the line width is referred to as “odd line width”.
  • the line width when the information processing apparatus 1 expresses the line width using an even number of continuous pixels in one line, the line width is referred to as “even line width”.
  • “odd line width” and “even line width” refer to line widths before tone correction to be described later.
  • tone correction is performed, the line width of a part of the character becomes thicker.
  • the “line width” refers to the width of characters in the X-axis direction or the Y-axis direction.
  • pixels pixel group
  • the line width is 3, three consecutive pixels are used.
  • a pixel group (element pixel group) including pixels in which element line segments of a skeleton line overlap and continuous in a row in the X axis direction or Y axis direction Use.
  • the control unit 15 determines which one of the pixel group continuous in the X-axis direction and the pixel group continuous in the Y-axis direction is used according to the inclination of the element line.
  • the information processing device 1 expresses the width of the character using a pixel group continuous in a line in the X-axis direction.
  • the information processing device 1 expresses the width of the character using a pixel group continuous in a line in the Y-axis direction.
  • FIG. 3 is a diagram showing a part of the characters after the characters of the odd line width are corrected by the gradation correction unit 21. As shown in FIG. In addition, the same figure is also a view showing a part of the line width direction of the character.
  • control unit 15 sets the line width in the X-axis direction.
  • pixel Pa three pixels in a row such as pixel Pa, pixel Pb, and pixel Pc corresponding to an odd line width (line width of 3 in the figure) are characters
  • the pixel group that constitutes The pixel Pb is the central pixel of the pixel group because the distance between the central point C of the pixel Pb and the element line segment L1 in the X-axis direction is the X axis of the central point of another pixel and the element line segment L1. It is because it is smaller than the distance in the direction.
  • the information processing apparatus 1 uses the pixel Pa, the pixel Pb, and the pixel Pc as a pixel group forming a character.
  • the distance calculation unit 20 calculates the distance between the central point C of the pixel Pb and the element line segment L1 in the X-axis direction. That is, the distance calculation unit 20 calculates the distance
  • the distance between the center points of the pixels is 1.
  • the point G is also a point on a line passing each center point of the pixels arranged in a line in the line width direction of the character.
  • the tone correction unit 21 specifies the pixel Pa on the opposite side of the central point C as the correction target pixel.
  • the tone correction unit 21 also identifies a pixel Pd adjacent to the pixel Pc in the X-axis direction as a correction target pixel.
  • the pixel Pa and the pixel Pd are gradations between the gradation of the character and the gradation of the background of the character, and are corrected to the gradation according to the distance calculated by the distance calculation unit 20.
  • the tone correction unit 21 performs correction that approaches the background tone from the character tone as the value of the distance
  • the gradation correction unit 21 performs correction that approaches the gradation of the character from the gradation of the background.
  • Rf + Rb is obtained. That is, the value is the same as the sum of the value of the R component in the pixel (pixel Pb or pixel Pc) that is not the correction target pixel and the value of the R component in the background pixel. The same is true for the G component value and the B component value.
  • the information processing device 1 corrects the line width from 3 to 4, and the information processing device 1 forms a part of the character by the pixel Pa, the pixel Pb, the pixel Pc, and the pixel Pd as shown in the figure. Do.
  • FIG. 4 is a view showing a part of the characters after the characters of the odd line width are corrected by the gradation correction unit 21 as in FIG. FIG. 4 differs from FIG. 3 in that the point G of the element line segment L1 is located on the negative direction side of the X axis with respect to the central point C of the pixel Pb which is the central pixel.
  • the gradation correction unit 21 specifies the pixel Pc as the correction target pixel, and specifies the pixel Pe adjacent to the pixel Pa in the X-axis direction as the correction target pixel. In this case, for the pixel Pc, the gradation correction unit 21 performs correction based on the above equations (1) to (3). On the other hand, for the pixel Pe, the tone correction unit 21 performs correction based on the above equations (4) to (6).
  • FIG. 5 is a view showing a part of the characters after the characters of the even line width are corrected by the gradation correction unit 21. As shown in FIG. In addition, the same figure is also a view showing a part of the line width direction of the character.
  • control unit 15 sets the line width in the X-axis direction as in FIGS. 3 and 4.
  • two consecutive pixels such as a pixel Pf and a pixel Pg corresponding to an even line width (the line width in FIG. 2 is 2) form characters. It becomes a pixel group.
  • the reason that the pixel Pf is not the pixel constituting the character but the pixel Pf is the pixel constituting the character is that the distance between the central point of the pixel Pf and the element line L1 in the X axis direction is This is because the distance between the central point of and the element line segment L1 in the X-axis direction is smaller.
  • the information processing apparatus 1 uses the pixel Pf and the pixel Pg as a pixel group forming a character.
  • the distance calculation unit 20 calculates the distance in the X-axis direction between the central point C of the pixel group including the pixel Pf and the pixel Pg and the element line segment L1. That is, the distance calculation unit 20 calculates the distance
  • the pixel Pf and the pixel Ph are gradations between the gradation of the character and the gradation of the background of the character, and are corrected to the gradation according to the distance calculated by the distance calculation unit 20.
  • the gradation correction unit 21 performs correction that approaches the gradation of the background from the gradation of the character as the value of the distance
  • the gradation correction unit 21 performs correction that approaches the gradation of the character from the gradation of the background.
  • Rf + Rb is obtained. That is, the value is the same as the sum of the value of the R component in the pixel (pixel Pg) that is not the correction target pixel and the value of the R component in the background pixel. The same is true for the G component value and the B component value.
  • the information processing device 1 corrects the line width from 2 to 3, and the information processing device 1 configures a part of the character by the pixel Pf, the pixel Pg, and the pixel Ph as shown in the figure.
  • FIG. 6 is a view showing a part of the characters after the characters of the even line width are corrected by the gradation correction unit 21 as in FIG. 6 differs from FIG. 5 in that the point G of the element line segment L1 is on the negative direction side (left side of FIG. 6) of the X axis than the central point C of the pixel group composed of the pixels Pf and Pg. It is a point that exists.
  • the gradation correction unit 21 specifies the pixel Pg as the correction target pixel, and specifies the pixel Pi adjacent to the pixel Pf in the X-axis direction as the correction target pixel. In this case, for the pixel Pg, the gradation correction unit 21 performs correction based on the above equations (1) to (3). On the other hand, for the pixel Pi, the tone correction unit 21 performs correction based on the above equations (4) to (6).
  • the point G is a point used as the object of a process of calculation of distance
  • FIG. 7 is a flowchart showing the flow of processing in the information processing apparatus 1.
  • the figure shows the case where the information processing apparatus 1 displays one character on the display screen.
  • the display control unit 16 acquires character information such as character code, character size data, character line width type information, and character color for a character to be displayed (S1).
  • the characters to be displayed may be characters input through the input unit 10 or characters previously stored in the information processing apparatus 1.
  • the step S1 the type of the character, the size of the character, the line width of the character, and the color of the character are specified.
  • step S1 the display control unit 16 reads the skeleton data specified by the acquired character code from the storage device 12 (S2).
  • the read skeleton data is temporarily stored in the first memory 13.
  • step S2 the display control unit 16 scales the read skeleton data based on the specified character size (S3).
  • the display control unit 16 acquires stroke information on a skeleton line of one stroke from the scaled skeleton data (S4).
  • the stroke information is the same as the stroke information shown in Patent Document 1.
  • the kanji “tree” example four pieces of stroke information exist for the kanji.
  • the display control unit 16 draws a stroke of a predetermined line width (designated line width) based on the acquired one stroke information and the type information of the line width of the specified character. (S5). Then, after step S5, the display control unit 16 determines whether the drawing has been performed for all the strokes included in the character (S6).
  • predetermined line width refers to the line width of characters after correction by the gradation correction unit 21.
  • the information processing apparatus 1 If it is not determined in S6 that the drawing has been performed for all the strokes, the information processing apparatus 1 returns the process to step S4 again. On the other hand, when it is determined that the drawing has been performed for all the strokes in S6, the information processing apparatus 1 ends the series of processes for the character.
  • FIG. 8 is a flowchart showing the details of the process of step S5 of FIG.
  • the absolute value of the slope of the element segment is 1 or more
  • the Y coordinate of the start point of the element segment is the Y coordinate of the end point of the element segment for each element segment. The case is also described as an example.
  • the processing target point G on the element segment is first obtained, and then the processing target point G and the center are calculated.
  • the configuration for calculating the distance to the point C will be described.
  • the distance calculation unit 20 acquires coordinate values of two points at both ends (start and end points) of one element line segment (S11). After step S11, the distance calculation unit 20 calculates the inclination k of the element line segment based on the acquired coordinate value (S12).
  • a line which is a line in the line width direction (the X-axis direction in FIGS. 3 to 6) and passes through the center of each pixel is referred to as a “virtual line L2”.
  • the distance calculation unit 20 obtains an intersection point of the element line segment and the imaginary line L2 in the vicinity of both ends of the element line segment based on the start point coordinates and the end point coordinates of the element line segment S13).
  • the extension line of the element line segment and the imaginary line L2 Let the point of intersection be the above intersection point.
  • the intersection on the start point side is referred to as “point S”
  • the intersection on the end point side is referred to as “point E”.
  • the distance calculation unit 20 sets the processing target point G described above as the point S (S14). Then, after step S14, the distance calculation unit 20 determines whether the line width determined above is an odd number (S15).
  • the distance calculation unit 20 obtains the center point C of the pixel closest to the processing target point G (S16). After step S16, the distance calculation unit 20 calculates the distance
  • step S17 the gradation correction unit 21 described above based on the pixel group of the line width in the X-axis direction (that is, the line width before correction) centering on the pixel having the central point C.
  • the gradation is corrected in accordance with the distance
  • the tone correction unit 21 performs the above correction based on this pixel group, and as shown in FIG. 3 and FIG. 4, the pixel at one end of the pixel group (for example, the pixel Pa in FIG. 3) The gradation correction is performed on the pixel (for example, the pixel Pd in FIG. 3) adjacent to the pixel at the other end of the pixel group.
  • the information processing device 1 advances the process to step S19.
  • the distance calculation unit 20 specifies a boundary line segment between pixels that is closest to the processing target point G (S20). After step S20, the distance calculation unit 20 calculates the distance
  • the tone correction unit 21 sets the tone according to the above-described distance
  • the tone correction unit 21 performs the above correction based on this pixel group, and as shown in FIG. 5 and FIG. 6, the pixel at one end of the pixel group (for example, the pixel Pf in FIG. 5) The gradation correction is performed on a pixel (for example, the pixel Ph in FIG. 5) adjacent to the pixel at the other end of the pixel group.
  • the information processing device 1 advances the process to step S19.
  • step S19 the distance calculation unit 20 adds the value k to the value of the X coordinate of the processing target point G, and adds 1 to the value of the Y coordinate.
  • the control unit 15 determines whether the coordinate value of the processing target point G matches the coordinate value of the point E (S23).
  • step S20 If it is determined in step S20 that they do not match, the information processing device 1 returns the process to step S15 again.
  • step S12 the display control unit 16 performs the process based on steps S12 to S23 described above on all the element line segments included in the skeleton line of the stroke. It is determined whether or not it is (S24).
  • step S24 If it is determined in step S24 that the process has not been performed on all the line segment elements, the information processing device 1 returns the process to step S11 again. On the other hand, when it is determined in step S24 that the process has been performed on all the line segment elements, the information processing device 1 returns the process to step S6 in FIG.
  • FIG. 9 is a diagram for explaining the effect of the tone correction.
  • FIG. 9A shows characters (parts) when the gradation correction is not performed
  • FIG. 9B shows characters (parts) when the gradation correction is performed.
  • FIG. 9A shows characters (parts) when the gradation correction is not performed
  • FIG. 9B shows characters (parts) when the gradation correction is performed.
  • the information processing device 1 since the information processing device 1 performs gradation correction in accordance with the distance
  • the information processing apparatus 1 since the information processing apparatus 1 calculates the gradation of the pixel according to only the distance
  • the first method is a method of drawing character data directly in the second memory 14. That is, using the data already stored in the second memory 14 (that is, the video data being displayed) as the character background data, the information processing apparatus 1 performs the gradation correction (hereinafter, the direct drawing method) It is called).
  • the degree of character color contribution which will be described later, is stored in a memory other than the second memory 14 (hereinafter referred to as temporary memory), and the information processing apparatus 1 uses the degree of character color contribution.
  • This is a method of updating data (video data being displayed) stored in the second memory 14 (hereinafter referred to as an indirect drawing method).
  • FIG. 10 is a flowchart showing the flow of processing when the direct drawing method is performed. Specifically, it is a flow chart showing processing in step S18 and step S22 in the flow of FIG.
  • the “character color contribution degree” means that the color (specifically, the value of each color component) of the character before gradation correction by the gradation correction unit 21 is 100, and the character after gradation correction is before gradation correction. It is a value indicating how much the color of the character contributes.
  • the degree of character color contribution is 100 ⁇ (1 ⁇
  • the display control unit 16 specifies the update target pixel in the second memory 14 and obtains the character color contribution degree corresponding to the pixel (S31). After step S31, the display control unit 16 determines whether the degree of character color contribution is 100 or not (S32).
  • the gradation correction unit 21 updates the pixel value of the update target pixel with the pixel value (Rf, Gf, Bf) (S33). That is, the gradation correction unit 21 updates the pixel to be updated with the character color itself.
  • the gradation correction unit 21 acquires the pixel value (Rb, Gb, Bb) of the update target pixel (S34). After step S34, the gradation correction unit 21 uses the pixel values (Rf, Gf, and Bf), the pixel values (Rb, Gb, and Bb), and the calculated character color contribution factor to calculate the corrected pixels. A value is calculated (S35). The calculation of the pixel value after correction is omitted here because it uses the above-mentioned equations (1) to (3) and equations (4) to (6). In Equations (1) to (6), calculation is performed using a value obtained by dividing the degree of character color contribution by 100 (that is, 1 ⁇
  • the gradation correction unit 21 updates the pixel value of the update target pixel with the pixel value after correction (S36). Thereby, the gradation of the pixel Pa and the pixel Pd in FIG. 3 is corrected.
  • FIG. 11 is a flowchart showing a part of the flow of processing when performing the indirect drawing method.
  • the display control unit 16 specifies one update target pixel in the temporary memory, and obtains the character color contribution degree K1 corresponding to the pixel (S41).
  • the display control unit 16 determines whether the character color contribution degree of the update target pixel is already stored in the temporary memory (S42).
  • control unit 15 determines that the degree of character color contribution K1 determined in step S41 is greater than the degree of character color contribution K2 already stored. It is judged whether it is large (S43). On the other hand, when it is not determined in S42 that the degree of character color contribution is already stored, the information processing device 1 advances the process to step S44.
  • step S43 If it is not determined in step S43 that the value is large, the information processing device 1 causes the process to proceed to step S45. On the other hand, when it is determined in step S43 that the value is large, the information processing device 1 causes the process to proceed to step S44. In step S44, the character color contribution rate of the update target pixel is set to K1. Then, after step S44, the information processing device 1 causes the process to proceed to step S45.
  • step S45 display control unit 16 determines whether or not the process has been performed on all update target pixels included in one character. If it is determined in step S45 that the process has not been performed on all update target pixels, the information processing device 1 returns the process to S41 again.
  • step S45 when it is determined in step S45 that the process has been performed on all update target pixels, the information processing device 1 calculates the pixel value of each pixel using the character color contribution degree stored in the temporary memory.
  • the pixel value in the second memory 14 is updated using the calculated pixel value (S46). Gradation correction is performed by this updating process. Since the information processing apparatus 1 uses the above-described equations (1) to (3) and equations (4) to (6) for the calculation of the pixel value, the description will not be repeated here.
  • the indirect drawing method is configured to update the pixel values in the second memory 14 after obtaining the character color contribution degree of all the update target pixels, and therefore differs from the flow in FIG. 7 in which drawing is performed for each stroke. It will be.
  • the information processing apparatus 1 uses the direct drawing method, the information processing apparatus 1 does not need a temporary memory as used in the indirect drawing method. Further, since transfer from the temporary memory to the second memory 14 is also unnecessary, the information processing apparatus 1 can speed up the process.
  • the information processing apparatus 1 uses the indirect drawing method, the information processing apparatus 1 generates a character color at another point where the element line segments cross or where the element line segments are crowded. Can be prevented from becoming higher than the gradation of.
  • the information processing apparatus 1 performs the above-described gradation correction by the gradation correction unit 21 whether the element line segment is parallel to the X axis or parallel to the Y axis.
  • the symbol drawn by the element segment parallel to the X axis (part of the symbol) and the symbol drawn by the element segment parallel to the Y axis (part of the symbol) Jaggies do not occur.
  • the information processing device 1 perform the above-described gradation correction only for the element line segment having an inclination with respect to the X axis and the Y axis (that is, an oblique line segment).
  • the parallel determination unit 30 determines whether each element line segment is a straight line parallel to the X axis or the Y axis based on the scaled skeleton data (information indicating a skeleton line).
  • the correction limiting unit 31 limits the correction so that the gradation correction described above is not performed for an element pixel group including pixels overlapping with the element line segment determined to be parallel by the parallel determination unit 30.
  • FIG. 12 is a diagram showing a part of symbols obtained when the limitation of correction is performed using the parallel determination unit 30 and the correction limitation unit 31. As shown in FIG. Note that, in the drawing, dotted lines are lines connecting center points of pixels.
  • the element line segment L3 is a diagonal line segment
  • the element line segment L4 is a line segment parallel to the Y axis.
  • the gradation correction unit 21 performs gradation correction. Then, the line width is increased from 3 to 4 by the correction.
  • the correction limiting unit 31 limits the correction of the gradation.
  • the information processing apparatus 1 can not make the shaggy visible for the oblique character portion, and can prevent the character from being blurred for the character portion parallel to the Y axis. Furthermore, for the element line segment parallel to the X axis and the Y axis, since the calculation of the gradation correction based on the distance
  • the correction limiting unit 31 determines the pixel at one end of the element pixel group including the pixel overlapping with the element line segment determined to be parallel by the parallel determination unit 30 (for example, the pixel Pj in FIG. 12). For the pixels adjacent to the other end of the element pixel group and not included in the element pixel group (for example, the pixel Pk in the figure), the correction by the gradation correction unit 21 is performed. It can be said that the configuration is to limit the
  • FIG. 13 is a diagram showing a part of a character drawn using an oblique element line segment L5 and an element line segment L6 continuous to the element line segment L5. In the same figure, the above-mentioned correction limitation by the correction limiting unit 31 is performed.
  • the information processing device 1 corrects the gradation also for the pixel Pm and the pixel Pn. Therefore, in a region on the superior angle side (side where the angle is 180 degrees or more) of the angles formed by the element line segment L5 and the element line segment L6, a convex portion with respect to the outline of the symbol parallel to the Y axis Is formed. Because of this, the appearance of the character becomes worse.
  • the information processing apparatus 1 prevents the appearance of the characters from being deteriorated by changing a part of the function of the correction limiting unit 31.
  • FIG. 14 is a view showing a part of characters obtained by changing the function of the correction limiting unit 31 in this manner.
  • the information processing apparatus 1 draws a part of a character using the element line segment L5 and the element line segment L6, as shown in the figure, the information processing apparatus 1 includes at least a pixel Pm and a pixel Pn. No gradation correction is performed for.
  • FIG. 15 is a diagram showing each element line segment used when drawing a certain stroke.
  • three element line segments L10, L11 and L12 are described.
  • the start point of the element line segment L10 is the point H
  • the end point of the element line segment L10 is the end point of the element line segment L11
  • the element line segment L12 is a point J
  • the end point of the element line L12 is a point K.
  • the information processing apparatus 1 first draws a stroke based on the element line segment L10, then draws a stroke based on the element line segment L11, and finally draws a stroke based on the element line segment L12. Do.
  • the element line segment L10 is referred to as "element line segment immediately before drawing object", and the element line segment L12 is It is called “element line segment immediately after”.
  • a point on the element line segment L11 used for the drawing, among the above-described processing target points G, a point S to be processed first, and a process at the end The point to be performed is indicated as point E.
  • the inclination of the element line segment L11 is set to 1 or more.
  • FIG. 16 is a flowchart showing details of processing in stroke drawing (step S5 in FIG. 7).
  • the display control unit 16 acquires coordinate values of the element line segment L10 (that is, coordinate values of the point H and the point I in FIG. 15) from the scaled skeleton data (S51). After step S51, the distance calculation unit 20 calculates the inclination of the element line segment L10 (S52). Then, after step S52, the distance calculation unit 20 calculates coordinate values of the point S and the point E (S53). Furthermore, after step S53, the distance calculation unit 20 sets the processing target point G as the point S (S54).
  • the display control unit 16 sets the upper limit Xmax and the lower limit Xmin in the X-axis direction (S55).
  • the reason why the display control unit 16 sets the upper limit value and the lower limit value in the X-axis direction is that the inclination of the element line segment L10 is 1 or more, and a line width is formed in the X-axis direction.
  • the distance calculation unit 20 determines whether the line width is an odd number (S56).
  • the line width is a line width before tone correction.
  • the distance calculation unit 20 obtains the X coordinate value of the central point of the pixel (that is, the central point C) closest to the processing target point G (S57).
  • the coordinate values of the processing target point G are denoted by (Xg, Yg)
  • the coordinate values of the central point C are denoted by (Xc, Yc).
  • Yg and Yc have the same value. That is, the coordinate value of the central point C can also be expressed as (Xc, Yg).
  • the distance calculation unit 20 determines whether Xg is not less than Xmin and not more than Xmax (S58). If it is determined in step S58 that Xmin or more and Xmax or less, the distance calculation unit 20 calculates the distance
  • step S58 determines that the point (Xc, Yg) is a pixel group (element) consisting of continuous pixels in the line width direction.
  • the display control unit 16 draws a part of the stroke without performing the gradation correction as in the related art, as the center point of the pixel group (S62). That is, without the gradation correction being performed on the pixel Pn and the pixel Pm illustrated in FIG. 14, the information processing device 1 can keep the pixels Pn and Pm as the background color. Therefore, the information processing apparatus 1 can obtain good looking characters.
  • step S62 the information processing device 1 causes the process to proceed to step S61.
  • the distance calculation unit 20 obtains the coordinate value of the center point (that is, the center point C) of the boundary line segment closest to the processing target point G. (S63).
  • the distance calculation unit 20 determines whether Xg is not less than Xmin and not more than Xmax (S64). If it is determined in step S64 that Xmin or more and Xmax or less, the distance calculation unit 20 calculates the distance
  • step S64 when it is not determined in step S64 that Xmin or more and Xmax or less, the information processing device 1 proceeds with the process to step S62.
  • step S61 the distance calculation unit 20 determines whether the coordinate value of the processing target point G is the same as the coordinate value of the point E (S67). If it is not determined in step S67 that they are the same, the information processing device 1 returns the process to step S56 again. On the other hand, if it is determined in step S67 that they are the same, the display control unit 16 determines whether or not the process has been performed for all of the element line segments L10, L11, and L12 included in the one stroke ( S68).
  • step S68 If it is not determined in step S68 that the process has been performed on all the element line segments, the information processing device 1 returns the process to step S51 again. On the other hand, when it is determined in step S68 that the processing has been performed for all the element line segments, the information processing apparatus 1 ends the processing.
  • FIG. 17 is a flowchart showing a setting method of the upper limit value and the lower limit value in step S55 of FIG. Note that, for convenience of description, setting of the upper limit value and the lower limit value of the element line segment L11 will be described as an example.
  • the display control unit 16 determines, based on the coordinate values of the point H and the point I, whether or not the element line segment L10 immediately before is a line segment (horizontal line or vertical line) parallel to the X axis or Y axis. It judges (S71). If it is determined in step S71 that the line segments are parallel, the display control unit 16 determines whether the line width is an odd number (S72). Here, the line width is a line width before tone correction.
  • step S72 If it is determined in step S72 that the number is an odd number, the display control unit 16 sets the lower limit value Xmin to the X coordinate value of the coordinate of the central point of the pixel including the point S (S73). Thereafter, the information processing device 1 proceeds with the process to step S76. On the other hand, when it is not determined to be odd in step S72, the display control unit 16 sets the lower limit value Xmin to the X coordinate value of the boundary line segment closest to the point S (S74). Thereafter, the information processing device 1 proceeds with the process to step S56.
  • step S51 If it is not determined in step S51 that the line segments are parallel, the display control unit 16 sets the lower limit value Xmin to a minimum value among the values that can be taken by Xg (S75). Thereafter, the information processing device 1 proceeds with the process to step S76.
  • step S76 the display control unit 16 determines, based on the coordinate values of the point J and the point K, whether the element line segment L12 immediately after it is a line segment parallel to the X axis or the Y axis. If it is determined in step S76 that the line segments are parallel, the display control unit 16 determines whether the line width is an odd number (S77). Here, the line width is a line width before tone correction.
  • step S77 If it is determined in step S77 that the number is an odd number, the display control unit 16 sets the upper limit value Xmax to the X coordinate value of the coordinate of the central point of the pixel including the point E (S78). Thereafter, the information processing device 1 ends the process. On the other hand, if it is not determined to be odd in step S77, the display control unit 16 sets the upper limit value Xmax to the X coordinate value of the boundary line segment closest to the point E (S79). Thereafter, the information processing device 1 ends the process.
  • step S77 If it is not determined in step S77 that the line segments are parallel, the display control unit 16 sets the upper limit value Xmax to a maximum value among the values that can be taken by Xg (S80). Thereafter, the information processing device 1 ends the process.
  • FIG. 18 is a diagram showing an example of setting the upper limit value and an example of setting the lower limit value.
  • 18 (a) is a diagram showing the upper limit value Xmax for the X coordinate as shown in the flow of FIG. 17, and
  • FIG. 18 (b) is the X coordinate as shown in the flow of FIG. Is a diagram showing a lower limit value Xmin for.
  • FIG. 18C is a diagram showing the upper limit Ymax of the Y coordinate
  • FIG. 18B is a diagram showing the lower limit Ymin of the Y coordinate.
  • a line passing each center point in each element pixel group including pixels overlapping with an element line segment parallel to the X axis or Y axis (for example, a vertical line or a horizontal line in FIG. 18) 1 virtual line) That is, the imaginary line L15 is a line segment parallel to the X axis if the element line segment is parallel to the X axis, and is a line segment parallel to the Y axis if the element line segment is parallel to the Y axis.
  • the thick dotted lines in FIGS. 13 and 14 correspond to the imaginary line L15.
  • the virtual line L16 is a line in the line width direction (the X-axis direction in FIGS. 3 to 6) and passes through the centers of the respective pixels, similarly to the above-described virtual line L2.
  • the virtual line L16 is a line parallel to the X-axis direction.
  • the correction limiting unit 31 determines that the position of the intersection of the virtual line L16 and the other element line segment satisfies the predetermined relationship with the position of the virtual line L15. , It can be said that the following configuration. That is, the correction limiting unit 31 determines that the pixel at one end of the element pixel group including the pixel overlapping the intersection, the pixel at the other end of the element pixel group, and the pixel adjacent in the direction of the line width At the same time, it can be said that the correction of gradation by the gradation correction unit 21 is limited for the pixels not included in the element pixel group.
  • the correction limiting unit 31 limits the correction of gradation for a predetermined pixel (for example, the pixel Pm and the pixel Pn in FIG. 14). .
  • a configuration will be described in which the information processing device 1 uses the line segment correction unit 32 in order to cause the information processing device 1 to similarly display visually pleasing characters.
  • the line segment correction unit 32 changes the length of an element line segment without changing the inclination of the element line segment for a predetermined element line segment. Specifically, the line segment correction unit 32 changes the length of the element line segment by changing the coordinate value of the start point of each element line segment and the coordinate value of the end point.
  • FIG. 19 is a diagram showing element line segments L20 and L21 before correction by the line segment correction unit 32, and element line segments L20 ′ and L21 ′ after correction.
  • FIG. 19A shows an element line segment before correction
  • FIG. 19B shows an element line segment after correction.
  • the element line segment L20 and the element line segment L21 are continuous line segments.
  • the element line segment L21 is a line segment parallel to the Y axis. Further, the element line segment L20 has a predetermined inclination with respect to the element line segment L21. Furthermore, in the figure, the element line segment L20 has an inclination of 1 or more with respect to the X axis.
  • the start point of the element line segment L20 is a point T
  • the end point of the element line segment L20 is a point U
  • the start point of the element line segment L21 is a point V .
  • the information processing apparatus 1 corrects the element line segment L20 to an element line segment L20 ′ illustrated in FIG. 19B, and corrects the element line segment L21 to an element line segment L21 ′ illustrated in FIG.
  • the specific method to carry out will be described. First, correction of the element line segment L20 will be described.
  • FIG. 20 is a diagram showing an element line segment L20 before correction and an element line segment L20 ′ after correction.
  • FIG. 20A shows an element line segment L20 before correction
  • FIG. 20B shows an element line segment L20 ′ after correction.
  • a line passing through each central point in each element pixel group including pixels overlapping with the element line segment L21 parallel to the Y axis is referred to as “virtual line L30. (First virtual line) Further, an intersection point of the imaginary line L30 and the element line segment L20 is referred to as an “intersection point Q”.
  • the line segment correction unit 32 corrects the length of the element line segment L20 to such a length that only the pixel adjacent to the pixel including the intersection point Q is reached. For example, in the example shown in FIG. 20B, the line segment correction unit 32 changes the X coordinate value of the end point of the element line segment L20 from the X coordinate value of the intersection point Q to the Then, the Y coordinate value of the end point is corrected to the value obtained by subtracting 1 from the Y coordinate value of the intersection point Q. By the correction, the line segment correction unit 32 corrects the length of the element line segment L20 to such a length that only the pixel adjacent to the pixel including the intersection point Q is reached.
  • FIG. 21 is a diagram showing an element line segment L21 before correction and an element line segment L21 ′ after correction.
  • FIG. 21A shows an element line segment L21 before correction
  • FIG. 21B shows an element line segment L21 ′ after correction.
  • the line segment correction unit 32 corrects the length of the element line segment L21 to a length that reaches the pixel including the intersection point Q. For example, in the example illustrated in FIG. 21B, the line segment correction unit 32 performs the correction to reduce the Y coordinate value of the start point of the element line segment L21 by 1 to obtain the length of the element line segment L21 as The length to reach the pixel including the intersection point Q is corrected. That is, the start point of the element line segment L21 'after correcting the element line segment L21 is the point U'.
  • FIG. 22 is a flow chart showing a process flow when correcting the lengths of the element line segments shown in FIG. 20 and FIG. The figure is also a flowchart showing the details of the process in the stroke drawing (step S5 in FIG. 7).
  • the distance calculation unit 20 acquires the coordinate values of the start point and the end point of each element line segment (the coordinate values of the point T, the point U and the point V in FIG. 19) from the scaled skeleton data (S91) ).
  • the line segment correction unit 32 corrects the coordinate values of the start point and / or the end point (S92). The details of step S92 will be described later.
  • step S92 the line segment correction unit 32 generates an element line segment using the corrected coordinate value, and based on the element line segment, the gradation corresponding to the distance
  • step S93 the display control unit 16 determines whether or not the process based on the above-described steps S92 and S93 has been performed on all the element line segments included in the skeletal line of the stroke (S94). ).
  • step S94 If it is determined in step S94 that processing has not been performed on all line segment elements, the information processing device 1 returns the process to step S91 again. On the other hand, when it is determined in step S94 that the process has been performed on all line segment elements, the information processing apparatus 1 ends the process shown in FIG. 22 and returns the process to step S6 in FIG. .
  • FIG. 23 is a flowchart showing the flow of processing in step S92.
  • the line segment correction unit 32 determines whether the element line segment is a diagonal line (that is, a line not parallel to the X axis or the Y axis) based on the coordinate values of the start point and the end point of the element line segment S101).
  • step S101 If it is determined in step S101 that there is a diagonal line, the line segment correction unit 32 corrects the start point and / or the end point of the element line segment of the diagonal line (S102). Then, after step S102, the information processing apparatus 1 ends the process.
  • step S101 when it is not determined in step S101 that the line segment is a diagonal line, the line segment correction unit 32 corrects the start point and / or the end point of the element line segment that is not the diagonal line (S103). Then, after step S103, the information processing device 1 ends the process.
  • FIG. 24 is a flow chart showing the flow of processing in step S102. That is, FIG. 24 is also a flowchart showing a flow of correction processing for the element line segment L20.
  • the display control unit 16 determines whether the immediately preceding element line segment is a line segment parallel to the X axis or the Y axis based on the coordinate values of the start point and the end point of the immediately preceding element line segment. (S111). In addition, when there is no element line segment immediately before (for example, in the case of the element line segment L20), the display control unit 16 determines that the line segments are not parallel.
  • step S111 If it is determined in step S111 that the line segments are parallel, the display control unit 16 determines whether the line width is an odd number (S112). Here, the line width is a line width before tone correction. On the other hand, when it is not determined in step S111 that the line segments are parallel, the information processing device 1 causes the process to proceed to step S117.
  • step S112 If it is determined in step S112 that the number is an odd number, the display control unit 16 sets the lower limit value Xmin in the X axis direction to the X coordinate value of the coordinate of the center point of the pixel including the start point (S113). Thereafter, the information processing device 1 causes the process to proceed to step S115. On the other hand, when it is not determined to be an odd number in step S112, the display control unit 16 sets the lower limit value Xmin to the X coordinate value of the boundary line segment closest to the start point (S114). Thereafter, the information processing device 1 causes the process to proceed to step S115.
  • step S117 the display control unit 16 determines, based on the coordinate values of the start point and the end point of the element segment immediately after that, whether or not the element segment immediately after is a line segment parallel to the X axis or Y axis. Judge based on. In addition, when there is no element line segment immediately after, the display control unit 16 determines that the line segments are not parallel.
  • step S117 If it is determined in step S117 that the line segments are parallel, the display control unit 16 determines whether the line width is an odd number (S118).
  • the line width is a line width before tone correction.
  • the information processing apparatus 1 ends the process.
  • step S118 If it is determined in step S118 that the number is an odd number, the display control unit 16 sets the upper limit value Xmax to the X coordinate value of the coordinate of the center point of the pixel including the end point (S119). Thereafter, the information processing device 1 proceeds with the process to step S121. On the other hand, when it is not determined to be odd in step S118, the display control unit 16 sets the upper limit value Xmax to the X coordinate value of the boundary line segment closest to the end point (S120). Thereafter, the information processing device 1 proceeds with the process to step S121.
  • FIG. 25 is a flow chart showing the flow of processing in step S103. That is, FIG. 25 is also a flowchart showing a flow of correction processing for the element line segment L21.
  • the display control unit 16 determines whether the immediately preceding element line segment is a hatched line (that is, a line segment not parallel to the X axis or the Y axis), the coordinates of the start point and the end point of the element line segment immediately before It judges based on a value (S131). In addition, when there is no element line segment immediately before, the display control unit 16 determines that it is not a diagonal line.
  • a hatched line that is, a line segment not parallel to the X axis or the Y axis
  • step S131 If it is determined in step S131 that the line width is hatched, the display control unit 16 determines whether the line width is an odd number (S132). Here, the line width is a line width before tone correction. On the other hand, when it is not determined in step S131 that the line segments are parallel, the information processing device 1 causes the process to proceed to step S137.
  • step S132 If it is determined in step S132 that the number is an odd number, the display control unit 16 sets the upper limit value Xmax in the X-axis direction to the X coordinate value of the coordinate of the central point of the pixel including the start point (S133). Thereafter, the information processing device 1 causes the process to proceed to step S135. On the other hand, when it is not determined to be an odd number in step S132, the display control unit 16 sets the upper limit value Xmax to the X coordinate value of the boundary line segment closest to the start point (S134). Thereafter, the information processing device 1 causes the process to proceed to step S135.
  • step S137 the display control unit 16 determines whether or not the element segment immediately after that is a diagonal line based on the coordinate values of the start point and the end point of the element segment immediately after that. In addition, when there is no element line segment immediately after (for example, in the case of the element line segment L21), the display control unit 16 determines that it is not a diagonal line.
  • step S137 If it is determined in step S137 that the line width is hatched, the display control unit 16 determines whether the line width is an odd number (S138).
  • the line width is a line width before tone correction.
  • the information processing device 1 ends the process.
  • step S138 If it is determined in step S138 that the number is an odd number, the display control unit 16 sets the lower limit value Xmin to the X coordinate value of the coordinate of the central point of the pixel including the end point (S139). Thereafter, the information processing device 1 proceeds with the process to step S141. On the other hand, if it is not determined to be odd in step S138, the display control unit 16 sets the lower limit value Xmin to the X coordinate value of the boundary line segment closest to the end point (S140). Thereafter, the information processing device 1 proceeds with the process to step S141.
  • FIG. 26 is a diagram showing characters displayed when the line segment correction unit 32 corrects the start point and / or the end point of the element line segment as described above.
  • 26 (a) shows the letter M
  • FIG. 26 (b) shows the letter W.
  • white lines (line segments) are lines formed by collecting a plurality of element line segments.
  • the information processing apparatus 1 can display characters with a good appearance by correction using the line segment correction unit 32.
  • the information processing device 1 corrects the start point and the end point of the element line segment in advance. Therefore, it is not necessary to determine whether the upper limit value or the lower limit value as described above is exceeded. Therefore, the information processing apparatus 1 can shorten the time required for display as compared with the processing method described based on FIGS. 15 to 18.
  • FIG. 3 a configuration in which gradation correction is performed also on a pixel Pd adjacent to an element pixel group (a pixel group consisting of a pixel Pa, a pixel Pb and a pixel Pc) is exemplified.
  • the present invention is not limited to this, and the information processing apparatus 1 may have a configuration in which the gradation is not corrected for the pixel Pd. Further, in this case, the information processing apparatus 1 may be configured to correct the gradation of the pixel Pc instead of correcting the gradation of the pixel Pa.
  • the configuration using the RGB color model has been described as an example, but the present invention is not limited to this. It may be a color model using additive color mixture.

Abstract

An information processing device enables shaggy to be inconspicuous in a short processing time without using data such as in a look-up table. The information processing device (1) includes a display control section (16) for determining the gray scale of the displaying pixels out of the pixels. The display control section (16) includes a distance calculating subsection (20), a gray-scale correcting subsection (21), and a display data generating subsection (22). A group of displaying pixels of one column arrayed in the direction of the line width, which are part of pixels constituting the displaying pixels of a symbol, is defined as an element pixel group. The distance calculating subsection (20) calculates the distance in the direction of the line width between an element line segment and the center point of each element pixel group including pixels overlapping with the element line segment. The gray-scale correcting subsection (21) corrects the gray scale of the pixel at one end included in the element pixel group containing the center point to a gray scale which is between a specified gray scale and the gray scale of the background of the displayed symbol and which corresponds to the calculated distance. The display data generating subsection (22) generates display data for displaying the symbol on a display screen according to the correction by the gray-scale correcting subsection (21).

Description

情報処理装置、情報処理方法、およびプログラムINFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND PROGRAM
 本発明は、ストロークフォントによって記号を表示画面に表示させることが可能な情報処理装置、情報処理方法、およびプログラムに関する。 The present invention relates to an information processing apparatus capable of displaying a symbol on a display screen by a stroke font, an information processing method, and a program.
 従来より、スケーラブルフォントの一種であるストロークフォントが知られている。スクロールフォントとは、文字の形をコンピュータ上で表現するためのデータ形式の一つである。また、スクロールフォントは、文字の形状を、中心線(骨格線)のパラメータ(ベクタデータ)として表現する形式でもある。 BACKGROUND Conventionally, a stroke font, which is a type of scalable font, is known. The scroll font is one of the data formats for representing the shape of characters on a computer. In addition, the scroll font is also a form that expresses the shape of a character as a parameter (vector data) of a center line (skeleton line).
 例えば、特開2005-24987号公報(特許文献1)には、スクロールフォントを用いた文字表示装置が開示されている。 For example, Japanese Patent Application Laid-Open No. 2005-24987 (Patent Document 1) discloses a character display device using a scroll font.
 この文字表示装置においては、スケルトンデータと呼ばれる文字の骨格を示したデータ(つまり、ストロークフォント)に基づいて、文字を表示画面に表示させている。 In this character display device, characters are displayed on the display screen based on data (i.e., a stroke font) indicating a skeleton of the character called skeleton data.
 図27は、上記スケルトンデータのデータ構造を示した図である。同図に示すとおり、スケルトンデータ100は、文字の種別を区別するための文字コード101と、一つの文字を構成するストロークの数を示すストローク数102と、各ストロークに対応するストローク情報103とが含まれている。なお、この例では、一つのストロークが、文字の画数のうち一画分に対応する。言い換えれば、ストロークとは、表示画面に表示される線幅を有する文字の一部でもある。 FIG. 27 shows the data structure of the skeleton data. As shown in the figure, the skeleton data 100 includes a character code 101 for distinguishing types of characters, a stroke number 102 indicating the number of strokes constituting one character, and stroke information 103 corresponding to each stroke. include. In this example, one stroke corresponds to one fraction of the number of strokes of characters. In other words, a stroke is also part of a character having a line width displayed on the display screen.
 また、ストローク情報103には、ストロークを構成する複数の点の座標の数を示す座標の数104と、ストロークを構成する複数の点の座標をぞれぞれ示す複数の座標データ105…とが含まれている。 The stroke information 103 includes the number 104 of coordinates indicating the number of coordinates of a plurality of points constituting the stroke, and a plurality of coordinate data 105 each indicating the coordinates of a plurality of points constituting the stroke. include.
 図28は、「木」といった漢字(文字)に関するスケルトンデータをデータ構造を示した図である。同図に示すとおり、「木」に関するスケルトンデータは、4つのストローク情報を含んでいる。言い換えれば、「木」に関するスケルトンデータは、4つのストロークの骨格線を示したデータ含んでいる。同図では、各ストローク情報に対応するストロークの骨格線を、ストローク#1~ストローク#4として表示している。 FIG. 28 is a diagram showing a data structure of skeleton data regarding a kanji (character) such as "tree". As shown in the figure, skeleton data on "tree" includes four pieces of stroke information. In other words, skeleton data on "trees" includes data indicating skeleton lines of four strokes. In the figure, the skeletal lines of the strokes corresponding to each piece of stroke information are displayed as strokes # 1 to # 4.
 例えば、ストローク#1は、始点(4,192)と終点(245,192)とを結ぶ線分として定義されている。また、ストローク#3は、始点(121,192)と点(97,141)とを結ぶ線分と、点(97,141)と点(72,103)とを結ぶ線分と、点(72,103)と点(41,69)とを結ぶ線分と、点(41,69)と終点(0,42)とを結ぶ線分とからなる折線として定義されている。図29は、漢字「木」の骨格を示した図28のスケルトンデータを座標平面上に示した図である。 For example, the stroke # 1 is defined as a line connecting the start point (4, 192) and the end point (245, 192). Stroke # 3 is a line connecting the start point (121, 192) and the point (97, 141), a line connecting the point (97, 141) and the point (72, 103), and a point (72). , 103) and the point (41, 69), and a line connecting the point (41, 69) and the end point (0, 42). FIG. 29 is a diagram showing the skeleton data of FIG. 28 showing the skeleton of the kanji character "tree" on a coordinate plane.
 特許文献1では、文字表示装置が記憶装置からスケルトンデータ100を読み出した後、文字表示装置は、指定された文字サイズにしたがって、当該スケルトンデータの座標データ(座標値)105…をスケーリングする。このスケーリングにより、文字表示装置は、スケルトンデータ100の座標データ105…のために予め設定されていた座標系を、表示画面用の実ピクセル座標系に変換する。 In Patent Document 1, after the character display device reads the skeleton data 100 from the storage device, the character display device scales the coordinate data (coordinate value) 105 of the skeleton data according to the designated character size. By this scaling, the character display device converts the coordinate system previously set for the coordinate data 105 of the skeleton data 100 into the actual pixel coordinate system for the display screen.
 その後、文字表示装置は、スケーリングされることにより得られた骨格線を示した情報を用いて、文字の描画を行う。具体的には、骨格線の要素となる各線分に対して、文字表示装置が所定の線幅を持たせることにより、表示画面に表示させる文字が構成される。 Thereafter, the character display device draws a character using the information indicating the skeletal line obtained by scaling. Specifically, a character to be displayed on the display screen is configured by causing the character display device to have a predetermined line width for each line segment which is an element of the skeletal line.
 図30は、上記線分に対して所定の線幅の持たせた例を示した図である。ここで、図30(a)は、線幅を奇数とした場合の例であり、図30(b)は、線幅を偶数とした場合の例である。そして、文字表示装置が同図に示す太線で囲まれた画素の階調を指定された階調(例えば、背景の階調(例えば、白色)と異なる階調(例えば、黒色))に設定することにより、文字表示装置は、文字を表示画面に視認可能に表示することになる。 FIG. 30 is a diagram showing an example in which a predetermined line width is given to the line segment. Here, FIG. 30 (a) is an example where the line width is odd, and FIG. 30 (b) is an example where the line width is even. Then, the character display device sets the gradation of the pixel surrounded by the thick line shown in the figure to a designated gradation (for example, a gradation (for example, black) different from the gradation of the background (for example, white)) As a result, the character display device displays characters in a visible manner on the display screen.
 しかしながら、このような構成では、図30(a)(b)にも示すとおり、表示画面に文字を表示する際に、斜線に発生する階段状のギザギザ(ジャギー)が目立ってしまう。 However, in such a configuration, as shown in FIGS. 30 (a) and 30 (b), when displaying characters on the display screen, the step-like jaggedness (jaggies) generated in the diagonal lines becomes noticeable.
 一方、特開平8-138067号公報(特許文献2)には、線分の副軸方向に対して複数個の画素データを順次発生させる発生手段と、各画素の輝度低減率を保持するレジスタと、上記発生手段の動作に同期して上記レジスタから必要な低減率データを取り出して各画素データを出力する出力手段とを備えた線分アンチエイリアシング装置が開示されている。 On the other hand, in JP-A-8-138067 (Patent Document 2), a generation means for sequentially generating a plurality of pixel data in the sub-axis direction of a line segment, a register for holding the luminance reduction rate of each pixel and A line segment anti-aliasing apparatus is disclosed which comprises: output means for taking out necessary reduction rate data from the register in synchronization with the operation of the generation means and outputting each pixel data.
 この装置によると、線分表示においてエイリアシングと呼ばれるギザギザの発生を抑えることが可能となる。
特開2005-24987号公報 特開平8-138067号公報
According to this device, it is possible to suppress the occurrence of jaggedness called aliasing in line segment display.
JP 2005-24987 A JP-A-8-138067
 ところで、特許文献2の線分アンチエイリアシング装置は、理論線と描画画素との距離の小数部(同文献におけるd11やd01(同文献の図4および図5参照))に対する低減率をルックアップテーブル(LUT)に保持しており、当該線分アンチエイリアシング装置は、当該LUTを直接参照することにより低減率データを取得する構成となっている(同文献の図4および図5参照)。 By the way, the line segment anti-aliasing device of patent document 2 looks up the reduction rate with respect to the decimal part of the distance between the theoretical line and the drawing pixel (d11 and d01 in the same document (see FIG. 4 and FIG. 5 in the same document)). The line segment anti-aliasing apparatus is configured to acquire reduction rate data by directly referring to the LUT (see FIGS. 4 and 5 of the same document).
 このため、線分アンチエイリアシング装置は、(小数部の取り得る値の数)×(線幅ドット数)個の低減率データをLUTに記憶しておく必要がある。このため、例えば同文献の図5においては、16×3=48バイトの記憶容量が必要になる。 For this reason, the line segment anti-aliasing apparatus needs to store (the number of possible values of the decimal part) × (the number of line width dots) reduction rate data in the LUT. Therefore, for example, in FIG. 5 of the same document, a storage capacity of 16 × 3 = 48 bytes is required.
 また、同文献の線分アンチエイリアシング装置は、LUTで対応している線幅分しか線画像を生成できないため、任意の線幅の線画像を出力できない。仮に、数多くの種類の線幅の線画像を出力可能にしようとすると、線分アンチエイリアシング装置は、膨大な数の低減率データをLUTに保持しなければならない。このため、この場合も、多くの記憶容量が必要になる。 Further, since the line segment anti-aliasing device of the same document can generate a line image only for the line width corresponding to the LUT, it can not output a line image of an arbitrary line width. If it were to be possible to output line images of many types of line widths, the line segment anti-aliasing apparatus would have to hold a huge number of reduction rate data in the LUT. Therefore, also in this case, a large storage capacity is required.
 さらに、同文献では、線に属する全ての画素の輝度値が低減する可能性があるため、この場合、全ての画素について輝度値を低減するための演算が必要になる。 Furthermore, in the document, since there is a possibility that the luminance values of all the pixels belonging to the line are reduced, in this case, an operation for reducing the luminance values of all the pixels is required.
 本発明は上記の問題点に鑑みなされたものであって、その目的は、ルックアップテーブル等のデータを用いることなく、短い処理時間でシャギーを目立たなくさせることが可能な情報処理装置、情報処理方法、およびプログラムを提供することにある。 The present invention has been made in view of the above problems, and an object thereof is an information processing apparatus capable of making a shaggy inconspicuous in a short processing time without using data such as a look-up table, an information processing apparatus A method and a program are provided.
 本発明のある局面に従うと、情報処理装置は、マトリックス状に複数の画素が配された表示画面に、記号を表示させるための情報処理装置であって、記号の骨格を示す情報を記憶する記憶部を備え、骨格を示す情報は、骨格を構成する各骨格線の要素である要素線分を示す情報を含み、骨格を示す情報に基づいて、指定された階調および前記マトリックスの行方向または列方向のいずれかにおいて指定された線幅を有するように前記記号を表示する際に、複数の画素のうちの表示画素の階調を決定する表示制御部をさらに備え、表示制御部は、記号の表示画素を構成する画素群の一部であって、表示画素が線幅の方向に一列に並んだ線幅分の画素群を要素画素群とするとき、要素線分と当該要素線分と重なる画素を含んだ要素画素群の中心点との線幅の方向の距離を、各要素画素群について算出する距離算出部と、中心点を含んだ要素画素群に含まれる一方の端部の画素の階調を、指定された階調と表示される記号の背景の階調との間の階調であって、距離算出部で算出した距離に応じた階調に補正する階調補正部と、階調補正部での補正に基づき、記号を表示画面に表示させるための表示データを生成する表示データ生成部とを含んでいる。 According to an aspect of the present invention, an information processing apparatus is an information processing apparatus for displaying a symbol on a display screen on which a plurality of pixels are arranged in a matrix, and storing information indicating a skeleton of the symbol. The information indicating the skeleton includes information indicating an element line segment which is an element of each skeleton line constituting the skeleton, and based on the information indicating the skeleton, the designated gradation and the row direction of the matrix or The display control unit further includes a display control unit that determines a gradation of a display pixel among the plurality of pixels when the symbol is displayed so as to have a line width specified in any of the column directions. When a pixel group corresponding to a line width in which the display pixels are arranged in a line in the direction of the line width is set as an element pixel group, an element line segment and the element line segment are included. Center of element pixel group including overlapping pixels And a distance calculation unit that calculates the distance in the direction of the line width with respect to each element pixel group, the gradation of the pixel at one end included in the element pixel group including the center point, and the designated gradation Based on the correction by the gradation correction unit, which is a gradation between the gradation of the background of the displayed symbol and the gradation of the background of the displayed symbol, the gradation correction unit corrects the gradation according to the distance calculated by the distance calculation unit. And a display data generation unit for generating display data for displaying the symbol on the display screen.
 また、一方の端部の画素は、前記中心点に対して、当該中心点から前記線幅の方向に前記距離だけ離れた前記要素線分上の点とは反対側に位置する画素であることが好ましい。 In addition, the pixel at one end is a pixel located on the opposite side to the point on the element line segment which is separated from the central point by the distance in the direction of the line width from the central point. Is preferred.
 また、階調補正部は、補正を行った画素を含んだ要素画素群における他方の端部の画素と線幅の方向に隣接する画素であって、当該要素画素群に含まれていない画素についても、記号の階調と当該記号の背景の階調との間の階調であって、距離算出部で算出した距離に応じた階調に補正することが好ましい。 The gradation correction unit is a pixel adjacent to the pixel at the other end of the element pixel group including the corrected pixel and in the direction of the line width and not included in the element pixel group. Also, it is preferable to correct the gray level between the gray level of the symbol and the gray level of the background of the symbol, according to the distance calculated by the distance calculation unit.
 また、階調補正部は、一方の端部の画素については、距離が長くなるにつれて、記号の階調か記背景の階調に近づく補正をし、隣接する画素については、距離が長くなるにつれて、背景の階調から記号の階調に近づく補正をすることが好ましい。 Further, the gradation correction unit corrects the gradation of the symbol or the gradation of the background as the distance increases for the pixels at one end, and the distance increases for the adjacent pixels. It is preferable to make correction that approaches the tone of the symbol from the background tone.
 また、複数の前記要素線分に基づき記号が表示される場合、各要素線分が、行方向または列方向と平行な直線であるか否かを、骨格線を示した情報に基づいて判定する平行判定部と、平行判定部によって平行であると判定された要素線分と重なる画素を含んだ前記要素画素群における一方の端部の画素と、当該要素画素群における他方の端部の画素と線幅の方向に隣接する画素であるとともに当該要素画素群に含まれていない画素とについては、前記階調補正部による補正を制限する補正制限部とを備えることが好ましい。 In addition, when a symbol is displayed based on a plurality of the element line segments, it is determined whether each element line segment is a straight line parallel to the row direction or the column direction based on the information indicating the skeleton line A parallel determination unit, a pixel at one end of the element pixel group including pixels overlapping the element line segment determined to be parallel by the parallel determination unit, and a pixel at the other end of the element pixel group It is preferable that the pixel which is adjacent to the line width direction and which is not included in the element pixel group includes a correction limiting unit which limits the correction by the gradation correction unit.
 また、行方向または列方向に平行な要素線分と、平行な要素線分と連続するとともに当該要素線分に対して傾きを有する他の要素線分とに基づき記号が表示される場合、平行な要素線分と重なる画素を含んだ各要素画素群における各中心点を通る線を第1仮想線とし、他の要素線分と重なる画素を含んだ要素画素群における中心点を通る、第1仮想線と垂直な線を第2仮想線とすると、第2仮想線と他の要素線分との交点の位置と、第1仮想線の位置とが所定の関係を満たす場合、当該交点と重なる画素を含んだ要素画素群における一方の端部の画素と、当該要素画素群に隣接する他方の端部の画素についての階調補正部による階調の補正を制限する補正制限部を備えることが好ましい。 In addition, when the symbol is displayed based on an element line parallel to the row direction or column direction and another element line continuous with the parallel element line and having an inclination with respect to the element line, A line passing through each center point in each element pixel group including pixels overlapping the first element line as a first virtual line, and a center point in an element pixel group including pixels overlapping the other element line segment; Assuming that a line perpendicular to the virtual line is a second virtual line, if the position of the intersection of the second virtual line and the other element segment and the position of the first virtual line satisfy a predetermined relationship, they overlap the intersection A correction limiting unit is provided which limits the correction of gradation by the gradation correction unit with respect to the pixel at one end of the element pixel group including the pixels and the pixel at the other end adjacent to the element pixel group. preferable.
 また、表示画面においてX軸の正方向を行方向とし、Y軸の負方向を列方向とすると、第1仮想線がY軸と平行であって、かつ他の要素線分が第1仮想線よりもX軸の負方向側に存在する場合、所定の関係は、交点のX座標の値が第1仮想線のX座標の値よりも大きいことであることが好ましい。 In the display screen, assuming that the positive direction of the X axis is the row direction and the negative direction of the Y axis is the column direction, the first virtual line is parallel to the Y axis and the other element line segment is the first virtual line. Preferably, the predetermined relationship is that the value of the X coordinate of the point of intersection is greater than the value of the X coordinate of the first virtual line, when it exists more on the negative direction side of the X axis.
 また、表示画面においてX軸の正方向を行方向とし、Y軸の負方向を列方向とすると、第1仮想線がY軸と平行であって、かつ他の要素線分が第1仮想線よりもX軸の正方向側に存在する場合、所定の関係は、交点のX座標の値が第1仮想線のX座標の値よりも小さいことであることが好ましい。 In the display screen, assuming that the positive direction of the X axis is the row direction and the negative direction of the Y axis is the column direction, the first virtual line is parallel to the Y axis and the other element line segment is the first virtual line. Preferably, the predetermined relationship is that the value of the X coordinate of the point of intersection is smaller than the value of the X coordinate of the first virtual line, when it exists more on the positive direction side of the X axis.
 また、表示画面においてX軸の正方向を行方向とし、Y軸の負方向を列方向とすると、第1仮想線がX軸と平行であって、かつ、他の要素線分が第1仮想線よりもY軸の負方向側に存在する場合、所定の関係は、交点のY座標の値が第1仮想線のY座標の値よりも大きいことであることが好ましい。 In the display screen, assuming that the positive direction of the X axis is the row direction and the negative direction of the Y axis is the column direction, the first virtual line is parallel to the X axis and the other element line segment is the first virtual In the case of being on the negative direction side of the Y axis with respect to the line, the predetermined relationship is preferably that the value of the Y coordinate of the intersection is larger than the value of the Y coordinate of the first virtual line.
 また、表示画面においてX軸の正方向を行方向とし、Y軸の負方向を列方向とすると、第1仮想線がX軸と平行であって、かつ、他の要素線分が第1仮想線よりもY軸の正方向側に存在する場合、所定の関係は、交点のY座標の値が第1仮想線のY座標の値よりも小さいことであることが好ましい。 In the display screen, assuming that the positive direction of the X axis is the row direction and the negative direction of the Y axis is the column direction, the first virtual line is parallel to the X axis and the other element line segment is the first virtual In the case of being on the positive direction side of the Y axis with respect to the line, the predetermined relationship is preferably that the value of the Y coordinate of the intersection is smaller than the value of the Y coordinate of the first virtual line.
 また、行方向または列方向に平行な要素線分と、平行な要素線分と連続するとともに当該要素線分に対して傾きを有する他の要素線分とに基づき記号が表示される場合、平行な要素線分と重なる画素を含んだ各要素画素群における各中心点を通る線を第1仮想線とすると、第1要素線分と重なる画素に第1仮想線が重なっており、かつ第1仮想線と第2要素線分とが交わる場合、第2要素線分の長さを、当該交わった点を含む画素に隣接する画素までしか達しない長さに補正するとともに、第1要素線分の長さを、交わった点を含む画素まで達する長さに補正する要素線分補正部を備えることが好ましい。 In addition, when the symbol is displayed based on an element line parallel to the row direction or column direction and another element line continuous with the parallel element line and having an inclination with respect to the element line, Assuming that a line passing through each central point in each element pixel group including pixels overlapping the first element line is a first virtual line, the first imaginary line overlaps the pixel overlapping the first element line, and When the virtual line intersects with the second element line segment, the length of the second element line segment is corrected to a length reaching only the pixel adjacent to the pixel including the intersection point, and the first element line segment It is preferable to include an element line segment correction unit that corrects the length of the image to a length that reaches the pixel including the intersection point.
 また、記号は、加法混色により色が決定されるものであり、階調補正部は、加法混色の原色のそれぞれについて画素値を補正することにより階調の補正を行うことが好ましい。 Further, the symbol is such that the color is determined by the additive color mixture, and the tone correction unit preferably performs the tone correction by correcting the pixel value for each of the additive color primaries.
 本発明の他の局面に従うと、情報処理装置は、マトリックス状に複数の画素が配された表示画面に、記号を表示させるための情報処理装置であって、記憶装置に記憶された記号の骨格を示す情報に基づいて、指定された階調および前記マトリックスの行方向または列方向のいずれかにおいて指定された線幅を有するように表示画面に記号を表示する際に、複数の画素のうちの表示画素の階調を決定する表示制御部を備え、骨格を示す情報は、骨格を構成する各骨格線の要素である要素線分を示す情報を含み、表示制御部は、要素線分として、行方向または列方向と平行な第1要素線分と、当該第1要素線分と連続するとともに当該第1要素線分に対して傾きを有する第2要素線分とを含む記号を表示する際に、指定された階調を補正する階調補正部を含み、階調補正部は、記号の表示画素を構成する画素群の一部であって、第1要素線分と第2要素線分との交点と重なる画素を含んだ線幅の方向に連続した線幅分の画素群を要素画素群とすると、当該要素画素群における端部の画素に線幅の方向に隣接する画素であるとともに当該要素画素群に含まれていない画素であって、連続した両要素線分により形成される角度のうち優角側の領域の画素については、前記階調の補正を行わない。 According to another aspect of the present invention, an information processing apparatus is an information processing apparatus for displaying a symbol on a display screen on which a plurality of pixels are arranged in a matrix, and the skeleton of the symbol stored in the storage device When a symbol is displayed on the display screen so as to have the designated gradation and the designated line width in either the row direction or the column direction of the matrix based on the information indicating The display control unit is configured to determine the gradation of the display pixel, the information indicating the skeleton includes information indicating an element line segment that is an element of each skeleton line that constitutes the skeleton, and the display control unit When displaying a symbol including a first element line segment parallel to the row direction or the column direction, and a second element line segment continuous with the first element line segment and having an inclination with respect to the first element line segment To correct the specified gradation A correction unit, the gradation correction unit is a part of a group of pixels constituting a display pixel of a symbol, and has a line width including a pixel overlapping with an intersection of the first element line segment and the second element line segment; Assuming that a pixel group corresponding to a line width continuous in the direction is an element pixel group, the pixel is a pixel adjacent to the end pixel in the element pixel group in the line width direction and not included in the element pixel group The gradation correction is not performed on the pixels in the region on the dominant side of the angles formed by the two continuous element line segments.
 本発明のさらに他の局面に従うと、情報処理装置は、マトリックス状に複数の画素が配された表示画面に、記号を表示させるための情報処理装置であって、記憶装置に記憶された記号の骨格を示す情報に基づいて、指定された階調および前記マトリックスの行方向または列方向のいずれかにおいて指定された線幅を有するように表示画面に記号を表示する際に、複数の画素のうちの表示画素の階調を決定する表示制御部を備え、骨格を示す情報は、骨格を構成する各骨格線の要素である要素線分を示す情報を含み、表示制御部は、要素線分として、行方向または列方向と平行な第1要素線分と、当該第1要素線分と連続するとともに当該第1要素線分に対して傾きを有する第2要素線分とを含む記号を表示する際に、指定された階調を補正する階調補正部を含み、階調補正部は、第1要素線分と第2要素線分との交点と重なる画素に関して線幅の方向に配された画素であって、連続した両要素線分により形成される角度のうち優角側の領域の画素については、線幅を太くするような階調の補正を行わない。 According to still another aspect of the present invention, an information processing apparatus is an information processing apparatus for displaying a symbol on a display screen in which a plurality of pixels are arranged in a matrix, and the information processing device is a symbol stored in the storage device. When displaying a symbol on the display screen so as to have the designated gradation and the designated line width in either the row direction or the column direction of the matrix based on the information indicating the skeleton, among the plurality of pixels The information indicating the skeleton includes information indicating an element line segment which is an element of each skeleton line constituting the frame, and the display control unit , A symbol including a first element line segment parallel to the row direction or the column direction, and a second element line segment continuous with the first element line segment and having an inclination with respect to the first element line segment Correct the specified gradation when The gradation correction unit is a pixel arranged in the direction of the line width with respect to the pixel overlapping the intersection of the first element line segment and the second element Among the angles formed by the division, gradation correction such as thickening the line width is not performed for pixels in the region on the dominant side.
 また、表示制御部は、記号の表示画素を構成する画素群の一部であって、表示画素が線幅の方向に一列に並んだ線幅分の画素群を要素画素群とするとき、要素線分と当該要素線分と重なる画素を含んだ要素画素群の中心点との線幅の方向の距離を、各要素画素群について算出する距離算出部を、さらに備え、階調補正部は、要素画素群の一方の端部の画素と、当該要素画素群に隣接する他方の端部の画素と線幅の方向に隣接する画素であるとともに当該要素画素群に含まれていない画素については、指定された階調と表示される記号の背景の階調との間の階調であって、距離算出部で算出した距離に応じた階調に補正することが好ましい。 In addition, when the display control unit is a part of a pixel group constituting a display pixel of a symbol and the display pixel is a pixel group of a line width in which the display pixels are arranged in a line in the line width direction, The gradation correction unit further includes a distance calculation unit that calculates, for each element pixel group, the distance in the direction of the line width between the line segment and the central point of the element pixel group including pixels overlapping the element line segment. The pixels adjacent to the pixel at one end of the element pixel group and the pixels at the other end adjacent to the element pixel group in the line width direction and not included in the element pixel group are as follows: It is preferable that the gradation between the designated gradation and the gradation of the background of the displayed symbol be corrected according to the distance calculated by the distance calculation unit.
 本発明のさらに他の局面に従うと、情報処理方法は、記号の骨格を示した情報に基づき、マトリックス状に画素が配された表示画面に、指定された階調および前記マトリックスの行方向または列方向のいずれかにおいて指定された線幅を有する記号を表示させる情報処理方法であって、記号の表示画素を構成する構成する画素群の一部であって、表示画素が線幅の方向に一列に並んだ線幅分の画素群を要素画素群とするとき、骨格を構成する骨格線の要素である要素線分と、当該要素線分と重なる表示画素を含んだ要素画素群における中心点との、線幅の方向における距離を算出するステップと、中心点を含んだ要素画素群に含まれる一方の端部の画素の階調を、記号の階調と当該記号の背景の階調との間の階調であって、距離算出ステップで算出した距離に応じた階調に補正するステップと、補正に基づき、記号を表示画面に表示させるための表示データを生成するステップとを含む。 According to still another aspect of the present invention, the information processing method is based on the information indicating the skeleton of the symbol, on the display screen in which the pixels are arranged in a matrix, the designated gradation and the row direction or column of the matrix. An information processing method for displaying a symbol having a line width designated in any of the directions, which is a part of a pixel group constituting a display pixel of the symbol, wherein the display pixels are arranged in one line in the direction of the line width. When a pixel group corresponding to the line width is set as an element pixel group, an element line segment which is an element of a skeleton line constituting a skeleton and a central point in an element pixel group including display pixels overlapping the element line segment Calculating the distance in the direction of the line width, the tone of the pixel at one end included in the element pixel group including the center point, the tone of the symbol and the tone of the background of the symbol And the distance calculation step In comprising a step of correcting the gradation corresponding to the calculated distance, based on the correction, and generating display data for displaying the symbol on the display screen.
 本発明のさらに他の局面に従うと、プログラムは、マトリックス状に画素が配された表示画面を備えた情報処理装置を制御するためのプログラムであり、プログラムは、記号の骨格を示した情報に基づき、表示画面に、指定された階調およびマトリックスの行方向または列方向のいずれかにおいて指定された線幅を有する記号を表示させるステップを情報処理装置に実行させ、記号を表示させるステップは、記号の表示画素を構成する構成する画素群の一部であって、表示画素が線幅の方向に一列に並んだ線幅分の画素群を要素画素群とするとき、骨格を構成する骨格線の要素である要素線分と、当該要素線分と重なる表示画素を含んだ要素画素群における中心点との、線幅の方向における距離を算出するステップと、中心点を含んだ要素画素群に含まれる一方の端部の画素の階調を、記号の階調と当該記号の背景の階調との間の階調であって、算出された距離に応じた階調に補正するステップと、補正に基づき、記号を表示画面に表示させるための表示データを生成するステップとを含む。 According to yet another aspect of the present invention, the program is a program for controlling an information processing apparatus having a display screen in which pixels are arranged in a matrix, and the program is based on information indicating a skeleton of a symbol. , Causing the information processing apparatus to execute a step of causing the display screen to display a symbol having a designated gradation and a line width designated in either the row direction or the column direction of the matrix, and displaying the symbol When a pixel group corresponding to a line width in which the display pixels are arranged in a line in the direction of the line width is set as an element pixel group, which is a part of the pixel group constituting the display pixels Calculating a distance in the direction of line width between an element line segment which is an element and a center point of an element pixel group including a display pixel overlapping the element line segment; an element including the center point The gradation of the pixel at one end included in the element group is corrected to the gradation between the gradation of the symbol and the gradation of the background of the symbol according to the calculated distance Step of generating display data for displaying the symbol on the display screen based on the step of correction.
 本発明により。ルックアップテーブル等のデータを用いることなく、短い処理時間でシャギーを目立たなくさせることができるといった効果を奏する。 According to the invention. There is an effect that the shaggy can be made inconspicuous in a short processing time without using data such as a look-up table.
情報処理装置の概略構成を示したブロック図である。FIG. 2 is a block diagram showing a schematic configuration of an information processing apparatus. 情報処理装置として機能するコンピュータシステムのハードウェア構成を表わすブロック図である。It is a block diagram showing the hardware constitutions of the computer system which functions as an information processor. 奇数線幅の文字を補正した後の文字の一部分を示した図である。It is a figure showing a part of character after correcting the character of odd line width. 奇数線幅の文字を補正した後の文字の一部分を示した他の図である。It is another figure showing a part of character after correcting the character of odd line width. 偶数線幅の文字を補正した後の文字の一部分を示した図である。It is a figure showing a part of character after correcting the character of even line width. 偶数線幅の文字を補正した後の文字の一部分を示した他の図である。It is another figure showing a part of character after correcting the character of even line width. 情報処理装置における処理の流れを示したフローチャートである。5 is a flowchart showing the flow of processing in the information processing apparatus. 図7のステップS5の処理の詳細を示したフローチャートである。It is the flowchart which showed the detail of the process of FIG.7 S5. 階調補正の効果を説明するための図であり、(a)は上記階調補正を行っていない場合の文字(一部)を示した図であり、(b)は階調補正を行った場合の文字(一部)とを示した図である。It is a figure for demonstrating the effect of gradation correction, (a) is a figure which showed the character (part) when not performing said gradation correction, (b) performed gradation correction It is the figure which showed the character (part) of the case. 直接描画方法を行う際の処理の流れを示したフローチャートである。It is the flowchart which showed the flow of the process at the time of performing a direct drawing method. 間接描画方法を行う際の処理の流れの一部を示したフローチャートである。It is the flow chart which showed a part of flow of processing at the time of performing an indirect drawing method. 補正の制限を行った場合に得れる記号の一部を示した図である。It is the figure which showed a part of symbol obtained when the restriction | limiting of correction | amendment is performed. 斜めの要素線分と、当該要素線分に連続する要素線分とを用いて描画した文字の一部分を示した図である。It is the figure which showed a part of character drawn using the diagonal element line segment and the element line segment which follows the said element line segment. 補正制限部の機能を変更することにより得られる文字の一部分を示した図である。It is a figure showing a part of character obtained by changing a function of a amendment restriction part. 1つのストロークを描画する際に用いられる各要素線分を示した図である。It is a figure showing each element line segment used when drawing one stroke. 図7のステップS5における処理の詳細を示したフローチャートである。It is the flowchart which showed the detail of the process in FIG.7 S5. 図16のステップS55における、上限値と下限値との設定方法を示したフローチャートである。It is the flowchart which showed the setting method of an upper limit and a lower limit in FIG.16 S55. 上限値の設定例と、下限値の設定例とを示した図である。It is the figure which showed the setting example of the upper limit, and the setting example of the lower limit. 線分補正部による補正前の要素線分と、補正後の要素線分とを示した図であって、(a)は補正前の要素線分を示した図であって、(b)は補正後の要素線分を示した図である。It is a figure showing an element line segment before amendment by a line segment amendment part, and an element line segment after amendment, and (a) is a figure showing an element line segment before amendment, and (b) is It is the figure which showed the element line segment after amendment. 補正前の要素線分と、補正後の要素線分とを示した図であって、(a)は補正前の要素線分を示した図であって、(b)は補正後の要素線分L20′を示した図である。It is a figure showing an element line segment before amendment, and an element line segment after amendment, and (a) is a figure showing an element line segment before amendment, and (b) is an element line after amendment It is a figure showing minute L20 '. 補正前の要素線分と、補正後の要素線分とを示した図であって、(a)は補正前の要素線分を示した図であって、(b)は補正後の要素線分を示した図である。It is a figure showing an element line segment before amendment, and an element line segment after amendment, and (a) is a figure showing an element line segment before amendment, and (b) is an element line after amendment FIG. 図20および図21に示した要素線分の長さを補正する際の処理の流れを示したフローチャートである。It is the flowchart which showed the flow of the process at the time of correct | amending the length of the element line segment shown to FIG. 20 and FIG. 図22のステップS92における処理の流れを示したフローチャートである。It is the flowchart which showed the flow of the process in FIG.22 S92. 図23のステップS102における処理の流れを示したフローチャートである。It is the flowchart which showed the flow of the process in FIG.23 S102. 図23のステップS103における処理の流れを示したフローチャートである。It is the flowchart which showed the flow of the process in FIG.23 S103. 線分補正部によって要素線分の始点および/または終点を補正した際に表示される文字を示した図であって、(a)はMの文字を示してた図であって、(b)はWの文字を示した図である。It is a figure which showed the character displayed when the start point and / or the end point of an element line segment are correct | amended by the line segment correction | amendment part, Comprising: (a) is a figure which showed M character, (b) Is a diagram showing the letter W. スケルトンデータのデータ構造を示した図である。It is the figure which showed the data structure of skeleton data. 「木」といった漢字に関するスケルトンデータをデータ構造を示した図である。It is the figure which showed the data structure about the skeleton data regarding the kanji like "tree." 図28のスケルトンデータを座標平面上に示した図である。It is the figure which showed the skeleton data of FIG. 28 on the coordinate plane. 線分に対して所定の線幅の持たせた例を示した図であって、(a)は線幅を奇数とした場合の例を示した図であって、(b)は線幅を偶数とした場合の例を示した図である。It is a figure showing the example which gave a predetermined line width to a line segment, and (a) is a figure showing the example when the line width is made odd, (b) shows the line width. It is the figure which showed the example at the time of setting it as the even number.
符号の説明Explanation of sign
 1 情報処理装置、12 記憶装置、13 第1メモリ、14 第2メモリ、15 制御部、16 表示制御部、20 距離算出部、21 階調補正部、22 表示データ生成部、30 平行判定部、31 補正制限部、32 線分補正部。 Reference Signs List 1 information processing apparatus, 12 storage device, 13 first memory, 14 second memory, 15 control unit, 16 display control unit, 20 distance calculation unit, 21 tone correction unit, 22 display data generation unit, 30 parallel determination unit, 31 correction limit unit, 32 line correction unit.
 本発明に係る情報処理装置の一実施の形態について、図1~図26に基づいて説明すると、以下のとおりである。 An embodiment of an information processing apparatus according to the present invention will be described below with reference to FIGS. 1 to 26.
 図1は、情報処理装置1の概略構成を示したブロック図である。同図に示すとおり、情報処理装置1は、入力部10と、出力部11と、記憶装置12と、第1メモリ13と、第2メモリ14と、制御部15とを備えている。 FIG. 1 is a block diagram showing a schematic configuration of the information processing apparatus 1. As shown in the figure, the information processing apparatus 1 includes an input unit 10, an output unit 11, a storage device 12, a first memory 13, a second memory 14, and a control unit 15.
 入力部10は、ユーザからの入力を受け付けるための入力デバイスである。入力部10を介してユーザがデータの入力を行うことにより、第1メモリ13に当該入力されたデータが記憶される。入力部10を介して、入力されるデータとしては、例えば、記号を特定するためのデータ(例えば、文字コード)、記号のサイズのデータ、記号の線幅の種別情報(例えば、太、中、細)を特定するためのデータ、記号の色を特定するためのデータ等が挙げられる。なお、以下では、記号の線幅の種別、および記号の色については、予めデフォルト値が記憶装置12に記憶されており、ユーザが変更指示を入力部10を介して情報処理装置1に入力しない限り、デフォルト値に基づいた表示がなされる構成としておく。 The input unit 10 is an input device for receiving an input from a user. When the user inputs data via the input unit 10, the first memory 13 stores the input data. As data to be input through the input unit 10, for example, data for specifying a symbol (for example, character code), data of symbol size, type information of symbol line width (for example, bold, middle, Data for specifying the symbol, data for specifying the color of the symbol, and the like. In the following, with respect to the type of line width of the symbol and the color of the symbol, default values are stored in advance in the storage device 12 and the user does not input a change instruction to the information processing apparatus 1 via the input unit 10 As long as it is configured to be displayed based on the default value.
 出力部11は、制御部15からの指示に基づき、入力部10を介して入力されたデータ、および制御部15における各種の処理の結果を表示するためのデバイスである。また、出力部11は、マトリックス状に画素が配された表示画面を備えている。以下では、マトリックスに対してXY座標を設定し、X軸の正方向をマトリックスの行方向と、Y軸の負方向をマトリックスの列方向とする。つまり、ユーザが対峙する表示画面に対して、右方向がX軸方向、上方向がY軸方向とする。 The output unit 11 is a device for displaying data input through the input unit 10 and results of various processing in the control unit 15 based on an instruction from the control unit 15. The output unit 11 also includes a display screen in which pixels are arranged in a matrix. In the following, the XY coordinates are set for the matrix, and the positive direction of the X axis is taken as the row direction of the matrix, and the negative direction of the Y axis is taken as the column direction of the matrix. That is, with respect to the display screen facing the user, the right direction is the X axis direction, and the upper direction is the Y axis direction.
 なお、以下では、出力部11が、カラーモデルの一例として、RGBカラーモデルを用いた表示を行うものとする。また、以下では画素の画素値を、(R,G,B)として表記する。さらに、以下では、画素値(R,G,B)のうちRの要素の値を「R成分の値」と、Gの要素の値を「G成分の値」と、Bの要素の値を「B成分の値」と称する。 In the following, it is assumed that the output unit 11 performs display using the RGB color model as an example of a color model. Further, hereinafter, the pixel value of the pixel is represented as (R, G, B). Furthermore, in the following, among the pixel values (R, G, B), the value of the element of R is “the value of R component”, the value of the element of G is “the value of G component”, and the value of the element of B is It is called "the value of the B component".
 記憶装置12は、各種記号のスケルトンデータを記号毎に記憶している。また、記憶装置12は、例えば、ハードディスク装置や、フラッシュメモリで構成される。ここで、記号とは、文字、図形、符号等を含む概念である。なお、スケルトンデータの構成については、図27および図28に示した従来の構成と同様であるため、ここでの説明は省略する。 The storage unit 12 stores skeleton data of various symbols for each symbol. Further, the storage device 12 is configured by, for example, a hard disk drive or a flash memory. Here, the symbol is a concept including characters, figures, symbols and the like. The structure of the skeleton data is the same as the conventional structure shown in FIGS. 27 and 28, and thus the description thereof is omitted here.
 第1メモリ13は、RAM(Random Access Memory)等の揮発性の半導体メモリで構成される。また、第1メモリ13は、制御部15のCPU(図示せず)が直接データをやり取りする主記憶装置としての役割を果たす。第1メモリ13は、ユーザにより入力されたデータ、記憶装置12に記憶されたデータ等を一時的に記憶する。 The first memory 13 is configured of volatile semiconductor memory such as RAM (Random Access Memory). In addition, the first memory 13 plays a role as a main storage device with which the CPU (not shown) of the control unit 15 directly exchanges data. The first memory 13 temporarily stores data input by the user, data stored in the storage device 12, and the like.
 第2メモリ14は、VRAM(Video RAM)であり、出力部11に表示するデータを保持しておくためのメモリである。なお、本実施の形態の情報処理装置1は、第1メモリ13と第2メモリ14とを備えているが、第2メモリ14を独立して備えずに第1メモリ13の一部の領域をVRAM用のメモリ領域として割り当てる構成としてもよい。 The second memory 14 is a VRAM (Video RAM), and is a memory for holding data to be displayed on the output unit 11. Although the information processing apparatus 1 according to the present embodiment includes the first memory 13 and the second memory 14, a part of the area of the first memory 13 is not provided independently of the second memory 14. It may be allocated as a memory area for VRAM.
 制御部15は、情報処理装置1における各種の処理を制御する。
 制御部15内の表示制御部16は、距離算出部20と、階調補正部21と、表示データ生成部22とを備えている。さらに、階調補正部21は、平行判定部30と、補正制限部31と、線分補正部32とを備えている。なお、制御部15および制御部15内の各部は機能ブロックであり、これらのブロックにおける処理は、後述するCPUにより実行されるソフトウェアによって実現される。
The control unit 15 controls various processes in the information processing device 1.
The display control unit 16 in the control unit 15 includes a distance calculation unit 20, a gradation correction unit 21, and a display data generation unit 22. The tone correction unit 21 further includes a parallel determination unit 30, a correction limitation unit 31, and a line segment correction unit 32. The control unit 15 and each unit in the control unit 15 are functional blocks, and the processing in these blocks is realized by software executed by a CPU described later.
 表示制御部16は、制御部15内で処理したデータを出力部11に表示させる。具体的には、表示制御部16は、VRAMとして機能する第2メモリ14に画像データを記憶させるとともに、当該記憶させた画像データを出力部11で出力させる。 The display control unit 16 causes the output unit 11 to display the data processed in the control unit 15. Specifically, the display control unit 16 stores the image data in the second memory 14 functioning as a VRAM, and causes the output unit 11 to output the stored image data.
 より詳しくは、表示制御部16は、スケルトンデータ(記号の骨格を示す情報)に基づいて、マトリックスの行方向または列方向のいずれかにおいて指定された線幅および指定された階調を有するように記号を表示画面に表示する際に、複数の画素のうちの表示画素の階調を決定する。 More specifically, the display control unit 16 has a specified line width and a specified gradation in either the row direction or the column direction of the matrix based on the skeleton data (information indicating the skeleton of the symbol). When the symbol is displayed on the display screen, the gradation of the display pixel among the plurality of pixels is determined.
 以下では、スケルトンデータの座標データ(図28参照)をスケーリングして得られる座標データに基づき構成される記号の骨格を示す線を「骨格線」と称する。つまり、骨格線を、出力部11で表示される際のサイズに変更された後の、記号の骨格を示す線として説明する。 Hereinafter, a line indicating a skeleton of a symbol configured based on coordinate data obtained by scaling coordinate data of skeleton data (see FIG. 28) will be referred to as “skeleton line”. That is, the skeleton line will be described as a line indicating the skeleton of the symbol after being changed to the size when displayed on the output unit 11.
 また、記号の表示画素を構成する画素群の一部であって、表示画素が線幅の方向に一列に並んだ線幅分の画素群を「要素画素群」と称する。さらに、記号の骨格を構成する各骨格線の要素である線分を「要素線分」と称する。つまり、要素線分とは、骨格線を構成する一要素となる線分であって、一定の傾きを有する線分である。 Further, a pixel group which is a part of a pixel group constituting a display pixel of a symbol and in which the display pixels are arranged in a line in the direction of the line width is referred to as an “element pixel group”. Furthermore, a line segment that is an element of each skeleton line that constitutes the skeleton of the symbol is referred to as an "element line segment". That is, an element line segment is a line segment which becomes one element which constitutes a skeletal line, and is a line segment having a certain inclination.
 距離算出部20は、上記要素線分と、当該要素線分と重なる画素を含んだ要素画素群の中心点との上記線幅の方向の距離を、各要素画素群について算出する。 The distance calculation unit 20 calculates, for each element pixel group, the distance in the direction of the line width between the element line segment and the central point of the element pixel group including the pixels overlapping the element line segment.
 階調補正部21は、補正対象画素を上記要素線分毎に特定し、所定の規則に従って補正対象画素について上記指定された階調を別の階調に補正する。また、階調補正部21は、各色成分の画素値(つまり、R成分画素値、G成分画素値、B成分画素値)に対して、補正を行う。ここで、「階調の補正」とは、各色成分の画素値を補正することをいう。なお、補正対象画素の特定と、具体的な階調の補正の方法とについては、後述する。 The gradation correction unit 21 specifies the correction target pixel for each element line segment, and corrects the designated gradation of the correction target pixel to another gradation according to a predetermined rule. The tone correction unit 21 also performs correction on pixel values of respective color components (that is, R component pixel values, G component pixel values, and B component pixel values). Here, "gradation correction" refers to correction of the pixel value of each color component. Note that the specification of the correction target pixel and the specific gradation correction method will be described later.
 表示データ生成部22は、階調補正部21での補正に基づき、記号を表示画面に表示させるための表示データを生成し、当該表示データを第2メモリに一時記憶させる。 The display data generation unit 22 generates display data for displaying a symbol on the display screen based on the correction by the gradation correction unit 21 and temporarily stores the display data in the second memory.
 なお、階調補正部21における、平行判定部30と、補正制限部31と、線分補正部32とについては、後述する。 The parallel determination unit 30, the correction limitation unit 31, and the line segment correction unit 32 in the gradation correction unit 21 will be described later.
 ここで、図2を参照して、本実施の形態に係る情報処理装置1の具体的構成の一態様について説明する。同図は、情報処理装置1として機能するコンピュータシステム1000のハードウェア構成を表わすブロック図である。 Here, one aspect of the specific configuration of the information processing device 1 according to the present embodiment will be described with reference to FIG. The figure is a block diagram showing the hardware configuration of a computer system 1000 that functions as the information processing apparatus 1.
 コンピュータシステム1000は、主たる構成要素として、プログラムを実行するCPU110と、コンピュータシステム1000の使用者による指示の入力を受けるマウス120およびキーボード130と、CPU110によるプログラムの実行により生成されたデータ、又はマウス120若しくはキーボード130を介して入力されたデータを揮発的に格納するRAM140と、データを不揮発的に格納するハードディスク150と、CD-ROM(Compact Disk-Read Only Memory)駆動装置160と、モニタ170と、通信IF(Interface)180とを含む。各構成要素は、相互にデータバスによって接続されている。CD-ROM駆動装置160には、CD-ROM161が装着される。 Computer system 1000 includes, as main components, a CPU 110 for executing a program, a mouse 120 and a keyboard 130 for receiving an instruction input by a user of computer system 1000, data generated by execution of the program by CPU 110, or mouse 120 Alternatively, a RAM 140 for volatileally storing data input via the keyboard 130, a hard disk 150 for storing data in a nonvolatile manner, a CD-ROM (Compact Disk-Read Only Memory) driving device 160, and a monitor 170. A communication IF (Interface) 180 is included. Each component is connected to each other by a data bus. The CD-ROM 161 is mounted on the CD-ROM drive 160.
 なお、情報処理装置1における入力部10がキーボード130およびマウス120に該当し、出力部11がモニタ170に該当し、記憶装置12がハードディスク150に該当し、第1メモリ13と第2メモリ14とがRAM140に該当する。 The input unit 10 in the information processing apparatus 1 corresponds to the keyboard 130 and the mouse 120, the output unit 11 corresponds to the monitor 170, the storage device 12 corresponds to the hard disk 150, and the first memory 13 and the second memory 14 Corresponds to the RAM 140.
 コンピュータシステム1000における処理は、各ハードウェアおよびCPU110により実行されるソフトウェアによって実現される。このようなソフトウェアは、ハードディスク150に予め記憶されている場合がある。また、ソフトウェアは、CD-ROM161その他の記憶媒体に格納されて、プログラムプロダクトとして流通している場合もある。あるいは、ソフトウェアは、いわゆるインターネットに接続されている情報提供事業者によってダウンロード可能なプログラムプロダクトとして提供される場合もある。このようなソフトウェアは、CD-ROM駆動装置160その他の読取装置によりその記憶媒体から読み取られて、あるいは、通信IF180を介してダウンロードされた後、ハードディスク150に一旦格納される。そのソフトウェアは、CPU110によってハードディスク150から読み出され、RAM140に実行可能なプログラムの形式で格納される。CPU110は、そのプログラムを実行する。 Processing in computer system 1000 is realized by each hardware and software executed by CPU 110. Such software may be stored in advance in the hard disk 150. Also, software may be stored in a CD-ROM 161 or other storage medium and distributed as a program product. Alternatively, the software may be provided as a downloadable program product by an information provider connected to the so-called Internet. Such software is read from the storage medium by the CD-ROM drive 160 or another reader, or downloaded via the communication IF 180, and then temporarily stored in the hard disk 150. The software is read from the hard disk 150 by the CPU 110 and stored in the RAM 140 in the form of an executable program. The CPU 110 executes the program.
 同図に示されるコンピュータシステム1000を構成する各構成要素は、一般的なものである。したがって、本発明の本質的な部分は、RAM140、ハードディスク150、CD-ROM161その他の記憶媒体に格納されたソフトウェア、あるいはネットワークを介してダウンロード可能なソフトウェアであるともいえる。なお、コンピュータシステム1000の各ハードウェアの動作は周知であるので、詳細な説明は繰り返さない。 Each component which comprises computer system 1000 shown in the figure is general. Therefore, an essential part of the present invention can be said to be software stored in the RAM 140, the hard disk 150, the CD-ROM 161 or other storage medium, or software downloadable via a network. The operation of each hardware of computer system 1000 is well known, and therefore detailed description will not be repeated.
 なお、記録媒体としては、CD-ROM、FD(Flexible Disk)、ハードディスクに限られず、磁気テープ、カセットテープ、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、IC(Integrated Circuit)カード(メモリカードを含む)、光カード、マスクROM、EPROM(Electronically Programmable Read-Only Memory)、EEPROM(Electronically Erasable Programmable Read-Only Memory)、フラッシュROMなどの半導体メモリ等の固定的にプログラムを担持する媒体でもよい。 The recording medium is not limited to CD-ROM, FD (Flexible Disk), hard disk, magnetic tape, cassette tape, optical disk (MO (Magnetic Optical Disc) / MD (Mini Disc) / DVD (Digital Versatile Disc)) , IC (Integrated Circuit) card (including memory card), optical card, mask ROM, EPROM (Electronically Programmable Read-Only Memory), EEPROM (Electronically Erasable Programmable Read-Only Memory), fixed semiconductor memory such as flash ROM May be a medium that carries the program.
 ここでいうプログラムとは、CPUにより直接実行可能なプログラムだけでなく、ソースプログラム形式のプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。 The program referred to here includes not only a program directly executable by the CPU but also a program of source program format, a program subjected to compression processing, an encrypted program and the like.
 ところで、上記構成は、あくまでも具体的構成の一態様にすぎず、上記マウスを備えず、かつ、キーボードとモニタとハードディスクとが情報処理装置1内に備えられている構成であってもよい。情報処理装置1は、電子辞書や携帯電話等のポータブル型の携帯情報端末としても構成できる。 By the way, the above-mentioned composition is only one mode of a concrete composition to the last, and the composition which does not have the above-mentioned mouse, and is equipped with the keyboard, the monitor, and the hard disk in the information processor 1 may be sufficient. The information processing apparatus 1 can also be configured as a portable type portable information terminal such as an electronic dictionary or a portable telephone.
 このような携帯情報端末として情報処理装置1を構成する場合には、ハードディスク150の代わりに例えばフラッシュメモリを用いることができる。また、入力部として、タッチペン式の入力装置を備える構成としてもよい。さらに、小型化の観点から、モニタ170としては、液晶モニタや有機ELモニタ等の薄型のモニタを使用することが好適である。また、小型化の観点から、CD-ROM駆動装置の代わりにメモリカードを読み取る装置を設けておき、記録媒体としてCD-ROMの代わりに当該メモリカードを用いることが好適である。 When the information processing apparatus 1 is configured as such a portable information terminal, for example, a flash memory can be used instead of the hard disk 150. Further, a touch pen type input device may be provided as the input unit. Furthermore, from the viewpoint of downsizing, it is preferable to use a thin monitor such as a liquid crystal monitor or an organic EL monitor as the monitor 170. Further, from the viewpoint of downsizing, it is preferable to provide an apparatus for reading a memory card instead of the CD-ROM driving apparatus, and use the memory card as a recording medium instead of the CD-ROM.
 ここで、図3から図6に従い、階調補正部21で行われる処理を具体的に説明する。また、以下では、記号の一例として文字を例に挙げて説明する。 Here, the process performed by the gradation correction unit 21 will be specifically described with reference to FIGS. 3 to 6. Moreover, below, a character is mentioned as an example and demonstrated as an example of a symbol.
 まず、取得した文字コードと文字のサイズデータと文字の線幅の種別情報と文字の色のデータとに基づき、表示制御部16が文字と文字サイズと上記文字の線幅種別と文字の色とを特定する。そして、表示制御部16が、特定された文字サイズに基づき、当該文字のスケルトンデータをスケーリングする。また、表示制御部16が、上記特定された文字サイズと文字の線幅の種別とを考慮して、文字を出力部11の表示画面に表示する際の線幅(指定された線幅)を決定する。さらに、表示制御部16が、上記特定された文字の色(画素値)を利用して、文字を表示画面に表示する。なお、文字の色の利用の仕方については後述する。 First, based on the acquired character code, character size data, character line width type information, and character color data, the display control unit 16 determines the character, character size, line width type of the character, and character color. Identify Then, the display control unit 16 scales the skeleton data of the character based on the specified character size. Further, the line width (designated line width) when the display control unit 16 displays characters on the display screen of the output unit 11 in consideration of the specified character size and the type of the line width of the character is decide. Further, the display control unit 16 displays the characters on the display screen using the color (pixel value) of the specified characters. In addition, the method of using the color of a character is mentioned later.
 その結果として、上記表示画面での表示に際して文字の線幅を一列に連続した奇数個の画素を用いて表示することが表示制御部16により決定された場合について、最初に説明する。その後、上記表示画面での表示に際して文字の線幅を一列に連続した偶数個の画素を用いて表示することが表示制御部16により決定された場合について、説明する。 As a result, the case where it is determined by the display control unit 16 to display the line width of the character using the odd number of continuous pixels in a line when displaying on the display screen will be described first. After that, a case where it is determined by the display control unit 16 to display the line width of characters using an even number of continuous pixels in one line when displaying on the display screen will be described.
 なお、以下では、情報処理装置1が一列に連続した奇数個の画素を用いて線幅を表現する場合、当該線幅を「奇数線幅」と称する。一方、情報処理装置1が一列に連続した偶数個の画素を用いて線幅を表現する場合、当該線幅を「偶数線幅」と称する。なお、「奇数線幅」および「偶数線幅」とは、後述する階調補正を行なう前の線幅をさしている。階調補正を行えば、文字の一部の線幅は太くなる。 In the following, when the information processing apparatus 1 expresses a line width using an odd number of continuous pixels in one row, the line width is referred to as “odd line width”. On the other hand, when the information processing apparatus 1 expresses the line width using an even number of continuous pixels in one line, the line width is referred to as “even line width”. Note that “odd line width” and “even line width” refer to line widths before tone correction to be described later. When tone correction is performed, the line width of a part of the character becomes thicker.
 ここで、線幅について説明する。「線幅」とは、X軸方向またはY軸方向の文字の幅をいう。また、文字の幅を表現する場合、一列に連続した画素(画素群)を用いる。例えば、線幅が3の場合、3つの連続した画素を用いる。 Here, the line width will be described. The “line width” refers to the width of characters in the X-axis direction or the Y-axis direction. In addition, when expressing the width of a character, pixels (pixel group) continuous in a line are used. For example, if the line width is 3, three consecutive pixels are used.
 より詳しくは、情報処理装置1が文字の幅を表現する場合、骨格線の要素線分が重なった画素を含み、X軸方向またはY軸方向に一列に連続した画素群(要素画素群)を用いる。X軸方向に一列に連続した画素群、およびY軸方向に一列に連続した画素群のうち、どちらの画素群を用いるかは、上記要素線分の傾きにより制御部15が決定する。 More specifically, when the information processing apparatus 1 expresses the width of a character, a pixel group (element pixel group) including pixels in which element line segments of a skeleton line overlap and continuous in a row in the X axis direction or Y axis direction Use. The control unit 15 determines which one of the pixel group continuous in the X-axis direction and the pixel group continuous in the Y-axis direction is used according to the inclination of the element line.
 例えば、要素線分の傾きの絶対値が1以上の場合には、情報処理装置1は、X軸方向に一列に連続した画素群を用いて文字の幅を表現する。一方、要素線分の傾きの絶対値が1未満の場合、情報処理装置1は、Y軸方向に一列に連続した画素群を用いて文字の幅を表現する。 For example, when the absolute value of the inclination of the element line segment is 1 or more, the information processing device 1 expresses the width of the character using a pixel group continuous in a line in the X-axis direction. On the other hand, when the absolute value of the inclination of the element line segment is less than 1, the information processing device 1 expresses the width of the character using a pixel group continuous in a line in the Y-axis direction.
 図3は、奇数線幅の文字を階調補正部21により補正した後の文字の一部分を示した図である。また、同図は、文字の線幅方向の一部分を示した図でもある。 FIG. 3 is a diagram showing a part of the characters after the characters of the odd line width are corrected by the gradation correction unit 21. As shown in FIG. In addition, the same figure is also a view showing a part of the line width direction of the character.
 同図においては、まず、要素線分L1の傾きの絶対値が1以上であるため、制御部15により、線幅がX軸方向に設定される。 In the same figure, first, since the absolute value of the slope of the element line segment L1 is 1 or more, the control unit 15 sets the line width in the X-axis direction.
 なお、階調補正部21による補正を行わない従来の構成では、奇数線幅(同図では線幅は3)分の画素Pa、画素Pb、画素Pcといった一列に連続した3個の画素が文字を構成する画素群となる。画素Pbが画素群の中心画素となっているのは、画素Pbの中心点Cと要素線分L1とのX軸方向における距離が、他の画素の中心点と要素線分L1とのX軸方向における距離よりも小さいからである。 Note that, in the conventional configuration in which correction by the gradation correction unit 21 is not performed, three pixels in a row such as pixel Pa, pixel Pb, and pixel Pc corresponding to an odd line width (line width of 3 in the figure) are characters The pixel group that constitutes The pixel Pb is the central pixel of the pixel group because the distance between the central point C of the pixel Pb and the element line segment L1 in the X-axis direction is the X axis of the central point of another pixel and the element line segment L1. It is because it is smaller than the distance in the direction.
 本実施の形態でも、情報処理装置1は、上記画素Paと画素Pbと画素Pcとを文字を構成する画素群として用いる。 Also in the present embodiment, the information processing apparatus 1 uses the pixel Pa, the pixel Pb, and the pixel Pc as a pixel group forming a character.
 距離算出部20は、画素Pbの中心点Cと要素線分L1とのX軸方向における距離を算出する。つまり、距離算出部20は、中心点Cと要素線分L1上の点Gとの距離|d|を算出する。さらに、言い換えれば、距離算出部20は、画素Paと画素Pbと画素Pcとから構成される画素群における中心点と、点Gとの距離を算出する。ここで、上記距離|d|の算出に当たっては、画素の中心点間の距離を1とする。つまり、|d|は0から0.5の値をとることになる。なお、点Gは、文字の線幅方向に一列に並んだ各画素における各中心点を通過する線上の点でもある。 The distance calculation unit 20 calculates the distance between the central point C of the pixel Pb and the element line segment L1 in the X-axis direction. That is, the distance calculation unit 20 calculates the distance | d | between the central point C and the point G on the element line segment L1. Furthermore, in other words, the distance calculation unit 20 calculates the distance between the central point in the pixel group including the pixel Pa, the pixel Pb, and the pixel Pc, and the point G. Here, in the calculation of the distance | d |, the distance between the center points of the pixels is 1. In other words, | d | takes a value of 0 to 0.5. The point G is also a point on a line passing each center point of the pixels arranged in a line in the line width direction of the character.
 階調補正部21は、中心点Cに対して点Gと反対側の画素Paを補正対象画素と特定する。また、階調補正部21は、画素PcとX軸方向に隣接する画素Pdについても補正対象画素と特定する。以下では、当該補正前の文字領域(例えば、画素Pa、画素Pb、画素Pc)における文字の画素値を、(R,G,B)=(Rf,Gf,Bf)とし、補正前の背景領域(例えば、画素Pd)における背景の画素値を、(R,G,B)=(Rb,Gb,Bb)として説明する。 The tone correction unit 21 specifies the pixel Pa on the opposite side of the central point C as the correction target pixel. The tone correction unit 21 also identifies a pixel Pd adjacent to the pixel Pc in the X-axis direction as a correction target pixel. In the following, the pixel value of the character in the character area (for example, pixel Pa, pixel Pb, pixel Pc) before the correction is (R, G, B) = (Rf, Gf, Bf), and the background area before the correction A background pixel value in (for example, pixel Pd) is described as (R, G, B) = (Rb, Gb, Bb).
 階調補正部21は、画素Paに対しては以下の式(1)~式(3)を用いて階調の補正を行い、補正後の画素値(R,G,B)=(Rm,Gm,Bm)を得る。そして、階調補正部21は、画素Paの画素値を補正後の画素値とし、当該画素Paの階調を補正する。 The tone correction unit 21 performs tone correction on the pixel Pa using the following equations (1) to (3), and the corrected pixel value (R, G, B) = (Rm, Gm, Bm) are obtained. Then, the gradation correction unit 21 sets the pixel value of the pixel Pa as the pixel value after correction, and corrects the gradation of the pixel Pa.
 Rm=(1-|d|)×Rf+|d|×Rb … (1)
 Gm=(1-|d|)×Gf+|d|×Gb … (2)
 Bm=(1-|d|)×Bf+|d|×Bb … (3)
 また、階調補正部21は、画素Pdに対しては以下の式(4)~式(6)を用いて階調の補正を行い、補正後の画素値(R,G,B)=(Rm,Gm,Bm)を得る。そして、階調補正部21は、画素Pdの画素値を補正後の画素値とし、当該画素Pdの階調を補正する。
Rm = (1- | d |) × Rf + | d | × Rb (1)
Gm = (1− | d |) × Gf + | d | × Gb (2)
Bm = (1− | d |) × Bf + | d | × Bb (3)
Further, the gradation correction unit 21 performs gradation correction on the pixel Pd using the following formulas (4) to (6), and the pixel value after correction (R, G, B) = ( Rm, Gm, Bm) are obtained. Then, the gradation correction unit 21 sets the pixel value of the pixel Pd as the pixel value after correction, and corrects the gradation of the pixel Pd.
 Rm=|d|×Rf+(1-|d|)×Rb … (4)
 Gm=|d|×Gf+(1-|d|)×Gb … (5)
 Bm=|d|×Bf+(1-|d|)×Bb … (6)
 以上により、画素Paと画素Pdとは、文字の階調と文字の背景の階調との間の階調であって、距離算出部20で算出した距離に応じた階調に補正される。
Rm = | d | × Rf + (1- | d |) × Rb (4)
Gm = | d | × Gf + (1- | d |) × Gb (5)
Bm = | d | × Bf + (1- | d |) × Bb (6)
As described above, the pixel Pa and the pixel Pd are gradations between the gradation of the character and the gradation of the background of the character, and are corrected to the gradation according to the distance calculated by the distance calculation unit 20.
 また、画素Paについては、階調補正部21によって、距離|d|の値が大きくなるにつれて文字の階調から背景の階調に近づく補正がなされる。一方、画素Pdについては、階調補正部21によって、距離|d|が大きくなるにつれて、背景の階調から文字の階調に近づく補正がなされる。 Further, for the pixel Pa, the tone correction unit 21 performs correction that approaches the background tone from the character tone as the value of the distance | d | increases. On the other hand, for the pixel Pd, as the distance | d | becomes larger, the gradation correction unit 21 performs correction that approaches the gradation of the character from the gradation of the background.
 また、補正後の画素PaのR成分の値と、補正後の画素PdのR成分の値とを加えると、Rf+Rbとなる。つまり、補正対象画素となっていない画素(画素Pbや画素Pc)におけるR成分の値と、上記背景の画素におけるR成分の値とを足し合わせた値と同じ値となる。また、G成分の値と、B成分の値とについても、同様のことが言える。 Further, when the value of the R component of the pixel Pa after the correction and the value of the R component of the pixel Pd after the correction are added, Rf + Rb is obtained. That is, the value is the same as the sum of the value of the R component in the pixel (pixel Pb or pixel Pc) that is not the correction target pixel and the value of the R component in the background pixel. The same is true for the G component value and the B component value.
 以上により、情報処理装置1は、線幅を3から4に補正し、情報処理装置1は、同図に示すような画素Paと画素Pbと画素Pcと画素Pdとにより文字の一部を構成する。 As described above, the information processing device 1 corrects the line width from 3 to 4, and the information processing device 1 forms a part of the character by the pixel Pa, the pixel Pb, the pixel Pc, and the pixel Pd as shown in the figure. Do.
 図4は、図3と同様、奇数線幅の文字を階調補正部21により補正した後の文字の一部分を示した図である。図4が図3と異なる点は、要素線分L1の点Gが、中心画素となる画素Pbの中心点CよりもX軸の負方向側に存在する点である。 FIG. 4 is a view showing a part of the characters after the characters of the odd line width are corrected by the gradation correction unit 21 as in FIG. FIG. 4 differs from FIG. 3 in that the point G of the element line segment L1 is located on the negative direction side of the X axis with respect to the central point C of the pixel Pb which is the central pixel.
 このため、図4においては、階調補正部21は、画素Pcを補正対象画素と特定するともに、画素PaとX軸方向に隣接する画素Peを補正対象画素として特定する。この場合、画素Pcについては、階調補正部21は、上記式(1)~(3)に基づく補正を行なう。一方、画素Peについては、階調補正部21は、上記式(4)~(6)に基づく補正を行なう。 Therefore, in FIG. 4, the gradation correction unit 21 specifies the pixel Pc as the correction target pixel, and specifies the pixel Pe adjacent to the pixel Pa in the X-axis direction as the correction target pixel. In this case, for the pixel Pc, the gradation correction unit 21 performs correction based on the above equations (1) to (3). On the other hand, for the pixel Pe, the tone correction unit 21 performs correction based on the above equations (4) to (6).
 図5は、偶数線幅の文字を階調補正部21により補正した後の文字の一部分を示した図である。また、同図は、文字の線幅方向の一部分を示した図でもある。 FIG. 5 is a view showing a part of the characters after the characters of the even line width are corrected by the gradation correction unit 21. As shown in FIG. In addition, the same figure is also a view showing a part of the line width direction of the character.
 同図においては、まず、要素線分L1の傾きの絶対値が1以上であるため、制御部15は、図3および図4と同様に線幅をX軸方向に設定する。 In the same figure, first, since the absolute value of the slope of the element line segment L1 is 1 or more, the control unit 15 sets the line width in the X-axis direction as in FIGS. 3 and 4.
 なお、階調補正部21による補正を行わない従来の構成では、偶数線幅(同図では線幅は2)分の画素Pfおよび画素Pgといった一列に連続した2個の画素が文字を構成する画素群となる。ここで、画素Phが文字を構成する画素とならずに、画素Pfが文字を構成する画素となるのは、画素Pfの中心点と要素線分L1とのX軸方向における距離が、画素Phの中心点と要素線分L1とのX軸方向における距離よりも小さいからである。 Note that, in the conventional configuration in which the correction by the gradation correction unit 21 is not performed, two consecutive pixels such as a pixel Pf and a pixel Pg corresponding to an even line width (the line width in FIG. 2 is 2) form characters. It becomes a pixel group. Here, the reason that the pixel Pf is not the pixel constituting the character but the pixel Pf is the pixel constituting the character is that the distance between the central point of the pixel Pf and the element line L1 in the X axis direction is This is because the distance between the central point of and the element line segment L1 in the X-axis direction is smaller.
 本実施の形態でも、情報処理装置1は、上記画素Pfと画素Pgとを文字を構成する画素群として用いる。 Also in the present embodiment, the information processing apparatus 1 uses the pixel Pf and the pixel Pg as a pixel group forming a character.
 距離算出部20は、画素Pfと画素Pgとから構成される画素群の中心点Cと、要素線分L1とのX軸方向における距離を算出する。つまり、距離算出部20は、中心点Cと要素線分L1上の点Gとの距離|d|を算出する。言い換えれば、距離算出部20は、画素Pfと画素Pgとの境界線分の中心点と、要素線分L1とのX軸方向における距離を算出する。ここでも、上記距離|d|の算出に当たっては、画素の中心点間の距離を1とする。つまり、|d|は0から0.5の値をとることになる。 The distance calculation unit 20 calculates the distance in the X-axis direction between the central point C of the pixel group including the pixel Pf and the pixel Pg and the element line segment L1. That is, the distance calculation unit 20 calculates the distance | d | between the central point C and the point G on the element line segment L1. In other words, the distance calculation unit 20 calculates the distance in the X-axis direction between the central point of the boundary line between the pixel Pf and the pixel Pg and the element line L1. Also in this case, when calculating the distance | d |, the distance between the center points of the pixels is 1. In other words, | d | takes a value of 0 to 0.5.
 階調補正部21は、画素Pfに対しては上記の式(1)~式(3)を用いて階調の補正を行い、補正後の画素値(R,G,B)=(Rm,Gm,Bm)を得る。そして、階調補正部21は、画素Pfの画素値を補正後の画素値とし、当該画素Pfの階調を補正する。 The gradation correction unit 21 performs gradation correction on the pixel Pf using the above equations (1) to (3), and the pixel value after correction (R, G, B) = (Rm, Gm, Bm) are obtained. Then, the gradation correction unit 21 sets the pixel value of the pixel Pf as the pixel value after correction, and corrects the gradation of the pixel Pf.
 また、階調補正部21は、画素Phに対しては上記の式(4)~式(6)を用いて階調の補正を行い、補正後の画素値(R,G,B)=(Rm,Gm,Bm)を得る。そして、階調補正部21は、画素Phの画素値を補正後の画素値とし、当該画素Phの階調を補正する。 Further, the gradation correction unit 21 performs gradation correction on the pixel Ph using the above equations (4) to (6), and the pixel value after correction (R, G, B) = ( Rm, Gm, Bm) are obtained. Then, the gradation correction unit 21 sets the pixel value of the pixel Ph as the pixel value after correction, and corrects the gradation of the pixel Ph.
 以上により、画素Pfと画素Phとは、文字の階調と文字の背景の階調との間の階調であって、距離算出部20で算出した距離に応じた階調に補正される。 As described above, the pixel Pf and the pixel Ph are gradations between the gradation of the character and the gradation of the background of the character, and are corrected to the gradation according to the distance calculated by the distance calculation unit 20.
 また、画素Pfについては、階調補正部21は、距離|d|の値が大きくなるにつれて文字の階調から背景の階調に近づく補正を行う。一方、画素Phについては、階調補正部21は、距離|d|が大きくなるにつれて、背景の階調から文字の階調に近づく補正を行う。 Further, for the pixel Pf, the gradation correction unit 21 performs correction that approaches the gradation of the background from the gradation of the character as the value of the distance | d | increases. On the other hand, for the pixel Ph, as the distance | d | becomes larger, the gradation correction unit 21 performs correction that approaches the gradation of the character from the gradation of the background.
 また、補正後の画素PfのR成分の値と、補正後の画素PhのR成分の値とを加えると、Rf+Rbとなる。つまり、補正対象画素となっていない画素(画素Pg)におけるR成分の値と、上記背景の画素におけるR成分の値とを足し合わせた値と同じ値となる。また、G成分の値と、B成分の値とについても、同様のことが言える。 Further, when the value of the R component of the pixel Pf after the correction and the value of the R component of the pixel Ph after the correction are added, Rf + Rb is obtained. That is, the value is the same as the sum of the value of the R component in the pixel (pixel Pg) that is not the correction target pixel and the value of the R component in the background pixel. The same is true for the G component value and the B component value.
 以上により、情報処理装置1は、線幅を2から3に補正し、情報処理装置1は、同図に示すような画素Pfと画素Pgと画素Phとにより文字の一部を構成する。 As described above, the information processing device 1 corrects the line width from 2 to 3, and the information processing device 1 configures a part of the character by the pixel Pf, the pixel Pg, and the pixel Ph as shown in the figure.
 図6は、図5と同様、偶数線幅の文字を階調補正部21により補正した後の文字の一部分を示した図である。図6が図5と異なる点は、要素線分L1の点Gが、画素Pfと画素Pgとから構成される画素群の中心点CよりもX軸の負方向側(図6の左側)に存在する点である。 FIG. 6 is a view showing a part of the characters after the characters of the even line width are corrected by the gradation correction unit 21 as in FIG. 6 differs from FIG. 5 in that the point G of the element line segment L1 is on the negative direction side (left side of FIG. 6) of the X axis than the central point C of the pixel group composed of the pixels Pf and Pg. It is a point that exists.
 このため、図6においては、階調補正部21は、画素Pgを補正対象画素と特定するとともに、画素PfとX軸方向に隣接する画素Piを補正対象画素として特定する。この場合、画素Pgについては、階調補正部21は、上記式(1)~(3)に基づく補正を行なう。一方、画素Piについては、階調補正部21は、上記式(4)~(6)に基づく補正を行なう。 Therefore, in FIG. 6, the gradation correction unit 21 specifies the pixel Pg as the correction target pixel, and specifies the pixel Pi adjacent to the pixel Pf in the X-axis direction as the correction target pixel. In this case, for the pixel Pg, the gradation correction unit 21 performs correction based on the above equations (1) to (3). On the other hand, for the pixel Pi, the tone correction unit 21 performs correction based on the above equations (4) to (6).
 なお、上記点Gが距離|d|の算出の処理の対象となる点であることから、以下では、点Gを「処理対象点G」と称する。 In addition, since the said point G is a point used as the object of a process of calculation of distance | d |, below, the point G is called "the process target point G."
 図7は、情報処理装置1における処理の流れを示したフローチャートである。特に、同図は、情報処理装置1が一つの文字を表示画面に表示する場合について示している。 FIG. 7 is a flowchart showing the flow of processing in the information processing apparatus 1. In particular, the figure shows the case where the information processing apparatus 1 displays one character on the display screen.
 まず、表示制御部16は、表示対象となる文字についての、文字コードと文字のサイズデータと文字の線幅の種別情報と文字の色といった文字情報を取得する(S1)。表示対象となる文字は、入力部10を介して入力される文字でも、あるいは予め情報処理装置1に記憶されていた文字であってもよい。当該ステップS1によって、文字と文字サイズと文字の線幅の種別と文字の色とが特定される。 First, the display control unit 16 acquires character information such as character code, character size data, character line width type information, and character color for a character to be displayed (S1). The characters to be displayed may be characters input through the input unit 10 or characters previously stored in the information processing apparatus 1. By the step S1, the type of the character, the size of the character, the line width of the character, and the color of the character are specified.
 ステップS1の後は、表示制御部16は、上記取得した文字コードによって特定されるスケルトンデータを記憶装置12から読み出す(S2)。なお、読み出したスケルトンデータは、第1メモリ13に一時記憶される。そして、ステップS2の後は、表示制御部16は、上記特定された文字サイズに基づき、読み出したスケルトンデータをスケーリングする(S3)。 After step S1, the display control unit 16 reads the skeleton data specified by the acquired character code from the storage device 12 (S2). The read skeleton data is temporarily stored in the first memory 13. Then, after step S2, the display control unit 16 scales the read skeleton data based on the specified character size (S3).
 ステップS3の後は、表示制御部16は、スケーリングした後のスケルトンデータから、1つのストロークの骨格線に関するストローク情報を取得する(S4)。なお、ストローク情報とは、特許文献1で示したストローク情報と同一である。漢字「木」例では、当該漢字に関して4つのストローク情報が存在することになる。 After step S3, the display control unit 16 acquires stroke information on a skeleton line of one stroke from the scaled skeleton data (S4). The stroke information is the same as the stroke information shown in Patent Document 1. In the kanji “tree” example, four pieces of stroke information exist for the kanji.
 ステップS4の後は、表示制御部16は、取得した一つのストローク情報と上記特定された文字の線幅の種別情報に基づき、所定の線幅(指定された線幅)のストロークの描画を行う(S5)。そして、ステップS5の後は、表示制御部16は、当該文字に含まれるストローク全てについて、上記描画を行ったか否かを判定する(S6)。ここで、上記の「所定の線幅」とは、階調補正部21による補正を行った後の文字の線幅をさす。 After step S4, the display control unit 16 draws a stroke of a predetermined line width (designated line width) based on the acquired one stroke information and the type information of the line width of the specified character. (S5). Then, after step S5, the display control unit 16 determines whether the drawing has been performed for all the strokes included in the character (S6). Here, the above-mentioned "predetermined line width" refers to the line width of characters after correction by the gradation correction unit 21.
 S6において全てのストロークについて上記描画を行ったと判定されなかった場合には、再度、情報処理装置1は、処理をステップS4に戻す。一方、S6全てのストロークについて上記描画を行ったと判定された場合には、情報処理装置1は、当該文字についての一連の処理を終了する。 If it is not determined in S6 that the drawing has been performed for all the strokes, the information processing apparatus 1 returns the process to step S4 again. On the other hand, when it is determined that the drawing has been performed for all the strokes in S6, the information processing apparatus 1 ends the series of processes for the character.
 図8は、図7のステップS5の処理の詳細を示したフローチャートである。なお、図8においては、要素線分の傾きの絶対値が1以上の場合であって、各要素線分に関し、要素線分の始点のY座標が、当該要素線分の終点のY座標よりも小さい場合を例に挙げて説明する。 FIG. 8 is a flowchart showing the details of the process of step S5 of FIG. In FIG. 8, the absolute value of the slope of the element segment is 1 or more, and the Y coordinate of the start point of the element segment is the Y coordinate of the end point of the element segment for each element segment. The case is also described as an example.
 また、以下では、要素線分と上述した中心点CとのX軸方向の距離を算出する場合、要素線分上の処理対象点Gを先に求めた上で、当該処理対象点Gと中心点Cとの距離を算出する構成を挙げて説明する。 In the following, when calculating the distance between the element segment and the center point C described above in the X-axis direction, the processing target point G on the element segment is first obtained, and then the processing target point G and the center are calculated. The configuration for calculating the distance to the point C will be described.
 まず、距離算出部20は、ストローク情報に基づき、一つの要素線分の両端部(始点および終点)の2点の座標値を取得する(S11)。ステップS11の後は、距離算出部20は、上記取得した座標値に基づき、上記要素線分の傾きkを計算する(S12)。ここで、線幅方向(図3から図6ではX軸方向)の線であって、かつ各画素の中心を通る線を、「仮想線L2」と称する。 First, based on the stroke information, the distance calculation unit 20 acquires coordinate values of two points at both ends (start and end points) of one element line segment (S11). After step S11, the distance calculation unit 20 calculates the inclination k of the element line segment based on the acquired coordinate value (S12). Here, a line which is a line in the line width direction (the X-axis direction in FIGS. 3 to 6) and passes through the center of each pixel is referred to as a “virtual line L2”.
 ステップS12の後は、距離算出部20は、当該要素線分の始点座標と終点座標とに基づき、要素線分の両端部近傍における、当該要素線分と上記仮想線L2との交点を求める(S13)。この際、要素線分の端部が重なる画素において、要素線分が短いために当該画素の中心を通る仮想線L2と交わらない場合には、当該要素線分の延長線と当該仮想線L2とが交わる点を上記交点とする。なお、以下では、始点側の交点を「点S」とし、終点側の交点を「点E」とする。 After step S12, the distance calculation unit 20 obtains an intersection point of the element line segment and the imaginary line L2 in the vicinity of both ends of the element line segment based on the start point coordinates and the end point coordinates of the element line segment S13). Under the present circumstances, when the end of an element line segment overlaps, if it does not intersect with an imaginary line L2 passing the center of the pixel because the element line segment is short, the extension line of the element line segment and the imaginary line L2 Let the point of intersection be the above intersection point. Hereinafter, the intersection on the start point side is referred to as “point S”, and the intersection on the end point side is referred to as “point E”.
 ステップS13の後は、距離算出部20は、上述した処理対象点Gを点Sに設定する(S14)。そして、ステップS14の後は、距離算出部20は、上記決定した線幅が奇数であるか否かを判断する(S15)。 After step S13, the distance calculation unit 20 sets the processing target point G described above as the point S (S14). Then, after step S14, the distance calculation unit 20 determines whether the line width determined above is an odd number (S15).
 ステップS15において奇数であると判断された場合には、距離算出部20は、上記処理対象点Gに最も近い、画素の中心点Cを求める(S16)。ステップS16の後は、距離算出部20は、処理対象点Gと求めた中心点Cとの距離|d|を算出する(S17)。具体的には、距離算出部20は、処理対象点GのX座標の値と上記中心点CのX座標の値との差の絶対値を距離|d|とする。 If it is determined in step S15 that the number is an odd number, the distance calculation unit 20 obtains the center point C of the pixel closest to the processing target point G (S16). After step S16, the distance calculation unit 20 calculates the distance | d | between the processing target point G and the calculated center point C (S17). Specifically, the distance calculation unit 20 sets the absolute value of the difference between the value of the X coordinate of the processing target point G and the value of the X coordinate of the central point C as the distance | d |.
 ステップS17の後は、階調補正部21は、上記中心点Cを有する画素を中心とするX軸方向の線幅分(つまり補正前の線幅分)の画素群を基にして、上述した距離|d|に応じた階調の補正を行う(S18)。この画素群に基にして階調補正部21が上記補正を行うことにより、図3や図4に示したように、当該画素群の一方の端部の画素(例えば、図3の画素Pa)と、当該画素群の他の端部の画素に隣接する画素(例えば、図3の画素Pd)について、階調の補正がなされる。そして、ステップS18の後は、情報処理装置1は、処理をステップS19に進める。 After step S17, the gradation correction unit 21 described above based on the pixel group of the line width in the X-axis direction (that is, the line width before correction) centering on the pixel having the central point C. The gradation is corrected in accordance with the distance | d | (S18). The tone correction unit 21 performs the above correction based on this pixel group, and as shown in FIG. 3 and FIG. 4, the pixel at one end of the pixel group (for example, the pixel Pa in FIG. 3) The gradation correction is performed on the pixel (for example, the pixel Pd in FIG. 3) adjacent to the pixel at the other end of the pixel group. Then, after step S18, the information processing device 1 advances the process to step S19.
 ステップS15において奇数ではないと判断された場合には、距離算出部20は、上記処理対象点Gに最も近い、画素間の境界線分を特定する(S20)。ステップS20の後は、距離算出部20は、処理対象点Gと特定された境界線分との距離|d|を算出する(S21)。つまりは、距離算出部20は、処理対象点Gと特定された距離線分の中心点(つまり中心点C)との距離を算出する。具体的には、距離算出部20は、処理対象点GのX座標の値と境界線分のX座標の値との差の絶対値を距離|d|とする。 If it is determined in step S15 that the distance is not an odd number, the distance calculation unit 20 specifies a boundary line segment between pixels that is closest to the processing target point G (S20). After step S20, the distance calculation unit 20 calculates the distance | d | between the processing target point G and the specified boundary line segment (S21). That is, the distance calculation unit 20 calculates the distance between the processing target point G and the center point (that is, the center point C) of the specified distance line segment. Specifically, the distance calculation unit 20 sets the absolute value of the difference between the value of the X coordinate of the processing target point G and the value of the X coordinate of the boundary line segment as the distance | d |.
 ステップS21の後は、階調補正部21は、上記中心点Cを画素群の中心とするX軸方向の線幅分の画素群を基にして、上述した距離|d|に応じた階調の補正を行う(S22)。この画素群に基にして階調補正部21が上記補正を行うことにより、図5や図6に示したように、当該画素群の一方の端部の画素(例えば、図5の画素Pf)と、当該画素群の他の端部の画素に隣接する画素(例えば、図5の画素Ph)について、階調の補正がなされる。そして、ステップS22の後は、情報処理装置1は、処理をステップS19に進める。 After step S21, the tone correction unit 21 sets the tone according to the above-described distance | d | based on the pixel group corresponding to the line width in the X-axis direction with the center point C as the center of the pixel group. Correction is performed (S22). The tone correction unit 21 performs the above correction based on this pixel group, and as shown in FIG. 5 and FIG. 6, the pixel at one end of the pixel group (for example, the pixel Pf in FIG. 5) The gradation correction is performed on a pixel (for example, the pixel Ph in FIG. 5) adjacent to the pixel at the other end of the pixel group. Then, after step S22, the information processing device 1 advances the process to step S19.
 ステップS19においては、距離算出部20は、処理対象点GのX座標の値に上記値kを加え、Y座標の値に1を加える。ステップS19の後は、制御部15は、処理対象点Gの座標値が上記点Eの座標値と一致するか否かを判断する(S23)。 In step S19, the distance calculation unit 20 adds the value k to the value of the X coordinate of the processing target point G, and adds 1 to the value of the Y coordinate. After step S19, the control unit 15 determines whether the coordinate value of the processing target point G matches the coordinate value of the point E (S23).
 ステップS20において一致しないと判断された場合には、情報処理装置1は、再度、処理をステップS15に戻す。一方、ステップS20において一致すると判断された場合には、表示制御部16は、ストロークの骨格線に含まれる全ての要素線分に対して、上述したステップS12からステップS23に基づく処理が行われたか否かを判断する(S24)。 If it is determined in step S20 that they do not match, the information processing device 1 returns the process to step S15 again. On the other hand, if it is determined in step S20 that the two match, in step S12, the display control unit 16 performs the process based on steps S12 to S23 described above on all the element line segments included in the skeleton line of the stroke. It is determined whether or not it is (S24).
 ステップS24において全ての線分要素に対して処理が行われていないと判断された場合には、情報処理装置1は、再度、処理をステップS11に戻す。一方、ステップS24において全ての線分要素に対して処理が行われたと判断された場合には、情報処理装置1は、処理を図7のステップS6に戻す。 If it is determined in step S24 that the process has not been performed on all the line segment elements, the information processing device 1 returns the process to step S11 again. On the other hand, when it is determined in step S24 that the process has been performed on all the line segment elements, the information processing device 1 returns the process to step S6 in FIG.
 図9は、上記階調補正の効果を説明するための図である。図9(a)は、上記階調補正を行っていない場合の文字(一部)を示した図であり、図9(b)は、階調補正を行った場合の文字(一部)とを示した図である。 FIG. 9 is a diagram for explaining the effect of the tone correction. FIG. 9A shows characters (parts) when the gradation correction is not performed, and FIG. 9B shows characters (parts) when the gradation correction is performed. FIG.
 上記の階調補正を行っていない場合には、図9(a)に示すとおり、シャギーが目立っている。しかしながら、上記の階調補正を行うことにより、図9(b)に示すとおり、シャギーが目立つことなく、輪郭が滑らかになっていることがわかる。 When the above gradation correction is not performed, as shown in FIG. 9A, the shaggy is noticeable. However, as shown in FIG. 9B, it can be seen that, by performing the above-described tone correction, the outline is smooth without a noticeable shaggy.
 以上のように、情報処理装置1は、距離|d|に応じた階調の補正を行うため、情報処理装置1は、補正に際してルックアップテーブル等の階調補正に用いるデータを記憶装置に記憶しておく必要がない。また、情報処理装置1は、画素の階調を距離|d|のみに応じて計算するため、各画素毎にルックアップテーブル内のデータにアクセスする構成に比べ、情報処理装置1は、階調補正に要する時間を短縮することができる。 As described above, since the information processing device 1 performs gradation correction in accordance with the distance | d |, the information processing device 1 stores, in the storage device, data used for gradation correction such as a lookup table at the time of correction. There is no need to keep it. In addition, since the information processing apparatus 1 calculates the gradation of the pixel according to only the distance | d |, the information processing apparatus 1 has the gradation compared to the configuration in which data in the lookup table is accessed for each pixel. The time required for correction can be shortened.
 ところで、VRAMとして機能する第2メモリ14のデータ記憶領域において、上記のような階調を補正した文字を表示データ生成部22によって生成する場合、以下の2通りの方法がある。 By the way, in the data storage area of the second memory 14 functioning as a VRAM, there are the following two methods when the display data generation unit 22 generates characters whose tone is corrected as described above.
 一つ目の方法は、第2メモリ14に文字のデータを直接描画する方法である。つまり、第2メモリ14に既に記憶されているデータ(つまり、表示中のビデオデータ)を文字の背景のデータとして用いて、情報処理装置1が階調の補正を行う方法(以下、直接描画方法と称する)である。 The first method is a method of drawing character data directly in the second memory 14. That is, using the data already stored in the second memory 14 (that is, the video data being displayed) as the character background data, the information processing apparatus 1 performs the gradation correction (hereinafter, the direct drawing method) It is called).
 二つ目の方法は、後述する文字色寄与度を第2メモリ14以外のメモリ(以下、一時メモリと称する)に記憶しておき、情報処理装置1が、当該文字色寄与度を用いて、第2メモリ14に記憶されたデータ(表示中のビデオデータ)を更新する方法(以下、間接描画方法と称する)である。 In the second method, the degree of character color contribution, which will be described later, is stored in a memory other than the second memory 14 (hereinafter referred to as temporary memory), and the information processing apparatus 1 uses the degree of character color contribution. This is a method of updating data (video data being displayed) stored in the second memory 14 (hereinafter referred to as an indirect drawing method).
 以下では、まず直接描画方法について説明し、その後、間接描画方法について説明する。 In the following, the direct drawing method will be described first, and then the indirect drawing method will be described.
 図10は、直接描画方法を行う際の処理の流れを示したフローチャートである。具体的には、図8のフローにおけるステップS18およびステップS22における処理を示したフローチャートである。 FIG. 10 is a flowchart showing the flow of processing when the direct drawing method is performed. Specifically, it is a flow chart showing processing in step S18 and step S22 in the flow of FIG.
 ここでは、説明の便宜上、文字色寄与度といった概念を用いる。「文字色寄与度」とは、階調補正部21による階調補正を行う前の文字の色(くわしくは、各色成分の値)を100とし、階調補正後の文字に関し、階調補正前の文字の色がどの程度寄与しているのかを示した値である。 Here, for convenience of explanation, the concept of character color contribution is used. The “character color contribution degree” means that the color (specifically, the value of each color component) of the character before gradation correction by the gradation correction unit 21 is 100, and the character after gradation correction is before gradation correction. It is a value indicating how much the color of the character contributes.
 具体的には、図3の画素Paについては、文字色寄与度は、100×(1-|d|)となる。また、同図の画素Pbと画素Pcとについては、階調補正が行われないため、文字色寄与度は100となる。さらに、同図の画素Pdについては、文字色寄与度は、100×|d|となる。また、同図の画素Pa~Pd以外の領域では、文字色寄与度は0となる。 Specifically, for the pixel Pa in FIG. 3, the degree of character color contribution is 100 × (1− | d |). Further, the gradation correction is not performed for the pixel Pb and the pixel Pc in FIG. Furthermore, for the pixel Pd in the same drawing, the degree of character color contribution is 100 × | d |. Further, in the region other than the pixels Pa to Pd in FIG.
 まず、表示制御部16は、第2メモリ14内の更新対象画素を特定するとともに、当該画素に対応する文字色寄与度を求める(S31)。ステップS31の後は、表示制御部16は、文字色寄与度が100か否かを判断する(S32)。 First, the display control unit 16 specifies the update target pixel in the second memory 14 and obtains the character color contribution degree corresponding to the pixel (S31). After step S31, the display control unit 16 determines whether the degree of character color contribution is 100 or not (S32).
 ステップS32において寄与度が100であると判断された場合には、階調補正部21は、上記更新対象画素の画素値を画素値(Rf,Gf,Bf)で更新する(S33)。つまり、階調補正部21は、更新対象画素を文字色そのもので更新する。 When it is determined in step S32 that the degree of contribution is 100, the gradation correction unit 21 updates the pixel value of the update target pixel with the pixel value (Rf, Gf, Bf) (S33). That is, the gradation correction unit 21 updates the pixel to be updated with the character color itself.
 一方、ステップS32において寄与度が100であると判断されなかった場合には、階調補正部21は、上記更新対象画素の画素値(Rb,Gb,Bb)を取得する(S34)。ステップS34の後は、階調補正部21は、画素値(Rf,Gf,Bf)と、画素値(Rb,Gb,Bb)と、求めた文字色寄与度とを用いて、補正後の画素値を算出する(S35)。なお、補正後の画素値の算出は、上述した式(1)~(3)および式(4)~(6)を用いるため、ここでは省略する。なお、式(1)~(6)では、文字色寄与度を100で割った値(つまり、1-|d|や|d|)を用いて計算している。 On the other hand, when it is not determined that the degree of contribution is 100 in step S32, the gradation correction unit 21 acquires the pixel value (Rb, Gb, Bb) of the update target pixel (S34). After step S34, the gradation correction unit 21 uses the pixel values (Rf, Gf, and Bf), the pixel values (Rb, Gb, and Bb), and the calculated character color contribution factor to calculate the corrected pixels. A value is calculated (S35). The calculation of the pixel value after correction is omitted here because it uses the above-mentioned equations (1) to (3) and equations (4) to (6). In Equations (1) to (6), calculation is performed using a value obtained by dividing the degree of character color contribution by 100 (that is, 1− | d | or | d |).
 ステップS35の後は、階調補正部21は、上記更新対象画素の画素値を補正後の画素値で更新する(S36)。これにより、図3の画素Paや画素Pdの階調が補正されることになる。 After step S35, the gradation correction unit 21 updates the pixel value of the update target pixel with the pixel value after correction (S36). Thereby, the gradation of the pixel Pa and the pixel Pd in FIG. 3 is corrected.
 図11は、間接描画方法を行う際の処理の流れの一部を示したフローチャートである。
 まず、表示制御部16は、上記一時メモリ内の更新対象画素を1つ特定するとともに、当該画素に対応する文字色寄与度K1を求める(S41)。ステップS41の後は、表示制御部16は、上記一時メモリ内に上記更新対象画素の文字色寄与度が既に記憶されているかを判断する(S42)。
FIG. 11 is a flowchart showing a part of the flow of processing when performing the indirect drawing method.
First, the display control unit 16 specifies one update target pixel in the temporary memory, and obtains the character color contribution degree K1 corresponding to the pixel (S41). After step S41, the display control unit 16 determines whether the character color contribution degree of the update target pixel is already stored in the temporary memory (S42).
 ステップS42において文字色寄与度が既に記憶されていると判断された場合には、制御部15は、ステップS41で求めた文字色寄与度K1が、既に記憶されていた文字色寄与度K2よりも大きいか否かを判断する(S43)。一方、S42において文字色寄与度が既に記憶されていると判断されなかった場合には、情報処理装置1は、処理をステップS44に進める。 If it is determined in step S42 that the degree of character color contribution is already stored, control unit 15 determines that the degree of character color contribution K1 determined in step S41 is greater than the degree of character color contribution K2 already stored. It is judged whether it is large (S43). On the other hand, when it is not determined in S42 that the degree of character color contribution is already stored, the information processing device 1 advances the process to step S44.
 ステップS43において大きいと判断されなかった場合には、情報処理装置1は、処理をステップS45に進める。一方、ステップS43において大きいと判断された場合には、情報処理装置1は、処理をステップS44に進める。ステップS44では、更新対象画素の文字色寄与度をK1に設定する。そして、ステップS44の後は、情報処理装置1は、処理をステップS45に進める。 If it is not determined in step S43 that the value is large, the information processing device 1 causes the process to proceed to step S45. On the other hand, when it is determined in step S43 that the value is large, the information processing device 1 causes the process to proceed to step S44. In step S44, the character color contribution rate of the update target pixel is set to K1. Then, after step S44, the information processing device 1 causes the process to proceed to step S45.
 ステップS45においては、表示制御部16は、一文字に含まれる全ての更新対象画素について処理が行われたか否かが判断する。ステップS45において全ての更新対象画素について処理が行われていないと判断された場合には、情報処理装置1は、再度、処理をS41に戻す。 In step S45, display control unit 16 determines whether or not the process has been performed on all update target pixels included in one character. If it is determined in step S45 that the process has not been performed on all update target pixels, the information processing device 1 returns the process to S41 again.
 一方、ステップS45において全ての更新対象画素について処理が行われたと判断された場合には、情報処理装置1は、一時メモリに記憶された文字色寄与度を用いて各画素の画素値を算出し、当該算出した画素値を用いて、第2メモリ14における画素値を更新する(S46)。この更新処理により、階調の補正がなされる。なお、画素値の算出については、情報処理装置1は上述した式(1)~(3)および式(4)~(6)を用いるため、ここでは説明を繰り返さない。 On the other hand, when it is determined in step S45 that the process has been performed on all update target pixels, the information processing device 1 calculates the pixel value of each pixel using the character color contribution degree stored in the temporary memory. The pixel value in the second memory 14 is updated using the calculated pixel value (S46). Gradation correction is performed by this updating process. Since the information processing apparatus 1 uses the above-described equations (1) to (3) and equations (4) to (6) for the calculation of the pixel value, the description will not be repeated here.
 間接描画方法は、全ての更新対象画素の文字色寄与度を求めた上で第2メモリ14における画素値を更新する構成であるため、一つのストローク毎に描画を行う図7のフローとは異なることになる。 The indirect drawing method is configured to update the pixel values in the second memory 14 after obtaining the character color contribution degree of all the update target pixels, and therefore differs from the flow in FIG. 7 in which drawing is performed for each stroke. It will be.
 また、情報処理装置1が上記直接描画方法を用いることにより、情報処理装置1は、間接描画方法に用いたような一時メモリが不要となる。また、一時メモリから第2メモリ14への転送も不要であるため、情報処理装置1は、処理の高速化を図れる。 Further, when the information processing apparatus 1 uses the direct drawing method, the information processing apparatus 1 does not need a temporary memory as used in the indirect drawing method. Further, since transfer from the temporary memory to the second memory 14 is also unnecessary, the information processing apparatus 1 can speed up the process.
 一方、情報処理装置1が間接描画方法を用いることにより、情報処理装置1は、要素線分が交差する箇所や、要素線分が込み合っている箇所においても、文字色の階調が他の箇所の階調よりも高くなることを防止することができる。 On the other hand, when the information processing apparatus 1 uses the indirect drawing method, the information processing apparatus 1 generates a character color at another point where the element line segments cross or where the element line segments are crowded. Can be prevented from becoming higher than the gradation of.
 ところで、上記においては、要素線分が、X軸に平行であろうと、Y軸に平行であろうと、情報処理装置1は、階調補正部21により上述した階調の補正を行う。しかしながら、X軸に平行な要素線分により描画される記号(記号の一部)、およびY軸に平行な要素線分により描画される記号(記号の一部)は、そもそも階段状のギザギザ(ジャギー)が発生しない。このため、情報処理装置1は、X軸およびY軸に対して傾きを有する要素線分(つまり斜めの線分)についてのみ上述した階調の補正を行うことが好ましい。 By the way, in the above, the information processing apparatus 1 performs the above-described gradation correction by the gradation correction unit 21 whether the element line segment is parallel to the X axis or parallel to the Y axis. However, the symbol drawn by the element segment parallel to the X axis (part of the symbol) and the symbol drawn by the element segment parallel to the Y axis (part of the symbol) Jaggies do not occur. For this reason, it is preferable that the information processing device 1 perform the above-described gradation correction only for the element line segment having an inclination with respect to the X axis and the Y axis (that is, an oblique line segment).
 そこで、以下では、情報処理装置1が平行判定部30と補正制限部31とを利用する構成について説明する。 Therefore, in the following, a configuration in which the information processing apparatus 1 uses the parallel determination unit 30 and the correction limitation unit 31 will be described.
 平行判定部30は、各要素線分が、X軸またはY軸と平行な直線であるか否かを、スケーリングされたスケルトンデータ(骨格線を示した情報)に基づいて判定する。 The parallel determination unit 30 determines whether each element line segment is a straight line parallel to the X axis or the Y axis based on the scaled skeleton data (information indicating a skeleton line).
 補正制限部31は、平行判定部30によって平行であると判定された要素線分と重なる画素を含んだ要素画素群に関しては、上述した階調の補正がなされないよう補正を制限する。 The correction limiting unit 31 limits the correction so that the gradation correction described above is not performed for an element pixel group including pixels overlapping with the element line segment determined to be parallel by the parallel determination unit 30.
 図12は、平行判定部30と補正制限部31とを用いて、補正の制限を行った場合に得れる記号の一部を示した図である。なお、同図において点線は、画素の中心点間を結んだ線である。 FIG. 12 is a diagram showing a part of symbols obtained when the limitation of correction is performed using the parallel determination unit 30 and the correction limitation unit 31. As shown in FIG. Note that, in the drawing, dotted lines are lines connecting center points of pixels.
 同図に示すとおり、要素線分L3は斜線の線分であり、要素線分L4はY軸と平行な線分である。情報処理装置1が要素線分L3に基づいて文字の一部分を表示する場合には、同図に示すとおり、階調補正部21は、階調の補正を行っている。そして、当該補正により、線幅は3から4に増えている。一方、情報処理装置1が要素線分L4に基づいて記号の一部分を表示する場合には、同図に示すとおり、補正制限部31は、階調の補正を制限している。 As shown in the figure, the element line segment L3 is a diagonal line segment, and the element line segment L4 is a line segment parallel to the Y axis. When the information processing apparatus 1 displays a part of a character based on the element line segment L3, as shown in the figure, the gradation correction unit 21 performs gradation correction. Then, the line width is increased from 3 to 4 by the correction. On the other hand, when the information processing apparatus 1 displays a part of the symbol based on the element line segment L4, as shown in the figure, the correction limiting unit 31 limits the correction of the gradation.
 この結果、情報処理装置1は、斜めの文字の部分に関しては、シャギーを目だ出せなくすることができるとともに、Y軸に平行な文字の部分に関しては、文字がぼやけてしまうことを回避できる。さらに、X軸やY軸に平行な要素線分については、距離|d|に基づく階調補正の演算が不要となるため、情報処理装置1は、当該平行な要素線分に対して階調補正の演算を実行する構成に比べて、表示に要する時間を短縮することが可能となる。 As a result, the information processing apparatus 1 can not make the shaggy visible for the oblique character portion, and can prevent the character from being blurred for the character portion parallel to the Y axis. Furthermore, for the element line segment parallel to the X axis and the Y axis, since the calculation of the gradation correction based on the distance | d | becomes unnecessary, the information processing apparatus 1 generates the gradation relative to the parallel element line segment It becomes possible to shorten the time which display requires compared with the composition which performs the operation of amendment.
 このように、補正制限部31は、平行判定部30によって平行であると判定された要素線分と重なる画素を含んだ要素画素群における一方の端部の画素(図12では、例えば画素Pj)と、当該要素画素群の上記他方の端部に隣接する画素であって、当該要素画素群に含まれていない画素(同図では、例えば画素Pk)とについては、階調補正部21による補正を制限する構成であるといえる。 Thus, the correction limiting unit 31 determines the pixel at one end of the element pixel group including the pixel overlapping with the element line segment determined to be parallel by the parallel determination unit 30 (for example, the pixel Pj in FIG. 12). For the pixels adjacent to the other end of the element pixel group and not included in the element pixel group (for example, the pixel Pk in the figure), the correction by the gradation correction unit 21 is performed. It can be said that the configuration is to limit the
 ところで、情報処理装置1が上記のように補正制限部31を用いて階調の補正をする場合、以下のような問題点が生じる。 By the way, when the information processing apparatus 1 corrects the gradation using the correction limiting unit 31 as described above, the following problems occur.
 図13は、斜めの要素線分L5と、当該要素線分L5に連続する要素線分L6とを用いて描画した文字の一部分を示した図である。なお、同図においては、補正制限部31による上述した補正の制限が行われている。 FIG. 13 is a diagram showing a part of a character drawn using an oblique element line segment L5 and an element line segment L6 continuous to the element line segment L5. In the same figure, the above-mentioned correction limitation by the correction limiting unit 31 is performed.
 この場合、同図に示すとおり、情報処理装置1は、画素Pmと画素Pnとについても階調の補正を行ってしまう。それゆえ、要素線分L5と要素線分L6とにより形成される角度のうち優角側(角度が180度以上の側)の領域において、Y軸に平行な記号の輪郭線に対して凸部が形成されてしまう。このため、文字の見た目が悪くなる。 In this case, as shown in the figure, the information processing device 1 corrects the gradation also for the pixel Pm and the pixel Pn. Therefore, in a region on the superior angle side (side where the angle is 180 degrees or more) of the angles formed by the element line segment L5 and the element line segment L6, a convex portion with respect to the outline of the symbol parallel to the Y axis Is formed. Because of this, the appearance of the character becomes worse.
 そこで、以下では、補正制限部31の機能の一部を変更し、情報処理装置1が、文字の見た目が悪くなることを防止する構成について説明する。 Therefore, hereinafter, a configuration will be described in which the information processing apparatus 1 prevents the appearance of the characters from being deteriorated by changing a part of the function of the correction limiting unit 31.
 図14は、このように補正制限部31の機能を変更することにより得られる文字の一部分を示した図である。情報処理装置1が上記要素線分L5と上記要素線分L6とを用いて文字の一部を描画する場合に、同図に示すように、情報処理装置1は、少なくとも画素Pmと画素Pnとについては階調の補正を行わない。 FIG. 14 is a view showing a part of characters obtained by changing the function of the correction limiting unit 31 in this manner. When the information processing apparatus 1 draws a part of a character using the element line segment L5 and the element line segment L6, as shown in the figure, the information processing apparatus 1 includes at least a pixel Pm and a pixel Pn. No gradation correction is performed for.
 以下では、このような見た目のよい文字を表示させるための処理について、図15から図18に基づいて説明する。 In the following, processing for displaying such good-looking characters will be described based on FIGS. 15 to 18.
 図15は、或る1つのストロークを描画する際に用いられる各要素線分を示した図である。同図においては、3つの要素線分L10,L11,L12が記されている。また、同図においては、要素線分L10の始点を点H、要素線分L10の終点でありかつ要素線分L11の始点を点I、要素線分L11の終点でありかつ要素線分L12の終点を点Jと、要素線分L12の終点を点Kとしている。 FIG. 15 is a diagram showing each element line segment used when drawing a certain stroke. In the figure, three element line segments L10, L11 and L12 are described. In the same figure, the start point of the element line segment L10 is the point H, the end point of the element line segment L10, and the start point of the element line segment L11 is the end point of the element line segment L11, and the element line segment L12 The end point is a point J, and the end point of the element line L12 is a point K.
 また、スケーリングされた座標データにおいては、点Hの座標値、点Iの座標値、点Jの座標値、点Kの座標値が、この順に並んでいるものとする。さらに、情報処理装置1は、要素線分L10に基づくストロークを最初に描画し、その後、要素線分L11に基づくストロークの描画を行い、最後に要素線分L12に基づくストロークの描画を行うものとする。 In the scaled coordinate data, it is assumed that the coordinate value of point H, the coordinate value of point I, the coordinate value of point J, and the coordinate value of point K are arranged in this order. Furthermore, the information processing apparatus 1 first draws a stroke based on the element line segment L10, then draws a stroke based on the element line segment L11, and finally draws a stroke based on the element line segment L12. Do.
 さらに、情報処理装置1が要素線分L11に基づくストロークの描画を行っている際には、要素線分L10を「描画対象の直前の要素線分」と称し、要素線分L12を「描画対象の直後の要素線分」と称する。また、同図においては、当該描画に用いられている要素線分L11上の点であって、上述した処理対象点Gのうち、最初に処理が行われる点を点Sと、最後に処理が行われる点を点Eとして表示している。さらに、要素線分L11の傾きを1以上とする。 Furthermore, when the information processing apparatus 1 is drawing a stroke based on the element line segment L11, the element line segment L10 is referred to as "element line segment immediately before drawing object", and the element line segment L12 is It is called "element line segment immediately after". Further, in the figure, a point on the element line segment L11 used for the drawing, among the above-described processing target points G, a point S to be processed first, and a process at the end The point to be performed is indicated as point E. Further, the inclination of the element line segment L11 is set to 1 or more.
 以下では、このような定義の下、処理の具体的な内容について説明する。
 図16は、ストローク描画(図7のステップS5)における処理の詳細を示したフローチャートである。
Below, the specific content of a process is demonstrated under such a definition.
FIG. 16 is a flowchart showing details of processing in stroke drawing (step S5 in FIG. 7).
 まず、表示制御部16は、要素線分L10の座標値(つまり、図15における点Hと点Iの座標値)をスケーリング後のスケルトンデータから取得する(S51)。ステップS51の後は、距離算出部20は、要素線分L10の傾きを算出する(S52)。そして、ステップS52の後は、距離算出部20は、上記点Sと点Eとの座標値を算出する(S53)。さらに、ステップS53の後は、距離算出部20は、処理対象点Gを点Sに設定する(S54)。 First, the display control unit 16 acquires coordinate values of the element line segment L10 (that is, coordinate values of the point H and the point I in FIG. 15) from the scaled skeleton data (S51). After step S51, the distance calculation unit 20 calculates the inclination of the element line segment L10 (S52). Then, after step S52, the distance calculation unit 20 calculates coordinate values of the point S and the point E (S53). Furthermore, after step S53, the distance calculation unit 20 sets the processing target point G as the point S (S54).
 ステップS54の後は、表示制御部16は、X軸方向の上限値Xmaxと下限値Xminとを設定する(S55)。ここで、表示制御部16がX軸方向の上限値と下限値とを設定する理由は、要素線分L10の傾きが1以上であり、X軸方向に線幅が形成されるためである。なお、要素線分の傾きが1以下である場合には、Y軸方向に上限値と下限値とが設定されることになる。そして、ステップS55の後は、距離算出部20は、線幅が奇数であるか否かが判断される(S56)。なお、ここでの線幅は、階調補正を行う前の線幅である。 After step S54, the display control unit 16 sets the upper limit Xmax and the lower limit Xmin in the X-axis direction (S55). Here, the reason why the display control unit 16 sets the upper limit value and the lower limit value in the X-axis direction is that the inclination of the element line segment L10 is 1 or more, and a line width is formed in the X-axis direction. When the inclination of the element line segment is 1 or less, the upper limit value and the lower limit value are set in the Y-axis direction. Then, after step S55, the distance calculation unit 20 determines whether the line width is an odd number (S56). Here, the line width is a line width before tone correction.
 ステップS56において奇数であると判断された場合には、距離算出部20は、処理対象点Gに最も近い、画素の中心点(つまり、中心点C)のX座標値を求める(S57)。なお、以下では、処理対象点Gの座標値を(Xg,Yg)とし、中心点Cの座標値を(Xc,Yc)と表記する。なお、この場合、YgとYcとは同じ値となる。つまり、中心点Cの座標値は、(Xc,Yg)としても表せる。 If it is determined in step S56 that the number is an odd number, the distance calculation unit 20 obtains the X coordinate value of the central point of the pixel (that is, the central point C) closest to the processing target point G (S57). In the following, the coordinate values of the processing target point G are denoted by (Xg, Yg), and the coordinate values of the central point C are denoted by (Xc, Yc). In this case, Yg and Yc have the same value. That is, the coordinate value of the central point C can also be expressed as (Xc, Yg).
 ステップS57の後は、距離算出部20は、Xgが、Xmin以上かつXmax以下であるか否かを判断する(S58)。ステップS58においてXmin以上かつXmax以下であると判断された場合には、距離算出部20は、処理対象点Gと中心点Cとの距離|d|を算出する(S59)。そして、ステップS39の後は、階調補正部21は、距離算出部20が算出した距離|d|を用いて、上述したようにストロークの一部(図3参照)を描画する(S60)。そして、ステップS60の後は、距離算出部20は、処理対象点GのX座標値に上記kを加えるとともに、当該処理対象点GのY座標値に1を加える(S61)。 After step S57, the distance calculation unit 20 determines whether Xg is not less than Xmin and not more than Xmax (S58). If it is determined in step S58 that Xmin or more and Xmax or less, the distance calculation unit 20 calculates the distance | d | between the processing target point G and the central point C (S59). Then, after step S39, the gradation correction unit 21 draws a part of the stroke (see FIG. 3) as described above, using the distance | d | calculated by the distance calculation unit 20 (S60). Then, after step S60, the distance calculation unit 20 adds k to the X coordinate value of the processing target point G, and adds 1 to the Y coordinate value of the processing target point G (S61).
 一方、ステップS58においてXmin以上かつXmax以下であると判断されなかった場合には、距離算出部20は、点(Xc,Yg)を、線幅方向に連続した画素で構成される画素群(要素画素群)の中心点とし、表示制御部16は、従来のように、階調補正を行うことなくストロークの一部を描画する(S62)。つまり、図14に示した画素Pnや画素Pmについては階調の補正がなされることなく、情報処理装置1は、当該画素Pn,Pmを背景の色のままとすることが可能となる。したがって、情報処理装置1は、見た目のよい文字を得ることができる。ステップS62の後は、情報処理装置1は、処理をステップS61に進める。 On the other hand, if it is not determined in step S58 that Xmin or more and Xmax or less, the distance calculation unit 20 determines that the point (Xc, Yg) is a pixel group (element) consisting of continuous pixels in the line width direction. The display control unit 16 draws a part of the stroke without performing the gradation correction as in the related art, as the center point of the pixel group (S62). That is, without the gradation correction being performed on the pixel Pn and the pixel Pm illustrated in FIG. 14, the information processing device 1 can keep the pixels Pn and Pm as the background color. Therefore, the information processing apparatus 1 can obtain good looking characters. After step S62, the information processing device 1 causes the process to proceed to step S61.
 ところで、ステップS56において奇数であると判断されなかった場合には、距離算出部20は、処理対象点Gに最も近い、上記境界線分の中心点(つまり、中心点C)の座標値を求める(S63)。 By the way, when it is not determined to be an odd number in step S56, the distance calculation unit 20 obtains the coordinate value of the center point (that is, the center point C) of the boundary line segment closest to the processing target point G. (S63).
 ステップS63の後は、距離算出部20は、Xgが、Xmin以上かつXmax以下であるか否かを判断する(S64)。ステップS64においてXmin以上かつXmax以下であると判断された場合には、距離算出部20は、処理対象点Gと中心点Cとの距離|d|を算出する(S65)。そして、ステップS59の後は、階調補正部21は、距離算出部20が算出した距離|d|を用いて、上述したようにストロークの一部(図5参照)を描画する(S66)。そして、ステップS66の後は、情報処理装置1は、処理をステップS61に進める。 After step S63, the distance calculation unit 20 determines whether Xg is not less than Xmin and not more than Xmax (S64). If it is determined in step S64 that Xmin or more and Xmax or less, the distance calculation unit 20 calculates the distance | d | between the processing target point G and the central point C (S65). Then, after step S59, the gradation correction unit 21 draws a part of the stroke (see FIG. 5) as described above, using the distance | d | calculated by the distance calculation unit 20 (S66). Then, after step S66, the information processing device 1 causes the process to proceed to step S61.
 一方、ステップS64においてXmin以上かつXmax以下であると判断されなかった場合には、情報処理装置1は、処理をステップS62に進める。 On the other hand, when it is not determined in step S64 that Xmin or more and Xmax or less, the information processing device 1 proceeds with the process to step S62.
 ステップS61の後は、距離算出部20は、処理対象点Gの座標値が点Eの座標値と同じか否かを判断する(S67)。ステップS67において同じであると判断されなかった場合には、情報処理装置1は、再度、処理をステップS56に戻す。一方、ステップS67において同じであると判断された場合には、表示制御部16は、上記一つのストロークに含まれる全ての要素線分L10,L11,L12について処理がなされたか否かを判断する(S68)。 After step S61, the distance calculation unit 20 determines whether the coordinate value of the processing target point G is the same as the coordinate value of the point E (S67). If it is not determined in step S67 that they are the same, the information processing device 1 returns the process to step S56 again. On the other hand, if it is determined in step S67 that they are the same, the display control unit 16 determines whether or not the process has been performed for all of the element line segments L10, L11, and L12 included in the one stroke ( S68).
 ステップS68において全ての要素線分について処理がなされたと判断されなかった場合には、情報処理装置1は、再度、処理をステップS51に戻す。一方、ステップS68において全ての要素線分について処理がなされたと判断された場合には、情報処理装置1は、処理を終了する。 If it is not determined in step S68 that the process has been performed on all the element line segments, the information processing device 1 returns the process to step S51 again. On the other hand, when it is determined in step S68 that the processing has been performed for all the element line segments, the information processing apparatus 1 ends the processing.
 図17は、図16のステップS55における、上限値と下限値との設定方法を示したフローチャートである。なお、説明の便宜上、要素線分L11についての上限値と下限値との設定を例に挙げて説明する。 FIG. 17 is a flowchart showing a setting method of the upper limit value and the lower limit value in step S55 of FIG. Note that, for convenience of description, setting of the upper limit value and the lower limit value of the element line segment L11 will be described as an example.
 まず、表示制御部16は、直前の要素線分L10が、X軸またはY軸に平行な線分(横線または縦線)であるか否かを、点Hと点Iとの座標値に基づき判断する(S71)。ステップS71において平行な線分であると判断された場合には、表示制御部16は、線幅が奇数であるか否かを判断する(S72)。なお、ここでの線幅は、階調補正を行う前の線幅である。 First, the display control unit 16 determines, based on the coordinate values of the point H and the point I, whether or not the element line segment L10 immediately before is a line segment (horizontal line or vertical line) parallel to the X axis or Y axis. It judges (S71). If it is determined in step S71 that the line segments are parallel, the display control unit 16 determines whether the line width is an odd number (S72). Here, the line width is a line width before tone correction.
 ステップS72において奇数であると判断された場合には、表示制御部16は、下限値Xminを、点Sを含む画素の中心点の座標のX座標値に設定する(S73)。その後、情報処理装置1は、処理をステップS76に進める。一方、ステップS72において奇数であると判断されなかった場合には、表示制御部16は、下限値Xminを、点Sに最も近い上記境界線分のX座標値に設定する(S74)。その後、情報処理装置1は、処理をステップS56に進める。 If it is determined in step S72 that the number is an odd number, the display control unit 16 sets the lower limit value Xmin to the X coordinate value of the coordinate of the central point of the pixel including the point S (S73). Thereafter, the information processing device 1 proceeds with the process to step S76. On the other hand, when it is not determined to be odd in step S72, the display control unit 16 sets the lower limit value Xmin to the X coordinate value of the boundary line segment closest to the point S (S74). Thereafter, the information processing device 1 proceeds with the process to step S56.
 また、ステップS51において平行な線分であると判断されなかった場合には、表示制御部16は、下限値Xminを、Xgがとり得る値のうち、最小となる値に設定する(S75)。その後、情報処理装置1は、処理をステップS76に進める。 If it is not determined in step S51 that the line segments are parallel, the display control unit 16 sets the lower limit value Xmin to a minimum value among the values that can be taken by Xg (S75). Thereafter, the information processing device 1 proceeds with the process to step S76.
 ステップS76においては、表示制御部16は、直後の要素線分L12が、X軸またはY軸に平行な線分であるか否かを、点Jと点Kとの座標値に基づき判断する。ステップS76において平行な線分であると判断された場合には、表示制御部16は、線幅が奇数であるか否かを判断する(S77)。なお、ここでの線幅は、階調補正を行う前の線幅である。 In step S76, the display control unit 16 determines, based on the coordinate values of the point J and the point K, whether the element line segment L12 immediately after it is a line segment parallel to the X axis or the Y axis. If it is determined in step S76 that the line segments are parallel, the display control unit 16 determines whether the line width is an odd number (S77). Here, the line width is a line width before tone correction.
 ステップS77において奇数であると判断された場合には、表示制御部16は、上限値Xmaxを、点Eを含む画素の中心点の座標のX座標値に設定する(S78)。その後、情報処理装置1は、処理を終了する。一方、ステップS77において奇数であると判断されなかった場合には、表示制御部16は、上限値Xmaxを、点Eに最も近い上記境界線分のX座標値に設定する(S79)。その後、情報処理装置1は、処理を終了する。 If it is determined in step S77 that the number is an odd number, the display control unit 16 sets the upper limit value Xmax to the X coordinate value of the coordinate of the central point of the pixel including the point E (S78). Thereafter, the information processing device 1 ends the process. On the other hand, if it is not determined to be odd in step S77, the display control unit 16 sets the upper limit value Xmax to the X coordinate value of the boundary line segment closest to the point E (S79). Thereafter, the information processing device 1 ends the process.
 また、ステップS77において平行な線分であると判断されなかった場合には、表示制御部16は、上限値Xmaxを、Xgがとり得る値のうち、最大となる値に設定する(S80)。その後、情報処理装置1は処理を終了する。 If it is not determined in step S77 that the line segments are parallel, the display control unit 16 sets the upper limit value Xmax to a maximum value among the values that can be taken by Xg (S80). Thereafter, the information processing device 1 ends the process.
 図18は、上限値の設定例と、下限値の設定例とを示した図である。
 図18(a)は、図17のフローに示したように、X座標についての上限値Xmaxを示した図であり、図18(b)は、図17のフローに示したように、X座標についての下限値Xminを示した図である。また、図18(c)は、Y座標についての上限値Ymaxを示した図であり、図18(b)は、Y座標についての下限値Yminを示した図である。
FIG. 18 is a diagram showing an example of setting the upper limit value and an example of setting the lower limit value.
18 (a) is a diagram showing the upper limit value Xmax for the X coordinate as shown in the flow of FIG. 17, and FIG. 18 (b) is the X coordinate as shown in the flow of FIG. Is a diagram showing a lower limit value Xmin for. FIG. 18C is a diagram showing the upper limit Ymax of the Y coordinate, and FIG. 18B is a diagram showing the lower limit Ymin of the Y coordinate.
 ここで、X軸またはY軸に平行な要素線分(例えば、図18の縦線や横線)と重なる画素を含んだ各要素画素群における各中心点を通る線を、「仮想線L15(第1仮想線)」とする。つまり、仮想線L15は、要素線分がX軸に平行であれば、X軸に平行な線分となり、要素線分がY軸に平行であれば、Y軸に平行な線分となる。なお、図13および図14の太い点線が、仮想線L15に該当する。 Here, a line passing each center point in each element pixel group including pixels overlapping with an element line segment parallel to the X axis or Y axis (for example, a vertical line or a horizontal line in FIG. 18) 1 virtual line) That is, the imaginary line L15 is a line segment parallel to the X axis if the element line segment is parallel to the X axis, and is a line segment parallel to the Y axis if the element line segment is parallel to the Y axis. The thick dotted lines in FIGS. 13 and 14 correspond to the imaginary line L15.
 また、上記平行な要素線分と連続するとともに当該要素線分に対して傾きを有する他の要素線分(例えば、図18の斜線分)と重なる画素を含んだ要素画素群における中心点を通る線であって、かつ前記第1仮想線と垂直な線を、「仮想線L16(第2仮想線)」とする。つまり、仮想線L16は、上述した仮想線L2と同様、線幅方向(図3から図6ではX軸方向)の線であって、かつ各画素の中心を通る線である。なお、図14においては、仮想線L16は、X軸方向に平行な線となる。 In addition, it passes through the center point in an element pixel group including pixels that are continuous with the parallel element line segment and that overlap with another element line segment (for example, the hatched portion in FIG. 18) having an inclination with respect to the element line segment. A line that is perpendicular to the first virtual line is a “virtual line L16 (second virtual line)”. That is, the virtual line L16 is a line in the line width direction (the X-axis direction in FIGS. 3 to 6) and passes through the centers of the respective pixels, similarly to the above-described virtual line L2. In FIG. 14, the virtual line L16 is a line parallel to the X-axis direction.
 このように仮想線L15および仮想線L16を定義すると、仮想線L16と上記他の要素線分との交点の位置と、仮想線L15の位置とが所定の関係を満たす場合、補正制限部31は、以下の構成といえる。すなわち、補正制限部31は、当該交点と重なる画素を含んだ要素画素群における一方の端部の画素と、当該要素画素群における前記他方の端部の画素と前記線幅の方向に隣接する画素であるとともに当該要素画素群に含まれていない画素とについては、階調補正部21による階調の補正を制限する構成といえる。 When the virtual line L15 and the virtual line L16 are defined as described above, the correction limiting unit 31 determines that the position of the intersection of the virtual line L16 and the other element line segment satisfies the predetermined relationship with the position of the virtual line L15. , It can be said that the following configuration. That is, the correction limiting unit 31 determines that the pixel at one end of the element pixel group including the pixel overlapping the intersection, the pixel at the other end of the element pixel group, and the pixel adjacent in the direction of the line width At the same time, it can be said that the correction of gradation by the gradation correction unit 21 is limited for the pixels not included in the element pixel group.
 ところで、図14から図18においては、見た目のよい文字を表示させるために、補正制限部31は、所定の画素(例えば、図14の画素Pmおよび画素Pn)については階調の補正を制限した。以下では、同様に見た目のよい文字を情報処理装置1が表示するために、情報処理装置1が線分補正部32を用いる構成について説明する。 By the way, in FIGS. 14 to 18, in order to display characters with good appearance, the correction limiting unit 31 limits the correction of gradation for a predetermined pixel (for example, the pixel Pm and the pixel Pn in FIG. 14). . In the following, a configuration will be described in which the information processing device 1 uses the line segment correction unit 32 in order to cause the information processing device 1 to similarly display visually pleasing characters.
 線分補正部32は、所定の要素線分に関し、要素線分の傾きを変更することなく、要素線分の長さを変更する。詳しくは、線分補正部32は、各要素線分の始点の座標値と、終点の座標値とを変更することにより、要素線分の長さを変更する。 The line segment correction unit 32 changes the length of an element line segment without changing the inclination of the element line segment for a predetermined element line segment. Specifically, the line segment correction unit 32 changes the length of the element line segment by changing the coordinate value of the start point of each element line segment and the coordinate value of the end point.
 図19は、線分補正部32による補正前の要素線分L20,L21と、補正後の要素線分L20′,L21′とを示した図である。図19(a)は、補正前の要素線分を示しており、図19(b)は、補正後の要素線分を示している。 FIG. 19 is a diagram showing element line segments L20 and L21 before correction by the line segment correction unit 32, and element line segments L20 ′ and L21 ′ after correction. FIG. 19A shows an element line segment before correction, and FIG. 19B shows an element line segment after correction.
 図19(a)に示すとおり、要素線分L20と要素線分L21とは連続した線分である。また、要素線分L21は、Y軸に平行な線分である。また、要素線分L20は、要素線分L21に対して所定の傾きを有している。さらに、同図においては、要素線分L20は、X軸に対して1以上の傾きを有している。 As shown in FIG. 19A, the element line segment L20 and the element line segment L21 are continuous line segments. The element line segment L21 is a line segment parallel to the Y axis. Further, the element line segment L20 has a predetermined inclination with respect to the element line segment L21. Furthermore, in the figure, the element line segment L20 has an inclination of 1 or more with respect to the X axis.
 また、同図に示すとおり、要素線分L20の始点を点Tと、要素線分L20の終点であるとともに要素線分L21の始点を点Uと、要素線分L21の終点を点Vとする。 Further, as shown in the figure, the start point of the element line segment L20 is a point T, the end point of the element line segment L20, the start point of the element line segment L21 is a point U, and the end point of the element line segment L21 is a point V .
 以下では、情報処理装置1が、要素線分L20を、図19(b)に示す要素線分L20′に補正するとともに、要素線分L21を、同図に示した要素線分L21′に補正する具体的方法について説明する。まず、要素線分L20の補正について説明する。 In the following, the information processing apparatus 1 corrects the element line segment L20 to an element line segment L20 ′ illustrated in FIG. 19B, and corrects the element line segment L21 to an element line segment L21 ′ illustrated in FIG. The specific method to carry out will be described. First, correction of the element line segment L20 will be described.
 図20は、補正前の要素線分L20と、補正後の要素線分L20′とを示した図である。図20(a)は、補正前の要素線分L20を示しており、図20(b)は、補正後の要素線分L20′を示している。 FIG. 20 is a diagram showing an element line segment L20 before correction and an element line segment L20 ′ after correction. FIG. 20A shows an element line segment L20 before correction, and FIG. 20B shows an element line segment L20 ′ after correction.
 ここで、図20(a)および図20(b)に示すとおり、Y軸に平行な要素線分L21と重なる画素を含んだ各要素画素群における各中心点を通る線を、「仮想線L30(第1仮想線)」とする。また、仮想線L30と要素線分L20との交点を、「交点Q」とする。 Here, as shown in FIGS. 20 (a) and 20 (b), a line passing through each central point in each element pixel group including pixels overlapping with the element line segment L21 parallel to the Y axis is referred to as “virtual line L30. (First virtual line) Further, an intersection point of the imaginary line L30 and the element line segment L20 is referred to as an “intersection point Q”.
 線分補正部32は、要素線分L20の長さを、上記交点Qを含む画素に隣接する画素までしか達しない長さに補正する。例えば、図20(b)に示した例では、線分補正部32は、要素線分L20の終点のX座標値を、上記交点QのX座標値から要素線分の傾き(ここでもkとする)を差し引いた値に、同終点のY座標値を、上記交点QのY座標値から1を差し引いた値にする補正を行う。当該補正により、線分補正部32は、要素線分L20の長さを、上記交点Qを含む画素に隣接する画素までしか達しない長さに補正する。 The line segment correction unit 32 corrects the length of the element line segment L20 to such a length that only the pixel adjacent to the pixel including the intersection point Q is reached. For example, in the example shown in FIG. 20B, the line segment correction unit 32 changes the X coordinate value of the end point of the element line segment L20 from the X coordinate value of the intersection point Q to the Then, the Y coordinate value of the end point is corrected to the value obtained by subtracting 1 from the Y coordinate value of the intersection point Q. By the correction, the line segment correction unit 32 corrects the length of the element line segment L20 to such a length that only the pixel adjacent to the pixel including the intersection point Q is reached.
 次に要素線分L21の補正について説明する。
 図21は、補正前の要素線分L21と、補正後の要素線分L21′とを示した図である。図21(a)は、補正前の要素線分L21を示しており、図21(b)は、補正後の要素線分L21′を示している。
Next, correction of the element line segment L21 will be described.
FIG. 21 is a diagram showing an element line segment L21 before correction and an element line segment L21 ′ after correction. FIG. 21A shows an element line segment L21 before correction, and FIG. 21B shows an element line segment L21 ′ after correction.
 線分補正部32は、要素線分L21の長さを、上記交点Qを含む画素まで達する長さに補正する。例えば、図21(b)に示した例では、線分補正部32は、要素線分L21の始点のY座標値が1だけ減少させる補正を行うことにより、要素線分L21の長さを、上記交点Qを含む画素まで達する長さに補正する。つまり、要素線分L21を補正した後の要素線分L21′の始点は点U′となる。 The line segment correction unit 32 corrects the length of the element line segment L21 to a length that reaches the pixel including the intersection point Q. For example, in the example illustrated in FIG. 21B, the line segment correction unit 32 performs the correction to reduce the Y coordinate value of the start point of the element line segment L21 by 1 to obtain the length of the element line segment L21 as The length to reach the pixel including the intersection point Q is corrected. That is, the start point of the element line segment L21 'after correcting the element line segment L21 is the point U'.
 図22は、図20および図21に示した要素線分の長さを補正する際の処理の流れを示したフローチャートである。また、同図は、ストローク描画(図7のステップS5)における処理の詳細を示したフローチャートでもある。 FIG. 22 is a flow chart showing a process flow when correcting the lengths of the element line segments shown in FIG. 20 and FIG. The figure is also a flowchart showing the details of the process in the stroke drawing (step S5 in FIG. 7).
 まず、距離算出部20は、各要素線分の始点と終点との座標値(図19においては、点Tと点Uと点Vとの座標値)をスケーリング後のスケルトンデータから取得する(S91)。ステップS91の後は、線分補正部32は、上記始点および/または終点の座標値の補正を行う(S92)。なお、ステップS92の詳細については、後述する。 First, the distance calculation unit 20 acquires the coordinate values of the start point and the end point of each element line segment (the coordinate values of the point T, the point U and the point V in FIG. 19) from the scaled skeleton data (S91) ). After step S91, the line segment correction unit 32 corrects the coordinate values of the start point and / or the end point (S92). The details of step S92 will be described later.
 さらに、ステップS92の後は、線分補正部32は、補正後の座標値を用いて要素線分を生成するとともに、当該要素線分に基づき、上述した距離|d|に応じた階調の補正を行う(S93)。なお、ステップS93は、図8のステップS12からステップS23までの処理と同じであるため、ここでの説明は繰り返さない。 Furthermore, after step S92, the line segment correction unit 32 generates an element line segment using the corrected coordinate value, and based on the element line segment, the gradation corresponding to the distance | d | A correction is performed (S93). Note that step S93 is the same as the process from step S12 to step S23 in FIG. 8, and thus the description thereof will not be repeated.
 そして、ステップS93の後は、表示制御部16は、ストロークの骨格線に含まれる全ての要素線分に対して、上述したステップS92およびS93に基づく処理が行われたか否かを判断する(S94)。 Then, after step S93, the display control unit 16 determines whether or not the process based on the above-described steps S92 and S93 has been performed on all the element line segments included in the skeletal line of the stroke (S94). ).
 ステップS94において全ての線分要素に対して処理が行われていないと判断された場合には、情報処理装置1は、再度、処理をステップS91に戻す。一方、ステップS94において全ての線分要素に対して処理が行われたと判断された場合には、情報処理装置1は、図22に示した処理を終了し、処理を図7のステップS6に戻す。 If it is determined in step S94 that processing has not been performed on all line segment elements, the information processing device 1 returns the process to step S91 again. On the other hand, when it is determined in step S94 that the process has been performed on all line segment elements, the information processing apparatus 1 ends the process shown in FIG. 22 and returns the process to step S6 in FIG. .
 次に、図22のステップS92の詳細について説明する。図23は、ステップS92における処理の流れを示したフローチャートである。 Next, the details of step S92 in FIG. 22 will be described. FIG. 23 is a flowchart showing the flow of processing in step S92.
 まず、線分補正部32は、要素線分が斜線(つまり、X軸またはY軸に平行でない線)であるか否かを、当該要素線分の始点と終点との座標値から判断する(S101)。 First, the line segment correction unit 32 determines whether the element line segment is a diagonal line (that is, a line not parallel to the X axis or the Y axis) based on the coordinate values of the start point and the end point of the element line segment S101).
 ステップS101において斜線であると判断された場合には、線分補正部32は、当該斜線の要素線分の始点および/または終点の補正を行う(S102)。そして、ステップS102の後は、情報処理装置1は処理を終了する。 If it is determined in step S101 that there is a diagonal line, the line segment correction unit 32 corrects the start point and / or the end point of the element line segment of the diagonal line (S102). Then, after step S102, the information processing apparatus 1 ends the process.
 一方、ステップS101において斜線であると判断されなかった場合には、線分補正部32は、当該斜線ではない要素線分の始点および/または終点の補正を行う(S103)。そして、ステップS103の後は、情報処理装置1は処理を終了する。 On the other hand, when it is not determined in step S101 that the line segment is a diagonal line, the line segment correction unit 32 corrects the start point and / or the end point of the element line segment that is not the diagonal line (S103). Then, after step S103, the information processing device 1 ends the process.
 次に、図23のステップS102の処理の詳細について説明する。図24は、ステップS102における処理の流れを示したフローチャートである。つまり、図24は、要素線分L20についての補正の処理の流れを示したフローチャートでもある。 Next, the details of the process of step S102 in FIG. 23 will be described. FIG. 24 is a flow chart showing the flow of processing in step S102. That is, FIG. 24 is also a flowchart showing a flow of correction processing for the element line segment L20.
 まず、表示制御部16は、直前の要素線分が、X軸またはY軸に平行な線分であるか否かを、当該直前の要素線分の始点と終点との座標値に基づき判断する(S111)。なお、表示制御部16は、直前の要素線分がない場合(例えば、要素線分L20の場合)には、平行な線分でないとの判断をする。 First, the display control unit 16 determines whether the immediately preceding element line segment is a line segment parallel to the X axis or the Y axis based on the coordinate values of the start point and the end point of the immediately preceding element line segment. (S111). In addition, when there is no element line segment immediately before (for example, in the case of the element line segment L20), the display control unit 16 determines that the line segments are not parallel.
 ステップS111において平行な線分であると判断された場合には、表示制御部16は、線幅が奇数であるか否かを判断する(S112)。なお、ここでの線幅は、階調補正を行う前の線幅である。一方、ステップS111において平行な線分であると判断されなかった場合には、情報処理装置1は、処理をステップS117に進める。 If it is determined in step S111 that the line segments are parallel, the display control unit 16 determines whether the line width is an odd number (S112). Here, the line width is a line width before tone correction. On the other hand, when it is not determined in step S111 that the line segments are parallel, the information processing device 1 causes the process to proceed to step S117.
 ステップS112において奇数であると判断された場合には、表示制御部16は、X軸方向の下限値Xminを、始点を含む画素の中心点の座標のX座標値に設定する(S113)。その後、情報処理装置1は、処理をステップS115に進める。一方、ステップS112において奇数であると判断されなかった場合には、表示制御部16は、上記下限値Xminを、始点に最も近い上記境界線分のX座標値に設定する(S114)。その後、情報処理装置1は、処理をステップS115に進める。 If it is determined in step S112 that the number is an odd number, the display control unit 16 sets the lower limit value Xmin in the X axis direction to the X coordinate value of the coordinate of the center point of the pixel including the start point (S113). Thereafter, the information processing device 1 causes the process to proceed to step S115. On the other hand, when it is not determined to be an odd number in step S112, the display control unit 16 sets the lower limit value Xmin to the X coordinate value of the boundary line segment closest to the start point (S114). Thereafter, the information processing device 1 causes the process to proceed to step S115.
 ステップS115においては、線分補正部32は、始点のX座標値が下限値Xminよりも小さいか否かを判断する。ステップS115において小さいと判断された場合には、線分補正部32は、X=Xminを満たす直線(つまり、上記仮想線L30)と処理対象となっている要素線分との交点Qの座標値(Xq,Yq)を求めるとともに、始点を(Xq+k,Yq+1)に変更する(S116)。ステップS116の後は、情報処理装置1は、処理をステップS117に進める。一方、ステップS115において小さいと判断されなかった場合には、情報処理装置1は、処理をステップS117に進める。 In step S115, the line segment correction unit 32 determines whether the X coordinate value of the start point is smaller than the lower limit value Xmin. If it is determined in step S115 that the line segment correction unit 32 determines that the line segment correction unit 32 determines that the coordinate value of the intersection point Q between the straight line satisfying X = Xmin (that is, the imaginary line L30) and the element line segment to be processed While obtaining (Xq, Yq), the start point is changed to (Xq + k, Yq + 1) (S116). After step S116, the information processing device 1 causes the process to proceed to step S117. On the other hand, when it is not determined in step S115 that the size is small, the information processing device 1 causes the process to proceed to step S117.
 ステップS117においては、表示制御部16は、直後の要素線分が、X軸またはY軸に平行な線分であるか否かを、当該直後の要素線分の始点と終点との座標値に基づき判断する。なお、表示制御部16は、直後の要素線分がない場合には、平行な線分でないとの判断をする。 In step S117, the display control unit 16 determines, based on the coordinate values of the start point and the end point of the element segment immediately after that, whether or not the element segment immediately after is a line segment parallel to the X axis or Y axis. Judge based on. In addition, when there is no element line segment immediately after, the display control unit 16 determines that the line segments are not parallel.
 ステップS117において平行な線分であると判断された場合には、表示制御部16は、線幅が奇数であるか否かを判断する(S118)。なお、ここでの線幅は、階調補正を行う前の線幅である。一方、ステップS117において平行な線分であると判断されなかった場合には、情報処理装置1は処理を終了する。 If it is determined in step S117 that the line segments are parallel, the display control unit 16 determines whether the line width is an odd number (S118). Here, the line width is a line width before tone correction. On the other hand, when it is not determined in step S117 that the line segments are parallel, the information processing apparatus 1 ends the process.
 ステップS118において奇数であると判断された場合には、表示制御部16は、上限値Xmaxを、終点を含む画素の中心点の座標のX座標値に設定する(S119)。その後、情報処理装置1は、処理をステップS121に進める。一方、ステップS118において奇数であると判断されなかった場合には、表示制御部16は、上限値Xmaxを、終点に最も近い上記境界線分のX座標値に設定する(S120)。その後、情報処理装置1は、処理をステップS121に進める。 If it is determined in step S118 that the number is an odd number, the display control unit 16 sets the upper limit value Xmax to the X coordinate value of the coordinate of the center point of the pixel including the end point (S119). Thereafter, the information processing device 1 proceeds with the process to step S121. On the other hand, when it is not determined to be odd in step S118, the display control unit 16 sets the upper limit value Xmax to the X coordinate value of the boundary line segment closest to the end point (S120). Thereafter, the information processing device 1 proceeds with the process to step S121.
 ステップS121においては、線分補正部32は、終点のX座標値が上限値Xmaxよりも大きいか否かを判断する。ステップS121において大きいと判断された場合には、線分補正部32は、X=Xmaxを満たす直線(つまり、上記仮想線L30)と処理対象となっている要素線分との交点Qの座標値(Xq,Yq)を求めるとともに、終点を(Xq-k,Yq-1)に変更する(S122)。ステップS122の後は、情報処理装置1は処理を終了する。例えば、要素線分L20に関しては、ステップS122により、終点の補正が行われることになる。 In step S121, the line segment correction unit 32 determines whether the X coordinate value of the end point is larger than the upper limit value Xmax. When it is determined in step S121 that the line segment correction unit 32 determines that the line segment correction unit 32 determines the coordinate value of the intersection point Q between the straight line satisfying X = Xmax (that is, the imaginary line L30) and the element line segment to be processed. While obtaining (Xq, Yq), the end point is changed to (Xq−k, Yq−1) (S122). After step S122, the information processing device 1 ends the process. For example, with regard to the element line segment L20, correction of the end point is performed in step S122.
 次に、図23のステップS103の処理の詳細について説明する。図25は、ステップS103における処理の流れを示したフローチャートである。つまり、図25は、要素線分L21についての補正の処理の流れを示したフローチャートでもある。 Next, the details of the process of step S103 in FIG. 23 will be described. FIG. 25 is a flow chart showing the flow of processing in step S103. That is, FIG. 25 is also a flowchart showing a flow of correction processing for the element line segment L21.
 まず、表示制御部16は、直前の要素線分が、斜線(つまり、X軸またはY軸に平行でない線分)であるか否かを、当該直前の要素線分の始点と終点との座標値に基づき判断する(S131)。なお、表示制御部16は、直前の要素線分がない場合には、斜線ではないとの判断をする。 First, the display control unit 16 determines whether the immediately preceding element line segment is a hatched line (that is, a line segment not parallel to the X axis or the Y axis), the coordinates of the start point and the end point of the element line segment immediately before It judges based on a value (S131). In addition, when there is no element line segment immediately before, the display control unit 16 determines that it is not a diagonal line.
 ステップS131において斜線であると判断された場合には、表示制御部16は、線幅が奇数であるか否かを判断する(S132)。なお、ここでの線幅は、階調補正を行う前の線幅である。一方、ステップS131において平行な線分であると判断されなかった場合には、情報処理装置1は、処理をステップS137に進める。 If it is determined in step S131 that the line width is hatched, the display control unit 16 determines whether the line width is an odd number (S132). Here, the line width is a line width before tone correction. On the other hand, when it is not determined in step S131 that the line segments are parallel, the information processing device 1 causes the process to proceed to step S137.
 ステップS132において奇数であると判断された場合には、表示制御部16は、X軸方向の上限値Xmaxを、始点を含む画素の中心点の座標のX座標値に設定する(S133)。その後、情報処理装置1は、処理をステップS135に進める。一方、ステップS132において奇数であると判断されなかった場合には、表示制御部16は、上限値Xmaxを、始点に最も近い上記境界線分のX座標値に設定する(S134)。その後、情報処理装置1は、処理をステップS135に進める。 If it is determined in step S132 that the number is an odd number, the display control unit 16 sets the upper limit value Xmax in the X-axis direction to the X coordinate value of the coordinate of the central point of the pixel including the start point (S133). Thereafter, the information processing device 1 causes the process to proceed to step S135. On the other hand, when it is not determined to be an odd number in step S132, the display control unit 16 sets the upper limit value Xmax to the X coordinate value of the boundary line segment closest to the start point (S134). Thereafter, the information processing device 1 causes the process to proceed to step S135.
 ステップS135においては、線分補正部32は、始点のX座標値が上限値Xmaxよりも大きいか否かを判断する。ステップS135において大きいと判断された場合には、線分補正部32は、X=Xmaxを満たす直線(つまり、上記仮想線L30)と直前の要素線分との交点Qの座標値(Xq,Yq)を求めるとともに、始点のY座標値をYqに変更する(S136)。ステップS136の後は、情報処理装置1は、処理をステップS137に進める。一方、ステップS135において大きいと判断されなかった場合には、情報処理装置1は、処理をステップS137に進める。 In step S135, the line segment correction unit 32 determines whether the X coordinate value of the start point is larger than the upper limit value Xmax. If it is determined in step S135 that the line segment correction unit 32 determines that the coordinate value (Xq, Yq) of the intersection point Q of the straight line satisfying X = Xmax (that is, the imaginary line L30) and the element line immediately before it is determined. While determining the Y coordinate value of the start point to Yq (S136). After step S136, the information processing device 1 causes the process to proceed to step S137. On the other hand, when it is not determined in step S135 that the value is large, the information processing device 1 causes the process to proceed to step S137.
 ステップS137においては、表示制御部16は、直後の要素線分が斜線であるか否かを、当該直後の要素線分の始点と終点との座標値に基づき判断する。なお、表示制御部16は、直後の要素線分がない場合(例えば、要素線分L21の場合)には、斜線でないとの判断をする。 In step S137, the display control unit 16 determines whether or not the element segment immediately after that is a diagonal line based on the coordinate values of the start point and the end point of the element segment immediately after that. In addition, when there is no element line segment immediately after (for example, in the case of the element line segment L21), the display control unit 16 determines that it is not a diagonal line.
 ステップS137において斜線であると判断された場合には、表示制御部16は、線幅が奇数であるか否かを判断する(S138)。なお、ここでの線幅は、階調補正を行う前の線幅である。一方、ステップS137において斜線であると判断されなかった場合には、情報処理装置1は処理を終了する。 If it is determined in step S137 that the line width is hatched, the display control unit 16 determines whether the line width is an odd number (S138). Here, the line width is a line width before tone correction. On the other hand, when it is not determined in step S137 that it is a diagonal line, the information processing device 1 ends the process.
 ステップS138において奇数であると判断された場合には、表示制御部16は、下限値Xminを、終点を含む画素の中心点の座標のX座標値に設定する(S139)。その後、情報処理装置1は、処理をステップS141に進める。一方、ステップS138において奇数であると判断されなかった場合には、表示制御部16は、下限値Xminを、終点に最も近い上記境界線分のX座標値に設定する(S140)。その後、情報処理装置1は、処理をステップS141に進める。 If it is determined in step S138 that the number is an odd number, the display control unit 16 sets the lower limit value Xmin to the X coordinate value of the coordinate of the central point of the pixel including the end point (S139). Thereafter, the information processing device 1 proceeds with the process to step S141. On the other hand, if it is not determined to be odd in step S138, the display control unit 16 sets the lower limit value Xmin to the X coordinate value of the boundary line segment closest to the end point (S140). Thereafter, the information processing device 1 proceeds with the process to step S141.
 ステップS141においては、線分補正部32は、終点のX座標値が下限値Xminよりも小さいか否かを判断する。ステップS141において小さいと判断された場合には、線分補正部32は、X=Xminを満たす直線(つまり、上記仮想線L30)と直後の要素線分との交点Qの座標値(Xq,Yq)を求めるとともに、終点のY座標値をYqに変更する(S142)。ステップS142の後は、情報処理装置1は処理を終了する。例えば、要素線分L21に関しては、ステップS136により、始点の補正が行われることになる。 In step S141, the line segment correction unit 32 determines whether the X coordinate value of the end point is smaller than the lower limit value Xmin. When it is determined in step S141 that the line segment correction unit 32 determines that the line segment correction unit 32 determines the coordinate value (Xq, Yq) of the intersection point Q of the straight line satisfying X = Xmin (that is, the imaginary line L30) and the element line segment immediately after that. While determining the Y coordinate value of the end point to Yq (S142). After step S142, the information processing device 1 ends the process. For example, with regard to the element line segment L21, the correction of the start point is performed in step S136.
 図26は、線分補正部32によって、上記のように要素線分の始点および/または終点を補正した際に表示される文字を示した図である。図26(a)はMの文字を示しており、図26(b)はWの文字を示している。なお、図26(a)および(b)において、白線(線分)は、複数の要素線分が集合して形成された線である。 FIG. 26 is a diagram showing characters displayed when the line segment correction unit 32 corrects the start point and / or the end point of the element line segment as described above. 26 (a) shows the letter M, and FIG. 26 (b) shows the letter W. FIG. In FIGS. 26 (a) and 26 (b), white lines (line segments) are lines formed by collecting a plurality of element line segments.
 例えば、図26(a)では、白丸内において、Y軸に平行な要素線分の中心線(仮想線L30に相当)から図面左側にはみ出た領域において、当該平行な要素線分の座標値と、当該線分に連続する斜線の要素線分との座標値が補正されている。 For example, in FIG. 26A, in a white circle, in a region extending from the center line (corresponding to the imaginary line L30) of the element segment parallel to the Y axis to the left side of the drawing, the coordinate value of the parallel element segment and The coordinate value with the element line segment of the oblique line continuous to the line segment is corrected.
 また、図26(b)では、白丸内において、Y軸に平行な要素線分の中心線(仮想線L30に相当)から図面右側にはみ出た領域において、当該平行な要素線分の座標値と、当該線分に連続する斜線の要素線分との座標値が補正されている。 Further, in FIG. 26B, in a white circle, in a region extending from the center line (corresponding to the imaginary line L30) of the element segment parallel to the Y axis to the right side of the drawing, the coordinate value of the parallel element segment and The coordinate value with the element line segment of the oblique line continuous to the line segment is corrected.
 図26(a)および(b)にも示すとおり、情報処理装置1は、線分補正部32を用いた補正により、見た目のよい文字を表示させることが可能となる。 As shown in FIGS. 26 (a) and 26 (b), the information processing apparatus 1 can display characters with a good appearance by correction using the line segment correction unit 32.
 また、線分補正部32により要素線分を補正する構成の場合、情報処理装置1は、前もって要素線分の始点および終点を補正する。それゆえ、上述したような上限値や下限値を超えているかといった判断が不要となる。このため、情報処理装置1は、図15から図18に基づき説明した処理方法よりも、表示に要する時間を短縮することが可能となる。 Further, in the case of the configuration in which the element line segment is corrected by the line segment correction unit 32, the information processing device 1 corrects the start point and the end point of the element line segment in advance. Therefore, it is not necessary to determine whether the upper limit value or the lower limit value as described above is exceeded. Therefore, the information processing apparatus 1 can shorten the time required for display as compared with the processing method described based on FIGS. 15 to 18.
 ところで、上記においては、例えば図3に示すとおり、要素画素群(画素Paと画素Pbと画素Pcとからなる画素群)に隣接する画素Pdについても階調の補正を行う構成を例に挙げて説明した。しかしながら、これに限定されるものではなく、情報処理装置1は、画素Pdについては階調を補正しない構成であってもよい。また、この場合、情報処理装置1は、画素Paの階調を補正する代わりに、画素Pcの階調を補正する構成としてもよい。 By the way, in the above, for example, as shown in FIG. 3, a configuration in which gradation correction is performed also on a pixel Pd adjacent to an element pixel group (a pixel group consisting of a pixel Pa, a pixel Pb and a pixel Pc) is exemplified. explained. However, the present invention is not limited to this, and the information processing apparatus 1 may have a configuration in which the gradation is not corrected for the pixel Pd. Further, in this case, the information processing apparatus 1 may be configured to correct the gradation of the pixel Pc instead of correcting the gradation of the pixel Pa.
 また、上記では、RGBカラーモデルを用いた構成を例に挙げて説明したが、これに限定されるものではない。加法混色を用いるカラーモデルであればよい。 In the above, the configuration using the RGB color model has been described as an example, but the present invention is not limited to this. It may be a color model using additive color mixture.
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 It should be understood that the embodiments disclosed herein are illustrative and non-restrictive in every respect. The scope of the present invention is shown not by the above description but by the scope of claims, and is intended to include all modifications within the scope and meaning equivalent to the scope of claims.

Claims (18)

  1.  マトリックス状に複数の画素が配された表示画面に、記号を表示させるための情報処理装置(1)であって、
     前記記号の骨格を示す情報を記憶する記憶部(12)を備え、前記骨格を示す情報は、前記骨格を構成する各骨格線の要素である要素線分を示す情報を含み、
     前記骨格を示す情報に基づいて、指定された階調および前記マトリックスの行方向または列方向のいずれかにおいて指定された線幅を有するように前記記号を表示する際に、前記複数の画素のうちの表示画素の階調を決定する表示制御部(16)をさらに備え、
     前記表示制御部(16)は、
     前記記号の前記表示画素を構成する画素群の一部であって、前記表示画素が前記線幅の方向に一列に並んだ線幅分の画素群を要素画素群とするとき、前記要素線分と当該要素線分と重なる画素を含んだ前記要素画素群の中心点との前記線幅の方向の距離を、各前記要素画素群について算出する距離算出部(20)と、
     前記中心点を含んだ前記要素画素群に含まれる一方の端部の画素の階調を、前記指定された階調と表示される前記記号の背景の階調との間の階調であって、前記距離算出部(20)で算出した距離に応じた階調に補正する階調補正部(21)と、
     前記階調補正部(21)での補正に基づき、前記記号を前記表示画面に表示させるための表示データを生成する表示データ生成部(22)とを含む、情報処理装置(1)。
    An information processing apparatus (1) for displaying symbols on a display screen in which a plurality of pixels are arranged in a matrix,
    The storage unit (12) stores information indicating a skeleton of the symbol, and the information indicating the skeleton includes information indicating an element line segment which is an element of each skeleton line constituting the skeleton,
    When the symbol is displayed so as to have the designated gradation and the designated line width in either the row direction or the column direction of the matrix based on the information indicating the skeleton, among the plurality of pixels, Further comprising a display control unit (16) that determines the gradation of the display pixels of
    The display control unit (16)
    When a pixel group corresponding to a line width in which the display pixels are arranged in a line in the direction of the line width is a part of a pixel group constituting the display pixel of the symbol, the element line segment A distance calculation unit (20) for calculating, with respect to each of the element pixel groups, a distance in the direction of the line width from the central point of the element pixel group including the pixel overlapping with the element line segment;
    The gradation of the pixel at one end included in the element pixel group including the central point is the gradation between the designated gradation and the gradation of the background of the symbol to be displayed. A tone correction unit (21) for correcting the tone according to the distance calculated by the distance calculation unit (20);
    An information processing apparatus (1) including: a display data generation unit (22) that generates display data for causing the display screen to display the symbol based on the correction by the gradation correction unit (21).
  2.  前記一方の端部の画素は、前記中心点に対して、当該中心点から前記線幅の方向に前記距離だけ離れた前記要素線分上の点とは反対側に位置する画素である、請求の範囲第1項に記載の情報処理装置(1)。 The pixel at the one end is a pixel located on the opposite side of the point on the element line segment which is separated from the central point by the distance in the direction of the line width from the central point. The information processing apparatus (1) according to the item [1].
  3.  前記階調補正部(21)は、前記補正を行った画素を含んだ要素画素群における他方の端部の画素と前記線幅の方向に隣接する画素であって、当該要素画素群に含まれていない画素についても、前記記号の階調と当該記号の背景の階調との間の階調であって、前記距離算出部で算出した距離に応じた階調に補正する、請求の範囲第1項に記載の情報処理装置(1)。 The gradation correction unit (21) is a pixel adjacent to the pixel at the other end of the element pixel group including the pixel subjected to the correction and the line width in the direction of the line width, and is included in the element pixel group The uncorrected pixel is also corrected to a gradation between the gradation of the symbol and the gradation of the background of the symbol according to the distance calculated by the distance calculating unit. The information processing apparatus (1) according to item 1.
  4.  前記階調補正部(21)は、
     前記一方の端部の画素については、前記距離が長くなるにつれて、前記記号の階調から前記背景の階調に近づく補正をし、
     前記隣接する画素については、前記距離が長くなるにつれて、前記背景の階調から前記記号の階調に近づく補正をする、請求の範囲第3項に記載の情報処理装置(1)。
    The tone correction unit (21)
    With regard to the pixels at the one end, as the distance becomes longer, correction is made to approach the gradation of the background from the gradation of the symbol,
    The information processing apparatus (1) according to claim 3, wherein the adjacent pixels are corrected so as to approach the gradation of the symbol from the gradation of the background as the distance becomes longer.
  5.  複数の前記要素線分に基づき前記記号が表示される場合、各要素線分が、前記行方向または前記列方向と平行な直線であるか否かを、前記骨格線を示した情報に基づいて判定する平行判定部(30)と、
     前記平行判定部(30)によって平行であると判定された要素線分と重なる画素を含んだ前記要素画素群における前記一方の端部の画素と、当該要素画素群における前記他方の端部の画素と前記線幅の方向に隣接する画素であるとともに当該要素画素群に含まれていない画素とについては、前記階調補正部による補正を制限する補正制限部(31)とを備える、請求の範囲第3項に記載の情報処理装置(1)。
    When the symbol is displayed based on a plurality of the element line segments, whether or not each element line segment is a straight line parallel to the row direction or the column direction is based on the information indicating the skeleton line. A parallel determination unit (30) for determining
    The pixel at one end of the element pixel group including the pixel overlapping with the element line segment determined to be parallel by the parallel determination unit (30) and the pixel at the other end of the element pixel group And a correction limiting unit (31) for limiting the correction by the gradation correction unit for the pixels adjacent to the direction of the line width and the pixels not included in the element pixel group. The information processing apparatus (1) according to claim 3.
  6.  前記行方向または前記列方向に平行な要素線分と、前記平行な要素線分と連続するとともに当該要素線分に対して傾きを有する他の要素線分とに基づき前記記号が表示される場合、前記平行な要素線分と重なる画素を含んだ各要素画素群における各中心点を通る線を第1仮想線とし、前記他の要素線分と重なる画素を含んだ前記要素画素群における中心点を通る、前記第1仮想線と垂直な線を第2仮想線とすると、
     前記第2仮想線と前記他の要素線分との交点の位置と、前記第1仮想線の位置とが所定の関係を満たす場合、当該交点と重なる画素を含んだ前記要素画素群における前記一方の端部の画素と、当該要素画素群に隣接する前記他方の端部の画素についての前記階調補正部による階調の補正を制限する補正制限部(31)を備える、請求の範囲第3項に記載の情報処理装置(1)。
    When the symbol is displayed based on an element line segment parallel to the row direction or the column direction and another element line segment continuous with the parallel element line segment and having an inclination with respect to the element line segment A line passing through each center point in each element pixel group including pixels overlapping the parallel element line segment is a first virtual line, and a center point in the element pixel group including pixels overlapping the other element line segment Assuming that a line perpendicular to the first virtual line passing through is a second virtual line,
    When the position of the intersection of the second virtual line and the other element line segment and the position of the first virtual line satisfy a predetermined relationship, the one in the element pixel group including pixels overlapping the intersection A correction limiting unit (31) for limiting the correction of gradation by the gradation correction unit for the pixel at the end of the pixel and the pixel at the other end adjacent to the element pixel group The information processing apparatus (1) described in the section.
  7.  前記表示画面においてX軸の正方向を前記行方向とし、Y軸の負方向を前記列方向とすると、
     前記第1仮想線がY軸と平行であって、かつ前記他の要素線分が前記第1仮想線よりもX軸の負方向側に存在する場合、前記所定の関係は、前記交点のX座標の値が前記第1仮想線のX座標の値よりも大きいことである、請求の範囲第6項に記載の情報処理装置(1)。
    Assuming that the positive direction of the X axis is the row direction and the negative direction of the Y axis is the column direction on the display screen,
    In the case where the first virtual line is parallel to the Y axis and the other element line segment exists on the negative direction side of the X axis with respect to the first virtual line, the predetermined relationship is the X of the intersection point. The information processing apparatus (1) according to claim 6, wherein the value of the coordinate is larger than the value of the X coordinate of the first virtual line.
  8.  前記表示画面においてX軸の正方向を前記行方向とし、Y軸の負方向を前記列方向とすると、
     前記第1仮想線がY軸と平行であって、かつ前記他の要素線分が前記第1仮想線よりもX軸の正方向側に存在する場合、前記所定の関係は、前記交点のX座標の値が前記第1仮想線のX座標の値よりも小さいことである、請求の範囲第6項に記載の情報処理装置(1)。
    Assuming that the positive direction of the X axis is the row direction and the negative direction of the Y axis is the column direction on the display screen,
    In the case where the first virtual line is parallel to the Y axis and the other element line segment exists on the positive direction side of the X axis with respect to the first virtual line, the predetermined relationship is the X of the intersection point. The information processing apparatus (1) according to claim 6, wherein the value of the coordinate is smaller than the value of the X coordinate of the first virtual line.
  9.  前記表示画面においてX軸の正方向を前記行方向とし、Y軸の負方向を前記列方向とすると、
     前記第1仮想線がX軸と平行であって、かつ、前記他の要素線分が前記第1仮想線よりもY軸の負方向側に存在する場合、前記所定の関係は、前記交点のY座標の値が前記第1仮想線のY座標の値よりも大きいことである、請求の範囲第6項に記載の情報処理装置(1)。
    Assuming that the positive direction of the X axis is the row direction and the negative direction of the Y axis is the column direction on the display screen,
    In the case where the first virtual line is parallel to the X axis and the other element line segment exists on the negative direction side of the Y axis with respect to the first virtual line, the predetermined relationship is the intersection point of the intersection point The information processing apparatus (1) according to claim 6, wherein the value of the Y coordinate is larger than the value of the Y coordinate of the first virtual line.
  10.  前記表示画面においてX軸の正方向を前記行方向とし、Y軸の負方向を前記列方向とすると、
     前記第1仮想線がX軸と平行であって、かつ、前記他の要素線分が前記第1仮想線よりもY軸の正方向側に存在する場合、前記所定の関係は、前記交点のY座標の値が前記第1仮想線のY座標の値よりも小さいことである、請求の範囲第6項に記載の情報処理装置(1)。
    Assuming that the positive direction of the X axis is the row direction and the negative direction of the Y axis is the column direction on the display screen,
    In the case where the first virtual line is parallel to the X axis and the other element line segment exists on the positive direction side of the Y axis with respect to the first virtual line, the predetermined relationship is the intersection point of the intersection point The information processing apparatus (1) according to claim 6, wherein the value of the Y coordinate is smaller than the value of the Y coordinate of the first virtual line.
  11.  前記行方向または前記列方向に平行な要素線分と、前記平行な要素線分と連続するとともに当該要素線分に対して傾きを有する他の要素線分とに基づき前記記号が表示される場合、前記平行な要素線分と重なる画素を含んだ各要素画素群における各中心点を通る線を第1仮想線とすると、
     前記第1要素線分と重なる画素に前記第1仮想線が重なっており、かつ前記第1仮想線と前記第2要素線分とが交わる場合、前記第2要素線分の長さを、当該交わった点を含む画素に隣接する画素までしか達しない長さに補正するとともに、前記第1要素線分の長さを、前記交わった点を含む画素まで達する長さに補正する要素線分補正部(32)を備える、請求の範囲第3項に記載の情報処理装置(1)。
    When the symbol is displayed based on an element line segment parallel to the row direction or the column direction and another element line segment continuous with the parallel element line segment and having an inclination with respect to the element line segment Assuming that a line passing through each center point in each element pixel group including pixels overlapping the parallel element line segment is a first virtual line,
    When the first virtual line overlaps the pixel overlapping the first element line, and the first virtual line and the second element line intersect, the length of the second element line is An element line segment correction that corrects the length of the first element line segment to a length reaching the pixel including the intersection point while correcting the length to reach only the pixel adjacent to the pixel including the intersection point The information processing apparatus (1) according to claim 3, comprising a unit (32).
  12.  前記記号は、加法混色により色が決定されるものであり、
     前記階調補正部は、前記加法混色の原色のそれぞれについて画素値を補正することにより前記階調の補正を行う、請求の範囲第1項に記載の情報処理装置(1)。
    The symbol is determined by additive color mixing.
    The information processing apparatus (1) according to claim 1, wherein the gradation correction unit corrects the gradation by correcting a pixel value for each of the additive primary colors.
  13.  マトリックス状に複数の画素が配された表示画面に、記号を表示させるための情報処理装置(1)であって、
     記憶装置に記憶された前記記号の骨格を示す情報に基づいて、指定された階調および前記マトリックスの行方向または列方向のいずれかにおいて指定された線幅を有するように前記表示画面に前記記号を表示する際に、前記複数の画素のうちの表示画素の階調を決定する表示制御部を備え、前記骨格を示す情報は、前記骨格を構成する各骨格線の要素である要素線分を示す情報を含み、
     前記表示制御部(16)は、
     前記要素線分として、前記行方向または前記列方向と平行な第1要素線分と、当該第1要素線分と連続するとともに当該第1要素線分に対して傾きを有する第2要素線分とを含む前記記号を表示する際に、前記指定された階調を補正する階調補正部(21)を含み、
     前記階調補正部(21)は、前記記号の前記表示画素を構成する画素群の一部であって、前記第1要素線分と前記第2要素線分との交点と重なる画素を含んだ前記線幅の方向に連続した前記線幅分の画素群を要素画素群とすると、当該要素画素群における端部の画素に前記線幅の方向に隣接する画素であるとともに当該要素画素群に含まれていない画素であって、前記連続した両要素線分により形成される角度のうち優角側の領域の画素については、前記階調の補正を行わない、情報処理装置(1)。
    An information processing apparatus (1) for displaying symbols on a display screen in which a plurality of pixels are arranged in a matrix,
    The symbol is displayed on the display screen such that it has a designated gradation and a designated line width in either the row direction or the column direction of the matrix based on the information indicating the skeleton of the symbol stored in the storage device. A display control unit that determines the gradation of the display pixel among the plurality of pixels, and the information indicating the skeleton is an element line segment that is an element of each skeleton line that constitutes the skeleton Including the information shown
    The display control unit (16)
    A first element line segment parallel to the row direction or the column direction as the element line segment, and a second element line segment continuous with the first element line segment and having an inclination with respect to the first element line segment And a tone correction unit (21) for correcting the designated tone when displaying the symbol including
    The gradation correction unit (21) is a part of a group of pixels constituting the display pixel of the symbol, and includes pixels overlapping the intersection of the first element line segment and the second element line segment. Assuming that the pixel group for the line width continuous in the direction of the line width is an element pixel group, the pixel adjacent to the pixel at the end of the element pixel group in the direction of the line width is included in the element pixel group The information processing apparatus (1), wherein the correction of the gradation is not performed with respect to pixels in an area on the dominant angle side among the angles formed by the two consecutive element line segments, which are not included pixels.
  14.  マトリックス状に複数の画素が配された表示画面に、記号を表示させるための情報処理装置(1)であって、
     記憶装置に記憶された前記記号の骨格を示す情報に基づいて、指定された階調および前記マトリックスの行方向または列方向のいずれかにおいて指定された線幅を有するように前記表示画面に前記記号を表示する際に、前記複数の画素のうちの表示画素の階調を決定する表示制御部(16)を備え、前記骨格を示す情報は、前記骨格を構成する各骨格線の要素である要素線分を示す情報を含み、
     前記表示制御部(16)は、
     前記要素線分として、前記行方向または前記列方向と平行な第1要素線分と、当該第1要素線分と連続するとともに当該第1要素線分に対して傾きを有する第2要素線分とを含む前記記号を表示する際に、前記指定された階調を補正する階調補正部(21)を含み、
     前記階調補正部(21)は、前記第1要素線分と前記第2要素線分との交点と重なる画素に関して前記線幅の方向に配された画素であって、前記連続した両要素線分により形成される角度のうち優角側の領域の画素については、線幅を太くするような階調の補正を行わない、情報処理装置(1)。
    An information processing apparatus (1) for displaying symbols on a display screen in which a plurality of pixels are arranged in a matrix,
    The symbol is displayed on the display screen such that it has a designated gradation and a designated line width in either the row direction or the column direction of the matrix based on the information indicating the skeleton of the symbol stored in the storage device. And a display control unit (16) for determining the gradation of the display pixel among the plurality of pixels, and the information indicating the skeleton is an element which is an element of each skeleton line constituting the skeleton Contains information indicating line segments,
    The display control unit (16)
    A first element line segment parallel to the row direction or the column direction as the element line segment, and a second element line segment continuous with the first element line segment and having an inclination with respect to the first element line segment And a tone correction unit (21) for correcting the designated tone when displaying the symbol including
    The gradation correction unit (21) is a pixel arranged in the direction of the line width with respect to a pixel overlapping the intersection of the first element line segment and the second element line segment, and the two continuous element lines are continuous An information processing apparatus (1) which does not perform gradation correction such that a line width is thickened for pixels in an area on the dominant side among angles formed by a minute.
  15.  前記表示制御部(16)は、
     前記記号の前記表示画素を構成する画素群の一部であって、前記表示画素が前記線幅の方向に一列に並んだ線幅分の画素群を要素画素群とするとき、前記要素線分と当該要素線分と重なる画素を含んだ前記要素画素群の中心点との前記線幅の方向の距離を、各前記要素画素群について算出する距離算出部(20)を、さらに備え、
     前記階調補正部(21)は、前記要素画素群の一方の端部の画素と、当該要素画素群に隣接する他方の端部の画素と前記線幅の方向に隣接する画素であるとともに当該要素画素群に含まれていない画素については、前記指定された階調と表示される前記記号の背景の階調との間の階調であって、前記距離算出部(20)で算出した距離に応じた階調に補正する、請求の範囲第13項に記載の情報処理装置(1)。
    The display control unit (16)
    When a pixel group corresponding to a line width in which the display pixels are arranged in a line in the direction of the line width is a part of a pixel group constituting the display pixel of the symbol, the element line segment A distance calculation unit (20) for calculating, for each of the element pixel groups, a distance in the direction of the line width from the central point of the element pixel group including the pixel overlapping with the element line segment;
    The gradation correction unit (21) is a pixel adjacent to the pixel at one end of the element pixel group, the pixel at the other end adjacent to the element pixel group, and the line width. The pixels not included in the element pixel group are gradations between the designated gradation and the gradation of the background of the displayed symbol, and the distance calculated by the distance calculation unit (20) 14. The information processing apparatus (1) according to claim 13, wherein the information processing apparatus corrects the gradation according to.
  16.  前記表示制御部(16)は、
     前記記号の前記表示画素を構成する画素群の一部であって、前記表示画素が前記線幅の方向に一列に並んだ線幅分の画素群を要素画素群とするとき、前記要素線分と当該要素線分と重なる画素を含んだ前記要素画素群の中心点との前記線幅の方向の距離を、各前記要素画素群について算出する距離算出部(20)を、さらに備え、
     前記階調補正部(21)は、前記要素画素群の一方の端部の画素と、当該要素画素群に隣接する他方の端部の画素と前記線幅の方向に隣接する画素であるとともに当該要素画素群に含まれていない画素については、前記指定された階調と表示される前記記号の背景の階調との間の階調であって、前記距離算出部(20)で算出した距離に応じた階調に補正する、請求の範囲第14項に記載の情報処理装置(1)。
    The display control unit (16)
    When a pixel group corresponding to a line width in which the display pixels are arranged in a line in the direction of the line width is a part of a pixel group constituting the display pixel of the symbol, the element line segment A distance calculation unit (20) for calculating, for each of the element pixel groups, a distance in the direction of the line width from the central point of the element pixel group including the pixel overlapping with the element line segment;
    The gradation correction unit (21) is a pixel adjacent to the pixel at one end of the element pixel group, the pixel at the other end adjacent to the element pixel group, and the line width. The pixels not included in the element pixel group are gradations between the designated gradation and the gradation of the background of the displayed symbol, and the distance calculated by the distance calculation unit (20) 15. The information processing apparatus (1) according to claim 14, wherein correction is performed to a gradation according to.
  17.  記号の骨格を示した情報に基づき、マトリックス状に画素が配された表示画面に、指定された階調および前記マトリックスの行方向または列方向のいずれかにおいて指定された線幅を有する記号を表示させる情報処理方法であって、
     前記記号の表示画素を構成する構成する画素群の一部であって、前記表示画素が前記線幅の方向に一列に並んだ線幅分の画素群を要素画素群とするとき、前記骨格を構成する骨格線の要素である要素線分と、当該要素線分と重なる表示画素を含んだ前記要素画素群における中心点との、前記線幅の方向における距離を算出するステップ(S17,S21)と、
     前記中心点を含んだ前記要素画素群に含まれる一方の端部の画素の階調を、前記記号の階調と当該記号の背景の階調との間の階調であって、前記算出された距離に応じた階調に補正するステップ(S18,S22)と、
     前記補正に基づき、前記記号を前記表示画面に表示させるための表示データを生成するステップ(S33,S36,S46)とを含む、情報処理方法。
    Display a symbol having a designated gradation and a designated line width in either the row direction or the column direction of the matrix on the display screen in which the pixels are arranged in a matrix based on the information indicating the skeleton of the symbol. It is an information processing method that
    When a pixel group corresponding to a line width in which the display pixels are arranged in a line in the direction of the line width is an element pixel group, which is a part of the pixel group constituting the display pixels of the symbol, Calculating the distance in the direction of the line width between the element line segment which is an element of the constituting skeleton line and the central point of the element pixel group including the display pixel overlapping the element line segment (S17, S21) When,
    The gradation of the pixel at one end included in the element pixel group including the central point is the gradation between the gradation of the symbol and the gradation of the background of the symbol, and is calculated Correcting to a gradation according to the distance (S18, S22);
    And (e.g., generating display data for displaying the symbol on the display screen based on the correction) (S33, S36, S46).
  18.  マトリックス状に画素が配された表示画面を備えた情報処理装置に実行させるプログラムであって、
     前記プログラムは、記号の骨格を示した情報に基づき、前記表示画面に、指定された階調および前記マトリックスの行方向または列方向のいずれかにおいて指定された線幅を有する記号を表示させるステップ(S5)を、前記情報処理装置に実行させ、
     前記記号の表示画素を構成する構成する画素群の一部であって、前記表示画素が前記線幅の方向に一列に並んだ線幅分の画素群を要素画素群とすると、前記記号を表示させるステップ(S5)は、
     前記骨格を構成する骨格線の要素である要素線分と、当該要素線分と重なる表示画素を含んだ前記要素画素群における中心点との、前記線幅の方向における距離を算出するステップ(S17,S21)と、
     前記中心点を含んだ前記要素画素群に含まれる一方の端部の画素の階調を、前記記号の階調と当該記号の背景の階調との間の階調であって、前記算出された距離に応じた階調に補正するステップ(S18,S22)と、
     前記補正に基づき、前記記号を前記表示画面に表示させるための表示データを生成するステップ(S33,S36,S46)とを含む、プログラム。
    A program to be executed by an information processing apparatus provided with a display screen in which pixels are arranged in a matrix,
    The program displays a symbol having a designated gradation and a designated line width in either the row direction or the column direction of the matrix on the display screen based on the information indicating the skeleton of the symbol ( Causing the information processing apparatus to execute S5);
    The symbol is displayed when a pixel group corresponding to a line width in which the display pixels are arranged in a line in the direction of the line width is a part of the pixel group constituting the display pixel of the mark. The step (S5) of causing
    Calculating a distance in the direction of the line width between an element line segment which is an element of the skeleton line constituting the skeleton and a central point of the element pixel group including the display pixel overlapping the element line segment (S17 , S21),
    The gradation of the pixel at one end included in the element pixel group including the central point is the gradation between the gradation of the symbol and the gradation of the background of the symbol, and is calculated Correcting to a gradation according to the distance (S18, S22);
    And generating display data for displaying the symbol on the display screen based on the correction (S33, S36, S46).
PCT/JP2009/053019 2008-02-28 2009-02-20 Information processing device, information processing method, and program WO2009107554A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200980106789.6A CN101960512A (en) 2008-02-28 2009-02-20 Information processing device, information processing method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-048398 2008-02-28
JP2008048398A JP4361118B2 (en) 2008-02-28 2008-02-28 Information processing apparatus, information processing method, and program

Publications (1)

Publication Number Publication Date
WO2009107554A1 true WO2009107554A1 (en) 2009-09-03

Family

ID=41015951

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/053019 WO2009107554A1 (en) 2008-02-28 2009-02-20 Information processing device, information processing method, and program

Country Status (3)

Country Link
JP (1) JP4361118B2 (en)
CN (1) CN101960512A (en)
WO (1) WO2009107554A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013108441A1 (en) * 2012-01-18 2013-07-25 シャープ株式会社 Method for displaying multi-gradation character, device for displaying multi-gradation character, program for displaying multi-gradation character, television receiver provided with device for displaying multi-gradation character, and mobile equipment provided with device for displaying multi-gradation character

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101562153B1 (en) * 2011-11-09 2015-10-20 미쓰비시덴키 가부시키가이샤 Drawing device and computer readable recording medium
DE112012006274B4 (en) 2012-04-27 2018-08-23 Mitsubishi Electric Corporation Character drawing apparatus and character drawing method
JPWO2016031006A1 (en) * 2014-08-28 2017-04-27 Necディスプレイソリューションズ株式会社 Display device, gradation correction map generation apparatus, gradation correction map generation method, and program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0720845A (en) * 1993-06-18 1995-01-24 Nec Home Electron Ltd Multi-gradational character generating device
JPH08138067A (en) * 1994-11-15 1996-05-31 Fujitsu Ltd Line segment anti-aliasing device
JP2005024987A (en) * 2003-07-03 2005-01-27 Sharp Corp Device, method, and program for character display, and readable recording medium
JP2005024932A (en) * 2003-07-02 2005-01-27 Sharp Corp Device, method, and program for displaying figure or character, and recording medium with recorded display program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0720845A (en) * 1993-06-18 1995-01-24 Nec Home Electron Ltd Multi-gradational character generating device
JPH08138067A (en) * 1994-11-15 1996-05-31 Fujitsu Ltd Line segment anti-aliasing device
JP2005024932A (en) * 2003-07-02 2005-01-27 Sharp Corp Device, method, and program for displaying figure or character, and recording medium with recorded display program
JP2005024987A (en) * 2003-07-03 2005-01-27 Sharp Corp Device, method, and program for character display, and readable recording medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013108441A1 (en) * 2012-01-18 2013-07-25 シャープ株式会社 Method for displaying multi-gradation character, device for displaying multi-gradation character, program for displaying multi-gradation character, television receiver provided with device for displaying multi-gradation character, and mobile equipment provided with device for displaying multi-gradation character
JP2013148681A (en) * 2012-01-18 2013-08-01 Sharp Corp Method for displaying multi-gradation character, device for displaying multi-gradation character, program for displaying multi-gradation character, television receiver provided with device for displaying multi-gradation character, and mobile equipment provided with device for displaying multi-gradation character
CN104054124A (en) * 2012-01-18 2014-09-17 夏普株式会社 Method for displaying multi-gradation character, device for displaying multi-gradation character, program for displaying multi-gradation character, television receiver provided with device for displaying multi-gradation character, and mobile equipment provided with device for displaying multi-gradation character
CN104054124B (en) * 2012-01-18 2016-08-17 夏普株式会社 The display packing of many grayscale characters, the display device of many grayscale characters, possess the radiotelevisor of the display device of many grayscale characters and possess the mobile device of display device of many grayscale characters

Also Published As

Publication number Publication date
JP2009204989A (en) 2009-09-10
JP4361118B2 (en) 2009-11-11
CN101960512A (en) 2011-01-26

Similar Documents

Publication Publication Date Title
JP2003036048A (en) Display device, display method, and recording medium in which display control program is recorded
JP2002354277A (en) Display method and display device
KR20020008040A (en) Display apparatus, display method, and recording medium which the display control program is recorded
MXPA03002165A (en) Hardware-enhanced graphics acceleration of pixel sub-component-oriented images.
US20020008714A1 (en) Display method by using sub-pixels
WO2009107554A1 (en) Information processing device, information processing method, and program
JP3833212B2 (en) Image processing apparatus, image processing program, and readable recording medium
CN110502205B (en) Picture display edge processing method and device, electronic equipment and readable storage medium
JP3189276B2 (en) Data converter
JP4609674B2 (en) Image processing system, display device, program, and information storage medium
JP4370438B2 (en) Vector image drawing apparatus, vector image drawing method and program
EP1246155A2 (en) Display method and display apparatus with colour correction for subpixel light emitting patterns resulting in insufficient contrast
US20050141062A1 (en) Gradation image forming apparatus and gradation image forming method
JP4079268B2 (en) Character display device, character display method, character display program, and readable recording medium
JPH09245191A (en) Transparency transformation method, its device and image processor
JP2007018092A (en) Computer graphics drawing method and drawing device
JP3827318B2 (en) Character / graphic display device, program, and recording medium
CN112289274B (en) Display method and device
CN114792288B (en) Curved screen image gray scale correction method and related device
JP2003187260A (en) Image rendering program, recording medium in which image rendering program is recorded, image rendering apparatus and method
JP2713249B2 (en) Image display device
JP4554834B2 (en) Image processing apparatus and method, and program thereof
JP2939159B2 (en) Apparatus and method for aligning handwritten characters
JP2005284769A (en) Image processing apparatus, image processing method, computer program for image processing, recording medium having computer program recorded therein, and projector
JP2005078399A (en) Display image processor, its method, and display device using it

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200980106789.6

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09714129

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09714129

Country of ref document: EP

Kind code of ref document: A1