2010-10-28 4 views
5

Il x-altezza è una metrica di carattere, che è dato in termini di em-altezza, ed è circa 0,48 di un em, ma ciò dipende dal font ...Come si calcola l'altezza x, ad es. Di un oggetto Font?

In CSS queste due unità sono disponibile, sono interessato all'ex unità. C'è anche un'unità em, tale che la ex unità è data in termini di essa.

La tabella seguente mostra alcuni parametri, disponibili throug il seguente sito:

http://www.cs.tut.fi/~jkorpela/x-height.html

Arial    0.519 
Arial Unicode MS 0.518 
Calibri    0.466 
Cambria    0.466 
Candara    0.463 
Code2000   0.444 
Comics Sans MS  0.532 
Courier    0.425 
Courier New   0.423 
Garamond   0.384 
Georgia    0.481 
Helvetica   0.523 
Tahoma    0.545 
Times New Roman  0.448 
Trebuchet MS  0.523 
Verdana    0.545 

Voglio sapere la x-altezza di un dato oggetto Font in C#. Prendo l'altezza M in questo modo:

TextRenderer.MeasureText("M", font).Height 

Ma non riesco a capire come ottenere l'altezza x.

L'utilizzo di WinAPI è accettabile. Non importa il modo in cui ... i browser lo fanno. Sanno come calcolare il valore ex, voglio sapere come ottenere anche questo valore. Per favore aiuto!!

Grazie.

questione connessa che aiuta a convertire carattere per carattere:

How to convert System.Drawing.font to System.Windows.Media.Fonts or TypeFace

risposta

2
+0

Entrambe le classi forniscono una proprietà XHeight. Grazie ... questa è la strada da percorrere. Ha anche molte altre proprietà interessanti, per quanto riguarda le metriche dei caratteri. Sebbene sia per WPF, è facile convertire un oggetto System.Drawing.Font in un System.Windows.Media.Typeface. Ho cambiato la mia domanda per includere un link a una domanda correlata qui in SO. –

+0

Perché non posso modificare il mio commento per correggere l'inglese ??? Perchè così?? Whyyyyy ??? –

Problemi correlati