pdf2swf+flexpaper解决pdf在线阅读(类百度文库)
PHP利用openoffice把office转成pdf格式,今天我们将为大家介绍PHP依靠com.sun.star.ServiceManager来转换Word为PDF文档的相关技巧
<?php
set_time_limit(0);
function MakePropertyValue($name, $value, $osm)
{
$oStruct = $osm->Bridge_GetStruct("com.sun.star.beans.PropertyValue");
$oStruct->Name = $name;
$oStruct->Value = $value;
return $oStruct;
}
function word2pdf($doc_url, $output_url)
{
$osm = new COM("com.sun.star.ServiceManager") or die ("请确认OpenOffice.org库是否已经安装.\n");
$args = array(MakePropertyValue("Hidden", true, $osm));
$oDesktop = $osm->createInstance("com.sun.star.frame.Desktop");
$oWriterDoc = $oDesktop->loadComponentFromURL($doc_url, "_blank", 0, $args);
$export_args = array(MakePropertyValue("FilterName", "writer_pdf_Export", $osm));
$oWriterDoc->storeToURL($output_url, $export_args);
$oWriterDoc->close(true);
}
$output_dir = "D:/temp/";
$doc_file = "D:/temps/test.doc";
$pdf_file = "test.pdf";
$output_file = $output_dir . $pdf_file;
$doc_file = "file:///" . $doc_file;
$output_file = "file:///" . $output_file;
word2pdf($doc_file, $output_file);
?>
RarArchive类 解压rar php-zip扩展
<?php
$zip = new ZipArchive();//新建一个对象
/*
$zip->open这个方法第一个参数表示处理的zip文件名。
第二个参数表示处理模式,ZipArchive::OVERWRITE表示如果zip文件存在,
就覆盖掉原来的zip文件。 如果参数使用ZIPARCHIVE::CREATE,
系统就会往原来的zip文件里添加内容。 如果不是为了多次添加内容到zip文件,
建议使用ZipArchive::OVERWRITE。 使用这两个参数,如果zip文件不存在,
系统都会自动新建。 如果对zip文件对象操作成功,$zip->open这个方法会返回TRUE
*/
if ($zip->open('demo.zip', ZipArchive::OVERWRITE) === TRUE) {
/* ZipArchive类中的所有属性*/
echo $zip->status;//Zip Archive 的状态
echo $zip->statusSys;//Zip Archive 的系统状态
echo $zip->numFiles;//压缩包里的文件数
echo $zip->filename;//在文件系统里的文件名,包含绝对路径
echo $zip->comment;//压缩包的注释
////////////////////////////
/* ZipArchive类中的常用方法*/
$zip->addEmptyDir('css');//在zip压缩包中建一个空文件夹,成功时返回 TRUE, 或者在失败时返回 FALSE
$zip->addFile('index.html','in.html');//在zip更目录添加一个文件,并且命名为in.html,第二个参数可以省略
$zip->addFromString('in.html','hello world');//往zip中一个文件中添加内容
$zip->extractTo('/tmp/zip/');//解压文件到/tmp/zip/文件夹下面
$zip->renameName('in.html','index.html');//重新命名zip里面的文件
$zip->setArchiveComment('Do what you love,Love what you do.');//设置压缩包的注释
$zip->getArchiveComment();//获取压缩包的注释
$zip->getFromName('index.html');//获取压缩包文件的内容
$zip->deleteName('index.html');//删除文件
$zip->setPassword('123456');//设置压缩包的密码
$zip->close();//关闭资源句柄
////////////////////////////
}else{
echo '文件打开失败';
}
$zip = new ZipArchive();
$ret = $zip->open('application.zip', ZipArchive::OVERWRITE);
if ($ret !== TRUE) {
printf('Failed with code %d', $ret);
} else {
$options = array('remove_all_path' => TRUE);
$zip->addGlob('/mnt/d/files/*.{php,txt}', GLOB_BRACE, $options);
$zip->close();
}
phpdocx操作word的php类
下载地址:http://www.phpdocx.com/
在线演示地址:http://www.phpdocx.com/demo/sample-word-report
3,tcpdf操作pdf的php类
下载地址:http://sourceforge.net/projects/html2fpdf/?source=recommended
在线演示地址:http://www.tcpdf.org/examples.php
Html转pdf的工具——wkhtmltopdf
<?php shell_exec("wkhtmltopdf http://www.shwzzz.cn/ 1.pdf") ?>
wkhtmltopdf 有个很好的方法,就是在那个div的样式后添加一个:page-break-inside:avoid;就ok了
<style type="text/css">
*{ margin:0px; padding:0px;}
div{ width:800px; min-height:1362px;margin:auto;page-break-inside:avoid;}
</style>
<body>
<div style=" background:#030"></div>
<div style=" background:#033"></div>
afsds
138

被折叠的 条评论
为什么被折叠?



