API ของ Brush มีเครื่องมือให้คุณใช้
กำหนดสไตล์ภาพของลายเส้น คุณสร้างแปรงที่มีสี ขนาด และตระกูลต่างๆ ได้
เพื่อให้ได้ลุคที่หลากหลาย
สร้างแปรง
หากต้องการสร้างพู่กัน ให้ใช้เมธอด Compose Brush
ร่วมกับอาร์กิวเมนต์ที่มีชื่อ เช่น
Brush.Companion.createWithComposeColor
คลาสนี้ช่วยให้คุณตั้งค่าพร็อพเพอร์ตี้ต่อไปนี้ได้
family: รูปแบบของแปรง ซึ่งคล้ายกับแบบตัวพิมพ์หรือแบบอักษรในข้อความ ดูค่าStockBrushesที่ใช้ได้ของBrushFamilycolor: สีของแปรง คุณตั้งค่าสีได้โดยใช้ColorLongsize: ความหนาโดยรวมของเส้นที่สร้างด้วยแปรงepsilon: ระยะทางที่สั้นที่สุดที่ควรพิจารณาว่าจุด 2 จุดแตกต่างกันในเชิงภาพเพื่อวัตถุประสงค์ด้านรูปทรงเรขาคณิตในการสร้างเส้น อัตราส่วนของเอปซิลอน และจุดจังหวะจะควบคุมระดับการซูมเข้าของจังหวะโดยไม่มี อาร์ติแฟกต์ โดยมีค่าใช้จ่ายเป็นหน่วยความจำ จุดเริ่มต้นที่ดีสำหรับหน่วยจังหวะคือ 1 px และจุดเริ่มต้นที่ดีสำหรับค่าเอปซิลอนคือ 0.1 ค่าเอปซิลอนที่สูงขึ้น ใช้หน่วยความจำน้อยลง แต่จะซูมได้น้อยลงก่อนที่อาร์ติแฟกต์สามเหลี่ยมจะปรากฏ ทดสอบเพื่อค้นหาค่าที่เหมาะสมกับกรณีการใช้งานของคุณ
val brush = Brush.createWithComposeColor(
family = StockBrushes.pressure(),
colorIntArgb = Color.Black,
size = 5F,
epsilon = 0.1F
)
แก้ไขพร็อพเพอร์ตี้ของแปรง
คุณสามารถสร้างสำเนาของแปรงที่มีอยู่ได้โดยใช้วิธี copyWithComposeColor() ซึ่งจะช่วยให้คุณเปลี่ยนพร็อพเพอร์ตี้ของแปรงได้
val redBrush = Brush.createWithComposeColor(
family = StockBrushes.pressurePen(),
colorIntArgb = Color.RED,
size = 5F,
epsilon = 0.1F
)
val blueBrush = redBrush.copyWithComposeColor(color = Color.BLUE)
แปรงที่กำหนดเอง
แม้ว่า StockBrushes จะมีชุดแปรงทั่วไปที่หลากหลาย
แต่ Ink API ก็ยังมีเส้นทางขั้นสูงสำหรับการสร้างลักษณะการทำงานของแปรงใหม่ทั้งหมด
เพื่อเอฟเฟกต์ศิลปะที่ไม่เหมือนใคร หรือเพื่อจำลองแปรงที่มีอยู่
เพื่อความเข้ากันได้แบบย้อนหลัง
ระบบจะโหลด BrushFamily ที่กำหนดเองจากรูปแบบที่แปลงเป็นอนุกรม รูปแบบที่จำเป็น
คือการเข้ารหัสไบนารีที่บีบอัดด้วย gzip ของ
บัฟเฟอร์โปรโตคอล BrushFamily ซึ่งจะช่วยให้คุณโหลดและใช้
ไฟล์แปรงที่กำหนดเองได้แล้ววันนี้ เมื่อเลิกซีเรียลไลซ์แล้ว คุณจะใช้ BrushFamily ที่กำหนดเองเพื่อสร้าง Brush ใหม่ที่มีสีและขนาดที่เฉพาะเจาะจงได้ เช่นเดียวกับ StockBrushes ตระกูลอื่นๆ