Zeichnen

  
Erstklassige Stift-Apps entwickeln Die Einstiegshürde für Entwickler senken, um leistungsstarke, ansprechende Inking-Funktionen zu ermöglichen.
Letzte Aktualisierung Stabile Version Releasekandidat Betarelease Alpha-Release
8. Oktober 2025 - - - 1.0.0-alpha07

Abhängigkeiten deklarieren

Wenn Sie eine Abhängigkeit von Ink hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.

Fügen Sie der Datei build.gradle für Ihre App oder Ihr Modul die Abhängigkeiten für die benötigten Artefakte hinzu:

Groovy

dependencies {
  
    implementation "androidx.ink:ink-authoring:1.0.0-alpha07"
    implementation "androidx.ink:ink-brush:1.0.0-alpha07"
    implementation "androidx.ink:ink-geometry:1.0.0-alpha07"
    implementation "androidx.ink:ink-nativeloader:1.0.0-alpha07"
    implementation "androidx.ink:ink-rendering:1.0.0-alpha07"
    implementation "androidx.ink:ink-strokes:1.0.0-alpha07"
    
}

Kotlin

dependencies {


    implementation("androidx.ink:ink-authoring:1.0.0-alpha07")
    implementation("androidx.ink:ink-brush:1.0.0-alpha07")
    implementation("androidx.ink:ink-geometry:1.0.0-alpha07")
    implementation("androidx.ink:ink-nativeloader:1.0.0-alpha07")
    implementation("androidx.ink:ink-rendering:1.0.0-alpha07")
    implementation("androidx.ink:ink-strokes:1.0.0-alpha07")
}

Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.

Feedback

Ihr Feedback hilft uns, Jetpack zu verbessern. Lassen Sie es uns wissen, wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können für ein vorhandenes Problem stimmen, indem Sie auf die Schaltfläche mit dem Stern klicken.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.

Für dieses Artefakt gibt es keine Versionshinweise.

Version 1.0

Version 1.0.0-alpha07

8. Oktober 2025

androidx.ink:ink-*:1.0.0-alpha07 ist veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.

Neue Funktionen

  • SelfOverlap-Parameter für StockBrushes highlighter und emojiHighlighter, der InProgressStrokesView rendererFactory ersetzt
  • Die Implementierung der Glättung von Stricheingaben wurde verbessert. Dadurch wird das Messrauschen des Geräts eliminiert, die Nutzereingabe wird aber genauer wiedergegeben als bei der vorherigen Implementierung.
  • Verbesserte Konsistenz mit anderen Android-/Jetpack-APIs für Winkeleinheiten (Grad vs. Radiant), Transformationen (Neigung vs. Scherung) und mehr

API-Änderungen

  • Winkelbezogene APIs so ändern, dass Grad verwendet werden und Einheiten in Namen enthalten sind, Einheiten in Dienstprogrammen zur Winkelumrechnung klar angeben und sowohl Grad als auch Radian unterstützen, die StockBrushes-API so ändern, dass die Stock-Pinselversion als Parameter der Factory-Funktion verwendet wird, die Steuerung des Selbstüberlappungsverhaltens für Highlighter-Pinsel verfügbar machen, MutableAffineTransform.populateFromTranslate in populateFromTranslation umbenennen und InProgressStrokesView.setRenderFactory/getRenderFactory entfernen. (Id9eab, b/436656418)
  • „Scheren“ in „Verzerren“ umbenennen, Dokumentation klarer formulieren, CanvasStrokeRenderer.strokeModifiedRegionOutsetPx entfernen, InProgressStroke.changesWithTime hinzufügen (Ia5e70, b/436656418)

Fehlerkorrekturen

  • Die Eingabemodellierung wurde verbessert, damit Striche die Eingabe genauer widerspiegeln. (I93097)

Version 1.0.0-alpha06

13. August 2025

androidx.ink:ink-*:1.0.0-alpha06 ist veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

Neue Funktionen

  • Emoji-Marker-Pinsel: Markieren Sie Teile eines Dokuments mit einem beliebigen Emoji, um dem Dokument eine persönliche Note zu verleihen und die Übersicht zu behalten.
  • Weitere Helper-APIs für primitive Formen des Geometriemoduls
  • Gerätekompatibilität und Leistung verbessern

API-Änderungen

  • Vereinfachte API für InProgressStrokesView, APIs für das Beenden von Geometrien, Emoji-Hervorhebung, Entfernen von Factory-Funktionen aus MutableParallelogram zugunsten von Populate-Methoden, Unterstützung von Seed für zufällige Pinselverhaltensweisen. (I38280)

Fehlerkorrekturen

  • Ein Leistungsproblem und ein Problem mit der Farbkonsistenz bei nassen/trockenen Oberflächen wurden behoben. (Ifcd1d)

Version 1.0.0-alpha05

18. Juni 2025

androidx.ink:ink-*:1.0.0-alpha05 ist veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

Neue Funktionen

  • Interoperabilitätsmodule für die Erstellung, Pinsel und Geometrie erstellen

API-Änderungen

  • Neue Compose-Interoperabilitätsmodule und APIs, API-Bereinigung (I0e464)
  • InProgressStroke.enqueueInputs/updateShape-Methoden, die kotlin.Result zurückgegeben haben, wurden entfernt. Clients sollten stattdessen z. B. enqueueInputsOrThrow oder enqueueInputsOrIgnore verwenden. InProgressStroke.getNeedsUpdate wird in isUpdateNeeded umbenannt. InProgressStroke.populateOutlinePosition gibt jetzt seinen Ausgabeparameter zurück, um das Verketten von Aufrufen zu ermöglichen, was mit anderen Methoden in Ink übereinstimmt. Die TextureBitmapStore-Benutzeroberfläche wird vom Rendering-Modul in das Pinselmodul verschoben. BoxAccumulator.populateFrom wurde so geändert, dass anstelle eines veränderlichen BoxAccumulator ein unveränderlicher Box-Typ mit Nullwert akzeptiert wird. Dadurch wird deutlicher, was geändert wird. Aufrufer sollten boxAccumulator.add(other) in boxAccumulator.add(other.box) ändern. BrushUtil.toBuilderWithAndroidColor/createBuilderWithAndroidColor werden entfernt. Verwenden Sie stattdessen die setAndroidColor von Brush.Builder nach der Konstruktion. (Ia7155)
  • Die bisher experimentelle Eigenschaft InProgressStrokesView.textureBitmapStore ist jetzt privat. Für diese Property gibt es noch öffentliche Accessoren. (I1d706)

Fehlerkorrekturen

  • Die Leistung wurde für benutzerdefinierte Pinsel mit vielen Partikeln verbessert.

Version 1.0.0-alpha04

9. April 2025

androidx.ink:ink-*:1.0.0-alpha04 ist veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

Neue Funktionen

  • Es werden neue experimentelle APIs für benutzerdefinierte BrushFamily-Objekte eingeführt, die neue Pinsel wie „Bleistift“ und „Laserpointer“ ermöglichen. Mit der API können Pinsel geladen werden, die durch dieses Proto definiert sind. (I8809a)

Version 1.0.0-alpha03

12. Februar 2025

androidx.ink:ink-*:1.0.0-alpha03 ist veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.

Neue Funktionen

  • Einsparungen bei Festplatten- und Netzwerkgröße: Durch die Serialisierung von StrokeInputBatch werden viele Codezeilen eingespart. Die resultierenden Objekte sind nur ein Bruchteil der Größe von herkömmlich gespeicherten Strichen. (Ie898d)
  • Lasso-Auswahl: Pinsel mit gestrichelter Linie zum Zeichnen eines Auswahlstrichs und eine Funktion zum Umwandeln des Auswahlstrichs in ein PartitionedMesh für Geometrieanfragen. (Ia38a0)

Version 1.0.0-alpha02

11. Dezember 2024

androidx.ink:ink-*:1.0.0-alpha02 ist veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.

API-Änderungen

  • Verschiedene Fehlerkorrekturen. (I05dd8)

Externe Beiträge

  • BuildCompat.isAtLeastV einstellen Anrufer sollten SDK_INT stattdessen direkt mit 35 vergleichen. (I294d1)

Version 1.0.0-alpha01

2. Oktober 2024

androidx.ink:ink-*:1.0.0-alpha01 ist veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

Neue Funktionen

  • Eine modulare und konfigurierbare Bibliothek, mit der sich ganz einfach ansprechende Tinte-Striche erstellen, rendern und bearbeiten lassen, die in Ihrer Anwendung erstellt wurden.

API-Änderungen

Neue Module, mit denen Entwickler umfassende Funktionen für die Stifteingabe entwickeln können:

  • Eingabe: Verwenden Sie InProgressStrokesView für das leistungsstarke Rendern von Strichen in Echtzeit mit niedriger Latenz, wenn Eingaben empfangen werden.
  • Rendern: Verwenden Sie CanvasStrokeRenderer und ViewStrokeRenderer, um die fertigen Tintenstriche als Teil der Benutzeroberfläche einer App zu zeichnen.
  • Striche: Kerndatentypen, die für die Freihandfunktionen verwendet werden.
  • Pinsel: Konfigurierbare Spezifikation, wie Striche aussehen und auf Nutzereingaben reagieren.
  • Geometrie: Geometrische Operationen wie Schnittmenge und Abdeckung für Tools wie Auswahl und Löschen.