BIFF8.php 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?php
  2. namespace PhpOffice\PhpSpreadsheet\Reader\Xls\Color;
  3. class BIFF8
  4. {
  5. protected static $map = [
  6. 0x08 => '000000',
  7. 0x09 => 'FFFFFF',
  8. 0x0A => 'FF0000',
  9. 0x0B => '00FF00',
  10. 0x0C => '0000FF',
  11. 0x0D => 'FFFF00',
  12. 0x0E => 'FF00FF',
  13. 0x0F => '00FFFF',
  14. 0x10 => '800000',
  15. 0x11 => '008000',
  16. 0x12 => '000080',
  17. 0x13 => '808000',
  18. 0x14 => '800080',
  19. 0x15 => '008080',
  20. 0x16 => 'C0C0C0',
  21. 0x17 => '808080',
  22. 0x18 => '9999FF',
  23. 0x19 => '993366',
  24. 0x1A => 'FFFFCC',
  25. 0x1B => 'CCFFFF',
  26. 0x1C => '660066',
  27. 0x1D => 'FF8080',
  28. 0x1E => '0066CC',
  29. 0x1F => 'CCCCFF',
  30. 0x20 => '000080',
  31. 0x21 => 'FF00FF',
  32. 0x22 => 'FFFF00',
  33. 0x23 => '00FFFF',
  34. 0x24 => '800080',
  35. 0x25 => '800000',
  36. 0x26 => '008080',
  37. 0x27 => '0000FF',
  38. 0x28 => '00CCFF',
  39. 0x29 => 'CCFFFF',
  40. 0x2A => 'CCFFCC',
  41. 0x2B => 'FFFF99',
  42. 0x2C => '99CCFF',
  43. 0x2D => 'FF99CC',
  44. 0x2E => 'CC99FF',
  45. 0x2F => 'FFCC99',
  46. 0x30 => '3366FF',
  47. 0x31 => '33CCCC',
  48. 0x32 => '99CC00',
  49. 0x33 => 'FFCC00',
  50. 0x34 => 'FF9900',
  51. 0x35 => 'FF6600',
  52. 0x36 => '666699',
  53. 0x37 => '969696',
  54. 0x38 => '003366',
  55. 0x39 => '339966',
  56. 0x3A => '003300',
  57. 0x3B => '333300',
  58. 0x3C => '993300',
  59. 0x3D => '993366',
  60. 0x3E => '333399',
  61. 0x3F => '333333',
  62. ];
  63. /**
  64. * Map color array from BIFF8 built-in color index.
  65. *
  66. * @param int $color
  67. *
  68. * @return array
  69. */
  70. public static function lookup($color)
  71. {
  72. if (isset(self::$map[$color])) {
  73. return ['rgb' => self::$map[$color]];
  74. }
  75. return ['rgb' => '000000'];
  76. }
  77. }