Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr sbarca ufficialmente in Italia con tre modelli elettrici premium, X, 7X e 001, distribuiti da Jameel Motors su una rete di 52 punti vendita già attivi. La Zeekr X parte da 39.900 euro, la 7X da 54.100: piattaforma a 800V, chip Snapdragon di ultima generazione, ricarica ultraveloce e un'autonomia dichiarata fino a 615 km WLTP. Le prime consegne sono previste a metà aprile
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 20-04-2006, 22:40   #1
Sint
Junior Member
 
Iscritto dal: Apr 2006
Città: Roma
Messaggi: 12
[Java] Inserire una linea in un immagine

Il mio problema è il seguente:
ho un immagine gif che devo modificare inserendo delle perturbazioni standard decise da me come ad esempio una linea oppure un quadratino o un cerchietto, insomma cose di questo genere, e salvare infine l'immagine modificata in un nuovo file. La cosa più logica mi sembrava estrarre il Graphics dall' Image e poi usare quest'ultima che forniva metodi come drawLines(...) oppure drawRect(...) che costruivano, appunto, linee e rettangoli ma poi mi sono scontrato con il problema di costruire un image (da salvare poi in gif) a partire dal Graphics. Avevo pensato anche di estrarre tutti i pixel attraverso la classe PixelGrabber e modificare poi i singoli pixel ma per fare una linea in diagonale è una cosa abbastanza complicata andarea a trovare i pixel giusti. Potete aiutarmi??? Avete qualche idea??? Grazie per il vostro aiuto

Ultima modifica di Sint : 20-04-2006 alle 22:44.
Sint è offline   Rispondi citando il messaggio o parte di esso
Old 20-04-2006, 22:57   #2
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
PixelGrabber è lì per retrocompatibilità ma il suo scopo è stato rimpiazzato dai vari strumenti presenti nel package java.awt.image.

Comunque, l'idea del Graphics è corretta. Scrivendo:

Graphics g = image.getGraphics();
g.setColor(Color.BLACK);
g.drawLine(10, 10, 20, 20);

quella linea è disegnata sulla superficie image. Salvando quell'image ottieni l'immagine "originale" con la sua linea nera.

L'unica magagna è che manca, nelle classi standard, il plug-in per salvare in formato "gif". Credo che curiosando in rete si riesca comunque a trovare uno strumento ad hoc.
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 21-04-2006, 00:55   #3
Sint
Junior Member
 
Iscritto dal: Apr 2006
Città: Roma
Messaggi: 12
Questo è il mio pezzo di codice:

ImageIcon immagineIco = new ImageIcon(file);
Image immagine = immagineIco.getImage();
Graphics g = immagine.getGraphics();
g.setColor(Color.BLACK);
g.drawLine(10, 10, 20, 20);

dove file è una stringa che indica il percorso dell'immagine, e questa è l'eccezione:

Exception in thread "main" java.lang.IllegalAccessError: getGraphics() only valid for images created with createImage(w, h).

COme faccio???
Sint è offline   Rispondi citando il messaggio o parte di esso
Old 21-04-2006, 12:23   #4
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Così:

BufferedImage image = ImageIO.read(file);

Oppure:

Codice:
ImageIcon icon = new ImageIcon(file);
BufferedImage image = new BufferedImage(
    icon.getIconWidth(),
    icon.getIconHeight(),
    BufferedImage.TYPE_INT_ARGB);
image.getGraphics().drawImage(icon.getImage(), 0, 0, null);
Non ricordo se ImageIO abbia il lettore per il formato gif. In caso non l'abbia, usi il secondo approccio (copi un image in un BufferedImage).
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 22-04-2006, 19:12   #5
Sint
Junior Member
 
Iscritto dal: Apr 2006
Città: Roma
Messaggi: 12
Grazie mille... funziona!!!!! Adesso è rimasto solo il problema di salvare l'immagine modificata in formato Gif ma spero di non trovare grossi problemi per farlo!! Ti voglio proprio bene... grazie ancora!!!
Sint è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare HP Imagine 2026: abbiamo visto HP IQ all’opera, ...
Intel lancia Core Ultra X9 378H: hardwar...
Tomodachi Life non supporterà Handheld M...
Identificati i boss di REvil e GandCrab:...
Google Chrome 148 introduce il caricamen...
Tomb Raider: Legacy of Atlantis, l'uscit...
Casa Bianca: proposto un budget ridotto ...
Telecamere Arlo in offerta su Amazon: Es...
Maine primo stato USA a vietare i data c...
DDL PMI, stop alle false recensioni: le ...
Classifiche JustWatch marzo: Una battagl...
iPhone Fold a rischio ritardo: problemi ...
Artemis II: raggiunto il punto più...
LG OLED e Hisense QLED da 85'' e 98'': s...
DJI Mini 5 Pro Fly More Combo a 862€: se...
Roborock Saros 10R a 899,99€: uno dei mi...
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:28.


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