8. Februar 2010

Sparklines PHP Libary für transparente Hintergründe erweitern…

Abgelegt unter: something completely different | — Tags:, , , , , — admin @ 09:31

Die Sparklines PHP Bibliothek ist eine feine Sache um zeitliche Verläufe auf kleinstem Raum zu illustrieren, diverse Funktionen ermöglichen auch eine Anpassung des Bildes an die Webseite auf der es präsentiert werden soll, leider gibt es aber keine Funktion für transparente Hintergründe.

Die folgenden Schritte zeigen wie man dieses Problem einfach und schnell löst, die nächsten Versionen der Sparkline Bibliothek für PHP werden die Lösung eventuell bereits anbieten können (Code wurde an den Projektbetreuer übermittelt), für den aktuellen Stand aber müssen noch ein paar Dinge angepasst werden.

1. Laden Sie die aktuelle Version der Sparkline PHP Bibliothek herunter (http://sourceforge.net/project/showfiles.php?group_id=122936), entpacken Sie das Archiv in einen Ordner Ihrer Wahl.

2. Öffnen Sie mit einem Editor die Datei Sparklines.php.

3. Fügen Sie die folgende Funktion ein :
function setTransparency () {
$this->colorTransparency = “1″;
} function setTransparency

4. Suchen Sie die Funktion DrawBackground, und ersetzen Sie die komplette Funktion mit dem folgenden Code :

function DrawBackground($handle = false) {
$this->Debug(”Sparkline :: DrawBackground()”, DEBUG_DRAW);
if (!$this->IsError()) {
if ($handle === false) $handle = $this->imageHandle;
$this->DrawRectangleFilled(0,
0,
imagesx($handle) - 1,
imagesy($handle) - 1,
$this->colorBackground,
$handle);
if ($this->colorTransparency == “1″) {
imagecolortransparent($handle, $this->colorList[$this->colorBackground]['handle']);
}
}
} function DrawBackground

5. Speichern Sie die Datei.

Die Bibliothek kann nun gemäß Dokumentation (http://sparkline.wikispaces.com/usage) verwendet werden, um Transparenz hinzuzufügen muss lediglich die Methode setTransparency() vor dem eigentlichen Rendern aufgerufen werden :
$sparkline->setTransparency();

Kontakt | Impressum | © by STAPIS GmbH

Hannes Peterseim fragt an ob Sie eine Beratung wünschen:

  
Chat beenden