La classe Java BufferedImage ha un lungo elenco di variabili di classe noto come tipo di immagine che può essere utilizzato come argomento per il costruttore BufferedImage.Come decidere quale tipo di immagine BufferedImage usare?
Tuttavia, i documenti Java hanno fornito una spiegazione minima su cosa questi tipi di immagini sono utilizzati e su come influenzerebbe la creazione di BufferedImage.
La mia domanda è:
Come sarebbe un tipo di immagine influenzare la BufferedImage da creare? Controlla il numero di bit usati per memorizzare vari colori (rosso, verde, blu) e la sua trasparenza?
Quale tipo di immagine che dovremmo usare se vogliamo solo creare
- un'immagine opaca
- un'immagine trasparente
- un'immagine traslucida
Ho letto la descrizione nel documento Java molte volte, ma proprio non riuscivo a capire come dovremmo usarlo. Ad esempio, questo:
TYPE_INT_BGR
rappresenta un'immagine con componenti di colore RGB a 8 bit, corrispondente ad un Windows o stile Solaris- modello di colore BGR, con i colori blu, verdi, e rosso impacchettato in pixel interi. Non c'è alfa. L'immagine ha un DirectColorModel. Quando i dati con alfa non opaco sono memorizzati in un'immagine di questo tipo, i dati del colore devono essere adattati a un modulo non premoltiplicato e l'alfa scartato, come descritto nella documentazione di AlphaComposite.
Cos'è un'immagine traslucida? In che modo è diverso da un'immagine trasparente? –
@AndyTurner Ricordo che l'ho letto da qualche parte sul rendere trasparenti parti dell'immagine mentre è traslucido sulla regolazione dell'opacità dell'intera immagine. Ad esempio, un file gif consente la trasparenza ma non la traslucenza, mentre i file png supportano entrambi. Questo è un esempio in cui potrebbe essere necessario utilizzare un diverso tipo di immagine. No? – user3437460