<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
                                        
                                        
                                            
                                        
                                        
                                        Hi Nicolas,<div><br></div><div>I think it is related to the DefaultTabsArray in TextStyle, which does only specify [tab] positions up to 720 px. Thus, it is also related to the font (size) you are currently using. The mechanism in TextStyle >> #nextTabFrom:... has an upper bound and works on (unscaled) pixels. </div><div><br></div><div>We might want to ...</div><div>1) use RealEstateAgent class >> #scaleFactor as a workaround</div><div>2) Increase DefaultTabs beyond 720 px.</div><div><br></div><div><img src="cid:9bfeb558-e678-44ff-bbcf-a02fff5d8c24" width="auto" style="width: 565px; height: 232px;"></img></div><div><br></div><div>Best,</div><div>Marcel</div><div class="mb_sig"></div>
                                        
                                        <blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
                        <p style="color: #AAAAAA; margin-top: 10px;">Am 15.05.2019 21:36:53 schrieb Nicolas Cellier <nicolas.cellier.aka.nice@gmail.com>:</p><div style="font-family:Arial,Helvetica,sans-serif">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><div dir="ltr"><div>Hi,</div><div>the (attached) text composition bugs me:</div><div>When a tab occurs after some column, the composition creates a new line, even when there is room for more text...</div><div>I tried to create a test case in CharacterScannerTest</div><div><br></div><div>testCrossedXWithManyTabs<br> | p text chunkWidth expectedChunkStartX expectedWidth |<br>       text := (String new: 59 streamContents: [:str | (String new: 14 withAll: $m) do: [:m | 5 timesRepeat: [str nextPut: m]] separatedBy: [str tab]]) asText.<br>      chunkWidth := 5*mWidth.<br>       expectedChunkStartX := Array new: 14 streamContents:<br>          [:str |<br>               (1 to: 14) inject: 1 into:<br>                    [:destX :rank |<br>                       str nextPut: destX.<br>                   (style nextTabXFrom: destX + chunkWidth leftMargin: 0 rightMargin: 0)]].<br>      expectedWidth := expectedChunkStartX last + chunkWidth.<br>       p := NewParagraph new.<br>        p<br>             compose: text<br>         style: style<br>          from: 1<br>               in: (0 @ 0 corner: expectedWidth+10 @ (style lineGrid * 2)).<br>  self assert: p lines size = 1 description: 'There is enough composition width for this text'.</div><div><br></div><div>but the test pass (it composes in single line). Any idea where to look at?<br></div><div><br></div></div>
</div></blockquote></div>