PDA

Просмотр полной версии : загрузка txt, форматирование текста?


loki999
11.11.2007, 06:16
такое дело:
я создаю textField, в который должен будет грузиться текст из .txt файла.
подскажите, как мне можно сделать форматирование текста, типа как в html, чтобы исспользовать, например, для заголовка <B></B>, а для ссылок свой цвет отдельный и т.д. всё должно быть супер просто, т.к. данный текст будет периодически вводить тупая секретарша, которая ничего ни в интернете ни тем более в html не соображает. надо сделать максимум просто и шаблонисто, что бы ей удобно было текст вбивать.
подскажите пожалуста, может есть другие способы, с CSS или как-нибудь ещё, а то .txt я выбрал, как наилегчайший - записал текст и отправил на хостинг. нужна такая схема, что бы без кодов и скриптов, ну или как минимум, что бы, повторюсь, секретарша не запуталась.
заранее, огромное спасибо.

Mr. Fixit
11.11.2007, 06:26
ну создай панель редактирования текста, как на флексе. что сразу показывает результат.
типа как:

txt.html = true;
txt.htmlText = '<i>Hello Underworld</i>';

ну или кидай тпод таблицу стилей..
или научи секретаршу.

loki999
12.11.2007, 16:46
вообщем, ситуация примерно такая:
я делаю сайт для ресторана. есть раздел МЕНЮ, там кнопка ВИННАЯ КАРТА, по нажатию которой создаётся TextField, а в него загружается сначала таблица стилей (style.css), а затеми сам текстовый файл (menu.html).
скажите пожалуста, что мне нужно дописать в таблице стилей, что бы меню всегда выглядело как по шаблону, тоесть я пишу <h1>ЗАГОЛОВОК</h1>, который по центру моего текстового поля во flash, а затем мне нужна сделующая штука: название вина должно быть всегда справа (в правой части текстового поля), а цена этого вина должна быть на одной сним строке, но всегда слева. я пытался просто ставить пробелы в текстовом файле, но при изменении названия на более длинное или короткое, цена либо перелетает на другую строку, либо находится не совсем слева (не хватает пробелов), короче лажа.
всё делается в текстовом блокноте, чтобы секретарша могла сама печатать текст.
подскажите, что надо написать в .css, что бы такое работало?
спасибо.

style.css
h1 {
font-family: Arial, Helvetica, sans-serif;
font-size: 16px;
font-weight: bold;
color: #FFFFFF;
margin: 0px;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
text-align:center;
text-decoration: underline;
}

h2 {
font-family: Arial, Helvetica, sans-serif;
font-size: 16px;
font-weight: bold;
color: #FFFFFF;
margin: 0px;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
text-decoration: underline;
}

text {
font-family: Arial, Helvetica, sans-serif;
font-size: 16px;
font-weight: bold;
color: #FFFFFF;
margin: 0px;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
text-decoration: underline;
text-align:right;
}

p {
font-family: Arial, Helvetica, sans-serif;
font-size: 14px;
font-weight: normal;
font-variant: normal;
color: #FFFFFF;
margin: 0px;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 4px;
padding-left: 0px;
}

a {
text-decoration: underline;
}

a:hover {
color: #990000;
}

menu.html
text=<h1>Салаты</h1><h2>Фреско</h2><text>200гр | 160</text><p>Микс-салат, помидоры, огурцы, редис, с соусом от шеф повара</p>

а во flash`е я пишу следущее:
_root.clip.createTextField("menu_text",1,230,226,413,230);

var my_style:TextField.StyleSheet = new TextField.StyleSheet();
my_style.load("text_style.css");
menu_text.styleSheet = my_style;

menu_text.border = false;
menu_text.background = false;
menu_text.multiline = true;
menu_text.wordWrap = true;
menu_text.selectable = true;
menu_text.html = true;

menu_text_loader = new LoadVars();
menu_text_loader.onLoad = function(ok) {
if (ok) {
slider.btn.button.enabled = true;
menu_text.htmlText = this.text;
removeMovieClip(loader_mc);
} else {
slider.btn.button.enabled = false;
menu_text.text = "ошибка! информация не загрузилась.";
}
};

menu_text_loader.load("txt/menu.html");
cont_menu_btn.enabled = false;
cont_wine_btn.enabled = true;
cont_desert_btn.enabled = true;
cont_menu_btn.gotoAndStop("over");

this.createEmptyMovieClip("loader_mc",100);
loader_mc.onEnterFrame = function() {
var gbl = menu_text_loader.getBytesLoaded();
var gbt = menu_text_loader.getBytesTotal();
if (gbt != undefined) {
menu_text.text = int(gbl/gbt*100)+"%";
}
};

iNils
12.11.2007, 17:00
loki999, в следующий раз, когда вы подумаете, а что то это все в одном сообщении пишут, так же скучно, и напишите 2, 3, ... сообщений подряд, вы станете счастливым обладателем замечания в виде плюса.

loki999
13.11.2007, 11:36
хорошо. более простой вопрос: как во флеше отобразить html документ с css, что бы сохранились все таблицы и прочее.

iNils
13.11.2007, 11:50
Флеш не поддерживает таблицы. Поддержка css и и тегов html также ограничена.

aksios
13.11.2007, 13:12
loki999, так как вы не читали хелп, очень странно видить сей код. Если бы вы читали хелп, вы бы знали, что там с поддержкой тегов и вам нужен отформатированный текстовой файл с тегами и таблицами css а не html.
Далее, вопрос: а юзабельна ли постановка вопроса? Почему не открыть ваше меню как обычный html документ без заморочек с флешем...
Для тупой секретарши я бы посоветовал сделать что то типа:
http://www.flashloaded.com/flashcomponents/flashtexteditor/
или http://flashtexteditor.com/ но таблицы - отдельная тема.

loki999
13.11.2007, 16:22
надо, что бы был флешь и текст внутри флеша, без намёка на html и css, но текст динамический и удобно-легко изменяемый.

спасибо за ссылки.

iNils
13.11.2007, 19:13
слова
я извиняюсь, так вышло. не целенаправлено.оказались пустым звуком.