classes-Com-Tecnick-Color-Pdf

It appears that you are using AdBlocking software. The cost of running this website is covered by advertisements. If you like it please feel free to a small amount of money to secure the future of this website.

Pdf extends Spot

Com\Tecnick\Color\Pdf

PDF Color class

Tags
since
2015-02-21
category

Library

author

Nicola Asuni info@tecnick.com

copyright

2015-2015 Nicola Asuni - Tecnick.com LTD

license

http://www.gnu.org/copyleft/lesser.html GNU-LGPL v3 (see LICENSE.TXT)

link
https://github.com/tecnickcom/tc-lib-color

Table of Contents

$default_spot_colors  : array<string|int, mixed>
Array of default Spot colors Color keys must be in lowercase and without spaces.
$jscolor  : array<string|int, mixed>
Array of valid JavaScript color names to be used in PDF documents
$spot_colors  : array<string|int, mixed>
Array of Spot colors
$webhex  : array<string|int, mixed>
Array of WEB safe colors #RRGGBBAA
addSpotColor()  : mixed
Add a new spot color or overwrite an existing one with the same name.
extractHexCode()  : string
Extract the hexadecimal code from the input string and add the alpha channel if missing
getClosestWebColor()  : string
Get the name of the closest web color
getColorObj()  : Model
Parse the input color string and return the correspondent color Object
getColorObject()  : object
Returns a color object from an HTML, CSS or Spot color representation.
getHexFromName()  : string
Get the color hexadecimal hash code from name
getJsColorString()  : string
Convert color to javascript string
getJsMap()  : array<string|int, mixed>
Return the Js color array of names
getMap()  : array<string|int, mixed>
Get the color map (name => hexhash)
getNameFromHex()  : string
Get the color name code from hexadecimal hash
getPdfColor()  : string
Get the color components format used in PDF documents NOTE: the alpha channel is omitted
getPdfRgbComponents()  : string
Get the RGB color components format used in PDF documents
getPdfSpotObjects()  : string
Returns the PDF command to output Spot color objects.
getPdfSpotResources()  : string
Returns the PDF command to output Spot color resources.
getRgbObjFromHex()  : array<string|int, mixed>
Get the RGB color object from hexadecimal hash
getRgbObjFromName()  : Rgb
Get the RGB color object from color name
getRgbSquareDistance()  : float
Get the square of the distance between 2 RGB points
getSpotColor()  : array<string|int, mixed>
Return the requested spot color data array
getSpotColorObj()  : Cmyk
Return the requested spot color CMYK object
getSpotColors()  : array<string|int, mixed>
Returns the array of spot colors.
normalizeSpotColorName()  : string
Return the normalized version of the spot color name
normalizeValue()  : float
Get the normalized integer value from [0..$max] to [0..1]
getColorObjFromCss()  : Model
Get the color object from a CSS color string
getColorObjFromJs()  : Model
Get the color object from acrobat Javascript syntax
getColorObjFromCssCmyk()  : Model
Get the color object from a CSS CMYK color string
getColorObjFromCssGray()  : Model
Get the color object from a CSS CMYK color string
getColorObjFromCssHsl()  : Model
Get the color object from a CSS CMYK color string
getColorObjFromCssRgb()  : Model
Get the color object from a CSS CMYK color string
getHexArray()  : array<string|int, mixed>
Get the RGB array from hexadecimal hash

Properties

$default_spot_colors

Array of default Spot colors Color keys must be in lowercase and without spaces.

