2009-09-26 15 views
11

Sto cercando una libreria grafica java di alto livello per la creazione di testo artistico, filigrane, ridimensionamento, ritaglio, identificazione dell'immagine e manipolazione. ImageMagic è un buon esempio di tale libreria, ma le sue porte java sono alquanto problematiche (eseguono imagemagic tramite JNI o ​​tramite riga di comando e sono dannose da distribuire ai server). Idealmente mi piacerebbe avere funzionalità simili a ImageMagic, ma puro Java e open-source, gratis da usare. Qualcuno ha mai visto qualcosa del genere?Libreria grafica Java

Questo è per un componente lato server. Un servizio che manipola immagini di vari formati web (png, jpg, gif ecc.).

Java ha le sue librerie, ovviamente (Graphics2D) ma sto cercando qualcosa di livello superiore.

Qui ci sono diversi casi di utilizzo:

  • ridimensionare e ritagliare le immagini. Se ha "ridimensionamento intelligente" o "ritaglio intelligente" che sarà interessante, ad esempio ridimensionamento della cucitura o ritaglio da punti di interesse nella foto
  • Disegno di testo artistico sulle immagini. Utilizzo di caratteri, colori, effetti di testo (testo 3D, carboncino e altri effetti)
  • Incorporamento di filigrane.
  • stratificazione immagini, utilizzando immagini come sfondo, mascherando con immagini ecc
  • identificazione di immagine come - numero di colori, ecc stdev

Come accennato, Java nel suo Graphics2D supporta tutto quanto sopra, ma è troppo basso, quindi cerco qualcosa con cui lavorare meglio.

Grazie!

+0

Ho usato pacchetti che manipolano immagini che dipendono da http://java.sun.com/javase/technologies/desktop/media/jai/ Non sono sicuro che soddisferà tutte le vostre esigenze. – TJR

risposta

8

Java Advanced Imaging (JAI) suona come quello che vuoi. Dal sito web:

L'API Java Advanced Imaging fornisce un insieme di interfacce orientate agli oggetti che supportano un modello di programmazione di alto livello semplice, che permette di manipolare le immagini facilmente.

L'ho trovato relativamente semplice da utilizzare. E le prestazioni erano migliori di quelle dei processi ImageMagic.

+0

Dalla mia esperienza con esso (per Computer Vision e Grafica) è davvero fantastico. – monksy

0
+0

In realtà sto cercando un pacchetto di manipolazione bitmap, non uno vettoriale, quindi sia SVG che EMF non mi sembrano una buona idea :( – Ran

1

Utilizzare ImageJ. Oltre ad essere un programma pulito, può essere usato come una libreria.

0

Raw Java2D semplifica il ridimensionamento e il ritaglio (basta assicurarsi di ridurre i poteri di 2, il backend non gestisce questo automaticamente).Ho trovato solo JAI utile per il mio utilizzo per eseguire la quantizzazione del colore ... il resto della pipeline sembrava non necessario per le funzioni di base.