CImage sınıfı
CImageYük ve görüntüleri jpeg, GIF, bmp ve Taşınabilir Ağ Grafikleri (png) biçimlerinde kaydetme yeteneği de dahil olmak üzere geliştirilmiş bit eşlem desteği sağlar.
Önemli |
---|
Bu sınıf ve üyeleri, Windows çalışma zamanında yürütmek uygulamalarda kullanılamaz. |
class CImage
Üyeler
Ortak Oluşturucusu
Ad |
Description |
---|---|
Oluşturucu. |
Public yöntemler
Ad |
Description |
---|---|
Bit eşlemler saydam veya yarı saydam pikselleri sahip görüntüler. |
|
Bağlayan bir HBITMAP için bir CImage nesnesi.DIB bölüm bitmapler veya DIB bölüm bitmapler ile kullanılabilir. |
|
Bir bitmap kaynak aygıt içerikten geçerli bu aygıt içeriğini kopyalar. |
|
DIB bölümüne bir bit eşlem oluşturur ve daha önce oluşturulmuş iliştirir CImage nesnesi. |
|
DIB bölüm bitmap (ile ek parametreleri) oluşturur ve daha önce oluşturulmuş iliştirir CImage nesnesi. |
|
Bit Eşlem'den çıkarır CImage object ve bitmap bozar. |
|
Bit Eşlem'den çıkarır bir CImage nesnesi. |
|
Bir bitmap kaynak dikdörtgen bir hedef dikdörtgen kopyalar.Çizim uzatır veya bitmap gerekiyorsa hedef dikdörtgenin boyutlarına sığacak şekilde sıkıştırır ve alfa karıştırma ve saydam renkler işler. |
|
Bit eşlemin gerçek piksel değerlerini gösteren bir işaretçi alır. |
|
Piksel başına bit alır. |
|
Bir dizi renk tablosundaki girişleri kırmızı, yeşil ve mavi (rgb) renk değerleri alır. |
|
Geçerli bit eşlem seçili olan aygıt içeriğini alır. |
|
Kullanılabilir görüntü formatları ve bunların açıklamalarının bulur. |
|
Geçerli Görüntü piksel cinsinden yüksekliğini alır. |
|
Kullanılabilir görüntü formatları ve bunların açıklamalarının bulur. |
|
En çok renk tablosundaki girdilerin sayısını alır. |
|
Geçerli yansımadaki bayt aralığını alır. |
|
Belirtilen piksel rengini alır x ve y. |
|
Belirli bir pikselin adresi alır. |
|
Renk tablosuna saydam renk konumunu alır. |
|
Geçerli Görüntü piksel cinsinden genişliğini alır. |
|
Ekli bit eşlem DIB'ye bölüm olup olmadığını belirler. |
|
Bir dizine alınmış palet eşlenen bir bitmapin renkler gösterir. |
|
Kaynak bitmap yüklü gösterir. |
|
Uygulamanın saydam bitmapler destekler ve Windows 2000 veya sonraki sürümlerde derlenen gösterir. |
|
Belirtilen dosyadan bir görüntü yükler. |
|
Belirtilen kaynak bir görüntü yükler. |
|
Belirtilen maske ve Tarama işlemi kullanarak kaynak ve hedef bitmapler için renk verilerini bir araya getirir. |
|
Hedef aygıt bağlamında Paralelogram içine dikdörtgen bir kaynak aygıt bağlamında alınan bit blok transfer gerçekleştirir. |
|
İle alınan aygıt içeriğini & amp; CImage::GetDC. |
|
GDI + tarafından kullanılan kaynakları serbest bırakır.Genel oluşturulan kaynakları serbest bırakmak için çağrılmalıdır CImage nesnesi. |
|
Resim belirtilen tür olarak kaydeder.Kaydet görüntü seçenekleri belirtemezsiniz. |
|
Kırmızı, yeşil, mavi rgb ayarlar) renk DIB bölümünün renk tablosundaki girdilerin bir aralıktaki değerler. |
|
Belirtilen koordinatları belirtilen renge en piksel olarak ayarlar. |
|
Renk paleti, belirtilen dizin adresindeki belirtilen koordinatları adresindeki piksel olarak ayarlar. |
|
Piksel adresinde belirtilen koordinatları belirtilen kırmızı, yeşil, mavi (rgb) değerine ayarlar. |
|
Dizin nitelenmesini rengin saydam olarak ayarlar.Paletteki yalnızca bir renk saydam olabilir. |
|
Bir bitmap kaynak dikdörtgen uzatarak veya gerekiyorsa hedef dikdörtgenin boyutlarına sığacak şekilde bitmap sıkıştırma bir hedef dikdörtgen kopyalar. |
|
Saydam renkli bitmap kaynak aygıt bağlamında geçerli bu aygıt içeriğini kopyalar. |
Ortak İşleçler
Ad |
Description |
---|---|
Bağlı Windows işleyicisini döndürür CImage nesnesi. |
Notlar
CImageya da değil ya da aygıt bağımsız bit eşlem (DIB) bölümleri olan bit eşlemler alır; Ancak, kullanmak Create veya CImage::Load yalnızca DIB bölümler ile.DIB bölüm bitmapi ekleyebilirsiniz bir CImage kullanarak nesne Attach, ancak aşağıdakileri kullanamazsınız CImage DIB bölüm bitmapleri destekler yöntemleri:
Ekli bir bit eşlem DIB'ye bölüm olup olmadığını belirlemek için çağrı IsDibSection.
[!NOT]
Not , Visual Studio .net 2003, bu sınıfın tutar sayısı sayısı CImage oluşturulan nesneler.Count işlevi 0'a gider her GdiplusShutdown GDI + tarafından kullanılan kaynakları serbest bırakmak için otomatik olarak çağrılır.Bu herhangi bir sayede CImage doğrudan veya dolaylı olarak dll tarafından oluşturulan nesneler her zaman kaybolur düzgün ve GdiplusShutdown çağrıldığı değil DllMain.
[!NOT]
Genel kullanarak CImage bir dll içindeki nesneler önerilmez.Global kullanmanız gerekirse, CImage bir dll çağrısı nesnesinde CImage::ReleaseGDIPlus açıkça GDI + tarafından kullanılan kaynakları serbest bırakmak için.
CImageYeni dosyaya seçilemez hdm.CImagekendi oluşturur hdc görüntü için.Çünkü bir HBITMAP yalnızca tek seçilebilir hdc bir anda HBITMAP ile ilişkili CImage başka bir seçilemez hdc.Gerekiyorsa bir CDC, Al hdc karşı CImage ve ona verin CDC::FromHandle.
Örnek
// Get a CDC for the image
CDC* pDC = CDC::FromHandle(m_myImage.GetDC());
// Use pDC here
pDC->Rectangle(0, 40, 100, 50);
m_myImage.ReleaseDC();
Kullandığınızda, CImage mfc projesinde, projenizdeki üye işlev işaretçisi beklediğiniz Not bir CBitmap nesnesi.Kullanmak istiyorsanız, CImage bu tür bir işlevi ile gibi CMenu::AppendMenu, kullanın CBitmap::FromHandle, onu kendi CImageHBITMAPve döndürülen CBitmap*.
void CMyDlg::OnRButtonDown(UINT nFlags, CPoint point)
{
UNREFERENCED_PARAMETER(nFlags);
CBitmap* pBitmap = CBitmap::FromHandle(m_myImage);
m_pmenuPop->AppendMenu(0, ID_BMPCOMMAND, pBitmap);
ClientToScreen(&point);
m_pmenuPop->TrackPopupMenu(TPM_RIGHTBUTTON | TPM_LEFTALIGN, point.x,
point.y, this);
}
Üzerinden CImage, DIB bölümünün gerçek bit erişebilirsiniz.Kullanabileceğiniz bir CImage herhangi bir yerde önceden Win32 HBITMAP veya DIB bölümünde kullanılan nesne.
[!NOT]
Aşağıdaki CImage yöntemi üzerinde kullanılmaları sınırlamaları vardır:
Method |
Sınırlama |
---|---|
Yalnızca Windows NT 4.0 veya sonraki sürümlerde çalışır.Windows 95/98 veya sonrası çalışan uygulamaları üzerinde çalışmaz. |
|
Yalnızca Windows NT 4.0 veya sonraki sürümlerde çalışır.Windows 95/98 veya sonrası çalışan uygulamaları üzerinde çalışmaz. |
|
Yalnızca Windows 2000, Windows 98 ve sonraki sistemlerde çalışır. |
|
Yalnızca Windows 2000, Windows 98 ve sonraki sistemlerde çalışır. |
|
Yalnızca Windows 2000, Windows 98 ve sonraki sistemlerde saydamlığı destekler. |
Bkz: CImage sınırlamaları önceki işletim sistemleri ile daha ayrıntılı bu yöntemleri kısıtlamaları hakkında bilgi için.
Kullanabileceğiniz CImage mfc veya bileşene ATL
[!NOT]
Oluşturduğunuzda, project kullanarak CImage, tanımlamanız gerekir CString , içine önce atlimage.h.mfc olmadan atl projenizde kullanıyorsa, dahil atlstr.h , içine önce atlimage.h.Projenizi mfc (veya atl projesinde mfc desteğine sahip olup olmadığını) kullanıyorsa, dahil afxstr.h , içine önce atlimage.h.
Benzer şekilde, içermelidir atlimage.h , içine önce atlimpl.cpp.Bunu kolayca gerçekleştirmek için atlimage.h , kendi stdafx.h.
Gereksinimler
Başlık: atlimage.h