حبر
| آخر الأخبار | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار الأوّلي |
|---|---|---|---|---|
| 9 سبتمبر 2026 | 1.0.0 | - | - | 1.1.0-alpha08 |
تحديد الاعتماديات
لإضافة اعتمادية على Ink، يجب تضمين مستودع Google Maven في مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.
أضِف الاعتماديات الخاصة بالعناصر التي تحتاج إليها في ملف build.gradle لتطبيقك أو وحدتك:
أنيق
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. يُرجى إعلامنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية من خلال النقر على زر النجمة.
يُرجى الاطّلاع على مستندات Issue Tracker للحصول على مزيد من المعلومات.
Ink Version 1.1
الإصدار 1.1.0-alpha08
9 سبتمبر 2026
تم طرح androidx.ink:ink-*:1.1.0-alpha08. يتضمّن الإصدار 1.1.0-alpha08 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- إضافة إمكانية العرض على KMP iOS من خلال
MetalRenderer، ضمن التعليق التوضيحيExperimentalInkCrossPlatformRenderingApiالذي يتطلّب الموافقة، استنادًا إلى واجهات برمجة التطبيقات الشائعة في KMP للوظائف الأساسية - تمّت إعادة تسمية
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) - استخدِم النوع
Vecعند تحديدEasingFunction.CubicBezierبدلاً منFloats (I69432) - إضافة تعليق توضيحي
WorkerThreadإلى وظائف الممحاة لتعديل الشبكةStroke.subtractوStroke.split(I69432)
إصلاح الأخطاء
- جعل
Brushالعيّنات متوافقة مع KMP (I77125)
الإصدار 1.1.0-alpha07
12 أغسطس 2026
تم طرح androidx.ink:ink-*:1.1.0-alpha07. يتضمّن الإصدار 1.1.0-alpha07 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- إصلاح مشكلة انخفاض الأداء التي تؤثر في فُرش الجزيئات الكثيفة، وتعديل ثوابت Brush.Version استنادًا إلى ملاحظات واجهة برمجة التطبيقات (I87f0f)
الإصدار 1.1.0-alpha06
29 يوليو 2026
تم طرح androidx.ink:ink-*:1.1.0-alpha06. يتضمّن الإصدار 1.1.0-alpha06 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة طرق
calculateMinimumRequiredVersionإلى واجهة برمجة التطبيقات للأنواع الفرعيةBrushFamily. (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
15 يوليو 2026
تم طرح androidx.ink:ink-*:1.1.0-alpha05. يتضمّن الإصدار 1.1.0-alpha05 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- إصدار تجريبي لنوع جديد من الممحاة، يُعرف باسم "المحو الجزئي" أو "تعديل الشبكة" أو ممحاة "البكسل"، والذي يعدّل شكل الخطوط ويقسمها بدلاً من حذف الخطوط بأكملها أو إخفائها بلون الخلفية. تشمل المشاكل المعروفة عدم توفّر ميزة تنعيم الحواف على الحواف المقطوعة، وعدم توفّر واجهات برمجة تطبيقات نشر على نحو متسلسِل لحفظ نتائج
PartitionedMeshالممحاة، وسيتم توفير كلتا الميزتين في الإصدارات المستقبلية. - أضِف تعليق Throws التوضيحي الناقص إلى
StrokeInputBatchSerialization.decode، ما يتطلّب تحديثًا من مستخدمي Java لهذه الطريقة. (I83473، b/522256938)
إصلاح الأخطاء
- إصلاح عُطل أصلي ناتج عن مشكلة في الدقة العددية (I2e1f0 و6618e69 وb/523190724)
- تجاهل الأشكال الهندسية المتدهورة في
BrushTipExtruder(469b629) - حلّ المشكلة
RejectedExecutionExceptionفيInProgressStrokesView(b/526696762)
الإصدار 1.1.0-alpha04
17 يونيو 2026
تم طرح androidx.ink:ink-*:1.1.0-alpha04. يتضمّن الإصدار 1.1.0-alpha04 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
إصلاح مشاكل دقة الأرقام العشرية التي تؤدي إلى ظهور تشوّهات مرئية في اللمسات النهائية، ما يؤثر في أجهزة معيّنة بعد ترقية نظام التشغيل
إضافة واجهة برمجة تطبيقات KMP-common لوحدة التخزين (الانتقال من/إلى
ByteArrayبدلاً من JavaInputStream/OutputStream)أضِف سمة
BrushBehavior.developerCommentلتضمين البيانات الوصفية التي تشرح تصميم مجموعة فرش مخصّصة. وهي مخصّصة لدعم واجهة مستخدم "مصمّم الفرشاة".إصلاح خطأ في عمليات التحقّق من اتساق سلاسل المحادثات في
CanvasInProgressStrokesRenderHelperV33إصلاح بعض الأخطاء في التعامل مع الحقول الاختيارية
MotionEvent(مثل الميل والضغط).تحسين مستندات واجهة برمجة التطبيقات الخاصة بالفرشاة المخصّصة
أضِف أنواع
BrushPaint.ColorFunctionجديدة.
الإصدار 1.1.0-alpha03
19 مايو 2026
تم طرح androidx.ink:ink-*:1.1.0-alpha03. يتضمّن الإصدار 1.1.0-alpha03 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- إتاحة واجهة برمجة التطبيقات لتخصيص أداة "فرشاة الحبر" آليًا للجميع (I8e2e1)
- تقسيم
BrushPaint.TextureLayerإلى فئات فرعية أكثر تحديدًا (I8848a)
الإصدار 1.1.0-alpha02
22 أبريل 2026
تم طرح androidx.ink:ink-*:1.1.0-alpha02. يتضمّن الإصدار 1.1.0-alpha02 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- توفير تحميل زائد لـ
BrushFamily.decodeيحدّد الحد الأقصى للتوافق مع الإصدار (I1c7bc) - إخراج واجهة برمجة التطبيقات الخاصة بالتسلسل
BrushFamilyمن المرحلة التجريبية (Idd16e)
إصلاح الأخطاء
- إصلاح مشكلة الوميض عند استخدام
InProgressStrokesView.maskPathعلى أجهزة معيّنة (I1c7bc، b/496920044)
الإصدار 1.1.0-alpha01
11 مارس 2026
تم طرح androidx.ink:ink-*:1.1.0-alpha01. يتضمّن الإصدار 1.1.0-alpha01 هذه التعديلات.
الميزات الجديدة
- إصلاحات متنوّعة لأخطاء بسيطة
تغييرات واجهة برمجة التطبيقات
- إضافة
InProgressShape.isCanceled، وإصلاح مشاكل التزامن في وحدة التأليف (Ibfd32، b/474385518، b/470695777) - عرض إصدار بدون وسيطات من
CanvasStrokeRenderer.createوInProgressStroke.updateShapeفي Java (Id80a1، b/457715938)
إصلاح الأخطاء
- إصلاح خطأ يؤدي إلى حدوث أعطال في
InProgressStrokesViewبعد فصل/إعادة ربط النافذة في الإصدارات من 29 إلى 32 من واجهة برمجة التطبيقات، والسماح لعمليات Vec باستخدامMutableVecنفسه كمدخل ومخرج، ودمج إعدادات Proguard في ملف واحد (Ia4da0) - زيادة الاعتماد على graphics-core إلى الإصدار 1.0.4 (Ibfa18)
الإصدار 1.0
الإصدار 1.0.0
17 ديسمبر 2025
تم طرح androidx.ink:ink-*:1.0.0. يتضمّن الإصدار 1.0.0 هذه التعديلات.
إصلاح الأخطاء
- زيادة الاعتماد على
graphics-coreإلى الإصدار 1.0.4 (Ibfa18)
الإصدار 1.0.0-rc01
3 ديسمبر 2025
تم طرح androidx.ink:ink-*:1.0.0-rc01. يتضمّن الإصدار 1.0.0-rc01 هذه التعديلات.
إصلاح الأخطاء
- تعديل إصدار التبعية (Iecd04)
الإصدار 1.0.0-beta02
19 نوفمبر 2025
تم طرح androidx.ink:ink-*:1.0.0-beta02. يتضمّن الإصدار 1.0.0-beta02 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- واجهات برمجة تطبيقات تجريبية مخصّصة للأشكال ذات زمن الاستجابة المنخفض، وإصلاحات متنوعة للأخطاء (Ib8d2f)
إصلاح الأخطاء
- تحسين دقة النقطة العائمة في
StrokeInputBatchالتسلسل، وإصلاح الانحراف في القيم الناتج عن التشفير وفك التشفير المتكرّرين - تنقيح أكثر فعالية لمدخلات النظام
- إصلاح إمكانية استخدام زخرفة الفرشاة في العنصر القابل للإنشاء
InProgressStrokes
الإصدار 1.0.0-beta01
22 أكتوبر 2025
تم طرح androidx.ink:ink-*:1.0.0-beta01. يتضمّن الإصدار 1.0.0-beta01 هذه التعديلات.
إصلاح الأخطاء
- إصلاح الأخطاء استعدادًا لإصدار beta01 (I9900e)
- تقليل التشويش في العينات بسبب كثرة المدخلات التي تم تصميمها بالقرب من بعضها البعض
- تم إصلاح عُطل نادر في نمذجة الإدخال.
الإصدار 1.0.0-alpha07
8 أكتوبر 2025
تم طرح androidx.ink:ink-*:1.0.0-alpha07. يتضمّن الإصدار 1.0.0-alpha07 هذه التعديلات.
الميزات الجديدة
- المَعلمة
SelfOverlapلكل منStockBrushesوhighlighterوemojiHighlighter، والتي تحلّ محلّInProgressStrokesViewrendererFactory - تحسين تنفيذ ميزة "تنعيم إدخال الضغطات"، ما يؤدي إلى إزالة التشويش الناتج عن قياس الجهاز، ولكنّه يعكس بدقة أكبر بيانات أدخلها المستخدم مقارنةً بالتنفيذ السابق لميزة "تنعيم إدخال الضغطات"
- تحسين التوافق مع واجهات برمجة تطبيقات Android/Jetpack الأخرى لوحدات الزوايا (الدرجات مقابل الراديان) وعمليات التحويل (الانحراف مقابل القص) وغير ذلك
تغييرات واجهة برمجة التطبيقات
- تغيير واجهة برمجة التطبيقات ذات الصلة بالزوايا لاستخدام الدرجات وتضمين الوحدة في الأسماء، وتوضيح الوحدات في أدوات تحويل الزوايا وإتاحة استخدام الدرجات والتقدير الدائري، وتغيير واجهة برمجة التطبيقات
StockBrushesلتأخذ إصدار الفرشاة الجاهزة كمَعلمة دالة المصنع وعرض عنصر التحكّم في سلوك التداخل الذاتي لفرشاة التمييز، وإعادة تسميةMutableAffineTransform.populateFromTranslateإلىpopulateFromTranslation، وإزالةInProgressStrokesView.setRenderFactory/getRenderFactory(Id9eab، b/436656418) - إعادة تسمية القص إلى التشويه، وتوضيح بعض المستندات، وإزالة
CanvasStrokeRenderer.strokeModifiedRegionOutsetPx، وإضافةInProgressStroke.changesWithTime(Ia5e70، b/436656418)
إصلاح الأخطاء
- تحسين وضع نماذج الإدخال لجعل ضربات المفاتيح تعكس الإدخال بدقة أكبر (I93097)
الإصدار 1.0.0-alpha06
13 أغسطس 2025
تم طرح androidx.ink:ink-*:1.0.0-alpha06. يتضمّن الإصدار 1.0.0-alpha06 هذه التعديلات.
الميزات الجديدة
- فرشاة تمييز الإيموجي الجاهزة: يمكنك تمييز أجزاء من المستند باستخدام أي إيموجي تختاره، لإضافة لمسة مرحة والمساعدة في الحفاظ على التنظيم.
- المزيد من واجهات برمجة التطبيقات المساعدة للأشكال الأساسية في وحدة الأشكال الهندسية
- تحسين توافق الجهاز وأدائه
تغييرات واجهة برمجة التطبيقات
- واجهة برمجة تطبيقات مبسطة لـ
InProgressStrokesView، وواجهات برمجة تطبيقات لإنهاء الأشكال الهندسية، وأداة تمييز الرموز التعبيرية، وإزالة دوال المصنع منMutableParallelogramلصالح طرق التعبئة، وإتاحة استخدام قيمة أولية لسلوكيات الفرشاة العشوائية (I38280)
إصلاح الأخطاء
- تم إصلاح مشكلة في الأداء ومشكلة في اتساق الألوان الرطبة والجافة. (Ifcd1d)
الإصدار 1.0.0-alpha05
18 يونيو 2025
تم طرح androidx.ink:ink-*:1.0.0-alpha05. يتضمّن الإصدار 1.0.0-alpha05 هذه التعديلات.
الميزات الجديدة
- إنشاء وحدات إمكانية التشغيل التفاعلي لوحدات التأليف والفرشاة والأشكال الهندسية
تغييرات واجهة برمجة التطبيقات
- وحدات وواجهات برمجة تطبيقات جديدة للتوافق مع Compose، وتنظيف واجهة برمجة التطبيقات (I0e464)
- تمت إزالة طرق
InProgressStroke.enqueueInputs/updateShapeالتي تعرضkotlin.Result، ويجب أن تستخدم البرامجenqueueInputsOrThrowأوenqueueInputsOrIgnoreمثلاً بدلاً من ذلك. تم تغيير اسمInProgressStroke.getNeedsUpdateإلىisUpdateNeeded. تعرض الدالةInProgressStroke.populateOutlinePositionالآن مَعلمة الإخراج للسماح بتسلسل استدعاء الدوال، بما يتوافق مع الطرق الأخرى في Ink. تم نقل واجهةTextureBitmapStoreمن وحدة العرض إلى وحدة الفرشاة. تم تصميمBoxAccumulator.populateFromلتلقّي Box غير قابل للتعديل وقابل للقيم الفارغة بدلاً منBoxAccumulatorالقابل للتعديل، ولتوضيح ما يتم تعديله، على المتصلين تغييرboxAccumulator.add(other)إلىboxAccumulator.add(other.box). تمت إزالةBrushUtil.toBuilderWithAndroidColor/createBuilderWithAndroidColor، لذا يُرجى استخدامsetAndroidColorمنBrush.Builderبعد الإنشاء بدلاً من ذلك. (Ia7155) - أصبحت السمة التجريبية
InProgressStrokesView.textureBitmapStoreالسابقة خاصة الآن. لا تزال هناك أدوات وصول عامة لهذه السمة. (I1d706)
إصلاح الأخطاء
- تحسين الأداء للفرش المخصّصة التي تحتوي على العديد من الجسيمات
الإصدار 1.0.0-alpha04
9 أبريل 2025
تم طرح androidx.ink:ink-*:1.0.0-alpha04. يتضمّن الإصدار 1.0.0-alpha04 هذه التعديلات.
الميزات الجديدة
- تتضمّن واجهات برمجة تطبيقات تجريبية جديدة لعناصر
BrushFamilyمخصّصة، ما يتيح استخدام فُرش جديدة، مثل "قلم الرصاص" و"مؤشر الليزر". تتيح واجهة برمجة التطبيقات تحميل الفرش المحدّدة بواسطة هذا البروتوكول. (I8809a)
الإصدار 1.0.0-alpha03
12 فبراير 2025
تم طرح androidx.ink:ink-*:1.0.0-alpha03. يتضمّن الإصدار 1.0.0-alpha03 هذه التعديلات.
الميزات الجديدة
- توفير مساحة على القرص والشبكة: تسلسل
StrokeInputBatch، ما يؤدي إلى توفير العديد من أسطر الرمز البرمجي، مع كون العناصر الناتجة جزءًا صغيرًا من حجم الضربات المخزّنة عادةً. (Ie898d) - تحديد باستخدام أداة التحديد الحر: فرشاة خط متقطّع لرسم خط التحديد، ودالة لتحويل خط التحديد إلى
PartitionedMeshمن أجل طلبات البحث عن الأشكال الهندسية (Ia38a0)
الإصدار 1.0.0-alpha02
11 ديسمبر 2024
تم طرح androidx.ink:ink-*:1.0.0-alpha02. يتضمّن الإصدار 1.0.0-alpha02 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- إصلاحات أخطاء متنوّعة (I05dd8)
المساهمة الخارجية
- إيقاف
BuildCompat.isAtLeastVبدلاً من ذلك، على المتصلين التحقّق من SDK_INT مقابل 35 مباشرةً. (I294d1)
الإصدار 1.0.0-alpha01
2 أكتوبر 2024
تم طرح androidx.ink:ink-*:1.0.0-alpha01. يتضمّن الإصدار 1.0.0-alpha01 هذه التعديلات.
الميزات الجديدة
- مكتبة معيارية وقابلة للضبط لتسهيل إنشاء ضربات حبر جميلة وعرضها ومعالجتها في تطبيقك
تغييرات واجهة برمجة التطبيقات
وحدات جديدة لمساعدة المطوّرين في إنشاء تجارب كتابة غنية:
- التأليف: استخدِم
InProgressStrokesViewلعرض ضربات الفرشاة في الوقت الفعلي بأداء عالٍ ووقت استجابة منخفض عند تلقّي المدخلات. - العرض: استخدِم
CanvasStrokeRendererوViewStrokeRendererلرسم ضربات الحبر المكتملة كجزء من واجهة مستخدم التطبيق. - الضربات: أنواع البيانات الأساسية المستخدَمة في ميزات الكتابة بالحبر
- الفرشاة: مواصفات قابلة للضبط حول شكل ضربات الفرشاة وطريقة عملها استجابةً لبيانات المستخدم.
- الأشكال الهندسية: عمليات هندسية مثل التقاطع والتغطية لتشغيل أدوات مثل التحديد والمحو