2

私は最後のPHPExcelバージョン(7.7だと思います)を使用しています。私は自分のエクセルを生成することができます。tcpdf で pdf バージョンを生成する必要があります。ここでは選択できません。

しかし、結果は醜く、特大です。

ここに画像の説明を入力

2012-000012 の巨大なフォント サイズは、Excel では 11 です。

ご覧のとおり、ここには 2 つの問題があります。ドキュメントが大きすぎて、境界線がぎこちない。

特大の側面を取り除くために、私はこれを試しました:

$this->printer->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);    

この :

 $this->printer->getActiveSheet()->getPageSetup()->setScale(50);

スケールは 50 に設定されていますが、出力には影響しません。では、どうすればこれら2つの問題を取り除くことができますか?

これが私のExcelの画面です 自動改行PhpExcelを設定するには? .

アップデート :

cellspacing を 0 に設定すると、ボーダーはほぼ期待どおりに処理されますが、サイズが大きすぎることが原因である可能性があります。

見る :

ここに画像の説明を入力

それを 0 に設定するためのオピオンまたはメソッド呼び出しはありますか?

グリッド線を表示しないので、これは writer\html.php 行 915 にあります。

4

2 に答える 2

1

この問題を解決するために、2 つの操作を行います。

ステップ 1 は、PHPexcel オブジェクトの向きを設定することです

$objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);

ステップ 2 - PHPExcel オブジェクトに別の用紙サイズを設定します。

$objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A2_PAPER);

次に、PHPExcel オブジェクトをオブジェクト ライターに変換します。

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF');

$objWriter->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);

$objWriter->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A2_PAPER);

これは私にとってはうまくいきます。また、PHPExcelオブジェクト内のフォントサイズを変更しました-ヘッダーの場合と同じです

$objPHPExcel->setActiveSheetIndex($lastsheet)->getStyle("A1:K3")->applyFromArray(
         array(
            'font'  => array(
                'size'  => 8
            )
         )
        );

残りのデータについては、次のようになります。

$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial')->setSize(8);

今、tcPDFが生成する醜い境界線と、ファイルの最後に1行追加しようとしています...

于 2016-05-24T09:31:55.810 に答える