[Editor] Use 2 decimals for editor positions and dimensions

I noticed that after adding an image in issue16278.pdf, the image was constantly
resizing itself.
It appears that it's because of rounding errors.
This commit is contained in:
Calixte Denizet 2023-07-17 15:03:27 +02:00
parent 67e19171c4
commit 983b269e26

View File

@ -367,9 +367,9 @@ class AnnotationEditor {
*/ */
setDims(width, height) { setDims(width, height) {
const [parentWidth, parentHeight] = this.parentDimensions; const [parentWidth, parentHeight] = this.parentDimensions;
this.div.style.width = `${(100 * width) / parentWidth}%`; this.div.style.width = `${((100 * width) / parentWidth).toFixed(2)}%`;
if (!this.#keepAspectRatio) { if (!this.#keepAspectRatio) {
this.div.style.height = `${(100 * height) / parentHeight}%`; this.div.style.height = `${((100 * height) / parentHeight).toFixed(2)}%`;
} }
} }
@ -384,10 +384,12 @@ class AnnotationEditor {
const [parentWidth, parentHeight] = this.parentDimensions; const [parentWidth, parentHeight] = this.parentDimensions;
if (!widthPercent) { if (!widthPercent) {
style.width = `${(100 * parseFloat(width)) / parentWidth}%`; style.width = `${((100 * parseFloat(width)) / parentWidth).toFixed(2)}%`;
} }
if (!this.#keepAspectRatio && !heightPercent) { if (!this.#keepAspectRatio && !heightPercent) {
style.height = `${(100 * parseFloat(height)) / parentHeight}%`; style.height = `${((100 * parseFloat(height)) / parentHeight).toFixed(
2
)}%`;
} }
} }