Bagikan melalui


struktur PRINTIFI32 (prntfont.h)

Struktur PRINTIFI32 adalah versi tetap dari struktur IFIMETRICS , dan menentukan informasi untuk jenis huruf tertentu yang dapat digunakan GDI.

Sintaks

typedef struct _PRINTIFI32 {
  ULONG   cjThis;
  ULONG   cjIfiExtra;
  PTRDIFF dpwszFamilyName;
  PTRDIFF dpwszStyleName;
  PTRDIFF dpwszFaceName;
  PTRDIFF dpwszUniqueName;
  PTRDIFF dpFontSim;
  LONG    lEmbedId;
  LONG    lItalicAngle;
  LONG    lCharBias;
  PTRDIFF dpCharSets;
  BYTE    jWinCharSet;
  BYTE    jWinPitchAndFamily;
  USHORT  usWinWeight;
  ULONG   flInfo;
  USHORT  fsSelection;
  USHORT  fsType;
  FWORD   fwdUnitsPerEm;
  FWORD   fwdLowestPPEm;
  FWORD   fwdWinAscender;
  FWORD   fwdWinDescender;
  FWORD   fwdMacAscender;
  FWORD   fwdMacDescender;
  FWORD   fwdMacLineGap;
  FWORD   fwdTypoAscender;
  FWORD   fwdTypoDescender;
  FWORD   fwdTypoLineGap;
  FWORD   fwdAveCharWidth;
  FWORD   fwdMaxCharInc;
  FWORD   fwdCapHeight;
  FWORD   fwdXHeight;
  FWORD   fwdSubscriptXSize;
  FWORD   fwdSubscriptYSize;
  FWORD   fwdSubscriptXOffset;
  FWORD   fwdSubscriptYOffset;
  FWORD   fwdSuperscriptXSize;
  FWORD   fwdSuperscriptYSize;
  FWORD   fwdSuperscriptXOffset;
  FWORD   fwdSuperscriptYOffset;
  FWORD   fwdUnderscoreSize;
  FWORD   fwdUnderscorePosition;
  FWORD   fwdStrikeoutSize;
  FWORD   fwdStrikeoutPosition;
  BYTE    chFirstChar;
  BYTE    chLastChar;
  BYTE    chDefaultChar;
  BYTE    chBreakChar;
  WCHAR   wcFirstChar;
  WCHAR   wcLastChar;
  WCHAR   wcDefaultChar;
  WCHAR   wcBreakChar;
  POINTL  ptlBaseline;
  POINTL  ptlAspect;
  POINTL  ptlCaret;
  RECTL   rclFontBox;
  BYTE    achVendId[4];
  ULONG   cKerningPairs;
  ULONG   ulPanoseCulture;
  PANOSE  panose;
} PRINTIFI32, *PPRINTIFI32;

Anggota

cjThis

Menentukan ukuran dalam byte struktur ini. Ukuran yang ditentukan mencakup string Unicode apa pun yang ditambahkan ke akhir struktur ini, ditambah ukuran dalam byte struktur IFIEXTRA opsional.

cjIfiExtra

Menentukan ukuran dalam byte struktur IFIEXTRA yang mengikuti struktur ini. Nilai nol menunjukkan bahwa tidak ada struktur IFIEXTRA yang ada.

dpwszFamilyName

Menentukan offset dalam byte ke string Unicode yang dihentikan null yang berisi nama keluarga font (misalnya, "Times Roman"). Umumnya, string ini segera mengikuti struktur ini. String ini harus sama dengan nama yang dicatat dalam anggota lfFaceName dari struktur LOGFONT Win32.

dpwszStyleName

Menentukan offset dalam byte ke string Unicode yang dihentikan null yang menjelaskan gaya font (misalnya, "Tebal").

dpwszFaceName

Menentukan offset dalam byte ke string Unicode yang dihentikan null yang mewakili nama font yang unik dan lengkap. Nama berisi nama keluarga dan subfamali font (misalnya, "Times New Roman Bold").

dpwszUniqueName

