OSDN Git Service

orthogonal lines without AA
authorOlyutorskii <olyutorskii@users.osdn.me>
Fri, 13 Apr 2018 08:18:28 +0000 (17:18 +0900)
committerOlyutorskii <olyutorskii@users.osdn.me>
Fri, 13 Apr 2018 08:18:28 +0000 (17:18 +0900)
src/main/java/jp/sfjp/jindolf/glyph/SysEventDraw.java
src/main/java/jp/sfjp/jindolf/glyph/TalkDraw.java

index 9afdefa..27a6733 100644 (file)
@@ -215,7 +215,13 @@ public class SysEventDraw extends AbstractTextRow{
         RenderingHints.Key aaHintKey = RenderingHints.KEY_ANTIALIASING;
         Object aaHintTemp = RenderingHints.VALUE_ANTIALIAS_OFF;
         Object aaHintOrig = g.getRenderingHint(aaHintKey);
+
+        RenderingHints.Key strokeHintKey = RenderingHints.KEY_STROKE_CONTROL;
+        Object strokeHintTemp = RenderingHints.VALUE_STROKE_NORMALIZE;
+        Object strokeHintOrig = g.getRenderingHint(strokeHintKey);
+
         g.setRenderingHint(aaHintKey, aaHintTemp);
+        g.setRenderingHint(strokeHintKey, strokeHintTemp);
 
         if(this.dialogPref.isSimpleMode()){
             g.drawLine(this.bounds.x,                     this.bounds.y,
@@ -228,6 +234,7 @@ public class SysEventDraw extends AbstractTextRow{
         }
 
         g.setRenderingHint(aaHintKey, aaHintOrig);
+        g.setRenderingHint(strokeHintKey, strokeHintOrig);
 
         this.sysMessage.paint(g);
 
index b5f1e55..d6cbf2d 100644 (file)
@@ -494,8 +494,23 @@ public class TalkDraw extends AbstractTextRow{
         this.caption.paint(g);
 
         if(this.dialogPref.isSimpleMode() ){
+            RenderingHints.Key aaHintKey = RenderingHints.KEY_ANTIALIASING;
+            Object aaHintTemp = RenderingHints.VALUE_ANTIALIAS_OFF;
+            Object aaHintOrig = g.getRenderingHint(aaHintKey);
+
+            RenderingHints.Key strokeHintKey =
+                    RenderingHints.KEY_STROKE_CONTROL;
+            Object strokeHintTemp = RenderingHints.VALUE_STROKE_NORMALIZE;
+            Object strokeHintOrig = g.getRenderingHint(strokeHintKey);
+
+            g.setRenderingHint(aaHintKey, aaHintTemp);
+            g.setRenderingHint(strokeHintKey, strokeHintTemp);
+
             g.drawLine(xPos,                     this.bounds.y,
                        xPos + this.bounds.width, this.bounds.y );
+
+            g.setRenderingHint(aaHintKey, aaHintOrig);
+            g.setRenderingHint(strokeHintKey, strokeHintOrig);
         }else{
             g.drawImage(this.faceImage,
                         xPos + this.imageOrigin.x,