Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
rysowanie
Inspiruj najlepsze aplikacje do obsługi pióra. Ułatwienie deweloperom tworzenia wydajnych i estetycznych funkcji pisania odręcznego.
Najnowsza aktualizacja |
Wersja stabilna |
Wersja kandydująca do publikacji |
Wersja Beta |
Wersja alfa |
13 sierpnia 2025 r. |
- |
- |
- |
1.0.0-alpha06 |
Deklarowanie zależności
Aby dodać zależność od Ink, musisz dodać repozytorium Google Maven do projektu. Więcej informacji znajdziesz w repozytorium Maven Google.
Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle
aplikacji lub modułu:
Groovy
dependencies {
implementation "androidx.ink:ink-authoring:1.0.0-alpha06"
implementation "androidx.ink:ink-brush:1.0.0-alpha06"
implementation "androidx.ink:ink-geometry:1.0.0-alpha06"
implementation "androidx.ink:ink-nativeloader:1.0.0-alpha06"
implementation "androidx.ink:ink-rendering:1.0.0-alpha06"
implementation "androidx.ink:ink-strokes:1.0.0-alpha06"
}
Kotlin
dependencies {
implementation("androidx.ink:ink-authoring:1.0.0-alpha06")
implementation("androidx.ink:ink-brush:1.0.0-alpha06")
implementation("androidx.ink:ink-geometry:1.0.0-alpha06")
implementation("androidx.ink:ink-nativeloader:1.0.0-alpha06")
implementation("androidx.ink:ink-rendering:1.0.0-alpha06")
implementation("androidx.ink:ink-strokes:1.0.0-alpha06")
}
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Opinia
Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nową kartę, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz dodać swój głos do istniejącego problemu, klikając przycisk gwiazdki.
Tworzenie nowego problemu
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Brak informacji o wersji tego artefaktu.
Wersja 1.0
Wersja 1.0.0-alpha06
13 sierpnia 2025 r.
Zostanie wycofaneandroidx.ink:ink-*:1.0.0-alpha06
Wersja 1.0.0-alpha06 zawiera te zmiany.
Nowe funkcje
- Pędzel do zaznaczania emotikonów: zaznaczaj części dokumentu wybranym emotikonem, aby dodać mu zabawny charakter i ułatwić sobie organizację.
- Więcej interfejsów API pomocniczych dla kształtów podstawowych modułu geometrii
- Poprawa zgodności i wydajności urządzenia
Zmiany w interfejsie API
- Uproszczony interfejs API dla
InProgressStrokesView
, interfejsy API geometrii wykończenia, wyróżnianie emoji, usuwanie funkcji fabrycznych z MutableParallelogram
na rzecz metod wypełniania, obsługa wartości początkowej dla losowych zachowań pędzla. (I38280)
Poprawki błędów
- Rozwiązanie problemu z wydajnością i spójnością kolorów na mokro i na sucho. (Ifcd1d)
Wersja 1.0.0-alpha05
18 czerwca 2025 r.
Zostanie wycofaneandroidx.ink:ink-*:1.0.0-alpha05
Wersja 1.0.0-alpha05 zawiera te commity.
Nowe funkcje
- Tworzenie modułów interoperacyjności dla modułów tworzenia, pędzla i geometrii
Zmiany w interfejsie API
- Nowe moduły i interfejsy API do współpracy z Compose, czyszczenie interfejsu API (I0e464)
InProgressStroke.enqueueInputs/updateShape
metody, które zwracały wartość kotlin.Result
, zostały usunięte.Klienci powinni zamiast nich używać np. enqueueInputsOrThrow
lub enqueueInputsOrIgnore
. Nazwa InProgressStroke.getNeedsUpdate
została zmieniona na isUpdateNeeded
. InProgressStroke.populateOutlinePosition
zwraca teraz parametr wyjściowy, aby umożliwić łączenie wywołań, co jest zgodne z innymi metodami w Ink. Interfejs TextureBitmapStore
został przeniesiony z modułu renderowania do modułu pędzla. BoxAccumulator.populateFrom
, aby przyjmować pole Box z wartością null zamiast modyfikowalnego pola BoxAccumulator
. Aby było jaśniejsze, co jest modyfikowane, wywołujący powinni zmienić boxAccumulator.add(other)
na boxAccumulator.add(other.box)
. BrushUtil.toBuilderWithAndroidColor/createBuilderWithAndroidColor
zostały usunięte. Zamiast nich używaj setAndroidColor
z Brush.Builder
po utworzeniu. (Ia7155)
- Właściwość eksperymentalna
InProgressStrokesView.textureBitmapStore
jest teraz prywatna. Ta właściwość nadal ma publiczne metody dostępu. (I1d706)
Poprawki błędów
- Poprawiliśmy wydajność pędzli niestandardowych zawierających wiele cząsteczek.
Wersja 1.0.0-alpha04
9 kwietnia 2025 r.
Zostanie wycofaneandroidx.ink:ink-*:1.0.0-alpha04
Wersja 1.0.0-alpha04 zawiera te zmiany.
Nowe funkcje
- Wprowadza nowe eksperymentalne interfejsy API dla niestandardowych obiektów
BrushFamily
, które umożliwiają korzystanie z nowych pędzli, takich jak ołówek i wskaźnik laserowy. Interfejs API umożliwia wczytywanie pędzli zdefiniowanych przez ten protokół. (I8809a)
Wersja 1.0.0-alpha03
12 lutego 2025 r.
Zostanie wycofaneandroidx.ink:ink-*:1.0.0-alpha03
Wersja 1.0.0-alpha03 zawiera te commity.
Nowe funkcje
- Oszczędność miejsca na dysku i w sieci: serializacja
StrokeInputBatch
, która pozwala zaoszczędzić wiele wierszy kodu, a powstałe obiekty zajmują niewielką część miejsca w porównaniu z tradycyjnie przechowywanymi pociągnięciami. (Ie898d)
- Zaznaczanie lassem: pędzel z linią przerywaną do rysowania kreski zaznaczenia i funkcja zamiany kreski zaznaczenia w
PartitionedMesh
na potrzeby zapytań dotyczących geometrii. (Ia38a0)
Wersja 1.0.0-alpha02
11 grudnia 2024 r.
Zostanie wycofaneandroidx.ink:ink-*:1.0.0-alpha02
Wersja 1.0.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- Poprawki różnych błędów. (I05dd8)
Wkład zewnętrzny
- Wycofaj:
BuildCompat.isAtLeastV
Zamiast tego wywołujący powinni bezpośrednio sprawdzać SDK_INT w porównaniu z 35. (I294d1)
Wersja 1.0.0-alpha01
2 października 2024 r.
Zostanie wycofaneandroidx.ink:ink-*:1.0.0-alpha01
Wersja 1.0.0-alpha01 zawiera te zmiany.
Nowe funkcje
- Modułowa i konfigurowalna biblioteka, która ułatwia tworzenie, renderowanie i manipulowanie pięknymi pociągnięciami pióra utworzonymi w aplikacji.
Zmiany w interfejsie API
Nowe moduły, które pomagają deweloperom tworzyć zaawansowane funkcje pisania odręcznego:
- Tworzenie: używaj
InProgressStrokesView
, aby renderować pociągnięcia w czasie rzeczywistym z wysoką wydajnością i niskim opóźnieniem w miarę otrzymywania danych wejściowych.
- Renderowanie: użyj
CanvasStrokeRenderer
i ViewStrokeRenderer
, aby narysować gotowe pociągnięcia piórem jako część interfejsu użytkownika aplikacji.
- Pociągnięcia: podstawowe typy danych używane w funkcjach pisania odręcznego.
- Pędzel: konfigurowalna specyfikacja wyglądu i działania pociągnięć w odpowiedzi na dane wejściowe użytkownika.
- Geometria: operacje geometryczne, takie jak przecięcie i pokrycie, które umożliwiają działanie narzędzi takich jak zaznaczanie i wymazywanie.
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-08-13 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-08-13 UTC."],[],[],null,["# ink\n===\n\nAPI Reference \n[androidx.ink.authoring](/reference/kotlin/androidx/ink/authoring/package-summary) \n[androidx.ink.authoring.compose](/reference/kotlin/androidx/ink/authoring/compose/package-summary) \n[androidx.ink.brush](/reference/kotlin/androidx/ink/brush/package-summary) \n[androidx.ink.brush.compose](/reference/kotlin/androidx/ink/brush/compose/package-summary) \n[androidx.ink.geometry](/reference/kotlin/androidx/ink/geometry/package-summary) \n[androidx.ink.geometry.compose](/reference/kotlin/androidx/ink/geometry/compose/package-summary) \n[androidx.ink.android.canvas](/reference/kotlin/androidx/ink/rendering/android/canvas/package-summary) \n[androidx.ink.android.view](/reference/kotlin/androidx/ink/rendering/android/view/package-summary) \n[androidx.ink.strokes](/reference/kotlin/androidx/ink/strokes/package-summary) \nInspire best-in-class pen apps. Lower the developer barrier to entry for high performance, beautiful inking experiences. \n\n| Latest Update | Stable Release | Release Candidate | Beta Release | Alpha Release |\n|-----------------|----------------|-------------------|--------------|---------------------------------------------------------------|\n| August 13, 2025 | - | - | - | [1.0.0-alpha06](/jetpack/androidx/releases/ink#1.0.0-alpha06) |\n\nDeclaring dependencies\n----------------------\n\nTo add a dependency on Ink, you must add the Google Maven repository to your\nproject. Read [Google's Maven repository](/studio/build/dependencies#google-maven)\nfor more information.\n\nAdd the dependencies for the artifacts you need in the `build.gradle` file for\nyour app or module: \n\n### Groovy\n\n```groovy\ndependencies {\n \n implementation \"androidx.ink:ink-authoring:1.0.0-alpha06\"\n implementation \"androidx.ink:ink-brush:1.0.0-alpha06\"\n implementation \"androidx.ink:ink-geometry:1.0.0-alpha06\"\n implementation \"androidx.ink:ink-nativeloader:1.0.0-alpha06\"\n implementation \"androidx.ink:ink-rendering:1.0.0-alpha06\"\n implementation \"androidx.ink:ink-strokes:1.0.0-alpha06\"\n \n}\n```\n\n### Kotlin\n\n```kotlin\ndependencies {\n\n\n implementation(\"androidx.ink:ink-authoring:1.0.0-alpha06\")\n implementation(\"androidx.ink:ink-brush:1.0.0-alpha06\")\n implementation(\"androidx.ink:ink-geometry:1.0.0-alpha06\")\n implementation(\"androidx.ink:ink-nativeloader:1.0.0-alpha06\")\n implementation(\"androidx.ink:ink-rendering:1.0.0-alpha06\")\n implementation(\"androidx.ink:ink-strokes:1.0.0-alpha06\")\n}\n```\n\nFor more information about dependencies, see [Add build dependencies](/studio/build/dependencies).\n\nFeedback\n--------\n\nYour feedback helps make Jetpack better. Let us know if you discover new issues or have\nideas for improving this library. Please take a look at the\n[existing issues](https://issuetracker.google.com/issues?q=componentid:1662443%20status:open)\nin this library before you create a new one. You can add your vote to an existing issue by\nclicking the star button.\n\n[Create a new issue](https://issuetracker.google.com/issues/new?component=1662443&template=2055047)\n\nSee the [Issue Tracker documentation](https://developers.google.com/issue-tracker)\nfor more information.\n\nThere are no release notes for this artifact.\n\nVersion 1.0\n-----------\n\n### Version 1.0.0-alpha06\n\nAugust 13, 2025\n\n`androidx.ink:ink-*:1.0.0-alpha06` is released. Version 1.0.0-alpha06 contains [these commits](https://android.googlesource.com/platform/frameworks/support/+log/e8af6ab7417811bf386c52a59ab5d0b94d194eeb..c359e97fece91f3767a7d017e9def23c7caf1f53/ink).\n\n**New Features**\n\n- Emoji highlighter stock brush: Highlight parts of a document with any emoji you choose, to add a fun flair and help stay organized.\n- More helper APIs for geometry module primitive shapes\n- Improve device compatibility and performance\n\n**API Changes**\n\n- Simplified API for `InProgressStrokesView`, finish geometry APIs, emoji highlighter, remove factory functions from `MutableParallelogram` in favor of populate methods, support seed for randomized brush behaviors. ([I38280](https://android-review.googlesource.com/#/q/I38280146fca9a55b06d87a835670efdd012990e7))\n\n**Bug Fixes**\n\n- Fix a performance issue and a wet/dry color consistency issue. ([Ifcd1d](https://android-review.googlesource.com/#/q/Ifcd1da4081a01ba8165b4e8624219b1bd26bd248))\n\n### Version 1.0.0-alpha05\n\nJune 18, 2025\n\n`androidx.ink:ink-*:1.0.0-alpha05` is released. Version 1.0.0-alpha05 contains [these commits](https://android.googlesource.com/platform/frameworks/support/+log/4c37298a97c16270c139eb812ddadaba03e23a52..e8af6ab7417811bf386c52a59ab5d0b94d194eeb/ink).\n\n**New Features**\n\n- Compose interoperability modules for authoring, brush, and geometry modules\n\n**API Changes**\n\n- New Compose interoperability modules and APIs, API cleanup ([I0e464](https://android-review.googlesource.com/#/q/I0e4641822d568573fc8c7b3955a007a8ac9cd1c5))\n- `InProgressStroke.enqueueInputs/updateShape` methods which returned `kotlin.Result` are removed, clients should use e.g. `enqueueInputsOrThrow` or `enqueueInputsOrIgnore` instead. `InProgressStroke.getNeedsUpdate` is renamed to `isUpdateNeeded`. `InProgressStroke.populateOutlinePosition` now returns its output parameter to allow call chaining, consistent with other methods in Ink. The `TextureBitmapStore` interface is moved from the rendering module to the brush module. `BoxAccumulator.populateFrom` is made to take a nullable immutable Box instead of a mutable `BoxAccumulator`, to make it clearer what is mutated, callers should change `boxAccumulator.add(other)` to `boxAccumulator.add(other.box)`. `BrushUtil.toBuilderWithAndroidColor/createBuilderWithAndroidColor` are removed, use the `setAndroidColor` of `Brush.Builder` after constructing instead. ([Ia7155](https://android-review.googlesource.com/#/q/Ia7155560602b8319183aa12671d7f1d925873448))\n- Previously experimental property `InProgressStrokesView.textureBitmapStore` is now private. There are still public accessors for this property. ([I1d706](https://android-review.googlesource.com/#/q/I1d7064ff25c953066a4b43a6c30a4b3aa0b145d5))\n\n**Bug Fixes**\n\n- Improved performance for custom brushes containing many particles.\n\n### Version 1.0.0-alpha04\n\nApril 9, 2025\n\n`androidx.ink:ink-*:1.0.0-alpha04` is released. Version 1.0.0-alpha04 contains [these commits](https://android.googlesource.com/platform/frameworks/support/+log/24c00eb294d9cda579d8d6e48a29497fe0f8d3f7..4c37298a97c16270c139eb812ddadaba03e23a52/ink).\n\n**New Features**\n\n- Introduces new experimental APIs for custom `BrushFamily` objects, enabling new brushes like Pencil and Laser Pointer. The API allows for loading brushes defined by this proto. ([I8809a](https://android-review.googlesource.com/#/q/I8809a675a5527c1a7bc2f519e041a8af1ed693b3))\n\n### Version 1.0.0-alpha03\n\nFebruary 12, 2025\n\n`androidx.ink:ink-*:1.0.0-alpha03` is released. Version 1.0.0-alpha03 contains [these commits](https://android.googlesource.com/platform/frameworks/support/+log/46295bc0b75a16f452e8e0090e8de41073d4dbb6..24c00eb294d9cda579d8d6e48a29497fe0f8d3f7/ink).\n\n**New Features**\n\n- Disk and network size savings: Serialization of `StrokeInputBatch`, saving many lines of code, with the resulting objects a tiny fraction of the size of traditionally stored strokes. ([Ie898d](https://android-review.googlesource.com/#/q/Ie898d91e3c77eccbf26e9ee6d7f384a3a57b974f))\n- Lasso selection: dashed line brush to draw a selection stroke, and a function to turn the selection stroke into a `PartitionedMesh` for geometry queries. ([Ia38a0](https://android-review.googlesource.com/#/q/Ia38a0e3e7a2da344d978bdfd5b8db8210a753e74))\n\n### Version 1.0.0-alpha02\n\nDecember 11, 2024\n\n`androidx.ink:ink-*:1.0.0-alpha02` is released. Version 1.0.0-alpha02 contains [these commits](https://android.googlesource.com/platform/frameworks/support/+log/b6ae8d0a0e8cd803f7b84f30101eda1af4f1d6b6..46295bc0b75a16f452e8e0090e8de41073d4dbb6/ink).\n\n**API Changes**\n\n- Assorted bug fixes. ([I05dd8](https://android-review.googlesource.com/#/q/I05dd84cb83c29b6f8af876164c426fee57f6f932))\n\n**External Contribution**\n\n- Deprecate `BuildCompat.isAtLeastV`. Callers should check SDK_INT against 35 directly instead. ([I294d1](https://android-review.googlesource.com/#/q/I294d117a8fea924e7f1b739d52268a9a54be6db7))\n\n### Version 1.0.0-alpha01\n\nOctober 2, 2024\n\n`androidx.ink:ink-*:1.0.0-alpha01` is released. Version 1.0.0-alpha01 contains [these commits](https://android.googlesource.com/platform/frameworks/support/+log/b6ae8d0a0e8cd803f7b84f30101eda1af4f1d6b6/ink).\n\n**New Features**\n\n- A modular and configurable library to make it easy to create, render, and manipulate beautiful ink strokes authored in your application.\n\n**API Changes**\n\nNew modules to help developers build rich inking experiences:\n\n- Authoring: Use `InProgressStrokesView` for high-performance, low latency rendering of strokes in real time as inputs are received.\n- Rendering: Use `CanvasStrokeRenderer` and `ViewStrokeRenderer` to draw the finished ink strokes as part of an app's user interface.\n- Strokes: Core data types used for inking features.\n- Brush: Configurable specification of how strokes will look and act in response to user input.\n- Geometry: Geometric operations like intersection and coverage to power tools like selection and erasing."]]