WO2013175520A1 - Dispositif pour dessiner des caractères - Google Patents

Dispositif pour dessiner des caractères Download PDF

Info

Publication number
WO2013175520A1
WO2013175520A1 PCT/JP2012/003304 JP2012003304W WO2013175520A1 WO 2013175520 A1 WO2013175520 A1 WO 2013175520A1 JP 2012003304 W JP2012003304 W JP 2012003304W WO 2013175520 A1 WO2013175520 A1 WO 2013175520A1
Authority
WO
WIPO (PCT)
Prior art keywords
character
unit
directed graph
vector
horizontal
Prior art date
Application number
PCT/JP2012/003304
Other languages
English (en)
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 CN201280070131.6A priority Critical patent/CN104126199B/zh
Priority to PCT/JP2012/003304 priority patent/WO2013175520A1/fr
Priority to JP2014516502A priority patent/JPWO2013175520A1/ja
Publication of WO2013175520A1 publication Critical patent/WO2013175520A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/24Generation of individual character patterns
    • G09G5/246Generation of individual character patterns of ideographic or arabic-like characters

Definitions

  • the present invention relates to a character drawing apparatus that performs grid fitting for aligning the position of each vector of font data with a grid in order to display high-quality scalable font characters on a low-resolution display.
  • hint information is information describing how to control the position and thickness of each vector data according to the size.
  • Patent Document 2 calculates a horizontal vector and a vertical vector when drawing a character for font data that does not hold hint information, rounds these widths to an integer value, blurs, or Discloses a method for reducing blur.
  • This patent document 2 further discloses a method of improving the visibility of characters by aligning the horizontal vector and vertical vector groups at the same position to align each vector of characters.
  • Patent Document 3 creates a DAG (Direct Acyclic Graph) for font data that does not hold hint information, and when a collision occurs by scanning the DAG, A method of improving character quality by merging segments without causing character collapse is disclosed.
  • DAG Direct Acyclic Graph
  • the present invention has been made to solve the above-described problems, and is a character drawing device capable of drawing high-quality scalable font characters on a low-resolution display and reducing the font data size.
  • the purpose is to provide.
  • a character drawing apparatus acquires an input unit for inputting information, a font database for storing font data composed of character vector data, and character vector data corresponding to a character code input from the input unit from the font database.
  • a directed font data load unit a directed graph calculation unit that calculates a directed graph structure that is constructed by a directed graph that represents the vertical and horizontal positional relationship and the same positional relationship of each vector in the character vector data acquired by the font data loading unit, and a directed graph A grid fitting method that can be applied to all segments of character vector data in the same positional relationship with respect to each of a horizontal vector and a vertical vector, using the directed graph structure calculated in the calculation unit, Grid fit A grid-fitting unit that performs image processing, a rasterization unit that rasterizes character vector data that has been subjected to grid-fitting processing in the grid-fitting unit, and displays a character image obtained by rasterizing in the rasterization unit A display unit is provided.
  • high-quality scalable font characters can be drawn on a low-resolution display, and the font data size can be reduced.
  • FIG. 1 is a block diagram showing a configuration of a character drawing apparatus according to Embodiment 1 of the present invention.
  • the character drawing apparatus includes an input unit 101, a font data load unit 102, a directed graph calculation unit 103, a grid fitting unit 104, a rasterization unit 105, a display unit 106, and a font database 112.
  • the input unit 101 sets a font face name of a character, a font (such as a roman, bold, or italic type), a number of points indicating the size when the character is drawn, and a character that designates a character to be displayed in the font data It is used for inputting a code (information for specifying a character expressed by UTF-16, SHIFT-JIS code, etc.), a character drawing position or a color.
  • Information input from the input unit 101 is sent to the font data load unit 102.
  • the font database 112 stores font data.
  • the font data stored in the font database 112 is basically data representing a scalable font represented by vector data.
  • the font data loading unit 102 accesses the font database 112 based on the information sent from the input unit 101, and acquires vector data of a designated character code (hereinafter referred to as “character vector data”). Further, the font data loading unit 102 not only includes character vector data but also ascender information indicating the height above the character baseline necessary for rendering the character, descender information indicating the height below, Also obtains the location information of subscripts and subscripts.
  • the information acquired by the font data load unit 102 is sent to the directed graph calculation unit 103.
  • the directed graph calculation unit 103 performs a process of giving a relationship between horizontal vectors or vertical vectors in order to efficiently perform grid fitting on the character vector data sent from the font data load unit 102 To calculate DAG.
  • the DAG calculated by the directed graph calculation unit 103 is sent to the grid fitting unit 104. Details of the processing performed by the directed graph calculation unit 103 will be described later.
  • the grid fitting unit 104 uses the DAG sent from the directed graph calculation unit 103 to execute a grid fitting process for character vector data.
  • the result of the grid fitting process in the grid fitting unit 104 is sent to the rasterizing unit 105. Details of the processing performed by the grid fitting unit 104 will be described later.
  • the rasterizing unit 105 rasterizes the grid-fitted character vector data sent from the grid fitting unit 104.
  • the rasterizing method can be realized by combining the techniques disclosed in, for example, JP-T-2006-521626 and JP-T-2006-521582. Detailed description is omitted here, so refer to the above publication as necessary.
  • Data obtained by rasterization in the rasterization unit 105 is sent to the display unit 106.
  • the display unit 106 displays the result of rasterizing the character vector data based on the data sent from the rasterizing unit 105.
  • a directed graph refers to a graph in which vertices of a graph are connected by directed edges, as shown in FIG.
  • DAG is a directed acyclic graph, and as shown in FIG. 2A, the graph indicates an acyclic graph.
  • non-circular means that each vertex of the graph cannot be returned to the original vertex when following the directed edge. Therefore, the graph shown in FIG.
  • each vertex of the graph is a segment of vector data.
  • the character vector data is composed of pen commands such as movement, line drawing, and curve drawing, and the font renderer scans the character vector data expressed by these pen commands to rasterize the font.
  • vector data expressed as line drawing and curve drawing commands is referred to as a segment.
  • the horizontal vector and the vertical vector may be referred to as a horizontal segment and a vertical segment, respectively.
  • the directed graph calculation unit 103 processing for constructing the above-described directed graph structure from character vector data is performed. That is, the directed graph calculation unit 103 first calculates connection information as a structure necessary for calculating the directed graph by a connection information calculation process described below. Thereafter, a directed graph structure is constructed for each of the horizontal segments and the vertical segments by a directed graph structure construction process described below.
  • connection information calculation processing for calculating connection information in character vector data will be described.
  • connection information there are two patterns as shown in FIG. One is a case where the current segment is connected to the next segment as shown in FIG. 3 (A) (connected state), and the other is 2 as shown in FIG. 3 (B). This is the case where two segments intersect (intersection relationship).
  • Information indicating such a connection relationship can be held in each segment of vector data. That is, the connection relation can be held in a bidirectional list structure or the like, and the intersection relation can be held as a list of intersection segments.
  • FIG. 4 is a flowchart showing connection information calculation processing.
  • this connection information calculation process all segments are scanned in the loop 401.
  • e be the segment of interest.
  • all other segments not including e are scanned (loop 402).
  • the segment of the loop 402 of interest be e ′.
  • step 403 If it is determined in step 403 that they are connected, it is registered that e 'is connected to e (step 404), and the process proceeds to the next segment of the loop 402. If it is determined in step 403 that no connection is made, it is then checked whether e and e 'intersect (step 405). Whether or not to intersect can be determined by obtaining an outer product. If it is determined in step 405 that e and e 'intersect, e' is registered for e as an intersection relationship (step 406). Thereafter, processing proceeds to the next segment of loop 402. On the other hand, if it is determined in step 405 that the intersection does not occur, the process proceeds to the next segment of the loop 402. If it is determined that the scanning of all segments in the loop 402 has been completed, the process proceeds to the next segment of the loop 401. When the processing of all the segments in the loop 401 is completed, the loop 401 ends.
  • connection information in the vector data can be obtained by the processing described above.
  • scanning is performed for all the segments.
  • algorithms are known as methods for calculating intersection points, these algorithms can also be used.
  • orientation rules at the edges of vertices (segments) when extracting a directed graph structure will be described.
  • the orientation is performed by two relationships, a family relationship and a friend relationship representing the vertical position relationship.
  • the family relationship refers to a case where the horizontal segments have a connection relationship obtained in the connection information calculation process, such as the character “earth” that forms the character “rho” shown in FIG. . Therefore, the horizontal segment in the crown of the letter “rho” and the horizontal segment in “soil” are not in a family relationship. However, even if there is no connection relationship, it is possible to use a family relationship in which the X-coordinate range of the horizontal segment is more than a certain value and the height of the Y coordinate is within a predetermined threshold. In the horizontal segment, among the segments having the family relationship, the upper segment is called parent and the lower segment is called child. These represent the vertical positional relationship of each vector in the character vector data. For the vertical segment, the horizontal positional relationship of each vector in the character vector data is expressed.
  • the friend relationship means a relationship between horizontal segments existing at the same height as seen in the character “battle” shown in FIG. 5B, and the same positional relationship between the vectors in the character vector data.
  • the two horizontal segments that are present at the top of the gate of the word “fight” are in a friend relationship
  • the horizontal segments in the characters “bean” and “dimension” that are present in the gate are It is not a friend relationship.
  • FIG. 6 is a flowchart showing a directed graph structure construction process for constructing a directed graph structure having the above two relationships.
  • all segments are scanned, horizontal segments are extracted and held in a list (step 601).
  • whether or not it is a horizontal segment is determined by whether or not both end points have the same Y coordinate value.
  • it can also comprise so that it may be judged by whether the difference of the Y coordinate of both ends is within a predetermined threshold value.
  • the horizontal segments extracted in this way are sorted in ascending order of the Y coordinate (step 602).
  • E be the sorted bidirectional list of horizontal segments obtained in step 602.
  • the list E is scanned in ascending order, and each segment e is processed.
  • the processing of the loop 604 is further performed, and the segment below the Y coordinate of e is scanned in descending order. This is achieved by following the list E in reverse order.
  • the segment currently focused on is e ′.
  • step 606 If it is determined in step 605 that e and e 'have a family relationship, e' is registered as a child in e (step 606).
  • a child is obtained from a segment connected to e, when the step 605 is executed again in the loop 604, this segment is not searched. This is because there is a possibility that multiple children can be obtained from the connection relationship of one segment, and since these children have a further family relationship, it is only necessary to connect them in a series family relationship. is there. As a result, the number of searches can be reduced and the processing speed can be increased.
  • step 606 is executed, the next segment is scanned in loop 604.
  • step 607 it is checked whether e is a friend of e' (step 607).
  • the Y coordinates of e and e ′ are the same, or the difference between the Y coordinates is within a predetermined threshold, and the widths of e and e ′ are the same, or the difference is a predetermined value. This is done by checking whether it is within the threshold. If it is determined in step 607 that e and e 'have a friend relationship, the fact that the friend relationship is present is registered in each of e and e' (step 608). Thereafter, the next segment is scanned in loop 604.
  • step 607 if it is determined in step 607 that there is no friend relationship, the next segment is scanned in loop 604.
  • loop 604 is complete, next segment is scanned in loop 603.
  • the scanning of all the segments is completed in the loop 603, the directed graph structure construction process ends.
  • the part described as “horizontal” should be read as “vertical”, “upper” as “right”, “lower” as “left”, etc.
  • the directed graph structure can be realized in the same manner as described above.
  • each process can be executed sequentially, but in a system having a plurality of CPUs, each process can be executed in parallel. Can speed up the directed graph structure construction process.
  • the grid fitting unit 104 executes the grid fitting process using the directed graph structure described above. Similarly to the process in the directed graph calculation unit 103, the grid fitting process can be executed independently for each of the horizontal segment and the vertical segment. Therefore, the horizontal segment will be described below as an example. The contents described below can be similarly realized for the vertical segment.
  • FIG. 7 is a flowchart showing a grid fitting process performed by the grid fitting unit 104.
  • the grid fitting unit 104 first, in the loop 701, the bidirectional list E obtained in step 602 of the directed graph structure construction process executed by the directed graph calculation unit 103 is used.
  • the segments in the list E are processed one by one in ascending order.
  • the segment of the list of interest be e.
  • the loop 701 first, it is checked whether or not grid fitting is necessary for e (step 702).
  • the determination of the necessity of grid fitting can be performed by, for example, a method adopted in the technique disclosed in Patent Document 3. In the character drawing apparatus according to the first embodiment, the method is used. Does not depend on.
  • step 702 If it is determined in step 702 that grid fitting is necessary, the grid fitting method of e is investigated (step 703).
  • the grid fitting method obtained here is for keeping the relationship with the segments having the child relationship high in visibility. The details of the grid fitting method are described in, for example, Japanese Patent Application Laid-Open No. 2003-228620, and should be referred to as necessary.
  • each grid fitting method of the segment e 'having a friend relationship with e is investigated (step 706).
  • the grid fitting method applicable to all the segments in it is selected and the grid The process by the fitting method is executed for all segments having a friend relationship with e and e (step 707).
  • the grid fitting method applicable to all segments is selected for the following reason. In other words, the grid fitting method basically has priority, and it is sufficient that the method with high priority can be executed for all the segments. The expensive method is not applicable.
  • the method with the lowest priority is basically the grid fitting method applicable to all segments. Applied.
  • FIG. 8A shows an example in which the friend relationship is not considered, and the balance of the gate is lost.
  • FIG. 8B is an example in which the friend relationship is considered, and the result of the grid fitting process in which the balance of characters is adjusted is obtained.
  • the grid fitting process for the horizontal vector and the grid fitting process for the vertical vector can be executed sequentially. However, in a system having a plurality of CPUs, these can be executed in parallel. In this case, the grid fitting process can be speeded up.
  • a high-quality scalable font that does not collapse or lose balance when characters are displayed on a low-resolution display device. Can draw characters. Moreover, since the hint information is not included in the font data, the font data size can be reduced.
  • Embodiment 2 when the friend relationship is obtained, the horizontal segment is targeted for the Y-coordinate value and the length that are substantially equal. For this reason, Kanji characters exist at different radicals, but those that happen to be arranged at the same height and length are also classified in the same way. Thus, in the second embodiment, when the radicals are different, these are separated.
  • the configuration of the character drawing device according to the second embodiment is the same as that of the character drawing device according to the first embodiment.
  • the operation of the character drawing apparatus according to the second embodiment is basically the same as the operation of the character drawing apparatus according to the first embodiment, but only the determination process in step 607 of the process performed by the directed graph calculation unit 103. Is different.
  • step 607 of the process performed by the directed graph calculation unit 103 when it is determined whether or not the horizontal segments e and e ′ have a friend relationship, all segments other than e and e ′ are examined, and the horizontal segment is divided. Check if an edge exists. This check of whether to divide can be performed by using an outer product.
  • the horizontal line in the middle of the gate as shown in FIG. 5B cannot be in a friend relationship. Therefore, if a friend relationship, that is, a character having the same positional relationship, occurs between a parent segment above the segment segment or a child horizontal segment below the segment segment, the determination of the segment segment is ignored. Specifically, this can be realized by executing the directed graph structure construction process twice. Ignore those that have already been created, and determine whether there is a friend relationship between each parent and child for the segment pair that did not establish a friend relationship with a segment once. In this case, a friend relationship is also established for the segment pair currently focused on.
  • the character drawing device is suitable for various display devices that are required to display characters with high quality despite the small font data capacity.
  • 101 input unit 101 input unit, 102 font data load unit, 103 directed graph calculation unit, 104 grid fitting unit, 105 rasterization unit, 106 display unit, 112 font database.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Generation (AREA)

Abstract

L'invention concerne un dispositif pour dessiner des caractères, qui comprend : une unité de charge de données de police (102) pour acquérir des données de vecteur de caractère provenant d'une base de données de polices correspondant à une entrée de code de caractère d'une unité d'entrée ; une unité de calcul de graphe orienté (103) pour calculer une structure qui est construite à l'aide d'un graphe orienté qui représente la relation de position dans les directions verticale et horizontale et la même relation de position de chaque vecteur dans les données de vecteur de caractère acquises par l'unité de charge de données de police (102) ; une unité d'ajustement de grille (104) qui, à l'aide de la structure de graphe orienté calculée par l'unité de calcul de graphe orienté (103), exécute un processus d'ajustement de grille dans les relations verticale et horizontale à l'aide d'un procédé d'ajustement de grille qui est applicable à tous les segments dans les données de vecteur de caractère dans la même relation de position par rapport à chacun des vecteurs horizontaux et des vecteurs verticaux ; une unité de tramage (105) qui trame les données de vecteur de caractère qui ont été soumises au processus d'ajustement de grille dans l'unité d'ajustement de grille (104) pour créer une image de caractère ; et une unité d'affichage (106) pour afficher une image de caractère qui a été créée par l'unité de tramage (105) tramant les données de vecteur de caractère.
PCT/JP2012/003304 2012-05-21 2012-05-21 Dispositif pour dessiner des caractères WO2013175520A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201280070131.6A CN104126199B (zh) 2012-05-21 2012-05-21 文字描绘装置
PCT/JP2012/003304 WO2013175520A1 (fr) 2012-05-21 2012-05-21 Dispositif pour dessiner des caractères
JP2014516502A JPWO2013175520A1 (ja) 2012-05-21 2012-05-21 文字描画装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/003304 WO2013175520A1 (fr) 2012-05-21 2012-05-21 Dispositif pour dessiner des caractères

