Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   текст в bitmap программно (http://www.flasher.ru/forum/showthread.php?t=90155)

Agro 03.01.2007 13:55

текст в bitmap программно
 
Можно ли текст, введенный пользователем через input text area, конвертировать в изображение bitmap программно и работать с ним как с картинкой?

Nirth 03.01.2007 14:00

Мы продолжаем упорно игнорировать существование документации и гугла =)? ну ну, наверное без само внушения тут не обходится.

BitmapData.draw();

etc 03.01.2007 14:00

BitmapData.draw

Agro 03.01.2007 14:10

Прошу прощения, надо было сначала самому попробывать, даже не думал, что так просто... Спасибо.

Получается что-то типа BitmapData.draw(textarea_name.text) ?

Nirth 03.01.2007 14:27

Нет без text

Agro 03.01.2007 14:36

Спасибо.

etc 03.01.2007 14:38

Нужно сначала создать экземпляр BitmapData с размерами, как у текстового поля, затем уже делать draw. draw — метод не статический.

Agro 03.01.2007 16:02

Это то я знаю, но всеравно, спасибо.

etc 03.01.2007 16:07

Это я на всякий случай, мало ли, захочешь прям так и заюзать BitmapData.draw, как написано :)

Agro 03.01.2007 19:28

Блин. Опять переместили.

Интересно, какие вопросы не для начинающих?

iNils 03.01.2007 19:34

Цитата:

Сообщение от Agro
Блин. Опять переместили.

Интересно, какие вопросы не для начинающих?

Те вопросы, на которые нельзя найти ответ в хелпе, faq и после изучение результатов поиска по форуму (оптимально и гуглу).
У вас же можно, судя по "конвертировать в изображение bitmap", сразу же открыть хелп по BitmapData, если не знаете про метод draw, то хотя бы прочесть обо всех методах и выйти на метод draw. А там для первого же аргумента source указанн тип Object, соответственно и TextField сюда подходит.

Nirth 04.01.2007 06:58

Вы вечный нуб товарищЪ смеритесь=)

Idalgo 08.05.2007 18:08

При преобразовании текста в битмап получить прозрачный фон никак нельзя?

Aziz Zaynutdinoff 08.05.2007 18:22

как это нельзя? :) и вы туда же, сударь, а читать справку?
BitmapData надо создавать с прозрачностью.

Idalgo 08.05.2007 19:02

Создаю как положено с прозрачностью. Пытаюсь отрисовать текстовое поле - получаю белый фон после draw.

iNils 08.05.2007 19:13

У нас все гадалки забанены.

BigDan 08.05.2007 19:16

BitmapData.draw(.....,blendMode,....);

Idalgo 08.05.2007 19:56

Код:

function createText(x,y, width:Number, height:Number, _txt:String):MovieClip {
    var depth:Number = this.getNextHighestDepth();
    var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
        mc._x = x;
        mc._y = y;

        txt = mc.createTextField('txt', mc.getNextHighestDepth(),0,0,width,height);
        txt.text = _txt;
        txt.type = "dynamic";
        txt.autoSize = false;
        txt.border = false;
        txt.background = false;
        txt.embedFonts = true;
        txt.wordWrap = true;
        txt.multiline = true;
        txt.selectable = false;
        myTextFormat = new TextFormat();
        myTextFormat.font = "MSS";
        myTextFormat.size = 22;
        txt.setTextFormat(myTextFormat);
        bmp = new BitmapData(txt._width, txt._height, true);
       
        mc.attachBitmap(bmp, mc.getNextHighestDepth(), 'auto', true);
       
        var matr:Matrix = new Matrix();
        var myColorTransform:ColorTransform = new ColorTransform(0, 0, 0, 1, 0, 0, 0, 0);
        var blendMode:String = "normal";
        var myRectangle:Rectangle = new Rectangle(0, 0, txt._width, txt._height);
        var smooth:Boolean = true;

        bmp.draw(txt);
        bmp.draw(txt, matr, myColorTransform, blendMode, myRectangle, smooth);

        txt.removeTextField();       
       
    return mc;
}

Получаю битмап с текстом на белом фоне.
Интересует с чисто теоретической стороны - где я не указал прозрачность

iNils 08.05.2007 20:01

Код:

bmp = new BitmapData(txt._width, txt._height, true, 0x00);

Idalgo 08.05.2007 20:08

Т.е. просто transparent указывать недостаточно? Бум знать. Спасибо.

iNils 08.05.2007 20:11

http://help.inils.ru/flash8/content.php?id=1944
В самом внизу примечание.

Aziz Zaynutdinoff 08.05.2007 20:12

Илья, выстави кодировку на страницах :) у меня каракули

iNils 08.05.2007 20:14

Код:

<html>
<head>
<title>BitmapData, конструктор</title>
<meta http-equiv="Content-Type" content="text/html; charset=win-1251">


Idalgo 08.05.2007 20:43

Ну тогда уже заодно спрошу:
Как с помощью beginBitmapFill залить мувик полупрозрачной текстурой?

etc 08.05.2007 21:58

Создать полупрозрачный битмап и залить.

Idalgo 09.05.2007 14:57

Цитата:

Сообщение от __etc
Создать полупрозрачный битмап и залить.

Есть мувик, непрозрачный. Из него надо сделать битмап с заданной прозрачностью. Дальше залить требуемое.
Вопрос: как?

etc 09.05.2007 15:04

Что подразумевается под «заданной прозрачностью» — конкретные области битмапа или целиком полупрозрачный? И что есть «непрозрачный мувик»? Прямоугольник?

Idalgo 09.05.2007 15:15

Цитата:

Сообщение от __etc
Что подразумевается под «заданной прозрачностью» — конкретные области битмапа или целиком полупрозрачный? И что есть «непрозрачный мувик»? Прямоугольник?

Да, прямоугольник. Текстура. Нужно задать прозрачность битмапа целиком.

etc 09.05.2007 15:18

Изучить метод draw у BitmapData и параметр colorTransform в частности.

screamge 09.05.2007 15:28

кстати, как текст загнанный в битмапу зависит от браузера?:)

Idalgo 09.05.2007 15:33

За colorTransform спасибо.
А у уже созданной и отрисованной битмапы прозрачность изменить можно?

etc 09.05.2007 15:40

screamge, не понял вопроса.

Idalgo, использовать метод colorTransform().

screamge 09.05.2007 15:44

перефразирую, как вы считаете один и тот же текст в битмапе в разных браузерах будет отображаться одинакого?:)
Я понимаю что несу бред, но просто интересно ваше мнение.

etc 09.05.2007 15:46

Если шрифт не есть embed, то текст будет по-разному отображаться на той же Mac OS и винде.

screamge 09.05.2007 15:50

я не про разные платформы говорю, я говорю про браузеры работающие на одной ОС, ведь если текст не ебмед он и там и там должен отображаться одинакого корректно/некорректно.

iNils 09.05.2007 15:55

Кто знает в чем отличие плагинов для разных браузеров.

etc 09.05.2007 15:56

Текст на одной платформе будет отображатья одинаково.

screamge 09.05.2007 16:01

так дело не в отображении текста, а в BitmapData в разных браузерах (:)) но с одной и тойже версией флеш плейера.

тогда что скажете на это?
http://www.screamge.com/artten/

в FF - текст чёрный
в IE - прозрачный

etc 09.05.2007 16:06

У меня и там и там прозрачный.

screamge 09.05.2007 16:09

облом! тогда как это всё объяснить?:rtfm:
Я теряюсь в догадках

з.ы. какая версия IE?


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

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