Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
Colori e Font in java
2
classe java.awt.Color Color( int red, int green, int blue)
ha diversi costruttori: Color( int red, int green, int blue) per definire un colore partendo dalle sue tre componenti. (i tre interi hanno valori 0-255) Color( int red, int green, int blue, alfa) come sopra con in più la trasparenza (valori tra 0=trasparente e 100=opaco Color( int colore) di solito si esprime in esadecimale tipo 0x8a3b2f
3
Il colore… RGB: Red Green Blue (rosso verde blu)
HSB: Hue Saturation Brightness (Tinta, Saturazione, Luminosità) Se vogliamo indicare un colore con il metodo HSB possiamo usare il metodo statico (i 3 int sono nel range 0-255) Color.getHSBColor(int hue, int saturation, int brightness);
4
Il colore… CMJK Ciano, magenta giallo e nero, usato per la stampa
sono i colori complementari di rosso, verde, blu (sintesi sottrattiva) c = 255-red; m = 255-green; y = 255-blu Il K è il colore nero che viene aggiunto per la stampa. La sua intensità vale K=min(c,m,y); questa viene poi sottratta ai valori precedenti: C = c-k, M = m-k, J = j -k
5
Il colore In alcuni casi è conveniente considerare le componenti dei colori come un numero compreso tra 0 e 1 anziché tra (0 e 255) In questo caso vengono utilizzati 3 float. metodi statici di Color per conversioni static int HSBtoRGB(float hue, float saturation, float brightness) static float[] RGBtoHSB(int red, int green, int blue, float[] hsb)
6
Esempio Conversioni int rosso = (new Color(col) ).getRed();
float h = 0.2f; float s=0.5f; float b= 0.85f; int col = Color.HSBtoRGB(h, s,b); String esaColore = Integer.toHexString(col); int rosso = (new Color(col) ).getRed(); int verde = (new Color(col) ).getGreen(); int blu = (new Color(col) ).getBlue(); float [] z = new float[3]; z = Color.RGBtoHSB(rosso, verde, blu, z);
7
Colori RGB: casi particolari nero: 0,0,0 bianco=255,255,255
Lo stesso valore per le 3 componenti da luogo ad un colore grigio. Per rendere una foto in bianco e nero si può usare la formula: luminanza= 0.59*g + 0.3*r+0.11*b e usare questo valore per le 3 componenti
8
Color.magenta o Color.MAGENTA
classe Color black, blue, cyan, darkGray, gray, green, lightGray,magenta, orange, pink, red, white, yellow Color.colore restituisce un oggetto Color; il nome del colore è definito sia in minscolo che in maiuscolo. Es: Color.magenta o Color.MAGENTA
9
Dove utilizzare i colori
i componenti della classe Component hanno void setBackground(Color c) Color getBackground() void setForeground(Color c) Color getForeground() il colore di primo piano serve per disegnare testi, righe, archi, ecc.
10
Trasparenza Gli oggetti awt non gestiscono la trasparenza
Gli oggeti swing sì import javax.swing.* JFrame JLabel Gli oggetti swing ereditano dalla classe awt
11
new Font( String familyName, int style, int size )
Class Font new Font( String familyName, int style, int size ) familyName: GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames(); restituisce un vettore si strighe con tutti i font disponibili (variano da pc a pc; importare java.awt.*) style: Font.BOLD Font.ITALIC size: grandezza in pixel
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.