text-vertical

  
--
Actualización más reciente Versión estable Versión potencial Versión beta Versión alfa
21 de octubre de 2026 - - 1.0.0-beta03 -

Cómo declarar dependencias

Para agregar una dependencia en Text, debes agregar el repositorio de Maven de Google a tu proyecto. Consulta el repositorio de Maven de Google para obtener más información.

Agrega las dependencias de los artefactos que necesites en el archivo build.gradle de tu app o módulo:

Groovy

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

Kotlin

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

Para obtener más información sobre las dependencias, consulta Cómo agregar dependencias de compilación.

Comentarios

Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes de esta biblioteca antes de crear uno nuevo. Puedes agregar tu voto a un error existente haciendo clic en el botón de la estrella.

Crear un error nuevo

Consulta la documentación sobre la herramienta Issue Tracker para obtener más información.

Versión 1.0

Versión 1.0.0-beta03

21 de octubre de 2026

Lanzamiento de androidx.text:text-vertical:1.0.0-beta03 y androidx.text:text-vertical-compose:1.0.0-beta03. La versión 1.0.0-beta03 incluye estas confirmaciones.

Nota: Se espera que esta sea la última versión beta.

Nuevas funciones

  • Se agregó una pestaña "Subtitle Cue" a VerticalTextSampleActivity para demostrar las capacidades de VerticalText, incluida la renderización con altura ajustada, toVerticalTextStyle(), RubySpan, EmphasisSpan, Tate-chu-yoko, FontShearSpan, UnderlineSpan y StrikethroughSpan. I4799d1 b/571750156

Correcciones de errores

  • Se corrigió la altura de línea horizontal de RubySpan y EmphasisSpan cuando se usan fuentes con padding superior e inferior grande, como Noto Sans JP. (Ib0507, b/557316470) - ¡Gracias por el informe, Numero-san!
  • Se actualizaron las dependencias de Compose a 1.12.1. (I9ee7f, b/569780191)
  • VerticalText ahora aplica estilos de intervalo AnnotatedString y conserva los intervalos y las anotaciones AnnotatedString en la semántica. (Ib077f, b/502088091)
  • Se corrigió un error por el que RubySpan y EmphasisSpan no completaban el color de fondo de TextPaint.bgColor o BackgroundColorSpan en el diseño horizontal. (I66ba8, b/561269843)
  • Se corrigieron los colores de fondo en el texto vertical que se dibujaban como contornos después de un conjunto de intervalos Paint.Style.STROKE. (I692ed, b/566429122)
  • Los intervalos de CharacterStyle que abarcan un rango completo de RubySpan en VerticalTextLayout ahora también se aplican al texto ruby, y RubySpan.textScale escala los tamaños de fuente que establecen. Los colores de fondo ahora también llenan el espacio vacío por encima y por debajo del texto de ruby y el texto base más cortos. (I0dadc, b/564268825)
  • Se corrigió la altura del fondo de VerticalTextLayout cuando el texto vertical tiene varias ejecuciones de estilo. (I7e31a, b/565211671)
  • Se corrigió el problema por el que VerticalText conservaba un color de fondo obsoleto cuando VerticalTextStyle.background cambiaba a Color.Unspecified. (Ia0861, b/565211671)
  • Se corrigieron los diseños de énfasis y ruby horizontales que omitían los campos TextPaint cuando se copiaba la pintura del emisor. (Ia3043, b/561269843)
  • VerticalText ahora dibuja el color de fondo de VerticalTextStyle.background detrás del texto String sin formato y detrás de las anotaciones ruby String sin formato en RubySpan. (If0493, b/564268825)
  • Se corrigió el diseño horizontal de ruby que dejaba el dibujo de trabajo compartido escalado después de la inicialización. (I33760, b/561269843)
  • Se corrigió la app de ejemplo de texto vertical para que un gesto de desplazamiento lateral no pueda mover el texto fuera de la vista. (If0108, b/563461635)
  • Se corrigió la app de prueba para demostrar la posición de la marca de énfasis (I3ffa3, b/559972132).
  • Se agregaron pruebas de rama de ejecución simbólica de Kex para LineLayout, TextUtils, CanvasCompat y PaintCompat. I47edf b/569212211

Versión 1.0.0-beta02

