컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
그리기
동급 최고의 펜 앱을 구현하도록 지원합니다. 고성능의 아름다운 잉크 환경을 위한 개발자 진입 장벽을 낮춥니다.
최근 업데이트 |
안정화 버전 |
출시 후보 버전 |
베타 버전 |
알파 버전 |
2025년 8월 13일 |
- |
- |
- |
1.0.0-alpha06 |
종속 항목 선언
Ink의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
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")
}
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
새로운 문제 제출하기
자세한 내용은 Issue Tracker 문서를 참고하세요.
이 아티팩트의 출시 노트는 없습니다.
버전 1.0
버전 1.0.0-alpha06
2025년 8월 13일
androidx.ink:ink-*:1.0.0-alpha06
이 출시되었습니다. 버전 1.0.0-alpha06에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 이모티콘 형광펜 스톡 브러시: 원하는 이모티콘으로 문서의 일부를 강조 표시하여 재미를 더하고 정리된 상태를 유지할 수 있습니다.
- 기하학 모듈 기본 도형을 위한 도우미 API 추가
- 기기 호환성 및 성능 개선
API 변경사항
InProgressStrokesView
, 마무리 형상 API, 그림 이모티콘 하이라이터의 API를 간소화하고, 채우기 메서드를 선호하여 MutableParallelogram
에서 팩토리 함수를 삭제하고, 무작위 브러시 동작의 시드를 지원합니다. (I38280)
버그 수정
- 성능 문제와 습식/건식 색상 일관성 문제를 수정합니다. (Ifcd1d)
버전 1.0.0-alpha05
2025년 6월 18일
androidx.ink:ink-*:1.0.0-alpha05
이 출시되었습니다. 버전 1.0.0-alpha05에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 작성, 브러시, 형상 모듈용 Compose 상호 운용성 모듈
API 변경사항
- 새로운 Compose 상호 운용성 모듈 및 API, API 정리 (I0e464)
kotlin.Result
을 반환하는 InProgressStroke.enqueueInputs/updateShape
메서드가 삭제되었습니다. 클라이언트는 대신 enqueueInputsOrThrow
또는 enqueueInputsOrIgnore
등을 사용해야 합니다. InProgressStroke.getNeedsUpdate
에서 isUpdateNeeded
로 이름이 변경되었습니다. 이제 InProgressStroke.populateOutlinePosition
는 호출 체인을 허용하기 위해 출력 매개변수를 반환합니다. 이는 Ink의 다른 메서드와 일치합니다. TextureBitmapStore
인터페이스가 렌더링 모듈에서 브러시 모듈로 이동했습니다. BoxAccumulator.populateFrom
가 변경 가능한 BoxAccumulator
대신 null을 허용하는 변경 불가능한 Box를 사용하도록 설정되어 있으므로 변경되는 항목을 더 명확하게 하기 위해 호출자는 boxAccumulator.add(other)
를 boxAccumulator.add(other.box)
로 변경해야 합니다. BrushUtil.toBuilderWithAndroidColor/createBuilderWithAndroidColor
가 삭제되었습니다. 대신 구성 후 Brush.Builder
의 setAndroidColor
를 사용하세요. (Ia7155)
- 이전에 실험용이었던 속성
InProgressStrokesView.textureBitmapStore
가 이제 비공개입니다. 이 속성에 대한 공개 접근자가 아직 있습니다. (I1d706)
버그 수정
- 많은 입자를 포함하는 맞춤 브러시의 성능이 개선되었습니다.
버전 1.0.0-alpha04
2025년 4월 9일
androidx.ink:ink-*:1.0.0-alpha04
이 출시되었습니다. 버전 1.0.0-alpha04에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
- 맞춤
BrushFamily
객체를 위한 새로운 실험용 API를 도입하여 연필, 레이저 포인터와 같은 새로운 브러시를 지원합니다. API를 사용하면 이 프로토로 정의된 브러시를 로드할 수 있습니다. (I8809a)
버전 1.0.0-alpha03
2025년 2월 12일
androidx.ink:ink-*:1.0.0-alpha03
이 출시되었습니다. 버전 1.0.0-alpha03에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 디스크 및 네트워크 크기 절감:
StrokeInputBatch
직렬화로 코드 줄을 많이 절약하고 결과 객체는 기존에 저장된 획 크기의 아주 작은 부분입니다. (Ie898d)
- 올가미 선택: 선택 획을 그리는 점선 브러시와 선택 획을 기하학적 쿼리를 위한
PartitionedMesh
로 변환하는 기능 (Ia38a0)
버전 1.0.0-alpha02
2024년 12월 11일
androidx.ink:ink-*:1.0.0-alpha02
이 출시되었습니다. 버전 1.0.0-alpha02에는 이 커밋이 포함되어 있습니다.
API 변경사항
외부 기여
BuildCompat.isAtLeastV
가 지원 중단되었습니다. 호출자는 SDK_INT를 35와 직접 비교해야 합니다. (I294d1)
버전 1.0.0-alpha01
2024년 10월 2일
androidx.ink:ink-*:1.0.0-alpha01
이 출시되었습니다. 버전 1.0.0-alpha01에는 이 커밋이 포함되어 있습니다.
새로운 기능
- 애플리케이션에서 작성된 아름다운 잉크 획을 쉽게 생성, 렌더링, 조작할 수 있는 모듈식 구성 가능한 라이브러리입니다.
API 변경사항
개발자가 풍부한 잉크 환경을 빌드할 수 있는 새로운 모듈:
- 작성: 입력이 수신될 때 실시간으로 획을 고성능, 짧은 지연 시간으로 렌더링하려면
InProgressStrokesView
를 사용합니다.
- 렌더링:
CanvasStrokeRenderer
및 ViewStrokeRenderer
를 사용하여 앱의 사용자 인터페이스의 일부로 완성된 잉크 스트로크를 그립니다.
- 획: 잉크 기능에 사용되는 핵심 데이터 유형입니다.
- 브러시: 사용자 입력에 대한 응답으로 획이 표시되고 작동하는 방식을 구성할 수 있는 사양입니다.
- 기하 도형: 선택 및 지우개와 같은 도구를 지원하는 교차 및 범위와 같은 기하 도형 작업
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-08-13(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 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."]]