![]() |
Ручное позиционирование и маштабирование
еще один вопросик возник.
задам его сюда чтобы не плодить ветки. при создании флешки в ее свойствах задается ширина, высота. допустим я вывел текст 16 шрифтом. а теперь допустим я гружу эту же флешку, но указываю ей уже совершенно другие размеры. соответственно меняются и шрифты, а хотелось бы чтобы шрифты были такого же размера (это корректно так как контент флешки генериться динамически). как такого можно добиться? |
ммм вообще легкого пути я не вижу, ибо в твоем случае все будет либо маштабироваться пропорционально, либо не будет маштабироваться вовсе.
Есть выход, но он требует определенной сноровки, и тщательного разбиения сайта на состовляющие. примерный способ. у тебя есть на сайте 3 элемента: меню, шапка и текстовой блок. Сначала мы пишем Код:
Stage.scaleMode = "noScale";Через свойства класса Stage мы можем узнать размеры флэшки, после чего расчитываем пропорции, после чего мы увеличиваем размеры двух эллементов(_width,_height) а текстовый блок оставляем таким же, либо "перерисовываем". Так же можешь посмотреть класс Elastic(Тебе нужно будет скачать весь пакет классов и там найдешь, класс и примеры) Евгения Потапенко, или класс Table Игоря Агеева. |
еще вопрос
Вот возник еще вопросик. Суть: узнать реальный размер шлешки в IE после установки Stage.scaleMode = "noScale" (то есть именно те размеры, которые указаны в html'е).
Простой пример: создаем пустую флешку 200x300, пишем скрипт: _root.createTextField("sz1", 1, 0, 0, 100, 100); sz1.text = Stage.width + " x " + Stage.height; Stage.align = "TL"; Stage.scaleMode = "noScale"; _root.createTextField("sz2", 2, 0, 50, 100, 100); sz2.text = Stage.width + " x " + Stage.height; Встраиваем на html-страничку: <html> <body> <OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" WIDTH="150" HEIGHT="350" id="myMovieName"> <PARAM NAME=movie VALUE="test.swf"> <PARAM NAME=quality VALUE=high> <PARAM NAME=bgcolor VALUE=#FFFFFF> <EMBED src="test.swf" quality=high bgcolor=#FFFFFF WIDTH="150" HEIGHT="350" NAME="myMovieName" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"> </EMBED> </OBJECT> </body> </html> В итоге в Опере и Фаерфоксе все выводится как и должно быть (200 x 300 и 150 x 350), а в IE выводится 200 x 300 и 0 x 0 :eek: |
Оказывается известная проблема :)
Нашел workaround здесь. |
спасибо за ответ=)
|
| Часовой пояс GMT +4, время: 23:20. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.