background image

//

 

这里需要注意,在 PHPExcel_Style_NumberFormat 

 

类的 const 变量定义的

//各种自定义格式化方式中,其它类型都可以正常使用,但当 setFormatCode
//

 

为 FORMAT_NUMBER 的时候,实际出来的效果被没有把格式设置为"0"。需要

//

 

修改 PHPExcel_Writer_Excel5_Format 

 

类源代码中的 getXf($style) 方法,

//

 

在 if ($this->_BIFF_version == 0x0500) { (第 363 行附近)前面增加一

//行代码: 
//if($ifmt === '0') $ifmt = 1;
//
//设置格式为 PHPExcel_Style_NumberFormat::FORMAT_NUMBER,避免某些大数字
//

 

被使用科学记数方式显示,配合下面的 setAutoSize 方法可以让每一行的内容

//都按原始内容全部显示出来。

$objStyleA5

->getNumberFormat()
->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER);

//设置字体

$objFontA5

 = 

$objStyleA5

->getFont();

$objFontA5

->setName('Courier New');

$objFontA5

->setSize(10);

$objFontA5

->setBold(true);

$objFontA5

->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);

$objFontA5

->getColor()->setARGB('FF999999');

//设置对齐方式

$objAlignA5

 = 

$objStyleA5

->getAlignment();

$objAlignA5

->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);

$objAlignA5

->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);

//设置边框

$objBorderA5

 = 

$objStyleA5

->getBorders();

$objBorderA5

->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

$objBorderA5

->getTop()->getColor()->setARGB('FFFF0000'); 

// color

$objBorderA5

->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

$objBorderA5

->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

$objBorderA5

->getRight()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

//设置填充颜色

$objFillA5

 = 

$objStyleA5

->getFill();

$objFillA5

->setFillType(PHPExcel_Style_Fill::FILL_SOLID);

$objFillA5

->getStartColor()->setARGB('FFEEEEEE');

//从指定的单元格复制样式信息.

$objActSheet

->duplicateStyle(

$objStyleA5

, 'B1:C22');

//*************************************
//添加图片

$objDrawing

 = 

new

 PHPExcel_Worksheet_Drawing();