Hello Alexander,

On 26.08.2013 16:05, Alexander Scherbatiy wrote:
I see that SwingUtilities2.drawString(..) and SwingUtilities2.drawChars(...) are used a lot in the Swing but the issue is only about printing. Could removing trailing spaces in these methods affect other non-printed components?
All the changes are made under isPrinting() condition, so the behavior when rendering on screen/buffer should remain the same.
  Is it possible to add a test for the fix?
Sure, but I believe only manual is suitable for this case.
I will add one...

Thanks!
Anton.


  Thanks,
  Alexandr.


On 8/22/2013 3:57 PM, anton nashatyrev wrote:
Hello,
    could you please review the following fix:

fix: http://cr.openjdk.java.net/~vkarnauk/8023392/jdk8/webrev.00/ <http://cr.openjdk.java.net/%7Evkarnauk/8023392/jdk8/webrev.00/> bug: http://bugs.sun.com/view_bug.do?bug_id=80223392 (the bug is still not replicated here, so internal link might be used if available)

The problem description: While printing the text output is handled a bit differently: the text layout is justified for the text width (in theory on the screen this text should look identically as without justification), which helps printer to output text more evenly (https://bugs.openjdk.java.net/browse/JDK-6488219). But the problem is the TextLayout.getJustifiedLayout() trim the trailing spaces from the string before laying it out. In the case when the string contains trailing spaces it is justified for the width greater than required.

The fix description: as far as we likely don't want to change TextLayout.getJustifiedLayout() behavior, we should respect that implementation feature and justify the text for the width of the string without trailing spaces. I.e. trim trailing spaces before TextLayout.getAdvance().

Thanks!
Anton.


Reply via email to