Menentukan offset dalam byte ke string Unicode yang dihentikan null yang mewakili pengidentifikasi unik font (misalnya, "Monotype:Times New Roman:1990").

dpFontSim

Menentukan offset dalam byte dari awal struktur ini ke struktur FONTSIM yang menjelaskan simulasi yang didukung font. Driver harus mengatur anggota ini ke nilai bukan nol hanya jika font mendukung simulasi miring tebal, miring, atau tebal; jika tidak, driver harus mengatur ini ke nol.

Perhatikan bahwa jika font miring berdasarkan desain, driver tidak boleh menunjukkan dukungan font untuk simulasi miring meskipun dapat menunjukkan dukungan font untuk simulasi miring tebal. Demikian pula, driver tidak boleh menunjukkan dukungan font untuk simulasi tebal jika font tebal berdasarkan desain, tetapi dapat menunjukkan dukungan font untuk simulasi miring tebal. Jika font tebal dan miring berdasarkan desain, font tidak boleh mendukung simulasi apa pun.

Offset dalam struktur FONTSIM relatif terhadap dasar struktur FONTSIM.

lEmbedId

Menentukan ID Penyematan font. Nilai ini khusus TrueType dan harus diatur ke nol oleh semua penyedia font lainnya.

lItalicAngle

Menentukan sudut miring font. Nilai ini khusus TrueType dan harus diatur ke nol oleh semua penyedia font lainnya.

lCharBias

Menentukan bias karakter. Nilai ini khusus TrueType dan harus diatur ke nol oleh semua penyedia font lainnya.

dpCharSets

Menentukan offset dari awal struktur ini ke array yang berisi daftar semua set karakter Windows yang didukung oleh font ini. Array berukuran 16 byte dan selalu dihentikan dengan DEFAULT_CHARSET. Nilai pertama array harus mengidentifikasi kumpulan karakter Windows yang memiliki cakupan terbaik dan terlengkap dalam font; nilai ini juga harus disimpan di jWinCharSet. Misalnya, jika ini adalah font Jepang yang juga mendukung set karakter ANSI dan Sirilik AS, maka jWinCharSet harus diatur ke SHIFTJIS_CHARSET dan array yang diidentifikasi oleh dpCharSets akan berisi SHIFTJIS_CHARSET, ANSI_CHARSET, RUSSIAN_CHARSET, DEFAULT_CHARSET.

Jika font ini tidak mendukung lebih dari satu set karakter Windows, dpCharSets harus diatur ke nol.

jWinCharSet

Mengidentifikasi set karakter yang paling baik didukung oleh font ini. Jika font hanya mendukung satu set karakter Windows, driver harus menyimpan nilai yang sesuai di jWinCharSet. Driver tidak boleh menyimpan DEFAULT_CHARSET di bidang ini. Anggota ini bisa menjadi salah satu nilai berikut:

Nilai Deskripsi
ANSI_CHARSET Font ini mendukung set karakter Windows ANSI.
ARABIC_CHARSET Font ini mendukung set karakter Arab.
BALTIC_CHARSET Font ini mendukung set karakter Baltik.
CHINESEBIG5_CHARSET Font ini mendukung set karakter tionghoa tradisional (Big 5).
EASTEUROPE_CHARSET Font ini mendukung set karakter Eropa Timur.
GB2312_CHARSET Font ini mendukung set karakter Tionghoa yang disederhanakan (RRT).
GREEK_CHARSET Font ini mendukung set karakter Yunani.
HANGEUL_CHARSET Font ini mendukung set karakter Korea (Hangeul).
HEBREW_CHARSET Font ini mendukung set karakter Ibrani.
JOHAB_CHARSET Font ini mendukung set karakter Korea (Johab).
OEM_CHARSET Font ini mendukung set karakter khusus OEM. Set karakter OEM bergantung pada sistem.
SHIFTJIS_CHARSET Font ini mendukung set karakter Shift-JIS (Standar Industri Jepang).
SYMBOL_CHARSET Font ini mendukung set karakter simbol Windows.
RUSSIAN_CHARSET Font ini mendukung set karakter Sirilik.
THAI_CHARSET Font ini mendukung set karakter Thailand.
TURKISH_CHARSET Font ini mendukung set karakter Turki.
VIETNAMESE_CHARSET Font ini mendukung set karakter Vietnam.

jWinPitchAndFamily

Menentukan pitch font. Dua bit berurutan rendah menentukan nada font dan bisa menjadi salah satu nilai berikut:

Nilai Deskripsi
FIXED_PITCH Untuk font pitch tetap
VARIABLE_PITCH Untuk font pitch variabel

Bit 4 hingga 7 anggota ini menentukan keluarga font dan bisa menjadi salah satu nilai berikut:

Nilai Deskripsi
FF_DECORATIVE Font baru, seperti Bahasa Inggris Lama.
FF_DONTCARE Tidak peduli atau tidak diketahui.
FF_MODERN Font dengan lebar goresan konstan (pitch tetap), dengan atau tanpa serif. Font pitch tetap biasanya modern, seperti Pica, Elite, dan Courier.
FF_ROMAN Font dengan lebar goresan variabel (berspasi proporsional) dan dengan serif, seperti Times Roman, Palatino, dan Century Schoolbook.
FF_SCRIPT Font yang dirancang agar terlihat seperti tulisan tangan, seperti Skrip dan Kursif.
FF_SWISS Font dengan lebar goresan variabel (berspasi proporsional) dan tanpa serif, seperti Helvetica dan Swiss.

usWinWeight

Menentukan bobot font dalam rentang 0 hingga 1000 (misalnya, 400 normal dan 700 tebal). Nilai ini disediakan untuk aplikasi di anggota lfWeight dari struktur Win32 LOGFONT.

flInfo

Menentukan informasi tambahan tentang font. Bidang ini bisa menjadi kombinasi dari nilai bendera berikut:

Nilai

Makna

FM_INFO_1BPP

Menunjukkan bahwa bitmap glyph memiliki kedalaman warna satu bit per piksel. Untuk Windows NT 3.1, versi pertama Windows NT, bendera ini harus diatur.

FM_INFO_4BPP

Menunjukkan bahwa bitmap glyph memiliki kedalaman warna empat bit per piksel. Driver harus mengatur ini jika font mendukung bitmap glyph antialias dengan 16 tingkat abu-abu.

FM_INFO_8BPP

Menunjukkan bahwa bitmap glyph memiliki kedalaman warna delapan bit per piksel. Versi GDI saat ini akan mengabaikan pengaturan ini karena tidak mendukung font warna.

FM_INFO_16BPP

Menunjukkan bahwa bitmap glyph memiliki kedalaman warna 16 bit per piksel. Versi GDI saat ini akan mengabaikan pengaturan ini karena tidak mendukung font warna.

FM_INFO_24BPP

Menunjukkan bahwa bitmap glyph memiliki kedalaman warna 24 bit per piksel. Versi GDI saat ini akan mengabaikan pengaturan ini karena tidak mendukung font warna.

FM_INFO_32BPP

Menunjukkan bahwa bitmap glyph memiliki kedalaman warna 32 bit per piksel. Versi GDI saat ini akan mengabaikan pengaturan ini karena tidak mendukung font warna.

FM_INFO_90DEGREE_ROTATIONS

Menunjukkan bahwa font dapat diwujudkan dalam rotasi 90 derajat dari bentuk gagasan asli. GDI meminta rotasi font dengan menyertakan rotasi dalam transformasi gagasan ke perangkat yang diteruskan ke driver saat membuat font. Anggota ini hanya memiliki arti ketika bendera FM_INFO_ARB_XFORMS belum ditetapkan.

FM_INFO_ANISOTROPIC_SCALING_ONLY

Menunjukkan bahwa font hanya mendukung penskalakan anisotropik arbitrer. Artinya, transformasi setara dengan matriks diagonal dikalikan dengan angka riil positif. Jika bendera ini diatur, maka bendera FM_INFO_ARB_XFORMS dan FM_INFO_ISOTROPIC_SCALING_ONLY tidak dapat diatur. Jika bendera FM_INFO_90DEGREE_ROTATIONS juga diatur, font mendukung transformasi yang merupakan kombinasi dari penskalaan anisotropik sederhana diikuti oleh rotasi dengan kelipatan 90 derajat.

FM_INFO_ARB_XFORMS

Menunjukkan bahwa font dapat diwujudkan di bawah rentang berkelanjutan dari transformasi linier dua dimensi.

FM_INFO_CONSTANT_WIDTH

Menunjukkan bahwa semua glyph font di bawah semua realisasi memiliki nilai kenaikan karakter yang sama. Jika bendera ini diatur, bendera FM_INFO_OPTICALLY_FIXED_PITCH juga harus diatur.

FM_INFO_DBCS_FIXED_PITCH

Menunjukkan bahwa karakter byte ganda untuk font ini adalah pitch tetap. Tidak ada yang tersirat tentang karakter byte tunggal. Bendera ini hanya bermakna untuk font yang mendukung kumpulan karakter byte ganda (DBCS), seperti shift JIS. Font yang tidak mendukung DBCS tidak boleh mengatur bendera ini.

FM_INFO_DO_NOT_ENUMERATE

Menunjukkan bahwa font ini tidak akan dijumlahkan oleh rutinitas Win32 EnumFontFamiliesEx, EnumFontFamilies , atau EnumFonts . Selain itu, string yang dikembalikan ke panggilan aplikasi Win32 ke GetTextFace akan diambil dari string dpwszUniqueName. Bendera ini memungkinkan penyedia font untuk mengaitkan lebih dari satu struktur PRINTIFI32 dengan salah satu font-nya.

FM_INFO_DSIG

Menunjukkan bahwa font sesuai dengan standar Unicode.

FM_INFO_FAMILY_EQUIV

Menunjukkan bahwa offset dpwszFamilyName dalam PRINTIFI32 sebenarnya merupakan offset ke daftar nama keluarga atau alias yang setara. Nama depan adalah nama dasar atau asli; nama berikutnya setara atau alias. Setiap nama dalam daftar dihentikan null; daftar dihentikan oleh dua nol.

<base name> <alias 0> <alias 1> ... <alias n>

Nama berbasis hanya digunakan untuk pemetaan; Mereka tidak dijumlahkan.

FM_INFO_IGNORE_TC_RA_ABLE

Menunjukkan bahwa, untuk font ini, bendera TC_RA_ABLE diabaikan.

FM_INFO_INTEGER_WIDTH

Menunjukkan bahwa semua glyph memiliki lebar muka nonfraksional. Font bitmap biasanya mengatur bendera ini.

FM_INFO_INTEGRAL_SCALING

Menunjukkan bahwa font dapat diskalakan dengan jumlah integral dalam arah x dan y. Jika bendera ini diatur, maka driver harus dapat merender glyph dalam kasus di mana transformasi gagasan ke perangkat diskalakan oleh jumlah integral dalam arah x dan y. GDI meminta penskalaan font integral dengan menyertakan penskalaan aksial dalam transformasi gagasan ke perangkat yang diteruskan ke driver saat membuat font. Bendera ini bermakna hanya ketika bendera FM_INFO_ARB_XFORMS belum ditetapkan.

FM_INFO_ISOTROPIC_SCALING_ONLY

Menunjukkan bahwa font hanya mendukung penskalakan isotropik arbitrer. Artinya, transformasi setara dengan matriks identitas dikalikan dengan angka riil positif. Jika bendera ini diatur, maka bendera FM_INFO_ARB_XFORMS atau FM_INFO_ANISOTROPIC_SCALING_ONLY tidak dapat diatur. Jika bendera FM_INFO_90DEGREE_ROTATIONS diatur, font mendukung transformasi yang setara dengan penskalaan isotropik diikuti oleh rotasi dengan kelipatan 90 derajat.

FM_INFO_OPTICALLY_FIXED_PITCH

Menunjukkan bahwa font ini dianggap tipografis sebagai nada tetap. Ini adalah kualitas optik font dan tidak selalu menunjukkan bahwa semua glyph font memiliki kenaikan karakter yang sama.

