获取PhpExcel单元格背景颜色(Get the cell background color in

2019-09-21 15:55发布

我在我的项目中使用Excel5。 我已经尝试了以下代码:

$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getStartColor()->getARGB();

$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getEndColor()->getARGB();

但这些代码返回错误的颜色。 该getStartColor()总是返回FFFFFFFFFF000000getEndColor()而不是红色。

我不知道我是什么失踪。 任何一个可以帮助我搞清楚了这一点?

Answer 1:

setReadDataOnly(TRUE)表示只读从细胞中的数据 ,但没有一个造型......和背景颜色造型的读者会忽略背景颜色时,它加载文件...如果填充风格不是的一部分加载,然后调用$ objPHPExcel-> getActiveSheet() - >对getStyle( 'A1') - > getFill()将返回默认填充样式和颜色。

负载setReadDataOnly(FALSE)的文件,你会发现它的工作原理

编辑

这是远远超出PHPExcel的范围....一切都是通过DDE人口,包括大多数的造型,所以底层填充颜色为纯(由PHPExcel getFill颜色调用返回),直到外部可执行TOS.exe填充数据并相应地设置样式。 在这里你唯一的选择就是让工作簿在MS Excel本身正在执行使用COM。



Answer 2:

你的第二个代码:

$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getEndColor()->getARGB();

作品,它只是返回十六进制颜色代码(FF0000)。

RGB =红色蓝色绿色= XX xx月xx

FF0000居然是红色的。



文章来源: Get the cell background color in PhpExcel
标签: php phpexcel