JP3747410B2 - Technology for setting the line width of outline fonts - Google Patents

Technology for setting the line width of outline fonts Download PDF

Info

Publication number
JP3747410B2
JP3747410B2 JP2002292700A JP2002292700A JP3747410B2 JP 3747410 B2 JP3747410 B2 JP 3747410B2 JP 2002292700 A JP2002292700 A JP 2002292700A JP 2002292700 A JP2002292700 A JP 2002292700A JP 3747410 B2 JP3747410 B2 JP 3747410B2
Authority
JP
Japan
Prior art keywords
line width
character
font
characters
attribute setting
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2002292700A
Other languages
Japanese (ja)
Other versions
JP2004127111A (en
Inventor
紀子 長田
恵子 長野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2002292700A priority Critical patent/JP3747410B2/en
Priority to KR1020030067491A priority patent/KR100628819B1/en
Priority to CN031544932A priority patent/CN1497525B/en
Publication of JP2004127111A publication Critical patent/JP2004127111A/en
Application granted granted Critical
Publication of JP3747410B2 publication Critical patent/JP3747410B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1827Accessing generic data, e.g. fonts
    • G06K15/1831Accessing generic data, e.g. fonts characterized by the format of the data
    • G06K15/1834Outline coded data
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/485Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by the process of building-up characters or image elements applicable to two or more kinds of printing or marking processes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J3/00Typewriters or selective printing or marking mechanisms characterised by the purpose for which they are constructed
    • B41J3/01Typewriters or selective printing or marking mechanisms characterised by the purpose for which they are constructed for special character, e.g. for Chinese characters or barcodes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J5/00Devices or arrangements for controlling character selection
    • B41J5/30Character or syllable selection controlled by recorded information
    • B41J5/44Character or syllable selection controlled by recorded information characterised by storage of recorded information
    • B41J5/46Character or syllable selection controlled by recorded information characterised by storage of recorded information on internal storages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Dot-Matrix Printers And Others (AREA)
  • Record Information Processing For Printing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、アウトラインフォントの印字線幅を設定する技術に関する。特に本発明は、レンダリングシステムにより用いられるパラメータを指定することによりアウトラインフォントの印字線幅を設定する技術に関する。
【0002】
【従来の技術】
従来、文字又は記号等のキャラクタを様々なサイズで画面に表示等を行うために、米アドビシステムズ社が定めたCIDフォント等の、キャラクタの外縁を示すアウトラインフォントが用いられている(非特許文献1参照。)。
このアウトラインフォントの示すデザインを保持しつつ、アウトラインフォント等で示された文字の線幅を、入力された値に基づいて太く又は細く変換する文字発生装置が提案されている(特許文献1参照。)。また、入力された変倍サイズに基づき、アウトラインフォント等のベクトルデータで表されたフォントを、当該フォントのデザインを忠実に反映しつつ拡大又は縮小する文字発生器が提案されている(特許文献2参照。)。また、文字を示すフォントの主要部について、当該主要部の線幅をビットマップデータに変換した場合の目標線幅を入力とし、当該目標線幅に応じてフォント全体を収束することで、様々なサイズの文字を生成する出力装置が提案されている(特許文献3参照。)。
【0003】
【非特許文献1】
アドビ・システムズ・インコーポレイテッド(Adobe Systems Incorporated)発行、「アドビ・CマップアンドCIDフォントファイルズ・スペシフィケーション(Adobe CMap and CIDFont Files Specification)」
【特許文献1】
特開平9−6310号公報
【特許文献2】
特開平8−123388号公報
【特許文献3】
特許平7−11749号明細書
【0004】
【発明が解決しようとする課題】
しかしながら、特許文献1、特許文献2、及び特許文献3に開示された装置等は、利用者等の指示により任意に線幅又は文字自体のサイズを変更できるものの、文字ごとの設定を必要とするため、処理が煩雑になり、また実際に印字を行った場合の文字のつぶれを考慮していない。非特許文献1は、文字ごとの設定ではなく、CIDフォントのサブセット化(グループ分け)を分業、例えば文字のデザイン、Type1フォントの作成、テスト等のための手段として推奨しているが、印字品質の向上には言及していない。
【0005】
そこで本発明は、上記の課題を解決することのできるアウトラインフォントの印字線幅を設定する技術を提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【0006】
【課題を解決するための手段】
即ち、本発明の第1の形態によると、文字又は記号であるキャラクタの外縁を示すアウトラインデータをビットマップデータに変換して出力するレンダリングに用いられるパラメータを、複数のキャラクタに設定するフォント属性設定装置であって、複数のキャラクタのそれぞれに対応付けて、当該キャラクタに対応するアウトラインデータにより指定される線の幅の特性である線幅特性を取得する線幅特性取得部と、取得した線幅特性に応じて複数のキャラクタを複数のグループに分類する分類部と、複数のグループのそれぞれに、レンダリングにより変換されるビットマップデータの線幅を調整する線幅パラメータを、線幅特性に応じて設定する属性設定部とを備えることを特徴とするフォント属性設定装置を提供する。本発明の他の形態によると、当該装置を実現するプログラム、フォント生成方法、及び当該プログラムを記録したプログラム記録媒体を提供する。
【0007】
【発明の実施の形態】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、又実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0008】
図1は、印刷システム10の機能ブロック図を示す。印刷システム10は、文字又は記号であるキャラクタの印刷方法を、各キャラクタを構成する線幅に応じて調節することで、鮮明な印刷を実現することを目的とする。
【0009】
印刷システム10は、フォント属性設定装置20と、コンピュータ25と、印刷装置30とを備える。フォント属性設定装置20は、複数のキャラクタそれぞれの外縁を示すアウトラインデータを外部から受け取る。そして、フォント属性設定装置20は、各キャラクタを構成する線の幅の特性である線幅特性に基づいて、複数のキャラクタを複数のグループに分類する。フォント属性設定装置20は、各グループに、アウトラインデータをレンダリングした場合の、ビットマップデータの線幅を調整する線幅パラメータを設定し、アウトラインデータと伴に印刷装置30に送る。印刷装置30は、利用者からコンピュータ25を介して印刷指示を受け取ると、フォント属性設定装置20から受け取ったアウトラインデータ及び線幅パラメータに基づいて印刷を行う。
このように、印刷システム10は、各キャラクタを構成する線の線幅特性に応じて各キャラクタを分類し、グループ毎に線幅パラメータを設定するので、各キャラクタの特性に応じて印刷される線幅を調節することができる。
【0010】
フォント属性設定装置20は、フォント特性取得部100と、キャラクタセット内最小幅取得部110と、線幅特性取得部120と、分類部130と、線幅度数分布生成部140と、属性設定部150とを有する。
【0011】
フォント特性取得部100は、複数のキャラクタそれぞれの外縁を示すアウトラインデータ(例えば、前述のCIDフォント)を外部から受け取る。そして、フォント特性取得部100は、複数のアウトラインデータを含むキャラクタセットのヘッダ部等に記録されたフォント特性を取得し、線幅特性取得部120に送る。例えば、フォント特性取得部100は、この複数のキャラクタを含むキャラクタセットが、少なくとも一部の異なるアウトラインデータを含む他のキャラクタセットより、太い線のキャラクタで構成されるか否かを示すフォント特性(例えば、ボールド、ミディアム、又はライト等のウェイト情報)を取得し線幅特性取得部120に送る。
【0012】
キャラクタセット内最小幅取得部110は、複数のキャラクタそれぞれの外縁を示すアウトラインデータを外部から受け取る。そして、キャラクタセット内最小幅取得部110は、この複数のキャラクタから構成されるキャラクタセット内で用いられる全ての線幅のうち、最小の線幅であるキャラクタセット内最小幅を特定し、線幅特性取得部120に送る。
【0013】
線幅特性取得部120は、フォント特性取得部100からフォント特性を受け取り、キャラクタセット内最小幅取得部110からキャラクタセット内最小幅を受け取る。そして、線幅特性取得部120は、フォント特性及びキャラクタセット内最小幅に基づき、キャラクタを構成する最小の線幅である最小線幅又はキャラクタを構成する線の線幅のうち最も多く用いられる線幅である最多線幅の何れを取得するかを決定する。続いて、線幅特性取得部120は、各キャラクタのアウトラインデータに対応付けて、当該キャラクタの最小線幅又は最多線幅の何れかの線幅特性を選択して外部から取得し、分類部130に送る。例えば、線幅特性取得部120は、各キャラクタを構成する線の数を、線幅毎に集計することにより、最小線幅又は最多線幅を算出してもよい。
より具体的には、線幅特性取得部120は、外部の装置により設定された、各キャラクタのヒント情報を、線幅特性として取得してもよい。ヒント情報とは、コンピュータ又は人手で、アウトラインデータを解析することにより設定された情報であって、アウトラインデータをビットマップデータに変換する際に、線分を描画すべき起点及び線分の幅を指定する情報である。また、他の例として、線幅特性取得部120は、アウトラインデータのみを外部から取得し、当該アウトラインデータをコンピュータを用いて解析することにより、線幅特性を取得してもよい。
【0014】
分類部130は、各キャラクタの線幅特性を、各キャラクタのアウトラインデータに対応付けて線幅特性取得部120から取得する。そして、分類部130は、線幅特性に応じて複数のキャラクタを複数のグループに分類する。例えば、線幅特性として最小線幅を取得した場合に、分類部130は、最小線幅の値が所定範囲内にある複数のキャラクタを1つのグループとして分類する。そして、分類部130は、これらのグループを識別するグループ識別情報それぞれに、当該グループに属する各キャラクタのアウトラインデータ及び線幅特性を対応付けて、線幅度数分布生成部140及び属性設定部150に送る。
【0015】
線幅度数分布生成部140は、グループ識別情報それぞれに対応付けられた、各キャラクタのアウトラインデータ及び線幅特性を分類部130から受け取る。そして、線幅度数分布生成部140は、複数のグループのそれぞれについて、当該グループに属する全てのキャラクタが有する線の線幅の度数分布を、線幅特性に基づき生成し属性設定部150に送る。
【0016】
属性設定部150は、グループ識別情報それぞれに対応付けられた、各キャラクタのアウトラインデータ及び線幅特性を分類部130から受け取る。そして、属性設定部150は、これらのグループのそれぞれについて、線幅パラメータの一例である標準線幅(例えば、複数の標準線幅が指定できる場合には、第1標準線幅)を、線幅特性の値に設定する。そして、属性設定部150は、線幅度数分布生成部140から受け取った度数分布が極大となる線幅に基づいて、各グループにおける複数の標準線幅(例えば、第2から第N標準線幅)を設定する。例えば、属性設定部150は、度数分布が極大となる線幅から所定値を減じた線幅を、標準線幅として設定してもよい。
ここで、標準線幅とは、レンダリングにより生成されるビットマップデータにおける線幅の値が小数等の端数である場合に、切り上げ又は切り捨て等の丸めにより近づけるべき目標の線幅である。そして、属性設定部150は、グループ識別情報に対応付けた、各キャラクタのアウトラインデータ及び標準線幅を、印刷装置30に送る。
なお、第1標準線幅とは、例えば、CIDフォントにおけるStandardWidthパラメータであり、第2から第N標準線幅とは、例えば、CIDフォントにおけるStemArrayパラメータである。第1標準線幅として、優勢な幅(dominant width)を使うことがAdobe(登録商標) Type1フォントで公知になっているが、このType1フォントでは、線幅に応じたグループ分けは行っていない。
【0017】
コンピュータ25は、利用者からの指示等の入力に応じて、キャラクタを印刷する指示を印刷装置30に送る。
【0018】
印刷装置30は、フォント記録部300と、変換部310と、印刷部320とを備える。
フォント記録部300は、フォントデータ記録媒体305を有する。フォント記録部300は、グループ識別情報に対応付けた、各キャラクタのアウトラインデータ及び標準線幅を、属性設定部150から受け取り、フォントデータ記録媒体305に記録する。
【0019】
変換部310は、一のキャラクタを印刷する指示である印刷指示をコンピュータ25から受け取った場合に、当該一のキャラクタに対応するアウトラインデータ及び標準線幅をフォント記録部300から取得する。そして、変換部310は、標準線幅に基づき、アウトラインデータをビットマップデータに変換し、変換後のビットマップデータを印刷部320に送る。例えば、変換部310は、変換先のビットマップデータ上で、キャラクタを構成する線分の線幅が端数を生じた場合に、当該線幅を標準線幅が示す線幅に近づけるべく切り上げ又は切り捨てにより丸め、ビットマップデータにおける線幅を決定する。
【0020】
印刷部320は、変換部310から受け取ったビットマップデータを被印刷物に印刷する。
【0021】
このように、印刷システム10は、取得したアウトラインデータを線幅特性に応じてグループに分類し、各グループに標準線幅を設定する。そして、印刷システム10は、この標準線幅に応じてビットマップデータの生成を行うので、各キャラクタのアウトラインデータの特性に応じた適切な印刷を行うことができる。
【0022】
図2は、フォントデータ記録媒体305の詳細例を示す。フォントデータ記録媒体305は、複数のグループそれぞれについて、標準線幅記録領域の一例であるヘッダ部610と、アウトラインデータ記録領域の一例であるキャラクタデータ部620とを含む。
【0023】
ヘッダ部610は、グループ識別情報に対応付けて、それぞれが標準線幅の一例である横標準線幅及び縦標準線幅を、それぞれ複数含む。横標準線幅とは、キャラクタ内の左右方向の線分について、当該線分の線幅がビットマップ上で端数を生じた場合に、丸めにより近づけるべき線幅を示す。縦標準線幅とは、キャラクタ内の上下方向の線分について、当該線分の線幅がビットマップ上で端数を生じた場合に、丸めにより近づけるべき線幅を示す。
また、ヘッダ部610は、横標準線幅及び縦標準線幅を複数含んでもよい(例えば、第1横標準線幅から第N横標準線幅及び第1縦標準線幅から第N縦標準線幅。)。この場合、変換部310は、ビットマップ上で線幅に端数が生じた場合に、複数の標準線幅のうち最も近い値に近づけるように線幅を調節する。
【0024】
キャラクタデータ部620は、複数のキャラクタのそれぞれを識別する情報であるキャラクタ識別情報に対応付けて、当該キャラクタの印字イメージの外縁を示すアウトラインデータを格納している。例えば、このアウトラインデータは、印刷対象のキャラクタのサイズより大きい所定サイズのビットマップ座標軸上における、当該キャラクタの外縁を構成する線分の両端を示す座標の集合である。また、他の例として、アウトラインデータは、キャラクタの外縁を構成する直線及び曲線を示す式であってもよい。
【0025】
このように、フォントデータ記録媒体305は、グループ識別情報に対応付けて、横標準線幅及び縦標準線幅と、アウトラインデータとを記録している。従って、変換部310は、各アウトラインデータが属するグループを特定し、当該グループに対応付けられた標準線幅に基づき、アウトラインデータの変換を適切に行うことができる。
【0026】
図3は、フォント属性設定装置20の動作フローを示す。フォント特性取得部100は、複数のキャラクタそれぞれの外縁を示すアウトラインデータを、これらの複数のキャラクタにより構成されるキャラクタセットに対応付けられたフォント特性と伴に取得する(S100)。キャラクタセット内最小幅取得部110は、複数のキャラクタから構成されるキャラクタセット内で用いられる全ての線幅のうち、最小の線幅であるキャラクタセット内最小幅を特定する(S110)。
【0027】
線幅特性取得部120は、S100において取得されたフォント特性が示すフォントの太さが、他のキャラクタセットのフォント特性が示すフォントの太さより太いか否かを判断する(S120)。例えば、線幅特性取得部120は、フォント特性として、各フォントセットに対応付けられたウェイト属性を取得し、このウェイト属性が所定の値より高いか否かを判断することでフォントの太さを判断する。
【0028】
線幅特性取得部120によりフォント特性が示すフォントの太さが所定の基準より太いと判断された場合に(S120:YES)、線幅特性取得部120は、複数のキャラクタのアウトラインデータに対応付けて、当該キャラクタの縦線の最小線幅及び横線の最小線幅を個別に取得する(S130)。一方、線幅特性取得部120によりフォント特性が示すフォントの太さが所定の基準より細いと判断された場合に(S120:NO)、線幅特性取得部120は、キャラクタセット内最小幅が予め定められた基準線幅を上回るか否かを判断する(S140)。
【0029】
線幅特性取得部120は、キャラクタセット内最小幅が基準線幅を下回ると判断した場合に(S140:NO)、複数のキャラクタのアウトラインデータに対応付けて、当該キャラクタの縦線の最小線幅及び横線の最小線幅を個別に取得する(S130)。ここで、キャラクタセット内最小幅が基準線幅を下回る場合とは、例えば、キャラクタセット内に、画数の多い漢字等の複雑な文字が含まれる場合である。
例えば、アウトラインデータが1000×1000ドット等の所定の大きさを持つビットマップ空間の座標で表現される場合に、複雑な文字を構成する線分のそれぞれは、単純な文字を構成する線分に比べ細くデザインされることが多い。従って、線幅特性取得部120は、キャラクタセット内の最小線幅を用いることによって、当該キャラクタセットが複雑なキャラクタを含むか否かを判断できる。
【0030】
一方、線幅特性取得部120は、キャラクタセット内最小幅が基準線幅を上回ると判断した場合に(S140:YES)、複数のキャラクタのアウトラインデータに対応付けて、当該キャラクタの縦線の最多線幅及び横線の最多線幅を別個に取得する(S150)。
【0031】
分類部130は、各キャラクタの縦線の線幅特性に応じて予め定められた数のグループに分類し、更に、縦線に応じて分類したこれらのグループのそれぞれを、横線の線幅特性に応じて、縦線の線幅特性に応じたグループ分けより細かく分類する(S160)。S130において最小線幅が選択された場合のグループ分けの一例を以下に示す。
【0032】
まず、分類部130は、縦線の最小線幅が所定範囲内にある全てのキャラクタを1つのグループに分類する。例えば、アウトラインデータが1000×1000ドットのビットマップ空間の座標で表現される場合に、分類部130は、アウトラインデータにおける縦線の最小線幅が34ドットから80ドットの間にある複数のキャラクタを、10のグループに分割する。例えば、分類部130は、最小線幅が34ドットであるキャラクタと35ドットであるキャラクタを同一のグループに分類し、最小線幅が50ドットのキャラクタは他のグループに分類する。
【0033】
ここで、分類部130は、縦線に応じて分類したこれらのグループのそれぞれを、横線の線幅特性に応じて、縦線の線幅特性に応じたグループ分けより細かく分類してもよい。例えば、分類部130は、横線の最小線幅が34ドットから80ドットの間にある複数のキャラクタを、縦線に応じたグループ数である10より多いグループである17のグループに分類する。
漢字等の複雑なキャラクタにおいて、横線が縦線に比べて込み入ったデザインであり、横線の印字に「つぶれ」や「にじみ」を生じやすいので、分類部130は、横線の最小線幅に応じてより細かく分類することにより、キャラクタのデザインを保ちつつ、判読が容易な印刷をさせることができる。
【0034】
属性設定部150は、複数のグループのそれぞれについて、第1縦標準線幅を、当該グループに属する全てのキャラクタを構成する縦線の最小線幅(又は、最多線幅)の最小値に設定し、第1横標準線幅を、当該グループに属する全てのキャラクタを構成する横線の最小線幅(又は、最多線幅)の最小値に設定する(S170)。他の例として、属性設定部150は、各グループに属する全てのキャラクタを構成する縦線又は横線の最小線幅の平均値を、当該グループの縦又は横標準線幅として設定してもよいし、縦線又は横線の最小線幅の最大値を、当該グループの縦又は横標準線幅として設定してもよい。
【0035】
線幅度数分布生成部140は、複数のグループそれぞれに対応付けて、当該グループに属する全てのキャラクタが有する線の線幅の度数分布を、線幅特性に基づき生成する(S180)。そして、属性設定部150は、度数分布が極大となる線幅に基づいて、各グループにおける複数の標準線幅(例えば、第2から第N標準線幅)を設定する(S190)。
【0036】
このように、印刷システム10は、取得したアウトラインデータに基づき、各キャラクタ内で用いられる線幅の最小値である最小線幅又は、各キャラクタ内で最も多く用いられる線幅である最多線幅を特定する。そして、印刷システム10は、最小線幅又は最多線幅に基づき、キャラクタをグループに分類し、各グループの標準線幅を設定する。更に、印刷システム10は、各グループ内の線幅の度数分布に基づき標準線幅を追加して設定する。従って、印刷システム10は、類似した線幅特性をもつキャラクタを同一のグループに分類し、印刷時の線幅の調節方法をグループ毎に調節することができる。
【0037】
図4は、標準線幅の設定に応じた効果を模式的に示す。図4(A)は、キャラクタの一例である「王」の漢字の、アウトラインデータの一例を示す。「王」の字の上辺800、中辺810、及び下辺820の線幅は、それぞれ60ドット、45ドット、及び60ドットである。
【0038】
図4(B)は、第1横標準線幅を、最小線幅である45ドットに設定した場合に、変換部310がアウトラインデータをレンダリングすることにより生成するビットマップデータの一例を示す。変換部310は、まず、第1横標準線幅である45ドットと同一の線幅を有する中辺810を、ビットマップデータにおいて2ドットとする。
【0039】
次に、変換部310は、アウトラインデータにおける文字の太さのバランスを保つべく、以下の処理により上辺800の線幅を決定する。変換部310は、上辺800の線幅である60ドットが、第1横標準線幅である45ドットの4/3倍であるので、上辺800の線幅がビットマップデータにおいて8/3ドットであると算出する(計算式は、2×4/3。)。従って、変換部310は、上辺800の線幅が、ビットマップデータにおいて整数とならない端数を含むので、線幅を切り上げ又は切り捨てにより2ドット又は3ドットに丸める必要がある。
【0040】
変換部310は、第1横標準線幅が45ドットであり、第1横標準線幅はビットマップデータにおいて2ドットであるので、第1横標準線幅が示す2ドットに近づけるべく、上辺800の線幅60ドットを2ドットに変換する。
【0041】
一方、図4(C)は、第1横標準線幅を、最多線幅である60ドットに設定した場合に、変換部310がアウトラインデータをレンダリングすることにより生成するビットマップデータの一例を示す。変換部310は、まず、第1横標準線幅である60ドットと同一の線幅を有する上辺800を、ビットマップデータにおいて3ドットとする。
【0042】
次に、変換部310は、アウトラインデータにおける文字の太さのバランスを保つべく、以下の処理により中辺810の線幅を決定する。変換部310は、中辺810の線幅である45ドットが、第1横標準線幅である60ドットの3/4倍であるので、中辺810の線幅がビットマップデータにおいて9/4ドットであると算出する(計算式は、3×3/4。)。従って、変換部310は、中辺810の線幅が、ビットマップデータにおいて整数とならない端数を含むので、線幅を切り上げ又は切り捨てにより2ドット又は3ドットに丸める必要がある。
【0043】
変換部310は、第1横標準線幅が60ドットであり、第1横標準線幅はビットマップデータにおいて3ドットであるので、線幅の端数を丸めることにより近づけるべき目標の線幅を示す第1横標準線幅の3ドットに近づけるべく、中辺810の線幅45ドットを3ドットに変換する。
【0044】
このように、印刷システム10は、標準線幅を設定することにより、アウトラインデータをビットマップデータに変換する時に、変換後の線幅の端数を丸める方法を設定することができる。例えば、印刷システム10は、標準線幅を最小線幅に設定した場合に、全体として線が細いビットマップデータを生成する(図4(B))。一方、印刷システム10は、標準線幅を最多線幅に設定した場合に、全体としてアウトラインデータにおける文字のデザインのバランスを維持したビットマップデータを生成する(図4(C))。印刷システム10は、必要に応じて最小線幅又は最多線幅の何れかを標準線幅に設定することにより、線の占める密度が高い複雑なキャラクタセットを、より鮮明に印刷し、線の占める密度が低いキャラクタセットを、アウトラインデータが示すデザインイメージをより忠実に反映して印刷することができる。
【0045】
図5は、キャラクタセットのサブセット化の例を示したもので、図5(A)は、Adobe CIDフォントで行われている、文字の種類毎のサブセット化の例を示す。
【0046】
例えば、グループ700−1〜5は、それぞれ「かな」、「ラテン文字」、「第1水準文字」(漢字)、「第2水準文字」(漢字)、及び「記号」を含む。この場合、例えば第2水準文字に属する漢字には、すべて同一の標準線幅が設定される。
【0047】
そうすると、同一の種類のキャラクタセット(例えば第2水準文字)に属する複雑なキャラクタ及び単純なキャラクタの双方が、同一の標準線幅に基づいて印刷されるので、複雑なキャラクタについては、キャラクタのつぶれを招くおそれがあり、単純なキャラクタについては、キャラクタのデザインが忠実に反映されない場合がある。
【0048】
図5(B)は、本実施形態に従って、分類部130が、複数のキャラクタを、最多線幅に応じて分類した場合の例を示す。分類部130は、複数のキャラクタを、縦線の最多線幅(図中でVと示す)により4つに分類する。例えば、分類部130は、複数のキャラクタを、縦線の最多線幅が68(図中でV68と示す)であるグループ710−1と、縦線の最多線幅が72(図中でV72と示す)であるグループ710−2及びグループ710−3と、縦線の最多線幅が76(図中でV76と示す)であるグループ710−4と、縦線の最多線幅が88(図中でV88と示す)であるグループ710−5とに分類する。更に、分類部130は、V72のグループを、更に、横線の最多線幅がそれぞれ68及び72であるグループ710−2及びグループ710−3に分類する。属性設定部150は、分類されたこれらのグループ710−1〜5のそれぞれに、縦及び横標準線幅を設定する。
【0049】
このように、分類部130が、複数のキャラクタを各キャラクタの線幅特性に応じて分類した場合に、属性設定部150は、分類されたグループに応じて適切な標準線幅を設定することができる。
【0050】
図6は、標準線幅の設定に応じた印刷結果を示す。図6(A)は、フォント属性設定装置20が取得した、ヒント情報が設定された一般のアウトラインデータを印刷装置30により印刷した印刷結果を示す(600dpi、9.6ポイントの文字)。本図において、印刷装置30は、キャラクタの一部に「つぶれ」や「にじみ」を生じる。本図のように、アウトラインデータにより指定される線幅が太く、かつ印刷範囲が狭い場合には、印刷装置30は、ビットマップデータにおける線のつぶれのみならず、印刷時におけるインクのにじみの影響を受け、判読の難しいキャラクタを印刷してしまうおそれがある。
【0051】
図6(B)は、印刷システム10が最多線幅を第1標準線幅として設定して印刷した印刷結果を示す。図6(A)に比べ、「つぶれ」や「にじみ」の影響が少ない。
【0052】
図6(C)は、印刷システム10が最小線幅を第1標準線幅として設定して印刷した印刷結果を示す。印刷システム10は、図6(A)、(B)に比べ、「つぶれ」や「にじみ」の影響が少なく、判読が容易なキャラクタを印字できる。
【0053】
このように、印刷範囲あたりに占める印刷部分の密度の高いキャラクタを印刷する場合に、印刷システム10は、最小線幅を標準線幅として設定することにより、印刷対象の「つぶれ」や「にじみ」を防止し、判読が容易なキャラクタを印刷することができる。
【0054】
図7は、フォント属性設定装置20のハードウェア構成の一例を示す。本実施形態に係るフォント属性設定装置20は、ホストコントローラ1082により相互に接続されるCPU1000、RAM1020、グラフィックコントローラ1075、及び表示装置1080を有するCPU周辺部と、入出力コントローラ1084によりホストコントローラ1082に接続される通信インターフェイス1030、ハードディスクドライブ1040、及びCD−ROMドライブ1060を有する入出力部と、入出力コントローラ1084に接続されるROM1010、フレキシブルディスクドライブ1050、及び入出力チップ1070を有するレガシー入出力部とを備える。
【0055】
ホストコントローラ1082は、RAM1020と、高い転送レートでRAM1020をアクセスするCPU1000及びグラフィックコントローラ1075とを接続する。CPU1000は、ROM1010及びRAM1020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ1075は、CPU1000等がRAM1020内に設けたフレームバッファ上に生成する画像データを取得し、表示装置1080上に表示させる。これに代えて、グラフィックコントローラ1075は、CPU1000等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
【0056】
入出力コントローラ1084は、ホストコントローラ1082と、比較的高速な入出力装置である通信インターフェイス1030、ハードディスクドライブ1040、及びCD−ROMドライブ1060を接続する。通信インターフェイス1030は、ネットワークを介して他の装置と通信する。ハードディスクドライブ1040は、フォント属性設定装置20が使用するプログラム及びデータを格納する。CD−ROMドライブ1060は、CD−ROM1095からプログラム又はデータを読み取り、RAM1020を介して入出力チップ1070に提供する。
【0057】
また、入出力コントローラ1084には、ROM1010と、フレキシブルディスクドライブ1050や入出力チップ1070等の比較的低速な入出力装置とが接続される。ROM1010は、フォント属性設定装置20の起動時にCPU1000が実行するブートプログラムや、フォント属性設定装置20のハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ1050は、フレキシブルディスク1090からプログラム又はデータを読み取り、RAM1020を介して入出力チップ1070に提供する。入出力チップ1070は、フレキシブルディスク1090や、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して各種の入出力装置を接続する。また、入出力チップ1070は、使用者の入力に対応するデータを受信し、フォント属性設定装置20上で実行されるプログラムに与える。さらに、入出力チップ1070は、フレキシブルディスクドライブ1050又はCD−ROMドライブ1060から提供されたプログラム又はデータを、コンピュータ25及び印刷装置30に送信する。
【0058】
フォント属性設定装置20、コンピュータ25、及び印刷装置30に提供され実行されるプログラムは、機能構成として、フォント特性取得モジュール、キャラクタセット内最小幅取得モジュール、線幅特性取得モジュール、分類モジュール、線幅度数分布生成モジュール、及び属性設定モジュールを有する。各モジュールがフォント属性設定装置20、コンピュータ25及び印刷装置30に働きかけて行わせる動作は、図1において説明したフォント属性設定装置20、コンピュータ25及び印刷装置30における、対応する部材の動作と同一であるから、説明を省略する。
【0059】
フォント属性設定装置20、コンピュータ25、及び印刷装置30に提供されプログラムは、フレキシブルディスク1090、CD−ROM1095、又はICカード等のプログラム記録媒体に格納されて利用者によって提供される。プログラムは、プログラム記録媒体から読み出され、入出力チップ1070を介してコンピュータ25及び印刷装置30にインストールされ、フォント属性設定装置20、コンピュータ25、及び印刷装置30において実行される。これに代えて、コンピュータ25及び印刷装置30は、更にフレキシブルディスクドライブ、CD−ROMドライブ、又はICカードリーダ等を備え、プログラムをプログラム記録媒体から直接読み出して実行してもよい。
【0060】
以上に示したプログラム又はモジュールは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク1090、CD−ROM1095の他に、DVDやPD等の光学記録媒体、MD等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムを印刷システム10に提供してもよい。
【0061】
以上で示したように、印刷システム10は、アウトラインデータを、最小線幅又は最多線幅に応じてグループに分類し、各グループの標準線幅を最小線幅又は最多線幅に設定する。そして、印刷システム10は、この標準線幅に応じてビットマップデータの生成を行うので、各キャラクタのアウトラインデータの特性に応じた印刷を行うことができる。従って、印刷システム10は、アウトラインデータのデザインを可能な限り反映しつつ、漢字等の画数の多いキャラクタを判読容易に印刷することができる。
【0062】
以上、本発明を実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態に、多様な変更または改良を加えることができる。そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
例えば、属性設定部150は、各キャラクタの標準線幅を最小線幅以下の所定値に設定してもよい(例えば、最小線幅から所定値減じた値)。この様に設定することで、印刷システム10は、キャラクタを構成する各線を、当該キャラクタの最小線幅以下の線幅に丸める処理を行うので、漢字等の複雑なキャラクタを、判読容易に印刷することができる。
【0063】
以上で示した実施形態によれば、以下に示すアウトラインフォントの印字線幅を設定する技術が実現される。
【0064】
(項目1) 文字又は記号であるキャラクタの外縁を示すアウトラインデータをビットマップデータに変換して出力するレンダリングに用いられるパラメータを、複数の前記キャラクタに設定するフォント属性設定装置であって、複数の前記キャラクタのそれぞれに対応付けて、当該キャラクタに対応するアウトラインデータにより指定される線の幅の特性である線幅特性を取得する線幅特性取得部と、前記線幅特性に応じて前記複数のキャラクタを複数のグループに分類する分類部と、前記複数のグループのそれぞれに、前記レンダリングにより変換される前記ビットマップデータの線幅を調整する線幅パラメータを、前記線幅特性に応じて設定する属性設定部とを備えることを特徴とするフォント属性設定装置。
(項目2) 前記属性設定部は、前記複数のグループのそれぞれに、互いに異なる前記線幅パラメータを設定することを特徴とする項目1記載のフォント属性設定装置。
【0065】
(項目3) 前記分類部は、複数の前記キャラクタを、前記アウトラインデータによりそれぞれ指定される縦線の前記線幅特性に応じて予め定められた数のグループに分類し、更に、前記縦線に応じた前記グループのそれぞれを、各前記アウトラインデータを構成する横線の前記線幅特性に応じて、前記縦線の線幅特性に応じたグループ分けより細かく分類することを特徴とする項目2記載のフォント属性設定装置。
(項目4) 前記属性設定部は、前記線幅パラメータとして、前記アウトラインデータを前記ビットマップデータに変換する時に、変換後の線幅の端数を丸める方法を設定することを特徴とする項目1記載のフォント属性設定装置。
(項目5) 前記属性設定部は、前記変換後の前記線幅の端数を丸めることにより近づけるべき目標の線幅を示す標準線幅を、前記線幅パラメータとして設定することを特徴とする項目4記載のフォント属性設定装置。
【0066】
(項目6) 前記複数のグループのそれぞれについて、当該グループに属する全ての前記キャラクタが有する線の線幅の度数分布を、前記線幅特性に基づき生成する線幅度数分布生成部を更に備え、前記属性設定部は、当該度数分布が極大となる前記線幅に基づいて、前記グループにおける複数の前記標準線幅を設定することを特徴とする項目5記載のフォント属性設定装置。
(項目7) 前記線幅特性取得部は、前記キャラクタを構成する最小の線幅である最小線幅を前記キャラクタ毎に取得し、前記属性設定部は、各前記キャラクタの前記線幅パラメータを前記最小線幅に設定することを特徴とする項目5記載のフォント属性設定装置。
【0067】
(項目8) 前記線幅特性取得部は、前記キャラクタを構成する線の線幅のうち最も多く用いられる線幅である最多線幅を前記キャラクタ毎に取得し、前記属性設定部は、各前記キャラクタの前記線幅パラメータを前記最多線幅に設定することを特徴とする項目5記載のフォント属性設定装置。
(項目9) 前記複数のキャラクタを含むキャラクタセットが、少なくとも一部のキャラクタに対して前記キャラクタセットとは異なるアウトラインデータを含む他のキャラクタセットより、太い線のキャラクタで構成されるか否かを示すフォント特性を取得するフォント特性取得部を更に備え、前記線幅特性取得部は、前記フォント特性に応じて、各前記キャラクタを構成する最小の線幅である最小線幅又は前記最多線幅を選択して取得し、前記属性設定部は、選択された前記最小線幅又は前記最多線幅を前記線幅パラメータとして各前記キャラクタに設定することを特徴とする項目8記載のフォント属性設定装置。
【0068】
(項目10) 前記複数のキャラクタを含むキャラクタセット内で用いられる全ての線幅のうち、最小の線幅であるキャラクタセット内最小幅を取得するキャラクタセット内最小幅取得部を更に備え、前記線幅特性取得部は、前記キャラクタセット内最小幅が予め定められた基準線幅を上回ると判断した場合に、前記アウトラインデータを構成する最小の線幅である最小線幅を、前記キャラクタセット内最小幅が前記基準線幅を下回ると判断した場合に、前記最多線幅を、それぞれ前記キャラクタ毎に取得し、前記属性設定部は、取得された前記最小線幅又は前記最多線幅の何れかを前記線幅パラメータとして、各前記キャラクタに設定することを特徴とする項目8記載のフォント属性設定装置。
(項目11) 文字又は記号であるキャラクタの外縁を示すアウトラインデータをビットマップデータに変換して出力するレンダリングに用いられるパラメータを、複数の前記キャラクタに、コンピュータを用いて設定させるプログラムであって、前記コンピュータを複数の前記キャラクタのそれぞれに対応付けて、当該キャラクタに対応するアウトラインデータにより指定される線の幅の特性である線幅特性を取得する線幅特性取得部と、前記線幅特性に応じて前記複数のキャラクタを複数のグループに分類する分類部と、前記複数のグループのそれぞれに、前記レンダリングにより変換される前記ビットマップデータの線幅を調整する線幅パラメータを、前記線幅特性に応じて設定する属性設定部として機能させることを特徴とするプログラム。
【0069】
(項目12) 文字又は記号であるキャラクタの外縁を示すアウトラインデータをビットマップデータに変換して出力するレンダリングに用いられるパラメータを、複数の前記キャラクタを示すアウトラインフォントに設定するフォント生成方法であって、複数の前記キャラクタのそれぞれに対応付けられた前記アウトラインデータを取得する段階と、複数の前記キャラクタのそれぞれに対応付けて、当該キャラクタに対応するアウトラインデータにより指定される線の幅の特性である線幅特性を取得する段階と、前記線幅特性に応じて前記複数のキャラクタを複数のグループに分類する段階と、前記複数のグループのそれぞれに、前記レンダリングにより変換される前記ビットマップデータの線幅を調整する線幅パラメータを、前記線幅特性に応じて設定し、アウトラインデータに対応付けて出力する段階とを備えることを特徴とするフォント生成方法。
【0070】
(項目13) 文字又は記号であるキャラクタの外縁を示すアウトラインデータをビットマップデータに変換して出力するレンダリングに用いられるパラメータを、複数の前記キャラクタに、コンピュータを用いて設定させるプログラムを記録したプログラム記録媒体であって、前記プログラムは、前記コンピュータを、複数の前記キャラクタのそれぞれに対応付けて、当該キャラクタに対応するアウトラインデータにより指定される線の幅の特性である線幅特性を取得する線幅特性取得部と、前記線幅特性に応じて前記複数のキャラクタを複数のグループに分類する分類部と、前記複数のグループのそれぞれに、前記レンダリングにより変換される前記ビットマップデータの線幅を調整する線幅パラメータを、前記線幅特性に応じて設定する属性設定部として機能させることを特徴とするプログラム記録媒体。
【0071】
【発明の効果】
上記説明から明らかなように、本発明によれば、漢字等の画数の多いキャラクタを判読容易に印刷することができる。
【図面の簡単な説明】
【図1】図1は、印刷システム10の機能ブロック図。
【図2】図2は、フォントデータ記録媒体305の詳細例を示す図。
【図3】図3は、フォント属性設定装置20の動作フロー図。
【図4】図4は、標準線幅の設定に応じた効果を模式的に示す図。
【図5】図5は、キャラクタセットのサブセット化の例を示す図。
【図6】図6は、標準線幅の設定に応じた印刷結果を示す図。
【図7】図7は、フォント属性設定装置20のハードウェア構成の一例を示す図。
【符号の説明】
10 印刷システム
20 フォント属性設定装置
25 コンピュータ
30 印刷装置
100 フォント特性取得部
110 キャラクタセット内最小幅取得部
120 線幅特性取得部
130 分類部
140 線幅度数分布生成部
150 属性設定部
300 フォント記録部
305 フォントデータ記録媒体
310 変換部
320 印刷部
610 ヘッダ部
620 キャラクタデータ部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a technique for setting a print line width of an outline font. In particular, the present invention relates to a technique for setting a print line width of an outline font by designating parameters used by a rendering system.
[0002]
[Prior art]
Conventionally, in order to display characters such as characters or symbols on the screen in various sizes, outline fonts indicating the outer edges of the characters, such as CID fonts defined by Adobe Systems Incorporated, have been used (Non-Patent Documents). 1).
There has been proposed a character generator that converts the line width of a character indicated by an outline font or the like based on an input value while maintaining the design indicated by the outline font (see Patent Document 1). ). Also, a character generator has been proposed that enlarges or reduces a font represented by vector data such as an outline font based on the input scaling size while faithfully reflecting the design of the font (Patent Document 2). reference.). In addition, for the main part of the font indicating characters, the target line width when the line width of the main part is converted into bitmap data is input, and by converging the entire font according to the target line width, An output device that generates characters of a size has been proposed (see Patent Document 3).
[0003]
[Non-Patent Document 1]
Published by Adobe Systems Incorporated, “Adobe CMap and CID Font Files Specification” (Adobe CMap and CIDFont Files Specification)
[Patent Document 1]
Japanese Patent Laid-Open No. 9-6310
[Patent Document 2]
JP-A-8-123388
[Patent Document 3]
Japanese Patent No. 7-11749
[0004]
[Problems to be solved by the invention]
However, although the devices disclosed in Patent Document 1, Patent Document 2, and Patent Document 3 can arbitrarily change the line width or the size of the character itself according to the user's instructions, they need to be set for each character. Therefore, the process becomes complicated, and the collapse of characters in actual printing is not considered. Non-Patent Document 1 recommends subsetting (grouping) of CID fonts instead of setting for each character as a means for division of labor, for example, character design, creation of Type 1 font, testing, etc. There is no mention of improvement.
[0005]
Therefore, an object of the present invention is to provide a technique for setting a print line width of an outline font that can solve the above-described problems. This object is achieved by a combination of features described in the independent claims. The dependent claims define further advantageous specific examples of the present invention.
[0006]
[Means for Solving the Problems]
That is, according to the first aspect of the present invention, the font attribute setting for setting a parameter used for rendering for converting the outline data indicating the outer edge of the character, which is a character or a symbol, into bitmap data and outputting it to a plurality of characters A line width characteristic acquisition unit that acquires a line width characteristic that is a characteristic of a line width specified by outline data corresponding to each character in association with each of the plurality of characters, and the acquired line width A classification unit that classifies a plurality of characters into a plurality of groups according to characteristics, and a line width parameter that adjusts the line width of bitmap data converted by rendering for each of the plurality of groups, according to the line width characteristics There is provided a font attribute setting device comprising an attribute setting unit for setting. According to another aspect of the present invention, a program for realizing the apparatus, a font generation method, and a program recording medium recording the program are provided.
[0007]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, the present invention will be described through embodiments of the invention. However, the following embodiments do not limit the invention according to the claims, and all combinations of features described in the embodiments are included. It is not necessarily essential for the solution of the invention.
[0008]
FIG. 1 shows a functional block diagram of the printing system 10. An object of the printing system 10 is to realize clear printing by adjusting a printing method of a character that is a character or a symbol in accordance with a line width constituting each character.
[0009]
The printing system 10 includes a font attribute setting device 20, a computer 25, and a printing device 30. The font attribute setting device 20 receives outline data indicating the outer edges of each of the plurality of characters from the outside. Then, the font attribute setting device 20 classifies the plurality of characters into a plurality of groups based on the line width characteristic which is the characteristic of the width of the line constituting each character. The font attribute setting device 20 sets, for each group, a line width parameter for adjusting the line width of the bitmap data when the outline data is rendered, and sends it to the printing device 30 together with the outline data. Upon receiving a print instruction from the user via the computer 25, the printing apparatus 30 performs printing based on the outline data and the line width parameter received from the font attribute setting apparatus 20.
In this way, the printing system 10 classifies each character according to the line width characteristics of the lines constituting each character, and sets the line width parameter for each group. Therefore, the line to be printed according to the characteristics of each character. The width can be adjusted.
[0010]
The font attribute setting device 20 includes a font characteristic acquisition unit 100, a character set minimum width acquisition unit 110, a line width characteristic acquisition unit 120, a classification unit 130, a line width frequency distribution generation unit 140, and an attribute setting unit 150. And have.
[0011]
The font characteristic acquisition unit 100 receives outline data (for example, the CID font described above) indicating the outer edges of each of the plurality of characters from the outside. Then, the font characteristic acquisition unit 100 acquires the font characteristics recorded in the header portion or the like of the character set including a plurality of outline data, and sends it to the line width characteristic acquisition unit 120. For example, the font characteristic acquisition unit 100 indicates whether or not the character set including a plurality of characters is composed of thicker-line characters than other character sets including at least some different outline data ( For example, weight information such as bold, medium, or light) is acquired and sent to the line width characteristic acquisition unit 120.
[0012]
The character set minimum width acquisition unit 110 receives outline data indicating the outer edges of each of the plurality of characters from the outside. The in-character-set minimum width acquisition unit 110 identifies the minimum width in the character set that is the minimum line width among all the line widths used in the character set composed of the plurality of characters. This is sent to the characteristic acquisition unit 120.
[0013]
The line width characteristic acquisition unit 120 receives the font characteristics from the font characteristic acquisition unit 100 and receives the minimum width within the character set from the minimum width acquisition part 110 within the character set. Then, the line width characteristic acquisition unit 120 is based on the font characteristics and the minimum width in the character set, and is the most frequently used line among the minimum line width that is the minimum line width that constitutes the character or the line width that constitutes the character. Determine which of the most frequent line widths to obtain. Subsequently, the line width characteristic acquisition unit 120 selects from the outside the line width characteristic of the character in association with the outline data of each character, selects and acquires the line width characteristic of the character from the outside, and the classification unit 130 Send to. For example, the line width characteristic acquisition unit 120 may calculate the minimum line width or the maximum line width by counting the number of lines constituting each character for each line width.
More specifically, the line width characteristic acquisition unit 120 may acquire hint information of each character set by an external device as the line width characteristic. Hint information is information set by analyzing outline data by a computer or manually. When converting outline data to bitmap data, the hint point and the width of the line segment should be drawn. Information to be specified. As another example, the line width characteristic acquisition unit 120 may acquire line width characteristics by acquiring only outline data from the outside and analyzing the outline data using a computer.
[0014]
The classification unit 130 acquires the line width characteristics of each character from the line width characteristic acquisition unit 120 in association with the outline data of each character. Then, the classification unit 130 classifies the plurality of characters into a plurality of groups according to the line width characteristics. For example, when the minimum line width is acquired as the line width characteristic, the classification unit 130 classifies a plurality of characters whose minimum line width value is within a predetermined range as one group. Then, the classification unit 130 associates the outline data and the line width characteristics of each character belonging to the group with the group identification information for identifying these groups, and sends them to the line width frequency distribution generation unit 140 and the attribute setting unit 150. send.
[0015]
The line width frequency distribution generation unit 140 receives outline data and line width characteristics of each character associated with each group identification information from the classification unit 130. Then, for each of the plurality of groups, the line width frequency distribution generation unit 140 generates a line width frequency distribution of all the characters belonging to the group based on the line width characteristics and sends the generated line width frequency distribution to the attribute setting unit 150.
[0016]
The attribute setting unit 150 receives outline data and line width characteristics of each character associated with each group identification information from the classification unit 130. Then, the attribute setting unit 150 sets, for each of these groups, a standard line width that is an example of a line width parameter (for example, the first standard line width when a plurality of standard line widths can be specified), the line width Set to the value of the characteristic. Then, the attribute setting unit 150 has a plurality of standard line widths in each group (for example, the second to Nth standard line widths) based on the line width at which the frequency distribution received from the line width frequency distribution generation unit 140 is maximized. Set. For example, the attribute setting unit 150 may set, as the standard line width, a line width obtained by subtracting a predetermined value from the line width at which the frequency distribution is maximized.
Here, the standard line width is a target line width that should be approximated by rounding such as rounding up or down when the line width value in the bitmap data generated by rendering is a fraction such as a decimal. Then, the attribute setting unit 150 sends the outline data and the standard line width of each character associated with the group identification information to the printing apparatus 30.
The first standard line width is, for example, a StandardWidth parameter in a CID font, and the second to Nth standard line widths are, for example, a stem array parameter in a CID font. The use of a dominant width as the first standard line width is known in the Adobe (registered trademark) Type 1 font, but the Type 1 font does not perform grouping according to the line width.
[0017]
The computer 25 sends an instruction to print a character to the printing apparatus 30 in response to an input such as an instruction from the user.
[0018]
The printing apparatus 30 includes a font recording unit 300, a conversion unit 310, and a printing unit 320.
The font recording unit 300 includes a font data recording medium 305. The font recording unit 300 receives outline data and standard line width of each character associated with the group identification information from the attribute setting unit 150 and records them in the font data recording medium 305.
[0019]
When the conversion unit 310 receives a print instruction that is an instruction to print one character from the computer 25, the conversion unit 310 acquires outline data and a standard line width corresponding to the one character from the font recording unit 300. Then, the conversion unit 310 converts the outline data into bitmap data based on the standard line width, and sends the converted bitmap data to the printing unit 320. For example, when the line width constituting the character has a fraction on the bit map data of the conversion destination, the conversion unit 310 rounds up or rounds down the line width so as to approach the line width indicated by the standard line width. To determine the line width in the bitmap data.
[0020]
The printing unit 320 prints the bitmap data received from the conversion unit 310 on the printing material.
[0021]
In this way, the printing system 10 classifies the acquired outline data into groups according to the line width characteristics, and sets a standard line width for each group. Since the printing system 10 generates bitmap data according to the standard line width, it is possible to perform appropriate printing according to the characteristics of the outline data of each character.
[0022]
FIG. 2 shows a detailed example of the font data recording medium 305. The font data recording medium 305 includes, for each of the plurality of groups, a header portion 610 that is an example of a standard line width recording region and a character data portion 620 that is an example of an outline data recording region.
[0023]
The header part 610 includes a plurality of horizontal standard line widths and vertical standard line widths, each of which is an example of a standard line width, in association with group identification information. The horizontal standard line width indicates the line width that should be approximated by rounding when the line width of the line segment in the character causes a fraction on the bitmap. The vertical standard line width indicates the line width that should be approximated by rounding when the line width of the line segment in the vertical direction within the character has a fraction on the bitmap.
The header unit 610 may include a plurality of horizontal standard line widths and vertical standard line widths (for example, the first horizontal standard line width to the Nth horizontal standard line width and the first vertical standard line width to the Nth vertical standard line). width.). In this case, the conversion unit 310 adjusts the line width so as to approach the closest value among a plurality of standard line widths when a fraction occurs in the line width on the bitmap.
[0024]
The character data unit 620 stores outline data indicating the outer edge of the print image of the character in association with character identification information that is information for identifying each of the plurality of characters. For example, the outline data is a set of coordinates indicating both ends of a line segment constituting the outer edge of the character on a bitmap coordinate axis having a predetermined size larger than the size of the character to be printed. As another example, the outline data may be an expression indicating a straight line and a curve constituting the outer edge of the character.
[0025]
As described above, the font data recording medium 305 records the horizontal standard line width, the vertical standard line width, and the outline data in association with the group identification information. Therefore, the conversion unit 310 can identify a group to which each outline data belongs, and appropriately convert the outline data based on the standard line width associated with the group.
[0026]
FIG. 3 shows an operation flow of the font attribute setting device 20. The font characteristic acquisition unit 100 acquires outline data indicating the outer edges of each of the plurality of characters together with the font characteristics associated with the character set composed of the plurality of characters (S100). The in-character set minimum width acquisition unit 110 specifies the minimum in-character set width that is the minimum line width among all the line widths used in the character set composed of a plurality of characters (S110).
[0027]
The line width characteristic acquisition unit 120 determines whether the font thickness indicated by the font characteristics acquired in S100 is thicker than the font thickness indicated by the font characteristics of other character sets (S120). For example, the line width characteristic acquisition unit 120 acquires a weight attribute associated with each font set as the font characteristic, and determines whether the weight attribute is higher than a predetermined value, thereby determining the font thickness. to decide.
[0028]
When the line width characteristic acquisition unit 120 determines that the font thickness indicated by the font characteristic is thicker than a predetermined reference (S120: YES), the line width characteristic acquisition unit 120 associates the outline data with a plurality of characters. Then, the minimum vertical line width and the minimum horizontal line width of the character are individually acquired (S130). On the other hand, when the line width characteristic acquisition unit 120 determines that the font thickness indicated by the font characteristics is thinner than a predetermined reference (S120: NO), the line width characteristic acquisition unit 120 determines that the minimum width in the character set is in advance. It is determined whether or not the predetermined reference line width is exceeded (S140).
[0029]
When the line width characteristic acquisition unit 120 determines that the minimum width in the character set is less than the reference line width (S140: NO), the line width characteristic acquisition unit 120 associates the outline width data of the plurality of characters with the minimum line width of the vertical line of the character. And the minimum line width of a horizontal line is acquired separately (S130). Here, the case where the minimum width in the character set is smaller than the reference line width is, for example, a case where a complex character such as a kanji having a large number of strokes is included in the character set.
For example, when outline data is expressed by coordinates in a bitmap space having a predetermined size such as 1000 × 1000 dots, each line segment constituting a complex character is a line segment constituting a simple character. Often designed to be thinner. Therefore, the line width characteristic acquisition unit 120 can determine whether or not the character set includes a complex character by using the minimum line width in the character set.
[0030]
On the other hand, if the line width characteristic acquisition unit 120 determines that the minimum width in the character set exceeds the reference line width (S140: YES), the line width characteristic acquisition unit 120 associates the outline data of a plurality of characters with the maximum number of vertical lines of the character. The line width and the maximum line width of horizontal lines are acquired separately (S150).
[0031]
The classification unit 130 classifies the characters into a predetermined number of groups according to the vertical line width characteristics of each character, and further classifies each of the groups classified according to the vertical lines into the horizontal line width characteristics. Accordingly, classification is performed more finely than grouping according to the line width characteristics of the vertical lines (S160). An example of grouping when the minimum line width is selected in S130 is shown below.
[0032]
First, the classification unit 130 classifies all characters having a minimum vertical line width within a predetermined range into one group. For example, when the outline data is expressed by coordinates in a 1000 × 1000 dot bitmap space, the classification unit 130 displays a plurality of characters whose minimum vertical line width in the outline data is between 34 dots and 80 dots. Divide into 10 groups. For example, the classification unit 130 classifies a character having a minimum line width of 34 dots and a character having a dot of 35 dots into the same group, and classifies a character having a minimum line width of 50 dots into another group.
[0033]
Here, the classification unit 130 may classify each of these groups classified according to the vertical line more finely than grouping according to the line width characteristic of the vertical line according to the line width characteristic of the horizontal line. For example, the classification unit 130 classifies a plurality of characters having a minimum horizontal line width between 34 dots and 80 dots into 17 groups that are more than 10 groups corresponding to the vertical lines.
In complex characters such as kanji, the horizontal line is more complicated than the vertical line, and the horizontal line is likely to be “collapsed” or “smeared”. Therefore, the classification unit 130 determines whether the horizontal line has a minimum line width. By classifying more finely, it is possible to perform easy-to-read printing while maintaining the character design.
[0034]
The attribute setting unit 150 sets, for each of the plurality of groups, the first vertical standard line width to the minimum value of the minimum line width (or the most frequent line width) of the vertical lines constituting all characters belonging to the group. The first horizontal standard line width is set to the minimum value of the minimum line width (or the most frequent line width) of the horizontal lines constituting all characters belonging to the group (S170). As another example, the attribute setting unit 150 may set the average value of the minimum line widths of the vertical lines or horizontal lines constituting all characters belonging to each group as the vertical or horizontal standard line width of the group. The maximum value of the minimum line width of the vertical line or horizontal line may be set as the vertical or horizontal standard line width of the group.
[0035]
The line width frequency distribution generation unit 140 generates a line width frequency distribution of all the characters belonging to the group in association with each of the plurality of groups based on the line width characteristics (S180). Then, the attribute setting unit 150 sets a plurality of standard line widths (for example, the second to Nth standard line widths) in each group based on the line width at which the frequency distribution is maximized (S190).
[0036]
As described above, the printing system 10 determines the minimum line width that is the minimum value of the line width used in each character or the maximum line width that is the most frequently used line width in each character based on the acquired outline data. Identify. Then, the printing system 10 classifies the characters into groups based on the minimum line width or the maximum line width, and sets the standard line width of each group. Furthermore, the printing system 10 adds and sets a standard line width based on the frequency distribution of the line width within each group. Accordingly, the printing system 10 can classify characters having similar line width characteristics into the same group and adjust the line width adjustment method during printing for each group.
[0037]
FIG. 4 schematically shows the effect according to the setting of the standard line width. FIG. 4A shows an example of outline data of the Chinese character “king” which is an example of a character. The line widths of the upper side 800, the middle side 810, and the lower side 820 of the “king” character are 60 dots, 45 dots, and 60 dots, respectively.
[0038]
FIG. 4B shows an example of bitmap data generated by rendering the outline data by the conversion unit 310 when the first horizontal standard line width is set to 45 dots, which is the minimum line width. First, the conversion unit 310 sets the middle side 810 having the same line width as the first horizontal standard line width of 45 dots to 2 dots in the bitmap data.
[0039]
Next, the conversion unit 310 determines the line width of the upper side 800 by the following process in order to maintain the balance of the thickness of the characters in the outline data. In the conversion unit 310, the line width of the upper side 800 is 4/3 times 45 dots which is the first horizontal standard line width, so the line width of the upper side 800 is 8/3 dots in the bitmap data. (Calculation formula is 2 × 4/3.) Therefore, since the line width of the upper side 800 includes a fraction that is not an integer in the bitmap data, the conversion unit 310 needs to round the line width to 2 dots or 3 dots by rounding up or down.
[0040]
Since the first horizontal standard line width is 45 dots and the first horizontal standard line width is 2 dots in the bitmap data, the conversion unit 310 has an upper side 800 so as to be close to 2 dots indicated by the first horizontal standard line width. The line width of 60 dots is converted to 2 dots.
[0041]
On the other hand, FIG. 4C illustrates an example of bitmap data generated when the conversion unit 310 renders outline data when the first horizontal standard line width is set to 60 dots, which is the maximum line width. . First, the conversion unit 310 sets the upper side 800 having the same line width as the first horizontal standard line width of 60 dots to 3 dots in the bitmap data.
[0042]
Next, the conversion unit 310 determines the line width of the middle side 810 by the following process in order to maintain the balance of the thickness of the characters in the outline data. Since the conversion unit 310 has 45 dots as the line width of the middle side 810 that is 3/4 times 60 dots as the first horizontal standard line width, the line width of the middle side 810 is 9/4 in the bitmap data. It is calculated as a dot (the calculation formula is 3 × 3/4). Therefore, since the line width of the middle side 810 includes a fraction that is not an integer in the bitmap data, the conversion unit 310 needs to round the line width to 2 dots or 3 dots by rounding up or down.
[0043]
Since the first horizontal standard line width is 60 dots and the first horizontal standard line width is 3 dots in the bitmap data, the conversion unit 310 indicates the target line width to be approximated by rounding off the fraction of the line width. In order to approximate the first horizontal standard line width of 3 dots, the line width of 45 dots on the middle side 810 is converted to 3 dots.
[0044]
As described above, the printing system 10 can set a method of rounding the fraction of the line width after conversion when the outline data is converted into bitmap data by setting the standard line width. For example, when the standard line width is set to the minimum line width, the printing system 10 generates bitmap data with a thin line as a whole (FIG. 4B). On the other hand, when the standard line width is set to the maximum line width, the printing system 10 generates bitmap data that maintains the balance of the character design in the outline data as a whole (FIG. 4C). The printing system 10 sets the minimum line width or the maximum line width as the standard line width as necessary, thereby more clearly printing a complex character set having a high line density and occupying the line. A character set having a low density can be printed more faithfully reflecting the design image indicated by the outline data.
[0045]
FIG. 5 shows an example of character set subsetting, and FIG. 5A shows an example of subsetting for each character type performed in the Adobe CID font.
[0046]
For example, the groups 700-1 to 5 include “kana”, “Latin characters”, “first level characters” (kanji), “second level characters” (kanji), and “symbols”, respectively. In this case, for example, the same standard line width is set for all Kanji characters belonging to the second level character.
[0047]
Then, both complex characters and simple characters belonging to the same type of character set (for example, second level characters) are printed based on the same standard line width. For a simple character, the character design may not be faithfully reflected.
[0048]
FIG. 5B shows an example in which the classification unit 130 classifies a plurality of characters according to the maximum line width according to the present embodiment. The classification unit 130 classifies the plurality of characters into four according to the maximum number of vertical lines (indicated as V in the drawing). For example, the classification unit 130 divides a plurality of characters into a group 710-1 having a maximum vertical line width of 68 (shown as V68 in the figure) and a vertical line having a maximum line width of 72 (V72 in the figure). Group 710-2 and group 710-3 which are shown), a group 710-4 whose maximum line width of vertical lines is 76 (shown as V76 in the figure), and a maximum line width of vertical lines of 88 (in the figure) And group 710-5 which is indicated as V88). Further, the classifying unit 130 further classifies the group of V72 into a group 710-2 and a group 710-3 in which the horizontal line maximum line widths are 68 and 72, respectively. The attribute setting unit 150 sets the vertical and horizontal standard line widths for each of these classified groups 710-1 to 710-1.
[0049]
In this manner, when the classification unit 130 classifies a plurality of characters according to the line width characteristics of each character, the attribute setting unit 150 can set an appropriate standard line width according to the classified group. it can.
[0050]
FIG. 6 shows a printing result according to the setting of the standard line width. FIG. 6A shows a printing result obtained by printing the general outline data set with hint information acquired by the font attribute setting device 20 by the printing device 30 (600 dpi, 9.6 point characters). In this figure, the printing apparatus 30 causes “crushing” and “smearing” in a part of the character. As shown in this figure, when the line width specified by the outline data is thick and the print range is narrow, the printing apparatus 30 affects not only the line collapse in the bitmap data but also the ink bleed during printing. May cause a character that is difficult to interpret to be printed.
[0051]
FIG. 6B shows a printing result printed by the printing system 10 with the maximum line width set as the first standard line width. Compared to FIG. 6A, the influence of “crush” and “smear” is small.
[0052]
FIG. 6C shows a printing result printed by the printing system 10 with the minimum line width set as the first standard line width. The printing system 10 can print a character that is less likely to be “crushed” or “smeared” than in FIGS. 6A and 6B and that can be easily read.
[0053]
As described above, when printing a character having a high density of the printed portion per printing range, the printing system 10 sets the minimum line width as the standard line width, thereby causing the print target “collapse” or “smear”. This makes it possible to print characters that are easy to read.
[0054]
FIG. 7 shows an example of a hardware configuration of the font attribute setting device 20. The font attribute setting device 20 according to the present embodiment is connected to the CPU peripheral unit including the CPU 1000, the RAM 1020, the graphic controller 1075, and the display device 1080, which are connected to each other by the host controller 1082, and the host controller 1082 by the input / output controller 1084. An input / output unit having a communication interface 1030, a hard disk drive 1040, and a CD-ROM drive 1060, and a legacy input / output unit having a ROM 1010, a flexible disk drive 1050, and an input / output chip 1070 connected to the input / output controller 1084 Is provided.
[0055]
The host controller 1082 connects the RAM 1020 to the CPU 1000 and the graphic controller 1075 that access the RAM 1020 at a high transfer rate. The CPU 1000 operates based on programs stored in the ROM 1010 and the RAM 1020, and controls each unit. The graphic controller 1075 acquires image data generated by the CPU 1000 or the like on a frame buffer provided in the RAM 1020 and displays it on the display device 1080. Alternatively, the graphic controller 1075 may include a frame buffer that stores image data generated by the CPU 1000 or the like.
[0056]
The input / output controller 1084 connects the host controller 1082 to the communication interface 1030, the hard disk drive 1040, and the CD-ROM drive 1060, which are relatively high-speed input / output devices. The communication interface 1030 communicates with other devices via a network. The hard disk drive 1040 stores programs and data used by the font attribute setting device 20. The CD-ROM drive 1060 reads a program or data from the CD-ROM 1095 and provides it to the input / output chip 1070 via the RAM 1020.
[0057]
The input / output controller 1084 is connected to the ROM 1010 and relatively low-speed input / output devices such as the flexible disk drive 1050 and the input / output chip 1070. The ROM 1010 stores a boot program executed by the CPU 1000 when the font attribute setting device 20 is activated, a program depending on the hardware of the font attribute setting device 20, and the like. The flexible disk drive 1050 reads a program or data from the flexible disk 1090 and provides it to the input / output chip 1070 via the RAM 1020. The input / output chip 1070 connects various input / output devices via a flexible disk 1090 and, for example, a parallel port, a serial port, a keyboard port, a mouse port, and the like. Further, the input / output chip 1070 receives data corresponding to the user's input and provides it to a program executed on the font attribute setting device 20. Further, the input / output chip 1070 transmits the program or data provided from the flexible disk drive 1050 or the CD-ROM drive 1060 to the computer 25 and the printing apparatus 30.
[0058]
A program provided to and executed by the font attribute setting device 20, the computer 25, and the printing device 30 includes, as a functional configuration, a font characteristic acquisition module, a character set minimum width acquisition module, a line width characteristic acquisition module, a classification module, and a line width degree. It has a number distribution generation module and an attribute setting module. The operations that each module causes the font attribute setting device 20, the computer 25, and the printing device 30 to perform are the same as the operations of the corresponding members in the font attribute setting device 20, the computer 25, and the printing device 30 described in FIG. Since there is, explanation is omitted.
[0059]
The program provided to the font attribute setting device 20, the computer 25, and the printing device 30 is stored in a program recording medium such as the flexible disk 1090, the CD-ROM 1095, or an IC card and provided by the user. The program is read from the program recording medium, installed in the computer 25 and the printing apparatus 30 via the input / output chip 1070, and executed in the font attribute setting apparatus 20, the computer 25, and the printing apparatus 30. Alternatively, the computer 25 and the printing apparatus 30 may further include a flexible disk drive, a CD-ROM drive, an IC card reader, or the like, and read and execute the program directly from the program recording medium.
[0060]
The program or module shown above may be stored in an external storage medium. As the storage medium, in addition to the flexible disk 1090 and the CD-ROM 1095, an optical recording medium such as a DVD or PD, a magneto-optical recording medium such as an MD, a tape medium, a semiconductor memory such as an IC card, or the like can be used. Further, a storage device such as a hard disk or a RAM provided in a server system connected to a dedicated communication network or the Internet may be used as a recording medium, and the program may be provided to the printing system 10 via the network.
[0061]
As described above, the printing system 10 classifies outline data into groups according to the minimum line width or the maximum line width, and sets the standard line width of each group to the minimum line width or the maximum line width. Since the printing system 10 generates bitmap data according to the standard line width, it is possible to perform printing according to the characteristics of the outline data of each character. Therefore, the printing system 10 can easily print a character having a large number of strokes such as kanji while reflecting the design of outline data as much as possible.
[0062]
As mentioned above, although this invention was demonstrated using embodiment, the technical scope of this invention is not limited to the range as described in the said embodiment. Various modifications or improvements can be added to the above embodiment. It is apparent from the scope of the claims that the embodiments added with such changes or improvements can be included in the technical scope of the present invention.
For example, the attribute setting unit 150 may set the standard line width of each character to a predetermined value equal to or smaller than the minimum line width (for example, a value obtained by subtracting a predetermined value from the minimum line width). By setting in this way, the printing system 10 performs a process of rounding each line constituting the character to a line width equal to or smaller than the minimum line width of the character, so that complicated characters such as kanji are printed easily. be able to.
[0063]
According to the embodiment described above, the technology for setting the print line width of the outline font shown below is realized.
[0064]
(Item 1) A font attribute setting device that sets parameters used for rendering for converting outline data indicating an outer edge of a character, which is a character or a symbol, into bitmap data and outputting the bitmap data. A line width characteristic acquisition unit that acquires a line width characteristic that is a characteristic of a line width specified by outline data corresponding to the character in association with each of the characters; A classification unit for classifying characters into a plurality of groups, and a line width parameter for adjusting the line width of the bitmap data converted by the rendering are set for each of the plurality of groups according to the line width characteristics. A font attribute setting device comprising: an attribute setting unit.
(Item 2) The font attribute setting device according to item 1, wherein the attribute setting unit sets the line width parameters different from each other in each of the plurality of groups.
[0065]
(Item 3) The classification unit classifies the plurality of characters into a predetermined number of groups according to the line width characteristics of the vertical lines respectively designated by the outline data, and further to the vertical lines. The item according to claim 2, wherein each of the corresponding groups is classified more finely than grouping according to the line width characteristic of the vertical line according to the line width characteristic of the horizontal line constituting each outline data. Font attribute setting device.
(Item 4) The attribute setting unit sets, as the line width parameter, a method of rounding a fraction of the line width after conversion when the outline data is converted into the bitmap data. Font attribute setting device.
(Item 5) The attribute setting unit sets, as the line width parameter, a standard line width indicating a target line width to be approximated by rounding a fraction of the line width after the conversion. The font attribute setting device described.
[0066]
(Item 6) For each of the plurality of groups, a line width frequency distribution generation unit that generates a line width frequency distribution of all the characters belonging to the group based on the line width characteristics, 6. The font attribute setting apparatus according to item 5, wherein the attribute setting unit sets the plurality of standard line widths in the group based on the line width at which the frequency distribution is maximized.
(Item 7) The line width characteristic acquisition unit acquires a minimum line width that is a minimum line width constituting the character for each character, and the attribute setting unit sets the line width parameter of each character to the 6. The font attribute setting device according to item 5, wherein the font attribute setting device is set to a minimum line width.
[0067]
(Item 8) The line width characteristic acquisition unit acquires, for each character, the most frequently used line width among the line widths of the lines constituting the character, and the attribute setting unit 6. The font attribute setting apparatus according to item 5, wherein the line width parameter of the character is set to the maximum line width.
(Item 9) Whether or not the character set including the plurality of characters is composed of thicker characters than other character sets including outline data different from the character set for at least some characters. A font characteristic acquisition unit that acquires a font characteristic to be displayed, and the line width characteristic acquisition unit determines a minimum line width or a maximum line width that is a minimum line width that constitutes each character according to the font characteristic. 9. The font attribute setting device according to item 8, wherein the attribute setting unit sets the selected character line to the character as the selected line width parameter as the line width parameter.
[0068]
(Item 10) A character set minimum width obtaining unit that obtains a minimum width in a character set that is a minimum line width among all line widths used in a character set including the plurality of characters, When determining that the minimum width in the character set exceeds a predetermined reference line width, the width characteristic acquisition unit sets the minimum line width that is the minimum line width constituting the outline data to the maximum in the character set. When it is determined that the small width is less than the reference line width, the maximum line width is acquired for each character, and the attribute setting unit determines whether the acquired minimum line width or the maximum line width is obtained. 9. The font attribute setting device according to item 8, wherein the font width is set for each character as the line width parameter.
(Item 11) A program for causing a plurality of characters to set parameters used for rendering for converting outline data indicating an outer edge of a character that is a character or a symbol into bitmap data and outputting the bitmap data, using a computer, A line width characteristic acquisition unit that associates the computer with each of the plurality of characters and acquires a line width characteristic that is a characteristic of a line width specified by outline data corresponding to the character, and the line width characteristic And a line width parameter for adjusting a line width of the bitmap data converted by the rendering for each of the plurality of groups, and a line width characteristic for classifying the plurality of characters into a plurality of groups. A program that functions as an attribute setting unit that is set according to Lamb.
[0069]
(Item 12) A font generation method for setting a parameter used for rendering for converting outline data indicating an outer edge of a character, which is a character or a symbol, into bitmap data and outputting the bitmap data, to an outline font indicating a plurality of the characters. Obtaining the outline data associated with each of the plurality of characters, and characteristics of the width of the line designated by the outline data corresponding to the character in association with each of the plurality of characters. Obtaining a line width characteristic; classifying the plurality of characters into a plurality of groups according to the line width characteristic; and a line of the bitmap data converted by the rendering into each of the plurality of groups. The line width parameter for adjusting the width is the line width characteristic. And a step of outputting in association with outline data.
[0070]
(Item 13) A program in which a program for causing a plurality of characters to set a parameter used for rendering by converting outline data indicating an outer edge of a character, which is a character or a symbol, into bitmap data and outputting the data using a computer A recording medium, wherein the program associates the computer with each of the plurality of characters and obtains a line width characteristic that is a characteristic of a line width specified by outline data corresponding to the character. A width characteristic acquisition unit; a classification unit that classifies the plurality of characters into a plurality of groups according to the line width characteristic; and a line width of the bitmap data converted by the rendering for each of the plurality of groups. Set the line width parameter to be adjusted according to the line width characteristics. A program recording medium that functions as an attribute setting unit.
[0071]
【The invention's effect】
As is apparent from the above description, according to the present invention, characters having a large number of strokes such as kanji can be printed easily.
[Brief description of the drawings]
FIG. 1 is a functional block diagram of a printing system 10;
FIG. 2 is a diagram showing a detailed example of a font data recording medium 305;
FIG. 3 is an operation flow diagram of the font attribute setting device 20;
FIG. 4 is a diagram schematically showing an effect according to setting of a standard line width.
FIG. 5 is a diagram illustrating an example of character set subsetting.
FIG. 6 is a diagram illustrating a printing result according to setting of a standard line width.
FIG. 7 is a diagram illustrating an example of a hardware configuration of a font attribute setting device 20;
[Explanation of symbols]
10 Printing system
20 Font attribute setting device
25 computer
30 Printing device
100 Font characteristics acquisition unit
110 Minimum width acquisition part in character set
120 Line width characteristic acquisition unit
130 Classification part
140 Line width frequency distribution generator
150 Attribute setting section
300 Font recording part
305 Font data recording medium
310 Converter
320 Printing section
610 Header part
620 Character data part

