Metode IDirect3DDevice9Ex::ComposeRects (d3d9.h)

Salin string teks ke satu permukaan menggunakan alfabet glyph di permukaan lain. Komposisi dilakukan oleh GPU menggunakan operasi bitwise.

Sintaks

HRESULT ComposeRects(
  [in] IDirect3DSurface9      *pSrc,
  [in] IDirect3DSurface9      *pDst,
  [in] IDirect3DVertexBuffer9 *pSrcRectDescs,
  [in] UINT                   NumRects,
  [in] IDirect3DVertexBuffer9 *pDstRectDescs,
  [in] D3DCOMPOSERECTSOP      Operation,
  [in] int                    Xoffset,
  [in] int                    Yoffset
);

Parameter

[in] pSrc

Jenis: IDirect3DSurface9*

Pointer ke permukaan sumber (disiapkan oleh IDirect3DSurface9) yang memasok alfabet glyph. Permukaan ini harus dibuat dengan bendera D3DUSAGE_TEXTAPI .

[in] pDst

Jenis: IDirect3DSurface9*

Penunjuk ke permukaan tujuan (disiapkan oleh IDirect3DSurface9) yang menerima data glyph. Permukaan harus menjadi bagian dari tekstur.

[in] pSrcRectDescs

Jenis: IDirect3DVertexBuffer9*

Penunjuk ke buffer vertex (lihat IDirect3DVertexBuffer9) yang berisi persegi panjang (lihat D3DCOMPOSERECTDESC) yang mengapit glyph yang diinginkan di permukaan sumber.

[in] NumRects

Jenis: UINT

Jumlah persegi panjang atau glyph yang digunakan dalam operasi. Angka tersebut berlaku untuk permukaan sumber dan tujuan. Rentangnya adalah 0 hingga D3DCOMPOSERECTS_MAXNUMRECTS.

[in] pDstRectDescs

Jenis: IDirect3DVertexBuffer9*

Penunjuk ke buffer vertex (lihat IDirect3DVertexBuffer9) yang berisi persegi panjang (lihat D3DCOMPOSERECTDESTINATION) yang menjelaskan tujuan di mana glyph yang ditunjukkan dari permukaan sumber akan disalin.

[in] Operation

Jenis: D3DCOMPOSERECTSOP

Menentukan cara menggabungkan permukaan sumber dan tujuan. Lihat D3DCOMPOSERECTSOP.

[in] Xoffset

Jenis: INT

Nilai yang ditambahkan ke koordinat x dari semua persegi panjang tujuan. Nilai ini bisa negatif, yang dapat menyebabkan glyph ditolak atau diklip jika hasilnya berada di luar batas permukaan.

[in] Yoffset

Jenis: INT

Nilai yang ditambahkan ke koordinat y dari semua persegi panjang tujuan. Nilai ini bisa negatif, yang dapat menyebabkan glyph ditolak atau diklip jika hasilnya berada di luar batas permukaan.

Menampilkan nilai

Jenis: HRESULT

Jika metode berhasil, nilai yang dikembalikan adalah D3D_OK.

Keterangan

Glyph dari permukaan sumber satu-bit disatukan ke permukaan tekstur satu-bit lainnya dengan metode ini. Permukaan tujuan kemudian dapat digunakan sebagai sumber untuk operasi tekstur normal yang akan memfilter dan menskalakan string teks ke beberapa permukaan non-monokrom lainnya.

Metode ini memiliki beberapa batasan (yang mirip dengan StretchRect):

  • Permukaan tidak dapat dikunci.
  • Permukaan sumber dan tujuan tidak boleh sama.
  • Permukaan sumber dan tujuan harus dibuat dengan format D3DFMT_A1 .
  • Permukaan sumber dan kedua buffer vertex harus dibuat dengan bendera D3DPOOL_DEFAULT .
  • Permukaan tujuan harus dibuat dengan bendera D3DPOOL_DEFAULT atau D3DPOOL_SYSTEMMEM .
  • Persegi panjang sumber harus berada di dalam permukaan sumber.
Metode ini tidak dicatat dalam blok status.

Persyaratan

   
Target Platform Windows
Header d3d9.h
Pustaka D3D9.lib

Lihat juga

IDirect3DDevice9Ex