導航:首頁 > 編程語言 > phpoffice轉pdf

phpoffice轉pdf

發布時間:2022-08-30 19:42:12

『壹』 php word 轉pdf 有哪些方法

1、 安裝免費的openOffice軟體,請至openoffice.org下載最新版本。
2、 JDK支持,請自行搜索下載最新版本JDK。

3、安裝完openOffice後,在開始--運行中輸入Dcomcnfg打開組件服務。在組件服務—計算機—我的電腦—DCOMP配置中,選擇

在這兩項上分別點擊右鍵屬性,打開屬性面板如下圖:

選擇安全選項卡,分別在啟動和激活許可權和訪問許可權兩項上點自定義,添加Everyone的許可權。

選擇標識選項卡,選擇互動式用戶。
4、 安裝完openOffice後,請先打開一次確認可以正常運行軟體,然後退出後用命令行運行以下命令。
先到安裝目錄下,例如:C:\Program Files\OpenOffice 4\program\
執行命令:
soffice -headless-accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard
成功後即在後台運行了該軟體。
5、 如果是php5.4.5以前版本,需要在php.ini里把com.allow_dcom = true打開,即去掉前面的分號。如果是以後版本,需要在php.ini 里增加一行擴展extension=php_com_dotnet.dll,然後檢查php的ext目錄中是否存在該dll文件,如果沒有請自行下載對應版本的dll。然後重啟apache或IIS伺服器。
6、 代碼實現
/**
* office文檔轉換為PDF類
* @author jinzhonghao <[email protected]> created 2015-04-23
*/

class office2pdf
{
private $osm;

public function __construct()
{
$this->osm = new COM("com.sun.star.ServiceManager")or die ("Please be sure that OpenOffice.org is installed.n");
}

public function MakePropertyValue($name,$value)
{
$oStruct = $this->osm->Bridge_GetStruct("com.sun.star.beans.PropertyValue");
$oStruct->Name = $name;
$oStruct->Value = $value;
return $oStruct;
}

public function transform($input_url, $output_url)
{
$args = array($this->MakePropertyValue("Hidden",true));

$oDesktop = $this->osm->createInstance("com.sun.star.frame.Desktop");

$oWriterDoc = $oDesktop->loadComponentFromURL($input_url,"_blank", 0, $args);

$export_args = array($this->MakePropertyValue("FilterName","writer_pdf_Export"));

$oWriterDoc->storeToURL($output_url,$export_args);
$oWriterDoc->close(true);
return $this->getPdfPages($output_url);
}

public function run($input,$output)
{
$input = "file:///" . str_replace("\\","/",$input);
$output = "file:///" . str_replace("\\","/",$output);
return $this->transform($input, $output);
}

/**
* 獲取PDF文件頁數的函數獲取
* 文件應當對當前用戶可讀(linux下)
* @param [string] $path [文件路徑]
* @return int
*/
public function getPdfPages($path)
{
if(!file_exists($path)) return 0;
if(!is_readable($path)) return 0;
// 打開文件
$fp=@fopen($path,"r");
if (!$fp)
{
return 0;
}
else
{
$max=0;
while(!feof($fp))
{
$line = fgets($fp,255);
if (preg_match('/\/Count [0-9]+/', $line, $matches))
{
preg_match('/[0-9]+/',$matches[0], $matches2);
if ($max<$matches2[0]) $max=$matches2[0];
}
}
fclose($fp);
// 返回頁數
return $max;
}
}

}

『貳』 php怎麼使用openoffice實現office文件轉pdf文件

你需要幾下載幾個包,然後安裝配置一下:
OOo_3.3.0_Linux_x86_install-rpm-wJRE_en-US.tar.gz
OOo-SDK_3.3.0_Linux_x86_install-rpm_en-US.tar.gz
jodconverter.2.2.2

1. 安裝openoffice3
tar zxvf OOo_3.3.0_Linux_x86_install-rpm-wJRE_en-US.tar.gz
cd OOO330_m20_native_packed-1_en-US.9567/RPMS
rpm -ivh *.rpm --nodeps --force
安裝後的默認目錄是在:/opt/目錄下面
啟動服務:
/opt/openoffice.org3/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &

開機啟動:
vi /etc/rc.local
在最後面加入啟動語句

2. 安裝OpenOffice SDK3.3

tar zxvf OOo-SDK_3.3.0_Linux_x86_install-rpm_en-US.tar.gz
cd OOO330_m20_native_packed-1_en-US.9567/RPMS/
rpm -vih *.rpm
3. 安裝jodconverter.2.2.2 ,安裝了這個之後就已經可以實現DOC轉PDF了。
這個安裝很簡單,直接上網站下一個這個東東回來。
解壓,復制到一個目錄裡面去,就能直接用了,調用它裡面的/lib/jodconverter-cli-2.2.2.jar這個玩意兒就行,可以直接運行命令測試:

java -jar /usr/local/wenku/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /tmp/1.doc /tmp/1.pdf

『叄』 我使用php語言做word轉pdf的時候報錯

解決方法:
在把Word轉換成Pdf過程中,首先是選擇文件---列印---然後在列印機下拉框中選擇「Pdf列印機」,然後選擇確定,此時,選擇保存位置,然後確定後Pdf列印做准備。
如果使用了系統字體以外的字體時,Pdf虛擬列印機就會報錯提示,為你指出哪頁哪頁未能轉換等等的錯誤信息,這些信息是在txt文本中呈現的。
下邊來看看解決的辦法,首先找到系統中「設備和列印機」的位置
點擊「設備和列印機」進入設備和列印機界面。
在設備和列印機界面找到「Adobe PDF」虛擬列印機,然後點擊右鍵,選擇「列印首選項」。
在彈出的「Adobe PDF列印首選項」對話框中,取消「僅依靠系統字體;不使用文檔字體」復選框,然後點擊應用退出就OK了

『肆』 求問php 利用openoffice把office轉成pdf格式,該怎麼處理

如題 從網上找到代碼PHP code function word2pdf($doc_url, $output_url) { //Invoke the OpenOffice.org service manager $osm = new COM("com.sun.star.ServiceManager") or die ("Please be sure that OpenOffice.org is installed.\n"); //Set the application to remain hidden to avoid flashing the document onscreen $args = array($this->MakePropertyValue("Hidden",true,$osm)); //Launch the desktop $top = $osm->createInstance("com.sun.star.frame.Desktop"); //Load the .doc file, and pass in the "Hidden" property from above $oWriterDoc = $top->loadComponentFromURL($doc_url,"_blank", 0, $args); //Set up the arguments for the PDF output $export_args = array($this->MakePropertyValue("FilterName","writer_pdf_Export",$osm)); //Write out the PDF $oWriterDoc->storeToURL($output_url,$export_args); $oWriterDoc->close(true); } public function test1() { $output_dir = SERVERBASE . 'client/files/proj_workaholic/office/pdf/'; $doc_file = SERVERBASE . 'client/files/proj_workaholic/office/office/helloWorld.doc'; $pdf_file = "hellowWorld.pdf"; $output_file = $output_dir . $pdf_file; // $doc_file = "file:///" . $doc_file; // $output_file = "file:///" . $output_file; $this->word2pdf($doc_file,$output_file); } test(); 系統:window xp
軟體:openoffice3.3
伺服器:xampp
php.ini - com.allow_dcom = true
錯誤:Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `com.sun.star.ServiceManager' in "the project of path"
------解決方案--------------------------------------------------------需要安裝OpenOffice.org
------解決方案-------------------------------------------------------- 1、檢查一下是否安裝過OpenOffice。
2、用命令行啟動OpenOffice服務:
cd C:\Program Files\OpenOffice.org 3\program
C:\Program Files\OpenOffice.org 3\program>soffice -headless -accept="socket,host然後再試驗一下呢.

『伍』 如何把動態生成的php頁面轉化成pdf文件

如果是可以列印,就可以使用虛擬列印機來處理:
方法一:使用虛擬列印機pdf factory即可,而且其他格式文件只要是能夠列印,選擇這個虛擬列印機,都可以做成PDF文件,很簡單實用;
方法二:用其他虛擬列印機轉成PDF文件。
方法三:使用專門的轉換軟體,把文件轉成PDF文件。
實在不能列印,還可以截屏嘛,然後按照下面的方法做出PDF的:
方法一:使用虛擬列印機pdf factory即可,而且其他格式文件只要是能夠列印,選擇這個虛擬列印機,都可以做成PDF文件,很簡單實用;
方法二:使用FreePic2Pdf軟體,進行批量轉換;
方法三:用其他虛擬列印機轉成PDF文件。

『陸』 PHP word轉pdf

這個不是說的很清楚了嗎
Please be sure that OpenOffice.org is installed

你直接安裝上openoffice,啟動 openoffice服務

『柒』 php word轉pdf 有什麼方法嗎

PHP也可以實現導出Word文檔為PDF的功能,不過要藉助於第三方的類庫,今天我們將為大家介紹PHP依靠com.sun.star.ServiceManager來轉換Word為PDF文檔的相關技巧。

PHP處理Word轉PDF的示例代碼:

02set_time_limit(0);
03functionMakePropertyValue($name,$value,$osm){
04$oStruct=$osm->Bridge_GetStruct("com.sun.star.beans.PropertyValue");
05$oStruct->Name=$name;
06$oStruct->Value=$value;
07return$oStruct;
08}
09functionword2pdf($doc_url,$output_url){
10$osm=newCOM("com.sun.star.ServiceManager")ordie("請確認OpenOffice.org庫是否已經安裝. ");
11$args=array(MakePropertyValue("Hidden",true,$osm));
12$oDesktop=$osm->createInstance("com.sun.star.frame.Desktop");
13$oWriterDoc=$oDesktop->loadComponentFromURL($doc_url,"_blank",0,$args);
14$export_args=array(MakePropertyValue("FilterName","writer_pdf_Export",$osm));
15$oWriterDoc->storeToURL($output_url,$export_args);
16$oWriterDoc->close(true);
17}
18$output_dir="D:/temp/";
19$doc_file="D:/temps/test.doc";
20$pdf_file="test.pdf";
21$output_file=$output_dir.$pdf_file;
22$doc_file="file:///".$doc_file;
23$output_file="file:///".$output_file;
24word2pdf($doc_file,$output_file);
25?>

『捌』 PHP怎麼實現提取WORD的內容以及把WORD轉換成PDF格式

有一家網路公司的業務就是用PHP製作PDF文件的,這個你就應該知道你這個問題不是一兩個小程序能完成的。pear裡面有個類庫,可以利用TXT文件去生成PDF文件,而且有點小復雜,至於這么提取word的內容,不懂,期待高手~

『玖』 PHP 中怎麼實現OFFICE文件轉換成PDF文件格式

貼個doc轉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 ("Please be sure that OpenOffice.org
is installed.\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:/LightTPD/htdocs/";
$doc_file = "D:/LightTPD/htdocs/2.doc";
$pdf_file = "2.pdf";
$output_file = $output_dir . $pdf_file;
$doc_file = "file:///" . $doc_file;
$output_file = "file:///" . $output_file;
word2pdf($doc_file,$output_file);
?>

閱讀全文

與phpoffice轉pdf相關的資料

熱點內容
泰國永恆無刪減版 瀏覽:42
我的世界伺服器如何更改地皮地形 瀏覽:505
山西聯通app是什麼軟體 瀏覽:355
更新電視劇最快的網站 瀏覽:134
兄弟訓誡文嚴厲 瀏覽:607
李楠程序員 瀏覽:288
山推管家app怎麼改密碼 瀏覽:680
貸款結束什麼時候解壓 瀏覽:142
18命令方塊代碼 瀏覽:936
安卓手機視頻怎麼傳到mac電腦上 瀏覽:932
馬纓花app是什麼 瀏覽:6
python金融分析招聘 瀏覽:60
可以直接寫電影就有免費 瀏覽:108
北京一卡通app換了手機怎麼弄 瀏覽:155
有程序員小說 瀏覽:688
點開就能看的網址 瀏覽:450
單片機控制和plc控制系統設計 瀏覽:29
她通常去電影院英文翻譯 瀏覽:274
阿里個人雲伺服器叫什麼名字 瀏覽:298
萱萱日記 瀏覽:707