JavaFX Auto Scale Image View without blurriness
up vote
0
down vote
favorite
I am attempting to automatically scale an image view to the parent when the parent changes size. In the past, I used this solution:
imageView.setPreserveRatio(true);
Pane pane = new Pane();
testGridPane.add(pane, 1, 1);
imageView.fitWidthProperty().bind(pane.widthProperty());
imageView.fitHeightProperty().bind(pane.heightProperty());
from this post:
JFX scale image up and down to parent
This works and scales the image. However, this method has an issue where the image will become pixelated when scaled to certain ratios. These two posts seem to be referring to the issue I'm experiencing:
JavaFX ImageView without any smoothing
In the second post, this seems to be exactly what I'm encountering:
JavaFx Image fit to Pane bad Quality
In that post, the OP mentioned that setting the width instead of using fitwidth looked better. However, I'm not sure how I could implement that in my solution as my image needs to scale with the parent, not just have a size set once.
I've also looked through every other stack overflow post I can find on imageview scaling or imageview pixelated and I've haven't been able to find an answer.
Any help would be greatly appreciated!
Edit: I still have not been able to find a solution to this. The issue is happening when images are scaled down and they are losing quality. This bug report seems to explain the issue:
https://bugs.openjdk.java.net/browse/JDK-8089202
java javafx imageview javafx-8 scaling
add a comment |
up vote
0
down vote
favorite
I am attempting to automatically scale an image view to the parent when the parent changes size. In the past, I used this solution:
imageView.setPreserveRatio(true);
Pane pane = new Pane();
testGridPane.add(pane, 1, 1);
imageView.fitWidthProperty().bind(pane.widthProperty());
imageView.fitHeightProperty().bind(pane.heightProperty());
from this post:
JFX scale image up and down to parent
This works and scales the image. However, this method has an issue where the image will become pixelated when scaled to certain ratios. These two posts seem to be referring to the issue I'm experiencing:
JavaFX ImageView without any smoothing
In the second post, this seems to be exactly what I'm encountering:
JavaFx Image fit to Pane bad Quality
In that post, the OP mentioned that setting the width instead of using fitwidth looked better. However, I'm not sure how I could implement that in my solution as my image needs to scale with the parent, not just have a size set once.
I've also looked through every other stack overflow post I can find on imageview scaling or imageview pixelated and I've haven't been able to find an answer.
Any help would be greatly appreciated!
Edit: I still have not been able to find a solution to this. The issue is happening when images are scaled down and they are losing quality. This bug report seems to explain the issue:
https://bugs.openjdk.java.net/browse/JDK-8089202
java javafx imageview javafx-8 scaling
1
What is the default size of your original image?
– Sai Dandem
Nov 14 at 5:36
This is possibly related to this bug: bugs.openjdk.java.net/browse/JDK-8211861 Unfortunately, there doesn't seem to be any workaround or a fix in progress...
– Itai
Nov 14 at 9:10
One possible solution is to use high resolution images or atleast the size of your max scale. This way you will not encounter blurriness. If you can use SVG your images, then that should be even more the favorable approach.
– Sai Dandem
Nov 14 at 23:38
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I am attempting to automatically scale an image view to the parent when the parent changes size. In the past, I used this solution:
imageView.setPreserveRatio(true);
Pane pane = new Pane();
testGridPane.add(pane, 1, 1);
imageView.fitWidthProperty().bind(pane.widthProperty());
imageView.fitHeightProperty().bind(pane.heightProperty());
from this post:
JFX scale image up and down to parent
This works and scales the image. However, this method has an issue where the image will become pixelated when scaled to certain ratios. These two posts seem to be referring to the issue I'm experiencing:
JavaFX ImageView without any smoothing
In the second post, this seems to be exactly what I'm encountering:
JavaFx Image fit to Pane bad Quality
In that post, the OP mentioned that setting the width instead of using fitwidth looked better. However, I'm not sure how I could implement that in my solution as my image needs to scale with the parent, not just have a size set once.
I've also looked through every other stack overflow post I can find on imageview scaling or imageview pixelated and I've haven't been able to find an answer.
Any help would be greatly appreciated!
Edit: I still have not been able to find a solution to this. The issue is happening when images are scaled down and they are losing quality. This bug report seems to explain the issue:
https://bugs.openjdk.java.net/browse/JDK-8089202
java javafx imageview javafx-8 scaling
I am attempting to automatically scale an image view to the parent when the parent changes size. In the past, I used this solution:
imageView.setPreserveRatio(true);
Pane pane = new Pane();
testGridPane.add(pane, 1, 1);
imageView.fitWidthProperty().bind(pane.widthProperty());
imageView.fitHeightProperty().bind(pane.heightProperty());
from this post:
JFX scale image up and down to parent
This works and scales the image. However, this method has an issue where the image will become pixelated when scaled to certain ratios. These two posts seem to be referring to the issue I'm experiencing:
JavaFX ImageView without any smoothing
In the second post, this seems to be exactly what I'm encountering:
JavaFx Image fit to Pane bad Quality
In that post, the OP mentioned that setting the width instead of using fitwidth looked better. However, I'm not sure how I could implement that in my solution as my image needs to scale with the parent, not just have a size set once.
I've also looked through every other stack overflow post I can find on imageview scaling or imageview pixelated and I've haven't been able to find an answer.
Any help would be greatly appreciated!
Edit: I still have not been able to find a solution to this. The issue is happening when images are scaled down and they are losing quality. This bug report seems to explain the issue:
https://bugs.openjdk.java.net/browse/JDK-8089202
java javafx imageview javafx-8 scaling
java javafx imageview javafx-8 scaling
edited Nov 25 at 20:59
asked Nov 14 at 5:32
Tyler Bench
264
264
1
What is the default size of your original image?
– Sai Dandem
Nov 14 at 5:36
This is possibly related to this bug: bugs.openjdk.java.net/browse/JDK-8211861 Unfortunately, there doesn't seem to be any workaround or a fix in progress...
– Itai
Nov 14 at 9:10
One possible solution is to use high resolution images or atleast the size of your max scale. This way you will not encounter blurriness. If you can use SVG your images, then that should be even more the favorable approach.
– Sai Dandem
Nov 14 at 23:38
add a comment |
1
What is the default size of your original image?
– Sai Dandem
Nov 14 at 5:36
This is possibly related to this bug: bugs.openjdk.java.net/browse/JDK-8211861 Unfortunately, there doesn't seem to be any workaround or a fix in progress...
– Itai
Nov 14 at 9:10
One possible solution is to use high resolution images or atleast the size of your max scale. This way you will not encounter blurriness. If you can use SVG your images, then that should be even more the favorable approach.
– Sai Dandem
Nov 14 at 23:38
1
1
What is the default size of your original image?
– Sai Dandem
Nov 14 at 5:36
What is the default size of your original image?
– Sai Dandem
Nov 14 at 5:36
This is possibly related to this bug: bugs.openjdk.java.net/browse/JDK-8211861 Unfortunately, there doesn't seem to be any workaround or a fix in progress...
– Itai
Nov 14 at 9:10
This is possibly related to this bug: bugs.openjdk.java.net/browse/JDK-8211861 Unfortunately, there doesn't seem to be any workaround or a fix in progress...
– Itai
Nov 14 at 9:10
One possible solution is to use high resolution images or atleast the size of your max scale. This way you will not encounter blurriness. If you can use SVG your images, then that should be even more the favorable approach.
– Sai Dandem
Nov 14 at 23:38
One possible solution is to use high resolution images or atleast the size of your max scale. This way you will not encounter blurriness. If you can use SVG your images, then that should be even more the favorable approach.
– Sai Dandem
Nov 14 at 23:38
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53293742%2fjavafx-auto-scale-image-view-without-blurriness%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
What is the default size of your original image?
– Sai Dandem
Nov 14 at 5:36
This is possibly related to this bug: bugs.openjdk.java.net/browse/JDK-8211861 Unfortunately, there doesn't seem to be any workaround or a fix in progress...
– Itai
Nov 14 at 9:10
One possible solution is to use high resolution images or atleast the size of your max scale. This way you will not encounter blurriness. If you can use SVG your images, then that should be even more the favorable approach.
– Sai Dandem
Nov 14 at 23:38