Tinte
| Letzte Aktualisierung | Stabile Release | Releasekandidat | Beta-Release | Alpha-Release |
|---|---|---|---|---|
| 23. September 2026 | 1.0.0 | - | - | 1.1.0-alpha09 |
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 unter Google-Repository bei Maven.
Fügen Sie die Abhängigkeiten für die benötigten Artefakte in der Datei build.gradle für Ihre App oder Ihr Modul hinzu:
Groovy
dependencies { implementation "androidx.ink:ink-authoring:1.1.0-alpha09" implementation "androidx.ink:ink-authoring-compose:1.1.0-alpha09" implementation "androidx.ink:ink-brush:1.1.0-alpha09" implementation "androidx.ink:ink-brush-compose:1.1.0-alpha09" implementation "androidx.ink:ink-geometry:1.1.0-alpha09" implementation "androidx.ink:ink-geometry-compose:1.1.0-alpha09" implementation "androidx.ink:ink-nativeloader:1.1.0-alpha09" implementation "androidx.ink:ink-rendering:1.1.0-alpha09" implementation "androidx.ink:ink-storage:1.1.0-alpha09" implementation "androidx.ink:ink-strokes:1.1.0-alpha09" }
Kotlin
dependencies { implementation("androidx.ink:ink-authoring:1.1.0-alpha09") implementation("androidx.ink:ink-authoring-compose:1.1.0-alpha09") implementation("androidx.ink:ink-brush:1.1.0-alpha09") implementation("androidx.ink:ink-brush-compose:1.1.0-alpha09") implementation("androidx.ink:ink-geometry:1.1.0-alpha09") implementation("androidx.ink:ink-geometry-compose:1.1.0-alpha09") implementation("androidx.ink:ink-nativeloader:1.1.0-alpha09") implementation("androidx.ink:ink-rendering:1.1.0-alpha09") implementation("androidx.ink:ink-storage:1.1.0-alpha09") implementation("androidx.ink:ink-strokes:1.1.0-alpha09") }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Ihr Feedback hilft uns, Jetpack zu verbessern. Wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben, lassen Sie es uns wissen. Bevor Sie ein neues Problem erstellen, sollten Sie sich jedoch die bereits gemeldeten Probleme in dieser Bibliothek ansehen. Wenn Sie sich einer Problemmeldung anschließen möchten, klicken Sie auf den Button mit dem Stern.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Ink Version 1.1
Version 1.1.0-alpha09
23. September 2026
androidx.ink:ink-*:1.1.0-alpha09 ist veröffentlicht. Version 1.1.0-alpha09 enthält diese Commits.
API-Änderungen
- Die Änderung der Pinsel-Farbe erfolgt jetzt im Oklab-Farbraum, wodurch die wahrgenommene Helligkeit bei Farbtonänderungen besser erhalten bleibt. Durch die Umbenennung von
SATURATIONundLUMINOSITYwerden die Brush Target APIs entsprechend zuCHROMAundLIGHTNESSverschoben. (I0ed42)
Fehlerkorrekturen
- Die
androidx.lifecycle:lifecycle-runtime-Abhängigkeit wurde auf 2.10.0 aktualisiert. Diese Version ist erforderlich, damit gebündelte Lint-Prüfungen für den Lebenszyklus mit AGP-Version 9.5.0-alpha04 oder höher ausgeführt werden können. (I99bfd, b/556807521)
Version 1.1.0-alpha08
9. September 2026
androidx.ink:ink-*:1.1.0-alpha08 ist veröffentlicht. Version 1.1.0-alpha08 enthält diese Commits.
API-Änderungen
- Unter der Opt-in-Annotation
ExperimentalInkCrossPlatformRenderingApiwird überMetalRendererUnterstützung für das Rendering von KMP für iOS hinzugefügt. Die Hauptfunktionen basieren auf gemeinsamen KMP-APIs. - Benenne
Target.TEXTURE_ANIMATION_PROGRESS_OFFSETinTarget.PAINT_ANIMATION_PROGRESS_OFFSETum. (I8809f) - Überladungen
ImmutableAffineTransform.translate(float x, float, y)undMutableAffineTransform populateFromTranslation(float x, float y)hinzugefügt (I8809f) - Property „
DampingNode“ von „dampingSource“ in „dampOver“ umbenennen (Id3178) DampingNode-Property von „dampingGap“ in „strength“ umbenennen (I69432)- Verwenden Sie den Typ
Vec, wenn SieEasingFunction.CubicBezieranstelle vonFloats definieren (I69432). WorkerThread-Annotation für die RadierfunktionenStroke.subtractundStroke.splitfür die Bearbeitung von 3D-Modellen hinzugefügt (I69432)
Fehlerkorrekturen
Brush-Beispiele KMP-kompatibel machen (I77125)
Version 1.1.0-alpha07
12. August 2026
androidx.ink:ink-*:1.1.0-alpha07 ist veröffentlicht. Version 1.1.0-alpha07 enthält diese Commits.
API-Änderungen
- Leistungsregression bei Pinseln mit dichten Partikeln behoben, Brush.Version-Konstanten basierend auf API-Feedback aktualisiert (I87f0f)
Version 1.1.0-alpha06
29. Juli 2026
androidx.ink:ink-*:1.1.0-alpha06 ist veröffentlicht. Version 1.1.0-alpha06 enthält diese Commits.
API-Änderungen
- Der API wurden
calculateMinimumRequiredVersion-Methoden fürBrushFamily-Untertypen hinzugefügt. (I338c9) - Felder der
AffineTransform-Komponente freigeben (Ic2ec3) - Speicherleck in
InProgressStrokesViewbehoben, visuelle Artefakte des experimentellen partiellen Strichradierers verbessert, verbesserte Protobuf-Darstellung für benutzerdefinierte Pinseltexturschichten (I6ff86) - Initialisierungskonstruktor für
MutableAffineTransformhinzufügen (entsprechendImmutableAffineTransform) (I96ec7) InProgressStroke.clearhinzufügen (Ie0032)toImmutable-Methoden zu Datenstrukturen mit veränderlichen und unveränderlichen Unterklassen hinzufügen (I53835)- KMP-Migration (Icbf38, b/521850119, b/534309122)
Fehlerkorrekturen
- Zusätzliche Unterstützung für Pinselversionierung und Texturanimationen. (Iea9ba)
Version 1.1.0-alpha05
15. Juli 2026
androidx.ink:ink-*:1.1.0-alpha05 ist veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.
API-Änderungen
- Experimentelle Version eines neuen Radierertyps, der als „Teilstrich“, „Mesh-Bearbeitung“ oder „Pixelradierer“ bezeichnet wird. Damit wird die Strichgeometrie bearbeitet und Striche werden geteilt, anstatt ganze Striche zu löschen oder mit der Hintergrundfarbe zu maskieren. Zu den bekannten Problemen gehören das Fehlen von Anti-Aliasing an den Schnittkanten und das Fehlen von Serialisierungs-APIs zum Speichern der gelöschten
PartitionedMesh-Ergebnisse. Beide werden in zukünftigen Releases behoben. - Die fehlende „Throws“-Annotation wurde zu
StrokeInputBatchSerialization.decodehinzugefügt. Java-Nutzer dieser Methode müssen sie aktualisieren. (I83473, b/522256938)
Fehlerkorrekturen
- Behebung eines nativen Absturzes aufgrund eines Problems mit der numerischen Genauigkeit (I2e1f0, 6618e69, b/523190724)
- Entartete Extrusionen in
BrushTipExtruderverwerfen (469b629) - Fehler bei
RejectedExecutionExceptioninInProgressStrokesViewbeheben (b/526696762)
Version 1.1.0-alpha04
17. Juni 2026
androidx.ink:ink-*:1.1.0-alpha04 ist veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.
API-Änderungen
Probleme mit der Gleitkommazahl-Genauigkeit behoben, die nach Betriebssystem-Upgrades auf bestimmten Geräten zu visuellen Artefakten bei fertig gezeichneten Strichen führten
KMP-common API für Speichermodul hinzufügen (Wechsel von/zu
ByteArrayanstelle von JavaInputStream/OutputStream).Fügen Sie ein
BrushBehavior.developerComment-Attribut hinzu, um Metadaten zum Design einer benutzerdefinierten Pinselgruppe zu speichern. Dies soll die Benutzeroberfläche des Pinsels unterstützen.Ein Fehler bei den Konsistenzprüfungen für Threads in
CanvasInProgressStrokesRenderHelperV33wurde behoben.Es wurden einige Fehler bei der Verarbeitung optionaler
MotionEvent-Felder (z.B. „tilt“ und „pressure“) behoben.Dokumentation für die API für benutzerdefinierte Pinsel verbessern.
Neue
BrushPaint.ColorFunction-Typen hinzufügen
Version 1.1.0-alpha03
19. Mai 2026
androidx.ink:ink-*:1.1.0-alpha03 ist veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.
API-Änderungen
- Programmatische API zur Anpassung von Ink-Pinseln öffentlich machen (I8e2e1)
BrushPaint.TextureLayerin spezifischere Unterklassen aufteilen (I8848a)
Version 1.1.0-alpha02
22. April 2026
androidx.ink:ink-*:1.1.0-alpha02 ist veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.
API-Änderungen
- Eine Überladung von
BrushFamily.decodebereitstellen, die die maximale Versionskompatibilität angibt (I1c7bc) - Die
BrushFamily-Serialisierungs-API aus der experimentellen Phase herausnehmen (Idd16e)
Fehlerkorrekturen
- Flimmern bei Verwendung von
InProgressStrokesView.maskPathauf bestimmten Geräten behoben (I1c7bc, b/496920044)
Version 1.1.0-alpha01
11. März 2026
androidx.ink:ink-*:1.1.0-alpha01 ist veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.
Neue Funktionen
- Verschiedene kleine Fehlerkorrekturen
API-Änderungen
- Fügen Sie
InProgressShape.isCanceledhinzu und beheben Sie Gleichzeitigkeitsprobleme im Autorenschaftsmodul. (Ibfd32, b/474385518, b/470695777) - Versionen von
CanvasStrokeRenderer.createundInProgressStroke.updateShapeohne Argumente für Java verfügbar machen (Id80a1, b/457715938)
Fehlerkorrekturen
- Ein Fehler wurde behoben, der bei API 29–32 zu Abstürzen in
InProgressStrokesViewgeführt hat, wenn das Fenster getrennt und wieder angehängt wurde. Außerdem können Vec-Vorgänge jetzt dieselbeMutableVecals Ein- und Ausgabe verwenden. Proguard-Konfigurationen wurden in einer Datei zusammengeführt. (Ia4da0) - Abhängigkeit von graphics-core auf 1.0.4 erhöhen (Ibfa18)
Version 1.0
Version 1.0.0
17. Dezember 2025
androidx.ink:ink-*:1.0.0 ist veröffentlicht. Version 1.0.0 enthält diese Commits.
Fehlerkorrekturen
- Abhängigkeit von
graphics-coreauf 1.0.4 (Ibfa18) erhöhen
Version 1.0.0-rc01
3. Dezember 2025
androidx.ink:ink-*:1.0.0-rc01 ist veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Aktualisieren Sie die Abhängigkeitsversion. (Iecd04)
Version 1.0.0-beta02
19. November 2025
androidx.ink:ink-*:1.0.0-beta02 ist veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.
API-Änderungen
- Experimentelle benutzerdefinierte APIs für Formen mit niedriger Latenz, verschiedene Fehlerkorrekturen (Ib8d2f)
Fehlerkorrekturen
- Verbesserung der Gleitkomma-Genauigkeit bei der
StrokeInputBatch-Serialisierung, um Abweichungen bei den Werten durch wiederholtes Codieren und Decodieren zu beheben - Robusteres Bereinigen von Systemeingaben.
- Unterstützung für Pinseltexturen in der zusammensetzbaren Funktion
InProgressStrokesbeheben
Version 1.0.0-beta01
22. Oktober 2025
androidx.ink:ink-*:1.0.0-beta01 ist veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Fehlerkorrekturen
- Fehlerkorrekturen zur Vorbereitung auf die Veröffentlichung von Beta01 (I9900e)
- Reduziert Rendering-Artefakte in Strichen, die durch zu viele modellierte Eingaben zu nahe beieinander entstehen.
- Ein seltener Absturz bei der Eingabemodellierung wurde behoben.
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ürStockBrusheshighlighterundemojiHighlighter, derInProgressStrokesViewrendererFactoryersetzt- 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 im Vergleich zu Radiant), Transformationen (Neigung im Vergleich zu Scherung) und mehr
API-Änderungen
- Die winkelbezogene API wurde so geändert, dass Grad verwendet werden und Einheiten in Namen enthalten sind. Außerdem wurde die Dokumentation zu Einheiten in den Dienstprogrammen zur Winkelumrechnung präzisiert und es werden sowohl Grad als auch Radian unterstützt. Die
StockBrushes-API wurde so geändert, dass die Stock-Pinselversion als Parameter der Factory-Funktion verwendet wird. Außerdem wurde die Steuerung des Selbstüberlappungsverhaltens für Highlighter-Pinsel eingeführt.MutableAffineTransform.populateFromTranslatewurde inpopulateFromTranslationumbenannt undInProgressStrokesView.setRenderFactory/getRenderFactorywurde entfernt. (Id9eab, b/436656418) - „Scheren“ in „Verzerren“ umbenennen, Dokumentation klarer formulieren,
CanvasStrokeRenderer.strokeModifiedRegionOutsetPxentfernen,InProgressStroke.changesWithTimehinzufü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 Übersichtlichkeit zu verbessern.
- 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 Fabrikmethoden ausMutableParallelogramzugunsten 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, diekotlin.Resultzurückgegeben haben, wurden entfernt. Clients sollten stattdessen z. B.enqueueInputsOrThrowoderenqueueInputsOrIgnoreverwenden.InProgressStroke.getNeedsUpdatewird inisUpdateNeededumbenannt.InProgressStroke.populateOutlinePositiongibt jetzt seinen Ausgabeparameter zurück, um das Verketten von Aufrufen zu ermöglichen, was mit anderen Methoden in Ink übereinstimmt. DieTextureBitmapStore-Schnittstelle wird vom Rendering-Modul in das Pinselmodul verschoben.BoxAccumulator.populateFromist so konzipiert, dass anstelle eines veränderlichenBoxAccumulatorein unveränderlicher Box-Typ mit Nullable-Eigenschaft verwendet wird. Um deutlicher zu machen, was geändert wird, sollten AufruferboxAccumulator.add(other)inboxAccumulator.add(other.box)ändern.BrushUtil.toBuilderWithAndroidColor/createBuilderWithAndroidColorwerden entfernt. Verwenden Sie stattdessen diesetAndroidColorvonBrush.Buildernach der Erstellung. (Ia7155)- Die bisher experimentelle Eigenschaft
InProgressStrokesView.textureBitmapStoreist jetzt privat. Für diese Property sind weiterhin öffentliche Accessoren vorhanden. (I1d706)
Fehlerkorrekturen
- Die Leistung wurde für benutzerdefinierte Pinsel mit vielen Partikeln verbessert.
Version 1.0.0-alpha04
09. 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. Die API ermöglicht das Laden von Pinseln, die durch dieses Proto definiert werden. (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
StrokeInputBatchwerden viele Codezeilen eingespart. Die resultierenden Objekte sind nur ein Bruchteil der Größe von herkömmlich gespeicherten Strichen. (Ie898d) - Lasso-Auswahl: Pinsel für gestrichelte Linien zum Zeichnen eines Auswahlstrichs und eine Funktion zum Umwandeln des Auswahlstrichs in ein
PartitionedMeshfür Geometrieabfragen. (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)
Externer Beitrag
- Stellen Sie
BuildCompat.isAtLeastVein. 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 erstellen können:
- Authoring: Verwenden Sie
InProgressStrokesViewfür das leistungsstarke Rendern von Linien mit geringer Latenz in Echtzeit, wenn Eingaben empfangen werden. - Rendern: Verwenden Sie
CanvasStrokeRendererundViewStrokeRenderer, um die fertigen Tintenstriche als Teil der Benutzeroberfläche einer App zu zeichnen. - Striche: Kerndatentypen, die für Freihandfunktionen verwendet werden.
- Pinsel: Konfigurierbare Spezifikation, wie Striche aussehen und auf Nutzereingaben reagieren.
- Geometrie: Geometrische Operationen wie Schnittmengen und Abdeckung für Tools wie Auswahl und Löschen.