Fungsi ScriptJustify (usp10.h)
Membuat tabel lebar lanjutan untuk memungkinkan pembenaran teks saat diteruskan ke fungsi ScriptTextOut .
Sintaks
HRESULT ScriptJustify(
[in] const SCRIPT_VISATTR *psva,
[in] const int *piAdvance,
[in] int cGlyphs,
[in] int iDx,
[in] int iMinKashida,
[out] int *piJustify
);
Parameter
[in] psva
Penunjuk ke array, panjang yang ditunjukkan oleh cGlyph, berisi struktur SCRIPT_VISATTR . Setiap struktur berisi atribut visual untuk glyph dalam baris untuk diproses.
[in] piAdvance
Penunjuk ke array lebar lanjutan, panjang yang ditunjukkan oleh cGlyphs, diperoleh dari panggilan sebelumnya ke ScriptPlace.
[in] cGlyphs
Jumlah glyph untuk array yang ditunjukkan oleh psva dan piAdvance. Parameter ini juga menunjukkan jumlah glyph untuk parameter output piJustify.
[in] iDx
Lebar, dalam piksel, dari perubahan yang diinginkan, baik peningkatan penurunan.
[in] iMinKashida
Lebar minimum glyph kashida untuk dihasilkan.
[out] piJustify
Penunjuk ke buffer di mana fungsi ini mengambil array, panjang yang ditunjukkan oleh cGlyphs, berisi lebar lanjutan yang dibenarkan. Lebar rata-rata terkadang disebut "lebar sel" untuk membedakannya dari lebar muka yang tidak dibenarkan.
Nilai kembali
Mengembalikan 0 jika berhasil. Fungsi mengembalikan nilai HRESULT bukan nol jika tidak berhasil. Aplikasi dapat menguji nilai pengembalian dengan makro BERHASIL dan GAGAL .
Keterangan
Lihat Menampilkan Teks dengan Uniscribe untuk diskusi konteks di mana fungsi ini biasanya dipanggil.
Fungsi ini menyediakan implementasi sederhana dari justifikasi multibahasa. Ini menetapkan jumlah penyesuaian yang harus dilakukan pada setiap posisi glyph pada baris. Ini menafsirkan array SCRIPT_VISATTR yang dihasilkan oleh panggilan ke ScriptShape, memberikan prioritas utama pada kashida. Fungsi ini menggunakan penspasian antarkata jika tidak ada titik kashida yang tersedia. Ini menggunakan penspasian antarkarakter jika tidak ada titik interword yang tersedia.
ScriptJustify membuat array rata-rata yang berisi lebar muka yang diperbarui untuk setiap glyph. Saat lebar muka untuk glyph ditingkatkan, lebar ekstra dirender di sebelah kanan glyph, dengan spasi putih atau, untuk teks Arab, kashida.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | usp10.h |
Pustaka | Usp10.lib |
DLL | Usp10.dll |
Redistribusi | Internet Explorer 5 atau yang lebih baru pada Windows Me/98/95 |