問題タブ [fontmetrics]
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.
java - FontMetrics の使用方法
JPanel で FontMetrics を使用する方法を誰かに説明してもらえますか? drawString() を使用して JPanel に描画するときに、文字列の幅と高さをピクセル単位で把握する必要があります。
ありがとう!
java - J2ME で AttributedString の幅を測定する
J2ME でJava Personal Basis Profileに対してコードを書いています。AttributedStringの幅をピクセル単位で測定する必要があります。
Java SE では、AttributedStringから AttributedCharacterIterator を取得し、それをFontMetrics #getStringBounds に渡しますが、J2ME PBP では、FontMetrics にはメソッドがなくgetStringBounds
、CharacterIterator を受け入れるその他のメソッドもありません。
私は何をしますか?
java - OpenGLのフォントメトリック
Java(FontMetrics)のようなフォントメトリックはありますか?
元:
java - Javaフォントアドバンス、文字幅
コンテクスト
次のコードは「見栄えの良い」ものを生成します"Hello World"
さて、代わりに、各文字列を描画し、fontMetrics.getCharWidth(c)
それまでに手動で進めると、狭く/混雑したように見え"Hello World"
ます。
質問
なぜこれが起こるのですか?各キャラクターの「前進」以外に、キャラクターの間隔を空けるために他に何を追加する必要がありますか?
java - FontMetrics setFont?
FontMetrics オブジェクト内に Font を設定する必要があるプログラムを作成しています。以前に fontmetrics を作成しましたが、Graphics オブジェクトにアクセスできなくなりました。それでも、FontMetrics 内のフォントを変更したい、つまり、新しいフォントで新しい FontMetrics を作成したいが、同じ Graphic コンテキストを使用したい。
Graphics を利用可能にすることはできますが、それには時間がかかり、そうするのはまったく意味がありません。もっと簡単な方法を知っている人はいますか?それは方法であるべきであることは明らかです。おそらく、本当にばかげたものを見逃しているだけです(ドキュメントを見て、何も見つかりませんでした)。
java - Javaグラフィックス:Graphics2Dを使用せずに、フォントからFontMetricsを構築する
既知
与えられたFontMetrics
FontMetrics
fromの保護されたコンストラクタがありFont
ます。
質問:
オブジェクトが与えられた場合、を経由せずにオブジェクトFont
を構築する方法はありますか?FontMetrics
Graphics2D.setFont
Graphics2D.getFontMetric()
コンテクスト
私はレンダリングアルゴリズムのようなTeXで遊んでいます。*.pfbファイルからさまざまな文字のバウンディングボックスなどを計算する必要があります。*.pfbファイルからFontオブジェクトを作成できます。FontMetrics
上昇、下降、幅を取得するためのオブジェクトが必要です。を取得するためだけに、未使用の中間グラフィックスオブジェクトを作成する必要があるのは非常に醜いようですFontMetrics
。
java - Java アプレットでの最初の呼び出しで getFontMetrics() に 8000 ミリ秒かかる
getFontMetrics()
Java アプレットで を呼び出すと、5000 ミリ秒から 22000 ミリ秒かかって返されます。後続の呼び出しにかかる時間はごくわずかです (0 ~ 16 ミリ秒)
最低限のグラフィックス ドライバーを搭載したマシンで実行していることは認めざるを得ません (グラフィックス カードが壊れているため、Nvidia ドライバーを使用できません)。
これを引き起こしている可能性のあるアイデアはありますか?同じ問題を抱えたstackoveflowの他の例に出くわしましたが、満足のいく答えはないようです。これをEclipseで実行していますが、IE、Mozilla、およびChromeで実行すると同じ遅延が発生します。
要求された SSCCE:
pdf - OpenTypeフォントのグリフ幅
MinionPro-Regular.otfファイルがあります。私はそれの構造で働いています。私はそれが持っていることを発見しました:
CFF仕様では、OTFフォントの総グリフ数(またはフォントが埋め込まれている場合はPDFファイルのCFFストリームに表示される)は次のようになっている必要があります。
- 事前定義されたISOAdobe文字セット(228名)を使用
1429 + 228 = 1649
; - 事前定義された「エキスパート」文字セット(115の名前)を使用
1429 + 115 = 1544
; - 事前定義された「エキスパートサブセット」文字セット(86名)を使用し
1429 + 116 = 1515
ます。
1668の数値に最も近いのは1649ですが、19の違いは、このインデックス作成のアイデアで重要なものを失ったことを意味します。
質問は次のとおりです。
- 名前INDEXとメトリック/文字列INDEXの間の関係はどこにありますか?
- FLAGはどこにありますか、どのような種類の事前定義された文字セットが使用されていますか?
重要な更新
チャーセットは関係ありません!それは間違った方法でした!
java - Finding maximum font size to fit in region - Java
I have a region in my JPanel bounded by the point (0,0) and (width,height). It is a square.
I have a word
I'd like to find the maximum font size that I can use for s
. Now, I know there is a way to do it using FontMetrics and making a for loop to keep increasing the size of the font until it doesn't fit inside the region. But this is SO inefficient and there must be a way to compute the font size of a given font type, such as "Courier" that will fit in this region.
Example of BAD way:
java - JTextAreaのように、フォントの行の高さを取得するにはどうすればよいですか?
JTextAreaに配置されているのと同じように、ある行のベースラインからベースライン、次のテキスト行までの距離を取得する必要があります。そのために、私は指定されたフォントサイズのフォントしか持っていません。
私の問題は、フォントではLineMetricsまたはFontMetricsしか取得できず、現在のテキストに応じて両方の行のサイズ(getAscent / getHeight / getDescent)が異なることです。たとえば、文字がある場合f
、上昇は大きくなり、ある場合g
、私は降下しています。
「グローバル」フォントの高さプロパティを取得する方法はありますか?そのため、Graphics2Dでテキストを適切に描画できるようになります。