Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   TextFlow ограничение lineHeight (http://www.flasher.ru/forum/showthread.php?t=184851)

E-mail 28.09.2012 13:27

TextFlow ограничение lineHeight
 
Мне кажется или ввиду ограничения lineHeight (от -720 до 720) TextFlow не способен отображать картинки высотой более ~720 пикселей в высоту без наезда на рядом стоящие строки?

Поискав в интернете, я в основном нахожу такие примеры. У человека происходит пересечение, ему рекомендуют увеличить lineHeight, он это делает, и всё у него в порядке становится, и все живут долго и счастливо.

Ограничение на высоту картинки в TextFlow 32000 пикселей, что предполагает, что всё должно быть нормально с высокими картинками. Может просто я чего-то недопонимаю, поэтому надеюсь на вашу помощь. Заранее спасибо.

PS.
Вообще это применительно не только к картинкам, но и большим шрифтам, превышающим по высоте те же ~720 пикселей.

Потестить можно а таком приложении:
Код:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                          xmlns:s="library://ns.adobe.com/flex/spark"
                          xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="500" minHeight="600"
                          creationComplete="creationCompleteHandler(event)">
        <s:layout>
                <s:HorizontalLayout paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10"/>
        </s:layout>
        <s:VGroup >
                <s:HGroup verticalAlign="middle">
                        <s:Label text="Line height" maxDisplayedLines="1"/>
                        <s:NumericStepper id="lineHeight" value="120" change="{updateLineHeight()}" maximum="9999"/>
                        <s:CheckBox label="%" id="lineHeghtPercent" selected="true" change="{updateLineHeight()}"/>
                </s:HGroup>
                <s:HGroup verticalAlign="middle">
                        <s:Label text="Image height" maxDisplayedLines="1"/>
                        <s:NumericStepper id="imageHeight" value="100" change="{updateImageHeight()}" maximum="9999"/>
                </s:HGroup>
        </s:VGroup>
        <s:TextArea width="100%" height="100%">
                <s:textFlow>
                        <s:TextFlow>
                                <s:p>
                                        <s:span>First line</s:span>
                                </s:p>
                                <s:p>
                                        <s:img id="image" width="100"/>
                                </s:p>
                                <s:p>
                                        <s:span>Last line</s:span>
                                </s:p>
                        </s:TextFlow>
                </s:textFlow>
        </s:TextArea>
        <fx:Script>
                <![CDATA[
                        import mx.events.FlexEvent;
                       
                        private function updateLineHeight():void
                        {
                                try
                                {
                                        image.lineHeight = lineHeight.value.toString(10).concat(lineHeghtPercent.selected ? "%" : "");
                                }
                                catch (error:Error)
                                {
                                }
                        }
                       
                        private function updateImageHeight():void
                        {
                                image.height = imageHeight.value;
                        }
                       
                        private function creationCompleteHandler(event:FlexEvent):void
                        {
                                var img:Shape = new Shape();
                                img.graphics.beginFill(0x0000ff);
                                img.graphics.drawRect(0,0,100,100);
                                img.graphics.endFill();
                                image.source = img;
                        }
                       
                ]]>
        </fx:Script>
</s:Application>



Часовой пояс GMT +4, время: 12:16.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.