問題タブ [glyph]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
193 参照

c++ - C++ 文字列の長さ: 配列要素とグリフ

string::size は、文字列を表すために必要な配列要素の数、または文字列をレンダリングするために必要なグリフの数を返しますか? wstring は同じように動作しますか?

0 投票する
0 に答える
72 参照

imagemagick - ImageMagick グリフ幅エラー

異なるフォントを使用して同じテキストの 2 つのバージョンを重ね合わせようとしています (アウトラインやマルチカラー文字などのテキスト効果を作成するため)。フォントは同一のグリフ幅で定義されています。Photoshop (または任意のテキスト処理ソフトウェア) を使用して 2 つのテキストを生成し、それらを重ねると、完全に収まります。しかし、ImageMagick はグリフの幅を気にしていないようで、独自の配置システムを使用しています。そのため、1 文字のテキストのみを表示する場合でも、2 つのレイヤーは収まりません。ImageMagick で使用されるフォント定義は何ですか?

「4」を表示するためのコマンドは次のとおりです。

テキストは画像プロセッサで動的に生成されるため、注釈オプションを使用してレイヤーを配置することは解決策にはなりません。

何か案は?

0 投票する
0 に答える
132 参照

jquery - JQuery は var のグリフを認識しません

入力タグに JQuery 検証を含むフォームがあり、いくつかのグリフがあります。入力フィールドが選択されている場合は、デフォルト値のみが消える必要があります。

完全なコードは次のとおりです。

HTML:

jQuery:

0 投票する
1 に答える
363 参照

internet-explorer - @font-face と IE9+ 入力タグ

私は理解できない問題を抱えています。問題は、企業サイトでカスタム フォントを使用していて、IE を除くすべての場所で問題なく動作することです。

以下のスクリーンショットで確認できる IE の問題: IEの問題

そして、それがクロムでどのように見えるかがあります クロム

説明してみます... 入力とラベルに使用されるフォントは同じです。問題は、 のキリル文字を除いて、すべてが期待どおりに表示されること<input/>です。では、このフォントの何が問題になっているのでしょうか。キリル文字を元に戻すにはどうすればよいですか? それらがフォントに存在することを正確に知っています。

このフォントは font に基づいておりMyriadPro Light、Glyphs を使用して編集されています。編集したフォントをダウンロードして、その構造を理解することができます。

UPD:ああ、言い忘れましたが、このフォントは 2 つの異なるコンバーター (FontSquirrel と OnlineFontConverter) を介して Web 用に変換されました。多分問題はそれらのコンバーターにありますか?*.woffこれはフォーマットの問題だと思うからです。たとえば、IE10 は次*.woff のファイルを使用します@font-face

UPD2: レイアウトの一部 (html+css):

HTML

フォントフェイス:

CSS

UPD 3: 再び問題が発生しました

残念ながら、問題はまだここにあります。現在、別のフォント「Futura Round Regular」で問題が発生しています。fontsquirellで変換したフォントを使用しています。以下の画像で効果を確認できます。

IEの問題

ご覧のとおり、入力の文字列の一部がキリル文字であり、「Times New Roman」と表示され、それ以外はすべて期待どおりに表示されています。この問題は、ほとんどのキリル文字フォントを使用する IE8-10 で発生します。フォントパックはこちらからダウンロードできます

0 投票する
2 に答える
2446 参照

c++ - テキストをメッシュに変換する

テキスト (文字列 + フォント) をメッシュ (頂点、インデックス、三角形など) に変換する必要がありますが、何も描画する必要はありません。ある API から文字列を取得し、それを頂点とインデックスとして別の API にプッシュします。これを行う最も簡単/簡単/最良の方法は何ですか? フォント メトリックとテキストの配置はもちろん利用可能で、他の変換は必要ありません。