protected static array<string|int, mixed> $default_spot_colors = array('none' => array('name' => 'None', 'color' => array('cyan' => 0, 'magenta' => 0, 'yellow' => 0, 'key' => 0, 'alpha' => 1)), 'all' => array('name' => 'All', 'color' => array('cyan' => 1, 'magenta' => 1, 'yellow' => 1, 'key' => 1, 'alpha' => 1)), 'cyan' => array('name' => 'Cyan', 'color' => array('cyan' => 1, 'magenta' => 0, 'yellow' => 0, 'key' => 0, 'alpha' => 1)), 'magenta' => array('name' => 'Magenta', 'color' => array('cyan' => 0, 'magenta' => 1, 'yellow' => 0, 'key' => 0, 'alpha' => 1)), 'yellow' => array('name' => 'Yellow', 'color' => array('cyan' => 0, 'magenta' => 0, 'yellow' => 1, 'key' => 0, 'alpha' => 1)), 'key' => array('name' => 'Key', 'color' => array('cyan' => 0, 'magenta' => 0, 'yellow' => 0, 'key' => 1, 'alpha' => 1)), 'white' => array('name' => 'White', 'color' => array('cyan' => 0, 'magenta' => 0, 'yellow' => 0, 'key' => 0, 'alpha' => 1)), 'black' => array('name' => 'Black', 'color' => array('cyan' => 0, 'magenta' => 0, 'yellow' => 0, 'key' => 1, 'alpha' => 1)), 'red' => array('name' => 'Red', 'color' => array('cyan' => 0, 'magenta' => 1, 'yellow' => 1, 'key' => 0, 'alpha' => 1)), 'green' => array('name' => 'Green', 'color' => array('cyan' => 1, 'magenta' => 0, 'yellow' => 1, 'key' => 0, 'alpha' => 1)), 'blue' => array('name' => 'Blue', 'color' => array('cyan' => 1, 'magenta' => 1, 'yellow' => 0, 'key' => 0, 'alpha' => 1)))

$jscolor

Array of valid JavaScript color names to be used in PDF documents

protected static array<string|int, mixed> $jscolor = array('transparent', 'black', 'white', 'red', 'green', 'blue', 'cyan', 'magenta', 'yellow', 'dkGray', 'gray', 'ltGray')

$spot_colors

Array of Spot colors

protected array<string|int, mixed> $spot_colors = array()

$webhex

Array of WEB safe colors #RRGGBBAA

