Hex to RGB

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Hex to RGB

Δημοσίευση από Basilakis » 16 Ιουν 2010 02:22

Ψάχνω κάποιον έξυπνο τρόπο, να μετατρέψω ΠΟΛΛΑ values απο HEX color σε RGB(A).

Αυτό που κάνω είναι να έχω έναν color picker με Jquery και να παίρνω ένα value.
Θέλοντας όμως να κάνω όλες τις μετατροπές σε CSS3, θέλω να μετατρέψω τα χρώματα από όλα τα values σε RGBA για να περάσω και εκεί μέσα το opacity και όχι 1 - 1.

Υπάρχει κάποια function ή και σε JS κάποιος τρόπος για τη μετατροπή αυτή;

Άβαταρ μέλους
Pavel
Honorary Member
Δημοσιεύσεις: 1046
Εγγραφή: 08 Αύγ 2003 00:05
Τοποθεσία: UK

Hex to RGB

Δημοσίευση από Pavel » 16 Ιουν 2010 02:31

Αυτά τα values τα έχεις κάπου μαζεμένα; Έχουν κάποιο structure (π.χ. μια τιμή ανά σειρά σε κάποιο αρχείο);
Εσύ είσαι τρελός.

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Hex to RGB

Δημοσίευση από Basilakis » 16 Ιουν 2010 03:21

Κώδικας: Επιλογή όλων

			/* Border Color */
			$val = $default['color'];
			if ( $border_stored['color'] != "") { $val = $border_stored['color']; }			
			$output .= '<div id="' . $value&#91;'id'&#93; . '_color_picker" class="colorSelector"><div></div></div>';
			$output .= '<input class="woo-color woo-border woo-border-color" name="'. $value&#91;'id'&#93; .'_color" id="'. $value&#91;'id'&#93; .'_color" type="text" value="'. $val .'" />';

Και αυτά, τα περνάω εδώ

Κώδικας: Επιλογή όλων

$options&#91;&#93; = array&#40; "name" => "Top Header Border Value",
					"desc" => "Specify border properties for the header.",
					"id" => $shortname."_header_border_right",
					"std" => array&#40;'width' => '0','style' => 'solid','color' => '', 'opacity' => ''&#41;,
					"type" => "border"&#41;; 
Όπου είναι το Array με τα options...

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

Hex to RGB

Δημοσίευση από fafos » 16 Ιουν 2010 04:17

vasika einai ta prota mathimata plhroforikhs gia metatropes dyadikon, dekadikon klp arithmon.. sthn php psakse gia hexdec kai dechex...

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

Hex to RGB

Δημοσίευση από soteres2002 » 17 Ιουν 2010 00:36

Μπορείς να πάρεις τα RGB components από μία δεκαεξαδική (hex) τιμή αν κάνεις ολίσθηση modulo 4, δηλαδή να απομονώσεις κάθε φορά τα 4 bit που αφορούν κάθε component από τα R, G, B της hexademical τιμής.

Κώδικας: Επιλογή όλων

val = 0xffffff;
r = val << 4;
g = val << 8;
b = val << 16;

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Hex to RGB

Δημοσίευση από Basilakis » 17 Ιουν 2010 01:02

Δεν μπορώ δλδ να κάνω απλώς ένα

echo hexdec ".$val."

και να γίνει η μετατροπή;

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

Hex to RGB

Δημοσίευση από soteres2002 » 17 Ιουν 2010 01:09

όχι δεν παίζει αυτό γιατί ο hex έχει όλη την rgb πληροφορία. αν μετατράψεις σε decimal θα μετατρέψεις όλη την πληροφορία σε αυτή την αναπαράσταση, πράγμα που δεν είναι αυτό που θες...

Εσύ θες να παρεις από την αρχική 16δική τιμή τα R, G, B compontents σε decimal μορφή.

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

Hex to RGB

Δημοσίευση από fafos » 17 Ιουν 2010 01:22

ela re bill.. mia function einai:

Κώδικας: Επιλογή όλων

<?php
function hex2dec&#40;$hex&#41; &#123;
  $color = str_replace&#40;'#', '', $hex&#41;;

    $r = hexdec&#40;substr&#40;$color, 0, 2&#41;&#41;;
    $g = hexdec&#40;substr&#40;$color, 2, 2&#41;&#41;;
    $b = hexdec&#40;substr&#40;$color, 4, 2&#41;&#41;;
$ret = $r.' '.$g.' '.$b;
  return $ret;
&#125;
echo hex2dec&#40;'#0000cc'&#41;;
?>

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Hex to RGB

Δημοσίευση από Basilakis » 17 Ιουν 2010 01:26

fafos έγραψε:ela re bill.. mia function einai:
ναι την βρήκα απο το manual και την έκανα, αλλά ήθελα να το γλιτώσω... δουλεύω σε κάτι που δεν είναι δικό μου και το επεκτείνω...

http://www.w3schools.com/php/func_math_hexdec.asp

είδα και εδώ όμως και μπερδεύτηκα (νομίζω) πως σκατά κάνουν το convert της τιμής εδώ;

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

Hex to RGB

Δημοσίευση από fafos » 17 Ιουν 2010 01:31

sosth einai kai auth... aplos mexri thn symplhrosh tou arithmou vazei mhdenika ta opoia den lamvanontai ypopsin (den einai dekadikos gia na milame gia xiliades h ekatontades, kati analogo pou kanoume kai me to #fff anti gia #ffffff)

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Hex to RGB

Δημοσίευση από cpulse » 17 Ιουν 2010 11:47

Δες και μια ακόμα λύση

Κώδικας: Επιλογή όλων

$html = preg_replace_callback&#40;
	'/#&#40;&#91;0-9a-f&#93;&#123;2&#125;&#41;&#40;&#91;0-9a-f&#93;&#123;2&#125;&#41;&#40;&#91;0-9a-f&#93;&#123;2&#125;&#41;/i',
	function &#40;$m&#41; &#123; return 'RGB&#40;' . hexdec&#40;$m&#91;1&#93;&#41; . ', ' . hexdec&#40;$m&#91;2&#93;&#41; . ', ' . hexdec&#40;$m&#91;3&#93;&#41; . '&#41;'; &#125;,
	$html
&#41;;

$html = preg_replace_callback&#40;
	'/#&#40;&#91;0-9a-f&#93;&#41;&#40;&#91;0-9a-f&#93;&#41;&#40;&#91;0-9a-f&#93;&#41;/i',
	function &#40;$m&#41; &#123; return 'RGB&#40;' . hexdec&#40;$m&#91;1&#93; . $m&#91;1&#93;&#41; . ', ' . hexdec&#40;$m&#91;2&#93; . $m&#91;2&#93;&#41; . ', ' . hexdec&#40;$m&#91;3&#93; . $m&#91;3&#93;&#41; . '&#41;'; &#125;,
	$html
&#41;;
Πρώτα χειρίζεται τα 6ψήφια χρώματα και μετά τα 3ψήφια

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης