JP5329971B2 - フォント制御値を生成する方法、コンピュータ可読記録媒体、及びシステム - Google Patents

フォント制御値を生成する方法、コンピュータ可読記録媒体、及びシステム Download PDF

Info

Publication number
JP5329971B2
JP5329971B2 JP2008545619A JP2008545619A JP5329971B2 JP 5329971 B2 JP5329971 B2 JP 5329971B2 JP 2008545619 A JP2008545619 A JP 2008545619A JP 2008545619 A JP2008545619 A JP 2008545619A JP 5329971 B2 JP5329971 B2 JP 5329971B2
Authority
JP
Japan
Prior art keywords
font
property distribution
filtered
distribution
filter
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
JP2008545619A
Other languages
English (en)
Other versions
JP2009520216A (ja
JP2009520216A5 (ja
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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2009520216A publication Critical patent/JP2009520216A/ja
Publication of JP2009520216A5 publication Critical patent/JP2009520216A5/ja
Application granted granted Critical
Publication of JP5329971B2 publication Critical patent/JP5329971B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/24Generation of individual character patterns
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/24Generation of individual character patterns
    • G09G5/28Generation of individual character patterns for enhancement of character form, e.g. smoothing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0457Improvement of perceived resolution by subpixel rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Record Information Processing For Printing (AREA)

Description

多くのコンピューティングシステムは、テキストを画面または印刷されたページなどの他のなんらかの媒体上に表示することによりユーザに情報を提供できる。人間の視覚体系の物理的特性ならびに電子表示または印刷の技術の様々な種類および質が、テキストが提示可能な書体を開発する際に活字デザイナーに対して独特の課題を提供する。
活版印刷では、書体は、調整された一組の文字デザインで構成される。通常書体は、文字、数字、句読点、表意文字、および記号の文字体系(集合的に文字またはグリフと呼ばれる)で構成される。Arial、Times New Roman、Verdana、およびGeorgiaは、書体の4つの例である。従来、「フォント」という言葉は、特定のサイズ(通常ポイントで測られる)、幅(例えば、薄い(light)、書籍の(book)、太い(bold)、ブラックの(black))、および方向(例えば、ローマン体(roman)、イタリック体(italic)、斜体(oblique))においてすべて揃っている書体を指す。所与の書体に対して、各文字は典型的には単一のグリフに対応するが、いくつかの書体のある文字は、複数のグリフを含んでよい。
書体は、紙に描かれるか、またはコンピュータ描画アプリケーションで作成された一連のグリフとして作り出されることができる。例えば、描画されたグリフは、各グリフのアウトライン表示をレンダリングするためにスキャンおよびデジタル化されてよい。または書体は、異なるフォント形式の書体から変換(例えば、ラスター形式からTrueType形式でのアウトラインに)可能である。少なくともこれらの方法により、所与の書体のグリフは、フォントファイル内のアウトライン定義により定義可能である。
概して、グリフアウトライン定義は、一連の点および/または輪郭を指定する。単純なグリフアウトラインはただ1つの輪郭を有してよく、複雑なグリフは2つ以上の輪郭を有してよい。さらに、複合グリフは2つ以上のより単純なグリフを合成することにより構成でき、視覚表示されない特定の制御文字は輪郭を持たないグリフにマッピングする。
グリフがレンダリングされる際、グリフアウトラインは、フォントファイルならびに特定のフォントのサイズ(例えば、12ポイント)および表示解像度(例えば、72dpiまたはインチ当たりドット数)にスケーリングされたフォントキャッシュから読み込まれる。次にこのスケーリングされたアウトラインは、スケーリング処理により持ち込まれた任意の知覚されたエラーを修正するためにフォントヒンティング命令により変更されるが、フォントサイズおよび表示解像度の相互作用が丸め誤差をもたらし、意図しないゆがみおよび望まないゆがみをグリフアウトラインに持ち込む可能性がある。例示のエラーには、ドロップアウト(すなわち、グリフ内の意図しない隙間)、ストローク幅または文字の高さの意図しないばらつき等が含まれる可能性があるが、これに限定されない。
フォントヒンティングの一態様では、命令は、制御値テーブル(CVT:control value table)にアクセスして、その書体全体にわたり常に適用されるべきフォント制御値を決定してよい。このフォント制御値は、その書体内のグリフの一定の特性を指定できる。例えば、一定のストローク幅が、選択した書体内のグリフの垂直ストロークに対して指定されてよい。他の例示のフォント制御値は、ベースラインの上の小文字の高さ、文字(例えば、「O」)の丸い底部がベースラインの下に出てよい距離、小文字「i」のドットと垂直ストロークの上端との間の間隔、等を定義してよい。次にフォントヒンティング命令は、フォント制御値を満たすためにスケーリングされたフォントアウトラインを変更でき、その結果、所与の書体のグリフに対して一定の特性を与える。
しかし、書体内の大量のグリフを代表するフォント制御値を選択することは難しい。例えば、異なるグリフの元のアウトラインが、書体全体にわたる所与のフォントプロパティ(例えば、垂直ストローク幅)に、いくつかのわずかなばらつき、およびいくつかのあまりわずかでないばらつきを呈する可能性がある。したがって、計測されたフォントプロパティは、所与の書体全体にわたり著しく変動する可能性がある。その結果、活版技術者は、書体の複数のグリフ全体にわたりフォントプロパティの分布を手作業で、および主観的に測定して、1つまたは複数の「許容できる」フォント制御値を選択し、書体の全体またはいくつかの重要な部分を表示する可能性がある。残念ながら、フォント制御値の手作業の決定は、コストと時間がかかりすぎる。
本明細書で説明され請求される実装は、フォント制御値の閾値の個数が特定されるまでフォントプロパティ値の分布を漸進的にフィルタすることにより、フォント制御値選択の自動化を可能とする。フォントヒンティング命令は、これらのアルゴリズム的に決定されるフォント制御値を用いてパラメータ化されてよく、これらのフォント制御値は、その書体全体にわたるグリフアウトラインのフォントプロパティの計測から得られてよい。一実装では、計測されたフォントプロパティの分布は漸進的にフィルタされ、閾値条件などの所定の基準を満たす分布特性を特定する。その分布の閾値を満たす点に対応するフォントプロパティ値は、フォント制御値として割り当てられる。
いくつかの実装では、製造品がコンピュータプログラムの製品として提供されている。コンピュータプログラムの製品の一実装は、コンピュータシステムにより読み取り可能でコンピュータプログラムを符号化するコンピュータプログラムの記憶媒体を提供する。コンピュータプログラムの製品の他の実装が、コンピューティングシステムにより搬送波で実現され、コンピュータプログラムを符号化するコンピュータデータ信号で提供されてよい。他の実装もまた本明細書で説明される。
本要約は、詳細な説明において以下にさらに説明される概念の選択を簡略化した形で紹介するために設けられている。本要約は、特許請求の範囲の対象のキーとなる機能または基本的な機能を特定することを意図せず、特許請求の範囲の対象範囲を限定するために用いられることを意図しない。
スケーラブルなアウトラインフォントは、座標、数値の曲線、および/または他のパラメータにより表現される連続的な形状またはアウトラインとして定義される。ベースアウトラインは、個々のグリフが表示されるかまたはその他の方法で出力(例えば、印刷)される際に、メモリ(例えば、フォントファイルまたはフォントキャッシュ)から読むことができるフォント定義内に表現される。フォント定義は、フォントデザイン単位(または「フォント単位」)でx軸およびy軸を有するCartesianグリッドに基づいてよいが、他の座標フレームワークが用いられてよい。このようなフォント単位を用いて、指定された書体内のグリフのベースアウトラインが、表示されるグリフのサイズまたは出力装置の解像度に関わりなく表現されてよい。
グリフが生成される際、ベースアウトラインは、指定されたサイズにスケーリングされ、次に指定されたサイズのディスプレイまたはハードコピー出力装置上に不連続なドットのラスター(例えば、画素のビットマップ)を作成するために用いられる。このようなビットマップが、その中心がスケーリングされたアウトラインの中にある各画素またはプリンタセルを単にオフにするなど、単純化した方法で作成される場合、形状における特徴の調整不良および切断(「ドロップアウト」と呼ばれる)など、いくつかの視覚的に気を散らす成果物が現れる可能性がある。例えば、グリフが小さいサイズでおよび/または低解像度ディスプレイにスケーリングされレンダリングされる場合、その結果得られた画素が実際には大きく不連続でありすぎ、スケーリングされたアウトラインを完全にたどれないため、グリフを表示するためにオン/オフされた画素は、スケーリングされたアウトラインに大ざっぱに近づくだけである。
したがって、「フォントヒンティング」と呼ばれる追加処理を用いて、所与のサイズおよび表示解像度に対してグリフのレンダリングを最適化できる。フォントヒンティングコードが、個々のグリフのそれぞれのフォント定義内に含まれるか、または関連付けられることができる。フォントヒンティングは、フォントのラスター化を向上させるためにラスター・イメージ・プロセッサ(RIP:raster image processor)に情報を提供する。例えば、フォントヒンティングを用いて、レンダリングを向上させるように、スケーリングされたアウトラインを変更またはゆがませてよい。他の使用の中でも、フォントヒンティングを用いて、(1)均等な太さになるように意図されたストロークが均等に太く見えることを保証し、(2)望まないオーバーシュート(例えば、「O」などの丸い文字が、意図せずにスケーリングされ、「M」などの平坦な文字より高く見える場合)を抑え、(3)同一の高さであるべきである異なるグリフ上の特徴をそろえ、(4)ステムの間の間隔を開いた状態に保ち(例えば、「m」の垂直ストロークの間の間隔が目に見えるようにすべきである)、(5)平行のストロークの組の間に一定の間隔をとることを強制し、(6)ドロップアウトの原因となるエラーなど、ラスター化アルゴリズムにおけるエラーを補正することができる。
一実装では、フォントヒンティング命令は、2つのカテゴリ、すなわち(1)フォント当たり、および(2)グリフ当たりに分割できる。フォント当たりの命令は、書体内の複数の文字に関連付けられるフォント制御値に基づき個々のグリフのアウトラインを変更する。例えば、Courier New書体の多くのまたはすべてのグリフに関連付けられる垂直ストローク幅は84フォント単位である。したがって、フォント当たりの命令は、このようなグリフの個々のスケーリングされたアウトラインの垂直ストローク幅を変更し、Courier New書体に対して指定された垂直ストローク幅を満たすことができる。このように、共通のフォントのグリフは、一定の特性でレンダリングする傾向があり、その結果すべてのこのようなグリフが書体全体にわたり同様の雰囲気および読みやすさを反映する。それに対して、グリフ当たりの命令は、個々のグリフに対して特定の変更を行うように指示される。例えば、グリフ当たりの命令は、小文字「m」の垂直ストロークが、均等で認識できる垂直ストローク幅およびカウンタストローク幅(例えば、グリフの垂直ストロークの間の「間隔」)でレンダリングされることを保証する可能性がある。
フォント当たりの命令は、制御値テーブル(CVT)からのフォント当たり制御値(「フォント制御値」と呼ばれる)を用いてパラメータ化されてよい。個々のフォント制御値は、書体全体にわたるグリフアウトラインのプロパティ(「フォントプロパティ」と呼ばれる)の計測から導かれてよい。しかし、これらの計測は、書体全体にわたり著しくばらつきがある可能性があるため、1つまたは複数のフォント制御値の選択は、可能性のあるフォントプロパティ計測の分布からアルゴリズム的に行われ、その書体の複数のグリフ全体にわたり適用される。このアルゴリズムによる選択は、自動ヒンティングモジュールにより実行され、CVTのフォント制御値を取得する。
図1は、フォント生成システムにおける例示の自動ヒンティングモジュール100を示す。書体におけるグリフアウトラインの表現102は、フォントライブラリまたは他のデータストア内に格納される。図式ブロック104は、例示のグリフの部分、すなわちTimes New Romanでの大文字「H」の垂直右ステム106、および垂直左ステム108を有するTimes New Romanでの大文字「B」の底部を示す。垂直右ステム106は、デジタル化されたアウトラインに基づき、233フォント単位のストローク幅を有する。それに対して、垂直左ステム108は、デジタル化されたアウトラインに基づき、230のストローク幅を有する。
アウトラインが、(例えば、テキストレンダリングシステムのスケーリングモジュール110により)スケーリングされる際、表示解像度により影響される丸め誤差が、2つのストローク幅が人目を引く分量だけ異なる原因となる可能性がある(垂直右ステム114は11画素幅であり、垂直左ステム116は10画素幅である図式ブロック112を参照されたい)。したがって、テキストレンダリングシステムのフォント当たり作成モジュール118は、より一定のレンダリングを達成するためのフォント当たりの命令をパラメータ化するための制御値データストア120(例えば、制御値テーブルまたはCVT)からフォント制御値を抽出する。図1の例では、垂直ストローク幅に対するフォント制御値は11に等しい。したがって、図式ブロック122に見られるように、フォント当たり作成モジュール118は、スケーリングされたアウトラインを変更して、11画素幅の垂直右ステム124および11画素幅の垂直左ステム126を出力する。このように、同一フォントのグリフは、指定されたサイズおよび表示解像度でレンダリングされると、スケーリング操作で持ち込まれる丸め誤差に関わらず、一定の雰囲気および読みやすさを表す。
CVTのフォント制御値を選択する一実装では、自動ヒンティングモジュール100は、所与の書体に対するグリフアウトラインをフォントライブラリから読み込み、各グリフアウトラインの特定のフォントプロパティの分布を生成する(例えば、図2の分布202および204を参照されたい)。例示のフォントプロパティは、以下を含んでよいがこれに限定されない。
(1)大文字および小文字のフラットベース − 文字ベースライン
(2)大文字のラウンドベース − 丸い文字(大文字「O」など)が平坦なベースラインの下に出る分量
(3)小文字のラウンドベース − 丸い文字(小文字「o」など)が平坦なベースラインの下に出る分量
(4)数字のラウンドベース − 丸い数字(数字ゼロまたは「0」など)が平坦なベースラインの下に出る分量
(5)xハイト(x−height)・フラット − 上端が平坦な小文字(小文字「x」など)の高さ
(6)xハイト・ラウンドオーバーラップ − 丸い小文字(「o」のような)がxハイト・フラットの上に出る分量
(7)フラットキャップ − 上端が平坦な大文字(「X」のような)の高さ
(8)ラウンドキャップ − 丸い大文字(「O」のような)がフラットキャップの上に出る分量
(9)数字フラット − 上端が平坦な数字(「7」のような)の高さ
(10)数字ラウンドトップ − 丸い数字(「0」のような)が数字フラットの上に出る分量
(11)フラット・アセンダ(ascender) − 小文字「x」の上に出る(ascending)、平坦な上端の小文字の高さ(小文字「l」など)
(12)フラット・ディセンダ(descender) − 小文字のベースラインの下に出る(descending)、平坦な底部の小文字の高さ(小文字「p」など)
(13)ラウンド・ディセンダ − 小文字のベースラインの下に出る、丸い底部の小文字の高さ(小文字「g」など)
(14)「i」のドットと上部の間の間隔
書体全体にわたるフォントプロパティの分布がCVTの閾値を越えないいくつかの極大値を示す場合、自動ヒンティングモジュール100は、制御値テーブルのフォント制御値をこれらの極大値に等しく設定する。例えば、所与のフォントプロパティの分布が、書体全体にわたり単一の値に限定される可能性がある。この場合、そのフォントプロパティに対応する制御値は、その単一の値に設定される。しかし多くの場合、フォントプロパティの分布は、ある範囲にわたり分布する多くの可能性のあるフォントプロパティ値を含む可能性がある。したがって、自動ヒンティングモジュール100は、フィルタリング手法を用いて、フォントプロパティの分布に基づき適切な個数のフォント制御値を選択する。
離散分析のためのフォントプロパティ差の極小値、最低極値、最高極値、または標準偏差点、メジアン、平均等などの他の統計手段、あるいは連続分析のための微積分を含む他の分布の特性が用いられてフォント制御値を選択できることを理解されたい。
図2は、例示の漸進的なフィルタリング結果200を示す。分布202は、Times New Roman書体における一組のグリフ全体にわたる34垂直ストローク幅の分布を表す。ストローク幅(フォント単位の水平軸に沿ってグラフに記入される)は、88フォント単位から232フォント単位まで変動していることに留意されたい。y軸は、所与のストローク幅の頻度を表す。それに対して、分布204は、Courier New書体における一組のグリフ全体にわたる37垂直ストローク幅の分布を表す。Courier Newは、この書体全体にわたりほぼ完全に均一のストローク幅を有する書体であるため、垂直ストローク幅の分布は、約84フォント単位に計測されるほぼ単一の値である。分布202および204の両方は、「フィルタ幅=0フォント単位」という説明により示されるようにフィルタされていない。
一実装では、限定された個数のフォント制御値を選択するために、自動ヒンティングモジュールは、許容できる個数の極大値(すなわち、CVTの閾値)に達するまで一連のフィルタリング操作を使用する。一実装では、高頻度データを抑えるフィルタが用いられ、特に、ガウス分布ぼかしフィルタ(Gaussian blur filter)が用いられるが、ボックスフィルタ(box filter)、シンクフィルタ(sinc filter)または高頻度のノイズを低減させる他のフィルタを含む他のフィルタも考えられる。3フォント単位のフィルタ幅を有するガウス分布ぼかしフィルタを分布202に適用することにより、フィルタされた分布206が得られる。自動ヒンティングモジュールは、フィルタ分布の極大値を(例えば、分布に沿って移動し、そこで検知された極大値をカウントすることにより)カウントする。
図2の例では、2というCVTの閾値を仮定することが用いられている。フィルタされた分布206は、フィルタされていない分布202と比べるといくらか平滑化されているが、6つの極大値はCVTの閾値条件を満たしていない。したがって、より強力なフィルタリング(すなわち、9フォント単位のフィルタ幅)が適用され、フィルタされた分布208を得る。またもや、5つの極大値はCVTの閾値条件を満たしていない。漸進的なフィルタリングが以下に示す例示のフィルタリング結果を続ける。
(1)フィルタ幅=11フォント単位 フィルタされた分布210では4つの極大値
(2)フィルタ幅=19フォント単位 フィルタされた分布212では3つの極大値
(3)フィルタ幅=33フォント単位 フィルタされた分布214では2つの極大値
フィルタされた分布214は、2というCVTの閾値条件を満たす。したがって、2つの極大値のx値(90フォント単位および193フォント単位)が、Times New Roman書体のCVTの垂直ストローク幅に関して対応するフォント制御値として選択される。
他の実装では、漸進的なフィルタリングは、カスケードの個々の段階での分布が漸進的により目立つフィルタリング効果を呈するように、異なるプロパティを伴うカスケード式フィルタを必要としてよい。
図3は、自動化されたフォント制御値決定の例示の操作300を示す。受信操作302は、フォントライブラリからなど、所与の書体に対するデジタル化したグリフアウトラインを受信する。自動ヒンターの分布モジュールは、グリフアウトラインの分析からフォントプロパティの分布を生成する分布操作304を実行する。一実装では、例えば、分布操作304は、上端が平坦な文字のグリフの最高点を「xハイト・フラット」プロパティとして特定し、各グリフに対してこの点に合わせたy座標を記録する。他の実装では、分布操作304は、重要な垂直ストロークを特定し、「xステム幅」プロパティ分布のためにそれらの幅を計測する。他のフォントプロパティ分布は、同様の方法で生成できる。
自動ヒンターの特定モジュールは、フォントプロパティ分布の極大値を特定およびカウントする極大値操作306を実行する。一実装では、極大値操作306は、軸に沿って移動し、より低い隣接した点を両側に有する分布上の点を検出する。別の実装では、任意の標準的な微積分、または極値プロパティ(例えば、極大値、極小値等)を有する幾何学的軌跡を特定する他の数学操作が用いられてよい。
分布内の極大値のカウントされた個数がCVTの閾値より大きくない場合、CVTの閾値条件が決定操作308により満たされたと考えられ、処理は対応する制御当たりの値を極大値のx座標に設定する設定操作312(例えば、自動ヒンターの設定モジュールにより実行される)に進む。そうではなく、CVTの閾値条件が満たされない場合、自動ヒンターのフィルタリングモジュールにより実行されるフィルタリング操作310は、フィルタされた分布を得るために分布をフィルタし、処理は極大値操作306に戻り、フィルタされた分布内の極大値を特定およびカウントする。それぞれの繰り返しで、図2に関して図示され説明されたように、CVTの閾値条件が満たされるまでフィルタリング強度は増加し、フォント制御値が設定操作312の極大値に基づき設定される。
本発明を実装する図4の例示のハードウェアおよびオペレーティング環境は、コンピュータ20の形の汎用コンピューティング装置を含み、コンピュータ20は、処理装置21、システムメモリ22、およびシステムメモリを含む様々なシステム要素を処理装置21へ動作可能なように接続するシステムバス23を含む。ただ1つの処理装置21が存在してもよく、または1つより多い処理装置21が存在してもよく、その結果コンピュータ20のプロセッサは、単一の中央演算処理装置(CPU)、または並列処理環境と通常呼ばれる複数の処理装置を備える。コンピュータ20は、従来のコンピュータ、分散コンピュータ、または任意の他のタイプのコンピュータであってよく、本発明はそのような制限をうけることはない。
システムバス23は、いくつかのタイプのバス構造のうちの任意のものでよく、これらのバス構造は、様々なバスアーキテクチャのうちの任意のものを用いるメモリバスまたはメモリコントローラ、周辺バス、スイッチファブリック、2地点間接続、およびローカルバスを含む。システムメモリはまた、単にメモリと呼ばれてよく、読み出し専用メモリ(ROM)24およびランダムアクセスメモリ(RAM)25を含む。基本入出力システム(BIOS)26は、起動中などにコンピュータ20内の要素間で情報を移送することを助ける基本ルーチンを含むが、ROM24に格納される。さらにコンピュータ20は、ハードディスク(図示せず)から読み取り、ハードディスクへ書き込むハードディスクドライブ27、リムーバブル磁気ディスク29から読み取り、リムーバブル磁気ディスク29へ書き込む磁気ディスクドライブ28、およびCD ROMまたは他の光学媒体などのリムーバブル光ディスク31から読み取り、リムーバブル光ディスク31へ書き込む光ディスクドライブ30を含む。
ハードディスクドライブ27、磁気ディスクドライブ28、および光ディスクドライブ30は、システムバス23にそれぞれハードディスクドライブインターフェース32、磁気ディスクドライブインターフェース33、および光ディスクドライブインターフェース34により接続される。ドライブおよびその関連したコンピュータ可読媒体は、コンピュータ20のためにコンピュータ可読の命令、データ構造、プログラムモジュールおよび他のデータの非揮発性の保存を行う。磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)等など、コンピュータによりアクセス可能なデータを格納できる任意のタイプのコンピュータ可読媒体は、例示のオペレーティング環境内で用いられてよいことを当業者は理解されたい。
オペレーティングシステム35、1つまたは複数のアプリケーションプログラム36、他のプログラムモジュール37、およびプログラムデータ38を含むいくつかのプログラムモジュールは、ハードディスク、磁気ディスク29、光ディスク31、ROM24、またはRAM25上に格納できる。ユーザは、コマンドおよび情報をパーソナルコンピュータ20にキーボード40およびポインティングデバイス42などの入力装置を介して入力できる。他の入力装置(図示せず)は、マイクロフォン、ジョイスティック、ゲームパッド、パラボラアンテナ、スキャナ等を含んでよい。これらのおよび他の入力装置は、処理装置21に、システムバスに接続されるシリアルポートインターフェース46を介して接続されることが多いが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)などの他のインターフェースにより接続されてよい。モニタ47または他のタイプのディスプレイ装置もシステムバス23にビデオアダプタ48などのインターフェースを介して接続される。モニタに加え、コンピュータは典型的にはスピーカおよびプリンタなどの他の周辺出力装置(図示せず)を含む。
コンピュータ20は、リモートコンピュータ49などの1つまたは複数のリモートコンピュータへの論理接続を用いてネットワーク環境で動作してよい。これらの論理接続は、コンピュータ20に接続されるかまたはコンピュータ20の一部である通信装置により実現され、本発明は特定のタイプの通信装置に限定されない。リモートコンピュータ49は、他のコンピュータ、サーバ、ルータ、ネットワークPC、クライアント、ピアデバイスまたは他の一般的なネットワークノードであってよく、メモリ記憶装置50のみが図4で示されているが、典型的にはコンピュータ20に対して上述された多くのまたはすべての要素を含む。図4に図示された論理接続は、ローカルエリアネットワーク(LAN)51および広域ネットワーク(WAN)52を含む。このようなネットワーク環境は、オフィスネットワーク、企業規模のコンピュータネットワーク、イントラネットおよびインターネットで一般的であり、これらはすべてのタイプのネットワークである。
LANネットワーク環境で使われるとき、コンピュータ20は、ローカルネットワーク51にネットワークインターフェースまたはアダプタ53を介して接続され、このインターフェースは1つのタイプの通信装置である。WANネットワーク環境で使われるとき、コンピュータ20は、典型的には広域ネットワーク52を介して通信を確立するためのモデム54、ネットワークアダプタ、一タイプの通信装置、または任意の他のタイプの通信装置を含む。モデム54は、内蔵型または外付け型であってよいが、システムバス23にシリアルポートインターフェース46を介して接続される。ネットワーク環境では、パーソナルコンピュータ20に対して図示されたプログラムモジュールまたはその部分は、リモートメモリ記憶装置に格納されてよい。図示のネットワーク接続は例示であり、コンピュータ間の通信リンクを確立する他の手段の通信装置が使用されてよいことを理解されたい。
例示の実装では、スケーリングモジュール、自動ヒンティングモジュール、フォント当たり作成モジュール、レンダリングモジュール、決定モジュール、および他のモジュールは、メモリ404ならびに/または記憶装置408および410内に格納され、処理装置402により処理される命令により実装されてよい。フォント定義、フォントヒンティング命令、フォントプロパティ分布、CVT、CVTの閾値、レンダリングされたビットマップ、および他のデータは、メモリ404ならびに/または記憶装置408および410内に格納されてよい。
本明細書で説明した技術は、1つまたは複数のシステム内の論理操作および/またはモジュールとして実装される。論理操作は、1つまたは複数のコンピュータシステムで実行する一連のプロセッサ実装のステップとして、および1つまたは複数のコンピュータシステム内で相互接続したマシンまたは回路モジュールとして実装されてよい。同様に、様々なコンポーネントモジュールの説明がモジュールにより実行されるかまたは行われる操作に関して行われてよい。その結果の実装は選択できる問題であり、説明された技術を実装する基礎となるシステムの性能要件に依存する。したがって、本明細書で説明した技術の実施形態を作り上げる論理操作は、操作、ステップ、オブジェクト、またはモジュールとして様々に参照される。さらに、他の方法で明示的にクレーム化されないかまたは特定の順序がクレーム文言により本質的に必要とされないならば、論理操作が任意の順序で実行されてよいことを理解されたい。
上記の明細書、例およびデータは、本発明の例示の実施形態の構造および使用の完全な説明を提供する。本発明の様々な実施形態が、ある程度の特殊性を伴ってまたは1つまたは複数の個々の実施形態を参照して、上記で説明されてきたが、当業者は、本発明の精神および範囲から逸脱することなく、開示した実施形態に多くの変更を行うことができる。特に、説明された技術はパーソナルコンピュータと無関係に用いられてよいことを理解されたい。したがって、他の実施形態が考えられる。上述の説明に含まれ、添付の図面に示されたすべての内容は、特定の実施形態の例示にすぎず、限定するものではないと解釈すべきであることを意図している。詳細または構造における変更が、特許請求の範囲に定義される本発明の基本要素から逸脱することなく行うことができる。
本対象は、構造的な機能および/または方法論的な行為に特有な言葉で説明されてきたが、添付の特許請求の範囲で定義される対象は、上述の具体的な機能または行為に必ずしも限定されないことを理解されたい。むしろ、上述の具体的な機能および行為は、特許請求の範囲を実装する形式例として開示される。
フォント生成システムにおける例示の自動ヒンティングモジュールを示す図である。 例示の漸進的なフィルタリング結果を示す図である。 自動化されたフォント制御値の決定のための例示の操作を示す図である。 説明された技術を実装する際に有用である可能性がある例示のシステムを示す図である。

