搜索
首页后端开发php教程 PHP判断字符串编码是不是utf8并转换的方法

PHP判断字符串编码是否utf8并转换的方法
为了能够使PHP具有操作PDF格式文档的能力,你必须先在你的系统里安装PDFLib扩展库,如果你使用的是Linux系统,你可以从 http://www.pdflib.com/pdflib/index.html下载一个并进行编译,如果你使用的是Windows系统,那就更简单了,只需要下载一个编译好的PDFLib库,然后在PHP的配置文件里把相应的行的注释去掉即可。


extension=php_pdf.dll

如果是动态装载,也可以是参照下面的命令:


dl("php_pdf.dll");



  此外,你还必须有一个Adobe Acrobat PDF阅读器,用来浏览PDF格式,如果你没有,你可以从 http://www.adobe.com/免费下载。

一旦你做好了前期准备,就可以创建PDF文件了,下面就是一个简单的例子:



// 创建一个新的PDF文档句柄 

$pdf = PDF_new(); 


// 打开一个文件 

PDF_open_file($pdf, "PDFTest.pdf"); 


// 开始一个新页面(A4) 

PDF_begin_page($pdf, 595, 842); 


// 得到并使用字体对象 

$arial = PDF_findfont($pdf, "Arial", "host", 1); 

PDF_setfont($pdf, $arial, 10); 


// 输出文字 

PDF_show_xy($pdf, "This is an exam of PDF Documents, It is a good Lib,",50, 750); 

PDF_show_xy($pdf, "If you like,please try yourself!", 50, 730); 


// 结束一页 

PDF_end_page($pdf); 


// 关闭并保存文件 

PDF_close($pdf); 
?>


  然后保存成PHP文件,在浏览器里进行浏览,PHP就会执行上面的代码,它产生一个新的PDF文件,并保存到指定的位置。

  现在我们分析一下什么的代码,要使用PHP创建PDF文件,有四个步骤:1,创建文档句柄;2,注册文档的字体和颜色;3,用PDFLib提供的函数向文件句柄写文字或画图;4,保存文档。

首先,创建PDF文档句柄,语法如下:


$pdf = PDF_new();

  这个任务是由PDF_new()函数完成的,它返回一个PDF文档的句柄,这个句柄将会被后续的所有操作使用。

  下一步要做的,就是给PDF文件一个名字,由PDF_open_file()函数完成,它需要先前创建的文件句柄和自定义的文件名做参数:


PDF_open_file($pdf, "PDFTest.pdf");

  一旦我们创建了文档,就可以用PDF_begin_page()函数在其中插入新页面了:


PDF_begin_page($pdf, 595, 842);

  然后用PDF_end_page()结束页面。

  注意这里,在PDF_begin_page()函数里,有另外两个参数,他们分别代表页面尺寸的宽和高,单位是磅(point,1磅等于1/72英寸),或许在这里数学并不是你的强项,PHP还提供了大多数标准页面尺寸,象A4等,上面的例子就是使用A4的尺寸。

  在调用PDF_begin_page()函数和PDF_end_page()函数之间的代码是向PDF文档了写内容的,内容可以是文字、图象以及几何图形等。例子中只是写了一行文字,先得到一个字体,然后把文字写到文档里。通过PDF_findfont()PDF_setfont()函数选择和注册字体是很方便的,PDF_findfont()函数预备了一种文档中要使用的字体,需要的参数有字体的名字,使用的编码,字体是否要嵌入到PDF文件中。PDF_findfont()函数返回一个字体对象,它将会在PDF_setfont()函数里使用。


$arial = PDF_findfont($pdf, "Arial", "host", 1); 

PDF_setfont($pdf,$arial, 10); 


  一旦我们设定了字体,就可以使用PDF_show_xy()函数向页面中的指定位置写字符串了。


PDF_show_xy($pdf, "This is an exam of PDF Documents, It is a good Lib,",50, 750); 

PDF_show_xy($pdf, "If you like,please try yourself!", 50, 730); 


  PDF_show_xy()函数用来向页面写内容,最后两个参数是要写入的字符串的坐标位置,注意坐标的原点(0,0)是在文档的左下角。一旦文字写完了,页面就可以关闭了PDF_end_page(),当然你也可以写更多的页。所有的页面写完之后,用PDF_close()函数关闭文档,此时文档就回保存到调用PDF_open_file()函数时指定的文件名和路径下,文档句柄随之销毁。

  PDFLib库能做的事情还远不止这些,还可以在页面里加入图象,我们以前面的文件为例,在文字的下面添加一个图象文件,下面的语句实现了添加图象功能:


$image = PDF_open_image_file($pdf, "jpeg", "PDFImageTest.jpg"); 

PDF_place_image($pdf, $image, 50, 650, 0.25); 


  是不是很简单?PDF_open_image_file()函数打开一个图形文件,可以接受的图象类型有:GIF, JPEG, TIFF 和 PNG,该函数返回图象句柄,PDF_place_image()函数利用前面的图象句柄,把图象插入到PDF文档中。注意这里的坐标位置是指图象的左下角,最后一个参数是图象显示时的比例因子,1是与实际大小一样显示,0.5是按原来尺寸的一半显示。

  除了在PDF文档里画出现有的图象以外,PDF模块还提供了许多函数来让我们画出几何图形。比如:直线、圆、长方形等几何图案,下面就是一段画直线的实现方法:

$pdf = PDF_new(); 

PDF_open_file($pdf, "LineExam.pdf"); 

PDF_begin_page($pdf, 595, 842); 

$arial = PDF_findfont($pdf, "Arial", "host", 1); 

PDF_setfont($pdf, $arial, 12); 


// 设定直线的颜色 

PDF_setcolor($pdf, "stroke", "rgb", 0, 0, 0); 


// 在左上角放置一个Logo标识 

$image = PDF_open_image_file($pdf, "jpeg", "logo.jpg"); 

PDF_place_image($pdf, $image, 50, 785, 0.5); 


// 在Logo标识下画出直线 

PDF_moveto($pdf, 20, 780); 

PDF_lineto($pdf, 575, 780); 

PDF_stroke($pdf); 


// 在页面底部画出另外一条直线 

PDF_moveto($pdf, 20,50); 

PDF_lineto($pdf, 575, 50); 

PDF_stroke($pdf); 


// 输出一些文字 

PDF_show_xy($pdf, "Meng's Corporation", 200, 35); 

PDF_end_page($pdf); 

PDF_close($pdf); 

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
如何在 Google Drive 中临时/永久旋转 PDF如何在 Google Drive 中临时/永久旋转 PDFApr 13, 2023 pm 10:46 PM

当您扫描 PDF 文档并将其上传到您的 Google Drive 时,该 PDF 处于颠倒方向或处于从右到左方向的可能性非常高。当然,阅读不在直立位置的文档是一件痛苦的事情。有时,您只需要暂时查看文档,将其关闭并离开。有时,您需要永久更正 PDF 的方向,这样您就可以省去将来再次更正其方向的麻烦。好吧,您终于可以笑到最后了,我们已经为您的需求提供了完美的解决方案。在本文中,我们详细解释了如何轻松地临时和永久更正 Google Drive 中 PDF 的方向。希望你喜欢!Bonus Cookie:

Python 处理 PDF:PyMuPDF 的安装与使用!Python 处理 PDF:PyMuPDF 的安装与使用!Apr 14, 2023 pm 05:46 PM

大家好,我是Python人工智能技术一、PyMuPDF简介1.介绍在介绍PyMuPDF之前,先来了解一下MuPDF,从命名形式中就可以看出,PyMuPDF是MuPDF的Python接口形式。MuPDFMuPDF是一个轻量级的PDF、XPS和电子书查看器。MuPDF由软件库、命令行工具和各种平台的查看器组成。MuPDF中的渲染器专为高质量抗锯齿图形量身定制。它以精确到像素的几分之一内的度量和间距呈现文本,以在屏幕上再现打印页面的外观时获得最高保真度。这个观察器很小,速度很快,但是很完整。它支持多种

在 Windows 上打开 PDF 文件时如何修复 Microsoft Edge 冻结或崩溃在 Windows 上打开 PDF 文件时如何修复 Microsoft Edge 冻结或崩溃Apr 28, 2023 pm 05:46 PM

内置浏览器MicrosoftEdge也是在Windows11/10中打开和查看PDF文件的默认应用程序。如今,人们将PDF文件作为电子邮件附件进行交流和发送是一种常见的做法。要打开和查看这些PDF文件,您需要双击文件,Edge会打开所选PDF文件。但是,有用户报告说,在他们的WindowsPC上尝试打开任何PDF文件时,Edge浏览器会死机或崩溃。一旦浏览器冻结,用户将无法使用浏览器、更改任何选项卡或执行任何其他操作。但是,他们能够打开其他应用程序并毫无问题地使用

怎么用两行Python代码实现pdf转word功能怎么用两行Python代码实现pdf转word功能Apr 28, 2023 pm 06:25 PM

一、安装依赖包pipinstall--indexhttps://pypi.mirrors.ustc.edu.cn/simple/python-office二、pdf转word2.1代码实现importofficeoffice.pdf.pdf2docx(file_path='test.pdf')运行过程如下:[1/4]Openingdocument...[INFO][2/4]Analyzingdocument...[WARNING]'created&

如何修复 PDF 文件无法在 Microsoft Edge 浏览器中打开的问题?如何修复 PDF 文件无法在 Microsoft Edge 浏览器中打开的问题?Apr 22, 2023 pm 12:37 PM

MicrosoftEdge是Windows操作系统附带的内置浏览器。此应用程序也被设置为在Windows中打开PDF文件的默认应用程序。如今,通过电子邮件接收PDF附件很常见。但是,当用户尝试打开PDF附件时,他们注意到Edge浏览器会简单地崩溃或冻结。一旦发生这种情况,用户将无法更改选项卡或采取任何操作。在本文中,让我们看看使用Edge浏览器解决此问题的不同方法。修复1:结束任务并尝试再次打开它。1.按住Windows+X键。2.你会看到弹出一个窗口。按键盘上的T键

PHP怎么在创建PDF文件时设置文件标题PHP怎么在创建PDF文件时设置文件标题Mar 24, 2023 am 09:44 AM

PDF文件标题是一个非常重要的元素,其实就是PDF文件的名称。PDF文件标题可以为用户提供方便,使其能够更好地识别文件,并且能够方便用户进行存储和检索。为了设置PDF文件标题,需要通过PHP程序以下面的方式来操作。

如何在 Mac 上减小 PDF 文件大小如何在 Mac 上减小 PDF 文件大小Apr 30, 2023 pm 04:28 PM

如何使用预览在Mac上减小PDF文件大小在Mac上压缩PDF文件的最简单方法是使用Preview应用程序。Preview是macOS的内置工具,用于查看文档和图像文件。它还包括其他有用的功能,例如降低PDF等文档的质量(以及大小)的能力。在Mac上使用预览减小PDF文件大小:打开Finder并找到您的文件。双击文件以在Preview中打开它。在Preview中,按File>Export。在导出窗口中,从QuartzFilter下拉菜单中选择减小文件大小。确认任何其他

超简单!用 Python 为图片和 PDF 去掉水印超简单!用 Python 为图片和 PDF 去掉水印Apr 12, 2023 pm 11:43 PM

网上下载的 pdf 学习资料有一些会带有水印,非常影响阅读。比如下面的图片就是在 pdf 文件上截取出来的,今天我们就来用Python解决这个问题。安装模块PIL:Python Imaging Library 是 python 上非常强大的图像处理标准库,但是只能支持 python 2.7,于是就有志愿者在 PIL 的基础上创建了支持 python 3的 pillow,并加入了一些新的特性。pip install pillow pymupdf 可以用 python 访问扩展名为*.pdf、

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器