我有一个docx文件,我需要替换一些文本.这是在codeigniter框架内完成的; 这是代码:
$this->load->library('word');
$template = $this->word->loadTemplate($_SERVER['DOCUMENT_ROOT'].'/doc/assets/doc3.docx');
$template->setValue('replacename', 'new');
$template->save($_SERVER['DOCUMENT_ROOT'].'/doc/assets/helloWorld.docx');
Run Code Online (Sandbox Code Playgroud)
当我打开新文件时,我仍然得到"new"的"replacename"instad."replacename"格式为Verdana字体,9pt字体大小(无下划线或粗体).为什么它不起作用?从setValue函数(以及doc文件)中删除$ {}它可以正常工作
我想在laravel 5上使用PHPWord,但我找不到任何软件包.所以我决定手动添加它,但我仍然没有成功.
我试过这个教程和github文件:
当我昨天刚看完它时,其中一些已经消失了.
请帮忙!谢谢.
我很乐意建议如何解决以下问题。对于平台,我必须创建php word文档,并且碰巧在Apache开发环境中,该代码可以完美执行。但是在nginx平台上,如主题所示,我继续收到错误:
ZipArchive::close(): Failure to create temporary file: Permission denied
Run Code Online (Sandbox Code Playgroud)
建立起来非常简单:
$phpWord = new \PhpOffice\PhpWord\PhpWord();
//code block as in the documentation
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord,'Word2007');
$objWriter->save('doorverwijzing_patient_xxxxxxxxxx.docx');
Run Code Online (Sandbox Code Playgroud)
在哪里可以更改nginx文件夹结构中的这些权限以创建这些文档?
我使用PHPword在我的Web应用程序中创建一个word文档,但我没有实现列表.我使用了以下代码:
$PHPWord = new PHPWord();
$temp = $PHPWord->loadTemplate('temp.docx');
$section = $PHPWord->createSection();
$section->addListItem('List Item 1', 0);
$section->addTextBreak(1);
$temp->setValue('Value1', $section);
$temp->save('list.docx');
Run Code Online (Sandbox Code Playgroud)
此代码无效.我设法在新文档中创建列表,但我无法将列表添加到模板(我无法将列表分配给特定值).我该如何添加列表?
我正在尝试使用PHPWord将DOCX文件转换为PDF.当我执行脚本时,看起来似乎没有转换某些样式元素.在DOCX文件中,我有一个图像,两个带边框1px和隐藏边框的表,我正在使用Tabs.
当我执行脚本时,我得到一个没有图像的PDF文件,所有的Tab都被替换为Space,所有的表都有一个3px的边框.
有人知道我为什么错过这些款式吗?
这是我的脚本:
while ($data2 = mysql_fetch_array($rsSql)){
$countLines=$countLines+1;
$templateProcessor->setValue('quantity#'.$countLines, $data2['quantity']);
$templateProcessor->setValue('name#'.$countLines, $data2['name']);
$templateProcessor->setValue('price#'.$countLines, "€ " .$data2['price'] ."");
}
\PhpOffice\PhpWord\Settings::setPdfRenderer('./dompdf');
\PhpOffice\PhpWord\Settings::setPdfRendererPath('./dompdf');
\PhpOffice\PhpWord\Settings::setPdfRendererName('DOMPDF');
$temp_file = tempnam(sys_get_temp_dir(), 'Word');
\$templateProcessor->saveAS($temp_file);
$phpWord = \PhpOffice\PhpWord\IOFactory::load($temp_file);
$xmlWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord , 'PDF');
$xmlWriter->save('result.pdf');
header("Content-type:application/pdf");
header("Content-Disposition:attachment;filename='result.pdf'");
readfile("result.pdf");
Run Code Online (Sandbox Code Playgroud) 我使用phpword生成一个MS Word文档,有没有什么办法可以帮助我在生成的文件末尾生成一个索引?
我认为可行的一种方法是读取生成的MS Word文件并找到每个单词的位置(例如MS Word文件中的页码),然后在单独的MS Word文件中重新生成索引.
有没有更好的方法?
所需文件的示例:
A
Animal 51,98
Apple 11,54,99
B
Basket 55
...
..
etc
Run Code Online (Sandbox Code Playgroud) 我想知道是否有办法在一条线上加粗某些单词.例如,如果我想要一行粗线上的每个第三个单词,我该怎么做.我目前正在使用addText,但这需要整行粗体或不粗体.任何回复将不胜感激.
如何在文本运行中添加文本中断或转到下一行/行?我试着$section->addTextBreak(2);在文本运行中做,但它只是在文本运行后将断点添加到该部分.我也试过,$textrun->addTextBreak(2);但它给了我一个致命的错误.任何回复将不胜感激.
我正在尝试阅读一些文件.所以我使用PHPWord.
这是我在我的图书馆里得到的.
<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
require_once APPPATH . '/third_party/PhpWord/Autoloader.php';
use PhpWord\Autoloader as Autoloader;
Autoloader::register();
class Word extends Autoloader {
}
Run Code Online (Sandbox Code Playgroud)
什么时候我会用它.我有这个错误:
Fatal error: Class 'PhpOffice\PhpWord\Autoloader' not found in D:\xampp\htdocs\jdih\application\libraries\Word.php on line 6
A PHP Error was encountered
Severity: Error
Message: Class 'PhpOffice\PhpWord\Autoloader' not found
Filename: libraries/Word.php
Line Number: 6
Backtrace:
Run Code Online (Sandbox Code Playgroud)
我尝试使用CodeIgniter PHPWord作为third_party,但没有帮助.
这是我的third_party的文件夹.我该如何解决这个问题?
我正在使用创建Microsoft Word报告PHPWord.我基本上从一个模板开始,填充字段并将其保存为单词报告.
我想将此报告转换为pdf文件.我尝试通过PHPWord加载生成的doc文件.但是,当我保存pdf文件时,格式化全部丢失.
这是我正在使用的代码:
require_once DOC_ROOT . '/vendor/phpoffice/phpword/bootstrap.php';
$path_to_tcpdf = DOC_ROOT . '/includes/plugins/TCPDF/'; // C:\xampp\htdocs\clients\corporate\includes\plugins\TCPDF
\PhpOffice\PhpWord\Settings::setPdfRendererPath($path_to_tcpdf);
\PhpOffice\PhpWord\Settings::setPdfRendererName('TCPDF');
$report_file_doc = DOC_ROOT . '/reports/business_report_U72900GJ2002PTC040573_68628.docx';
$report_file_pdf = DOC_ROOT . '/reports/business_report_U72900GJ2002PTC040573_68628.pdf';
$phpWord = \PhpOffice\PhpWord\IOFactory::load($report_file_doc);
$xmlWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord , 'PDF');
$xmlWriter->save($report_file_pdf);
Run Code Online (Sandbox Code Playgroud)
知道可能缺少什么吗?
谢谢