Claims (13)

文字又は記号であるキャラクタの外縁を示すアウトラインデータをビットマップデータに変換して出力するレンダリングに用いられるパラメータを、複数の前記キャラクタに設定するフォント属性設定装置であって、
複数の前記キャラクタのそれぞれに対応付けて、当該キャラクタに対応するアウトラインデータにより指定される線の幅の特性である線幅特性を取得する線幅特性取得部と、
前記線幅特性に応じて前記複数のキャラクタを複数のグループに分類する分類部と、
前記複数のグループのそれぞれに、前記レンダリングにより変換される前記ビットマップデータの線幅を調整する線幅パラメータを、前記線幅特性に応じて設定する属性設定部と
を備えることを特徴とするフォント属性設定装置。
A font attribute setting device that sets parameters used for rendering for converting outline data indicating an outer edge of a character, which is a character or a symbol, into bitmap data and outputting the bitmap data.
A line width characteristic acquisition unit that acquires a line width characteristic that is a characteristic of a line width specified by outline data corresponding to the character in association with each of the plurality of characters.
A classification unit for classifying the plurality of characters into a plurality of groups according to the line width characteristics;
A font comprising: an attribute setting unit that sets a line width parameter for adjusting a line width of the bitmap data converted by the rendering according to the line width characteristic, in each of the plurality of groups Attribute setting device.
前記属性設定部は、前記複数のグループのそれぞれに、互いに異なる前記線幅パラメータを設定することを特徴とする請求項1記載のフォント属性設定装置。The font attribute setting apparatus according to claim 1, wherein the attribute setting unit sets the different line width parameters for each of the plurality of groups. 前記分類部は、複数の前記キャラクタを、前記アウトラインデータによりそれぞれ指定される縦線の前記線幅特性に応じて予め定められた数のグループに分類し、更に、前記縦線に応じた前記グループのそれぞれを、各前記アウトラインデータを構成する横線の前記線幅特性に応じて、前記縦線の線幅特性に応じたグループ分けより細かく分類することを特徴とする請求項2記載のフォント属性設定装置。The classification unit classifies the plurality of characters into a predetermined number of groups according to the line width characteristics of the vertical lines respectively designated by the outline data, and further, the groups according to the vertical lines 3. The font attribute setting according to claim 2, wherein each of the first and second lines is classified more finely than grouping according to the line width characteristic of the vertical line according to the line width characteristic of the horizontal line constituting each outline data. apparatus. 前記属性設定部は、前記線幅パラメータとして、前記アウトラインデータを前記ビットマップデータに変換する時に、変換後の線幅の端数を丸める方法を設定することを特徴とする請求項1記載のフォント属性設定装置。2. The font attribute according to claim 1, wherein the attribute setting unit sets, as the line width parameter, a method of rounding a fraction of the line width after conversion when the outline data is converted into the bitmap data. Setting device. 前記属性設定部は、前記変換後の前記線幅の端数を丸めることにより近づけるべき目標の線幅を示す標準線幅を、前記線幅パラメータとして設定することを特徴とする請求項4記載のフォント属性設定装置。5. The font according to claim 4, wherein the attribute setting unit sets, as the line width parameter, a standard line width indicating a target line width to be approximated by rounding off the fraction of the line width after the conversion. Attribute setting device. 前記複数のグループのそれぞれについて、当該グループに属する全ての前記キャラクタが有する線の線幅の度数分布を、前記線幅特性に基づき生成する線幅度数分布生成部を更に備え、
前記属性設定部は、当該度数分布が極大となる前記線幅に基づいて、前記グループにおける複数の前記標準線幅を設定することを特徴とする請求項5記載のフォント属性設定装置。
For each of the plurality of groups, further comprising a line width frequency distribution generation unit that generates a line width frequency distribution of lines of all the characters belonging to the group based on the line width characteristics,
The font attribute setting device according to claim 5, wherein the attribute setting unit sets the plurality of standard line widths in the group based on the line width at which the frequency distribution is maximized.
前記線幅特性取得部は、前記キャラクタを構成する最小の線幅である最小線幅を前記キャラクタ毎に取得し、
前記属性設定部は、各前記キャラクタの前記線幅パラメータを前記最小線幅に設定することを特徴とする請求項5記載のフォント属性設定装置。
The line width characteristic acquisition unit acquires a minimum line width that is a minimum line width constituting the character for each character,
The font attribute setting device according to claim 5, wherein the attribute setting unit sets the line width parameter of each character to the minimum line width.
前記線幅特性取得部は、前記キャラクタを構成する線の線幅のうち最も多く用いられる線幅である最多線幅を前記キャラクタ毎に取得し、
前記属性設定部は、各前記キャラクタの前記線幅パラメータを前記最多線幅に設定することを特徴とする請求項5記載のフォント属性設定装置。
The line width characteristic acquisition unit acquires, for each character, the most frequent line width that is the most frequently used line width of lines constituting the character,
The font attribute setting device according to claim 5, wherein the attribute setting unit sets the line width parameter of each character to the maximum line width.
前記複数のキャラクタを含むキャラクタセットが、少なくとも一部のキャラクタに対して前記キャラクタセットとは異なるアウトラインデータを含む他のキャラクタセットより、太い線のキャラクタで構成されるか否かを示すフォント特性を取得するフォント特性取得部を更に備え、
前記線幅特性取得部は、前記フォント特性に応じて、各前記キャラクタを構成する最小の線幅である最小線幅又は前記最多線幅を選択して取得し、
前記属性設定部は、選択された前記最小線幅又は前記最多線幅を前記線幅パラメータとして各前記キャラクタに設定することを特徴とする請求項8記載のフォント属性設定装置。
A font characteristic indicating whether or not the character set including the plurality of characters is composed of thicker characters than at least some other character sets including outline data different from the character set. A font characteristic acquisition unit for acquiring
The line width characteristic acquisition unit selects and acquires the minimum line width or the most frequent line width that is the minimum line width constituting each character according to the font characteristics,
9. The font attribute setting apparatus according to claim 8, wherein the attribute setting unit sets the selected minimum line width or the maximum line width as the line width parameter for each character.
前記複数のキャラクタを含むキャラクタセット内で用いられる全ての線幅のうち、最小の線幅であるキャラクタセット内最小幅を取得するキャラクタセット内最小幅取得部を更に備え、
前記線幅特性取得部は、前記キャラクタセット内最小幅が予め定められた基準線幅を上回ると判断した場合に、前記アウトラインデータを構成する最小の線幅である最小線幅を、前記キャラクタセット内最小幅が前記基準線幅を下回ると判断した場合に、前記最多線幅を、それぞれ前記キャラクタ毎に取得し、
前記属性設定部は、取得された前記最小線幅又は前記最多線幅の何れかを前記線幅パラメータとして、各前記キャラクタに設定することを特徴とする請求項8記載のフォント属性設定装置。
A character set minimum width acquisition unit that acquires a minimum width in a character set that is a minimum line width among all line widths used in a character set including the plurality of characters,
When the line width characteristic acquisition unit determines that the minimum width in the character set exceeds a predetermined reference line width, a minimum line width that is a minimum line width constituting the outline data is determined as the character set. When it is determined that the inner minimum width is less than the reference line width, the most frequent line width is acquired for each character,
9. The font attribute setting apparatus according to claim 8, wherein the attribute setting unit sets either the acquired minimum line width or the maximum line width as the line width parameter for each character.
文字又は記号であるキャラクタの外縁を示すアウトラインデータをビットマップデータに変換して出力するレンダリングに用いられるパラメータを、複数の前記キャラクタに、コンピュータを用いて設定させるプログラムであって、
前記コンピュータを
複数の前記キャラクタのそれぞれに対応付けて、当該キャラクタに対応するアウトラインデータにより指定される線の幅の特性である線幅特性を取得する線幅特性取得部と、
前記線幅特性に応じて前記複数のキャラクタを複数のグループに分類する分類部と、
前記複数のグループのそれぞれに、前記レンダリングにより変換される前記ビットマップデータの線幅を調整する線幅パラメータを、前記線幅特性に応じて設定する属性設定部と
して機能させることを特徴とするプログラム。
A program for causing a plurality of characters to set parameters used for rendering by converting outline data indicating an outer edge of a character that is a character or a symbol into bitmap data and outputting the bitmap data, using a computer,
A line width characteristic acquisition unit that associates the computer with each of the plurality of characters and acquires a line width characteristic that is a characteristic of a line width specified by outline data corresponding to the character;
A classification unit for classifying the plurality of characters into a plurality of groups according to the line width characteristics;
A program that causes each of the plurality of groups to function as an attribute setting unit that sets a line width parameter for adjusting a line width of the bitmap data converted by the rendering according to the line width characteristic. .
文字又は記号であるキャラクタの外縁を示すアウトラインデータをビットマップデータに変換して出力するレンダリングに用いられるパラメータを、複数の前記キャラクタを示すアウトラインフォントに設定するフォント生成方法であって、
複数の前記キャラクタのそれぞれに対応付けられた前記アウトラインデータを取得する段階と、
複数の前記キャラクタのそれぞれに対応付けて、当該キャラクタに対応するアウトラインデータにより指定される線の幅の特性である線幅特性を取得する段階と、
前記線幅特性に応じて前記複数のキャラクタを複数のグループに分類する段階と、
前記複数のグループのそれぞれに、前記レンダリングにより変換される前記ビットマップデータの線幅を調整する線幅パラメータを、前記線幅特性に応じて設定し、アウトラインデータに対応付けて出力する段階と
を備えることを特徴とするフォント生成方法。
A font generation method for setting a parameter used for rendering for converting outline data indicating an outer edge of a character that is a character or a symbol into bitmap data and outputting it to an outline font indicating a plurality of the characters,
Obtaining the outline data associated with each of the plurality of characters;
In correspondence with each of the plurality of characters, obtaining a line width characteristic that is a characteristic of a line width specified by outline data corresponding to the character;
Classifying the plurality of characters into a plurality of groups according to the line width characteristics;
A line width parameter for adjusting a line width of the bitmap data converted by the rendering is set for each of the plurality of groups according to the line width characteristic, and is output in association with outline data. A font generation method characterized by comprising:
文字又は記号であるキャラクタの外縁を示すアウトラインデータをビットマップデータに変換して出力するレンダリングに用いられるパラメータを、複数の前記キャラクタに、コンピュータを用いて設定させるプログラムを記録したプログラム記録媒体であって、
前記プログラムは、前記コンピュータを
複数の前記キャラクタのそれぞれに対応付けて、当該キャラクタに対応するアウトラインデータにより指定される線の幅の特性である線幅特性を取得する線幅特性取得部と、
前記線幅特性に応じて前記複数のキャラクタを複数のグループに分類する分類部と、
前記複数のグループのそれぞれに、前記レンダリングにより変換される前記ビットマップデータの線幅を調整する線幅パラメータを、前記線幅特性に応じて設定する属性設定部と
して機能させることを特徴とするプログラム記録媒体。
A program recording medium having recorded thereon a program for causing a plurality of characters to set parameters used for rendering by converting outline data indicating an outer edge of a character, which is a character or a symbol, into bitmap data and outputting the data. And
The program associates the computer with each of the plurality of characters, and acquires a line width characteristic that is a characteristic of a line width specified by outline data corresponding to the character; and
A classification unit for classifying the plurality of characters into a plurality of groups according to the line width characteristics;
A program that causes each of the plurality of groups to function as an attribute setting unit that sets a line width parameter for adjusting a line width of the bitmap data converted by the rendering according to the line width characteristic. recoding media.
JP2002292700A 2002-10-04 2002-10-04 Technology for setting the line width of outline fonts Expired - Fee Related JP3747410B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2002292700A JP3747410B2 (en) 2002-10-04 2002-10-04 Technology for setting the line width of outline fonts
KR1020030067491A KR100628819B1 (en) 2002-10-04 2003-09-29 Line width setting for outline fonts
CN031544932A CN1497525B (en) 2002-10-04 2003-09-30 Font attribute setting device and font generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002292700A JP3747410B2 (en) 2002-10-04 2002-10-04 Technology for setting the line width of outline fonts