Claims (14)

  1. コンピュータシステムを使用して、フォントヒンティング命令をパラメータ化する際に用いる1つまたは複数のフォント制御値を生成する方法であって、前記フォント制御値は書体と関連付けられ、
    中央演算処理装置を使用して、前記書体のグリフのフォントプロパティの計測に基づきフォントプロパティ分布を生成するステップと、
    高頻度データを抑えるフィルタを用いて、フィルタされたフォントプロパティ分布が所定の基準を満たすまで、次第により大きくなるフィルタ幅で前記フォントプロパティ分布を漸進的にフィルタして、前記書体のためのフィルタされたフォントプロパティ分布を生成するステップであって、前記所定の基準は、前記フィルタされたフォントプロパティ分布内の極大値の最大個数、または前記書体の前記フォントプロパティに関連付けられるフォント制御値の最大個数を表す、ステップと、
    前記1つまたは複数のフォント制御値を前記フィルタされたフォントプロパティ分布から得られたフォントプロパティ値に設定するステップと、
    前記1つまたは複数のフォント制御値を制御値データストアに格納するステップと、
    を含む方法。
  2. 前記漸進的にフィルタするステップの操作は、
    ボックスフィルタを使用して前記フォントプロパティ分布をフィルタする、請求項1に記載の方法。
  3. 前記漸進的にフィルタするステップの操作は、
    前記フィルタされたフォントプロパティ分布内の1つまたは複数の極大値を特定するステップと、
    前記フィルタされたフォントプロパティ分布内の前記1つまたは複数の極大値の個数をカウントするステップと
    を含む、請求項1に記載の方法。
  4. 前記漸進的にフィルタするステップの操作は、
    カスケードの個々の段階での分布が、漸進的により目立つフィルタリング効果を呈するように、異なるプロパティを有するカスケード式フィルタである、請求項1に記載の方法。
  5. 前記漸進的にフィルタするステップの操作は、
    ガウス分布ぼかしフィルタを用いて前記フォントプロパティ分布をフィルタするステップを含む、請求項1に記載の方法。
  6. 前記漸進的にフィルタするステップの操作は、
    中間のフィルタされたフォントプロパティ分布を生成するために、第1のフィルタ幅で前記フォントプロパティ分布をフィルタするステップと、
    前記中間のフィルタされたフォントプロパティ分布が前記所定の基準を満たさない場合、前記フィルタされたフォントプロパティ分布を生成するために、前記第1のフィルタ幅より大きな第2のフィルタ幅で前記フォントプロパティ分布をフィルタするステップと
    を含む、請求項1に記載の方法。
  7. コンピュータに請求項1〜6の何れか1項に記載の方法を実行させるためのプログラムを記録したコンピュータ可読記録媒体。
  8. フォントヒンティング命令をパラメータ化する際に用い、書体と関連付けられた1つまたは複数のフォント制御値、を生成するシステムであって、
    中央演算処理装置と、
    前記中央演算処理装置と結合され、前記1つまたは複数のフォント制御値を格納する制御値データストアを備えたメモリと、
    前記書体の異なるグリフのフォントプロパティの計測に基づき、前記書体のフォントプロパティ分布を生成する分布モジュールと、
    高頻度データを抑えるフィルタを用いて、フィルタされたフォントプロパティ分布が所定の基準を満たすまで、次第により大きくなるフィルタ幅で前記フォントプロパティ分布を漸進的にフィルタするフィルタモジュールであって、前記所定の基準は、前記フィルタされたフォントプロパティ分布内の極大値の最大個数、または前記書体の前記フォントプロパティに関連付けられるフォント制御値の最大個数を表す、フィルタモジュールと、
    前記制御値データストアの前記1つまたは複数のフォント制御値を、前記フィルタされたフォントプロパティ分布から得られたフォントプロパティ値に設定する制御値設定モジュールと、
    を備えるシステム。
  9. 前記フィルタモジュールは、ボックスフィルタを使用して前記フォントプロパティ分布を漸進的にフィルタする、請求項8に記載のシステム。
  10. 前記フィルタモジュールは、前記フィルタされたフォントプロパティ分布内の1つまたは複数の極大値を特定し、前記フィルタされたフォントプロパティ分布内の前記1つまたは複数の極大値の個数をカウントする、請求項8に記載のシステム。
  11. 前記フィルタモジュールは、カスケードの個々の段階での分布が、漸進的により目立つフィルタリング効果を呈するように、異なるプロパティを有するカスケード式フィルタで、前記フォントプロパティ分布を漸進的にフィルタする、請求項8に記載のシステム。
  12. 前記フィルタモジュールは、ガウス分布ぼかしフィルタを用いて前記フォントプロパティ分布を漸進的にフィルタする、請求項8に記載のシステム。
  13. 前記フィルタモジュールは、中間のフィルタされたフォントプロパティ分布を生成するために、第1のフィルタ幅で前記フォントプロパティ分布を漸進的にフィルタし、前記中間のフィルタされたフォントプロパティ分布が前記所定の基準を満たさない場合、前記フィルタされたフォントプロパティ分布を生成するために、前記第1のフィルタ幅より大きな第2のフィルタ幅で前記フォントプロパティ分布をフィルタする、請求項8に記載のシステム。
  14. フォントヒンティング命令をパラメータ化する際に用い、書体と関連付けられた1つまたは複数のフォント制御値を、生成するシステムであって、
    中央演算処理装置と、
    前記中央演算処理装置と結合され、前記1つまたは複数のフォント制御値を格納する制御値データストアを備えたメモリと、
    前記書体の異なるグリフのフォントプロパティの計測に基づき、前記書体のフォントプロパティ分布を生成する手段と、
    高頻度データを抑えるフィルタを用いて、フィルタされたフォントプロパティ分布が所定の基準を満たすまで、次第により大きくなるフィルタ幅で前記フォントプロパティ分布を漸進的にフィルタする手段であって、前記所定の基準は、前記フィルタされたフォントプロパティ分布内の極大値の最大個数、または前記書体の前記フォントプロパティに関連付けられるフォント制御値の最大個数を表す、手段と、
    前記制御値データストアの前記1つまたは複数のフォント制御値を、前記フィルタされたフォントプロパティ分布から得られたフォントプロパティ値に設定する手段と、
    前記1つまたは複数のフォント制御値を制御値データストアに格納する手段と、
    を備えるシステム。
JP2008545619A 2005-12-19 2006-11-22 フォント制御値を生成する方法、コンピュータ可読記録媒体、及びシステム Expired - Fee Related JP5329971B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/312,921 US20070139412A1 (en) 2005-12-19 2005-12-19 Automatic font control value determination
US11/312,921 2005-12-19
PCT/US2006/045435 WO2007075250A1 (en) 2005-12-19 2006-11-22 Automating font control value determination

Publications (3)

Publication Number Publication Date
JP2009520216A JP2009520216A (ja) 2009-05-21
JP2009520216A5 JP2009520216A5 (ja) 2009-12-03
JP5329971B2 true JP5329971B2 (ja) 2013-10-30

Family

ID=38172891

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008545619A Expired - Fee Related JP5329971B2 (ja) 2005-12-19 2006-11-22 フォント制御値を生成する方法、コンピュータ可読記録媒体、及びシステム

Country Status (8)

Country Link
US (1) US20070139412A1 (ja)
EP (1) EP1963990B1 (ja)
JP (1) JP5329971B2 (ja)
KR (1) KR101357954B1 (ja)
CN (1) CN101341481A (ja)
AT (1) ATE548698T1 (ja)
BR (1) BRPI0619042A2 (ja)
WO (1) WO2007075250A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8253742B2 (en) 2004-05-28 2012-08-28 Microsoft Corporation Rendering stroke pairs for graphical objects
US7292249B2 (en) * 2004-05-28 2007-11-06 Microsoft Corporation Appropriately rendering a graphical object when a corresponding outline has excessive control points
US7256786B2 (en) * 2004-05-28 2007-08-14 Microsoft Corporation Appropriately rendering a graphical object when a corresponding outline has exact or inexact control points
US8239763B1 (en) 2009-01-07 2012-08-07 Brooks Ryan Fiesinger Method and apparatus for using active word fonts
US9319444B2 (en) 2009-06-22 2016-04-19 Monotype Imaging Inc. Font data streaming
US8615709B2 (en) 2010-04-29 2013-12-24 Monotype Imaging Inc. Initiating font subsets
US9817615B2 (en) 2012-12-03 2017-11-14 Monotype Imaging Inc. Network based font management for imaging devices
US9569865B2 (en) 2012-12-21 2017-02-14 Monotype Imaging Inc. Supporting color fonts
US9626337B2 (en) 2013-01-09 2017-04-18 Monotype Imaging Inc. Advanced text editor
KR102178258B1 (ko) * 2013-09-27 2020-11-12 삼성전자주식회사 디스플레이 장치 및 이의 글자 효과 제공 방법
US9317777B2 (en) 2013-10-04 2016-04-19 Monotype Imaging Inc. Analyzing font similarity for presentation
US9691169B2 (en) * 2014-05-29 2017-06-27 Monotype Imaging Inc. Compact font hinting
US10115215B2 (en) 2015-04-17 2018-10-30 Monotype Imaging Inc. Pairing fonts for presentation
US11537262B1 (en) 2015-07-21 2022-12-27 Monotype Imaging Inc. Using attributes for font recommendations
EP3479368A4 (en) * 2016-07-01 2019-11-20 Blodgett, Sarah K. PROCEDURE FOR LEARNING READING BY USING SPECIAL TEXT
US11334750B2 (en) 2017-09-07 2022-05-17 Monotype Imaging Inc. Using attributes for predicting imagery performance
US10909429B2 (en) 2017-09-27 2021-02-02 Monotype Imaging Inc. Using attributes for identifying imagery for selection
US11657602B2 (en) 2017-10-30 2023-05-23 Monotype Imaging Inc. Font identification from imagery
US11687626B2 (en) * 2020-06-17 2023-06-27 Capital One Services, Llc System and method for securing a browser against font usage fingerprinting
CN114492300A (zh) * 2020-11-13 2022-05-13 西安诺瓦星云科技股份有限公司 文字处理方法、装置及系统、存储介质和显示控制卡
US11720740B2 (en) * 2021-12-06 2023-08-08 Read TwoGether Ltd. Reducing interference between two texts

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03269665A (ja) * 1990-03-19 1991-12-02 Fujitsu Ltd 文字原図および文字フォント管理方式
JPH0424781A (ja) * 1990-05-15 1992-01-28 Canon Inc 文書処理装置
US5128525A (en) * 1990-07-31 1992-07-07 Xerox Corporation Convolution filtering for decoding self-clocking glyph shape codes
US5463720A (en) * 1992-09-28 1995-10-31 Granger; Edward M. Blue noise based technique for use in a halftone tile oriented screener for masking screener induced image artifacts
US5664086A (en) * 1993-04-16 1997-09-02 Adobe Systems Incorporated Method and apparatus for generating digital type font, and resulting fonts using generic font and descriptor file
US5664216A (en) * 1994-03-22 1997-09-02 Blumenau; Trevor Iconic audiovisual data editing environment
US5598520A (en) * 1994-09-26 1997-01-28 Microsoft Corporation Methods and apparatus for hinting a font for controlling stem width as font size and resolution of output device vary
US6008820A (en) * 1995-08-04 1999-12-28 Microsoft Corporation Processor for controlling the display of rendered image layers and method for controlling same
US5803629A (en) * 1997-03-14 1998-09-08 Paul H. Neville Method and apparatus for automatic, shape-based character spacing
US6249908B1 (en) * 1998-03-27 2001-06-19 Microsoft Corporation System and method for representing graphical font data and for converting the font data to font instructions
US7064757B1 (en) * 1999-05-07 2006-06-20 Apple Computer, Inc. Automatic synthesis of font tables for character layout
US6738526B1 (en) * 1999-07-30 2004-05-18 Microsoft Corporation Method and apparatus for filtering and caching data representing images
US7184046B1 (en) * 1999-09-28 2007-02-27 Monotype Imaging Inc. Method and apparatus for font storage reduction
US6714677B1 (en) * 1999-12-17 2004-03-30 Xerox Corporation Use of correlation histograms for improved glyph decoding
US6760028B1 (en) * 2000-07-21 2004-07-06 Microsoft Corporation Methods and systems for hinting fonts
US7385606B2 (en) * 2002-12-18 2008-06-10 Microsoft Corporation International font measurement system and method

Also Published As

Publication number Publication date
US20070139412A1 (en) 2007-06-21
ATE548698T1 (de) 2012-03-15
JP2009520216A (ja) 2009-05-21
KR20080080547A (ko) 2008-09-04
EP1963990A1 (en) 2008-09-03
EP1963990A4 (en) 2010-09-29
BRPI0619042A2 (pt) 2011-09-20
KR101357954B1 (ko) 2014-02-03
CN101341481A (zh) 2009-01-07
WO2007075250A1 (en) 2007-07-05
EP1963990B1 (en) 2012-03-07

Similar Documents

Publication Publication Date Title
JP5329971B2 (ja) フォント制御値を生成する方法、コンピュータ可読記録媒体、及びシステム
US7583267B2 (en) Stroke contrast in font hinting
US5598520A (en) Methods and apparatus for hinting a font for controlling stem width as font size and resolution of output device vary
EP1741063B1 (en) Edge detection based stroke adjustment
US20070139413A1 (en) Composite characters font hinting
JP2007058868A (ja) 置換コンピュータ字体の供給方法及び装置
US6614432B1 (en) Image rendering technique
JP2013061660A (ja) 低解像度ディスプレイのためのストロークベースのフォント文字を生成する方法
KR101169078B1 (ko) 대응하는 아웃라인에 컨트롤 포인트가 부족한 경우에그래픽 오브젝트를 적절하게 렌더링하는 방법
US5489920A (en) Method for determining the optimum angle for displaying a line on raster output devices
JP2909273B2 (ja) アウトライン・フォントの線幅調整方法および装置
JP2006171675A (ja) シルエット化グレーフォント発生方法
JP2009282855A (ja) 画像形成装置、グラデーション図形画像描画方法、グラデーション図形画像描画プログラム、及び記録媒体
KR20060021807A (ko) 스케일가능 스트로크 폰트 시스템 및 방법
US11443466B2 (en) Image forming apparatus that randomly processes outline data in association with a character code to render a character in different forms, image forming method including randomly processing outline data in association with a character code to render a character in different forms, and non-transitory computer readable recording medium that records an information processing program that realizes the image forming method including randomly processing outline data in association with a character code to render a character in different forms
US6927780B2 (en) Fast text/graphics resolution improvement with chain-code table look-up
KR20040031592A (ko) 아웃라인 폰트의 인자선 폭을 설정하는 기술
US20070196021A1 (en) System and method for creating synthetic ligatures as quality prototypes for sparse multi-character clusters
US7945119B2 (en) Optimizing character rendering
WO2015121962A1 (ja) 文字描画装置及び文字描画方法及び文字描画プログラム
JP2007280293A (ja) 画像処理装置および画像処理方法
Banjanin et al. Font hinting techniques and the importance of applying these techniques for high-quality display of fonts on the output device screen
KR100923572B1 (ko) 폰트 작성 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체
JPH11352953A (ja) アウトラインフォントの輪郭線表現方法、ラスタライザ、表示装置、及び記録媒体
JPH10111679A (ja) フォントファイル

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091013

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091013

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130411

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: 20130702

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130725

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees