カスタム画像に変換しようとしている40ピクセルのフォントがあります。画像のサイズに正確に一致させようとしていますが、 「正確に正しいサイズを取得するのに問題があります。基本的にはこれです。フォントにXピクセルと表示されている場合、これは物理的に何を意味しますか?
コメント
- フォントにはxの高さの用語がありますが、同じことを言っていますか??
- ドキュメントを入力する場合、通常はフォントサイズ12が使用されます。 12はどういう意味ですか?
- 12 = 12ptタイプ(通常)
- w3.org/Style/Examples/をご覧ください。 007 / units.en.html#font-size
- これについての良い読み物は、「ポイントサイズとEmスクエア:何ではないか」です。人々は考える」、AdobeとFontLabのフォントの第一人者であるThomasPhinneyによる。
回答
これは優れた質問であり、答えはかなり不十分です。
タイプのサイズは、ピクセル、ポイント(1/72 “)、またはミリメートルで指定されているかどうかにかかわらず、em-squareの高さです。これは、通常、最も高いアセンダーから最も低いディセンダーまでの距離よりも少し大きい非表示のボックスです。
これはやや恣意的な尺度であり、
- フォントの正確な技術設計に依存します
- 印刷物から正確に測定することはできません。またはラスタライズされたサンプル
概算以外では、あまり意味がなく、有用でもありません。
この場合、Photoshopで指定する必要のあるサイズを計算してください。実験によってブラウザのレンダリングと一致させます。これはどのフォントでも一定の比率であることがわかるはずですが、ブラウザやOSを変更した場合、これが当てはまるとは思いません。
回答
ASCII時間!下の2つのボックスは、1900年頃の鉛タイプの断片であると仮定します。当時、活字面は鉛で鋳造されていました(または木でルーティングされていました)。タイプを印刷に設定するためにロックアップ、それらはソリッドブロックに接続する必要がありました。これは、タイプの寸法(ポイント単位)が由来する場所です:
+--------------+ +-------------+ <----+ | | | | | | XX | | | | | X X | | | | | XX XX | | | | | XX XX | | X | | XXXXXX | | X X | Point size of the type | XX XX | | XXX | | XX XX | | X X | | | XX XX | | X X | | | XX XX | | | | | | | | | +--------------+ +-------------+ <----+
2つに注意してください上記の文字はサイズが異なりますが、境界ボックスは同じです。そのため、ポイントに関しては、これらのフォントは両方とも同じサイズです。
現在、リードと木材とそのほとんどはデジタルです。ただし、ポイントサイジングの概念は、タイプが配置されるすべての文字に対して同じ高さの仮想ボックスが存在するという点で依然として存在します。繰り返しになりますが、レターフォーム自体の物理的な測定値ではなく、ポイントサイズを定義するのはこの仮想ボックスです。レターフォームの実際のサイズは、多くの場合、ポイントサイズよりも小さくなります(ただし、大きくなることもあります)。
そのため、ピクセル単位のタイプの測定は機能しませんが、CSSなどでピクセル単位のタイプを「設定」することはできます。ブラウザは、宣言されたピクセルサイズ間で可能な限り変換を行います。しかし、それは常にあいまいな見積もりです。
最終的に、2つの書体を視覚的に見て、それぞれのサイズを次のように表示するまで変更する以外に、まったく同じサイズの書体を取得する正確な方法はありません。同じサイズです。
コメント
- コンピューターでは、次のようにポイントからピクセルまでを計算しますPX =ポイント* SystemDPI / 72。ビデオの世界(モニター)のDPIは1984年にAppleによって導入された純粋な任意の値。ビデオデバイスはピクセルのみを使用します。 DPIは'ビデオ/画像の世界には存在しません。最新のフォントはこの概念に基づいており、1ポイント、1/72は1/72インチとして定義されています。
- @AbdiasSoftwareはい、1ポイントは平均して1/72インチで最初のMacには72ppiの画面がありました。しかし、それが尋ねられた質問や私が与えた答えと何の関係があるのかわかりません。デジタルであれアナログであれ、フォントにはバウンディングボックスがあり、そのバウンディングボックスはサイズが参照しているものであるという事実は変わりません。
回答
フォントの「フォントサイズ」は、フォントの「emの高さ」を指します。これは、フォント内の特定の文字の高さと必ずしも同じではありません。
通常フォントのemの高さは、同じ基本的な考え方に従います。「最も低いディセンダーからの距離に大まかに設定されます()最高のアセンダー(文字の先頭h
など):
ご覧のとおり、個々の文字がそのスパン全体をカバーすることはありません。
デジタルフォントでは、フォントの「高さ」はフォントによって選択されます。デザイナーであり、この規則にまったく準拠する必要はありません。デジタルタイプのデザイナーは、emサイズの任意の基盤を選択できます。ただし、少なくともフォントは準拠する傾向があります。大まかに言って、上記のような慣習に。タイプが金属ブロックで構成されていた昔は、「emの高さ」はそれらのブロックの1つの高さであり、その書体の文字だけでなく、アセンダー、ディセンダー、アクセントにも十分な高さが必要でした。
現在、多くの現代の書体には大文字にもアクセントが含まれています(Ć
など)。これらのアクセントは、従来の外に拡張されます。活字のアセンダー、したがってこれら(および場合によっては他の特殊文字)は「em」の上部から外れます。歴史的な理由から、これらを許可するようにemサイズを調整せず、emサイズを維持し、これらを拡張するだけです。このようなアクセントを使用するタイポグラファーは、通常は拡張するためのスペースがあることを確認する必要があります。本文では行のギャップで十分です。
本文の行のギャップは、1行のテキストのディセンダーとアセンダーの間に残されたスペースです。その下の行の-つまり、「フォントサイズ」には、この行ギャップの測定値は含まれません。CSSフィールドline-height
の影響を受ける可能性があります。ここで、1.4
は、行のギャップがemの高さの0.4倍であることを意味します。したがって、本文テキストの行全体が、行のギャップを含めてemの高さの1.4倍になります。他のアプリケーションでは、行のギャップを別の方法で指定できます。ワードプロセッサは、「単一」の行間隔の倍数で指定することがよくありますが、CSSとは異なり、通常、「単一」の間隔は行ギャップがないことを意味するのではなく、いくつかの「デフォルト」行ギャップを意味します。 plicationは、フォントファイルのメタデータに基づいてデフォルトを考え出そうとします。フォントでメトリックを指定するための複数の標準があります(たとえば、Truetypeでは、MacとWindows / OS2の標準が異なります)。そのため、デフォルトのラインギャップはアプリケーションとオペレーティングシステム間で異なる可能性があります。
デザイナーは emの高さについて予測可能な規則に従いますが、それでも大文字のサイズ(cap-height)やo
(x-heightまたはmidline)は、アセンダーの高さに関連して書体間で自由に変化する可能性があるためです。フォントファミリ内では、これらは通常一貫しています。たとえば、Times New RomanBoldとTimesNew RomanRegularは同じemサイズに対して同じ文字サイズを使用します。これには、アセンダー、ディセンダー、キャップハイト、エックスハイトが含まれます。
コメント
- はい-規則があります(たとえば、emは' g 'の下部から' h )しかし、それでも差異があり、フォント形式は設計者をこれらの規則にまったく従わせません。
回答
縦棒文字( “|”)を入力して、それを測定してみてください。状況を正しく複製し、アンチエイリアスがあまりぼやけていない場合は、22pxになります。
22pxは、タイプのブロックの高さを表します。ただし、各文字はブロックの塗りつぶしが異なります。「g 「または「q」はその22pxの下部領域を占め、「b」または「d」などの大文字と小文字は上部を占めます。 “|”は唯一の文字の1つです( のみ)22pxのスペースを完全に埋める文字。
CSS設定と比較する方法がわかりませんが、Photoshopがテキストの高さを解釈する方法を説明しています。 。
コメント
- さらに、2つのフォントを同じサイズに設定すると、' ll文字形式自体はそうではないことがよくあります。それらは単に同じ'ブロック'サイズを持っています。
- パイプは常に割り当てられた合計スペースを埋めるとは限りません。 'は純粋にタイプデザイナーによる好みです。 '多くの場合、アセンダーの上部とディセンダーの下部に一致しますが、それでも、文字に割り当てられるスペースははるかに大きくなる可能性があります。
- 縦棒の文字は、フォントのemサイズ(例:"全高")と常に同じであるとは限りません。実際、通常はそれよりも少なくなります。
- 垂直方向のボックス描画文字は、理論的には全高をカバーする必要があります(おそらくオーバーラップします)。それは少量です)。しかし、これらの文字を含むフォントはほとんどありません。通常の垂直バー(
|
)は、通常、emサイズと同じではありません。 ' Microsoftコアフォント(Arial、Georgiaなど)でもこれを実行しません。 - 縦棒文字は'高さ全体を埋めます。大文字のアクセント(例: " Á "は上位に配置されます。自分を比較してください:" Á " " | "
回答
フォントはよろしいですかピクセルで測定されますか?ほとんどの場合、フォントはポイントで測定されます。ポイントは1/72インチです。したがって、40ポイントのフォントの高さは40/72 “または5/9″です。キッカーは、それが背の高い文字のアセンダーの上部からベースラインの下にぶら下がっている文字の下降子の下部までの寸法です。そのため、前述のように、エックスハイトが使用されることがあります。これは、上下に突き出ない小文字の高さです。
いずれにしても、測定値が正確になることはありません。とにかく、残念ながら。試みていることを達成するには、測定と計算(および/または試行錯誤)を行う必要があります。
コメント
- しかし、ポイントは物理的なタイプ(印刷、彫刻、彫刻など)にのみ関連します。
- 完全に正しいわけではありません。タイプは、アセンダーの上部からディセンダーの下部まで測定された'ではなく、'バウンディングボックスによって測定されます。アセンダー/ディセンダーの高さと相関する場合としない場合があります。これは、タイプがブロックに置かれた鉛と木材のタイプの時代にさかのぼります。タイプにラベルが付けられたサイズを決定するのは、このブロックの高さでした。そのため、両方とも12ptに設定された2つのフォントは、互いに非常に異なるサイズになる可能性があります。 (私は' 1ptが'伝統的に= 1/72インチではないという事実に触れません…;)