Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Преобразование цвета (http://www.flasher.ru/forum/showthread.php?t=214445)

Andrei0077 04.08.2017 18:13

Преобразование цвета
 
Добрый вечер, коллеги. Подскажите, как преобразовать название цвета в виде строки вида "red" в формат hex вида 0xFFCC00?

Tails 04.08.2017 18:17

Выделение канала цвета: http://www.flasher.ru/forum/showthread.php?t=87080.

Цитата:

в виде строки вида "red"
Не понял, вот так 0xFF0000?

Andrei0077 04.08.2017 18:52

Хочу пояснить. Я беру название цвета их XML, в котором он записан текстом.

Код:

<?xml version="1.0" encoding="utf-8" ?>
<shapes>
 <shape type="circle" size="50" color="red" x="0" y="0" />
 <shape type="square" size="70" color="blue" x="200" y="250"/>
 <shape type="triangle" size="10" color="green" x="50" y="250"/>
</shapes>


ZackMercury 04.08.2017 18:57

вот так:
Код AS3:

switch(colorName)
{
    case "red": colorHex = 0xFFCC00; break;
    case "blue": colorHex = 0x2222FF; break;
    ...
}

Либо написать ещё один XML с цветами, что было бы логичней.

FlashRus 04.08.2017 19:30

Код AS3:

var colors:Object = {
        red: 0xFF0000,
        green: 0x00FF00,
        blue: 0x0000FF,
        mycolor: 0x123456
}
 
function processColor(value:String):uint {
        return colors[value];
}
 
trace(processColor("red")); //16711680
trace(processColor("another")); //0


Цитата:

Либо написать ещё один XML с цветами, что было бы логичней.
Код AS3:

var xmlColors:XML = 
<a>
        <red>0xFF0000</red>
        <green>0x00FF00</green>
        <blue>0x00FF00</blue>
        <mycolor>0x00FF00</mycolor>
</a>
 
function processColor(value:String):uint {
        return xmlColors[value];
}
 
trace(processColor("red")); //16711680
trace(processColor("another")); //0


ALeXVoz 04.08.2017 22:04

Можете весь список заготовить на всякий случай
http://vvz.nw.ru/Lessons/HTML_Colors/HTMLcolors_HSB.htm


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

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