Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    598

    Programmino per immagini

    Salve, dovrei costruire un piccolo validatore di file, in particolare vorrei, dato un file in input verificare:
    1) Se il file è un jpg o gif (scartare tutti gli altri)
    2) Verificarne le dimensioni (altezza e larghezza)
    3) Verificarne la dimensione

    Potete darmi qulche dritta su quali metodi richiamare?
    Soffrire sempre mollare mai

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Programmino per immagini

    Originariamente inviato da globalace
    1) Se il file è un jpg o gif (scartare tutti gli altri)
    Non ci sono (almeno non mi risulta) classi/metodi di Java SE specifici per fare questo (e se esistono in altre librerie esterne non lo so).
    Una possibile soluzione è quella di analizzare una parte del file, tipicamente si tratta di leggere la parte iniziale del file dove ci sono header e marcatori particolari che denotano il tipo della immagine e che possono fornire altre informazioni sulla immagine.
    Ovviamente c'è da studiare le specifiche dettagliate di ogni formato che si vuole gestire. Consulta in rete siti come ad esempio http://www.wotsit.org dove puoi trovare molte specifiche.

    Originariamente inviato da globalace
    2) Verificarne le dimensioni (altezza e larghezza)
    Una volta determinato che il file è una immagine, la si può caricare per ottenere un Image o BufferedImage tramite delle API di Java SE. Ci sono svariate possibilità a seconda se si sta sviluppando una applet o una applicazione. Il modo più semplice e veloce in genere è usare la classe javax.imageio.ImageIO che ha dei comodi metodi read().

    Una volta che hai, parlando in generale, un oggetto di tipo Image (BufferedImage estende Image), puoi invocare i metodi specifici (vedi javadoc) per sapere larghezza/altezza.
    Tieni inoltre presente che le API di Java SE supportano relativamente pochi formati, non certo tutti i formati/sottoformati esistenti. Se vuoi un supporto a formati particolari, devi cercare altre librerie esterne come la JAI della Sun o altre (cerca qui).

    Originariamente inviato da globalace
    3) Verificarne la dimensione
    Se crei un oggetto java.io.File (che rappresenta solo un "pathname" astratto) puoi usare il suo metodo length().
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.