Publications (2)

Publication Number Publication Date
JP2004127111A JP2004127111A (en) 2004-04-22
JP3747410B2 true JP3747410B2 (en) 2006-02-22

Family

ID=32283877

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002292700A Expired - Fee Related JP3747410B2 (en) 2002-10-04 2002-10-04 Technology for setting the line width of outline fonts

Country Status (3)

Country Link
JP (1) JP3747410B2 (en)
KR (1) KR100628819B1 (en)
CN (1) CN1497525B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7289123B2 (en) * 2004-09-30 2007-10-30 Microsoft Corporation Simplifying complex characters to maintain legibility
JP2010039375A (en) * 2008-08-07 2010-02-18 Sharp Corp Character drawing device, character drawing method, character drawing program, and computer-readable recording medium
CN102340635A (en) * 2010-07-14 2012-02-01 Tcl集团股份有限公司 Multimedia playing equipment and method and device for displaying texts in file of multimedia playing equipment
CN103177709B (en) * 2011-12-20 2015-03-11 北大方正集团有限公司 Method and device for displaying characters
JP2014010572A (en) * 2012-06-28 2014-01-20 Strauss Technology Co Ltd Vector image drawing device and vector image drawing method
KR101254729B1 (en) 2012-09-14 2013-04-16 주식회사안그라픽스 Kerning method for hangul font and recording medium storing program implementing the method thereof
JP5519065B2 (en) * 2012-09-27 2014-06-11 シャープ株式会社 Contour line width setting device, contour gradation number setting device, contour line width setting method, and contour gradation number setting method
CN107402734A (en) * 2017-07-25 2017-11-28 浪潮金融信息技术有限公司 A kind of method that text definition is automatically adjusted with screen resolution
KR102151759B1 (en) * 2018-11-08 2020-09-03 주식회사 윤디자인그룹 Method for applying kerning to hangeul

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1088007A (en) * 1992-12-10 1994-06-15 大淑郎 The live width adjusting gear and the method for cutline font
JP3490703B2 (en) * 2001-03-23 2004-01-26 ライズ株式会社 Character processing method based on outline font information and computer-readable recording medium storing computer program for causing a computer system to execute the method

