HTML colors

Add-On HTML colors

Informations

Author:MorphSoft
License: FPDF

Description

This script allows you to use colors using the HTML convention. You can either use the form #RRGGBB or one of the many available color names.

Source

<?php
require('fpdf.php');

//
// v1.0 Initial version
// v1.1 Extensive color list added by Jean-Michel RANCHOUX
//

class PDF_HTMLColor extends FPDF
{
function HTML2RGB($c, &$r, &$g, &$b)
{
    static $colors = array('aliceblue'=>'#F0F8FF', 'antiquewhite'=>'#FAEBD7', 'aqua'=>'#00FFFF', 'aquamarine'=>'#7FFFD4', 'azure'=>'#F0FFFF', 
        'beige'=>'#F5F5DC', 'bisque'=>'#FFE4C4', 'black'=>'#000000', 'blanchedalmond'=>'#FFEBCD', 'blue'=>'#0000FF', 'blueviolet'=>'#8A2BE2', 
        'brown'=>'#A52A2A', 'burlywood'=>'#DEB887', 'cadetblue'=>'#5F9EA0', 'chartreuse'=>'#7FFF00', 'chocolate'=>'#D2691E', 'coral'=>'#FF7F50', 
        'cornflowerblue'=>'#6495ED', 'cornsilk'=>'#FFF8DC', 'crimson'=>'#DC143C', 'cyan'=>'#00FFFF', 'darkblue'=>'#00008B', 'darkcyan'=>'#008B8B', 
        'darkgoldenrod'=>'#B8860B', 'darkgray'=>'#A9A9A9', 'darkgreen'=>'#006400', 'darkkhaki'=>'#BDB76B', 'darkmagenta'=>'#8B008B', 
        'darkolivegreen'=>'#556B2F', 'darkorange'=>'#FF8C00', 'darkorchid'=>'#9932CC', 'darkred'=>'#8B0000', 'darksalmon'=>'#E9967A', 
        'darkseagreen'=>'#8DBC8F', 'darkslateblue'=>'#483D8B', 'darkslategray'=>'#2F4F4F', 'darkturquoise'=>'#00DED1', 'darkviolet'=>'#9400D3', 
        'deeppink'=>'#FF1493', 'deepskyblue'=>'#00BFFF', 'dimgray'=>'#696969', 'dodgerblue'=>'#1E90FF', 'firebrick'=>'#B22222', 
        'floralwhite'=>'#FFFAF0', 'forestgreen'=>'#228B22', 'fuchsia'=>'#FF00FF', 'gainsboro'=>'#DCDCDC', 'ghostwhite'=>'#F8F8FF', 
        'gold'=>'#FFD700', 'goldenrod'=>'#DAA520', 'gray'=>'#808080', 'green'=>'#008000', 'greenyellow'=>'#ADFF2F', 'honeydew'=>'#F0FFF0', 
        'hotpink'=>'#FF69B4', 'indianred'=>'#CD5C5C', 'indigo'=>'#4B0082', 'ivory'=>'#FFFFF0', 'khaki'=>'#F0E68C', 'lavender'=>'#E6E6FA', 
        'lavenderblush'=>'#FFF0F5', 'lawngreen'=>'#7CFC00', 'lemonchiffon'=>'#FFFACD', 'lightblue'=>'#ADD8E6', 'lightcoral'=>'#F08080', 
        'lightcyan'=>'#E0FFFF', 'lightgoldenrodyellow'=>'#FAFAD2', 'lightgreen'=>'#90EE90', 'lightgrey'=>'#D3D3D3', 'lightpink'=>'#FFB6C1', 
        'lightsalmon'=>'#FFA07A', 'lightseagreen'=>'#20B2AA', 'lightskyblue'=>'#87CEFA', 'lightslategray'=>'#778899', 'lightsteelblue'=>'#B0C4DE', 
        'lightyellow'=>'#FFFFE0', 'lime'=>'#00FF00', 'limegreen'=>'#32CD32', 'linen'=>'#FAF0E6', 'magenta'=>'#FF00FF', 'maroon'=>'#800000', 
        'mediumaquamarine'=>'#66CDAA', 'mediumblue'=>'#0000CD', 'mediumorchid'=>'#BA55D3', 'mediumpurple'=>'#9370DB', 'mediumseagreen'=>'#3CB371', 
        'mediumslateblue'=>'#7B68EE', 'mediumspringgreen'=>'#00FA9A', 'mediumturquoise'=>'#48D1CC', 'mediumvioletred'=>'#C71585', 
        'midnightblue'=>'#191970', 'mintcream'=>'#F5FFFA', 'mistyrose'=>'#FFE4E1', 'moccasin'=>'#FFE4B5', 'navajowhite'=>'#FFDEAD', 
        'navy'=>'#000080', 'oldlace'=>'#FDF5E6', 'olive'=>'#808000', 'orange'=>'#FFA500', 'orangered'=>'#FF4500', 'orchid'=>'#DA70D6', 
        'palegoldenrod'=>'#EEE8AA', 'palegreen'=>'#98FB98', 'paleturquoise'=>'#AFEEEE', 'palevioletred'=>'#DB7093', 'papayawhip'=>'#FFEFD5', 
        'peachpuff'=>'#FFDAB9', 'peru'=>'#CD853F', 'pink'=>'#FFC8CB', 'plum'=>'#DDA0DD', 'powderblue'=>'#B0E0E6', 'purple'=>'#800080', 
        'red'=>'#FF0000', 'rosybrown'=>'#BC8F8F', 'royalblue'=>'#4169E1', 'saddlebrown'=>'#8B4513', 'salmon'=>'#FA8072', 'sandybrown'=>'#F4A460', 
        'seagreen'=>'#2E8B57', 'seashell'=>'#FFF5EE', 'sienna'=>'#A0522D', 'silver'=>'#C0C0C0', 'skyblue'=>'#87CEEB', 'slateblue'=>'#6A5ACD', 
        'snow'=>'#FFFAFA', 'springgreen'=>'#00FF7F', 'steelblue'=>'#4682B4', 'tan'=>'#D2B48C', 'teal'=>'#008080', 'thistle'=>'#D8BFD8', 
        'tomato'=>'#FF6347', 'turquoise'=>'#40E0D0', 'violet'=>'#EE82EE', 'wheat'=>'#F5DEB3', 'white'=>'#FFFFFF', 'whitesmoke'=>'#F5F5F5', 
        'yellow'=>'#FFFF00', 'yellowgreen'=>'#9ACD32');

    $c = strtolower($c);
    if(isset($colors[$c]))
        $c = $colors[$c];
    if($c[0]!='#')
        $this->Error('Incorrect color: '.$c);
    $r = hexdec(substr($c, 1, 2));
    $g = hexdec(substr($c, 3, 2));
    $b = hexdec(substr($c, 5, 2));
}

function SetDrawColor($r, $g=-1, $b=-1)
{
    if(is_string($r))
        $this->HTML2RGB($r, $r, $g, $b);
    parent::SetDrawColor($r, $g, $b);
}

function SetFillColor($r, $g=-1, $b=-1)
{
    if(is_string($r))
        $this->HTML2RGB($r, $r, $g, $b);
    parent::SetFillColor($r, $g, $b);
}

function SetTextColor($r, $g=-1, $b=-1)
{
    if(is_string($r))
        $this->HTML2RGB($r, $r, $g, $b);
    parent::SetTextColor($r, $g, $b);
}
}
?>

Example

<?php
require('htmlcolor.php');

$pdf = new PDF_HTMLColor();
$pdf->AddPage();
$pdf->SetDrawColor('blue');
$pdf->SetFillColor('#EE6060');
$pdf->SetTextColor('yellow');
$pdf->SetLineWidth(1);
$pdf->SetFont('Arial', '', 16);
$pdf->SetXY(80, 40);
$pdf->Cell(50, 20, 'HTML Colors', 1, 0, 'C', true);
$pdf->Output();
?>
View the result here.

Download

ZIP | TGZ