23 de septiembre de 2026

Lanzamiento de androidx.text:text-vertical:1.0.0-beta02 y androidx.text:text-vertical-compose:1.0.0-beta02. La versión 1.0.0-beta02 incluye estas confirmaciones.

Cambios importantes

  • Agregamos casos de prueba para garantizar la retrocompatibilidad hasta el nivel de API 24 (Android 7.0), y los resultados fueron muy positivos.
  • Las bibliotecas ahora se orientan a Kotlin 2.2 y requieren kotlinc 2.2 (I82396, b/498369605)
  • Las bibliotecas de texto vertical ahora se compilan con el SDK 37. Las apps que las usen deben compilarse con el SDK 37 y usar AGP 9.1.0 o una versión posterior. (I0f757, b/562182206)

Correcciones de errores

  • EmphasisSpan.position ahora mueve la marca de énfasis. AnnotationPosition.Before coloca la marca sobre el texto horizontal y a la derecha del texto vertical. AnnotationPosition.After lo coloca en el lado opuesto. (Ic9bfd, b/559972132)
  • Se corrigió la escala de la marca de énfasis en el diseño de texto horizontal. La altura de línea reservada ya no asume una marca sin escalar. (I6d7fe, b/562254557)
  • Se corrigió la retrocompatibilidad de los avances de texto vertical. La retrocompatibilidad ignoraba el desplazamiento solicitado en los niveles de API inferiores a 34. (I8877a, b/495457561)
  • Se corrigió el texto ruby horizontal que reservaba demasiado espacio vertical en los niveles de API inferiores al 28, lo que podía dejar una línea más alta de lo necesario. (Iceb60, b/561323466)
  • Las pruebas de ruby vertical y orientación del texto ahora se ejecutan en todos los niveles de API admitidos. (If07d4, b/495457561)
  • Se actualizó la dependencia androidx.lifecycle:lifecycle-runtime a la versión 2.10.0. Esta versión es necesaria para que las verificaciones de lint del entorno de ejecución del ciclo de vida empaquetado se ejecuten con la versión 9.5.0-alpha04 o posterior del AGP. (I7264b, b/556807521)
  • Se corrigió el problema por el que se ignoraba RubySpan.position en el diseño de texto horizontal. AnnotationPosition.After ahora renderiza correctamente el texto ruby debajo del texto base. (Iaffa1, b/559972124, b/561323466)
  • Se corrigió un problema por el que se ignoraba RubySpan.position en el diseño de texto vertical. AnnotationPosition.After ahora renderiza correctamente el texto ruby en el lado izquierdo del texto base. (I0be1c, b/495457561)
  • Se actualizaron las dependencias de Compose a la versión 1.11.4 (I9ef07, b/536925341).

Versión 1.0.0-beta01

26 de agosto de 2026

Lanzamiento de androidx.text:text-vertical:1.0.0-beta01 y androidx.text:text-vertical-compose:1.0.0-beta01. La versión 1.0.0-beta01 contiene estas confirmaciones.

Cambios en la API

  • Se cambió VerticalTextScope de una interfaz a una clase concreta. (I44e71, b/549288808)

Correcciones de errores

  • Se actualizó la documentación de combineUpright. (Ib534b, b/548992014)
  • Se quitó la documentación incorrecta del requisito mínimo de la API 36 de VerticalText. (I4f8e9, b/549288799)
  • Se usó la proporción de ascenso calculada para el desplazamiento vertical de la línea de base en el modo de portabilidad a versiones anteriores (07339d7, b/502088091).

Versión 1.0.0-alpha06

29 de julio de 2026

Lanzamiento de androidx.text:text-vertical:1.0.0-alpha06 y androidx.text:text-vertical-compose:1.0.0-alpha06. La versión 1.0.0-alpha06 contiene estas confirmaciones.

Cambios importantes

  • Esta versión marca la última versión alfa planificada de la biblioteca.
  • Finalizaste y definiste mejor los parámetros en el elemento componible VerticalText.

Cambios en la API

  • Se introdujo VerticalTextStyle para el diseño de texto vertical. (I647a8, b/512424512)
  • Se introdujo un nuevo DSL público (VerticalTextScope y buildVerticalText) en la biblioteca text-vertical-compose (I6faa7, b/502088091).
  • Se introdujo el elemento componible VerticalText (I96509, b/502088091).

