Oppure

Loading
01/08/21 8:12
bernie
Ok, si sono chiarire.
Quello che a mio parere non ritengo corretto al 100% è la decisione arbitraria del raggruppamento lineare dei livelli.
L'immagine da 8 bpp viene convertita a 4bpp sempre ok.
Poi scegli quanti bit usare nella palette 1-2-3-4.
Qui suddividi arbitrariamente i 16 livelli in base ai bit. Questa suddivisione dovrebbe essere modificabile e non fissa.
aaa
01/08/21 21:24
Carlo
Postato originariamente da bernie:
Qui suddividi arbitrariamente i 16 livelli in base ai bit. Questa suddivisione dovrebbe essere modificabile e non fissa.

Suddivido linearmente.
Invece vuoi una suddivisione arbitraria.

E' fattibilissimo, potresti mettere degli slider orizzontali che allargano o stringono il calcolo del range.
Ultima modifica effettuata da Carlo 01/08/21 21:26
in programmazione tutto è permesso
02/08/21 19:03
bernie
Ci sono, non sono sparito.
Ci sto pensando, ma ho poco tempo.
aaa
03/08/21 19:57
bernie
Sono arrivato alla conclusione che l'esempio è eccezionale e mi ha fatto venire un idea per un progetto futuro.
Però adesso mi devo concentrare sul progetto attuale.
Creare/caricare una grafica, convertirla a 4bpp usando solo 3 bit, tagliarla ,ruotarla e per finire ingrandirla.
aaa
04/08/21 20:19
bernie
Spero di non andare OT
Ho creato l'immagine seguendo i preziosi consigli di Carlo, a questo punto la devo ruotare , ho fatto cosi
Dim immagine As New Bitmap("C:\rettangolo.bmp")
        immagine.RotateFlip(RotateFlipType.Rotate90FlipNone)                    'ruota l'immagine di 90 gradi senso orario 
        immagine.Save("C:\rettangoloruotato90.bmp")
        immagine.Dispose() 


Tutto ok , l'immagine viene ruotata , però , l'immagine originale è 977kb, mentre quella ruotata solo 3kb e il mio sistema non la riconosce più , riconosce l'originale , ma non la ruotata.
Qualche suggerimento ? C'è un altra maniera per ruotare i bmp ?
Grazie
Ultima modifica effettuata da bernie 04/08/21 20:21
aaa
07/08/21 8:44
Carlo
se sull'istruzione save non metti in cosa vuoi salvare l'immagine viene salvata in PNG, indipendentemente dall'estenzione che hai messo.

immagine.Save("C:\rettangoloruotato90.bmp", Imaging.ImageFormat.Bmp)
in programmazione tutto è permesso
07/08/21 14:26
bernie
Grazie Carlo, ci sono arrivato ieri sera dopo 3gg.
Mi sembrava talmente logico che se prendo una grafica e la ruoto, la "nuova" grafica mantenesse tutte le caratteristiche della grafica originale.
Ho imparato qualcosa che non dimenticherò.....
Quindi tutte le volte che metto mano a una grafica, per ruotarla o ingrandirla, quando la salvo devo sempre specificare in cosa voglio salvare la grafica.
Grazie
aaa
07/08/21 19:20
Carlo
Postato originariamente da bernie:
Mi sembrava talmente logico che se prendo una grafica e la ruoto, la "nuova" grafica mantenesse tutte le caratteristiche della grafica originale.

se prendi una grafica e la ruoti, la "nuova" grafica mantiene tutte le caratteristiche della grafica originale.
Postato originariamente da bernie:
quando la salvo devo sempre specificare in cosa voglio salvare la grafica.

si sempre, indipendentemente da come hai ottenuto la grafica, se ometti il parametro Imaging.ImageFormat di default l'immagine viene salvata in PNG.
Ultima modifica effettuata da Carlo 07/08/21 19:28
in programmazione tutto è permesso