目次
ディスカッションに返信(解決策)
ホームページ バックエンド開発 PHPチュートリアル phpexcelでPDFファイルをエクスポートすると文字化けしてしまう

phpexcelでPDFファイルをエクスポートすると文字化けしてしまう

Jun 23, 2016 pm 01:45 PM

コードのプロセスは、テンプレート ファイル template.xls を読み取ることです。対応するコンテンツを記述し、PDF ファイルをエクスポートします。 template.xls ファイルの内容には、表と日本語のテキストが含まれています。個人的にはフォントがないのが原因だと思うのですが、対処法を教えていただければ幸いです! ! !

require_once 'excel/PHPExcel.php';$objPHPExcel = PHPExcel_IOFactory::load( "template.xls" );$objPHPExcel->setActiveSheetIndex(0);$objWorksheet = $objPHPExcel->getActiveSheet();//写内容$objWorksheet->getCell("C1")->setValue("test");//假如图片$objDrawing = new PHPExcel_Worksheet_Drawing();$objDrawing->setName('stamp');$objDrawing->setDescription("aaaa");$objDrawing->setPath("images/p1.jpg");$objDrawing->setCoordinates('M1');$objDrawing->setOffsetX(25);$objDrawing->setRotation(36);$objDrawing->setHeight(73);$objDrawing->getShadow()->setVisible(true);$objDrawing->getShadow()->setDirection(45);$objDrawing->setWorksheet($objWorksheet);$objWorksheet->setTitle('Simple');ob_end_clean();header('Content-Type: application/pdf');header('Content-Disposition: attachment;filename="detail.pdf"');header('Cache-Control: max-age=0');$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF');$objWriter->save('php://output');exit;
ログイン後にコピー


ディスカッションに返信(解決策)

エクスポートしたPDFファイルの枠線が太く、日本語コンテンツが文字化けしています

コンテンツのテキストはUTF-8でエンコードされていますか?そうでない場合は、iconv???を使用してください。

エンコードの問題はなく、コード化けの問題は解決されています。
簡体字中国語表示の場合は、フォントを arialunicid0-chinese-simplified に設定します
日本語表示の場合は、フォントを arialunicid0-japanese に設定します

皆様のお役に立てば幸いです。
しかし、厚い黒いボックスを表示する問題には解決策がありません~~~

?テキストは UTF-8 エンコードする必要があります??そうでない場合は、iconv???を使用してください。


エンコードの問題はありません。
簡体字中国語表示の場合は、フォントを arialunicid0-chinese-simplified に設定します。
日本語表示の場合は、フォントを arialunicid0-japanese に設定します。

PDF を生成する phpexcel には大きな欠陥があります。Excel に画像がある場合、それらは生成される PDF に保持されないため、これを使用して PDF ファイルを生成するのは最良の解決策ではありません。

phpexcel が PDF を生成するとき、大きな欠陥があります。Excel に画像がある場合、それらは生成された PDF に保持されないため、これを使用して PDF ファイルを生成するのは最良の解決策ではありません。


予定されているコンテンツの多くは変更されておらず、形式要件が複雑であるため、これらのコンテンツと形式はテンプレート xls ファイルに作成されます。この機能には写真は含まれません。

すべてのコンテンツを記述する代わりに、最初にテンプレートをインポートし、テンプレートに基づいてコンテンツを変更し、PDF ファイルとして保存するより良い解決策はありますか?エビさん、解決策をお勧めしてください~~


phpexcel による PDF 生成には大きな欠陥があります。Excel に画像がある場合、それらは生成された PDF に保持されないため、最適な解決策ではありません。 PDF ファイルを生成するにはこれを使用してください。


予定されているコンテンツの多くは変更されておらず、形式要件が複雑であるため、これらのコンテンツと形式はテンプレート xls ファイルに作成されます。この機能には写真は含まれません。

すべてのコンテンツを記述する代わりに、最初にテンプレートをインポートし、テンプレートに基づいてコンテンツを変更し、PDF ファイルとして保存するより良い解決策はありますか?エビさん、解決策をお勧めしてください~~

上記のコード解決策に従うだけで、セルに動的に書き込まれた画像を PDF に保持できます



phpexcel の pdf 生成には大きな欠陥があります: Excel画像がある場合、それらは生成された PDF には保持されないため、これを使用して PDF ファイルを生成することは最適な解決策ではありません。


予定されているコンテンツの多くは変更されておらず、形式要件が複雑であるため、これらのコンテンツと形式はテンプレート xls ファイルに作成されます。この機能には写真は含まれません。

すべてのコンテンツを記述する代わりに、最初にテンプレートをインポートし、テンプレートに基づいてコンテンツを変更し、PDF ファイルとして保存するより良い解決策はありますか? Da Xia は解決策をお勧めします~~

上記のコード解決策に従ってください。セルに動的に書き込まれた画像は PDF に保持されます

ただし、表示形式の問題が発生したかどうかはわかりません。ちょっと、写真をアップロードします。

下の画像は Excel テンプレート ファイルです


下の画像は生成された PDF ファイルです

生成された PDF でテストを行いました。セル 境界線のサポートもあまり良くありません。コード レベルでの特定の理由は、おそらくこれが欠陥の 1 つである可能性があります。

個人的には、PDF の処理に使用すると、自転車を車と同じ速度で運転するようなものだと感じます。 結局のところ、これは専門ではなく、Excel の操作が専門です

個人的には、pdf を処理するために使用しているように感じます。これは、自転車を車と同じ速度で運転しているようなものです。結局のところ、これは専門ではなく、エクセルの操作です


片付けてくれてありがとう。疑問^_^
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

11ベストPHP URLショートナースクリプト(無料およびプレミアム) 11ベストPHP URLショートナースクリプト(無料およびプレミアム) Mar 03, 2025 am 10:49 AM

11ベストPHP URLショートナースクリプト(無料およびプレミアム)

Laravelでフラッシュセッションデータを使用します Laravelでフラッシュセッションデータを使用します Mar 12, 2025 pm 05:08 PM

Laravelでフラッシュセッションデータを使用します

LaravelのバックエンドでReactアプリを構築する:パート2、React LaravelのバックエンドでReactアプリを構築する:パート2、React Mar 04, 2025 am 09:33 AM

LaravelのバックエンドでReactアプリを構築する:パート2、React

Laravelテストでの簡略化されたHTTP応答のモッキング Laravelテストでの簡略化されたHTTP応答のモッキング Mar 12, 2025 pm 05:09 PM

Laravelテストでの簡略化されたHTTP応答のモッキング

PHPのカール:REST APIでPHPカール拡張機能を使用する方法 PHPのカール:REST APIでPHPカール拡張機能を使用する方法 Mar 14, 2025 am 11:42 AM

PHPのカール:REST APIでPHPカール拡張機能を使用する方法

Codecanyonで12の最高のPHPチャットスクリプト Codecanyonで12の最高のPHPチャットスクリプト Mar 13, 2025 pm 12:08 PM

Codecanyonで12の最高のPHPチャットスクリプト

Laravelの通知 Laravelの通知 Mar 04, 2025 am 09:22 AM

Laravelの通知

2025 PHP状況調査の発表 2025 PHP状況調査の発表 Mar 03, 2025 pm 04:20 PM

2025 PHP状況調査の発表

See all articles