Correcciones de errores

  • Se aclaró la documentación sobre el comportamiento de resguardo de VerticalTextLayout en niveles de API anteriores. (Ia7ccc, b/449184326)

Versión 1.0.0-alpha05

22 de abril de 2026

Lanzamiento de androidx.text:text-vertical:1.0.0-alpha05 y androidx.text:text-vertical-compose:1.0.0-alpha05. La versión 1.0.0-alpha05 incluye estas confirmaciones.

Nuevas funciones

  • Se agregaron funciones de componibilidad para admitir el diseño de texto vertical, en consonancia con la iniciativa de Google de priorizar Compose.

Cambios en la API

  • Se introdujo el artefacto de la biblioteca :text:text-vertical-compose. (I939e4)
  • Se agregó la propiedad lineCount a la clase VerticalTextLayout. (I93884, b/502088091)

Correcciones de errores

  • Se actualizó la documentación de KDoc para mayor claridad y precisión. (I71c8f, b/449184326)

Versión 1.0.0-alpha04

8 de abril de 2026

Lanzamiento de androidx.text:text-vertical:1.0.0-alpha04. La versión 1.0.0-alpha04 contiene estas confirmaciones.

Nuevas funciones

  • Se refactorizaron todas las clases públicas para proporcionar APIs de Kotlin idiomáticas y más convenientes para el uso general, a la vez que se mantiene una sólida interoperabilidad con Java.

Cambios en la API

  • Se agregó un constructor predeterminado de cero argumentos a FontShearSpan para la compatibilidad con Java (I73065, b/493692287).
  • Se quitó la implementación de Parcelable en RubySpan y EmphasisSpan (I49884, b/493693386).
  • Se refactorizó EmphasisSpan para mejorar la compatibilidad (I34c40, b/493693310).
  • Se refactorizó AnnotationPosition para mejorar la plataforma de la API (I10dce, b/493693386).
  • Se convirtió TextOrientation en una clase de enumeración, se refactorizó AnnotationPosition en una clase sellada y se quitó RubySpan.Builder (Ib4a77, b/493693386).
  • Se agregó la enumeración AnnotationPosition y se refactorizó la clase RubySpan (Ibfcff, b/493692426).
  • Se refactorizó TextOrientation para uso general y se mejoraron las extensiones internas de escalamiento de texto (I82152, b/493692428).

Versión 1.0.0-alpha03

25 de marzo de 2026

Lanzamiento de androidx.text:text-vertical:1.0.0-alpha03. La versión 1.0.0-alpha03 contiene estas confirmaciones.

Nuevas funciones

  • VerticalTextLayout ahora admite el diseño horizontal para mostrar intervalos especiales en japonés, como Ruby y Emphasis (Boten).

Cambios en la API

Versión 1.0.0-alpha02

8 de octubre de 2025

Lanzamiento de androidx.text:text-vertical:1.0.0-alpha02. La versión 1.0.0-alpha02 incluye estas confirmaciones.

Nuevas funciones

  • Se agregó el método VerticalTextLayout#isVerticalTextLayoutSupported() para verificar la capacidad del texto vertical (Ie2802, b/442608654).

Cambios en la API

  • Se introdujo un resguardo elegante en la API < 36 (I8a67a, b/442608654).
  • Se cambió la versión de minSDK a la 23 para usarla en otras bibliotecas de AndroidX (I2d6b5, b/442608654).

Versión 1.0.0-alpha01

27 de agosto de 2025

Lanzamiento de androidx.text:text-vertical:1.0.0-alpha01. La versión 1.0.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Se agregó una nueva biblioteca de texto vertical para admitir el diseño de texto vertical, principalmente para japonés, con la nueva marca VERTICAL_TEXT_FLAG que se agregó en Android 16.
  • Se agregó VerticalTextLayout, que mostraba texto vertical con saltos de línea adecuados, orientación mixta (p.ej., caracteres latinos horizontales dentro de una línea vertical) y texto ruby. (8b3a10)
  • Se agregó FontShearSpan para el estilo similar a la cursiva en el texto vertical. (1ffd78).
  • Se agregó EmphasisRun para las marcas de énfasis. (fe12d9)