Bagikan melalui


Struktur NEWTEXTMETRICW (wingdi.h)

Struktur NEWTEXTMETRIC berisi data yang menjelaskan font fisik.

Sintaks

typedef struct tagNEWTEXTMETRICW {
  LONG  tmHeight;
  LONG  tmAscent;
  LONG  tmDescent;
  LONG  tmInternalLeading;
  LONG  tmExternalLeading;
  LONG  tmAveCharWidth;
  LONG  tmMaxCharWidth;
  LONG  tmWeight;
  LONG  tmOverhang;
  LONG  tmDigitizedAspectX;
  LONG  tmDigitizedAspectY;
  WCHAR tmFirstChar;
  WCHAR tmLastChar;
  WCHAR tmDefaultChar;
  WCHAR tmBreakChar;
  BYTE  tmItalic;
  BYTE  tmUnderlined;
  BYTE  tmStruckOut;
  BYTE  tmPitchAndFamily;
  BYTE  tmCharSet;
  DWORD ntmFlags;
  UINT  ntmSizeEM;
  UINT  ntmCellHeight;
  UINT  ntmAvgWidth;
} NEWTEXTMETRICW, *PNEWTEXTMETRICW, *NPNEWTEXTMETRICW, *LPNEWTEXTMETRICW;

Anggota

tmHeight

Tinggi (naik + turun) karakter.

tmAscent

Naik (unit di atas garis dasar) karakter.

tmDescent

Turunan (unit di bawah garis dasar) karakter.

tmInternalLeading

Jumlah leading (spasi) di dalam batas yang ditetapkan oleh anggota tmHeight . Tanda aksen dan karakter diakritik lainnya mungkin terjadi di area ini. Perancang dapat mengatur anggota ini ke nol.

tmExternalLeading

Jumlah leading ekstra (spasi) yang ditambahkan aplikasi di antara baris. Karena area ini berada di luar font, area ini tidak berisi tanda dan tidak diubah oleh panggilan output teks dalam mode OPAQUE atau TRANSPARAN. Perancang dapat mengatur anggota ini ke nol.

tmAveCharWidth

Lebar rata-rata karakter dalam font (umumnya didefinisikan sebagai lebar huruf x). Nilai ini tidak termasuk overhang yang diperlukan untuk karakter tebal atau miring.

tmMaxCharWidth

Lebar karakter terluas dalam font.

tmWeight

Bobot font.

tmOverhang

Lebar ekstra per string yang dapat ditambahkan ke beberapa font yang disintesis. Saat mensintesis beberapa atribut, seperti tebal atau miring, antarmuka perangkat grafis (GDI) atau perangkat mungkin harus menambahkan lebar ke string berdasarkan per karakter dan per string. Misalnya, GDI membuat string tebal dengan memperluas penspasian setiap karakter dan mengambil alih oleh nilai offset; memiringkan font dengan menggeser string. Dalam kedua kasus, ada overhang melewati string dasar. Untuk string tebal, overhang adalah jarak di mana pengambilan berlebihan diimbangi. Untuk string miring, overhang adalah jumlah bagian atas font dicukur melewati bagian bawah font.

Anggota tmOverhang memungkinkan aplikasi menentukan berapa banyak lebar karakter yang dikembalikan oleh panggilan fungsi GetTextExtentPoint32 pada satu karakter adalah lebar karakter aktual dan berapa lebar ekstra per string. Lebar aktual adalah luasnya dikurangi overhang.

tmDigitizedAspectX

Aspek horizontal perangkat tempat font dirancang.

tmDigitizedAspectY

Aspek vertikal perangkat tempat font dirancang. Rasio anggota tmDigitizedAspectX dan tmDigitizedAspectY adalah rasio aspek perangkat tempat font dirancang.

tmFirstChar

Nilai karakter pertama yang ditentukan dalam font.

tmLastChar

Nilai karakter terakhir yang ditentukan dalam font.

tmDefaultChar

Nilai karakter yang akan diganti dengan karakter yang tidak ada dalam font.

tmBreakChar

Nilai karakter yang akan digunakan untuk menentukan pemisah kata untuk pembenaran teks.

tmItalic

Font miring jika bukan nol.

tmUnderlined

Font bergaris bawah jika bukan nol.

tmStruckOut

Font coretan jika bukan nol.

tmPitchAndFamily

Pitch dan keluarga font yang dipilih. Bit berurutan rendah (bit 0) menentukan nada font. Jika 1, font adalah pitch variabel (atau proporsional). Jika 0, font adalah pitch tetap (atau monospace). Bit 1 dan 2 menentukan jenis font. Jika kedua bit adalah 0, font adalah font raster; jika bit 1 adalah 1 dan bit 2 adalah 0, font adalah font vektor; jika bit 1 adalah 0 dan bit 2 diatur, atau jika kedua bit adalah 1, font adalah beberapa jenis lain. Bit 3 adalah 1 jika font adalah font perangkat; jika tidak, itu adalah 0.

Empat bit berurutan tinggi menunjuk keluarga font. Anggota tmPitchAndFamily dapat dikombinasikan dengan nilai heksadesimal 0xF0 dengan menggunakan operator AND bitwise dan kemudian dapat dibandingkan dengan nama keluarga font untuk kecocokan yang identik. Untuk informasi selengkapnya tentang keluarga font, lihat LOGFONT.

tmCharSet

Kumpulan karakter font.

ntmFlags

Menentukan apakah font miring, garis bawah, kerangka, tebal, dan sebagainya. Mungkin kombinasi yang wajar dari nilai berikut.

Bit Nama Makna
0 NTM_ITALIC Miring
5 NTM_BOLD Bold
8 NTM_REGULAR Biasa
16 NTM_NONNEGATIVE_AC tidak ada glyph dalam font dalam ukuran apa pun yang memiliki spasi A atau C negatif.
17 NTM_PS_OPENTYPE Font PostScript OpenType
18 NTM_TT_OPENTYPE Font TrueType OpenType
19 NTM_MULTIPLEMASTER beberapa font master
20 NTM_TYPE1 Font tipe 1
21 NTM_DSIG font dengan tanda tangan digital. Ini memungkinkan keterlacakan dan memastikan bahwa font telah diuji dan tidak rusak

ntmSizeEM

Ukuran kotak em untuk font. Nilai ini berada dalam unit nosional (yaitu, unit yang dirancang font).

ntmCellHeight

Tinggi, dalam unit nosional, dari font. Nilai ini harus dibandingkan dengan nilai anggota ntmSizeEM .

ntmAvgWidth

Lebar rata-rata karakter dalam font, dalam satuan nosional. Nilai ini harus dibandingkan dengan nilai anggota ntmSizeEM .

Keterangan

Empat anggota terakhir dari struktur NEWTEXTMETRIC tidak disertakan dalam struktur TEXTMETRIC ; dalam semua hal lain, strukturnya identik.

Ukuran dalam struktur NEWTEXTMETRIC biasanya ditentukan dalam unit logis; artinya, mereka bergantung pada mode pemetaan saat ini dari konteks tampilan.

Catatan

Header wingdi.h mendefinisikan NEWTEXTMETRIC sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Header wingdi.h (sertakan Windows.h)

Lihat juga

EnumFontFamilies

Struktur Font dan Teks

Gambaran Umum Font dan Teks

GetTextExtentPoint32

GetTextMetrics

LOGFONT