2011-06-26 11 views
2

フォントのすべての文字がPNGでレンダリングされています。私はOpenGLでテクスチャマッピングされたフォントレンダリングにPNGを使用したいが、文字の位置とサイズなど、グリフ情報を抽出する必要がある。ビットマップフォントイメージからグリフデータを抽出するツール

そのプロセスを支援するツールはありますか?私が見るほとんどのツールは、イメージファイルとグリフデータを一緒に生成します。私は既存のイメージから抽出するのに役立つものは何も見つかりませんでした。

私は主なイメージエディタとしてgimpを使用しています。私は各文字の境界ボックスを特定するプロセスを支援するプラグインを作成することを検討しました。私はPythonを知っていますが、以前は何のgimpプラグインも行っていないので、それは雑用になります。私はすでに何かが存在することを望んでいます...

+0

手動で生成する必要があります。たとえば、各文字の周囲に罫線(アルファ値?)を配置します。 – nullpotent

+0

私はこれをある程度手作業で行う必要があると思っていますが、適切なツールを使うと簡単になります。私は各文字の境界ボックスをマークするのを助ける何かを考えています、そして、境界情報(x、y、幅、高さ)のテキストダンプを吐き出すでしょう。私はそれを最終的なグリフ情報のための他の形式に変えることができます。 –

+0

文字は少なくとも1行/列の「白」ピクセルで区切られていますか? – tzot

答えて

1

一般的に、この方法は、ツールを使用してグリフイメージを生成することです。このツールは、それらのグリフのメトリック情報(どれくらいの大きさなど)も生成します。グリフを見つけるためにイメージを分析するべきではありません。グリフがある場所、その大きさ、大きさなどを示す追加情報が必要です。

文字「i」を考慮してください。フォントによっては、その左右にいくらかのスペースがあります。グリフ「i」を識別できるツールを持っていても、フォントがグリフの左右に置かれるスペースのピクセル数を知る必要があります。これはすべての手紙について正確に行うことはかなり不可能です。非常に高度なコンピュータビジョンアルゴリズムなしではありません。そして、それらのグリフを生成したツールは、どれくらいの間隔を取るべきかを既に知っていたので、グリフ情報も書き込むためにツールを変更する方が良いでしょう。

+0

私は問題を十分に説明していませんでした...グリフ情報でイメージを再生成するオプションはありません - 私はイメージがあります。グリフを抽出する完全自動化されたソリューションは魅力的ですが、それは私が探しているものを超えています。 –

+0

@Jeremy Slade:あなたの質問を編集できるのは分かりますか?だから十分に説明しなければ、もう一度やり直してください。 –

0

PILを使用すると、プロセスを自動化するのに役立ちます。それだけ背景が含まれている場合

背景色分離ライン/文字の少なくとも一つの行/列が存在すると仮定すると、各列をチェックし(そして行の各列)するImage.crop方法を使用することができ色;したがって、あなたは各文字の境界を取得します。

さらなる支援が必要な場合は、Pingしてください。

関連する問題