Publications (1)

Publication Number Publication Date
WO2013175520A1 true WO2013175520A1 (fr) 2013-11-28

Family

ID=49623259

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/003304 WO2013175520A1 (fr) 2012-05-21 2012-05-21 Dispositif pour dessiner des caractères

Country Status (3)

Country Link
JP (1) JPWO2013175520A1 (fr)
CN (1) CN104126199B (fr)
WO (1) WO2013175520A1 (fr)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106313907A (zh) * 2016-08-16 2017-01-11 江苏科技大学 一种基于图像转换的热敏打印机文字打印方法及系统
CN106875455A (zh) * 2017-01-18 2017-06-20 杭州阿优智能科技有限公司 图形绘制引导方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003530603A (ja) * 2000-04-10 2003-10-14 マイクロソフト コーポレイション テキスト文字のステムの場所の自動最適化
JP2008276247A (ja) * 1994-05-16 2008-11-13 Monotype Imaging Inc フォントデータ記憶および検索方法および装置
JP2011022429A (ja) * 2009-07-17 2011-02-03 Nagoya Institute Of Technology 毛筆フォント作成方法および毛筆フォント作成プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4367511B2 (ja) * 2007-03-26 2009-11-18 セイコーエプソン株式会社 文字描画装置、表示装置及び印刷装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276247A (ja) * 1994-05-16 2008-11-13 Monotype Imaging Inc フォントデータ記憶および検索方法および装置
JP2003530603A (ja) * 2000-04-10 2003-10-14 マイクロソフト コーポレイション テキスト文字のステムの場所の自動最適化
JP2011022429A (ja) * 2009-07-17 2011-02-03 Nagoya Institute Of Technology 毛筆フォント作成方法および毛筆フォント作成プログラム

