JAI für SWT?

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Tach,

was ist das Pendant zu JAI (Java Advanced Imaging) in SWT?
Gibt es unter SWT sowas überhaupt? Insbesondere geht es mir um
die Lese-/Schreibunterstützung für alle gängigen Grafikformate,
besonders das 16Bit-TIFF-Format (PS und DNG vielleicht?).
Color Management Unterstützung wäre auch "nett" ;)

org.eclipse.swt.graphics.ImageLoader versteht leider nur BMP (wer nützt es überhaupt?),
ICO, JPEG, GIF und PNG. :autsch:

Artikel zum Thema "Eigenen ImageLoader schreiben" wären, wenn es
sonst nichts gibt, auch gut.

Danke
 
G

Guest

Gast
Danke, es scheint mir aber ziemlich AWT lastig zu sein. ???:L
Da tauchen alte Bekannte wie java.awt.image.ImageProducer,
java.awt.image.ColorModel etc. auf. ;)

Vielleicht sieht noch jemand den Thread, der etwas anderes kennt.
 
R

Roar

Gast
ähh.... das ist nunmal die standart api für bildmanipulation. dashat nüscht mit awt <-> swing zu tun
edit: ach du benutzt swt :bahnhof: na dann viel spaß beim integrieren :S
 

Semerzo

Aktives Mitglied
Hallo,

Mit den Codecs hatte ich bisher noch keine Probleme. Wie lädst du denn ein Bild?
Code:
Image image = new Image(getDisplay(),"c:\meinBild.gif");
So? Das unterstützt allerdings nur die von dir genannten Bildformate. Hm.

Auf jeden Fall solltest du dir folgende Artikel ansehen, vielleicht steht da was drin, das ich überlesen hab:

Taking a look at SWT Images
Dieser Artikel geht genau auf deine Thematik ein.

Java 2D imaging for the Standard Widget Toolkit
Ein ähnliche Artikel von IBM.

Graphics Context - Quick on the draw
Eines der letzten Topics dieses Artikels behandelt das Zeichnen von Bildern.

Using OpenGL with SWT
Wenn gar nichts mehr hilft, solltest du damit auch Bilder laden können.
 
G

Guest

Gast
Danke. Bis auf das mit OpenGL kenne ich die anderen Seiten.
Worauf ich gehofft habe, ist eine spezielle Implementierung
von ImageLoader, die auch TIFF und evtl. PSD, DNG unterstützt,
damit folgendes möglich ist
Code:
ImageLoader2 imageLoader = new ImageLoader2();
imageLoader.data = new ImageData[] {imageData};
imageLoader.save("C:/temp/foo.tiff", ImageLoader2.IMAGE_TIFF);
Ich vermisse irgendwie den gleichen Mechanismus wie bei den Codecs
von JAI, die beliebig um neue Formate erweiter werden können.
Man kann neue Hinzufügen und das Lesen/Speichern erfolgt immer noch
nach dem gleichen Schema.
Oder anders ausgedrückt, ich wollte mir die Arbeit ersparen, das Lesen
und Schreiben anderer Formate selbst zu implementieren.
Da ich erst seit kurzem mit SWT zu tun habe, wird es dadurch noch etwas
aufwändiger.

Nochmals Danke. ;)
 

Semerzo

Aktives Mitglied
The simplest way to create an SWT Image is to load it from a recognized graphic file format. This includes GIF, BMP (Windows format bitmap), JPG, and PNG. The TIFF format is also supported in more recent Eclipse releases. Images can be loaded from a known location in the file system using the constructor Image(Display display, String fileLocation):
In meiner SWT Version (3.0.1) gibt es die Konstante SWT.IMAGE_TIFF auch. TIFF scheint also zu klappen. Der Code funktioniert bei mir:
Code:
ImageLoader imageLoader = new ImageLoader();
imageLoader.save("C:/temp/foo.tiff", SWT.IMAGE_TIFF);
PSD und DNG sagen mir leider nichts, wobei ich auch auf die Konstante SWT.IMAGE_UNDEFINED gestossen bin. Bei weiterem Lesen scheint es mir so, als müsstest du wirklich einen eigenen Loader schreiben, wenn du in dem gewünschten Format speichern willst. Wenn du das machst, schreib deine Lösung doch an die Jungs von SWT. Bzw. wenn du Hilfe oder Anregungen brauchst, soweit ich das weiss, sind die in dem Punkt recht offen.

Könntest du evtl versuchen eine "Brücke" zu schlagen, mittels einem Format, dass JAI und das SWT beide kennen? Du könntest dann wohl nicht im PSD bzw. DNG Format speichern. Sprich mit JAI Datei öffnen, in ein gemeinsam bekanntest Format wandeln, an ImageData übergeben. Wäre evtl auch etwas langsam.
 
G

Guest

Gast
Hmm... bei mir funktionierte TIFF nicht, obwohl es angeblich unterstützt wird.
Es könnte u.U. an der Komprimierung liegen. Ich habe Eclipse 3.1 drauf.

PSD ist das Photoshop-Format. Die Variante ohne Layer würde mit reichen.
DNG ist ziemlich neu. Es ist ein Versuch von Adobe einen Standard unter
den RAW-Formaten verschiedener Hersteller zu etablieren. Zur Zeit macht
jeder sein eigenes Ding und gibt die Spezifikationen nicht frei. Es ist ein
Alptraum für alle Entwickler von Raw-Konvertern.
Stichwort: Canon Raw. Bei fast jedem DSLR Model ein anderes Format
und ExifDaten teilweise verschlüsselt.

Was ich vor habe, ist eine Bilddatenbank zu entwickeln. Wenn ich aber die
üblichen Formate nicht lesen, anzeigen und speichern kann, kann ich das
Thema gleich vergessen. Für Eclipse habe ich mich entschieden, um das
Framework kennen zu lernen. In Swing wäre ich schon fertig. ;)
 

Semerzo

Aktives Mitglied
Ich arbeite nur mit den SWT Bibliotheken ohne das RCP Framework von Eclipse. Find ich eigenartig, dass des bei dir nicht klappt. Andererseits, TIFF ist doch das Tagged Image File Format, evtl kennt SWT/Eclipse dein Format nicht. Frei nach der HTML Deviese, was ich nicht kenne, zeige ich nicht an.

Kurz geschaut, habs nicht ganz gelesen:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=57382
Da hat jemand Probleme mit TIFF, wird lediglich weiss angezeigt. Wenn du ein ähnliches oder anderes Problem hast, schreib doch kurz dort, https://bugs.eclipse.org/bugs/ , rein. Dann haben nachfolgende wenigstens etwas davon :)
 
G

Guest

Gast
:autsch: Das ist es. Das Format wird einfach nicht unterstützt.
Jedes einfache Commandozeilenprogramm (z.B. tifficc) kann
damit umgehen, nur der ImageLoader von Eclipse nicht. :(
Das ist sowas von ärgerlich. Es gibt nur halbfertige Sachen in
Java wie z.B. die HTML-Unterstützung in Swing.
Ich habe schon oft Gespräche bei Kunden gehabt, wo sie ein
bestimmtes Feature haben wollten und ich antworten musste,
dass es in Java nicht geht.
Man muss sich dann solche Bemerkungen anhören wie
"Also in VB geht das in fünf Minuten, wo ist das Problem?".
Ich könnte heulen.

Danke, jetzt kenne ich zumindest die Ursache.
 
R

Roar

Gast
Anonymous hat gesagt.:
Ich habe schon oft Gespräche bei Kunden gehabt, wo sie ein
bestimmtes Feature haben wollten und ich antworten musste,
dass es in Java nicht geht.

hm, das glaub ich dir nicht.
 
G

Guest

Gast
Roar hat gesagt.:
Anonymous hat gesagt.:
Ich habe schon oft Gespräche bei Kunden gehabt, wo sie ein
bestimmtes Feature haben wollten und ich antworten musste,
dass es in Java nicht geht.

hm, das glaub ich dir nicht.
Entschuldige, dass ich eine solche Blasphemie in einem Java Forum von mir lasse. :wink:
 
R

Roar

Gast
Anonymous hat gesagt.:
Roar hat gesagt.:
Anonymous hat gesagt.:
Ich habe schon oft Gespräche bei Kunden gehabt, wo sie ein
bestimmtes Feature haben wollten und ich antworten musste,
dass es in Java nicht geht.

hm, das glaub ich dir nicht.
Entschuldige, dass ich eine solche Blasphemie in einem Java Forum von mir lasse. :wink:
was fürn ding? ;)
nö echt, nur weil feature nr XYZ nicht in der j2se enthalten ist heisst das nicht dass es nicht mit java geht :? ;)
 
