diff options
author | mdankov <mdankov@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2014-05-05 20:30:52 +0000 |
---|---|---|
committer | mdankov <mdankov@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2014-05-05 20:30:52 +0000 |
commit | 2ada00638df405446d4b5be5a99f7e39aafbb24e (patch) | |
tree | 97d6aa20155f7789d60513658db9cdf152dac7f2 /navit/android | |
parent | e4790a2cc7cbd23143251ac2ad0bad08b958c7ce (diff) | |
download | navit-svn-2ada00638df405446d4b5be5a99f7e39aafbb24e.tar.gz |
Add:graphics_android:Draw glow around the text to make it more readable
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@5772 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/android')
-rw-r--r-- | navit/android/src/org/navitproject/navit/NavitGraphics.java | 37 |
1 files changed, 26 insertions, 11 deletions
diff --git a/navit/android/src/org/navitproject/navit/NavitGraphics.java b/navit/android/src/org/navitproject/navit/NavitGraphics.java index bbb0d5bf..812e897d 100644 --- a/navit/android/src/org/navitproject/navit/NavitGraphics.java +++ b/navit/android/src/org/navitproject/navit/NavitGraphics.java @@ -874,25 +874,40 @@ public class NavitGraphics paint.setStyle(Paint.Style.STROKE); draw_canvas.drawCircle(x, y, r / 2, paint); } - protected void draw_text(Paint paint, int x, int y, String text, int size, int dx, int dy) + protected void draw_text(Paint paint, int x, int y, String text, int size, int dx, int dy, int bgcolor) { - // float fx = x; - // float fy = y; - //Log.e("NavitGraphics","Text size "+size + " vs " + paint.getTextSize()); + int oldcolor=paint.getColor(); + Path path=null; + paint.setTextSize(size / 15); paint.setStyle(Paint.Style.FILL); - if (dx == 0x10000 && dy == 0) - { - draw_canvas.drawText(text, x, y, paint); - } - else - { - Path path = new Path(); + + if (dx != 0x10000 || dy != 0) { + path = new Path(); path.moveTo(x, y); path.rLineTo(dx, dy); paint.setTextAlign(android.graphics.Paint.Align.LEFT); + } + + if(bgcolor!=0) { + paint.setStrokeWidth(3); + paint.setColor(bgcolor); + paint.setStyle(Paint.Style.STROKE); + if(path==null) { + draw_canvas.drawText(text, x, y, paint); + } else { + draw_canvas.drawTextOnPath(text, path, 0, 0, paint); + } + paint.setStyle(Paint.Style.FILL); + paint.setColor(oldcolor); + } + + if(path==null) { + draw_canvas.drawText(text, x, y, paint); + } else { draw_canvas.drawTextOnPath(text, path, 0, 0, paint); } + paint.clearShadowLayer(); } protected void draw_image(Paint paint, int x, int y, Bitmap bitmap) { |