手繪功能

  
打造一流的觸控筆應用程式。降低開發人員門檻,輕鬆打造高效能的精美筆跡體驗。
最近更新時間 穩定版 候選版 Beta 版 Alpha 版
2025 年 10 月 8 日 - - - 1.0.0-alpha07

宣告依附元件

如要為 Ink 新增依附元件,必須將 Google Maven 存放區新增至專案。詳情請參閱 Google 的 Maven 存放區

在應用程式或模組的 build.gradle 檔案中,新增所需構件的依附元件:

Groovy

dependencies {
  
    implementation "androidx.ink:ink-authoring:1.0.0-alpha07"
    implementation "androidx.ink:ink-brush:1.0.0-alpha07"
    implementation "androidx.ink:ink-geometry:1.0.0-alpha07"
    implementation "androidx.ink:ink-nativeloader:1.0.0-alpha07"
    implementation "androidx.ink:ink-rendering:1.0.0-alpha07"
    implementation "androidx.ink:ink-strokes:1.0.0-alpha07"
    
}

Kotlin

dependencies {


    implementation("androidx.ink:ink-authoring:1.0.0-alpha07")
    implementation("androidx.ink:ink-brush:1.0.0-alpha07")
    implementation("androidx.ink:ink-geometry:1.0.0-alpha07")
    implementation("androidx.ink:ink-nativeloader:1.0.0-alpha07")
    implementation("androidx.ink:ink-rendering:1.0.0-alpha07")
    implementation("androidx.ink:ink-strokes:1.0.0-alpha07")
}

如要進一步瞭解依附元件,請參閱「新增建構依附元件」一文。

意見回饋

您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有的問題。

建立新問題

詳情請參閱 Issue Tracker 文件

這個構件沒有任何版本資訊。

1.0 版本

1.0.0-alpha07 版本

2025 年 10 月 8 日

發布 androidx.ink:ink-*:1.0.0-alpha07。1.0.0-alpha07 版包含這些修訂項目

新功能

  • StockBrushes highlighteremojiHighlighterSelfOverlap 參數,取代 InProgressStrokesView rendererFactory
  • 改良筆觸輸入平滑化功能,可消除裝置測量雜訊,並比先前的筆觸輸入平滑化功能更準確地反映使用者輸入內容
  • 角度單位 (度與弧度)、轉換 (傾斜與剪切) 等方面,與其他 Android/Jetpack API 更加一致

API 變更

  • 將角度相關 API 改為使用度數,並在名稱中加入單位;清楚說明角度轉換公用程式中的單位,並同時支援度數和弧度;將 StockBrushes API 改為將股票筆刷版本做為工廠函式參數,並公開螢光筆筆刷的自我重疊行為控制項;將 MutableAffineTransform.populateFromTranslate 重新命名為 populateFromTranslation;移除 InProgressStrokesView.setRenderFactory/getRenderFactory。(Id9eabb/436656418)
  • 將剪切重新命名為傾斜、釐清部分說明文件、移除 CanvasStrokeRenderer.strokeModifiedRegionOutsetPx、新增 InProgressStroke.changesWithTime (Ia5e70b/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 版包含這些修訂項目

新功能

  • 撰寫互通性模組,用於撰寫、筆刷和幾何模組

API 變更

  • 新的 Compose 互通性模組和 API、API 清理 (I0e464)
  • 已移除傳回 kotlin.ResultInProgressStroke.enqueueInputs/updateShape 方法,用戶端應改用 enqueueInputsOrThrowenqueueInputsOrIgnore 等方法。InProgressStroke.getNeedsUpdate 已重新命名為 isUpdateNeededInProgressStroke.populateOutlinePosition 現在會傳回輸出參數,以允許呼叫鏈結,與 Ink 中的其他方法一致。TextureBitmapStore 介面已從轉譯模組移至筆刷模組。BoxAccumulator.populateFrom 會採用不可變動的可為空值 Box,而非可變動的 BoxAccumulator,為了清楚瞭解變動內容,呼叫端應將 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 版包含這些修訂項目

新功能

  • 推出新的實驗性 API,可自訂 BrushFamily 物件,啟用鉛筆和雷射筆等新筆刷。API 可載入這個 proto 定義的筆刷。(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 即時轉譯筆觸,效能高且延遲時間短。
  • 算繪:使用 CanvasStrokeRendererViewStrokeRenderer 繪製完成的筆跡,做為應用程式使用者介面的一部分。
  • 筆劃:用於手寫筆功能的基礎資料類型。
  • 筆刷:可設定筆觸的外觀和行為,以回應使用者輸入內容。
  • 幾何:交集和涵蓋範圍等幾何運算,可支援選取和清除等工具。