{"repo":"romainguy/combo-breaker","free":true,"listed":false,"github":"https://github.com/romainguy/combo-breaker","clone":"git clone https://github.com/romainguy/combo-breaker.git","description":"Text layout for Compose to flow text around arbitrary shapes.","language":"Kotlin","stars":636,"topics":["android","jetpack-compose","kotlin-android","text","text-layout"],"license":"Apache-2.0","category":"mobile-apps","readme_excerpt":"Combo Breaker Composable widget for Jetpack Compose that allows to flow text around arbitrary shapes over multiple columns. The TextFlow composable behaves as a Box layout and will automatically flow the text content around its children. Features Design Systems Examples Maven Roadmap License Attribution Features - Multi-column layout - Styled strings ( AnnotatedString ) - Default rectangular shapes - Arbitrary shapes (any Path ) - Justification - Hyphenation - Compatible with API 29+ Design Systems Combo Breaker provides two levels of APIs depending on what design system you use: - BasicTextFlow from the dev.romainguy:combo-breaker artifact, which works with any design system - TextFlow from the dev.romainguy:combo-breaker-material3 artifact, which works with Material3 Choose BasicTextFlow if you do not have or do not want a dependency on androidx.compose.material3:material3 . Examples The following code defines two images to flow text around: Any child of TextFlow allows text to flow around a rectangular shape of the same dimensions of the child. The flowShape modifier is used to control where text flows around the shape (to the right/end of the T) and around both the left and right sides of the landscape photo (default behavior). In addition, you can define a margin around the shape. The flowShape modifier also lets you specify a specific shape instead of a default rectangle. This can be done by passing a Path or a lambda that returns a Path . The lambda alternative is usef","default_branch":null,"files":null,"tree":[],"storefront":"/r/romainguy","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/romainguy/combo-breaker/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}