私は現在VC++で作業しています。ただし、あらゆる種類のオープンソース (C/C++、C#、VB など) および「非オープンだが無料」の COM/.NET ライブラリは優れています。

FreeType について聞いたことがあります。それは私の祈りに答えますか、それとももっと良いものがありますか?

編集:Nico Schertler がコメントしたように、Mesh.TextFromFont -関数が DirectX -libs にあるようで、おそらくトリックを行います。ありがとうニコ!実際にこれをテストする時間があれば更新します。

0 投票する
1 に答える
1835 参照

fonts - TTFフォントファイルを解析してグリフ幅を取得するには?

TrueTypeフォントのグリフ幅をキャプチャするために、対応するTTFファイルを にfontforge変換しますAFM。これはテキスト形式 (バイナリではありません) です。次に、テキスト ファイルを解析してグリフ幅を取得します。

TTFバイナリファイルを直接解析してグリフ幅をキャプチャする簡単な方法があるはずです。

シェル スクリプトまたは C の戦略を高く評価しますが、アイデアが鍵であり、コードを適応させることができるため、どのプログラミング言語でも問題ありません。

0 投票する
1 に答える
482 参照

java - iText で TextMatrix を調整する

文字 M の行を含む PDF を生成しました。すべての M の幅は一貫していましたが、それぞれの間の距離は変化していました。最初のカップルは 2 ピクセル、5 番目は 3 ピクセル、次の 4 つは 2 ピクセル、10 番目は 3 ピクセルなどでした。

私のコードでは、M やその間のスペースに絶対的な違いはないため、結論としては、一部の幅の値が座標系で適切にスケーリングできず、余分なピクセルが頻繁に生成されるということだけです。

これは、グリフが描画されたときに PDF が水平方向にどれだけ移動するかを計算する方法です。

ここに画像の説明を入力

標準の 96DPI ディスプレイの計算では、各ピクセルは 0.75 単位で表されます (徹底的にチェックおよびテストされています)。

それを念頭に置いて、Tx 値が 0.75 で割り切れることを確認する必要があります。

これは私が知っていることです:

  1. w0 は widths 配列 (widths[]) からの整数です。
  2. Tfsは0.75で割り切れる数です(私が設定しました)
  3. Th は 100 (デフォルト)
  4. Tc と Tw は両方とも 0 (デフォルト)

したがって、Tj/1000 は整数である必要があります。つまり、Tj は 1000 で割り切れる必要があります。

1 つの方法は、Tj 値を取得して調整することです。これに対する別のアプローチは、Tx 値が計算されたらアクセスし、0.75 で割り切れる最も近い値に変更することです。

iTextでこれを行うにはどうすればよいですか?

それとも私の仮定全体が間違っていますか?

出典:リンク(252ページ)

0 投票する
0 に答える
159 参照

.net - .Net Unicode 文字マッピング

次の2つのクラスがあるとしましょう

メソッドGlyphTypefaceを介してクラスのインスタンスを作成できますが、オブジェクトを作成する前に、次のコンストラクターを使用してオブジェクトを作成しますTypeface.TryGetGlyphTypefaceGlyphTypefaceTypeface

オブジェクト fontFamily を作成するとき、fontName (たとえば Calibri) をハードコーディングしました。 グリフ インデックスCharacterToGlyphMapの.Net 自動入力プロパティ。GlyphTypeface

CharacterToGlyphMapフォント名(calibri)に依存する場合、人口を知りたいですか?実際の問題は、fontname(calibri) を使用しCharacterToGlyphMapてヒンディー語記号から値を取得しようとすると、「エラー キーが見つかりません」というエラーが発生することです。

0 投票する
0 に答える
236 参照

c# - 定義済み GRAFT ポイントへの BackwardQuadrilateralTransformation の適用

ここに示すように、Kinect を使用してキャンバス上で最大 4 つのグリフと描画とポリゴンを検​​出する小さな C# コードがあります。

ここに画像の説明を入力

2D 拡張現実を実装し、作成されたポリゴン内に画像を投影するために、これに従ってみました。ソース画像を読み込んで BackwardQuadrilateralTransformation を適用しようとしましたが、変換された画像を表示できないようです。おそらく間違った方法を使用していますが、画像を変換してキャンバスにペイントしようとしましたが、うまくいきませんでした。メソッドを大幅に誤解しているかどうかはわかりませんが、おそらくそれは不可能です。どんな助けも大歓迎です。必要に応じて、さらにサンプル コードを提供できます。

コードをさらにいじった後、部分的な解決策を開発したと思いますが、まだいくつかの作業が必要ですが、これが人々の読み取り/デバッグに役立つことを願っています.

0 投票する
0 に答える
176 参照

java - GlyphVector の視覚的、論理的、およびピクセル境界とは何ですか?

Java の GlyphVector は、オブジェクト全体に対して 3 種類の境界を返します。

3つの違いは何ですか?

ドキュメントはこれらの質問に答えません。