JP2004117714A - フォント生成装置及びフォント生成プログラム - Google Patents
フォント生成装置及びフォント生成プログラム Download PDFInfo
- Publication number
- JP2004117714A JP2004117714A JP2002279612A JP2002279612A JP2004117714A JP 2004117714 A JP2004117714 A JP 2004117714A JP 2002279612 A JP2002279612 A JP 2002279612A JP 2002279612 A JP2002279612 A JP 2002279612A JP 2004117714 A JP2004117714 A JP 2004117714A
- Authority
- JP
- Japan
- Prior art keywords
- font
- character
- feature
- genetic algorithm
- user
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S715/00—Data processing: presentation processing of document, operator interface processing, and screen saver display processing
- Y10S715/978—Audio interaction as part of an operator interface
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Document Processing Apparatus (AREA)
Abstract
【解決手段】基本フォントのフォント文字を記憶した基本フォント記憶部と、フォント文字の特徴を表す特徴パラメータを記憶する特徴パラメータ記憶部と、特徴パラメータに対し遺伝的アルゴリズム処理を施すことにより、新たな特徴パラメータを生成する遺伝的アルゴリズム処理部と、遺伝的アルゴリズム処理部が生成した特徴パラメータに基づいて基本フォントのフォント文字を変形することにより、新たなフォント文字を生成するフォント生成部と、フォント生成部が生成したフォント文字を表示する表示部とを備え、表示部に表示されたフォント文字の中からユーザが選択したフォント文字に基づいて遺伝的アルゴリズム処理部がユーザ好みの特徴パラメータを決定し、フォント生成部は、遺伝的アルゴリズム処理部が決定したユーザ好みの特徴パラメータに基づいてフォントを作成する。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、情報処理装置やプリンタ等に用いるディジタル・フォント(以下、フォントと省略)の作成技術に係り、特に、ユーザ好みのフォントやユーザの筆跡に近いフォントを作成するフォント生成装置及びフォント生成プログラムに関する。
【0002】
【従来の技術】
パーソナルコンピュータやPDA(Personal Digital Assistant)等の情報処理装置やプリンタ等で使用されるフォントには、例えば、明朝体、ゴシック体、毛筆体、教科書体、手書き風等、様々な書体があり、これらのフォントはコンピュータメーカやフォントメーカ等により提供されている。
【0003】
本発明では、フォントとは同一書体で作成された文字の集合を意味し、フォントの中の一区切りに記号化されたもの、即ちフォントを構成する一つの文字をフォント文字と定義する。
【0004】
このようなフォントの書体は、外観的に美しくデザインされているが、このことが、逆に、画一的で個性に欠ける等の印象を文章の読み手に与えることがある。また、これらのフォントを手紙等の個人的な文書に使用することに抵抗を感じるユーザも多い。
【0005】
このような背景から、漢字を構成する偏や旁等の部品に対して配置位置、変形等の加工を施すことにより、新しい書体を作成し、ユーザ独自のフォントを作成することが可能なアプリケーションソフトウェアが提供されている。しかしながら、このようなアプリケーションソフトウェアは、明朝体やゴシック体など、ごく限られた書体のフォントしかサポートしていないために、ユーザ独自のフォントを作成することはユーザにとって相当に困難であった。
【0006】
また、日本語の場合、欧文系言語と比較して多くの文字を必要とし、使用される漢字の数は、例えばJIS第1水準で約3,000文字、第2水準まで含めると約7,000文字となる。そのため、アプリケーションソフトウェアを利用して、ユーザ独自のフォントを作成するためには、大変な労力を必要とする。
【0007】
また、イメージ・スキャナ等の画像読み取り装置を利用して手書き文字を入力し、フォントを作成するアプリケーションソフトウェアも提供されてはいるが、ユーザは必要とする文字を全て手書きしなければならないために、ユーザ独自のフォント作成にはやはり大変な労力を必要とする。
【0008】
このような問題を解決するために、ユーザの手書き文字を認識し、認識した文字に該当する基本フォントと比較して、ユーザの手書き文字の特徴を抽出し、抽出した特徴を記憶し、該特徴に基づいて基本フォントを変更することにより、ユーザの手書き文字に基づいたフォントを作成する装置が提案されている(例えば、特許文献1参照)。
【0009】
【特許文献1】
特開平10−333663号公報
【0010】
【発明が解決しようとする課題】
特許文献1において開示されているフォント生成装置においては、ユーザの手書き文字風のフォントを作成することはできても、ユーザが望むフォントを必ずしも作成することはできない。例えば、文字の下手なユーザは、より綺麗な書体のフォントを望む場合もあり、ユーザの手書き文字風のフォントが必ずしもユーザの望む書体とは限らない。
【0011】
また、どのようなフォントを好むのかということを言葉や文字等で表現することは一般に難しい。また、既存のフォントを修正して自分の好みに合ったフォントを作成する場合でも、既存のフォントのフォント文字のどの部分をどのように修正すれば自分の好みに近づくのかといったことを説明することも難しい。そのため、ユーザは、自分の好みに合うフォントが作成されるまで、試行錯誤を繰り返すことになる。
【0012】
このような課題を解決するために、本発明は、ユーザの好みに合ったフォントを簡単に作成することが可能なフォント生成装置及びフォント生成プログラムを提供することを目的とする。
【0013】
【課題を解決するための手段】
本発明に係るフォント生成装置は、フォント文字を生成するために用いられる基本フォントのフォント文字を記憶した基本フォント記憶部と、フォント文字の特徴を表す特徴パラメータを記憶する特徴パラメータ記憶部と、前記特徴パラメータに対し遺伝的アルゴリズム処理を施すことにより、複数の新たな特徴パラメータを生成する遺伝的アルゴリズム処理部と、前記遺伝的アルゴリズム処理部にて生成された前記複数の新たな特徴パラメータに基づいて前記基本フォントのフォント文字を変形することにより、新たなフォント文字を生成するフォント生成部と、前記フォント生成部にて生成された前記新たなフォント文字を表示する表示部とを備え、前記表示部に表示された前記新たなフォント文字の中からユーザが選択したフォント文字に基づいて、前記遺伝的アルゴリズム処理部がユーザ好みの特徴パラメータを決定し、前記フォント生成部は、前記遺伝的アルゴリズム処理部が決定した前記ユーザ好みの特徴パラメータに基づいて、フォントを作成することを特徴とする。
【0014】
また、本発明に係るフォント生成プログラムは、フォント文字の特徴を表す特徴パラメータに対し遺伝的アルゴリズム処理を施すことにより、複数の新たな特徴パラメータを生成する処理と、フォント文字を生成するために用いる基本フォントのフォント文字を、生成した前記複数の新たな特徴パラメータに基づいて変形することにより、複数の新たなフォント文字を生成する処理と、生成した前記複数の新たなフォント文字を表示部に表示する処理と、前記表示部に表示した前記複数の新たなフォント文字の中からユーザが選択したフォント文字に基づいて、ユーザ好みの特徴パラメータを決定する処理と、決定した前記ユーザ好みの特徴パラメータに基づいてフォントを作成する処理とをフォント生成装置に実行させることを特徴とする。
【0015】
このような構成によれば、ユーザは、表示された複数のフォント文字の中から好みのフォント文字を選択する作業を繰り返すだけで、自分の好みに合ったフォントを作成することができるので、労力を掛けずに、また、フォント文字の構造など細かい部分を気にせずに直感的にフォントを作成することができる。
【0016】
また、前記フォント生成装置は、さらに、ユーザによる手書き文字を読み取る読取部と、前記読取部が読み取った文字データから文字を認識し、認識した文字と基本フォントのフォント文字とを比較して手書き文字の特徴を前記特徴パラメータとして抽出する文字特徴抽出部とを備えるようにしても良い。このような構成によれば、ユーザは、自身の手書き文字の特徴パラメータに基づいて、好みのフォントを簡単に作成することができる。
【0017】
【発明の実施の形態】
以下、図面を参照しながら、本発明の実施の形態について詳しく説明する。
【0018】
[フォント生成装置の構成]
初めに、図1を参照して、本実施形態によるフォント生成装置の構成について説明する。
【0019】
本実施形態によるフォント生成装置は、読取装置1、操作装置2、表示装置3、制御部10、及び記憶装置11等の装置で構成される。
【0020】
読取装置1は、ユーザが手書き文字を記入した用紙から文字画像を読み取るイメージ・スキャナや、ユーザによるペン入力操作時のストローク情報などのデータを取り込む手書き入力タブレット等の入力装置である。
【0021】
操作装置2は、表示装置3に表示されたフォント文字の中から好みのフォント文字をユーザが選択するためのキーボードやマウス等の入力装置である。
【0022】
表示装置3は、後述する処理動作により生成されたフォント文字を表示するCRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)等の表示装置である。
【0023】
制御部10は、CPU(Central Processing Unit)10a、ROM(Read Only Memory)10b、RAM(Random Access Memory)10c、インタフェース部10d等で構成される。CPU10aは、ROM10b等に記憶された各種プログラムに従ってフォント生成装置の動作を制御する。ROM10bは、フォント生成装置の機能を実現する各種プログラム、例えば、文字特徴抽出部4、遺伝的アルゴリズム処理部5、フォント生成部6等のアプリケーションプログラムや、各種データ、例えば基本フォント記憶部8等のプログラムの実行に必要なデータを記憶する。RAM10cは、CPU10aが実行する各種動作と関連するプログラムやデータ(例えば、特徴パラメータ記憶部7)を一時的に記憶するワークエリアである。インタフェース部10dは、CPU10aが各種プログラムに従って読取装置1、操作装置2、表示装置3、記憶装置11等と制御信号やデータを送受信するための処理を行う。
【0024】
記憶装置11は、作成されたフォント等を記憶する記憶装置である。
【0025】
文字特徴抽出部4は、読取装置1から送られた手書き文字の文字画像や位置情報から、基本フォント記憶部8に記憶している基本フォントのフォント文字のどの文字に該当するかを判断する。
【0026】
更に、文字画像やストローク情報を抽出し、文字コード(例えばシフトJIS)に対応する基本フォント記憶部8に記憶されている基本フォントのフォント文字とを比較して、手書き文字の特徴を抽出し、抽出した特徴を特徴パラメータ(詳しくは後述する)として特徴パラメータ記憶部7に送る。
【0027】
ここで、基本フォントとは、文字を構成する線分の骨格線で表現するようなスケルトンフォント等を意味する。
【0028】
遺伝的アルゴリズム処理部5は、特徴パラメータ記憶部7に記憶された複数の染色体(詳しくは後述する)から選択(selection)された二つの染色体に、交差(crossover)、突然変異(mutation)といった遺伝的アルゴリズム処理を行い、複数の新たな染色体を生成する。そして、遺伝的アルゴリズム処理部5は、生成した複数の新たな染色体を特徴パラメータ記憶部7に送る。「選択」とは、集団の中から優秀な染色体を選び出すことであり、「交差」とは、選び出された二つの染色体間で染色体の一部(遺伝子)を交換することであり、「突然変異」とは、染色体の一部(遺伝子)を、設定した確率に従って強制的に変更することである。
【0029】
フォント生成部6は、遺伝的アルゴリズム処理部5で生成した染色体に基づいて、基本フォント記憶部8に記憶されている基本フォントのフォント文字を変形処理し、生成したフォント文字を表示装置3に表示する。あるいは生成フォント記憶部9に文字コードと対応づけて送る。
【0030】
特徴パラメータ記憶部7は、文字特徴抽出部4から送られるユーザによる手書き文字の特徴パラメータと遺伝的アルゴリズム処理部5から送られる染色体を記憶する。
【0031】
基本フォント記憶部8は、フォント文字がどのような偏や旁等の部品で構成されているのかを示す情報と、部品のサイズや配置位置を示す情報とを基本フォント情報としてフォント文字毎に文字コードと対応づけて記憶する。
【0032】
生成フォント記憶部9は、フォント生成部6が生成したフォント文字を文字コードに対応づけて記憶する。
【0033】
遺伝的アルゴリズム処理部5は、ユーザが確定したフォント文字に基づいてユーザ好みの特徴パラメータを決定する。
【0034】
[フォント作成装置の動作]
次に、図2に示すフローチャートを参照しながら、フォント生成装置の処理動作について説明する。
【0035】
ステップS1の処理において、制御部10は、表示装置3に、ユーザの手書き文字をベースにフォント文字を生成するか否かを問い合せるメッセージ(確認メッセージ)を表示し、ユーザに、操作装置2により手書き文字をベースにフォント文字を生成するか否かを選択させる。
【0036】
ステップS2の処理において、制御部10は、ユーザが手書き文字に基づいてフォント文字を生成することを選択したか否かを判別する。判別の結果、ユーザが手書き文字に基づいてフォント文字を生成することを選択していない場合、ステップS3の処理として、遺伝的アルゴリズム処理部5は、染色体(詳しくは後述する)を構成する遺伝子をランダムに決定し、複数の染色体を生成する。即ち、フォント文字の特徴パラメータのパラメータ値をランダムに生成し、複数の特徴パラメータを生成する。
【0037】
一方、ステップS2の判別の結果、ユーザが手書き文字に基づいてフォント文字を生成することを選択した場合には、ステップS4の処理において、文字特徴抽出部4は、手書き文字の特徴パラメータを抽出するための所定の文字列(テストパターン)を表示装置3に表示し、ユーザに所定の文字列に対応する手書き文字を読取装置1から入力させる。読取装置1は、入力された手書き文字の文字画像やストローク情報を読み取って、文字特徴抽出部4に送る。文字特徴抽出部4は、手書き文字の文字画像やストローク情報から、基本フォント記憶部8のどのフォント文字に該当するかを認識(この場合、所定の文字列は既知であり、手書き文字を認識することは既存の文字認識技術で十分である)する。そして文字特徴抽出部4は、手書き文字と対応する基本フォント記憶部8のフォント文字と比較することにより、手書き文字の特徴パラメータを抽出し、特徴パラメータ記憶部7に記憶する。
【0038】
本発明において、「遺伝子」とはフォント文字の構成要素に出現する特徴(パラメータ)のことをいい、出現する特徴の度合いを数値(パラメータ値)で表す。「染色体」とは、全ての遺伝子を所定の順番で記述したものであり、染色体をパラメータ値で表したものが特徴パラメータである。
【0039】
フォント文字の構成要素として、線の長さ(パラメータ/記号;横線/a1,縦線/b1,左はらい/c1,右はらい/d1,点/e1,はね/f1)、線の丸み(パラメータ/記号;横線/a2,縦線/b2,左はらい/c2,右はらい/d2,点/e2,はね/f2)、線のうねり(パラメータ/記号;横線/a3,縦線/b3)、線の角度(パラメータ/記号;左はらい/c3,右はらい/d3,点/e3,はね/f3)、線の太さ(パラメータ/記号;線太さ/j1,起筆部/j2,線中央部/j3,終筆部/j4)、折れ(パラメータ/記号;丸み/g1)、フォント文字外形の変形(パラメータ/記号;右肩上がり/h1,左倒れ/i1)を設定している一例を図3に示す。
【0040】
フォント文字の特徴を表す場合、図6に示す番号1のフォント文字「永」で具体的に説明すると、構成要素の「線の丸み」が若干あり(パラメータ(「横線(a2)」,「縦線(b2)」,「左はらい(c2)」,「右はらい(d2)」,「点(e2)」,「はね(f2)」,「折れ丸み(g1)」)の各パラメータ値は「4」)、他の構成要素は標準(各パラメータのパラメータ値は標準の「3」、但し「起筆部太さ(j2)」、「線中央部太さ(j3)」、「終筆部太さ(j4)」の各パラメータ値の標準は「1」)とすれば、「番号1」の染色体は、各遺伝子を「a1,a2,a3,b1,b2,b3,…,j1,j2,j3,j4」の順に羅列したものであり、特徴パラメータは染色体のパラメータをパラメータ値に置き換えて「3433433433433433434333111」と記述したものである。番号2〜5についても同様である。
【0041】
さらに、基本フォント(スケルトンフォント)のフォント文字「永」に、図3に示すパラメータのパラメータ値を5段階に設定して生成したフォント文字を、図4,5に示す。この場合、対象とするパラメータ以外のパラメータ値は「3」に、「起筆部太さ(j2)」「線中央部太さ(j3)」「終筆部太さ(j4)」の各パラメータ値は「1」に設定して生成した例である。
【0042】
なお、パラメータやパラメータ値の段階は、本実施例に限定されず、適宜増減させても良いし、パラメータ値の段階はパラメータ毎に異なる段階を設定しても良い。
【0043】
ステップS5の処理において、遺伝的アルゴリズム処理部5は、特徴パラメータ記憶部7に記憶されているユーザによる手書き文字の特徴パラメータに突然変異などの遺伝的アルゴリズム処理を実行して複数の特徴パラメータを生成する。
【0044】
そして、複数の特徴パラメータを生成すると遺伝的アルゴリズム処理部5は、ユーザによって選択された二つの特徴パラメータ間で、交差及び突然変異の処理を実行することにより新しい世代の特徴パラメータを複数生成し、生成した新しい世代の複数の特徴パラメータを特徴パラメータ記憶部7に記憶する。
【0045】
ここで、遺伝的アルゴリズム処理部5が処理する「交差」「突然変異」について詳しく説明する。
【0046】
「交差」により染色体を生成する場合、遺伝的アルゴリズム処理部5は二つの染色体を親として、二つの染色体間で遺伝子を組替え、新しい染色体を生成する処理を行う。なお、遺伝学的な交差方法には、1点交差(前)、1点交差(後)、2点交差、一様交差があるが、本発明においては遺伝学的に厳密に適用する必要はなく、問題の性質に従って自由に選ぶことができる。
【0047】
より具体的には、図7に例示するように、番号6,7,8の特徴パラメータは、番号1と番号4を親として交差により生成した例を示しており、番号6の特徴パラメータは、パラメータ「横線長さ(a1)」,「横線丸み(b2)」,「横線うねり(a3)」,「縦線長さ(b1)」を親である番号1のパラメータ(パラメータ値「34334」)を、その他のパラメータは番号4のパラメータ(パラメータ値「3334334331331333335111」)を受け継いでいる。このように、交差により親の染色体の一部をそのまま受け継いで生成された番号6のフォント文字は、横線と縦線の特徴を親である番号1から受け継いでいることがわかる。
【0048】
そして、ユーザが複数のフォント文字から好みのフォント文字を親として選択することで、選択された親の遺伝子が次の世代に受け継がれ、ユーザの好みにマッチしたフォント文字が生成される確率が高くなる。
【0049】
また、「突然変異」により染色体を生成する場合、遺伝的アルゴリズム処理部5は、二つの染色体を親として交差により新しい染色体を生成し、生成した染色体のある部分の遺伝子を、設定した確率に従って強制的に変更することにより、生成した新しい染色体の一部を親の遺伝子とは無関係に変化させる処理を行う。なお、突然変異率は、遺伝学的な制約にとらわれることなく、適宜設定することができ、突然変異の発生する遺伝子やパラメータ値についてはランダムに選択することができる。
【0050】
より具体的には、図7に例示するように、番号9,10の特徴パラメータは、番号1と番号4を親として交差によりパラメータ値を受け継いでいるが、受け継いだパラメータの一部は、突然変異により親とは無関係のパラメータ値に変更されている。
【0051】
例えば、番号9では、パラメータ「右肩上がり(h1)」,「左倒れ(i1)」,「太さ(j1)」,「起筆部太さ(j2)」のパラメータ値「3351」が無関係なパラメータ値「2515」に置き換わり、親の特徴パラメータにはなかった右肩下がり、右倒れ、起筆部太さが太く、フォント文字としては細めの特徴をもったフォント文字が生成されている。なお、説明をわかりやすくするため突然変異の発生を連続した遺伝子に発生させた例を示したが、一般的に、染色体における突然変異の発生する遺伝子はランダムである。
【0052】
このように、ある確率の下に新しい特徴パラメータを持ったフォント文字が発生することにより、今までにない新しいフォント文字を生成することができる。
【0053】
なお、特徴パラメータで表現されたフォント文字を視覚化し、ユーザにパラメータ値を調整させるようにすることで、好みのフォント文字を生成するといった方法でも良い。しかし、ユーザにパラメータ値を調整させる方法は、直感的なフォント生成方法でなく、イメージ通りにパラメータ値を調整して好みのフォント文字を生成するのは困難である。そこで、異なる染色体を持つフォント文字を複数提示し、ユーザにその中から好みのフォント文字により近いフォント文字を選択させるようにすることで、直感的に好みのフォントを作成することが可能となる。そこで、このステップS5の処理で得られた特徴パラメータから、異なるパラメータ値を持つ特徴パラメータをさらに複数個、生成する。具体的には、ステップS5の処理で得られた特徴パラメータをベースにした「突然変異」によるプロセスや、ステップS5あるいはステップS3の処理の処理で得られた特徴パラメータと標準的なパラメータ値を持つ特徴パラメータとの「交差」によるプロセスにより、新たなパラメータ値を持つ特徴パラメータを生成する。
【0054】
再び、図2のフローチャートに戻って、ステップS6の処理において、フォント生成部6は、遺伝的アルゴリズム処理部5が生成した複数の特徴パラメータに基づいて複数のフォント文字を生成し、生成した複数のフォント文字を表示装置3に表示する。より具体的には、フォント生成部6は、ユーザにより指定された文字又は予め設定された文字について、基本フォント記憶部8に記憶された基本フォントのフォント文字の部品に対して、ステップS3又はステップS5で生成した複数の特徴パラメータを適用することにより複数のフォント文字を生成する。
【0055】
なお、表示装置3に表示するフォント文字数は、表示装置3の画面サイズや、ユーザが直感的に選択できる数に応じて調整することができる。
【0056】
ここで、図8を参照しながら、パラメータである、横線長さ(a1),横線丸み(a2),横線うねり(a3)のパラメータ値の変化に伴う、横線の変化について説明する。本実施形態においては、フォント生成部6は、フォントを構成する曲線をベジエ3次曲線により表現する。そして、ベジエ3次曲線の形状は、4つの制御点で定義されており、フォント生成部6は、パラメータ値を変数とする数式でこの4つの制御点の座標を表現することにより、様々な形状を有する曲線を表現できる。
【0057】
具体的には、横線を表現するための制御点の座標をA,B,C,Dとすると、
【数1】
A(0,0)
B(a1×k1/3,((a2−3)+(a3−3))×a1×k2)
C(a1×k1×2/3,((a2−3)−(a3−3))×a1×k2)
D(a1×k1,0)
但し、a1,a2,a3=1,2,3,4,5であり、k1,k2は定数とすると、4点A,B,C,Dを制御点とするベジエ3次曲線P(t)は、次式により表現される。
【0058】
【数2】
P(t)=(1−t)3A+3(1−t)2tB+3(1−t)t2C+t3D
但し、0≦t≦1
横線は、図8(a)〜(e)に示すように、パラメータa1,a2,a3のパラメータ値の変化に従って、形状が変化する。そして、フォント生成部6は、基本フォント記憶部8に記憶された基本フォントのフォント文字の構造に従って生成した曲線を配置し、太さ等のパラメータ値に従って肉付け、右肩上がりや左(右)倒れ等のパラメータ値に従ってフォント文字外形の変形等の処理を施すことにより、フォント文字を生成する。なお、本実施形態においては、ベジエ3次曲線を用いて横線を表現したが、これに限らず、他の曲線を用いて線を表現するようにしてもよい。
【0059】
再び、図2のフローチャートに戻って、ステップS7の処理において、制御装置10は、ユーザに、操作装置2を操作させて表示装置3に表示したフォント文字の中から好みのフォント文字を1つ以上選択させる。
【0060】
ステップS8の処理において、遺伝的アルゴリズム処理部5は、選択されたフォント文字が一つか否かを判定する。ステップS8の処理において、フォント文字が一つ選択された場合は、ステップS9の処理に進む。一方、フォント文字が複数選択された場合は、ステップS10の処理に進む。
【0061】
ステップS9の処理において、遺伝的アルゴリズム処理部5は、選択した好みのフォント文字で良いか(確定するか)否かをユーザに問い合わせ、「確定しない」が選択された場合はステップS11の処理に進む。一方、「確定する」が選択された場合はステップS13の処理に進む。
【0062】
ステップS11の処理において、遺伝的アルゴリズム処理部5は、表示装置3にフォント文字の生成を一からやり直すか否かを問い合せるメッセージを表示し、ユーザに操作装置2によりフォント文字の生成を一からやり直すか否かを選択させる。
【0063】
ステップS11の処理において、「一からやり直す」が選択された場合は、遺伝的アルゴリズム処理部5は、処理をステップS2に戻す。
【0064】
一方、ステップS11の処理において、「一からやり直さない」が選択された場合は、ステップS12の処理に進む。
【0065】
ステップS12の処理において、遺伝的アルゴリズム処理部5は、ステップS7で選択されたフォント文字の特徴パラメータに対し突然変異等の遺伝的アルゴリズム処理を実行して、複数の次世代の特徴パラメータを生成し、ステップS6の処理に戻す。具体的には、遺伝的アルゴリズム処理部5は、ステップS5の処理と同様にして複数の特徴パラメータを生成する。
【0066】
ステップS10の処理において、遺伝的アルゴリズム処理部5は、選択された複数のフォント文字の中から二つのフォント文字を選択し、選択されたフォント文字の特徴パラメータに対し交差、突然変異等の遺伝的アルゴリズム処理を実行して、複数の次世代の特徴パラメータを生成し、ステップS6の処理に戻す。具体的には、ステップS7の処理において二つのフォント文字が選択されている場合には、遺伝的アルゴリズム処理部5は、二つのフォント文字を親とした特徴パラメータに対し交差、突然変異処理を行う。また、ステップS7の処理において三つ以上のフォント文字が選択された場合には、遺伝的アルゴリズム処理部5は、親とするフォント文字をランダムに二つ選択しても良いし、選択時に好みの重み付けをユーザに指定させておき、この重み付けに従って親とするフォント文字を二つ選択しても良い。
【0067】
ステップS9の処理において、ユーザにより確定が選択された場合、遺伝的アルゴリズム処理部5は、ステップS13の処理として、ユーザが確定したフォント文字の特徴パラメータを、フォント作成のための特徴パラメータとして決定する。
【0068】
ステップS14の処理において、フォント生成部6は、ユーザ好みの特徴パラメータに基づいてフォントを作成し、必要に応じてベクトルデータ化(TrueTypeフォント化)した後、作成したフォントを生成フォント記憶部9に文字コードに対応させて記憶し、一連のフォント生成処理を終了する。
【0069】
以上の説明から明らかなように、本実施形態によるフォント生成装置によれば、遺伝的アルゴリズム処理部5が、親となる特徴パラメータに対し遺伝的アルゴリズム処理を施すことにより、複数の新たな特徴パラメータを生成し、フォント生成部6が、生成した複数の新たな特徴パラメータに基づいて基本フォントのフォント文字を変形することにより、複数の新たなフォント文字を生成し、生成した複数の新たなフォント文字を表示装置3に表示する。そして、遺伝的アルゴリズム処理部5は、表示した複数の新たなフォント文字の中からユーザにより選択されたフォント文字に基づいてユーザ好みの特徴パラメータを決定する。そして、フォント生成部6は、遺伝的アルゴリズム処理部5が決定したユーザ好みの特徴パラメータに基づいてフォントを作成する。つまり、遺伝と淘汰を繰り返すことによって、よりユーザの好みにマッチしたフォント文字を生成することができる。従って、ユーザは表示された複数のフォント文字の中から好みのフォント文字を選択する作業を繰り返すだけで、自分の好みに合ったフォントを作成することができるので、労力を掛けずに、また、フォント文字構造等、細かい部分のことを気にせずに直感的にフォントを作成することができる。さらに、ユーザの手書き文字の特徴をパラメータ値(遺伝子)として加味することで、ユーザの手書き文字の特徴を受け継いだフォントを簡単に作成することができる。
【0070】
以上、本発明の実施の形態を詳細に説明したが、本発明は、その精神または主要な特徴から逸脱することなく、他の色々な形で実施することができる。
【0071】
例えば、ユーザの気に入るフォント文字が生成されない場合には、突然変異率の変更や、一度作成したフォントの遺伝子情報の保存や読み込みを行えるようにして、現在の世代のフォント群に新たな遺伝子情報として掛け合わせることでフォントの進化に影響を与えるようにしても良い。
【0072】
従って、前述の実施例はあらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。本発明の範囲は、特許請求の範囲によって示すものであって、明細書本文には何ら拘束されない。更に、特許請求の範囲の均等範囲に属する変形や変更は、全て本発明の範囲内のものである。
【0073】
【発明の効果】
本発明によれば、表示された複数のフォント文字の中から好みのフォント文字を選択する作業を繰り返すだけで、ユーザの好みに合ったフォントを簡単に作成することができる。
【図面の簡単な説明】
【図1】本実施形態によるフォント生成装置の構成例を示すブロック図である。
【図2】図1に示すフォント生成装置の処理動作を例示するフローチャートである。
【図3】本実施形態におけるフォント文字の構成要素とパラメータを例示する図である。
【図4】図3に示すパラメータ値を変化させたときのフォント文字の一例を示す図である。
【図5】図3に示すパラメータ値を変化させたときのフォント文字の一例を示す図である。
【図6】本実施形態におけるフォント文字の染色体と特徴パラメータの関係を示す図である。
【図7】本実施形態における遺伝的アルゴリズムの処理例を説明するための図である。
【図8】本実施形態におけるフォント生成処理の一例を説明するための図である。
【符号の説明】
1…読取装置
2…操作装置
3…表示装置
4…文字特徴抽出部
5…遺伝的アルゴリズム処理部
6…フォント生成部
7…特徴パラメータ記憶部
8…基本フォント記憶部
9…生成フォント記憶部
10…制御部
10a…CPU
10b…ROM
10c…RAM
10d…インタフェース部
11…記憶装置
Claims (8)
- フォント文字を生成するために用いられる基本フォントのフォント文字を記憶した基本フォント記憶部と、
フォント文字の特徴を表す特徴パラメータを記憶する特徴パラメータ記憶部と、
前記特徴パラメータに対し遺伝的アルゴリズム処理を施すことにより、複数の新たな特徴パラメータを生成する遺伝的アルゴリズム処理部と、
前記遺伝的アルゴリズム処理部にて生成された前記複数の特徴パラメータに基づいて前記基本フォントのフォント文字を変形することにより、新たなフォント文字を生成するフォント生成部と、
前記フォント生成部にて生成された前記新たなフォント文字を表示する表示部とを備え、
前記表示部に表示された前記新たなフォント文字の中からユーザが選択したフォント文字に基づいて、前記遺伝的アルゴリズム処理部がユーザ好みの特徴パラメータを決定し、
前記フォント生成部は、前記遺伝的アルゴリズム処理部が決定した前記ユーザ好みの特徴パラメータに基づいて、フォントを作成すること
を特徴とするフォント生成装置。 - 前記フォント生成装置は、さらに、
ユーザによる手書き文字を読み取る読取部と、
前記読取部が読み取った文字データから文字を認識し、認識した文字と基本フォントのフォント文字とを比較して手書き文字の特徴を前記特徴パラメータとして抽出する文字特徴抽出部とを備えること
を特徴とする請求項1に記載のフォント生成装置。 - 前記遺伝的アルゴリズム処理部は、前記特徴パラメータから選択された二つの特徴パラメータに、交差、突然変異による遺伝的アルゴリズム処理を施すことにより、前記複数の新たな特徴パラメータを生成すること
を特徴とする請求項1または請求項2のいずれかに記載のフォント生成装置。 - 前記特徴パラメータは、フォント文字の構成要素の線の長さ、線の丸み、線のうねり、線の角度、線の太さ、折れ、及びフォント文字外形の傾きの特徴のうち少なくとも1つ以上を含むこと
を特徴とする請求項1または請求項2のいずれかに記載のフォント生成装置。 - フォント文字の特徴を表す特徴パラメータに対し遺伝的アルゴリズム処理を施すことにより、複数の新たな特徴パラメータを生成する処理と、
フォント文字を生成するために用いる基本フォントのフォント文字を、生成した前記複数の新たな特徴パラメータに基づいて変形することにより、複数の新たなフォント文字を生成する処理と、
生成した前記複数の新たなフォント文字を表示部に表示する処理と、
前記表示部に表示した前記複数の新たなフォント文字の中からユーザが選択したフォント文字に基づいて、ユーザ好みの特徴パラメータを決定する処理と、
決定した前記ユーザ好みの特徴パラメータに基づいてフォントを作成する処理と
をフォント生成装置に実行させることを特徴とするフォント生成プログラム。 - 前記フォント生成プログラムは、さらに、
ユーザによる手書き文字を読取部にて読み取る処理と、
前記読取部が読み取った文字データから文字を認識する処理と、
認識した文字と基本フォントのフォント文字とを比較して手書き文字の特徴を前記特徴パラメータとして抽出する処理とを含むこと
を特徴とする請求項5に記載のフォント生成プログラム。 - 前記遺伝的アルゴリズム処理は、前記特徴パラメータから選択された二つの特徴パラメータに、交差、突然変異による遺伝的アルゴリズム処理を施すことにより、前記複数の新たな特徴パラメータを生成すること
を特徴とする請求項5または請求項6のいずれかに記載のフォント生成プログラム。 - 前記特徴パラメータは、フォント文字の構成要素の線の長さ、線の丸み、線のうねり、線の角度、線の太さ、折れ、及びフォント文字外形の傾きの特徴のうち少なくとも1つ以上を含むこと
を特徴とする請求項5または請求項6のいずれかに記載のフォント生成プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002279612A JP2004117714A (ja) | 2002-09-25 | 2002-09-25 | フォント生成装置及びフォント生成プログラム |
US10/668,264 US7009612B2 (en) | 2002-09-25 | 2003-09-24 | Apparatus and method for font generation, and computer-readable storage medium recording program for the same |
CN031348408A CN1497438B (zh) | 2002-09-25 | 2003-09-25 | 字体产生的装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002279612A JP2004117714A (ja) | 2002-09-25 | 2002-09-25 | フォント生成装置及びフォント生成プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004117714A true JP2004117714A (ja) | 2004-04-15 |
Family
ID=32274560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002279612A Pending JP2004117714A (ja) | 2002-09-25 | 2002-09-25 | フォント生成装置及びフォント生成プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US7009612B2 (ja) |
JP (1) | JP2004117714A (ja) |
CN (1) | CN1497438B (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6184569B1 (ja) * | 2016-08-11 | 2017-08-23 | ファウンデーション オブ スンシル ユニヴァーシティ インダストリー コーポレーション | スタイル変更が可能なフォント生成方法及び装置 |
KR20220016549A (ko) * | 2020-08-03 | 2022-02-10 | 주식회사 윤디자인그룹 | 암호 폰트 제공 방법 및 디바이스 |
KR20220016548A (ko) * | 2020-08-03 | 2022-02-10 | 주식회사 윤디자인그룹 | 가변 폰트 제공 방법 및 디바이스 |
KR20230126658A (ko) | 2022-02-23 | 2023-08-30 | 김성인 | 난수와 확률변수를 이용한 예술작품의 생성 방법 및 장치 |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004145072A (ja) * | 2002-10-25 | 2004-05-20 | Riso Kagaku Corp | 手書き文字フォント作成装置及び手書き文字フォント作成プログラム |
US8661338B2 (en) * | 2004-01-14 | 2014-02-25 | Xerox Corporation | System and method for dynamic document layout |
US7710422B2 (en) * | 2004-07-26 | 2010-05-04 | Microsoft Corporation | Font representations |
JP4770614B2 (ja) * | 2006-07-11 | 2011-09-14 | 株式会社日立製作所 | 書類管理システムおよび書類管理方法 |
CN101000601B (zh) * | 2007-01-10 | 2010-05-19 | 方正国际软件(北京)有限公司 | 一种排版过程中字体自动变换的装置与方法 |
WO2010084206A1 (en) | 2009-01-26 | 2010-07-29 | Fontself Sa | A system and method for creating, managing, sharing and displaying personalized fonts on a client-server architecture |
WO2010084207A1 (en) | 2009-01-26 | 2010-07-29 | Fontself Sa | A system and method for displaying a text with a font |
WO2010084205A1 (en) | 2009-01-26 | 2010-07-29 | Fontself Sa | A system and method for creating and sharing personalized fonts on a client-server architecture |
US9323726B1 (en) * | 2012-06-27 | 2016-04-26 | Amazon Technologies, Inc. | Optimizing a glyph-based file |
US9159147B2 (en) * | 2013-03-15 | 2015-10-13 | Airdrawer Llc | Method and apparatus for personalized handwriting avatar |
JP6094400B2 (ja) | 2013-06-25 | 2017-03-15 | ソニー株式会社 | 情報処理装置、情報処理方法、および情報処理プログラム |
US10725650B2 (en) * | 2014-03-17 | 2020-07-28 | Kabushiki Kaisha Kawai Gakki Seisakusho | Handwritten music sign recognition device and program |
US9146907B1 (en) * | 2014-03-19 | 2015-09-29 | Amazon Technologies, Inc. | Systems and methods providing parameters for modifying a font |
US9652669B2 (en) * | 2014-09-16 | 2017-05-16 | Lenovo (Singapore) Pte. Ltd. | Reflecting handwriting attributes in typographic characters |
KR20160062566A (ko) * | 2014-11-25 | 2016-06-02 | 삼성전자주식회사 | 필기 문자를 보정하는 디바이스 및 방법 |
US9715623B2 (en) * | 2015-06-10 | 2017-07-25 | Lenovo (Singapore) Pte. Ltd. | Reduced document stroke storage |
EP3511868A1 (en) * | 2018-01-11 | 2019-07-17 | Onfido Ltd | Document authenticity determination |
CN108885703B (zh) * | 2018-03-05 | 2021-11-26 | 香港应用科技研究院有限公司 | 机器学习人工字符生成 |
US20190272447A1 (en) * | 2018-03-05 | 2019-09-05 | Hong Kong Applied Science And Technology Research Institute Co., Ltd. | Machine learning artificial character generation |
CN112840312B (zh) * | 2018-12-19 | 2023-05-26 | 深圳市欢太科技有限公司 | 字体设置方法及装置 |
CN111611771B (zh) * | 2020-04-28 | 2024-01-23 | 维沃移动通信有限公司 | 字体文件的处理方法、电子设备及可读存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6621942B1 (en) * | 1989-09-29 | 2003-09-16 | Intermec Ip Corp. | Data capture apparatus with handwritten data receiving component |
JPH01279368A (ja) * | 1988-04-30 | 1989-11-09 | Sharp Corp | キャラクタデータの転送方式 |
JP3437037B2 (ja) * | 1996-08-23 | 2003-08-18 | シャープ株式会社 | 文字パターン生成装置 |
JPH10333663A (ja) | 1997-06-05 | 1998-12-18 | Hitachi Ltd | 文字フォント作成装置及び文字フォント作成方法 |
US6621941B1 (en) * | 1998-12-18 | 2003-09-16 | Xerox Corporation | System of indexing a two dimensional pattern in a document drawing |
-
2002
- 2002-09-25 JP JP2002279612A patent/JP2004117714A/ja active Pending
-
2003
- 2003-09-24 US US10/668,264 patent/US7009612B2/en not_active Expired - Fee Related
- 2003-09-25 CN CN031348408A patent/CN1497438B/zh not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6184569B1 (ja) * | 2016-08-11 | 2017-08-23 | ファウンデーション オブ スンシル ユニヴァーシティ インダストリー コーポレーション | スタイル変更が可能なフォント生成方法及び装置 |
CN107729297A (zh) * | 2016-08-11 | 2018-02-23 | 崇实大学校产学协力团 | 可变更风格的字体生成方法及装置 |
CN107729297B (zh) * | 2016-08-11 | 2021-04-13 | 崇实大学校产学协力团 | 可变更风格的字体生成方法及装置 |
KR20220016549A (ko) * | 2020-08-03 | 2022-02-10 | 주식회사 윤디자인그룹 | 암호 폰트 제공 방법 및 디바이스 |
KR20220016548A (ko) * | 2020-08-03 | 2022-02-10 | 주식회사 윤디자인그룹 | 가변 폰트 제공 방법 및 디바이스 |
KR102395848B1 (ko) | 2020-08-03 | 2022-05-10 | 주식회사 윤디자인그룹 | 암호 폰트 제공 방법 및 디바이스 |
KR102395847B1 (ko) | 2020-08-03 | 2022-05-10 | 주식회사 윤디자인그룹 | 가변 폰트 제공 방법 및 디바이스 |
KR20230126658A (ko) | 2022-02-23 | 2023-08-30 | 김성인 | 난수와 확률변수를 이용한 예술작품의 생성 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
US7009612B2 (en) | 2006-03-07 |
US20040140977A1 (en) | 2004-07-22 |
CN1497438B (zh) | 2010-04-28 |
CN1497438A (zh) | 2004-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004117714A (ja) | フォント生成装置及びフォント生成プログラム | |
JP7073241B2 (ja) | 複数のディープ・ラーニング・ニューラル・ネットワークを動的に重み付けすることによるフォント認識の改善 | |
JP4124494B2 (ja) | 置換コンピュータ字体の供給方法及び装置 | |
KR100454541B1 (ko) | 수기 문자 인식 방법 및 시스템 | |
JP4418044B2 (ja) | デジタルフォントにおけるキャラクタを表示する方法、デジタルフォントのキャラクタを画定する方法、及びデジタルフォントにおけるキャラクタを発生する方法 | |
US20020064308A1 (en) | System and methods for spacing, storing and recognizing electronic representations of handwriting printing and drawings | |
US8786607B2 (en) | Apparatus and method of generating personal fonts | |
WO1995034047A1 (en) | System and methods for spacing, storing and recognizing electronic representations of handwriting, printing and drawings | |
JPH08212197A (ja) | 文書編集装置 | |
JP2010055048A (ja) | 低解像度ディスプレイのためのストロークベースのフォント文字を生成する方法 | |
JP2019028094A (ja) | 文字生成装置、プログラム及び文字出力装置 | |
US11393231B2 (en) | System and method for text line extraction | |
JP3353954B2 (ja) | 手書き入力表示方法および手書き入力表示装置 | |
CN107729297B (zh) | 可变更风格的字体生成方法及装置 | |
JP7448132B2 (ja) | 手書きの構造分解 | |
JP2005326756A (ja) | 文字画像生成装置,文字画像生成方法,表示制御装置,文字画像生成プログラムおよび表示制御プログラム | |
US20230096728A1 (en) | System and method for text line and text block extraction | |
WO2006051795A1 (ja) | 処理装置、プログラムおよび記録媒体 | |
JP2022165289A (ja) | プログラム、情報処理方法及び情報処理装置 | |
US20240004614A1 (en) | Methods and apparatus for art work creation by using random numbers and random variables | |
JP3171738B2 (ja) | 毛筆書体生成装置 | |
JP6772629B2 (ja) | 情報処理装置、文字入力プログラムおよび文字入力方法 | |
JP4357240B2 (ja) | 文字認識装置、文字認識方法、プログラムおよび記憶媒体 | |
US12062119B2 (en) | Dynamic differential evolution based control for typeface visual accessibility | |
JPH08190603A (ja) | 文字認識装置及びその候補文字表示方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050907 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070320 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070521 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070612 |