转载请注明出处:http://www.bangchui.org/read.php?tid=10646
通过使用canvas.clipPath,可以将一个规则的位图裁剪为不规则的位图 一个矩形的图,一般画出来是这样子的: 我们需要画成这个样子: 通过canvas.clipPath(path);方法可以达到这个效果,看代码: package org.bangchui; import android.content.Context; import android.graphics.Canvas; import android.graphics.Path; import android.graphics.drawable.Drawable; import android.util.AttributeSet; import android.view.View; public class MyView extends View { private Drawable mDrawable; public MyView(Context context) { super(context); init(); } public MyView(Context context, AttributeSet attrs) { super(context, attrs); init(); } public MyView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); init(); } private void init() { mDrawable = getResources().getDrawable(R.drawable.testpath); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Path path = new Path(); path.moveTo(0, 0); path.lineTo(300, 0); path.lineTo(300, 150); path.lineTo(150, 300); path.lineTo(0, 300); path.lineTo(0, 0); canvas.clipPath(path); mDrawable.setBounds(0, 0, getWidth(), getHeight()); mDrawable.draw(canvas); } }本文地址:http://bajiewuneng.iteye.com/blog/1918148 |
- 浏览: 102729 次
最新评论
-
hss118100:
dingran 写道第三个那个main4对象里面的value是 ...
Java一道经典的面试题 -
id.alex:
1. 重载与覆盖的区别,2. "if(o insta ...
Java一道经典的面试题 -
shenliuyang:
你妹呀 玩重载~!~!~
Java一道经典的面试题 -
PlayGod1984:
dingran 写道第三个那个main4对象里面的value是 ...
Java一道经典的面试题 -
dingran:
第三个那个main4对象里面的value是null,所以,你懂 ...
Java一道经典的面试题
相关推荐
本篇将详细探讨如何使用`clipPath`方法来实现一个没有Bitmap锯齿的CircleImageView。 首先,让我们理解什么是`clipPath`。在Android的Canvas类中,`clipPath()`是一个用于剪裁绘制区域的方法,它可以将当前的绘图...
在Android图形系统中,`Canvas`是用于在Bitmap或Surface上进行绘图操作的重要类。它提供了各种绘制路径、文本、矩形、圆形以及其他图形的方法。`save()`和`restore()`是`Canvas`中两个非常关键的方法,它们主要用于...
在Android开发中,Canvas是用于在屏幕上绘制图形和图像的核心组件。`drawBitmap()`方法是Canvas的一个关键函数,用于在Canvas上绘制Bitmap图像。本文将深入解析`drawBitmap()`方法的参数及其用法,并通过实例来说明...
在Android应用开发中,Canvas通常与Bitmap配合使用。Bitmap是一个可以存储像素数据的类,我们可以将它看作是一块画布,而Canvas则是我们的画笔,用来在Bitmap上进行绘画操作。例如,我们可以通过`drawRect()`来绘制...
《html2canvas.js:网页截屏的利器》 在当今的Web开发中,用户界面的交互性和可分享性越来越重要,而html2canvas.js正是...了解并熟练掌握html2canvas.js的使用,对于Web开发者来说,无疑是一个提升项目质量的利器。
在Android开发中,自定义画布Canvas是实现图形绘制的核心工具。...总之,自定义画布Canvas是Android图形界面开发中不可或缺的一部分,通过熟练掌握其用法,可以实现各种复杂而富有创意的视觉效果。
`Canvas`类提供了丰富的绘图方法,让我们能够在Bitmap或者Surface上绘制线条、形状、文本等元素。在这个"Android画布Canvas之连线动画Demo"中,我们将深入探讨如何利用Canvas实现动态的连线动画效果,包括控制动画...
这个压缩包“Android截图,圆形,Canvas.zip”显然包含了关于如何在Android中实现圆形截图以及使用Canvas进行自定义图形绘制的示例代码。让我们深入探讨这两个主题。 首先,Android截图是一个常见的需求,通常用于...
我们可以先创建一个圆形路径(使用`Path.addCircle()`),然后使用`canvas.clipPath(path)`来限制后续绘制的区域。这样,即使原截图是矩形,最终显示出来的效果也会是一个圆形。 Canvas是Android图形绘制的核心组件...
水墨画生成canvas动效.rar 水墨画生成canvas动效.rar 水墨画生成canvas动效.rar 水墨画生成canvas动效.rar 水墨画生成canvas动效.rar 水墨画生成canvas动效.rar 水墨画生成canvas动效.rar 水墨画生成canvas动效.rar ...
在Android应用中,我们可以使用`View`类的`draw()`方法来获取屏幕的内容,并将其保存为Bitmap对象。以下是一个简单的截图示例: ```java public static Bitmap captureScreen(View view) { Bitmap bitmap = Bitmap...
本篇文章将详细讲解如何利用Canvas在Android中画曲线图和三角形(多边形),并结合示例代码帮助理解。 首先,我们要明白Canvas的基本用法。Canvas是Android中的一个类,它提供了在Bitmap上绘制图形的方法。通常,...
#### Canvas.clipPath:裁剪不规则Bitmap 在Android开发过程中,经常会遇到需要处理图像的需求,其中一个常见的应用场景就是将规则形状的图像裁剪成不规则形状。这不仅可以增强应用的视觉效果,还能在特定场景下...
总的来说,这个压缩包提供了一种在Android中实现圆形截图的方法,对于理解和实践Android图形绘制以及`Canvas`的使用具有一定的参考价值。开发者可以借此了解Android图形系统的工作原理,并扩展到其他复杂的图形操作...
在Android开发中,Canvas类是用于在Bitmap上进行绘制的核心组件。`canvas.drawArc()`方法则是Canvas类中用于绘制圆弧的重要方法,它允许开发者在屏幕上创建各种形状和图案,如饼图、进度条等。本文将深入解析`canvas...
canvas.drawBitmap(maskBitmap, 0, 0, null); // 绘制遮罩位图 canvas.restore(); // 恢复绘图环境 // 在这里绘制你的内容,它会与遮罩位图进行XOR运算 // 例如,绘制一个背景图片 Bitmap contentBitmap = ......
Android开发者学习笔记——View、Canvas、bitmap Android 开发者学习笔记——View、Canvas、bitmap 是 Android 开发中常用的类,本文将通过实例讲解 View、Canvas 等相关知识点。 从资源中获取位图 在 Android ...
本文将详细解析如何利用Android的源码实现这些功能,特别是使用Canvas进行绘制的操作。 首先,让我们来了解一下`Canvas`。在Android中,`Canvas`是图形绘制的核心,它提供了在Bitmap上绘制线条、文本、图像等各种...
在Android开发中,Canvas是用于在屏幕上绘制2D图形的核心组件。它允许开发者直接在Bitmap上进行绘制操作,实现各种视觉效果。以下是对标题和描述中提到的各种图形绘制方法的详细说明: 1. **点(Point)**:使用`...