Also Published As

Publication number Publication date
KR20040031592A (en) 2004-04-13
JP2004127111A (en) 2004-04-22
KR100628819B1 (en) 2006-09-27
CN1497525B (en) 2012-12-05
CN1497525A (en) 2004-05-19

Similar Documents

Publication Publication Date Title
KR100432307B1 (en) Display list architecture having two dimensional array of zones
US5828771A (en) Method and article of manufacture for determining whether a scanned image is an original image or fax image
US6577314B1 (en) Character generation using data of plural types to which differing priorities are assigned
US10643115B1 (en) Ink estimation adjustment mechanism
JP4574457B2 (en) Image processing apparatus and method
JP2003076097A (en) Printing controller and program
JP4895408B2 (en) Information processing apparatus, information processing apparatus control method, and computer program
JP3747410B2 (en) Technology for setting the line width of outline fonts
US9158485B2 (en) Image processing device that performs image processing for variable printing and host data generating device
KR20070014764A (en) N-up display method and apparatus, image forming device thereof
US6247028B1 (en) Controlling attributes of pre-registered form data to match those of data to be printed with the form data
US20110019213A1 (en) Toner saving method, toner saving system, and image forming apparatus
US20040075849A1 (en) Printer object list resolutions
US8675241B2 (en) Method for printing oversized image data
US9338310B2 (en) Image processing apparatus and computer-readable medium for determining pixel value of a target area and converting the pixel value to a specified value of a target image data
JPH09261457A (en) Print controller, data processing method for it and storage medium storing program readable by computer
JPH0918732A (en) Image processor and its method
EP1739542B1 (en) Print system
US7310166B2 (en) Information processing apparatus and method, and print control program
JP2005217859A (en) Image forming apparatus and image forming method
JP3483350B2 (en) Output device, output method and output system, and print data generation device and print data generation method
KR100571788B1 (en) The method of printing the appointed domain of document enlargeably
US6950201B2 (en) Generating images quickly in raster image processing
JP2580965B2 (en) Printer device
JP2002318680A (en) Image processor and image processing method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051019

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20051101

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20051108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051117

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081209

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091209

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091209

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101209

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101209

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111209

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111209

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121209

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121209

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131209

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees