Перейти к содержимому

Фотография

Конвертирование цвета из (rrr,ggg,bbb) в #RRGGBB


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 8

#1 ganzalik228

ganzalik228

    Активный участник

  • Members
  • PipPip
  • 79 сообщений
  • ФИО:Артур

Отправлено 22 мая 2012 - 10:29

вот таким вот способом получен цвет:
storeEval | window.document.defaultView.getComputedStyle(window.document.getElementsByTagName('input')[0]).getPropertyValue('background-color'); | result

цвет он получает в rgb(rrr,ggg,bbb), как получить цвет в #rrggbb, точнее конвертировать его
  • 0

#2 achumagin

achumagin

    Активный участник

  • Members
  • PipPip
  • 145 сообщений
  • ФИО:Alexey Chumagin
  • Город:Казань

Отправлено 22 мая 2012 - 11:40

не понятно для какого языка программирования нужно решение, поэтому только общие рекомендации:
поищите в поисковике по предложению (converting rgb to hex), и выберите наиболее подходящий для вас.
  • 0
ap-test-team.blogspot.com

#3 ganzalik228

ganzalik228

    Активный участник

  • Members
  • PipPip
  • 79 сообщений
  • ФИО:Артур

Отправлено 22 мая 2012 - 14:16

не понятно для какого языка программирования нужно решение, поэтому только общие рекомендации:
поищите в поисковике по предложению (converting rgb to hex), и выберите наиболее подходящий для вас.


javascript. Искал, сложновато-то разобраться, да ещё и всё на инглише. Ну попробую
  • 0

#4 achumagin

achumagin

    Активный участник

  • Members
  • PipPip
  • 145 сообщений
  • ФИО:Alexey Chumagin
  • Город:Казань

Отправлено 23 мая 2012 - 11:46

function colorToHex(color) {
if (color.substr(0, 1) === '#') {
return color;
}
var digits = /(.*?)rgb\((\d+), (\d+), (\d+)\)/.exec(color);

var red = parseInt(digits[2]);
var green = parseInt(digits[3]);
var blue = parseInt(digits[4]);

var rgb = blue | (green << 8) | (red << 16);
return digits[1] + '#' + rgb.toString(16);
};

подходит?
Источник http://haacked.com/a...rgb-to-hex.aspx
  • 0
ap-test-team.blogspot.com

#5 achumagin

achumagin

    Активный участник

  • Members
  • PipPip
  • 145 сообщений
  • ФИО:Alexey Chumagin
  • Город:Казань

Отправлено 23 мая 2012 - 11:47

вот еще http://stackoverflow...-and-hex-to-rgb
  • 0
ap-test-team.blogspot.com

#6 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 24 мая 2012 - 19:16

C большой вероятностью это будет исправлено в версии 2.22.

Я абсолютно точно знаю, что это будет исправлено в WebDriver (2.0), но скорее всего изменение будет работать и для 1.0 тоже.
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#7 ganzalik228

ganzalik228

    Активный участник

  • Members
  • PipPip
  • 79 сообщений
  • ФИО:Артур

Отправлено 25 мая 2012 - 11:59

да, то, методов много, я не могу понять, как их впихнуть в селениум в мой код(
  • 0

#8 psihozik

psihozik

    Новый участник

  • Members
  • Pip
  • 39 сообщений

Отправлено 25 мая 2012 - 13:18

вот еще http://stackoverflow...-and-hex-to-rgb

Вот этот метод можно впихнуть в IDE:
getEval | RGB2HTML = function (red, green, blue) { var decColor = red + 256 * green + 65536 * blue; return decColor.toString(16); }
storeEval | hex = RGB2HTML(red, green, blue) | hex
  • 1

#9 ganzalik228

ganzalik228

    Активный участник

  • Members
  • PipPip
  • 79 сообщений
  • ФИО:Артур

Отправлено 26 мая 2012 - 07:06


вот еще http://stackoverflow...-and-hex-to-rgb

Вот этот метод можно впихнуть в IDE:
getEval | RGB2HTML = function (red, green, blue) { var decColor = red + 256 * green + 65536 * blue; return decColor.toString(16); }
storeEval | hex = RGB2HTML(red, green, blue) | hex


спасибо. Я вот уже так сделал: storeEval |

color = window.document.defaultView.getComputedStyle(window.document.getElementsByTagName('input')[0]).getPropertyValue('background-color'); colorArr = color.replace(/[\\rrgb\\(\\)]/g, '').split(','); hexString = '#' + parseInt(colorArr[0]).toString(16) + parseInt(colorArr[1]).toString(16) + parseInt(colorArr[2]).toString(16); | rgbToHex
  • 0


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных