Autor | Zpráva | ||
---|---|---|---|
kuxa Profil |
#1 · Zasláno: 25. 1. 2015, 20:11:32
Zdravím,
vím, že se to tu už řešilo, ale moje situace je jiná. Vím, že poloprůhledného pozadí lze docílit pomocí rgba() , jenže můj problém je ten, že mám v proměnné v php barvu ve formátu #xxxxxx. Víte prosím někdo, jak to vyřešit? Děkuji moc!
|
||
Keeehi Profil |
#2 · Zasláno: 25. 1. 2015, 20:26:24
rozdělit xxxxxx do dvojic | převést z 16kové soustavy do desítkové | doplnit nakonec 0.5 pro 50% průhlednost
|
||
Chamurappi Profil |
#3 · Zasláno: 25. 1. 2015, 20:28:32
Reaguji na kuxu:
„můj problém je ten, že mám v proměnné v php barvu ve formátu #xxxxxx“ Tak si ji převeď, ne? Hexadecimální formát je normální číslo v šestnáctkové soustavě. Načti ho jako číslo a pak děl a moduluj číslem 256 a dostaneš jednotlivé složky RGB.
„Vím, že poloprůhledného pozadí lze docílit pomocí rgba() “
Nezapomeň uvést i neprůhlednou variantu pro prohlížeče nepodporující rgba .
|
||
kuxa Profil |
#4 · Zasláno: 25. 1. 2015, 21:42:51
Děkuji za odpovědi! Omlouvám se, jestli toho chci moc, ale mohli byste mi prosím poradit, jak to převést (např. nějakou funkcí v php)? V tomhle se vůbec neorientuji. Děkuji moc!
|
||
lionel messi Profil |
#5 · Zasláno: 25. 1. 2015, 21:59:08
kuxa:
„mohli byste mi prosím poradit, jak to převést (např. nějakou funkcí v php)?“ Najprv si reťazec FF0000 musíš rozbiť na dvojice pre jednotlivé farby. S tým ti pomôže napríklad funkcia mb_substr (pozri sa na jej parametre v odkázanej dokumentácii). Prevod šestnástkového čísla do desiatkovej sústavy obstará hexdec.
|
||
pcmanik Profil |
#6 · Zasláno: 26. 1. 2015, 10:24:19
kuxa:
Stačí použiť google a hneď prvý výsledok je to čo hľadáš. |
||
kuxa Profil |
#7 · Zasláno: 26. 1. 2015, 16:50:38
pcmanik:
Super, díky moc! Ta funkce je geniální, s její pomocí jsem to vyřešil. Díky! lionel messi: Díky, takhle by to asi taky šlo, ale jelikož existuje již vytvořená funkce, proč se s tím programovat znova, že? :) |
||
Chamurappi Profil |
#8 · Zasláno: 26. 1. 2015, 17:12:51
Reaguji na kuxu:
„jelikož existuje již vytvořená funkce, proč se s tím programovat znova, že? :)“ Protože to jde vymyslet lépe a napsat rychle :-) PHP moc neumím, ale udělal bych hexdec celého řetězce za mřížkou, dostal bych číslo n , složka r by byla n >> 16 , složka g by byla (n >> 8) & 255 a složka b by byla n & 255 … věřil bych (možná trochu naivně), že to bude efektivnější, než sekání řetězce.
|
||
kuxa Profil |
#9 · Zasláno: 26. 1. 2015, 17:17:05
Je sice možné, že by to bylo efektivnější, ale když už existuje funkce (a plní mé požadavky), přijde mi zbytečné psát vlastní
|
||
Chamurappi Profil |
Reaguji na kuxu:
A rozumíš, jak ta funkce funguje, nebo jsi líný lepič, který se brzy přijde zeptat na další podobnou prkotinu? :-) |
||
kuxa Profil |
#11 · Zasláno: 26. 1. 2015, 18:32:39
Samozřejmě rozumím jak funguje, až na tu funkci
hexdec() , se kterou jsem se nikdy nesetkal :-)
|
||
juriad Profil |
#12 · Zasláno: 26. 1. 2015, 18:34:10
kuxa:
Tak malé cvičení. Přečti si co ta funkce dělá a naprogramuj si ji sám. :-) |
||
Časová prodleva: 8 let
|
0