Fungsi ExtTextOutA (wingdi.h)
Fungsi ExtTextOut menggambar teks menggunakan font, warna latar belakang, dan warna teks yang saat ini dipilih. Anda dapat secara opsional menyediakan dimensi yang akan digunakan untuk kliping, buram, atau keduanya.
Sintaksis
BOOL ExtTextOutA(
[in] HDC hdc,
[in] int x,
[in] int y,
[in] UINT options,
[in] const RECT *lprect,
[in] LPCSTR lpString,
[in] UINT c,
[in] const INT *lpDx
);
Parameter
[in] hdc
Handel ke konteks perangkat.
[in] x
Koordinat x, dalam koordinat logis, dari titik referensi yang digunakan untuk memposisikan string.
[in] y
Koordinat y, dalam koordinat logis, dari titik referensi yang digunakan untuk memposisikan string.
[in] options
Menentukan cara menggunakan persegi panjang yang ditentukan aplikasi. Parameter ini bisa berupa satu atau beberapa nilai berikut.
Nilai | Arti |
---|---|
|
Teks akan diklip ke persegi panjang. |
|
Array Untuk ExtTextOutW, indeks glyph disimpan ke metafile. Namun, untuk menampilkan karakter yang benar, metafile harus diputar kembali menggunakan font yang sama. Untuk ExtTextOutA, indeks glyph tidak disimpan. |
|
Dicadangkan untuk penggunaan sistem. Jika aplikasi menetapkan bendera ini, aplikasi kehilangan dukungan pembuatan skrip internasional dan dalam beberapa kasus aplikasi mungkin tidak menampilkan teks sedikit pun. |
|
Untuk menampilkan angka, gunakan digit Eropa. |
|
Untuk menampilkan angka, gunakan digit yang sesuai dengan lokal. |
|
Warna latar belakang saat ini harus digunakan untuk mengisi persegi. |
|
Ketika ini diatur, array yang ditujukkan oleh lpDx berisi pasangan nilai. Nilai pertama dari setiap pasangan adalah, seperti biasa, jarak antara asal sel karakter yang berdekatan, tetapi nilai kedua adalah perpindahan di sepanjang arah vertikal font. |
|
Windows edisi bahasa Timur Tengah: Jika nilai ini ditentukan dan font Ibrani atau Arab dipilih ke dalam konteks perangkat, string dihasilkan menggunakan urutan baca kanan-ke-kiri. Jika nilai ini tidak ditentukan, string adalah output dalam urutan kiri-ke-kanan. Efek yang sama dapat dicapai dengan mengatur nilai TA_RTLREADING di SetTextAlign. Nilai ini dipertahankan untuk kompatibilitas mundur. |
Nilai ETO_GLYPH_INDEX dan ETO_RTLREADING tidak dapat digunakan bersama-sama. Karena ETO_GLYPH_INDEX menyiratkan bahwa semua pemrosesan bahasa telah selesai, fungsi mengabaikan bendera ETO_RTLREADING jika juga ditentukan.
[in] lprect
Penunjuk ke struktur RECT
[in] lpString
Penunjuk ke string yang menentukan teks yang akan digambar. String tidak perlu dihentikan nol, karena cbCount menentukan panjang string.
[in] c
Panjang string ditujukkan oleh lpString.
Nilai ini mungkin tidak melebihi 8192.
[in] lpDx
Penunjuk ke array nilai opsional yang menunjukkan jarak antara asal sel karakter yang berdekatan. Misalnya, unit logis lpDx[i] memisahkan asal sel karakter i dan sel karakter i + 1.
Mengembalikan nilai
Jika string digambar, nilai yang dikembalikan bukan nol. Namun, jika versi ANSI dari
Jika fungsi gagal, nilai yang dikembalikan adalah nol.
Komentar
Pengaturan perataan teks saat ini untuk konteks perangkat yang ditentukan menentukan bagaimana titik referensi digunakan untuk memosisikan teks. Pengaturan perataan teks diambil dengan memanggil fungsi GetTextAlign. Pengaturan perataan teks diubah dengan memanggil fungsi SetTextAlign. Anda bisa menggunakan nilai berikut untuk perataan teks. Hanya satu bendera yang dapat dipilih dari bendera yang memengaruhi perataan horizontal dan vertikal. Selain itu, hanya satu dari dua bendera yang mengubah posisi saat ini yang dapat dipilih.
Jika parameter
Secara default, posisi saat ini tidak digunakan atau diperbarui oleh fungsi ini. Namun, aplikasi dapat memanggil fungsi SetTextAlign
Untuk versi ANSI ExtTextOut, array lpDx memiliki jumlah nilai INT yang sama seperti ada byte dalam lpString. Untuk karakter DBCS, Anda dapat menambahkan dx dalam entri lpDx
Catatan, nilai
Selain itu, ExtTextOut akan melakukan batching panggilan internal sebelum beralih ke mode kernel, mengurangi beberapa masalah performa saat menimbang penggunaan PolyTextOut versus ExtTextOut.
Ujung
ExtTextOut sangat direkomendasikan daripada PolyTextOut untuk pengembangan modern karena kemampuannya untuk menangani tampilan bahasa yang berbeda.
Contoh
Misalnya, lihat "Mengatur Font untuk Menu-Item String Teks" di Menggunakan Menu.
Nota
Header wingdi.h mendefinisikan ExtTextOut sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosektor 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
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Platform Target |
Windows |
Header |
wingdi.h (termasuk Windows.h) |
Pustaka |
Gdi32.lib |
DLL |
Gdi32.dll |
Lihat juga
Fungsi Font dan Teks
SetBkColor
SetTextColor