PHP
Referenzliste
PDF_setcolor
PDF-Funktionen
Befehl:
bool PDF_setcolor ( resource $p , string $fstype , string $colorspace , float $c1 , float $c2 , float $c3 , float $c4 )
Beschreibung:
Setzt den aktuellen Farbraum und die aktuelle Farbe. Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.
Aktiv in Version:
(PHP 4 >= 4.0.5, PECL pdflib >= 1.0.0)
PDF_setcolor() - Beispiel
Eingabe:
<?php $cmyk = '10,20,100,31'; list($c, $m, $y, $k) = explode(',', $cmyk); # Ruf die rgb als floats (cast via (int) wenn sie wollen int ) $r = (1 - min(($c / 100) * (1 - $k /= 100) + 1 * $k, 1)) * 255; $g = (1 - min(($m / 100) * (1 - $k) + 1 * $k, 1)) * 255; $b = (1 - min(($y / 100) * (1 - $k) + 1 * $k, 1)) * 255; echo "$r $g $b\r\n"; # Converts the rgb to hex with leading 0's $r = str_pad(dechex($r), 2, '0', STR_PAD_LEFT); $g = str_pad(dechex($g), 2, '0', STR_PAD_LEFT); $b = str_pad(dechex($b), 2, '0', STR_PAD_LEFT); echo "hex: $r$g$b\r\n"; /* ein Beispiel, um die Farbe via html sehen echo '<div style="width: 80px; height: 80px; background-color: #', "$r$g$b", '"></div>'; */ ?>
PDF_setcolor() - Beispiel 2
Eingabe:
<? function hex2rgb($hex) { $color = str_replace('#','',$hex); $rgb = array('r' => hexdec(substr($color,0,2)), 'g' => hexdec(substr($color,2,2)), 'b' => hexdec(substr($color,4,2))); return $rgb; } function rgb2cmyk($var1,$g=0,$b=0) { if(is_array($var1)) { $r = $var1['r']; $g = $var1['g']; $b = $var1['b']; } else $r=$var1; $cyan = 255 - $r; $magenta = 255 - $g; $yellow = 255 - $b; $black = min($cyan, $magenta, $yellow); $cyan = @(($cyan - $black) / (255 - $black)) * 255; $magenta = @(($magenta - $black) / (255 - $black)) * 255; $yellow = @(($yellow - $black) / (255 - $black)) * 255; return array('c' => $cyan / 255, 'm' => $magenta / 255, 'y' => $yellow / 255, 'k' => $black / 255); } $color=rgb2cmyk(hex2rgb('#FF0000')); pdf_setcolor($pdf, "both", "cmyk", $color['c'], $color['m'], $color['y'], $color['k']); ?>
PDF_setcolor() - Beispiel 3
Eingabe:
<? function pdf_setcolor_hex($hexcolor, $type = '') { global $pdf; ## match this to your pdf resource handle $color['r'] = hexdec(substr($hexcolor, 0, 2))/255; $color['g'] = hexdec(substr($hexcolor, 2, 2))/255; $color['b'] = hexdec(substr($hexcolor, 4, 2))/255; if ($type != 'fill' && $type != 'stroke') $type = 'both'; pdf_setcolor($pdf, $type, 'rgb', $color['r'], $color['g'], $color['b']); } ?>
Beispiel Nutzung:
<? pdf_setcolor_hex('FFFFFF', 'fill'); ?>
PDF_setcolor() - Beispiel 4
Eingabe:
<?php // Pfad für die pdf-Datei und String zu zeigen $pdfFilePath = $_SERVER[DOCUMENT_ROOT]."/the_dir_of_the_file/test.pdf"; $string = "Die neue Farbe meiner Schrift"; $pdf = pdf_new(); pdf_open_file($pdf, $pdfFilePath); pdf_set_info($pdf, "Title", "Test pdf"); // A4 page pdf_begin_page($pdf, 595, 842); // Einrichten der Schrift $font = pdf_findfont($pdf, "Courier", "host", FALSE); if (isset($font)) { pdf_setfont($pdf, $font, 10) or die ("unknown font"); } pdf_setColor($pdf, "fill", "rgb",0, 0, 1); // dies für blaue Farbe // pdf_setColor($pdf, "fill", "rgb",1, 0, 0) for red pdf_set_value($pdf, "textrendering", 0); // zeigt an der Spitze der Mittelpunkt der Seite pdf_show_boxed($pdf, $string, 0, 832, 595, 10, "center", ""); // setzt Grafikzustand pdf_initGraphics($pdf); // Ende der Seite und pdf_object pdf_end_page($pdf); pdf_close($pdf); pdf_delete($pdf); // Header verwenden, um die Datei herunterzuladen header("Content-type: application/pdf"); header("Content-length: ".filesize($pdfFilePath)); header("Content-disposition: inline; filename=test.pdf"); readfile($pdfFilePath); ?>
PDF-Funktionen