protected static array<string|int, mixed> $webhex = array('aliceblue' => 'f0f8ffff', 'antiquewhite' => 'faebd7ff', 'aqua' => '00ffffff', 'aquamarine' => '7fffd4ff', 'azure' => 'f0ffffff', 'beige' => 'f5f5dcff', 'bisque' => 'ffe4c4ff', 'black' => '000000ff', 'blanchedalmond' => 'ffebcdff', 'blue' => '0000ffff', 'blueviolet' => '8a2be2ff', 'brown' => 'a52a2aff', 'burlywood' => 'deb887ff', 'cadetblue' => '5f9ea0ff', 'chartreuse' => '7fff00ff', 'chocolate' => 'd2691eff', 'coral' => 'ff7f50ff', 'cornflowerblue' => '6495edff', 'cornsilk' => 'fff8dcff', 'crimson' => 'dc143cff', 'cyan' => '00ffffff', 'darkblue' => '00008bff', 'darkcyan' => '008b8bff', 'darkgoldenrod' => 'b8860bff', 'dkgray' => 'a9a9a9ff', 'darkgray' => 'a9a9a9ff', 'darkgrey' => 'a9a9a9ff', 'darkgreen' => '006400ff', 'darkkhaki' => 'bdb76bff', 'darkmagenta' => '8b008bff', 'darkolivegreen' => '556b2fff', 'darkorange' => 'ff8c00ff', 'darkorchid' => '9932ccff', 'darkred' => '8b0000ff', 'darksalmon' => 'e9967aff', 'darkseagreen' => '8fbc8fff', 'darkslateblue' => '483d8bff', 'darkslategray' => '2f4f4fff', 'darkslategrey' => '2f4f4fff', 'darkturquoise' => '00ced1ff', 'darkviolet' => '9400d3ff', 'deeppink' => 'ff1493ff', 'deepskyblue' => '00bfffff', 'dimgray' => '696969ff', 'dimgrey' => '696969ff', 'dodgerblue' => '1e90ffff', 'firebrick' => 'b22222ff', 'floralwhite' => 'fffaf0ff', 'forestgreen' => '228b22ff', 'fuchsia' => 'ff00ffff', 'gainsboro' => 'dcdcdcff', 'ghostwhite' => 'f8f8ffff', 'gold' => 'ffd700ff', 'goldenrod' => 'daa520ff', 'gray' => '808080ff', 'grey' => '808080ff', 'green' => '008000ff', 'greenyellow' => 'adff2fff', 'honeydew' => 'f0fff0ff', 'hotpink' => 'ff69b4ff', 'indianred' => 'cd5c5cff', 'indigo' => '4b0082ff', 'ivory' => 'fffff0ff', 'khaki' => 'f0e68cff', 'lavender' => 'e6e6faff', 'lavenderblush' => 'fff0f5ff', 'lawngreen' => '7cfc00ff', 'lemonchiffon' => 'fffacdff', 'lightblue' => 'add8e6ff', 'lightcoral' => 'f08080ff', 'lightcyan' => 'e0ffffff', 'lightgoldenrodyellow' => 'fafad2ff', 'ltgray' => 'd3d3d3ff', 'lightgray' => 'd3d3d3ff', 'lightgrey' => 'd3d3d3ff', 'lightgreen' => '90ee90ff', 'lightpink' => 'ffb6c1ff', 'lightsalmon' => 'ffa07aff', 'lightseagreen' => '20b2aaff', 'lightskyblue' => '87cefaff', 'lightslategray' => '778899ff', 'lightslategrey' => '778899ff', 'lightsteelblue' => 'b0c4deff', 'lightyellow' => 'ffffe0ff', 'lime' => '00ff00ff', 'limegreen' => '32cd32ff', 'linen' => 'faf0e6ff', 'magenta' => 'ff00ffff', 'maroon' => '800000ff', 'mediumaquamarine' => '66cdaaff', 'mediumblue' => '0000cdff', 'mediumorchid' => 'ba55d3ff', 'mediumpurple' => '9370d8ff', 'mediumseagreen' => '3cb371ff', 'mediumslateblue' => '7b68eeff', 'mediumspringgreen' => '00fa9aff', 'mediumturquoise' => '48d1ccff', 'mediumvioletred' => 'c71585ff', 'midnightblue' => '191970ff', 'mintcream' => 'f5fffaff', 'mistyrose' => 'ffe4e1ff', 'moccasin' => 'ffe4b5ff', 'navajowhite' => 'ffdeadff', 'navy' => '000080ff', 'oldlace' => 'fdf5e6ff', 'olive' => '808000ff', 'olivedrab' => '6b8e23ff', 'orange' => 'ffa500ff', 'orangered' => 'ff4500ff', 'orchid' => 'da70d6ff', 'palegoldenrod' => 'eee8aaff', 'palegreen' => '98fb98ff', 'paleturquoise' => 'afeeeeff', 'palevioletred' => 'd87093ff', 'papayawhip' => 'ffefd5ff', 'peachpuff' => 'ffdab9ff', 'peru' => 'cd853fff', 'pink' => 'ffc0cbff', 'plum' => 'dda0ddff', 'powderblue' => 'b0e0e6ff', 'purple' => '800080ff', 'red' => 'ff0000ff', 'rosybrown' => 'bc8f8fff', 'royalblue' => '4169e1ff', 'saddlebrown' => '8b4513ff', 'salmon' => 'fa8072ff', 'sandybrown' => 'f4a460ff', 'seagreen' => '2e8b57ff', 'seashell' => 'fff5eeff', 'sienna' => 'a0522dff', 'silver' => 'c0c0c0ff', 'skyblue' => '87ceebff', 'slateblue' => '6a5acdff', 'slategray' => '708090ff', 'slategrey' => '708090ff', 'snow' => 'fffafaff', 'springgreen' => '00ff7fff', 'steelblue' => '4682b4ff', 'tan' => 'd2b48cff', 'teal' => '008080ff', 'thistle' => 'd8bfd8ff', 'tomato' => 'ff6347ff', 'turquoise' => '40e0d0ff', 'violet' => 'ee82eeff', 'wheat' => 'f5deb3ff', 'white' => 'ffffffff', 'whitesmoke' => 'f5f5f5ff', 'yellow' => 'ffff00ff', 'yellowgreen' => '9acd32ff')

Methods

addSpotColor()

Add a new spot color or overwrite an existing one with the same name.

public addSpotColor(string $name, Cmyk $color) : mixed
Parameters
$name : string

Full name of the spot color.

$color : Cmyk

CMYK color object

Return values
mixed

extractHexCode()

Extract the hexadecimal code from the input string and add the alpha channel if missing

public extractHexCode(string $hex) : string
Parameters
$hex : string

string containing the hexadecimal color hash (i.e. #RGB, #RGBA, #RRGGBB, #RRGGBBAA)

Tags
throws
Exception

if the hash is not found or has an invalid format

Return values
string

the hash code (e.g.: '40e0d0')

getClosestWebColor()

Get the name of the closest web color

public getClosestWebColor(array<string|int, mixed> $col) : string
Parameters
$col : array<string|int, mixed>

Color as RGB array (keys: 'red', 'green', 'blue')

Return values
string

getColorObj()

Parse the input color string and return the correspondent color Object

public getColorObj(string $color) : Model
Parameters
$color : string

String containing web color definition

Tags
throws
Exception

in case of error

Return values
Model

or null in case of transparent color

getColorObject()

Returns a color object from an HTML, CSS or Spot color representation.

public getColorObject(string $color) : object
Parameters
$color : string

HTML, CSS or Spot color to parse

Return values
object

or null in case of error or if the color is not found

getHexFromName()

Get the color hexadecimal hash code from name

public getHexFromName(string $name) : string
Parameters
$name : string

Name of the color to search (e.g.: 'turquoise')

Tags
throws
Exception

if the color is not found

Return values
string

color hexadecimal code (e.g.: '40e0d0ff')

getJsColorString()

Convert color to javascript string

public getJsColorString(string|object $color) : string
Parameters
$color : string|object

color name or color object

Return values
string

getJsMap()

Return the Js color array of names

public getJsMap() : array<string|int, mixed>
Return values
array<string|int, mixed>

getMap()

Get the color map (name => hexhash)

public getMap() : array<string|int, mixed>
Return values
array<string|int, mixed>

getNameFromHex()

Get the color name code from hexadecimal hash

public getNameFromHex(string $hex) : string
Parameters
$hex : string

hexadecimal color hash (i.e. #RRGGBBAA)

Tags
throws
Exception

if the color is not found

Return values
string

color name

getPdfColor()

Get the color components format used in PDF documents NOTE: the alpha channel is omitted

public getPdfColor(string $color[, bool $stroke = false ][, float $tint = 1 ]) : string
Parameters
$color : string

HTML, CSS or Spot color to parse

$stroke : bool = false

True for stroking (lines, drawing) and false for non-stroking (text and area filling).

$tint : float = 1

Intensity of the color (from 0 to 1; 1 = full intensity).

Return values
string

getPdfRgbComponents()

Get the RGB color components format used in PDF documents

public getPdfRgbComponents(string $color) : string
Parameters
$color : string

HTML, CSS or Spot color to parse

Return values
string

getPdfSpotObjects()

Returns the PDF command to output Spot color objects.

public getPdfSpotObjects(int &$pon) : string
Parameters
$pon : int

Current PDF object number

Return values
string

PDF command

getPdfSpotResources()

Returns the PDF command to output Spot color resources.

public getPdfSpotResources() : string
Return values
string

PDF command

getRgbObjFromHex()

Get the RGB color object from hexadecimal hash

public getRgbObjFromHex(string $hex) : array<string|int, mixed>
Parameters
$hex : string

hexadecimal color hash (i.e. #RGB, #RGBA, #RRGGBB, #RRGGBBAA)

Tags
throws
Exception

if the color is not found

Return values
array<string|int, mixed>

with keys ('red', 'green', 'blue', 'alpha')

getRgbObjFromName()

Get the RGB color object from color name

public getRgbObjFromName(string $name) : Rgb
Parameters
$name : string

Color name

Tags
throws
Exception

if the color is not found

Return values
Rgb

object

getRgbSquareDistance()

Get the square of the distance between 2 RGB points

public getRgbSquareDistance(array<string|int, mixed> $cola, array<string|int, mixed> $colb) : float
Parameters
$cola : array<string|int, mixed>

First color as RGB array

$colb : array<string|int, mixed>

Second color as RGB array

Return values
float

getSpotColor()

Return the requested spot color data array

public getSpotColor(string $name) : array<string|int, mixed>
Parameters
$name : string

Full name of the spot color.

Tags
throws
Exception

if the color is not found

Return values
array<string|int, mixed>

getSpotColorObj()

Return the requested spot color CMYK object

public getSpotColorObj(string $name) : Cmyk
Parameters
$name : string

Full name of the spot color.

Tags
throws
Exception

if the color is not found

Return values
Cmyk

getSpotColors()

Returns the array of spot colors.

public getSpotColors() : array<string|int, mixed>
Return values
array<string|int, mixed>

Spot colors array.

normalizeSpotColorName()

Return the normalized version of the spot color name

public normalizeSpotColorName(string $name) : string
Parameters
$name : string

Full name of the spot color.

Return values
string

normalizeValue()

Get the normalized integer value from [0..$max] to [0..1]

public normalizeValue(float $value, int $max) : float
Parameters
$value : float

Value to convert

$max : int

Max input value

Return values
float

value [0..1]

getColorObjFromCss()

Get the color object from a CSS color string

protected getColorObjFromCss(string $type, string $color) : Model
Parameters
$type : string

color type: t, g, rgb, rgba, hsl, hsla, cmyk

$color : string

color specification (e.g.: rgb(255,128,64))

Tags
throws
Exception

if the color is not found

Return values
Model

or null for transparency (default)

getColorObjFromJs()

Get the color object from acrobat Javascript syntax

protected getColorObjFromJs(string $color) : Model
Parameters
$color : string

color specification (e.g.: ["RGB",0.1,0.3,1])

Tags
throws
Exception

if the color is not found

Return values
Model

or null for transparent color

getColorObjFromCssCmyk()

Get the color object from a CSS CMYK color string

private getColorObjFromCssCmyk(string $color) : Model
Parameters
$color : string

color specification (e.g.: rgb(255,128,64))

Tags
throws
Exception

if the color is not found

Return values
Model

getColorObjFromCssGray()

Get the color object from a CSS CMYK color string

private getColorObjFromCssGray(string $color) : Model
Parameters
$color : string

color specification (e.g.: rgb(255,128,64))

Tags
throws
Exception

if the color is not found

Return values
Model

getColorObjFromCssHsl()

Get the color object from a CSS CMYK color string

private getColorObjFromCssHsl(string $color) : Model
Parameters
$color : string

color specification (e.g.: rgb(255,128,64))

Tags
throws
Exception

if the color is not found

Return values
Model

getColorObjFromCssRgb()

Get the color object from a CSS CMYK color string

private getColorObjFromCssRgb(string $color) : Model
Parameters
$color : string

color specification (e.g.: rgb(255,128,64))

Tags
throws
Exception

if the color is not found

Return values
Model

getHexArray()

Get the RGB array from hexadecimal hash

private getHexArray(string $hex) : array<string|int, mixed>
Parameters
$hex : string

hexadecimal color hash (i.e. RRGGBBAA)

Return values
array<string|int, mixed>

with keys ('red', 'green', 'blue', 'alpha')

 

© 2004-2021 – Nicola Asuni - Tecnick.com - All rights reserved.
about - disclaimer - privacy