text-vertical

  
TODO
อัปเดตล่าสุด รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า รุ่นอัลฟ่า
21 ตุลาคม 2569 - - 1.0.0-beta03 -

การประกาศทรัพยากร Dependency

หากต้องการเพิ่มทรัพยากร Dependency ใน Text คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google

เพิ่มทรัพยากร Dependency สำหรับอาร์ติแฟกต์ที่ต้องการในไฟล์ build.gradle สำหรับแอปหรือโมดูล ดังนี้

ดึงดูด

dependencies {
    implementation "androidx.text:text-vertical:1.0.0-beta03"
}

Kotlin

dependencies {
    implementation("androidx.text:text-vertical:1.0.0-beta03")
}

ดูข้อมูลเพิ่มเติมเกี่ยวกับการขึ้นต่อกันได้ที่เพิ่มการขึ้นต่อกันของบิลด์

ความคิดเห็น

ความคิดเห็นของคุณช่วยเราปรับปรุง Jetpack ให้ดียิ่งขึ้น โปรดแจ้งให้เราทราบหากคุณพบปัญหาใหม่หรือมีแนวคิดในการปรับปรุงไลบรารีนี้ โปรดดูปัญหาที่มีอยู่ในคลังนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่ได้โดยคลิกปุ่มดาว

สร้างปัญหาใหม่

ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของ Issue Tracker

ข้อความ - แนวตั้ง

รุ่น 1.0

เวอร์ชัน 1.0.0-beta03

21 ตุลาคม 2569

androidx.text:text-vertical:1.0.0-beta03 และ androidx.text:text-vertical-compose:1.0.0-beta03 เผยแพร่แล้ว เวอร์ชัน 1.0.0-beta03 มี คอมมิตเหล่านี้

หมายเหตุ: เราตั้งใจให้รุ่นนี้เป็นรุ่นเบต้าสุดท้าย

ฟีเจอร์ใหม่

  • เพิ่มแท็บ "คิวคำบรรยาย" ลงใน VerticalTextSampleActivity เพื่อสาธิตความสามารถของ VerticalText ซึ่งรวมถึงการแสดงผลด้วยความสูงที่ตัดขึ้นบรรทัดใหม่, toVerticalTextStyle(), RubySpan, EmphasisSpan, Tate-chu-yoko, FontShearSpan, UnderlineSpan และ StrikethroughSpan I4799d1 b/571750156

แก้ไขข้อบกพร่อง

  • แก้ไขความสูงของบรรทัด RubySpan และ EmphasisSpan แนวนอนเมื่อใช้แบบอักษรที่มีระยะห่างจากขอบด้านบนและด้านล่างขนาดใหญ่ เช่น Noto Sans JP (Ib0507, b/557316470) - ขอบคุณสำหรับรายงาน Numero-san
  • อัปเดตทรัพยากร Dependency ของ Compose เป็น 1.12.1 แล้ว (I9ee7f, b/569780191)
  • ตอนนี้ VerticalText จะใช้สไตล์ AnnotatedString span และคง AnnotatedString span และคำอธิบายประกอบไว้ในความหมาย (Ib077f, b/502088091)
  • แก้ไขปัญหาที่ RubySpan และ EmphasisSpan ไม่เติมสีพื้นหลังของ TextPaint.bgColor หรือ BackgroundColorSpan ในเลย์เอาต์แนวนอน (I66ba8, b/561269843)
  • แก้ไขสีพื้นหลังในข้อความแนวตั้งที่วาดเป็นเส้นขอบหลังจากตั้งค่าช่วง Paint.Style.STROKE (I692ed, b/566429122)
  • ตอนนี้ CharacterStyle spans ที่ครอบคลุมช่วง RubySpan ทั้งหมดใน VerticalTextLayout จะมีผลกับข้อความ Ruby ด้วย และ RubySpan.textScale จะปรับขนาดแบบอักษรที่ตั้งค่าไว้ ตอนนี้สีพื้นหลังจะเติมพื้นที่ว่างด้านบนและด้านล่างของข้อความ Ruby และข้อความฐานที่สั้นกว่าด้วย (I0dadc, b/564268825)
  • แก้ไขความสูงของพื้นหลัง VerticalTextLayout เมื่อข้อความแนวตั้งมีการเรียกใช้หลายสไตล์ (I7e31a, b/565211671)
  • แก้ไขปัญหาที่ VerticalText ยังคงใช้สีพื้นหลังเดิมเมื่อ VerticalTextStyle.background เปลี่ยนเป็น Color.Unspecified (Ia0861, b/565211671)
  • แก้ไขเลย์เอาต์ Ruby แนวนอนและเลย์เอาต์เน้นข้อความที่ข้ามช่อง TextPaint เมื่อคัดลอกการวาดของผู้เรียก (Ia3043, b/561269843)
  • ตอนนี้ VerticalText จะดึงสีพื้นหลังจาก VerticalTextStyle.background ที่อยู่ด้านหลังข้อความ String ธรรมดาและด้านหลังคำอธิบายประกอบ Ruby String ธรรมดาใน RubySpan (If0493, b/564268825)
  • แก้ไขเลย์เอาต์ Ruby แนวนอนที่ทำให้ Paint การทำงานที่แชร์ปรับขนาดหลังจากเริ่มต้น (I33760, b/561269843)
  • แก้ไขแอปตัวอย่างข้อความแนวตั้งเพื่อให้ท่าทางสัมผัสการเลื่อนไม่สามารถย้ายข้อความออกจากมุมมองได้ (If0108, b/563461635)
  • แก้ไขแอปทดสอบเพื่อสาธิตตำแหน่งเครื่องหมายเน้น (I3ffa3, b/559972132)
  • เพิ่มการทดสอบสาขาการดำเนินการเชิงสัญลักษณ์ Kex สำหรับ LineLayout, TextUtils, CanvasCompat และ PaintCompat แล้ว I47edf b/569212211

เวอร์ชัน 1.0.0-beta02

23 กันยายน 2569

androidx.text:text-vertical:1.0.0-beta02 และ androidx.text:text-vertical-compose:1.0.0-beta02 เผยแพร่แล้ว เวอร์ชัน 1.0.0-beta02 มีคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สำคัญ

  • เราได้เพิ่มกรอบการทดสอบเพื่อให้มั่นใจว่ามีความเข้ากันได้แบบย้อนหลังจนถึง API 24 (Android 7.0) และผลลัพธ์ที่ได้ก็เป็นที่น่าพอใจอย่างมาก
  • ตอนนี้ไลบรารีกำหนดเป้าหมายเป็น Kotlin 2.2 และต้องใช้ kotlinc 2.2 (I82396, b/498369605)
  • ตอนนี้ไลบรารีข้อความแนวตั้งจะคอมไพล์กับ SDK 37 แอปที่ใช้ API เหล่านี้ต้องคอมไพล์กับ SDK 37 และใช้ AGP 9.1.0 ขึ้นไป (I0f757, b/562182206)

แก้ไขข้อบกพร่อง

  • ตอนนี้ EmphasisSpan.position จะย้ายเครื่องหมายเน้นเสียง AnnotationPosition.Before จะวางเครื่องหมายไว้เหนือข้อความแนวนอนและทางด้านขวาของข้อความแนวตั้ง AnnotationPosition.After จะวางไว้ที่ฝั่งตรงข้าม (Ic9bfd, b/559972132)
  • แก้ไขขนาดเครื่องหมายเน้นในเลย์เอาต์ข้อความแนวนอน ความสูงของบรรทัดที่สงวนไว้จะไม่ถือว่ามีเครื่องหมายที่ไม่ได้ปรับขนาดอีกต่อไป (I6d7fe, b/562254557)
  • แก้ไข Backport สำหรับการเลื่อนข้อความแนวตั้ง แบ็กพอร์ตละเว้นออฟเซ็ตที่ขอในระดับ API ที่ต่ำกว่า 34 (I8877a, b/495457561)
  • แก้ไขข้อความ Ruby แนวนอนที่จองพื้นที่แนวตั้งมากเกินไปในระดับ API ต่ำกว่า 28 ซึ่งอาจทำให้บรรทัดสูงเกินความจำเป็น (Iceb60, b/561323466)
  • ตอนนี้การทดสอบ Ruby แนวตั้งและการวางแนวข้อความจะทำงานในระดับ API ทั้งหมดที่รองรับ (If07d4, b/495457561)
  • อัปเดตทรัพยากร Dependency androidx.lifecycle:lifecycle-runtime เป็น 2.10.0 แล้ว ต้องใช้เวอร์ชันนี้เพื่อให้การตรวจสอบ Lint ของรันไทม์วงจรที่รวมมาทำงานร่วมกับ AGP เวอร์ชัน 9.5.0-alpha04 ขึ้นไปได้ (I7264b, b/556807521)
  • แก้ไขปัญหาที่ระบบไม่สนใจ RubySpan.position ในเลย์เอาต์ข้อความแนวนอน ตอนนี้ AnnotationPosition.After จะแสดงผลข้อความ Ruby ใต้ข้อความฐานอย่างถูกต้อง (Iaffa1, b/559972124, b/561323466)
  • แก้ไขปัญหาที่ระบบไม่สนใจ RubySpan.position ในเลย์เอาต์ข้อความแนวตั้ง ตอนนี้ AnnotationPosition.After แสดงผลข้อความ Ruby ทางด้านซ้ายของข้อความฐานได้อย่างถูกต้องแล้ว (I0be1c, b/495457561)
  • อัปเกรดทรัพยากร Dependency ของ Compose เป็น 1.11.4 (I9ef07, b/536925341)

เวอร์ชัน 1.0.0-beta01

26 สิงหาคม 2026

androidx.text:text-vertical:1.0.0-beta01 และ androidx.text:text-vertical-compose:1.0.0-beta01 เผยแพร่แล้ว เวอร์ชัน 1.0.0-beta01 มีคอมมิตเหล่านี้

การเปลี่ยนแปลง API

  • เปลี่ยน VerticalTextScope จากอินเทอร์เฟซเป็นคลาสที่เป็นรูปธรรม (I44e71, b/549288808)

แก้ไขข้อบกพร่อง

  • อัปเดตเอกสารสำหรับ combineUpright แล้ว (Ib534b, b/548992014)
  • นำเอกสารประกอบเกี่ยวกับข้อกำหนดขั้นต่ำของ API 36 ที่ไม่ถูกต้องออกจาก VerticalText (I4f8e9, b/549288799)
  • ใช้อัตราส่วนการขึ้นที่คำนวณแล้วสำหรับการชดเชยเส้นฐานแนวตั้งในโหมด Backport (07339d7, b/502088091)

เวอร์ชัน 1.0.0-alpha06

29 กรกฎาคม 2569

androidx.text:text-vertical:1.0.0-alpha06 และ androidx.text:text-vertical-compose:1.0.0-alpha06 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สำคัญ

  • รุ่นนี้เป็นเวอร์ชันอัลฟาสุดท้ายที่วางแผนไว้ของไลบรารี
  • สรุปและปรับแต่งพารามิเตอร์ใน Composable VerticalText

การเปลี่ยนแปลง API

  • เปิดตัว VerticalTextStyle สำหรับเลย์เอาต์ข้อความแนวตั้ง (I647a8, b/512424512)
  • เปิดตัว DSL สาธารณะใหม่ (VerticalTextScope และ buildVerticalText) ในไลบรารี text-vertical-compose (I6faa7, b/502088091)
  • เปิดตัว Composable VerticalText (I96509, b/502088091)

แก้ไขข้อบกพร่อง

  • ชี้แจงเอกสารประกอบเกี่ยวกับลักษณะการทำงานของ VerticalTextLayout สำรองในระดับ API เก่า (Ia7ccc, b/449184326)

ไม่มีบันทึกประจำรุ่นสำหรับอาร์ติแฟกต์นี้

Text Vertical เวอร์ชัน 1.0

เวอร์ชัน 1.0.0-alpha05

22 เมษายน 2026

androidx.text:text-vertical:1.0.0-alpha05 และ androidx.text:text-vertical-compose:1.0.0-alpha05 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มฟังก์ชันที่ประกอบกันได้เพื่อรองรับเลย์เอาต์ข้อความแนวตั้ง ซึ่งสอดคล้องกับโครงการริเริ่ม Compose-first ของ Google

การเปลี่ยนแปลง API

  • เปิดตัวอาร์ติแฟกต์ไลบรารี :text:text-vertical-compose (I939e4)
  • เพิ่มพร็อพเพอร์ตี้ lineCount ลงในคลาส VerticalTextLayout แล้ว (I93884, b/502088091)

แก้ไขข้อบกพร่อง

  • อัปเดตเอกสารประกอบ KDoc เพื่อความชัดเจนและความถูกต้อง (I71c8f, b/449184326)

เวอร์ชัน 1.0.0-alpha04

8 เมษายน 2026

androidx.text:text-vertical:1.0.0-alpha04 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เปลี่ยนโครงสร้างภายในคลาสสาธารณะทั้งหมดเพื่อให้ Kotlin API ที่เป็นสำนวนและสะดวกยิ่งขึ้นสำหรับการใช้งานทั่วไป ขณะเดียวกันก็ยังคงความสามารถในการทำงานร่วมกันของ Java ที่มีประสิทธิภาพ

การเปลี่ยนแปลง API

  • เพิ่มคอนสตรัคเตอร์ที่ไม่มีอาร์กิวเมนต์เริ่มต้นลงใน FontShearSpan เพื่อให้เข้ากันได้กับ Java (I73065, b/493692287)
  • นำการติดตั้งใช้งาน Parcelable ใน RubySpan และ EmphasisSpan ออก (I49884, b/493693386)
  • เปลี่ยนโครงสร้างภายในโค้ด EmphasisSpan เพื่อให้เข้ากันได้ดียิ่งขึ้น (I34c40, b/493693310)
  • เปลี่ยนโครงสร้างภายในโค้ด AnnotationPosition เพื่อปรับปรุง API Surface (I10dce, b/493693386)
  • แปลง TextOrientation เป็นคลาส enum, เปลี่ยนโครงสร้างภายในโค้ด AnnotationPosition เป็นคลาสที่ปิดผนึก และนำ RubySpan.Builder ออก (Ib4a77, b/493693386)
  • เพิ่ม enum AnnotationPosition และเปลี่ยนโครงสร้างภายในคลาส RubySpan (Ibfcff, b/493692426)
  • เปลี่ยนโครงสร้างภายในโค้ด TextOrientation สำหรับการใช้งานทั่วไปและปรับปรุงส่วนขยายการปรับขนาดข้อความภายใน (I82152, b/493692428)

เวอร์ชัน 1.0.0-alpha03

25 มีนาคม 2026

androidx.text:text-vertical:1.0.0-alpha03 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ตอนนี้ VerticalTextLayout รองรับเลย์เอาต์แนวนอนเพื่อแสดงช่วงพิเศษในภาษาญี่ปุ่น เช่น Ruby และ Emphasis (Boten)

การเปลี่ยนแปลง API

  • ตอนนี้ RubySpan และ EmphasisSpan จะรับค่า ReplacementSpan เพื่อรองรับข้อความแนวนอน (I38db6, b/447239659, b/447224892)

เวอร์ชัน 1.0.0-alpha02

8 ตุลาคม 2025

androidx.text:text-vertical:1.0.0-alpha02 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มเมธอด VerticalTextLayout#isVerticalTextLayoutSupported() เพื่อตรวจสอบความสามารถของข้อความแนวตั้ง (Ie2802, b/442608654)

การเปลี่ยนแปลง API

  • เปิดตัวการทำงานสำรองที่ราบรื่นใน API < 36 (I8a67a, b/442608654)
  • ดาวน์เกรด minSDK เป็น 23 เพื่อใช้ในไลบรารี AndroidX อื่นๆ (I2d6b5, b/442608654)

เวอร์ชัน 1.0.0-alpha01

27 สิงหาคม 2025

androidx.text:text-vertical:1.0.0-alpha01 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ไลบรารีข้อความแนวตั้งใหม่เพื่อรองรับเลย์เอาต์ข้อความแนวตั้งสำหรับภาษาญี่ปุ่นเป็นหลัก โดยใช้ประโยชน์จากแฟล็ก VERTICAL_TEXT_FLAG ใหม่ที่เพิ่มเข้ามาใน Android 16
  • เพิ่ม VerticalTextLayout ที่แสดงข้อความแนวตั้งพร้อมการขึ้นบรรทัดใหม่ที่เหมาะสม การวางแนวแบบผสม (เช่น อักขระละตินแนวนอนภายในบรรทัดแนวตั้ง) และข้อความ Ruby (8b3a10)
  • เพิ่ม FontShearSpan สำหรับรูปแบบที่คล้ายตัวเอียงในข้อความแนวตั้ง (1ffd78)
  • เพิ่ม EmphasisRun สำหรับเครื่องหมายเน้นเสียง (fe12d9)