Ink API modüler hale getirildiğinden yalnızca ihtiyacınız olanı kullanabilirsiniz.
Vuruşlar
Vuruşlar modülü, Ink API'nin temelini oluşturur. Bu modüldeki önemli veri türleri şunlardır:
StrokeInputBatch: Konum, zaman damgası ve isteğe bağlı olarak basınç, eğim ve yön dahil olmak üzere bir dizi işaretçi girişini temsil eder.InProgressStroke: Aktif olarak çizilen bir konturu temsil eder.InProgressStroke, düşük gecikmeyle kısmi vuruşlar oluşturmak ve giriş tamamlandıktan sonra nihaiStroke'yi oluşturmak için kullanılır. Ardından nesne yeniden kullanılabilir. `InProgressStroke,InProgressStrokesViewtarafından kullanılıyor.Stroke: Geometrisi sabitlenmiş, sonlandırılmış bir konturun değişmez gösterimi. HerStroke,ImmutableStrokeInputBatch(giriş noktaları),Brush(stil) vePartitionedMesh(geometrik şekil) içerir. Uygulamanızda konturları depolayabilir, değiştirebilir ve oluşturabilirsiniz.
Geometri
The Geometry module supports geometric operations on primitive shapes (using dedicated classes like Box and Vec), as well as arbitrary shapes (using PartitionedMesh), including intersection detection and transformation. PartitionedMesh can also hold additional data to support rendering.
Fırça
The brush module defines the style of strokes. It
consists of two main parts:
Brush: Specifies the style of a stroke including base color, base size, andBrushFamily.BrushFamilyis analogous to a font family, it defines a stroke's style. For example, aBrushFamilycan represent a specific style of marker or highlighter, allowing strokes with different sizes and colors to share that style.StockBrushes: Provides factory functions for creating ready-to-useBrushFamilyinstances.
Yazma
Yazma modülü, kullanıcı işaretçi girişini yakalamanıza ve bunu ekranda düşük gecikmeli vuruşlar olarak gerçek zamanlı şekilde oluşturmanıza olanak tanır. Hareket etkinliklerini işleyen ve çizildikçe vuruşları görüntüleyen bir InProgressStrokesView sağlar.
Bir vuruş tamamlandığında görünüm, kayıtlı bir geri çağırma (InProgressStrokesFinishedListener) aracılığıyla istemci uygulamasına bildirim gönderir. Geri çağırma, uygulamanın oluşturma veya depolama için tamamlanmış vuruşu almasına olanak tanır.
Oluşturma
Oluşturma modülü, Android Canvas cihazına mürekkep konturları çizmenize yardımcı olur.
Oluşturma için CanvasStrokeRenderer, görüntülemeye dayalı düzenler için ViewStrokeRenderer sağlar. Bu oluşturucular, yüksek performanslı oluşturma için tasarlanmıştır ve kenarları yumuşatma da dahil olmak üzere yüksek kaliteli görseller sunmaya yardımcı olur.
Konturları oluşturmak için create() yöntemini çağırarak CanvasStrokeRenderer örneğini alın. Ardından, tamamlanmış (Stroke) veya devam eden (InProgressStroke) konturları Canvas üzerine işlemek için draw() yöntemini çağırın.
Fırça darbesi çizerken tuvali dönüştürebilirsiniz. Örnek olarak kaydırma, yakınlaştırma ve döndürme verilebilir. Konturun doğru şekilde oluşturulması için canvas dönüşümünü CanvasStrokeRenderer.draw'ye de aktarmanız gerekir.
canvas dönüşümünün ayrı olarak izlenmesini önlemek için bunun yerine ViewStrokeRenderer kullanın.
Depolama
The storage module provides utilities for
efficiently serializing and deserializing stroke data, primarily focusing
on StrokeInputBatch.
The module uses protocol buffers and optimized delta compression techniques, resulting in significant storage savings compared to naive methods.
The storage module simplifies saving, loading, and sharing strokes.