Also Published As

Publication number Publication date
JPWO2013175520A1 (ja) 2016-01-12
CN104126199B (zh) 2016-03-09
CN104126199A (zh) 2014-10-29

Similar Documents

Publication Publication Date Title
US8102397B2 (en) Method for improving uniform width character strokes using multiple alignment zones
US8581908B2 (en) Graphics-rendering apparatus
US20160343155A1 (en) Dynamic filling of shapes for graphical display of data
US6614432B1 (en) Image rendering technique
JP5067501B2 (ja) 多色ベクトル画像処理装置および方法
US20160364892A1 (en) Font deformation method by changing dimensions of at least one partition of a frame surrounding a character
CN101819641B (zh) 将字符与图像的采样网格对齐的方法
JP6298422B2 (ja) マンマシンインターフェースのグラフィック表示用の文字列の処理技術
JP2009009345A (ja) ベクター画像描画装置、ベクター画像描画方法およびプログラム
WO2013175520A1 (fr) Dispositif pour dessiner des caractères
JP5777726B2 (ja) 描画装置及び描画プログラム
WO2013130278A1 (fr) Reproduction de glyphe
JP2012098951A (ja) 図形描画処理装置、図形描画処理方法、及びコンピュータプログラム
JP2003162728A (ja) 画像処理装置及び画像出力装置
KR101654865B1 (ko) 스트로크 기반의 이미지 렌더링 장치, 방법 및 컴퓨터 프로그램
JP2001307115A (ja) 画像処理装置および画像処理方法
JP5492911B2 (ja) 文字作成方法、および文字作成装置
JP2018019212A (ja) 情報処理装置及び描画処理方法、コンピュータプログラム
KR101666131B1 (ko) 서브 픽셀의 패턴을 고려한 벡터 글꼴의 렌더링 방법
JP2017125934A (ja) 文字描画装置及び文字描画方法、コンピュータプログラム
JP2017116859A (ja) 文字描画装置および文字描画方法、コンピュータプログラム
JP2014142789A (ja) 情報処理装置、情報処理方法
JP2013068985A (ja) ベクトル描画装置、ベクトル描画方法及びプログラム
CN115509402A (zh) 一种调整字体粗体效果的方法、装置、设备、存储介质
JP2011180904A (ja) 描画処理装置、描画処理方法及びプログラム

Legal Events

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

Ref document number: 201280070131.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: 12877461

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014516502

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12877461

Country of ref document: EP

Kind code of ref document: A1