FM_INFO_NONNEGATIVE_AC

Menunjukkan bahwa semua glyph font ini tidak memiliki spasi danc nonnegative. Artinya, kotak hitam glyph tidak pernah meluas di luar wilayah yang dibatasi oleh asal karakter dan titik perangkaian karakter.

FM_INFO_NOT_CONTIGUOUS

Menunjukkan bahwa set karakter yang didukung tidak bersebelah.

FM_INFO_RETURNS_BITMAPS

Menunjukkan bahwa font berisi tanda tangan digital yang valid.

FM_INFO_RETURNS_OUTLINES

Menunjukkan bahwa untuk setiap glyph yang didukung oleh driver, GDI dapat meminta struktur PATHOBJ yang menjelaskan kerangka glyph tersebut. Jika memungkinkan, ketika kerangka diisi menggunakan konvensi pengisian jalur GDI, bitmap yang dihasilkan harus identik dengan bitmap yang dikembalikan oleh driver. Bendera FM_INFO_RETURNS_OUTLINES dan FM_INFO_RETURNS_STOKES tidak dapat diatur secara bersamaan.

FM_INFO_RETURNS_STROKES

Menunjukkan bahwa untuk setiap glyph yang didukung oleh driver, GDI dapat meminta struktur PATHOBJ yang menjelaskan spline glyph. Jalur ini tidak dapat diisi tetapi dapat di-stroke untuk memberikan representasi glyph. Bendera FM_INFO_RETURNS_OUTLINES dan FM_INFO_RETURNS_STOKES tidak dapat diatur secara bersamaan.

FM_INFO_RIGHT_HANDED

Menunjukkan bahwa arah naik font adalah 90 derajat berlawanan arah jarang dari arah garis besar. Arah pendakian adalah arah di mana tinggi diukur dan selalu tegak lurus dengan arah garis besar.

FM_INFO_TECH_BITMAP

Menunjukkan bahwa font adalah font bitmap.

FM_INFO_TECH_CFF

Menunjukkan bahwa font adalah font OpenType Pscript yang berisi tabel Format Font Ringkas (CFF).

FM_INFO_TECH_MM

Menunjukkan bahwa ini adalah font Multi-Master (MM).

FM_INFO_TECH_OUTLINE_NOT_TRUETYPE

Menunjukkan bahwa font didasarkan pada teknologi font yang dapat diskalakan yang menggunakan jalur kerangka, tetapi tidak didasarkan pada TrueType. Bendera ini tidak menentukan apakah jalur yang dikembalikan untuk font ini harus diisi atau di-stroke; konsumen harus memeriksa bendera FM_INFO_RETURNS_STROKES dan FM_INFO_RETURNS_OUTLINES untuk informasi ini.

FM_INFO_TECH_STROKE

Menunjukkan bahwa font didasarkan pada teknologi font yang di-stroke. Bendera ini tidak menentukan apakah jalur yang dikembalikan untuk font ini harus diisi atau di-stroke; konsumen harus memeriksa bendera FM_INFO_RETURNS_STROKES dan FM_INFO_RETURNS_OUTLINES untuk informasi ini.

FM_INFO_TECH_TRUETYPE

Menunjukkan bahwa font adalah font TrueType.

FM_INFO_TECH_TYPE1

Menunjukkan bahwa font ini adalah font layar PostScript (baik Type1 atau OpenType PostScript).

fsSelection

Menentukan kombinasi bendera berikut:

Nilai Deskripsi
FM_SEL_BOLD Atur jika karakter font tebal.
FM_SEL_ITALIC Atur jika karakter font miring.
FM_SEL_NEGATIVE Atur jika karakter font memiliki latar depan dan latar belakang terbalik.
FM_SEL_OUTLINED Atur jika karakter font berongga.
FM_SEL_REGULAR Atur jika karakter font berbobot normal.
FM_SEL_STRIKEOUT Atur jika karakter font disambar secara default; jika tidak, strikeout harus disimulasikan.
FM_SEL_UNDERSCORE Atur jika semua karakter font digaris bawahi secara default; jika tidak, garis bawah harus disimulasikan.

fsType

Ini adalah bitfield khusus TrueType yang menunjukkan properti tertentu untuk font, seperti penyematan font dan hak lisensi untuk font. Font yang dapat disematkan dapat disimpan dalam dokumen. Ketika dokumen dengan font tersemat dibuka pada sistem yang tidak memiliki font yang diinstal (sistem jarak jauh), font yang disematkan dapat dimuat untuk sementara (dan dalam beberapa kasus permanen) digunakan pada sistem tersebut oleh aplikasi yang sadar penyematan. Hak lisensi penyematan diberikan oleh vendor font. Bendera berikut dapat diatur:

Nilai Deskripsi
FM_EDITABLE_EMBED Atur apakah font dapat disematkan dan dimuat sementara pada sistem lain. Dokumen yang berisi font yang dapat diedit dapat dibuka untuk dibaca dan ditulis.
FM_READONLY_EMBED Atur jika penyematan baca/tulis tidak diizinkan; hanya enkapulasi "pratinjau dan cetak" yang diizinkan. Ketika bit ini diatur, font dapat disematkan dan dimuat sementara pada sistem jarak jauh. Dokumen yang berisi font "pratinjau dan cetak" harus dibuka "baca-saja;" tidak ada pengeditan yang dapat diterapkan ke dokumen.
FM_TYPE_LICENSED, FM_NO_EMBEDDING Atur jika font adalah font Lisensi Terbatas. Ketika hanya bit ini yang diatur, font ini tidak boleh dimodifikasi, disematkan, atau ditukar dengan cara apa pun tanpa terlebih dahulu mendapatkan izin dari pemilik hukum. Agar penyematan Lisensi Terbatas berlaku, penyematan harus menjadi satu-satunya tingkat penyematan yang dipilih.

Font dengan set bit FM_READONLY_EMBED menunjukkan bahwa font dapat disematkan dalam dokumen tetapi hanya boleh diinstal sementara pada sistem jarak jauh. Dokumen apa pun yang menyertakan font FM_READONLY_EMBED harus dibuka "baca-saja." Artinya, aplikasi dapat membiarkan pengguna melihat dan/atau mencetak dokumen, tetapi tidak mengeditnya.

Font dengan set bit FM_EDITABLE_EMBED menunjukkan bahwa font tersebut dapat disematkan dalam dokumen, tetapi hanya boleh diinstal sementara pada sistem jarak jauh. Berbeda dengan font FM_READONLY_EMBED, dokumen yang berisi font yang dapat diedit dapat dibuka "baca/tulis;" pengeditan diizinkan, dan perubahan dapat disimpan.

Font tanpa bit fsType yang ditetapkan menunjukkan bahwa mereka dapat disematkan dan diinstal secara permanen pada sistem jarak jauh oleh aplikasi. Pengguna sistem jarak jauh memperoleh hak, kewajiban, dan lisensi yang identik untuk font tersebut sebagai pembeli asli font, dan tunduk pada perjanjian lisensi pengguna akhir, hak cipta, paten desain, dan/atau merek dagang yang sama seperti pembeli asli.

Aplikasi yang menerapkan dukungan untuk penyematan font, baik melalui penggunaan DLL Penyematan Font atau melalui cara lain, tidak boleh menyematkan font yang tidak dilisensikan untuk mengizinkan penyematan. Selanjutnya, aplikasi yang memuat font yang disematkan untuk penggunaan sementara harus menghapus font ketika dokumen yang berisi font yang disematkan ditutup.

Jika beberapa bit penyematan ditetapkan, lisensi paling tidak ketat yang diberikan lebih diutamakan. Misalnya, jika bit 1 dan 3 diatur, bit 3 lebih diutamakan daripada bit 1 dan font dapat disematkan dengan hak Dapat diedit. Untuk tujuan kompatibilitas, sebagian besar vendor yang memberikan hak penyematan Editable juga mengatur Pratinjau & Print bit (0x000C). Ini mengizinkan aplikasi yang hanya mendukung Pratinjau & Penyematan cetak untuk mendeteksi bahwa penyematan font diizinkan.

fwdUnitsPerEm

Menentukan tinggi-em font.

fwdLowestPPEm

Menentukan ukuran font terkecil yang dapat dibaca, dalam piksel. Nilai ini diabaikan untuk font bitmap.

fwdWinAscender

Menentukan nilai percender Windows untuk font.

fwdWinDescender

Menentukan nilai turun Windows untuk font.

fwdMacAscender

Menentukan nilai ascender Macintosh untuk font.

fwdMacDescender

Menentukan nilai turun Macintosh untuk font. Angka ini biasanya kurang dari nol. Ini mengukur perpindahan yang ditandatangani dari garis dasar keturunan terendah dalam set karakter Macintosh.

fwdMacLineGap

Menentukan celah baris Macintosh untuk font. Spasi interline Macintosh yang disarankan sama dengan fwdMacLineGap + fwdMacAscender âˆ' fwdMacDescender.

fwdTypoAscender

Menentukan nilai percender tipografi untuk font.

fwdTypoDescender

Menentukan nilai turunan tipografi untuk font. Nilai ini menentukan perpindahan yang ditandatangani dari turunan terendah dari garis besar.

fwdTypoLineGap

Menentukan celah baris tipografi untuk font.

fwdAveCharWidth

Menentukan rata-rata aritmatika lebar semua dari 26 huruf kecil 'a' hingga 'z' alfabet Latin dan karakter spasi. Jika salah satu dari 26 huruf kecil tidak ada, maka anggota ini harus diatur sama dengan rata-rata tertimbang semua glyph dalam font.

fwdMaxCharInc

Menentukan kenaikan karakter maksimum dari semua glyph dalam font.

fwdCapHeight

Menentukan tinggi baris optik yang menjelaskan bagian atas huruf besar 'H' dalam unit font (FUnits). Ini mungkin tidak sama dengan tinggi yang diukur dari huruf besar 'H.' Jika informasi ini tidak ada, fwdCapHeight harus diatur ke nol, yang menunjukkan bahwa informasi tersebut tidak terdefinisi.

fwdXHeight

Menentukan tinggi baris optik yang menjelaskan tinggi huruf kecil 'x' dalam unit font. Ini mungkin tidak sama dengan tinggi yang diukur dari huruf kecil 'x.' Nilai nol menunjukkan bahwa anggota ini tidak terdefinisi.

fwdSubscriptXSize

Menentukan lebar karakter yang disarankan (ukuran di sepanjang arah garis besar) font subskrip.

fwdSubscriptYSize

Menentukan tinggi karakter yang disarankan (ukuran di sepanjang arah percender) dari font subskrip.

fwdSubscriptXOffset

Menentukan offset yang disarankan dalam arah garis besar karakter subskrip. Offset berkaitan dengan asal karakter karakter karakter dasar.

fwdSubscriptYOffset

Menentukan offset yang disarankan dalam arah garis besar karakter subskrip. Offset diambil dari asal karakter karakter dasar.

fwdSuperscriptXSize

Menentukan lebar karakter yang disarankan (ukuran di sepanjang arah garis besar) font superskrip.

fwdSuperscriptYSize

Menentukan tinggi karakter yang disarankan (ukuran di sepanjang arah percender) dari font superskrip.

fwdSuperscriptXOffset

Menentukan offset yang disarankan ke arah garis besar karakter superskrip. Offset diambil dari asal karakter karakter dasar.

fwdSuperscriptYOffset

Menentukan offset yang disarankan ke arah garis besar karakter superskrip. Offset diambil dari asal karakter karakter dasar.

fwdUnderscoreSize

Menentukan lebar bilah garis bawah yang disarankan, dalam unit font.

fwdUnderscorePosition

Menentukan displacement yang disarankan, dalam unit font, dari garis dasar ke tengah bilah garis bawah.

fwdStrikeoutSize

Menentukan lebar bilah coretan yang disarankan, dalam koordinat font.

fwdStrikeoutPosition

Menentukan perpindahan yang disarankan di tengah bilah strikeout dari garis besar.

chFirstChar

