crayon

  
Inspirez les meilleures applications de stylet. Réduire les barrières à l'entrée pour les développeurs afin de proposer des expériences d'encrage de haute qualité et performantes
Dernière mise à jour Version stable Version finale Version bêta Version alpha
18 juin 2025 - - - 1.0.0-alpha05

Déclarer des dépendances

Pour ajouter une dépendance à Ink, vous devez ajouter le dépôt Maven de Google à votre projet. Pour en savoir plus, consultez la section Dépôt Maven de Google.

Ajoutez les dépendances correspondant aux artefacts dont vous avez besoin dans le fichier build.gradle de votre application ou de votre module :

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")
}

Pour en savoir plus sur les dépendances, consultez Ajouter des dépendances de compilation.

Commentaires

Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.

Signaler un nouveau problème

Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.

Aucune note de version pour cet artefact.

Version 1.0

Version 1.0.0-alpha05

18 juin 2025

Publication d'androidx.ink:ink-*:1.0.0-alpha05. La version 1.0.0-alpha05 contient ces commits.

Nouvelles fonctionnalités

  • Compose des modules d'interopérabilité pour les modules d'authoring, de pinceau et de géométrie

Modifications apportées à l'API

  • Nouveaux modules et API d'interopérabilité Compose, nettoyage des API (I0e464)
  • Les méthodes InProgressStroke.enqueueInputs/updateShape qui renvoyaient kotlin.Result sont supprimées. Les clients doivent utiliser enqueueInputsOrThrow ou enqueueInputsOrIgnore à la place, par exemple. InProgressStroke.getNeedsUpdate a été renommé isUpdateNeeded. InProgressStroke.populateOutlinePosition renvoie désormais son paramètre de sortie pour permettre l'enchaînement d'appels, conformément aux autres méthodes d'Ink. L'interface TextureBitmapStore est déplacée du module de rendu vers le module de pinceau. BoxAccumulator.populateFrom est conçu pour accepter une Box immuable nullable au lieu d'un BoxAccumulator modifiable. Pour clarifier ce qui est muté, les appelants doivent remplacer boxAccumulator.add(other) par boxAccumulator.add(other.box). BrushUtil.toBuilderWithAndroidColor/createBuilderWithAndroidColor sont supprimés. Utilisez plutôt le setAndroidColor de Brush.Builder après la création. (Ia7155)
  • La propriété InProgressStrokesView.textureBitmapStore, qui était auparavant expérimentale, est désormais privée. Il existe toujours des accesseurs publics pour cette propriété. (I1d706)

Correction de bugs

  • Amélioration des performances des pinceaux personnalisés contenant de nombreuses particules.

Version 1.0.0-alpha04

9 avril 2025

Publication d'androidx.ink:ink-*:1.0.0-alpha04. La version 1.0.0-alpha04 contient ces commits.

Nouvelles fonctionnalités

  • Introduction de nouvelles API expérimentales pour les objets BrushFamily personnalisés, permettant de créer de nouveaux pinceaux tels que le crayon et le pointeur laser. L'API permet de charger les pinceaux définis par ce proto. (I8809a)

Version 1.0.0-alpha03

12 février 2025

Publication d'androidx.ink:ink-*:1.0.0-alpha03. La version 1.0.0-alpha03 contient ces commits.

Nouvelles fonctionnalités

  • Économies de taille sur le disque et le réseau: sérialisation de StrokeInputBatch, ce qui permet d'économiser de nombreuses lignes de code, et les objets obtenus représentent une infime fraction de la taille des traits stockés traditionnellement. (Ie898d)
  • Sélection au lasso: pinceau de ligne en pointillés pour dessiner un trait de sélection et une fonction permettant de transformer le trait de sélection en PartitionedMesh pour les requêtes de géométrie. (Ia38a0)

Version 1.0.0-alpha02

11 décembre 2024

Publication d'androidx.ink:ink-*:1.0.0-alpha02. La version 1.0.0-alpha02 contient ces commits.

Modifications apportées à l'API

  • Correction de divers bugs. (I05dd8)

Contribution externe

  • Abandon de BuildCompat.isAtLeastV. Les appelants doivent plutôt vérifier directement SDK_INT par rapport à 35. (I294d1)

Version 1.0.0-alpha01

2 octobre 2024

Publication d'androidx.ink:ink-*:1.0.0-alpha01. La version 1.0.0-alpha01 contient ces commits.

Nouvelles fonctionnalités

  • Bibliothèque modulaire et configurable pour créer, afficher et manipuler facilement de beaux traits d'encre créés dans votre application.

Modifications apportées à l'API

Nouveaux modules pour aider les développeurs à créer des expériences de dessin enrichies:

  • Création: utilisez InProgressStrokesView pour un rendu des traits en temps réel à hautes performances et à faible latence à mesure que les entrées sont reçues.
  • Rendu: utilisez CanvasStrokeRenderer et ViewStrokeRenderer pour dessiner les traits d'encre finalisés dans l'interface utilisateur d'une application.
  • Traits: types de données de base utilisés pour les fonctionnalités de dessin.
  • Brosse: spécification configurable de l'apparence et du comportement des traits en réponse à l'entrée utilisateur.
  • Géométrie: opérations géométriques telles que l'intersection et la couverture pour alimenter des outils tels que la sélection et l'effacement.