Fungsi GetObject (wingdi.h)

Fungsi GetObject mengambil informasi untuk objek grafis yang ditentukan.

Syntax

int GetObject(
  [in]  HANDLE h,
  [in]  int    c,
  [out] LPVOID pv
);

Parameter-parameternya

[in] h

Handel ke objek grafis yang menarik. Ini bisa menjadi handel untuk salah satu hal berikut: bitmap logis, kuas, font, palet, pena, atau bitmap independen perangkat yang dibuat dengan memanggil fungsi CreateDIBSection .

[in] c

Jumlah byte informasi yang akan ditulis ke buffer.

[out] pv

Penunjuk ke buffer yang menerima informasi tentang objek grafik yang ditentukan.

Tabel berikut ini memperlihatkan jenis informasi yang diterima buffer untuk setiap jenis objek grafik yang dapat Anda tentukan dengan hgdiobj.

Jenis objek Data yang ditulis ke buffer
HBITMAP

BITMAP

HBITMAP dikembalikan dari panggilan ke CreateDIBSection

DIBSECTION, jika cbBuffer diatur ke sizeof (DIBSECTION), atau BITMAP, jika cbBuffer diatur ke sizeof (BITMAP).

HPALETTE
Jumlah WORD dari jumlah entri dalam palet logika
HPEN dikembalikan dari panggilan ke ExtCreatePen

EXTLOGPEN

HPEN

LOGPEN

HBRUSH

LOGBRUSH

HFONT

LOGFONT

 

Jika parameter lpvObject adalah NULL, nilai pengembalian fungsi adalah jumlah byte yang diperlukan untuk menyimpan informasi yang ditulisnya ke buffer untuk objek grafis yang ditentukan.

Alamat lpvObject harus berada di batas 4 byte; jika tidak, GetObject gagal.

Mengembalikan nilai

Jika fungsi berhasil, dan lpvObject adalah penunjuk yang valid, nilai pengembalian adalah jumlah byte yang disimpan ke dalam buffer.

Jika fungsi berhasil, dan lpvObject adalah NULL, nilai yang dikembalikan adalah jumlah byte yang diperlukan untuk menyimpan informasi yang akan disimpan fungsi ke dalam buffer.

Jika fungsi gagal, nilai yang dikembalikan adalah nol.

Komentar

Buffer yang ditujukkan oleh parameter lpvObject harus cukup besar untuk menerima informasi tentang objek grafis. Bergantung pada objek grafis, fungsi menggunakan struktur BITMAP, DIBSECTION, EXTLOGPEN, LOGBRUSH, LOGFONT, atau LOGPEN , atau hitungan entri tabel (untuk palet logis).

Jika hgdiobj adalah handel ke bitmap yang dibuat dengan memanggil CreateDIBSection, dan buffer yang ditentukan cukup besar, fungsi GetObject mengembalikan struktur DIBSECTION . Selain itu, anggota bmBits dari struktur BITMAP yang terkandung dalam DIBSECTION akan berisi pointer ke nilai bitmap.

Jika hgdiobj adalah handel ke bitmap yang dibuat dengan cara lain, GetObject hanya mengembalikan informasi format lebar, tinggi, dan warna bitmap. Anda dapat memperoleh nilai bitmap dengan memanggil fungsi GetDIBits atau GetBitmapBits .

Jika hgdiobj adalah handel ke palet logis, GetObject mengambil bilangan bulat 2-byte yang menentukan jumlah entri dalam palet. Fungsi ini tidak mengambil struktur LOGPALETTE yang menentukan palet. Untuk mengambil informasi tentang entri palet, aplikasi dapat memanggil fungsi GetPaletteEntries .

Jika hgdiobj adalah handel ke font, LOGFONT yang dikembalikan adalah LOGFONT yang digunakan untuk membuat font. Jika Windows harus membuat beberapa interpolasi font karena LOGFONT yang tepat tidak dapat diwakili, interpolasi tidak akan tercermin dalam LOGFONT. Misalnya, jika Anda meminta versi vertikal font yang tidak mendukung lukisan vertikal, LOGFONT menunjukkan font vertikal, tetapi Windows akan melukisnya secara horizontal.

Examples

Misalnya, lihat Menyimpan Gambar.

Persyaratan

Persyaratan 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)
Library Gdi32.lib
DLL Gdi32.dll

Lihat juga

BITMAP

CreateDIBSection

PEMBAGIAN

Fungsi Konteks Perangkat

Gambaran Umum Konteks Perangkat

EXTLOGPEN

GetBitmapBits

GetDIBits

GetPaletteEntries

GetRegionData

LOGBRUSH

LOGFONT

LOGPALETTE

LOGPEN