잉크
| 최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
|---|---|---|---|---|
| 2026년 9월 9일 | 1.0.0 | - | - | 1.1.0-alpha08 |
종속 항목 선언
Ink의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle 파일에 필요한 아티팩트의 종속 항목을 추가합니다.
Groovy
dependencies { implementation "androidx.ink:ink-authoring:1.1.0-alpha04" implementation "androidx.ink:ink-authoring-compose:1.1.0-alpha04" implementation "androidx.ink:ink-brush:1.1.0-alpha04" implementation "androidx.ink:ink-brush-compose:1.1.0-alpha04" implementation "androidx.ink:ink-geometry:1.1.0-alpha04" implementation "androidx.ink:ink-geometry-compose:1.1.0-alpha04" implementation "androidx.ink:ink-nativeloader:1.1.0-alpha04" implementation "androidx.ink:ink-rendering:1.1.0-alpha04" implementation "androidx.ink:ink-storage:1.1.0-alpha04" implementation "androidx.ink:ink-strokes:1.1.0-alpha04" }
Kotlin
dependencies { implementation("androidx.ink:ink-authoring:1.1.0-alpha04") implementation("androidx.ink:ink-authoring-compose:1.1.0-alpha04") implementation("androidx.ink:ink-brush:1.1.0-alpha04") implementation("androidx.ink:ink-brush-compose:1.1.0-alpha04") implementation("androidx.ink:ink-geometry:1.1.0-alpha04") implementation("androidx.ink:ink-geometry-compose:1.1.0-alpha04") implementation("androidx.ink:ink-nativeloader:1.1.0-alpha04") implementation("androidx.ink:ink-rendering:1.1.0-alpha04") implementation("androidx.ink:ink-storage:1.1.0-alpha04") implementation("androidx.ink:ink-strokes:1.1.0-alpha04") }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
잉크 버전 1.1
버전 1.1.0-alpha08
2026년 9월 9일
androidx.ink:ink-*:1.1.0-alpha08이 출시되었습니다. 버전 1.1.0-alpha08에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
- 핵심 기능을 위한 KMP 공통 API를 기반으로 선택 주석
ExperimentalInkCrossPlatformRenderingApi아래에MetalRenderer를 통해 KMP iOS 렌더링 지원 추가 Target.TEXTURE_ANIMATION_PROGRESS_OFFSET의 이름을Target.PAINT_ANIMATION_PROGRESS_OFFSET로 바꿉니다. (I8809f)ImmutableAffineTransform.translate(float x, float, y)및MutableAffineTransform populateFromTranslation(float x, float y)오버로드 추가 (I8809f)DampingNode속성의 이름을dampingSource에서dampOver로 바꿈 (Id3178)DampingNode속성의 이름을dampingGap에서strength로 바꿈 (I69432)Float대신EasingFunction.CubicBezier를 정의할 때Vec유형 사용 (I69432)- 메시 수정 지우개 함수
Stroke.subtract및Stroke.split에WorkerThread주석 추가 (I69432)
버그 수정
Brush샘플을 KMP 호환으로 만들기 (I77125)
버전 1.1.0-alpha07
2026년 8월 12일
androidx.ink:ink-*:1.1.0-alpha07이 출시되었습니다. 버전 1.1.0-alpha07에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
- 밀도 높은 입자 브러시에 영향을 미치는 성능 회귀 수정, API 피드백에 따라 Brush.Version 상수 업데이트 (I87f0f)
버전 1.1.0-alpha06
2026년 7월 29일
androidx.ink:ink-*:1.1.0-alpha06이 출시되었습니다. 버전 1.1.0-alpha06에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
BrushFamily하위 유형 API에calculateMinimumRequiredVersion메서드가 추가되었습니다. (I338c9)AffineTransform구성요소 필드 노출 (Ic2ec3)InProgressStrokesView의 메모리 누수 수정, 실험용 부분 획 지우개 시각적 아티팩트 개선, 맞춤 브러시 텍스처 레이어의 protobuf 표현 개선 (I6ff86)MutableAffineTransform의 초기화 생성자를 추가하여ImmutableAffineTransform와 일치시킴(I96ec7)InProgressStroke.clear추가 (Ie0032)- 변경 가능한 하위 클래스와 변경 불가능한 하위 클래스가 있는 데이터 구조에
toImmutable메서드 추가 (I53835) - KMP 이전 (Icbf38, b/521850119, b/534309122)
버그 수정
- 브러시 버전 관리 및 텍스처 애니메이션에 대한 지원이 추가되었습니다. (Iea9ba)
버전 1.1.0-alpha05
2026년 7월 15일
androidx.ink:ink-*:1.1.0-alpha05이 출시되었습니다. 버전 1.1.0-alpha05에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
- 획 전체를 삭제하거나 배경색으로 마스킹하는 대신 획 지오메트리를 수정하고 획을 분할하는 '부분 획', '메시 수정' 또는 '픽셀' 지우개라는 새로운 지우개 유형의 실험적 출시 알려진 문제로는 잘린 가장자리의 앤티앨리어싱 부족과 지워진
PartitionedMesh결과를 저장하는 직렬화 API가 없다는 점이 있으며, 이 문제는 향후 출시에서 해결될 예정입니다. - 누락된 Throws 주석을
StrokeInputBatchSerialization.decode에 추가하여 해당 메서드의 Java 소비자의 업데이트가 필요함 (I83473, b/522256938)
버그 수정
- 숫자 정밀도 문제로 인한 네이티브 비정상 종료 수정 (I2e1f0, 6618e69, b/523190724)
BrushTipExtruder에서 퇴화된 돌출 삭제 (469b629)InProgressStrokesView의RejectedExecutionException수정 (b/526696762)
버전 1.1.0-alpha04
2026년 6월 17일
androidx.ink:ink-*:1.1.0-alpha04이 출시되었습니다. 버전 1.1.0-alpha04에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
OS 업그레이드 후 특정 기기에 영향을 미치며 완성된 획에 시각적 아티팩트가 발생하는 부동 소수점 정밀도 문제 수정
저장소 모듈의 KMP-common API 추가 (Java
InputStream/OutputStream대신ByteArray로 이동/이동).맞춤 브러시 패밀리의 디자인을 설명하는 메타데이터를 보유하는
BrushBehavior.developerComment속성을 추가합니다. 브러시 디자이너 UI를 지원하기 위한 것입니다.CanvasInProgressStrokesRenderHelperV33의 스레딩 일관성 검사에서 버그 수정MotionEvent선택적 필드 (예: 기울기, 압력) 처리의 일부 버그 수정맞춤 브러시 API 관련 문서 개선
새
BrushPaint.ColorFunction유형 추가
버전 1.1.0-alpha03
2026년 5월 19일
androidx.ink:ink-*:1.1.0-alpha03이 출시되었습니다. 버전 1.1.0-alpha03에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
버전 1.1.0-alpha02
2026년 4월 22일
androidx.ink:ink-*:1.1.0-alpha02이 출시되었습니다. 버전 1.1.0-alpha02에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
버그 수정
- 특정 기기에서
InProgressStrokesView.maskPath사용 시 깜박임 문제 수정 (I1c7bc, b/496920044)
버전 1.1.0-alpha01
2026년 3월 11일
androidx.ink:ink-*:1.1.0-alpha01이 출시되었습니다. 버전 1.1.0-alpha01에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
- 다양한 작은 버그 수정
API 변경사항
InProgressShape.isCanceled추가, 작성 모듈의 동시 실행 문제 수정 (Ibfd32, b/474385518, b/470695777)CanvasStrokeRenderer.create및InProgressStroke.updateShape의 인수가 없는 버전을 Java에 노출 (Id80a1, b/457715938)
버그 수정
- API 29~32의 창에서 분리/재연결 후
InProgressStrokesView에서 비정상 종료를 일으키는 버그 수정, Vec 작업이 동일한MutableVec을 입력 및 출력으로 사용하도록 허용, Proguard 구성을 하나의 파일로 병합 (Ia4da0) - 그래픽 코어의 종속 항목을 1.0.4 (Ibfa18)로 늘림
버전 1.0
버전 1.0.0
2025년 12월 17일
androidx.ink:ink-*:1.0.0이 출시되었습니다. 버전 1.0.0에는 이러한 커밋이 포함되어 있습니다.
버그 수정
graphics-core에 대한 종속 항목을 1.0.4로 늘림 (Ibfa18)
버전 1.0.0-rc01
2025년 12월 3일
androidx.ink:ink-*:1.0.0-rc01이 출시되었습니다. 버전 1.0.0-rc01에는 이 커밋이 포함되어 있습니다.
버그 수정
- 종속 항목 버전을 업데이트합니다. (Iecd04)
버전 1.0.0-beta02
2025년 11월 19일
androidx.ink:ink-*:1.0.0-beta02이 출시되었습니다. 버전 1.0.0-beta02에는 이러한 커밋이 포함되어 있습니다.
API 변경사항
- 실험용 맞춤 지연 시간 감소 셰이프 API, 다양한 버그 수정 (Ib8d2f)
버그 수정
StrokeInputBatch직렬화에서 부동 소수점 정밀도 개선, 반복되는 인코딩 및 디코딩으로 인한 값의 드리프트 수정- 더 강력한 시스템 입력 정리
InProgressStrokes컴포저블에서 브러시 텍스처 지원 수정
버전 1.0.0-beta01
2025년 10월 22일
androidx.ink:ink-*:1.0.0-beta01이 출시되었습니다. 버전 1.0.0-beta01에는 이 커밋이 포함되어 있습니다.
버그 수정
- beta01 출시 준비를 위한 버그 수정 (I9900e)
- 모델링된 입력이 너무 가까이 있어 획에 렌더링 아티팩트가 발생하는 문제 감소
- 입력 모델링에서 드물게 발생하는 비정상 종료 문제 수정
버전 1.0.0-alpha07
2025년 10월 8일
androidx.ink:ink-*:1.0.0-alpha07이 출시되었습니다. 버전 1.0.0-alpha07에는 이러한 커밋이 포함되어 있습니다.
새로운 기능
InProgressStrokesViewrendererFactory를 대체하는StockBrusheshighlighter및emojiHighlighter의SelfOverlap매개변수- 기기 측정 노이즈를 제거하지만 이전 획 입력 스무딩 구현보다 사용자 입력을 더 정확하게 반영하는 획 입력 스무딩 구현 개선
- 각도 단위 (도 vs. 라디안), 변환 (기울이기 vs. 전단) 등 다른 Android/Jetpack API와의 일관성 개선
API 변경사항
- 각도 관련 API가 도를 사용하고 이름에 단위를 포함하도록 변경하고, 각도 변환 유틸리티에서 단위를 명확히 하고, 도와 라디안을 모두 지원하고,
StockBrushesAPI가 스톡 브러시 버전을 팩토리 함수 매개변수로 사용하도록 변경하고, 형광펜 브러시의 자체 오버랩 동작 제어를 노출하고,MutableAffineTransform.populateFromTranslate을populateFromTranslation로 이름을 바꾸고,InProgressStrokesView.setRenderFactory/getRenderFactory를 삭제합니다. (Id9eab, b/436656418) - 전단이 기울기로 이름이 변경되고, 일부 문서가 명확해지고,
CanvasStrokeRenderer.strokeModifiedRegionOutsetPx가 삭제되고,InProgressStroke.changesWithTime가 추가되었습니다. (Ia5e70, b/436656418)
버그 수정
- 입력 모델링을 개선하여 획이 입력을 더 정확하게 반영하도록 합니다. (I93097)
버전 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 변경사항
- 다양한 버그 수정 (I05dd8)
외부 기여
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를 사용하여 앱의 사용자 인터페이스의 일부로 완성된 잉크 스트로크를 그립니다. - 스트로크: 잉크 기능에 사용되는 핵심 데이터 유형입니다.
- 브러시: 사용자 입력에 따라 획이 표시되고 작동하는 방식을 구성할 수 있는 사양입니다.
- 기하 도형: 선택 및 지우개와 같은 도구를 지원하는 교차 및 범위와 같은 기하 도형 작업