APIs de pincel

The Brush APIs provide you with the tools to define the visual style of your strokes. You can create brushes with different colors, sizes, and families to achieve a variety of looks.

Create a brush

To create a brush, use the Brush factory methods such as createWithColorIntArgb() class. The factory methods let you set the following properties:

  • family: The style of the brush, analogous to a typeface or font in text. See StockBrushes for available BrushFamily values.
  • color: The color of the brush. You can set the color using a ColorLong or ColorInt.
  • size: The overall thickness of strokes created with the brush.
  • epsilon: The smallest distance for which two points should be considered visually distinct for stroke generation geometry purposes. The ratio of epsilon and stroke points control how much a stroke can be zoomed in without artifacts at the cost of memory. A good starting point for stroke units is 1px, and a good starting point for epsilon is 0.1. Higher epsilon values use less memory but allow for less zoom before triangle artifacts appear; experiment to find the right value for your use case.
val brush = Brush.createWithColorIntArgb(
        family = StockBrushes.pressurePenLatest,
        colorIntArgb = Color.Black.toArgb(),
        size = 5F,
        epsilon = 0.1F
    )

Modify brush properties

You can create a copy of an existing brush using the copy() method. This method lets you change any of the brush's properties.

val redBrush = Brush.createWithColorIntArgb(
        family = StockBrushes.pressurePenLatest,
        colorIntArgb = Color.RED.toArgb(),
        size = 5F,
        epsilon = 0.1F
    )

val blueBrush = redBrush.copy(colorIntArgb = Color.BLUE.toArgb())