Percentage values such as transparency Alpha, image Scale, etc, can have decimal values and not just integers

This commit is contained in:
Bane Stojkovic
2026-08-31 14:32:01 +02:00
parent e209ecdcb8
commit 26d6ca48fd
7 changed files with 88 additions and 36 deletions
@@ -122,7 +122,7 @@ public class Image extends AbstractTransparentComponent<Void> {
double x;
double y;
if (getSizingMode() == ImageSizingMode.Scale) {
scaleX = scaleY = 1d * getScale().getValue() / 100d;
scaleX = scaleY = 1d * getScale().getValue().doubleValue() / 100d;
x = point.getX();
y = point.getY();
} else {
@@ -299,7 +299,7 @@ public class Image extends AbstractTransparentComponent<Void> {
if (getSizingMode() == ImageSizingMode.TwoPoints) {
finalSecondPoint = getControlPoint(1);
} else {
double scale = 1d * getScale().getValue() / 100d;
double scale = 1d * getScale().getValue().doubleValue() / 100d;
ImageIcon iconImage = getImage();
double w = (iconImage != null && iconImage.getIconWidth() > 0) ? iconImage.getIconWidth() * scale : 0;
double h = (iconImage != null && iconImage.getIconHeight() > 0) ? iconImage.getIconHeight() * scale : 0;
@@ -105,7 +105,7 @@ public class SVGImage extends AbstractTransparentComponent<Void> {
double x;
double y;
if (getSizingMode() == ImageSizingMode.Scale) {
scaleX = scaleY = 1d * getScale().getValue() / 100d;
scaleX = scaleY = 1d * getScale().getValue().doubleValue() / 100d;
x = point.getX();
y = point.getY();
} else {
@@ -290,7 +290,7 @@ public class SVGImage extends AbstractTransparentComponent<Void> {
if (getSizingMode() == ImageSizingMode.TwoPoints) {
finalSecondPoint = getControlPoint(1);
} else {
double scale = 1d * getScale().getValue() / 100d;
double scale = 1d * getScale().getValue().doubleValue() / 100d;
SVGDiagram diagram = getSvgDiagram();
double w = (diagram != null && diagram.getWidth() > 0) ? diagram.getWidth() * scale : 0;
double h = (diagram != null && diagram.getHeight() > 0) ? diagram.getHeight() * scale : 0;