Newsgroup: it.comp.programmare.win32
Titolo: Gif

Salve a tutti, ho da poco iniziato a studiare le Api di windows 32, come
libro di riferimento uso il Petzold (e ovviamente la documentazione
Microsoft. Ho imparato a creare e inserire immagini bitmap nelle finestre,
però il mio dubbio riguarda altri tipi di formati (jpeg, gif) non sono
riuscito a trovare la documentazione su come inserirle.
Qualcuno di voi esperti può dirmi qualcosa a proposito sull'argomento o
linkarmi a qualche sito con tutorial?
Grazie a tutti

Kronomor ha scritto:

Le JPEG altro non sono che bitmap compresse; il formato JPEG e quello BMP
infatti coincidono (vedi il membro biCompression della struttura
BITMAPINFOHEADER). Per quanto riguarda le GIF invece, prova a cercare su
questo sito: 
http://www.wotsit.org
ciao
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 questo sito: 
http://www.wotsit.org
Con la API OleLoadPicture puoi direttamente caricare immagini in formato
jpg, tiff e non so cos'altro senza diventar matto con gli algoritmi di
compressione.
Con google trovi materiale a kilate, inoltre guarda anche il sito
http://www.luigibianchi.com/uncommon_controls.htm
il patagrafo "GIF / PNG / JPEG lightweight Image Control" puo' esserti
utile.
Ciao
Stefano "HappyMan" (Lake Maggiore - Italy)
-- 
The Personal Framework for Object Oriented Windows Development (Win32)
http://www.sgr.info
Email happyman69 (at) 
despammed.com

 BITMAPINFOHEADER).
Si, e' vero che il membro biCompression accetta anche i valori BI_JPEG e 
BI_PNG ma solo per Win 98/ME/2000/XP e solo per poter fare certe cose.
No, JPEG e BMP *non* coincidono !
Un vero file JPEG ha un formato ed un header completamente diverso 
(vedere su 
wotsit.org
).
Direttamente dal MSDN di Microsoft:
-----------------
JPEG and PNG Extensions for Specific Bitmap Functions and Structures
On certain versions of Microsoft Windows, the StretchDIBits and 
SetDIBitsToDevice functions allow JPEG and PNG images to be passed as 
the source image to printer devices. This extension is not intended as a 
means to supply general JPEG and PNG decompression to applications, but 
rather to allow applications to send JPEG- and PNG-compressed images 
directly to printers having hardware support for JPEG and PNG images.
The BITMAPINFOHEADER, BITMAPV4HEADER and BITMAPV5HEADER structures are 
extended to allow specification of biCompression values indicating that 
the bitmap data is a JPEG or PNG image. These compression values are 
*only valid for SetDIBitsToDevice and StretchDIBits when the hdc 
parameter specifies a printer device*. To support metafile spooling of 
the printer, the application should not rely on the return value to 
determine whether the device supports the JPEG or PNG file. The 
application must issue QUERYESCSUPPORT with the corresponding escape 
before calling SetDIBitsToDevice and StretchDIBits. If the validation 
escape fails, the application must then fall back on its own JPEG or PNG 
support to decompress the image into a bitmap.
-----------------

 (vedere su 
wotsit.org
).
be'... ho imparato una cosa nuova! ^_^
ti assicuro che quando mi sono studiato il membro biCompression ero
convinto che JPEG e bitmap coincidessero... certo che a caricare le
immagini dai file nei formati piů comuni c'č da diventare scemi, anzi
strano che le MFC non offrano alcunchč per aiutare il povero
programmatore: nella VCL si ricolve tutto con TPicture.LoadFromFile!