Menentukan karakter terendah yang didukung di halaman kode yang ditentukan dalam jWinCharSet. Bidang ini disediakan untuk kompatibilitas Windows 3.1.

chLastChar

Menentukan karakter tertinggi yang didukung di halaman kode yang ditentukan dalam jWinCharSet. Bidang ini disediakan untuk kompatibilitas Windows 3.1.

chDefaultChar

Menentukan karakter default di halaman kode yang ditentukan dalam jWinCharSet. Bidang ini disediakan untuk kompatibilitas Windows 3.1.

chBreakChar

Menentukan karakter pemisah di halaman kode yang ditentukan dalam jWinCharSet. Bidang ini disediakan untuk kompatibilitas Windows 3.1.

wcFirstChar

Menentukan karakter yang didukung dengan kode karakter Unicode terkecil.

wcLastChar

Menentukan karakter yang didukung dengan kode karakter Unicode terbesar.

wcDefaultChar

Menentukan karakter yang akan diganti ketika aplikasi meminta karakter yang tidak didukung oleh font.

wcBreakChar

Menentukan titik kode karakter spasi atau yang setara.

ptlBaseline

Menentukan struktur POINTL yang berisi arah penulisan yang dimaksudkan dari font ini. Misalnya, font Latin khas menentukan nilai (1,0).

ptlAspect

Menentukan struktur POINTL yang berisi rasio aspek pusat piksel tempat font bitmap dirancang. Nilai ini hanya digunakan oleh font bitmap.

ptlCaret

Menentukan struktur POINTL yang berisi arah arah percender font. Misalnya, nilai untuk font Latin yang tidak berlisensi adalah (0,1) sementara font Latin miring mungkin menentukan nilai (2,5).

rclFontBox

Menentukan struktur RECTL yang menjelaskan kotak pembatas semua glyph dalam font dalam ruang desain.

achVendId[4]

Menentukan pengidentifikasi empat karakter untuk vendor font. Pengidentifikasi didokumenkan dalam spesifikasi Microsoft TrueType.

cKerningPairs

Menentukan jumlah pasangan kerning yang terkait dengan font ini.

ulPanoseCulture

Menentukan cara untuk menafsirkan angka panose. Angka ini harus diatur ke FM_PANOSE_CULTURE_LATIN untuk font berbasis Latin. Lihat dokumentasi Microsoft Window SDK untuk informasi tentang struktur PANOSE.

panose

Adalah array 10 byte yang digunakan untuk menggambarkan karakteristik visual dari typeface tertentu. Karakteristik ini kemudian digunakan untuk mengaitkan font dengan font lain dengan tampilan serupa yang memiliki nama yang berbeda. Lihat dokumentasi Window SDK untuk informasi tentang struktur PANOSE.

Keterangan

Struktur PRINTIFI32 tersedia di Windows Server 2003 SP1 dan yang lebih baru. Karena struktur ini berukuran tetap, dan dijamin tidak berubah di seluruh arsitektur atau versi sistem operasi, struktur ini dapat digunakan untuk tata letak file biner. File UFM Unidrv ditata dalam format yang dijelaskan dalam struktur ini, untuk semua platform. File Pscript5 NTF menggunakan versi khusus platform dari struktur ini.

Informasi tambahan untuk typeface secara opsional dapat ditentukan dalam struktur IFIEXTRA .

Rutinitas DrvQueryFont driver mengisi dan mengembalikan struktur IFIMETRICS ke GDI.

Struktur PRINTIFI32 mendefinisikan semua informasi untuk typeface yang dipahami GDI. Sebagian besar anggota adalah nilai FWORD, yang ditandatangani jumlah 16-bit dalam ruang desain. Jika font adalah font raster, ruang desain dan ruang perangkat sama dan unit font setara dengan jarak antar piksel.

Sistem koordinat dalam font/ruang nosional sosis sehingga koordinat y meningkat ke arah atas dan koordinat x meningkat ke kanan.

Persyaratan

Persyaratan Nilai
Header prntfont.h (termasuk Prntfont.h)

Lihat juga

IFIMETRICS