|
|
|
| Нужно вывести список всех RGB цветов от 000,000,000 до 255,255,255. Честно говоря, запарился.
Сделал вначале по типу:
, но понял, что постраничный вывод сложно так сделать.
Решил перейти на вариант с обычным числом:
$i = 0; $i <= 255255255; $i++
|
Но тут сложно вырезать числа вроде 255255260.
Вообщем, кто какие варианты полегче знает, может уже совершали такой код? | |
|
|
|
|
|
|
|
для: Udachix
(27.09.2013 в 16:10)
| | Каждая цветовая компонента хранится в двух байтах (для 24 битного цвета), и максимум это FFFFFF, что соответствует 16777215 цветам. Именно это значение и есть последним значением итерации цикла, а никак ни 255255255. | |
|
|
|
|
|
|
|
для: Udachix
(27.09.2013 в 16:10)
| | Посмотрите, если я правильно понял вопрос. Но если нет, то все равно идея видна. Так что пробуйте
<?php
$clr = Array('00','10','20','30','40','50','60','70','80','90','a0','b0','c0','d0', 'e0', 'ff'); // задать стартовые цвета
echo "<table border=0 cellpadding=10 cellspacing=1>";
for($i=0; $i<16; $i++)
{
for($j=0; $j<16; $j++)
{
echo "<tr>";
for($k=0; $k<16; $k++)
{
echo '<td bgcolor="#'.$clr[$i].$clr[$j].$clr[$k].'">';
echo '<tt><font color="#'.$clr[7-$i].$clr[7-$j].$clr[7-$k].'">';
echo $clr[$i].$clr[$j].$clr[$k]."</font></tt></td>";
}
echo "</tr>";
}
}
echo "</table><br>";
?>
|
| |
|
|
|
|
|
|
|
для: magic
(28.09.2013 в 00:10)
| | Это понятно. Нет, это слишком простой вариант и количество цветов ограничено. Мне нужен весь список. Именно поэтому он должен выводиться постранично. И не в HEX, а в RGB. Но спасибо за вариант — плюс в архив форума. | |
|
|
|
|
|
|
|
для: Udachix
(28.09.2013 в 01:02)
| | Вроде бы как я вам написал о вашей ошибке? Вы знаете сколько цветов может отобразить 24-цвет. Вы знаете конечное значение итерации цикла для получения всех цветов. Что нужно сделать, чтобы получить 8 битное значение каждой цветовой компоненты в цикле? Нужно сдвигать значение вправо и по маске забирать значение, а не собирать примеры. | |
|
|
|
|
|
|
|
для: confirm
(28.09.2013 в 03:18)
| | confirm как всегда недоброжелателен, суров и категоричен ))) | |
|
|
|
|
|
|
|
для: Udachix
(28.09.2013 в 12:18)
| | Во мне столько же строгости сколько и в бабушке вяжущей носки.
Цвета выставляют для какой-то мало мальски пользы, то есть с возможностью выбора сортировки по насыщенности, по цветовому оттенку, по серой шкале и т.п. К тому же цвета показывают еще с учетом веб, то указывают как десятичные значения компонент, так и шестнадцатеричное представление цвета и плюс возможность отобразить только безопасные веб цвета.
У вас этого ничего нет, и ваша таблица либо "для понту", либо не понять для каких целей, в общем смотреть нечего, а посему и ссылки не надо, не интересно. | |
|
|
|
|
|
|
|
для: confirm
(28.09.2013 в 13:30)
| | Отдельное мнение. Не надо — можно и не писать.
if ( ! isset ( Интерес ) ) echo'';
|
| |
|
|
|
|
|
|
|
для: Udachix
(27.09.2013 в 16:10)
| | Результат получен — утро вечера мудренее:
<?php
echo'<table style="margin: 0 auto 0 auto; width: 96%" border="0">';
unset ( $R , $G , $B , $i );
$R = floor ( $_GET [ 'page' ] / 256 );
$G = floor ( $_GET [ 'page' ] - ( 256 * floor ( $_GET [ 'page' ] / 256 ) ) );
$B = 0;
for ( $i = $B; $i <= 255; $i++ )
{
if ( ! ( $i % 8 ) ) echo'<tr>';
echo'<td style="background-color: rgb( '.$R.' , '.$G.' , '.$i.' ); border: 1px solid #fff; width: 12%; height: 40px" align="center" valign="middle">';
echo $R.' , '.$G.' , '.$i;
echo'</td>';
if ( ! ( ( $i + 1 ) % 8 ) ) echo'</tr>';
}
echo'</table>';
?>
|
Остаётся только постраничный вывод сделать, если нужно.
Первая страница — 1, последняя — 65 535.
Результат могу показать на сайте (кому нужно — спросите, здесь ссылку давать не буду, а то рекламой посчитают). | |
|
|
|
|
 5.7 Кб |
|
|
для: Udachix
(28.09.2013 в 12:18)
| | Пример применения (кому фантазии не хватает).
Все три картинки (разного цвета) созданы с помощью библиотеки GD с использованием прямоугольных блоков разного цвета. | |
|
|
|
|
|
|
|
для: Udachix
(28.09.2013 в 14:30)
| | Прямоугольники красивыйе, но почему нельзя было решить это HEX числами?
У вас так принципиально делался упор на десятичную систему. | |
|
|
|
|
|
|
|
для: Zezst
(29.09.2013 в 14:41)
| | С цифрами, вроде как, проще. Они же просто цифры. И в GB-библиотеке RGB требуется для указания фона. | |
|
|
|
|
|
|
|
для: Udachix
(30.09.2013 в 04:17)
| | И в GB-библиотеке RGB требуется для указания фона.
Т.е. она не понимает 16ричную систему?
Т.е. ПХП тоже не понимает?
Вы уверены?
Или в RGB не возможно использование HEX?
А что вы понимаете под HEX?
Это какая-то схема светопередачи, типа RGB, CMYK и т.д. ? | |
|
|
|