Home Backend Development PHP Tutorial 使用PHP创建和修改PDF文档_PHP

使用PHP创建和修改PDF文档_PHP

Jun 01, 2016 pm 12:21 PM

PDF

PDF全称Portable Document Format,译为可移植文档格式,是Adobe公司推出的便携文档格式。PDF具有与操作系统无关的特性,这一性能使它成为在Internet上进行电子文档发行和数字化信息传播的理想文档格式。今天我们来讨论如何使用PHP创建PDF文档,以及使用PHP修改PDF。

要想在PHP中使用PDF文档,我们需要用到TCPDF包,一个PHP用来读取PDF的类。

PHP创建PDF文档

你可以从下面给出的链接下载TCPDF包。

TCPDF - PHP class for PDF:http://sourceforge.net/projects/tcpdf/files/

这是一个免费且易用的插件包,下面我们给出一些示例来演示如何使用TCPDF包。

示例一:使用PHP生成一个简单的PDF文档

以下为引用的内容:

  • require_once('../config/lang/eng.php');  
  • require_once('../tcpdf.php');  
  •  
  • // create new PDF document  
  • $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);   
  •  
  • // set document information  
  • $pdf->SetCreator(PDF_CREATOR);  
  • $pdf->SetAuthor('Nicola Asuni');  
  • $pdf->SetTitle('TCPDF Example 002');  
  • $pdf->SetSubject('TCPDF Tutorial');  
  • $pdf->SetKeywords('TCPDF, PDF, example, test, guide');  
  •  
  • // remove default header/footer  
  • $pdf->setPrintHeader(false);  
  • $pdf->setPrintFooter(false);  
  •  
  • // set default monospaced font  
  • $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);  
  •  
  • //set margins  
  • $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);  
  •  
  • //set auto page breaks  
  • $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);  
  •  
  • //set image scale factor  
  • $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);   
  •  
  • //set some language-dependent strings  
  • $pdf->setLanguageArray($l);   
  •  
  • // ---------------------------------------------------------  
  •  
  • // set font  
  • $pdf->SetFont('times''BI', 20);  
  •  
  • // add a page  
  • $pdf->AddPage();  
  •  
  • // print a line using Cell()  
  • $pdf->Cell(0, 10, 'Example 002', 1, 1, 'C');  
  •  
  • // ---------------------------------------------------------  
  •  
  • //Close and output PDF document  
  • $pdf->Output('example_002.pdf''I');  
  • ?> 
  • 使用PHP修改PDF文档

    下面我们讨论如何使用PHP修改PDF文档。假设我们需要将一张图片通过PHP程序加入到PDF中,示例代码如下:

    示例二:使用PHP在PDF中增加一张图片

    以下为引用的内容:

  • require_once('../config/lang/eng.php');  
  • require_once('../tcpdf.php');  
  •  
  • // create new PDF document  
  • $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);   
  •  
  • // set document information  
  • $pdf->SetCreator(PDF_CREATOR);  
  • $pdf->SetAuthor('Nicola Asuni');  
  • $pdf->SetTitle('TCPDF Example 009');  
  • $pdf->SetSubject('TCPDF Tutorial');  
  • $pdf->SetKeywords('TCPDF, PDF, example, test, guide');  
  •  
  • // set default header data  
  • $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);  
  •  
  • // set header and footer fonts  
  • $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));  
  • $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));  
  •  
  • // set default monospaced font  
  • $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);  
  •  
  • //set margins  
  • $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);  
  • $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);  
  • $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);  
  •  
  • //set auto page breaks  
  • $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);  
  •  
  • //set image scale factor  
  • $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);   
  •  
  • //set some language-dependent strings  
  • $pdf->setLanguageArray($l);   
  •  
  • // ---------------------------------------------------------  
  •  
  • // add a page  
  • $pdf->AddPage();  
  •  
  • // set JPEG quality  
  • $pdf->setJPEGQuality(75);  
  •  
  • // Image example  
  • $pdf->Image('../images/image_demo.jpg', 50, 50, 100, 150, '''http://www.tcpdf.org''', true, 150);  
  •  
  • // ---------------------------------------------------------  
  •  
  • //Close and output PDF document  
  • $pdf->Output('example_009.pdf''I');  
  • ?> 
  • 更多关于TCPDF - PHP class for PDF的示例可以参考:

    http://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf_examples

    同时,你也可以使用TCPDF的基础属性进行PDF文档的管理。如果你想自己开发一个PHP的PDF文档类,可以参考PHP文档中关于PDF的一些函数介绍:http://www.php.net/manual/en/ref.pdf.php

    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-

    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

    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.

    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