From: Dominik Stadler Date: Thu, 8 Jun 2023 08:53:15 +0000 (+0000) Subject: Bug 66632: Round char-width instead of cutting off X-Git-Tag: REL_5_2_4~141 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=6442dccab931efa6c29a5c40fb74a427e67bfcb2;p=poi.git Bug 66632: Round char-width instead of cutting off Otherwise we sometimes use a too low "default char width" which leads to autosizing of columns with too wide columns. We should propably return float instead of int here to not introduce rounding errors at this point at all, but it would need more API changes, so let's at least make it work better for now. git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1910301 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/poi/src/main/java/org/apache/poi/ss/util/SheetUtil.java b/poi/src/main/java/org/apache/poi/ss/util/SheetUtil.java index 62d4cab315..2ced5742b7 100644 --- a/poi/src/main/java/org/apache/poi/ss/util/SheetUtil.java +++ b/poi/src/main/java/org/apache/poi/ss/util/SheetUtil.java @@ -299,7 +299,7 @@ public class SheetUtil { copyAttributes(defaultFont, str, 0, 1); try { TextLayout layout = new TextLayout(str.getIterator(), fontRenderContext); - return (int) layout.getAdvance(); + return Math.round(layout.getAdvance()); } catch (UnsatisfiedLinkError | NoClassDefFoundError | InternalError e) { if (ignoreMissingFontSystem) { return DEFAULT_CHAR_WIDTH;