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) |