Android’de Vektöre Kontur Ekleme
Vektör grafikler, ölçeklenebilir ve çözünürlükten bağımsız oldukları için Android uygulamalarında yaygın olarak kullanılır. Ancak, bazen bir vektöre kontur eklemek isteyebilirsiniz. Bu, şekle daha fazla derinlik veya boyut kazandırmak veya onu arka plandan ayırmak için yapılabilir.
Android’de bir vektöre kontur eklemenin birkaç yolu vardır. En yaygın yöntem, VectorDrawable
sınıfını kullanmaktır. VectorDrawable
sınıfı, vektör grafiklerini temsil etmek için kullanılan bir Android sınıfıdır. Bir VectorDrawable
nesnesi oluşturmak için VectorDrawableCompat.create()
yöntemini kullanabilirsiniz. Bu yöntem, bir vektör grafik dosyasının yolunu veya bir Drawable
nesnesini parametre olarak alır.
VectorDrawable
nesnesi oluşturulduktan sonra, setStroke()
yöntemini kullanarak ona bir kontur ekleyebilirsiniz. setStroke()
yöntemi, konturun rengini, genişliğini ve çizgi stilini parametre olarak alır.
Aşağıdaki kod örneği, bir VectorDrawable
nesnesine kontur eklemeyi göstermektedir:
java
VectorDrawableCompat drawable = VectorDrawableCompat.create(getResources(), R.drawable.my_vector);
drawable.setStroke(2, Color.RED, 10);
Bu kod örneğinde, my_vector.xml
adlı bir vektör grafik dosyası yükleniyor ve bir VectorDrawableCompat
nesnesi oluşturuluyor. Daha sonra, setStroke()
yöntemi kullanılarak vektöre 2 piksel genişliğinde, kırmızı renkli ve 10 piksel uzunluğunda bir kontur ekleniyor.
VectorDrawable
sınıfını kullanmanın yanı sıra, bir vektöre kontur eklemek için PathEffect
sınıfını da kullanabilirsiniz. PathEffect
sınıfı, bir yolun görünümünü değiştirmek için kullanılan bir Android sınıfıdır. Bir PathEffect
nesnesi oluşturmak için PathEffect.createStroke()
yöntemini kullanabilirsiniz. Bu yöntem, konturun rengini, genişliğini ve çizgi stilini parametre olarak alır.
Aşağıdaki kod örneği, bir PathEffect
nesnesi kullanarak bir vektöre kontur eklemeyi göstermektedir:
java
PathEffect effect = PathEffect.createStroke(2, PathEffect.Style.STROKE);
Paint paint = new Paint();
paint.setStyle(Paint.Style.STROKE);
paint.setPathEffect(effect);
canvas.drawPath(path, paint);
Bu kod örneğinde, 2 piksel genişliğinde, kırmızı renkli ve 10 piksel uzunluğunda bir kontur oluşturuluyor. Daha sonra, drawPath()
yöntemi kullanılarak kontur çiziliyor.
Faydalı Siteler ve Dosyalar
- Android Developers: Vector Drawables
- Android Arsenal: Vector Drawable
- GitHub: Vector Drawable Stroke