我知道在onDraw方法中创建对象是非常昂贵的。我想画一个圆角矩形的矩阵,它的坐标是动态的,我不能缓存所有的矩形,因为我使用滚动视图,可能有很多矩形,drawRoundRect方法没有其他重载,它有原始参数,我被迫在每次迭代中创建一个矩形对象。谁能提出一个有效的解决办法呢?
@Override
protected void onDraw(Canvas canvas) {
int h = getMeasuredHeight();
int tileSize = h / rows;
for(int i = 0; i < rows; ++i) {
for
我有一个按钮,我想画一个圆角矩形围绕它后,我点击它逐步。我试着在画布上画贝塞尔曲线,但是我找不到可以画圆角矩形的贝塞尔曲线的公式。所以我最终画了四条直线来创建一个没有圆角的矩形。以下是相关代码:
public class CustomProgressBar extends View{
private Paint paint = new Paint();
public HomeFragment mHomeFragment;
private Context context;
private Path path;
int width = 178;
int height = 58;
int x1=0
我用ctx.clearRect()剪出了一个矩形的帆布。它在图像中产生一个矩形透明区域。但是有没有可能用圆角把它切出来呢?
就像这样:
我的守则:
function createHolesInBg() {
// overlay the image on the video and cut holes to see through to the video
var image = document.getElementById('bg-one');
var canvas = document.getElementById("windo
我有一个小设置,您可以在其中键入矩形尺寸来绘制圆角矩形。但是,如果我将x和y坐标设为0,那么矩形就会很好。我把200,200的宽度和高度,可以分辨出它的1/4的画布。
然而,如果放入1,1或其他坐标,矩形就变得太大了。我又投入了200,200美元,预计只会被移动,但它太大了。怎么一回事?
JS
function myfunction(){
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
var w = documen