Signatur
Beschreibung
ps_set_border_color legt die Farbe des sichtbaren Rahmens fest, der um Annotationen (z. B. Hyperlinks) in einem mit der ps-Erweiterung erzeugten PostScript-Dokument gezeichnet wird. Die Farbe wird im RGB-Farbraum angegeben, wobei jeder Kanal einen Wert zwischen 0.0 und 1.0 annimmt.
Die Funktion muss vor dem Erstellen der jeweiligen Annotation aufgerufen werden, da sie den internen Zustand des Dokuments für zukünftige Annotationen setzt. Sie wirkt sich ausschließlich auf Rahmenfarben aus – nicht auf Füllfarben oder andere grafische Eigenschaften von Annotationen.
In Kombination mit ps_set_border_style und ps_set_border_dash lässt sich das Erscheinungsbild von Annotationsrahmen vollständig steuern, z. B. für die Darstellung klickbarer Linkbereiche in generierten PDF- oder PostScript-Ausgaben.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $psdoc Pflicht | resource | Die Ressource des PostScript-Dokuments, wie sie von ps_new() zurückgegeben wird. |
|
| $red Pflicht | float | Rotanteil der Rahmenfarbe als Gleitkommazahl im Bereich 0.0 (kein Rot) bis 1.0 (volles Rot). |
|
| $green Pflicht | float | Grünanteil der Rahmenfarbe als Gleitkommazahl im Bereich 0.0 (kein Grün) bis 1.0 (volles Grün). |
|
| $blue Pflicht | float | Blauanteil der Rahmenfarbe als Gleitkommazahl im Bereich 0.0 (kein Blau) bis 1.0 (volles Blau). |
Rückgabewert
true bei Erfolg zurück, false im Fehlerfall (z. B. wenn die übergebene Ressource ungültig ist).Beispiele
Roten Rahmen für einen Hyperlink setzen
<?php
// Neues PostScript-Dokument erzeugen
$psdoc = ps_new();
ps_open_file($psdoc, 'ausgabe.ps');
ps_begin_page($psdoc, 595, 842);
// Rahmenfarbe auf Rot setzen (R=1, G=0, B=0)
ps_set_border_color($psdoc, 1.0, 0.0, 0.0);
// Annotation (Hyperlink) mit rotem Rahmen erstellen
ps_add_weblink($psdoc, 100, 700, 300, 720, 'https://programmierung.net');
ps_end_page($psdoc);
ps_close($psdoc);
ps_delete($psdoc);
echo 'PostScript-Dokument mit rotem Link-Rahmen erzeugt.';
?>
Blauen Rahmen für einen internen Link setzen
<?php
$psdoc = ps_new();
ps_open_file($psdoc, 'intern.ps');
ps_begin_page($psdoc, 595, 842);
// Rahmenfarbe auf Blau setzen (R=0, G=0, B=1)
ps_set_border_color($psdoc, 0.0, 0.0, 1.0);
// Linienbreite und Stil des Rahmens zusätzlich konfigurieren
ps_set_border_style($psdoc, 'solid', 2.0);
// Internen Link hinzufügen
ps_add_locallink($psdoc, 50, 750, 250, 770, 2, 'fitpage');
ps_end_page($psdoc);
ps_close($psdoc);
ps_delete($psdoc);
echo 'PostScript-Dokument mit blauem internen Link-Rahmen erzeugt.';
?>
// Wichtig · Fallstricke
Hinweis zur Erweiterung: ps_set_border_color gehört zur ps-PECL-Erweiterung (pslib), die in Standard-PHP-Installationen meist nicht enthalten ist. Sie muss separat installiert und aktiviert werden. Prüfen Sie mit extension_loaded('ps'), ob die Erweiterung verfügbar ist.
Die gesetzten Werte gelten global für alle nachfolgend erstellten Annotationen im Dokument, bis sie erneut geändert werden. Farbanteile außerhalb des Bereichs 0.0–1.0 führen zu undefiniertem Verhalten.