Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming
Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming
Pannello QD-OLED da 32 pollici con risoluzione 4K, frequenza di aggiornamento a 240Hz e tempi di risposta rapidissimi: il Gigabyte MO32U24 evolve il progetto del suo predecessore MO32U e alza ulteriormente l'asticella delle prestazioni. È ancora una volta un monitor indirizzato ai giocatori più esigenti
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh
realme 16 5G è un nuovo smartphone con sensore Sony IMX 852 da 50MP sul retro e uno specchio selfie fisico integrato nella camera bar, una prima nel segmento di mercato. Batteria da 6550mAh in un corpo da 8,1mm e 183g, certificazione IP69K e ricarica da 45W completano un pacchetto aggressivo per la fascia media, per uno dei prodotti più interessanti del produttore sul piano commerciale
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni
Sono ormai definitive le nuove norme del Codice della Strada per i monopattini elettrici. Non solo targa e assicurazione, le regole sono tante e riguardano diversi aspetti, vi spieghiamo come evitare sanzioni che possono essere salate
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 18-01-2007, 17:22   #1
terence_81
Member
 
Iscritto dal: Oct 2006
Messaggi: 46
paintComponent

Salve,

sto programmando con le swing ed ho un disegno fatto con il paintComponent su un pannello. Ora vorrei sapere come posso salvare (tramite un bottone o dal menù che ho già creato) l'immagine disegnata.
terence_81 è offline   Rispondi citando il messaggio o parte di esso
Old 18-01-2007, 18:00   #2
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Dipende da cosa intendi per disegno. Supponiamo che sia un disegno vettoriale, cioè nel paintComponent richiami metodi che disegnano un'immagine a colpi di draw e fill Shape. In questo caso, per salvare l'immagine prima crei un buffer che abbia le stesse dimensioni del componente:

Codice:
Insets margins = component.getInsets();
int width = component.getWidth() - (margin.left + margin.right);
int height = component.getHeight() - (margin.top + margin.bottom);
BufferedImage buffer =
    new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);
Poi invochi tu stesso paintComponent passandogli come argomento un Graphics che ricavi dal buffer:

Codice:
Graphics graphics = buffer.getGraphics();
graphics.translate(-margins.left, -margins.top);
component.paintComponent(graphics);
A questo punto l'immagine "buffer" avrà lo stesso aspetto del tuo disegno. Per salvarla puoi usare ImageIO:

Codice:
File file = new File("immagine.png");
ImageIO.write(buffer, "png", file);
Se invece disegni su un buffer, ad esempio perchè fai grafica bitmap, allora salvi direttamente quello.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming Gigabyte MO32U24 OLED: il 4K a 240Hz su un panne...
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh Recensione realme 16 5G: lo smartphone con Selfi...
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni Come rispettare tutte le nuove regole per i mono...
DLSS 4.5: con Dynamic Frame Generation e MFG 6X NVIDIA alza la posta DLSS 4.5: con Dynamic Frame Generation e MFG 6X ...
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere) Plaud NotePin S, il registratore IA si fa indoss...
Honor X80 Pro Max: svelata la data di la...
Chiuso finanziamento da 21 milioni: Orbi...
E-commerce in crescita in Italia: entro ...
Capcom non si ferma più: un Resid...
Volkswagen, Stellantis e Renault denunci...
Stop ai social per gli Under 16: il Regn...
Advanced Shader Delivery per tutte le GP...
EGO Power+ Aura R2: prova del robot tagl...
Queste AI sanno quando vengono messe all...
Prime Day anticipato, robot tagliaerba s...
La funzione che nessuno si aspettava: Go...
Shutterstock diventa una piattaforma cre...
Prime Day anticipato, le offerte sui rob...
Microsoft: l'obbligo dell'account online...
Prime Day anticipato, i migliori Roboroc...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:27.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v