Perbandingan API Teks Win32
Untuk pengembang yang memigrasikan kode aplikasi Win32 mereka, tabel berikut mencantumkan API Teks Win32 dan perkiraan yang setara dalam DirectWrite.
Panggilan Teks GDI | Deskripsi | DirectWrite Setara |
---|---|---|
AddFontMemResourceEx | Menambahkan font tertanam ke tabel font sistem. | CreateCustomFontFileReference + CreateCustomFontCollection |
AddFontResource | Menambahkan sumber daya font ke tabel font sistem. | Tidak ada yang setara. AddFontResource menambahkan ke koleksi font sistem sebagai bagian dari langkah penginstalan font GDI. DirectWrite mengisi koleksi font sistem di muka dan secara otomatis memantau pembaruan untuk itu, sehingga tidak ada penginstalan yang pernah diperlukan. |
AddFontResourceEx | Menambahkan font privat atau tidak dapat dijumlahkan ke tabel font sistem. | Sama seperti di atas |
CreateFont | Membuat font logis. | Alih-alih font logis, aplikasi dapat menentukan sekumpulan properti font (misalnya nama keluarga, berat, gaya, peregangan, dan ukuran) untuk membuat IDWriteTextFormat. Hanya aplikasi yang memerlukan enumerasi font yang akan mengakses IDWriteFont melalui IDWriteFontCollection. |
CreateFontIndirect | Membuat font logis dari struktur. | Sama seperti di atas |
CreateFontIndirectEx | Membuat font logis dari struktur. | Sama seperti di atas |
DrawText | Menggambar teks yang diformat dalam persegi panjang. | IDWriteTextLayout::D raw |
DrawTextEx | Menggambar teks yang diformat dalam persegi panjang. | IDWriteTextLayout::D raw |
EnumFontFamExProc | Fungsi panggilan balik yang ditentukan aplikasi yang digunakan dengan EnumFontFamiliesEx untuk memproses font. | Antarmuka IDWriteFontCollection , melalui IDWriteFactory::GetSystemFontCollection |
EnumFontFamiliesEx | Menghitung semua font dalam sistem dengan karakteristik tertentu. | Antarmuka IDWriteFontCollection , melalui IDWriteFactory::GetSystemFontCollection |
ExtTextOut | Menggambar string karakter. | IDWriteTextLayout::D raw atau IDWriteRenderBitmapTarget::D rawGlyphRun |
GetAspectRatioFilterEx | Mendapatkan pengaturan untuk filter rasio aspek. | T/A |
GetCharABCWidths | Mendapatkan lebar karakter berturut-turut dari font TrueType. | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharABCWidthsFloat | Mendapatkan lebar karakter berturut-turut dari font saat ini. | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharABCWidthsI | Mendapatkan lebar indeks glyph berturut-turut atau array indeks glyph dari font TrueType. | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharacterPlacement | Mendapatkan informasi tentang string karakter. | IDWriteTextAnalyzer |
GetCharWidth32 | Mendapatkan lebar karakter berturut-turut dari font saat ini. | IDWriteFontFace::GetDesignGlyphMetrics atau IDWriteTextLayout::GetMetrics |
GetCharWidthFloat | Mendapatkan lebar pecahan karakter berturut-turut dari font saat ini. | IDWriteFontFace::GetDesignGlyphMetrics atau IDWriteTextLayout::GetMetrics |
GetCharWidthI | Mendapatkan lebar indeks glyph berturut-turut atau array indeks glyph dari font saat ini. | IDWriteFontFace::GetDesignGlyphMetrics atau IDWriteTextLayout::GetMetrics |
GetFontData | Mendapatkan data metrik untuk font TrueType. | IDWriteFontFace::TryGetFontTable |
GetFontLanguageInfo | Mengembalikan informasi tentang font terpilih untuk konteks tampilan. | T/A |
GetFontUnicodeRanges | Memberi tahu karakter Unicode mana yang didukung oleh font. | loop idWriteFont::HasCharacter |
GetGlyphIndices | Menerjemahkan string ke dalam array indeks glyph. | IDWriteFontFace::GetGlyphIndices |
GetGlyphOutline | Mendapatkan kerangka atau bitmap untuk karakter dalam font TrueType. | metrik glyph -- IDWriteFontFace::GetDesignGlyphMetrics, informasi kerangka aktual --IDwriteFontFace::GetGlyphRunOutline, jika Anda menginginkan bitmap glyph, IDWriteRenderBitmapRenderTarget::D rawGlyphRun |
GetKerningPairs | Mendapatkan pasangan kerning karakter untuk font. | Kerning diizinkan melalui properti tipografi tata letak (DirectWrite melakukan kerning itu sendiri, sehingga tidak ada metode untuk mengembalikan informasi ini). |
GetOutlineTextMetrics | Mendapatkan metrik teks untuk font TrueType. | IDWriteFontFace::GetMetrics |
GetRasterizerCaps | Memberi tahu apakah font TrueType terinstal. | (Font TrueType diinstal pada Windows Vista dan Windows 7 secara default.) |
GetTabbedTextExtent | Menghitung lebar dan tinggi string karakter, termasuk tab. | IDWriteTextLayout::GetMetrics |
GetTextAlign | Mendapatkan pengaturan perataan teks untuk konteks perangkat. | IDWriteTextFormat::GetTextAlignment |
GetTextCharacterExtra | Mendapatkan penspasian antar karakter saat ini untuk konteks perangkat. | T/A |
GetTextColor | Mendapatkan warna teks untuk konteks perangkat. | T/A. (DirectWrite independen dari penyajian dan karenanya tidak tahu warnanya. Aplikasi perlu melacaknya sendiri.) |
GetTextExtentExPoint | Mendapatkan jumlah karakter dalam string yang akan pas dalam spasi. | IDWriteTextLayout::GetMetrics |
GetTextExtentExPointI | Mendapatkan jumlah indeks glyph yang akan pas dalam spasi. | IDWriteTextLayout::GetMetrics |
GetTextExtentPoint32 | Menghitung lebar dan tinggi string teks. | IDWriteTextLayout::GetMetrics |
GetTextExtentPointI | Menghitung lebar dan tinggi array indeks glyph. | IDWriteTextLayout::GetMetrics |
GetTextFace | Mendapatkan nama font yang dipilih ke dalam konteks perangkat. | IDWriteFont::GetFaceNames (Mengembalikan semua nama) |
GetTextMetrics | Mengisi buffer dengan metrik untuk font. | IDWriteFontFace::GetMetrics |
PolyTextOut | Menggambar beberapa string menggunakan font dan warna teks dalam konteks perangkat. | N/A; membuat beberapa objek tata letak |
RemoveFontMemResourceEx | Menghapus font yang sumbernya disematkan dalam dokumen dari tabel font sistem. | IUnknown::Release pada objek terkait |
RemoveFontResource | Menghapus font dalam file dari tabel font sistem | T/A |
RemoveFontResourceEx | Menghapus font privat atau tidak dapat dijumlahkan dari tabel font sistem. | T/A |
SetMapperFlags | Mengubah algoritma yang digunakan untuk memetakan font logis ke font fisik. | T/A |
SetTextAlign | Mengatur bendera perataan teks untuk konteks perangkat. | IDWriteTextFormat::SetTextAlignment |
SetTextCharacterExtra | Mengatur penspasian antar karakter. | T/A |
SetTextColor | Mengatur warna teks untuk konteks perangkat. | Aplikasi harus mengurus menentukan warna di salah satu panggilan Gambar . |
SetTextJustification | Menentukan jumlah ruang yang harus ditambahkan sistem ke karakter jeda dalam string. | T/A. Pembenaran dan penspasian karakter tidak didukung dalam rilis ini. |
TabbedTextOut | Menulis string karakter di lokasi, memperluas tab ke nilai yang ditentukan. | IDWriteTextLayout::D raw |
TextOut | Menulis string karakter di lokasi | IDWriteTextLayout::D raw |
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk