Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



Bitmap vs BITMAP

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: Bitmap vs BITMAP

Autor: ulkas

0:52:54 16.02.2009

skus tam niekde vopchat uvolnenie handle

bitmap.releaseHandle

Citovat příspěvek

 

Re: Bitmap vs BITMAP

Autor: RadekChalupa

18:37:17 04.11.2008

Možná je to tm že chybí volání CloseClipboard "páarované" ke každému
OpenClipboard.
Jinak nastavení kvality při ukládání do BMP je minimálně nadbytečné a nemá
vliv. To pouze u formátu s proměnnou "velikostí" komprese jako JPEG.

>
>
> Děkuji p. Chalupovi za jeho trpělivost avšak ještě o jednu věc. Tato
> funkce proběhne jen jednou se statusem OK. potom již s Win32Err
>
> BOOL snapshot(void)
> {
> CLSID encoderClsid;
> EncoderParameters encoderParameters;
> Status status;
>
> BOOL k;
> Bitmap* Plocha;
> HBITMAP hBitmap; //handle to bitmap
> BITMAP bitmap;
>
> if (VratIdTridyKodeku(L"image/bmp", &encoderClsid) == -1)
> {MessageBox(g_hwndMain, TEXT("kodek BMP pro uložení selhal, uložení
> nebude funkční"), TEXT("Chyba"), MB_ICONINFORMATION);
> return FALSE;}
>
> encoderParameters.Count=1;
> encoderParameters.Parameter[0].Guid=EncoderQuality;
> encoderParameters.Parameter[0].Type=EncoderParameterValueTypeLong;
> encoderParameters.Parameter[0].NumberOfValues=1;
>
> //nastaveni kvality
> ULONG kvalita=80;
> encoderParameters.Parameter[0].Value=&kvalita;
>
> // k=capGrabFrame(g_hwndCap);
> k=capEditCopy(g_hwndCap);
>
> k=OpenClipboard(NULL);
> hBitmap = (HBITMAP) GetClipboardData(CF_BITMAP);
>
> GetObject(hBitmap, sizeof(BITMAP), &bitmap);
> Plocha = new Bitmap((HBITMAP)hBitmap, NULL);
>
> status =
> Plocha->Save(L"snapshot.bmp",&encoderClsid,&encoderParameters);
> if (status != Ok) MessageBox(g_hwndMain, TEXT("uložení tmp selhalo"),
> TEXT("Chyba"), MB_ICONINFORMATION);
> else swprintf(sz,sizeof(sz),L"snapshot.bmp");
>
> if (Plocha) {delete(Plocha); Plocha=NULL;}
> DeleteObject(hBitmap);
>
> return TRUE;
> }



Příspěvek zaslán emailem

Citovat příspěvek

 

Re: Bitmap vs BITMAP

Autor: mdusek

21:44:31 03.11.2008

Děkuji p. Chalupovi za jeho trpělivost avšak ještě o jednu věc. Tato funkce proběhne jen jednou se statusem OK. potom již s Win32Err

BOOL snapshot(void)
{
CLSID encoderClsid;
EncoderParameters encoderParameters;
Status status;

BOOL k;
Bitmap* Plocha;
HBITMAP hBitmap; //handle to bitmap
BITMAP bitmap;

if (VratIdTridyKodeku(L"image/bmp", &encoderClsid) == -1)
{MessageBox(g_hwndMain, TEXT("kodek BMP pro uložení selhal, uložení nebude funkční"), TEXT("Chyba"), MB_ICONINFORMATION);
return FALSE;}

encoderParameters.Count=1;
encoderParameters.Parameter[0].Guid=EncoderQuality;
encoderParameters.Parameter[0].Type=EncoderParameterValueTypeLong;
encoderParameters.Parameter[0].NumberOfValues=1;

//nastaveni kvality
ULONG kvalita=80;
encoderParameters.Parameter[0].Value=&kvalita;

// k=capGrabFrame(g_hwndCap);
k=capEditCopy(g_hwndCap);

k=OpenClipboard(NULL);
hBitmap = (HBITMAP) GetClipboardData(CF_BITMAP);

GetObject(hBitmap, sizeof(BITMAP), &bitmap);
Plocha = new Bitmap((HBITMAP)hBitmap, NULL);

status = Plocha->Save(L"snapshot.bmp",&encoderClsid,&encoderParameters);
if (status != Ok) MessageBox(g_hwndMain, TEXT("uložení tmp selhalo"), TEXT("Chyba"), MB_ICONINFORMATION);
else swprintf(sz,sizeof(sz),L"snapshot.bmp");

if (Plocha) {delete(Plocha); Plocha=NULL;}
DeleteObject(hBitmap);

return TRUE;
}

Citovat příspěvek

 

Re: Bitmap vs BITMAP

Autor: RadekChalupa

7:34:37 03.11.2008

Bitmap* b = new Bitmap((HBITMAP)hBitmap, NULL);
pak (Graphics*)gr->DrawImage(.....

Citovat příspěvek

 

Bitmap vs BITMAP

Autor: mdusek

23:44:38 01.11.2008

Zdravím všechny, prosím o radu, jak do Bitmapy nakreslit BITMAPu. (mám hBitmapu z clipboardu a potřebuji ji nakreslit do Plochy (Bitmap* Plocha;), která pak slouží k uložení do jpg v GDI+.

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: