JavaFX ImagePane skaliert schlechte Qualität

8

Wie rende ich das Bild mit einer besseren Qualität?

Der Knoten ist ein Bereich mit der CSS:

%Vor%

Bild in der Anwendung:

Standardbild:

Link zu PSD: Ссылка

Ich habe versucht, die beste Bildqualität zu erreichen, aber es verursacht immer noch Pixelbildung

    
Marckaraujo 31.07.2017, 15:28
quelle

3 Antworten

0

Ich würde Ihnen empfehlen, einen Hintergrund im Java-Code zu initialisieren. Sie können den Hintergrund in einem Bereich festlegen.

%Vor%

Wenn Sie einen Hintergrund initialisieren, initialisieren Sie zuerst ein Hintergrundbild und ein Hintergrundbild benötigt ein Bild. Im Konstruktor des Bildes können Sie requestWith und requestedHeight definieren. Dies sind die Eigenschaften, in denen die Dateien geladen werden sollen. Der endgültige Code könnte so aussehen.

%Vor%

In diesem Fall würde das Bild mit einer Auflösung von 500 x 500 geladen und in pane.getHeight und pane.getWith geändert werden.

    
J. Sauvain 09.08.2017 08:19
quelle
0

Das Originalbild ist 307 X 594 . Sie können nicht erwarten, dass es reibungslos in der Größe geändert wird. Es wäre besser, etwas besser skalierbar zu verwenden.

Wie auch immer es versucht hat, es aus einem Java-Code-Spar-Verhältnis zu laden, und mit glatter Skalierung scheint es erträgliche Ergebnisse zu liefern. Ich sehe keinen Weg, wie man es in CSS macht. Also, ich schlage vor, dass Sie programmgesteuert neu skalieren.

Ich habe hier ein einfaches Programm, mit dem Sie experimentieren können.

%Vor%     
Serge 12.08.2017 12:50
quelle
0

Das Problem hat nichts mit CSS oder Java-Code zu tun. Es ist ein Bildbearbeitungsproblem, dass die Qualität und Schärfe der Kanten verzerrt werden, wenn Sie die Größe eines Bildes reduzieren Wie @serge erwähnt, sind Ihre Bilddimensionen 307 in der Höhe und 594 in der Breite, also sollten Sie den genau reduzierten width und height Korrespondenten zu Ihrem aspect ratio finden, können Sie Tools wie Bildseitenverhältnis- und Größenänderungsrechner , um die besten Zahlen für Ihren Zweck zu finden. Ich habe Ihr Bild im Bereich 93 X 180 verwendet und das Ergebnis war wie folgt:


Wie Sie in meinem Hello World! -Beispiel sehen, ist die Qualität des linken Bildes nicht gut genug, besonders in Kanten und Rahmen.

  

Lösungen:

  1. Ändern Sie die Größe des Bildes in Ihrer gewünschten Größe   Dimensionen mit Werkzeugen wie Photoshop . Sie können mehr bekommen   Informationen in    Anleitungen   Ändern Sie ein Bild in Photoshop und halten Sie es scharf
  2. Konvertiere deine   Original PNG Bilder in ein Vektorformat wie SVG . Sie können verwenden   einige Online-Tools wie ONLINE PNG TO SVG   KONVERTER
    
Emad 13.08.2017 05:52
quelle

Tags und Links