G

Guest

Gast
Klar: "Geht nicht, gibt's nicht", die Frage ist nur, mit welchem Aufwand.
Gerade Dir bräuchte ich es aber nicht zu erzählen, da ich weiß, dass Du
Java und dessen Schwächen sehr gut kennst.
Im Serverbereich ist Java verdammt stark. Aber die Desktop Integration
steckt immer noch in den Kinderschuhen.

OK, wir wollen hier nicht die 1000ste Diskussion über Vor-/Nachteile von
Java anfangen. ;)
Jede Programmiersprache ist in meinen Augen nur ein Mittel zum Zweck,
nicht mehr und nicht weniger.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Anzeige ID und Markierung für Knoten in Eclipse & Swing AWT, Swing, JavaFX & SWT 4
Juelin setzen background color für selected Row im Tableview AWT, Swing, JavaFX & SWT 21
Juelin Für Java-Spezialisten AWT, Swing, JavaFX & SWT 4
H JTabel - RowFilter Daten für Berechnung filtern AWT, Swing, JavaFX & SWT 6
I JavaFX JavaFx-Anwendung für die Erstellung einer Windows-Anwendung? AWT, Swing, JavaFX & SWT 6
MJannek Eigene Java Klasse für allgemeine Grafikelemente AWT, Swing, JavaFX & SWT 8
M Vokabelprogram - Schleife für Liste soll schrittweise durchlaufen werden AWT, Swing, JavaFX & SWT 3
tommybalbor JavaFx Anwendung klappt nicht für macOs Nutzern, wenn ich zwei dependecies bei maven hinzufüge AWT, Swing, JavaFX & SWT 6
I Libraries für AWT für andere Grafik-Frameworks tauglich machen AWT, Swing, JavaFX & SWT 6
R auto. Importanweisungen für javafx funktioniert in Eclipse nicht mehr AWT, Swing, JavaFX & SWT 4
komplettlost Vollbildmodus für MacOs Nutzer geht nicht AWT, Swing, JavaFX & SWT 13
D JavaFX Schadensberechnung für Kartenspiel AWT, Swing, JavaFX & SWT 1
P JTable Listener für die Änderung einzelner Zellen oder Rows AWT, Swing, JavaFX & SWT 2
Jose05 JavaFX: eigene FXML-Datei für einen Button AWT, Swing, JavaFX & SWT 3
L actionListener für Button AWT, Swing, JavaFX & SWT 97
izoards Textfeld für Zeit AWT, Swing, JavaFX & SWT 4
CptK Wie funktioniert contains() für Path2D.Double AWT, Swing, JavaFX & SWT 10
T Getter und Setter für eine Stage AWT, Swing, JavaFX & SWT 6
P Swing Programm hängt sich bei Buttondruck auf? (GUI für "Chatbot" erstellen) AWT, Swing, JavaFX & SWT 15
T Button für GUI programmieren AWT, Swing, JavaFX & SWT 1
Z Switch Case für Buttons AWT, Swing, JavaFX & SWT 8
M Hough-Transformation für Kreise und andere Formen AWT, Swing, JavaFX & SWT 3
kodela HTML-tags für JLabel AWT, Swing, JavaFX & SWT 9
E Keystroke für Ausschneiden läßt sich nicht ändern AWT, Swing, JavaFX & SWT 2
M Swing Cell Renderer für Zeilenumbruch in JTable AWT, Swing, JavaFX & SWT 0
MiMa Package Struktur für GUI Programmierung AWT, Swing, JavaFX & SWT 26
N JavaFX 1 Listener für mehrere ChoiceBoxen AWT, Swing, JavaFX & SWT 3
B eclipse für JavaFx setuppen AWT, Swing, JavaFX & SWT 4
K Swing Struktur für TreeTable rekursiv aufbauen AWT, Swing, JavaFX & SWT 17
A Swing JTextField an Button übergeben für Popup-Fenster funktioniert nicht AWT, Swing, JavaFX & SWT 3
H Ein Patten für das Gluon Mobile Framework AWT, Swing, JavaFX & SWT 7
J Gibt es einen Grund für 16x16 anstatt z.B. 15x15 Tiles ? AWT, Swing, JavaFX & SWT 10
F JFormattedTextField für kg und Währung AWT, Swing, JavaFX & SWT 6
V Swing für jedes Kästchen eine eigene Farbe AWT, Swing, JavaFX & SWT 2
F Wie bekomme ich den Wert der ComboBox in eine Variable gespeichert welche ich für meinen ActionListener nutzen kann? AWT, Swing, JavaFX & SWT 3
Soloeco JavaFX Dreifachklick für MenuButton erforderlich AWT, Swing, JavaFX & SWT 2
L JavaFX Lösungsvorschläge für dieses coole Control AWT, Swing, JavaFX & SWT 8
looparda Suche Lib für Visualisierung von Graphen AWT, Swing, JavaFX & SWT 12
G LayoutManager Beliebige Anzahl von Panels für LayoutManager AWT, Swing, JavaFX & SWT 3
L Ein Actionlistener für ein Textfeld, anstatt viele Actionlistener für ein Textfeld AWT, Swing, JavaFX & SWT 7
S Swing Finde Grund für NullPointerExeption nicht. AWT, Swing, JavaFX & SWT 2
W JavaFX (j)Unittests für GUI AWT, Swing, JavaFX & SWT 0
B JavaFX JavaFX TableView PropertyValueFactory für Werte aus HashMap AWT, Swing, JavaFX & SWT 2
SchmidiMC Swing Vorschläge für ein Design AWT, Swing, JavaFX & SWT 5
Z JavaFX Pane für wechselnde Sub-Panes mit Auto-Resize AWT, Swing, JavaFX & SWT 2
S 2D-Grafik affine Transformation für Text-Shape AWT, Swing, JavaFX & SWT 0
G Swing Variable Elemente für GroupLayout AWT, Swing, JavaFX & SWT 18
kodela Accalerator für einige Menüoptionen funktioniert nicht mehr AWT, Swing, JavaFX & SWT 3
P Swing Empfehlungen für einfaches Computerspiel AWT, Swing, JavaFX & SWT 4
L DragDropped für jede Node AWT, Swing, JavaFX & SWT 0
temi JavaFX Lösungsansatz für Umsetzung gesucht AWT, Swing, JavaFX & SWT 4
J Swing JavaProgramm für Verschlüssen für eine Datei AWT, Swing, JavaFX & SWT 19
D DatePicker für Java Swing AWT, Swing, JavaFX & SWT 2
MiMa Programmeinstellungen für Anwendung?? AWT, Swing, JavaFX & SWT 54
heinz ketchup While-Schleife in einem Service für GUI AWT, Swing, JavaFX & SWT 22
L JavaFX Renderer für JavaFX AWT, Swing, JavaFX & SWT 2
MiMa GUI Controller für Border Pane als MVC Modell AWT, Swing, JavaFX & SWT 1
L Font für Dashboard AWT, Swing, JavaFX & SWT 3
F Swing JColorChooser für die JToggleButtons AWT, Swing, JavaFX & SWT 5
S JavaFX Optimierung für verschiedene Auflösungen AWT, Swing, JavaFX & SWT 12
L JavaFX Animation für Panel wechsel AWT, Swing, JavaFX & SWT 3
T Swing Drag and Drop für JComponents AWT, Swing, JavaFX & SWT 1
Kloso Swing Pseudocode für Strafurzeichnung AWT, Swing, JavaFX & SWT 4
F Konstruktor für "Vier Gewinnt" AWT, Swing, JavaFX & SWT 10
L JavaFX PdfViewer für JavaFX Anwendung AWT, Swing, JavaFX & SWT 6
R Swing Welche LayoutManager sind die richtigen für mich? AWT, Swing, JavaFX & SWT 11
L Event Handling Gui für Taschenrechner AWT, Swing, JavaFX & SWT 27
C Slider für Zeitauswahl AWT, Swing, JavaFX & SWT 3
M Limit für JFrame-Vergrößerung AWT, Swing, JavaFX & SWT 8
GreenTeaYT Button funktioniert nicht für Ein-und Auszahlungen? AWT, Swing, JavaFX & SWT 8
K Liniendicke für Line Chart dynamisch ändern AWT, Swing, JavaFX & SWT 0
K JButton nicht sichtbar machen für User 2 AWT, Swing, JavaFX & SWT 4
OnDemand Gui Themes für FX AWT, Swing, JavaFX & SWT 4
G DefaultListModel für JList AWT, Swing, JavaFX & SWT 2
P JavaFX Kalender mit Kacheln für Ereignisse AWT, Swing, JavaFX & SWT 4
S ActionListener für alle Buttons AWT, Swing, JavaFX & SWT 26
J Swing Neuen Command für "show"? AWT, Swing, JavaFX & SWT 2
sandaime Swing Thread für CMD auslesen AWT, Swing, JavaFX & SWT 16
H Swing JFileChooser für nicht existierendes Unterverzeichnis AWT, Swing, JavaFX & SWT 3
R Java FX - Fxml - relative Größenangaben für Breite und Höhe einer TextArea AWT, Swing, JavaFX & SWT 8
D GUI-Bau für ein Auswertungs-Tool AWT, Swing, JavaFX & SWT 11
L Swing CellRenderer für einzelne Zellen? AWT, Swing, JavaFX & SWT 5
RalleYTN Swing Menü für Texteditor (Rechtsklick) AWT, Swing, JavaFX & SWT 4
H Applet Flappy Bird für Noobs AWT, Swing, JavaFX & SWT 4
X JavaFX Tooltips für XYChart-Knoten werden nicht angezeigt! AWT, Swing, JavaFX & SWT 3
Thallius Swing Aufgabe für einen der gerne Tüftelt. AWT, Swing, JavaFX & SWT 4
A hilfe für flowlayout AWT, Swing, JavaFX & SWT 6
B EventHandler für durch Tastenkombination erzeugte Zeichen AWT, Swing, JavaFX & SWT 3
T Hintergrund für GUI AWT, Swing, JavaFX & SWT 1
L JavaFX TableView mit Attributs der Modellreferenzerierung für die Spalte AWT, Swing, JavaFX & SWT 3
C JavaFX Character Comparator für TableColumn AWT, Swing, JavaFX & SWT 0
KrokoDiehl JavaFX Gleiche Controller-Instanz für inludiertes FXML AWT, Swing, JavaFX & SWT 1
V Tastatur KeyListener für mehrere Buttons AWT, Swing, JavaFX & SWT 1
S Pfad für Speichervorgang auswählen AWT, Swing, JavaFX & SWT 11
M If für viele TextFields AWT, Swing, JavaFX & SWT 7
stylegangsta Eigene Klasse für JButton aus dem JFrame abrufen AWT, Swing, JavaFX & SWT 29
R JMenuItems für Touchscreen auseinanderziehen AWT, Swing, JavaFX & SWT 3
L LookAndFeel Eigenes Design für die Applikation AWT, Swing, JavaFX & SWT 4
G Grafikformat für AWT-Applet? AWT, Swing, JavaFX & SWT 0
J Java -8 Action Listener für mehrere Buttons AWT, Swing, JavaFX & SWT 9

Ähnliche Java Themen

Neue Themen


Oben