|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Feb 2000
Città: Roma (S.E.) Trattative_concluse: 300+
Messaggi: 15719
|
[VB6] DIB??? Che macello BMP (o jpg) TO DIB
Premetto di essere un po' ignorante, vi pongo un quesito che probabilmente vi sembrera' banale:
Ho una libreria che lavora solamente con DIB (device indipendent bitmap). Non sono in grado, pero', di creare un handle DIB da una bitmap (o una jpg). L'unico modo che ho trovato e' quello di passare dalla clipboard OpenClipboard (Handle) ImmagineDIB = GetClipboardData(vbCFDIB) ecc ecc... lavorando su ImmagineDIB Esiste un qualcosa di simile per caricarla dal disco, per esempio... Immagine = LoadPicture("C:\img3.bmp") Come posso farla diventare una dib??? Grazie mille in anticipo Fede
__________________
I ricordi sono sempre tristi: quelli brutti perchè sono amari, quelli belli perché sono solo ricordi
Dal mio corpo in putrefazione cresceranno dei fiori, e io sarò dentro di loro. Questa è l'eternità. (E. Munch) |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Feb 2000
Città: Roma (S.E.) Trattative_concluse: 300+
Messaggi: 15719
|
![]()
__________________
I ricordi sono sempre tristi: quelli brutti perchè sono amari, quelli belli perché sono solo ricordi
Dal mio corpo in putrefazione cresceranno dei fiori, e io sarò dentro di loro. Questa è l'eternità. (E. Munch) |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Personalmente non ho mai usato i Dib. Direi che c'è da studiarci su, perciò non è argomento banale.
Ti posso segnalare questo tutorial, che pare davvero ben fatto ( ovviamente in inglese... ) : http://edais.mvps.org/Tutorials/GDI/DIB/DIBch1.html |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Feb 2000
Città: Roma (S.E.) Trattative_concluse: 300+
Messaggi: 15719
|
Ti ringrazio molto...
stavo basandomi proprio su quello. Speravo ci fosse un sistema piu' facile. In fin dei conti mi sarebbe sufficiente aggiungere un header sempre uguale... In ogni caso grazie ancora.
__________________
I ricordi sono sempre tristi: quelli brutti perchè sono amari, quelli belli perché sono solo ricordi
Dal mio corpo in putrefazione cresceranno dei fiori, e io sarò dentro di loro. Questa è l'eternità. (E. Munch) Ultima modifica di Fede : 29-10-2008 alle 07:56. |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Feb 2000
Città: Roma (S.E.) Trattative_concluse: 300+
Messaggi: 15719
|
Risolto con un workaround...
Ho fatto uno scriptino che apre mspaint (ovviamente @SF_Hide), con l'immagine(in questo modo gestisco bmp/jpg ecc ecc), la seleziona tutta, e la copia in clip, e si chiude. GetClipboardData(vbCFDIB) si prende il dib bello e fatto. Non sara' di certo un capolavoro, ma e' velocissimo e nascosto.
__________________
I ricordi sono sempre tristi: quelli brutti perchè sono amari, quelli belli perché sono solo ricordi
Dal mio corpo in putrefazione cresceranno dei fiori, e io sarò dentro di loro. Questa è l'eternità. (E. Munch) |
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
![]() Inoltre è davvero difficile trovare un PC Win senza Paint installato. Dai, posta questo tuo scriptino che sono curioso ! ![]() |
|
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Feb 2000
Città: Roma (S.E.) Trattative_concluse: 300+
Messaggi: 15719
|
Quote:
Codice:
Func Paint() ;riscrivi con variabili ... cosi' fa schifo Run("MSPAINT.EXE" & " " & """C:\imgprova.jpg""") ; controlla che la finestra appaia while WinSetState("imgprova.jpg - Paint", "", @SW_HIDE)=0 wend ControlSend("imgprova.jpg - Paint", "", "", "^a" ) ;send control A- seleziona tutto sleep (100) ControlSend("imgprova.jpg - Paint", "", "", "^c" ) ;send control C- copia in clip sleep (100) ControlSend("imgprova.jpg - Paint", "", "", "!{F4}" ) ;chiudi paint EndFunc Ho usato Autoit... poi il vb legge la clip
__________________
I ricordi sono sempre tristi: quelli brutti perchè sono amari, quelli belli perché sono solo ricordi
Dal mio corpo in putrefazione cresceranno dei fiori, e io sarò dentro di loro. Questa è l'eternità. (E. Munch) Ultima modifica di Fede : 29-10-2008 alle 12:02. |
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
|
![]() |
![]() |
![]() |
#9 |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
usa l'API LoadImage:
http://msdn.microsoft.com/en-us/library/ms648045.aspx e soprattutto, se puoi, lascia perdere Visual Basic 6, usa Visual Basic 2008: http://www.microsoft.com/express/vb/default.aspx |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:05.