Table of Contents
回复讨论(解决方案)
Home Backend Development PHP Tutorial phpexcel 导出pdf文件乱码

phpexcel 导出pdf文件乱码

Jun 23, 2016 pm 01:45 PM

代码过程是,读取模板文件template.xls。写入对应内容,导出pdf文件。template.xls文件内容带有表格和日文。 个人认为是没有字体的原因,但是如何对应,望大虾告知!!!

1

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;

Copy after login


回复讨论(解决方案)

导出的pdf文件,边框很粗,日文内容是乱码

?定?容文字是UTF-8编码??如果不是就要用iconv????。

没有编码的问题,乱码问题解决了。
简体中文显示,字体设成arialunicid0-chinese-simplified
日文显示,字体设成arialunicid0-japanese

希望对大家有用。
不过为什么显示粗黑框的问题还没有解决方法~~~

?定?容文字是UTF-8编码??如果不是就要用iconv????。


没有编码的问题。
简体中文显示,字体设成arialunicid0-chinese-simplified
日文显示,字体设成arialunicid0-japanese   即可。

phpexcel生成pdf有一个重大的缺陷: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文件呢?大虾推荐一个方案吧~~

按你上面的代码方案就可以了,动态写入单元格的图片可以保留到pdf里面

但是,显示格式的问题,不知道遇没遇到过,一会儿,我上传一张图片。

下图是excel模板文件


下面的图,是生成的pdf文件,为什么格式与excel模板文件不一致

我用2.1版本的做了一下测试,所生成的pdf里,对单元格边框的支持也不是很好,莫名其妙的会有一些加粗的边框,具体的代码层面的原因还没有好好分析;可能这就是它的一个缺陷之处吧。

个人感觉你用它来处理pdf,就好比你要用自行车开出汽车一样的时速来,毕竟这不是它的专业,它的专业就是对excel的操作

个人感觉你用它来处理pdf,就好比你要用自行车开出汽车一样的时速来,毕竟这不是它的专业,它的专业就是对excel的操作


谢谢高手解惑  ^_^
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Working with Flash Session Data in Laravel Working with Flash Session Data in Laravel Mar 12, 2025 pm 05:08 PM

Laravel simplifies handling temporary session data using its intuitive flash methods. This is perfect for displaying brief messages, alerts, or notifications within your application. Data persists only for the subsequent request by default: $request-

cURL in PHP: How to Use the PHP cURL Extension in REST APIs cURL in PHP: How to Use the PHP cURL Extension in REST APIs Mar 14, 2025 am 11:42 AM

The PHP Client URL (cURL) extension is a powerful tool for developers, enabling seamless interaction with remote servers and REST APIs. By leveraging libcurl, a well-respected multi-protocol file transfer library, PHP cURL facilitates efficient execution of various network protocols, including HTTP, HTTPS, and FTP. This extension offers granular control over HTTP requests, supports multiple concurrent operations, and provides built-in security features.

PHP Logging: Best Practices for PHP Log Analysis PHP Logging: Best Practices for PHP Log Analysis Mar 10, 2025 pm 02:32 PM

PHP logging is essential for monitoring and debugging web applications, as well as capturing critical events, errors, and runtime behavior. It provides valuable insights into system performance, helps identify issues, and supports faster troubleshoot

Simplified HTTP Response Mocking in Laravel Tests Simplified HTTP Response Mocking in Laravel Tests Mar 12, 2025 pm 05:09 PM

Laravel provides concise HTTP response simulation syntax, simplifying HTTP interaction testing. This approach significantly reduces code redundancy while making your test simulation more intuitive. The basic implementation provides a variety of response type shortcuts: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

12 Best PHP Chat Scripts on CodeCanyon 12 Best PHP Chat Scripts on CodeCanyon Mar 13, 2025 pm 12:08 PM

Do you want to provide real-time, instant solutions to your customers' most pressing problems? Live chat lets you have real-time conversations with customers and resolve their problems instantly. It allows you to provide faster service to your custom

Explain the concept of late static binding in PHP. Explain the concept of late static binding in PHP. Mar 21, 2025 pm 01:33 PM

Article discusses late static binding (LSB) in PHP, introduced in PHP 5.3, allowing runtime resolution of static method calls for more flexible inheritance.Main issue: LSB vs. traditional polymorphism; LSB's practical applications and potential perfo

Customizing/Extending Frameworks: How to add custom functionality. Customizing/Extending Frameworks: How to add custom functionality. Mar 28, 2025 pm 05:12 PM

The article discusses adding custom functionality to frameworks, focusing on understanding architecture, identifying extension points, and best practices for integration and debugging.

See all articles