JavaFX: Wie man Dinge Verschwommen
JavaFX bietet drei Effekte Klassen, die ein Objekt verschwommen machen. Jede dieser Klassen verwendet eine andere Methode für die Anwendung der Unschärfe:
BoxBlur: Wendet eine einfache und effiziente Verwischung Technik, bei der jedes Pixel in der unscharfen Bereich durch Mittelung ihrer benachbarten Pixel in dem Eingangsbild berechnet.
Weichzeichnen: Verwendet eine Gaußsche Unschärfe-Algorithmus, der genauer ist aber weniger effizient als ein Feld Unschärfe.
Bewegungsunschärfe: Verschwommenes die Form gerichtet, um die Wirkung der Bewegung zu schaffen.
Diese Tabelle zeigt die Mitglieder der drei Unschärfe-Effekt-Klassen.
Constructors | Erläuterung |
BoxBlur () | Erstellt einen neuen BoxBlur Effekt mit den Standardeinstellungen. |
Weichzeichnen () | Erstellt einen neuen Effekt Weichzeichnen mit den Standardeinstellungen. |
Bewegungsunschärfe() | Erstellt einen neuen Motionblur Effekt mit den Standardeinstellungen. |
BoxBlur Methoden | Erläuterung |
Leere setHeight (double-Wert) | Legt die vertikale Größe der Unschärfe-Effekt. |
Leere setWidth (double-Wert) | Stellt die horizontale Größe der Unschärfe-Effekt. |
Leere setIterations (int value) | Legt die Anzahl der Zeiten sollte der Effekt wiederholt werden. Thedefault ist 1. |
Weichzeichnen Methoden | Erläuterung |
Leere setRadius (double-Wert) | Der Radius der Unschärfe-Effekt. Der Standardwert ist 10,0. |
Motionblur Methoden | Erläuterung |
Leere setAngle (double-Wert) | Der Winkel der Bewegungseffekt in Grad. Der Standard is0.0. |
Leere setRadius (double-Wert) | Der Radius der Unschärfe-Effekt. Die Standardeinstellung ist 10. |
Die Abbildung zeigt die Wirkung jeder dieser Unschärfe-Typen auf einer Textform. Der folgende Code wurde verwendet, um diese drei Unschärfen zu erstellen:
Text t1 = new Text ( "BoxBlur") - t1.setFont (neue Schriftart ( "Times New Roman", 60)) - t1.setFill (Color.LIGHTGRAY) -t1.setStroke (Color.BLACK) -t1.setEffect ( neue BoxBlur ()) - Text t2 = new Text ( "Weichzeichnen") - t2.setFont (neue Schriftart ( "Times New Roman", 60)) - t2.setFill (Color.LIGHTGRAY) -t2.setStroke (Color.BLACK ) -t2.setEffect (neue Weichzeichnen ()) - Text t3 = new Text ( "Motionblur") - t3.setFont (neue Schriftart ( "Times New Roman", 60)) - t3.setFill (Color.LIGHTGRAY) -t3 .setStroke (Color.BLACK) -t3.setEffect (neu Motionblur ()) -
Wie Sie sehen können, wurden Standardwerte für jede der Unschärfen verwendet. Wenn Sie möchten, können Sie die Methoden in der Tabelle aufgeführten verwenden das Aussehen der Blur-Effekte zu optimieren.