steve: Hex2RGB

Hallo,
ich möchte Bilder generieren. Da die Farbzuweisung mit z.B.

$color = ImageColorAllocate($im, 0,0,0);  // schwarze Linien

gemacht werden, bräuchte  ich eine Funktion, die einen HEX-Farbwert in das obige RGB konvertiert.

Wie geht das?

Gibt es eine Funktion / Tabelle, die aus einem HEX-Wert die drei RGB Werte berechnet in PHP?

Gruss
steve

  1. Moin!

    ich möchte Bilder generieren. Da die Farbzuweisung mit z.B.

    $color = ImageColorAllocate($im, 0,0,0);  // schwarze Linien

    gemacht werden, bräuchte  ich eine Funktion, die einen HEX-Farbwert in das obige RGB konvertiert.

    Gib doch einfach eine Hex-Zahl an.

    0xFF wäre 255.

    Welche Zahlenformate in PHJP erlaubt sind, steht in http://www.php.net/manual/de/language.types.integer.php

    - Sven Rautenberg

    --
    ss:) zu:) ls:[ fo:} de:] va:) ch:] sh:) n4:# rl:| br:< js:| ie:( fl:( mo:|
  2. Hallo,

    Gibt es eine Funktion / Tabelle, die aus einem HEX-Wert die drei RGB Werte berechnet in PHP?

    Es gibt die Funktion hexdez(), die sich anwenden laesst:

    $hex="#AABBCC";

    $r=hexdec(substr($hex,1,2));
    $g=hexdec(substr($hex,3,2));
    $b=hexdec(substr($hex,5,2));

    // Dein Funktionsaufruf:
    $color = ImageColorAllocate($im, $r,$g,$b);

    MfG, Thomas

    1. Moin!

      Es gibt die Funktion hexdez(), die sich anwenden laesst:

      $hex="#AABBCC";

      $r=hexdec(substr($hex,1,2));
      $g=hexdec(substr($hex,3,2));
      $b=hexdec(substr($hex,5,2));

      // Dein Funktionsaufruf:
      $color = ImageColorAllocate($im, $r,$g,$b);

      Da finde ich
      $color = ImageColorAllocate($im, 0xAA, 0xBB, 0xCC);
      irgendwie einfacher. Und vor allem schneller.

      :)

      - Sven Rautenberg

      --
      ss:) zu:) ls:[ fo:} de:] va:) ch:] sh:) n4:# rl:| br:< js:| ie:( fl:( mo:|
      1. Hallo,

        Da finde ich
        $color = ImageColorAllocate($im, 0xAA, 0xBB, 0xCC);
        irgendwie einfacher. Und vor allem schneller.

        Kann schon sein, aber die Ausgangsfrage war wohl so gemeint, dass bereits ein hexadezimaler RGB-Wert (vielleicht aus HTML) vorliegt ...

        MfG, Thomas