Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
tinta
Inspirar las mejores apps para lápices Reducir la barrera de entrada para los desarrolladores y ofrecer experiencias de escritura a mano hermosas y de alto rendimiento
Actualización más reciente |
Versión estable |
Versión potencial |
Versión beta |
Versión alfa |
13 de agosto de 2025 |
- |
- |
- |
1.0.0-alpha06 |
Cómo declarar dependencias
Para agregar una dependencia en Ink, debes agregar el repositorio de Maven de Google a tu proyecto. Consulta el repositorio de Maven de Google para obtener más información.
Agrega las dependencias de los artefactos que necesites en el archivo build.gradle
de tu app o módulo:
Groovy
dependencies {
implementation "androidx.ink:ink-authoring:1.0.0-alpha05"
implementation "androidx.ink:ink-brush:1.0.0-alpha05"
implementation "androidx.ink:ink-geometry:1.0.0-alpha05"
implementation "androidx.ink:ink-nativeloader:1.0.0-alpha05"
implementation "androidx.ink:ink-rendering:1.0.0-alpha05"
implementation "androidx.ink:ink-strokes:1.0.0-alpha05"
}
Kotlin
dependencies {
implementation("androidx.ink:ink-authoring:1.0.0-alpha05")
implementation("androidx.ink:ink-brush:1.0.0-alpha05")
implementation("androidx.ink:ink-geometry:1.0.0-alpha05")
implementation("androidx.ink:ink-nativeloader:1.0.0-alpha05")
implementation("androidx.ink:ink-rendering:1.0.0-alpha05")
implementation("androidx.ink:ink-strokes:1.0.0-alpha05")
}
Para obtener más información sobre las dependencias, consulta Cómo agregar dependencias de compilación.
Comentarios
Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes de esta biblioteca antes de crear uno nuevo. Puedes agregar tu voto a un error existente haciendo clic en el botón de la estrella.
Crear un error nuevo
Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.
No hay notas de la versión para este artefacto.
Versión 1.0
Versión 1.0.0-alpha06
13 de agosto de 2025
Lanzamiento de androidx.ink:ink-*:1.0.0-alpha06
. La versión 1.0.0-alpha06 contiene estas confirmaciones.
Nuevas funciones
- Pincel de resaltador de emojis: Resalta partes de un documento con el emoji que elijas para agregar un toque divertido y mantener la organización.
- Más APIs de ayuda para las formas primitivas del módulo de geometría
- Mejora la compatibilidad y el rendimiento del dispositivo
Cambios en la API
- Se simplificó la API para
InProgressStrokesView
, se finalizaron las APIs de geometría, se agregó un resaltador de emojis, se quitaron las funciones de fábrica de MutableParallelogram
en favor de los métodos de población y se agregó compatibilidad con la semilla para los comportamientos aleatorios del pincel. (I38280)
Correcciones de errores
- Se corrigieron un problema de rendimiento y un problema de coherencia del color en condiciones húmedas y secas. (Ifcd1d)
Versión 1.0.0-alpha05
18 de junio de 2025
Lanzamiento de androidx.ink:ink-*:1.0.0-alpha05
. La versión 1.0.0-alpha05 contiene estas confirmaciones.
Nuevas funciones
- Módulos de interoperabilidad de Compose para los módulos de autoría, pincel y geometría
Cambios en la API
- Nuevos módulos y APIs de interoperabilidad de Compose, limpieza de APIs (I0e464)
- Se quitaron los métodos
InProgressStroke.enqueueInputs/updateShape
que devolvían kotlin.Result
. En su lugar, los clientes deben usar, por ejemplo, enqueueInputsOrThrow
o enqueueInputsOrIgnore
. Se cambió el nombre de InProgressStroke.getNeedsUpdate
por isUpdateNeeded
. Ahora InProgressStroke.populateOutlinePosition
devuelve su parámetro de salida para permitir el encadenamiento de llamadas, de manera coherente con otros métodos de Ink. La interfaz TextureBitmapStore
se trasladó del módulo de renderización al módulo de pincel. BoxAccumulator.populateFrom
se creó para tomar un Box inmutable anulable en lugar de un BoxAccumulator
mutable, para que quede más claro qué se muta. Los llamadores deben cambiar boxAccumulator.add(other)
a boxAccumulator.add(other.box)
. Se quitaron los BrushUtil.toBuilderWithAndroidColor/createBuilderWithAndroidColor
. En su lugar, usa el setAndroidColor
de Brush.Builder
después de la construcción. (Ia7155)
- La propiedad experimental
InProgressStrokesView.textureBitmapStore
ahora es privada. Aún hay accesores públicos para esta propiedad. (I1d706)
Correcciones de errores
- Se mejoró el rendimiento de los pinceles personalizados que contienen muchas partículas.
Versión 1.0.0-alpha04
9 de abril de 2025
Lanzamiento de androidx.ink:ink-*:1.0.0-alpha04
. La versión 1.0.0-alpha04 contiene estas confirmaciones.
Nuevas funciones
- Se introdujeron nuevas APIs experimentales para objetos
BrushFamily
personalizados, lo que permite usar nuevos pinceles, como Lápiz y Puntero láser. La API permite cargar pinceles definidos por este .proto. (I8809a)
Versión 1.0.0-alpha03
12 de febrero de 2025
Lanzamiento de androidx.ink:ink-*:1.0.0-alpha03
. La versión 1.0.0-alpha03 contiene estas confirmaciones.
Nuevas funciones
- Ahorro en el tamaño del disco y la red: La serialización de
StrokeInputBatch
ahorra muchas líneas de código, y los objetos resultantes son una pequeña fracción del tamaño de los trazos almacenados tradicionalmente. (Ie898d)
- Selección con lazo: Pincel de línea punteada para dibujar un trazo de selección y una función para convertir el trazo de selección en un
PartitionedMesh
para las búsquedas de geometría. (Ia38a0)
Versión 1.0.0-alpha02
11 de diciembre de 2024
Lanzamiento de androidx.ink:ink-*:1.0.0-alpha02
. La versión 1.0.0-alpha02 contiene estas confirmaciones.
Cambios en la API
- Se corrigieron varios errores. (I05dd8)
Contribución externa
BuildCompat.isAtLeastV
dejó de estar disponible. En su lugar, los llamadores deben verificar SDK_INT directamente con 35. (I294d1)
Versión 1.0.0-alpha01
2 de octubre de 2024
Lanzamiento de androidx.ink:ink-*:1.0.0-alpha01
. La versión 1.0.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Una biblioteca modular y configurable para facilitar la creación, la renderización y la manipulación de trazos de tinta atractivos creados en tu aplicación.
Cambios en la API
Nuevos módulos para ayudar a los desarrolladores a crear experiencias de escritura a mano enriquecidas:
- Creación: Usa
InProgressStrokesView
para renderizar trazos en tiempo real con alto rendimiento y baja latencia a medida que se reciben las entradas.
- Renderización: Usa
CanvasStrokeRenderer
y ViewStrokeRenderer
para dibujar los trazos de tinta terminados como parte de la interfaz de usuario de una app.
- Trazos: Son los tipos de datos principales que se usan para las funciones de escritura a mano.
- Pincel: Especificación configurable de cómo se verán y actuarán los trazos en respuesta a la entrada del usuario.
- Geometría: Operaciones geométricas, como intersección y cobertura, para potenciar herramientas como selección y borrado.
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-08-13 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 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."]]