【问题标题】:How to draw an outlined path on android canvas如何在android画布上绘制轮廓路径
【发布时间】:2013-12-20 02:39:00
【问题描述】:

有没有一种在安卓画布上绘制路径(甚至只是一条直线)的好方法,其中线是一种颜色,但用另一种颜色勾勒出来?这是我要画的:

...目的当然是在黑色和白色背景上都可以很容易地看到这条线(在我的例子中是一条虚线)。

谢谢!

【问题讨论】:

    标签: android path drawing android-canvas


    【解决方案1】:

    你应该首先用边框的颜色画一条粗线,在它上面,你画另一条线,距离另一条线的每一边 1px,所以它会覆盖第一条线,但 1 保持可见第二行周围 1px。像这样:

      public void onDraw(Canvas canvas) {
    
                float startX, startY, stopX, stopY;//remenber to inicialize them with actual values
                int  BORDER_COLOR, INNER_COLOR;//remenber to inicialize them with actual values
    
                Paint paint = new Paint();
    
                paint.setColor( BORDER_COLOR);
                canvas.drawLine(startX, startY, stopX, stopY, paint);
    
                paint.setColor( INNER_COLOR);
                canvas.drawLine(startX+1, startY+1, stopX-1, stopY-1, paint);
    
        }
    

    【讨论】:

    • 谢谢——我不知道为什么我没有想到这个!当然,我得稍微考虑一下破折号的间距,但这可能是相同的一般原则。
    • 当然,您必须考虑并尝试一些。还要记住不同的设备密度。您将需要检索设备密度,并根据密度计算间距和笔画宽度,因此它在每部手机中看起来都一样。
    【解决方案2】:

    绘制两次:使用不同的颜色和不同的笔画宽度

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-01
      • 2021-06-25
      • 2012-08-15
      • 2019-04-12
      相关资源
      最近更新 更多