2016-04-12 8 views
0

私はcodeigniterで.xlx、.xlxsファイルを生成するためにPHPExcelを使用しています。ここでは、.xlxファイルを生成するためにPHPExcelライブラリに渡しているhtmlビューのスクリーンショットを示します。PHPExcelスタイルのテキストを中心に

enter image description here

そして、ここで出力されます。 enter image description here

このように、テキストの字下げとスタイルは削除されています。ここで私のコードは、出力を生成するために使用されます。

public function html_to_excel_download($filename, $data=null){ 
    if ($data != null) { 
    // proper encoding of data UTF-8 for unicode characters 
    $data = chr(255).chr(254).iconv("UTF-8", "UTF-16LE//IGNORE", $data); 

    // Put the data into a temporary file 
    $tmpfile = time().'.html'; 
    file_put_contents($tmpfile, $data); 

    // Read the contents of the file into PHPExcel Reader class 
    $reader = new PHPExcel_Reader_HTML; 
    $content = $reader->load($tmpfile); 


    // Excel Writer 
    $objWriter = PHPExcel_IOFactory::createWriter($content, 'Excel2007'); 


    // Download File 
    header('Content-Type: application/vnd.ms-excel'); 
    header('Content-Disposition: attachment;filename="'.$filename.'"'); 
    header('Cache-Control: max-age=0'); 
    $objWriter->save('php://output'); 
    unlink($tmpfile); 

    exit(); 
} 

} 

タイトルテキストをどのようにインデントすることができますか?

答えて

0
// single column A, setting e.g. horizontal alignment 
$objWorksheet->getStyle('A')->getAlignment()->setHorizontal(...); 

// range of columns A to K 
$objWorksheet->getStyle('A:K')->getAlignment()->setHorizontal(...); 

、あなたがそれを行うための別の方法を試すことが HERE

+0

のおかげで、このライブラリーに関するすべての指示を見つけることはかなり確信して、私は私にいくつかの変更を加えましたコードを作成し、新しいphpexcelオブジェクトを作成した後でスタイリングを試みました。 '; $ excel = new PHPExcel(); $ worksheet = $ excel-> getActiveSheet(); //スタイルシート$ worksheet-> getStyle( "A") - > getFill() - > getStartColor() - > setRGB( "FFFF00"); 'しかし、まだ動作していません。私がどこにいなくて教えてくれますか? –

1

フォーマット・シートについては、このサイト上で完全なマニュアルを参照してくださいすることができます... ステップ1)の$ this - > excel-> setActiveSheetIndex」の定義(0); "機能

ステップ2の上部にある)スタイルの配列を定義し、ステップ3、のようなExcelオブジェクトと変数として

$styleArray = array(
     'font' => array(
      'bold' => true, 
      'color' => array('rgb' => '2F4F4F') 
     ), 
     'alignment' => array(
      'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER, 
     ) 
    ); 

を追加してください)$this->excel->getActiveSheet()->getStyle('A3:Z3')->applyFromArray($styleArray);

注:あなたがでgetStyleを使用する必要があります()内の特定のスタイルを列/行に適用する

+0

多くのものがあります。 –

0

この問題を解決するには、json配列を使用しない方法が2つあります。

$doc->getActiveSheet()->getStyle('A1:H1')->getAlignment() 
    ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 

ここで、$ doc = new PHPExcel();またはPHPExcelオブジェクト

は、第二は、JSON配列as described here

を使用しているIあなたが応答のためにthe official documentation

関連する問題