1. Einführung
  2. Tutorial über
    Formatierungen
  3. Workbook::close
  4. Workbook::&addWorksheet
  5. Workbook::&addFormat
  6. Workbook::&setTempDir
  7. Workbook::setCustomColor
  8. Worksheet::getName
  9. Worksheet::
    setInputEncoding
  10. Worksheet::select
  11. Worksheet::activate
  12. Worksheet::setFirstSheet
  13. Worksheet::protect
  14. Worksheet::setColumn
  15. Worksheet::setSelection
  16. Worksheet::freezePanes
  17. Worksheet::thawPanes
  18. Worksheet::setPortrait
  19. Worksheet::setLandscape
  20. Worksheet::setPaper
  21. Worksheet::setHeader
  22. Worksheet::setFooter
  23. Worksheet::
    centerHorizontally
  24. Worksheet::
    centerVertically
  25. Worksheet::setMargins
  26. Worksheet::setMargins_LR
  27. Worksheet::setMargins_TB
  28. Worksheet::setMarginLeft
  29. Worksheet::
    setMarginRight
  30. Worksheet::setMarginTop
  31. Worksheet::
    setMarginBottom
  32. Worksheet::repeatRows
  33. Worksheet::repeatColumns
  34. Worksheet::printArea
  35. Worksheet::hideGridlines
  36. Worksheet::
    printRowColHeaders
  37. Worksheet::fitToPages
  38. Worksheet::
    setHPagebreaks
  39. Worksheet::
    setVPagebreaks
  40. Worksheet::setZoom
  41. Worksheet::setPrintScale
  42. Worksheet::write
  43. Worksheet::writeNumber
  44. Worksheet::writeString
  45. Worksheet::writeNote
  46. Worksheet::writeBlank
  47. Worksheet::writeFormula
  48. Worksheet::writeUrl
  49. Worksheet::setRow
  50. Worksheet::mergeCells
  51. Worksheet::insertBitmap
  52. Worksheet::setOutline
  53. Spreadsheet_Excel_Writer
  54. send
  55. rowcolToCell
  56. Format::setAlign
  57. Format::setVAlign
  58. Format::setHAlign
  59. Format::setMerge
  60. Format::setBold
  61. Format::setBottom
  62. Format::setTop
  63. Format::setLeft
  64. Format::setRight
  65. Format::setBorder
  66. Format::setBorderColor
  67. Format::setBottomColor
  68. Format::setTopColor
  69. Format::setLeftColor
  70. Format::setRightColor
  71. Format::setFgColor
  72. Format::setBgColor
  73. Format::setColor
  74. Format::setPattern
  75. Format::setUnderline
  76. Format::setItalic
  77. Format::setSize
  78. Format::setTextWrap
  79. Format::setTextRotation
  80. Format::setNumFormat
  81. Format::setStrikeOut
  82. Format::setOutLine
  83. Format::setShadow
  84. Format::setScript
  85. Format::setFontFamily

Format::setFgColor

Format::setFgColor – Sets the cell's foreground color

Synopsis

require_once "Spreadsheet/Excel/Writer.php";

void Format::setFgColor ( mixed $color )

Description

Sets the cell's "foreground color".

The term "foreground color" is misleading. Here, "foreground" means the top layer of a cell's background. To set the color of a cell's contents, use the setColor() method.

The color actually seen may depend on the pattern and background color being used.

The example entitled "How background and foreground colors interact with patterns" is very helpful.

Parameter

  • mixed $color - either a string (like 'blue'), or an integer (range is [8...63]).

    See the "Using colors" section, below, for more information.

Using colors

The following colors can be defined by name: black, white, red, green, blue, yellow, magenta and cyan.

To learn what the other indexed colors look like, read Color Palette and the 56 Excel ColorIndex Colors. Beware that the color indexes listed there are displaced by 1 with respect to those used by Spreadsheet_Excel_Writer.

If the predifined colors don't meet your requirements, use the setCustomColor() method.

Note

This function can not be called statically.

Example

Using setFgColor()

<?php
require_once 'Spreadsheet/Excel/Writer.php';

$workbook = new Spreadsheet_Excel_Writer();
$worksheet =& $workbook->addWorksheet();

// "regular" green
$format_regular_green =& $workbook->addFormat();
$format_regular_green->setFgColor('green');

// "special" green
$format_special_green =& $workbook->addFormat();
$format_special_green->setFgColor(11);

// our green (overwriting color on index 12)
$workbook->setCustomColor(121020010);
$format_our_green =& $workbook->addFormat();
$format_our_green->setFgColor(12);

$worksheet->setColumn(0030);

$worksheet->write(00"Regular green"$format_regular_green);
$worksheet->write(10"Special green (index 11)"$format_special_green);
$worksheet->write(20"Our green"$format_our_green);

$workbook->send('setFgColor.xls');
$workbook->close();
?>
Sets the cell's right border color (Previous) Sets the cell's background color (Next)
Last updated: Sun, 19 Dec 2010 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

Note by: mick@vandermostvanspijk.nl
Use the following script to generate an Excel file with all the colours and their indexes, so you don't have to fiddle it out yourself.

<?php
/**
 * excel_colours.php
 * 
 * Generate Excel file with the available colours and their index number
 */
require_once 'Spreadsheet/Excel/Writer.php';
$file "../../tmp/colours.xls";
$workbook = new Spreadsheet_Excel_Writer($file);
$worksheet =& $workbook->addWorksheet("Sheet1");

$worksheet->write(00"PHP PEAR Spreadsheet Excel Write Colour Index");
$offset 2;
for (
$i 0$i <= 63$i++) {
    
$color =& $workbook->addFormat(); 
    
$color->setFgColor($i);
    
$worksheet->write($i+$offset0$i$color);
}

$workbook->close();

header("Content-type:application/vnd.ms-excel");
header('Content-Disposition: attachment; filename="'.basename($file).'"');
readfile($file);
?>

Note by: gwinkless
Further to my previous note, this behaviour is actually because of bug 12062 - http://pear.php.net/bugs/bug.php?id=12062 - in fact using colors 0-7 will actually map to colors 8-15, so with the default 0.9.1beta custom colors should only start at 16.
Note by: pear@defgeoff.co.uk
custom color is listed as starting at 8, but if you change index 8 it appears to affect the color "white". Index seems to work fine if you start at 9.