phpword 相关问题

PHPWord是一个用纯PHP编写的库,它提供了创建/编写文字处理器文档格式(Word 2007,Open / Libre Office和Rich-Text Format)的方法。

mkdir():PhpWord 和 Laravel 10 中没有这样的文件或目录错误

我尝试使用 PhpWord 1.0 对象 Writer 在 Laravel 10 的存储文件夹中保存 Word 文档,但收到异常“mkdir():没有这样的文件或目录”。逻辑如下

回答 1 投票 0

无需保存文件即可使用 laravel livewire 下载 PHPWord 文件

我正在尝试下载一个用 PHP Word 生成的文件,但我每天会生成大约 10 000 个文件,我需要用 laravel livewire 下载文件而不将文件保存在存储中,有人可以...

回答 2 投票 0

phpword 使用 xsl 更新段落文本

我正在使用 phpword 模板处理器替换 word 模板中的变量并另存为新文档。然后,我加载输出文档并使用 xsl 更改段落中的文本。为了找回sp...

回答 0 投票 0

PhpWord 从特定页面添加页脚内容

我正在使用简单的代码通过 PhpWord 库将页脚添加到 DOCX 或 DOC 文档。 $footer->addPreserveText('我的示例内容'); 但是我想从例如第 6 页开始添加此内容...

回答 0 投票 0

如何使用 PHPWord 在现有 Word 文档上添加水印?

我想在现有的 Word 文档上添加水印,但无法添加。有很多创建新文档然后根据需要编辑它们的示例。但我不能...

回答 2 投票 0

phpword 创建多个对象链接到同一 excel 文件中的不同工作表

我使用 phpword 模板处理器创建了多个对象,这些对象链接到来自同一个 excel 文件的不同工作表。我在模板 processor.php 中创建了自定义函数来创建对象链接到 s...

回答 0 投票 0

PHPWord:如何动态填充表格?

我正在尝试使用 $_POST 数组中存在的值填充 HTML 表,如下所示: \PhpOffice\PhpWord\Shared\Html::addHtml($section,'我正在尝试使用我的 HTML table 数组中存在的值填充 $_POST,如下所示:\PhpOffice\PhpWord\Shared\Html::addHtml($section,'<table style="width:100%; background-color:#00ffff; border: 2px solid blue;"> <tr> <td style="border: 3px solid blue; text-align:center; width:70px; font-weight: bold; font-size: 25px;">PG/NO</td> <td style="border: 3px solid blue; text-align:center; width:100px; font-weight: bold; font-size: 25px;">CATEGORY</td> <td style="border: 3px solid blue; text-align:center; width:100px; font-weight: bold; font-size: 25px;">NAME OF PAPER</td> <td style="border: 3px solid blue; text-align:center; width:300px; font-weight: bold; font-size: 25px;">DESCRIPTION OF NEWS</td> <td style="border: 3px solid blue; text-align:center; width:70px; font-weight: bold; font-size: 25px;">S/N</td> </tr>'); foreach($data as $key=>$value){ $split_val = explode("**",$value); \PhpOffice\PhpWord\Shared\Html::addHtml($section,'<tr> <td style="border: 3px solid blue; text-align:center; width:70px; height:25px; font-size: 25px;">'.$split_val[4].'</td> <td style="border: 3px solid blue; text-align:center; width:100px; height:25px; font-size: 25px;">'.$split_val[0].'</td> <td style="border: 3px solid blue; text-align:center; width:100px; height:25px; font-size: 25px;'.$split_val[1].'</td> <td style="border: 3px solid blue; text-align:center; width:300px; height:25px; font-size: 25px;'.$split_val[2].'</td> <td style="border: 3px solid blue; text-align:center; width:70px; height:25px; font-size: 25px;">'.$slno.'</td> </tr>'); $slno+=1; } \PhpOffice\PhpWord\Shared\Html::addHtml($section,'</table>'); 当我运行代码时,我不断收到这个错误: b>警告:DOMDocument::loadXML():开始和结束标记不匹配:表格第 1 行和实体中的主体,第 1 行 然后如果我评论循环部分 \PhpOffice\PhpWord\Shared\Html::addHtml($section,'<table style="..."> <tr> .... .... </tr></table>'); /*foreach(){.... ... ... } \PhpOffice\PhpWord\Shared\Html::addHtml($section,'</table>');*/ 然后代码工作。我的代码有问题吗?如何在PHPWord中动态填充表格?EDIT:我什至尝试将多个 addHTML() 调用组合到一个字符串并将其推入表中,如下所示:$str = "" foreach($data as $key=>$value){ $split_val = explode("**",$value); $str .= '<tr> <td style="border: 3px solid blue; text-align:center; width:70px; height:25px; font-size: 25px;">'.$split_val[4].'</td> <td style="border: 3px solid blue; text-align:center; width:100px; height:25px; font-size: 25px;">'.$split_val[0].'</td> <td style="border: 3px solid blue; text-align:center; width:100px; height:25px; font-size: 25px;'.$split_val[1].'</td> <td style="border: 3px solid blue; text-align:center; width:300px; height:25px; font-size: 25px;'.$split_val[2].'</td> <td style="border: 3px solid blue; text-align:center; width:70px; height:25px; font-size: 25px;">'.$slno.'</td> </tr>'; $slno+=1; } \PhpOffice\PhpWord\Shared\Html::addHtml($section,'<table style="width:100%; background-color:#00ffff; border: 2px solid blue;"> <tr> <td style="border: 3px solid blue; text-align:center; width:70px; font-weight: bold; font-size: 25px;">PG/NO</td> <td style="border: 3px solid blue; text-align:center; width:100px; font-weight: bold; font-size: 25px;">CATEGORY</td> <td style="border: 3px solid blue; text-align:center; width:100px; font-weight: bold; font-size: 25px;">NAME OF PAPER</td> <td style="border: 3px solid blue; text-align:center; width:300px; font-weight: bold; font-size: 25px;">DESCRIPTION OF NEWS</td> <td style="border: 3px solid blue; text-align:center; width:70px; font-weight: bold; font-size: 25px;">S/N</td> </tr>'.$str.'</table>'); 现在我得到这个错误: 警告:DOMDocument::loadXML():未转义'<' not allowed in attributes values in Entity, line: 1 in

回答 0 投票 0

如何替换页脚中的占位符?

有这样一段代码: $templateProcessor = new TemplateProcessor('DOCX 文件路径.....'); $table = new Table(['unit' => TblWidth::AUTO]); $table->addRow(); $table->addCell(null, [...

回答 1 投票 0

PHPWord:在 docx 的标记中插入缩进和样式

PHPWord:我有一个使用 PHHWord 库的代码,它从复选框接收 HTML 命令以在 docx 文件(在本例中为 model.docx)中插入文本片段。原来要访问...

回答 0 投票 0

PHP Word - 从模板中删除占位符,使其不留空隙(空行)

我正在使用 PHPWord 基于模板生成报告。 我替换了该模板中的占位符 $templateProcessor = new TemplateProcessor('template.docx'); $templateProcessor->setValue('

回答 2 投票 0

如何在使用 PHPWord 库生成的 Word 文档中将文本居中对齐?

我的代码: getSettings()->setHideGrammaticalErrors(true); $phpWord->

回答 0 投票 0

PHPWord:无法在PHP中生成word文档文件

我是 PHPWord 库的新手,刚刚使用 composer 安装了它。我想生成一个基本的 word 文件。这是我的代码: 我是 PHPWord 库的新手,刚刚使用 composer 安装了它。我想生成一个基本的 word 文件。这是我的代码: <?php // (A) LOAD PHPWORD require "vendor/autoload.php"; $phpWord = new \PhpOffice\PhpWord\PhpWord(); $section = $phpWord->addSection(); $section->addText( '"Learn from yesterday, live for today, hope for tomorrow. ' . 'The important thing is not to stop questioning." ' . '(Albert Einstein)' ); $objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007'); $objWriter->save('helloWorld.docx'); ?> 每当我执行代码时,我都会收到此错误: 致命错误:未捕获错误:找不到类“ZipArchive” 我已经按照每个教程进行操作,并且还在 youtube 中进行了搜索,但是我没有找到与此问题相关的任何内容。进一步挖掘后,我发现this post related to the issue. 我按照那个帖子的解决方案。 \PhpOffice\PhpWord\Settings::setZipClass(Settings::PCLZIP); $objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007'); $objWriter->save('helloWorld.docx'); 祈祷,我执行了代码,现在却遇到了一个新的错误: 致命错误:未捕获错误:找不到类“设置” 有人可以帮帮我吗?我是这个图书馆的新手,不知道如何解决这个问题。

回答 0 投票 0

PHPWord - 将行间距设置为“单”

我必须用 PHP 生成一些 word 文档,并且需要更改行间距和行高。 设置行高很简单,但我不知道如何更改行间距从“mul ...

回答 2 投票 0

如何在 Laravel 9 中拆分 docx / pdf 文件页面

我有一个在线图书馆应用程序,允许用户通过关键字搜索书籍内容。 要将一本书添加到我的应用程序中,我希望能够上传该书的 docx 文件,然后额外...

回答 1 投票 0

如何在 Laravel 9 中拆分 docx 文件页面

我有一个在线图书馆应用程序,允许用户通过关键字搜索书籍内容。 要将一本书添加到我的应用程序中,我希望能够上传该书的 docx 文件,然后额外...

回答 1 投票 0

将 html 标签 <ul> <li> 替换为加载模板 phpWord 中的文本

我正在使用 phpWord 创建 docx 文件。在处理来自 CKEditor 的带有 标签的文本时,我遇到了一个问题。像这样: 1 ... 我正在使用 phpWord 创建 docx 文件。在使用 <ul> <li> 标签处理来自 CKEditor 的文本时,我遇到了一个问题。像这样: <ul> <li> 1 </li> <li> 2 </li> </ul> 我用 $html = '<ul><li>1</li><li>2</li></ul>'; $templateProcessor->setValue('test', $html); 它会创建一个损坏的文件,或者如果我替换标签,它不会保留列表项格式。 我在 here 找到了这个答案,这有助于我使用 <p> 标签。这是函数setHtmlBlockValue public function setHtmlBlockValue($search, $markup) { // Create a dummy container element for the content. $wrapper = new TextBox(); // Parse the given HTML markup and add it as child elements // to the container. Html::addHtml($wrapper, $markup); // Render the child elements of the container. $xmlWriter = new XMLWriter(); $containerWriter = new Container($xmlWriter, $wrapper, false); $containerWriter->write(); // Replace the macro parent block with the rendered contents. $this->replaceXmlBlock($search, $xmlWriter->getData(), 'w:p'); } 任何人都可以看看这个并修改以使用<ul><li>标签。 谢谢!

回答 0 投票 0

PHPword阅读.doc问题

我正在尝试在 php 中读取 .doc 文件(我正在使用 laravel v6)。为了阅读 .doc,我正在使用 phpword 库。它适用于英文的 .doc 文件。但我来自斯洛伐克,我们的字母表中有...

回答 0 投票 0

如何为部分工作制作 marginBottom?

在 Laravel 9 应用程序中,我使用 phpoffice/phpword 1.0,我做了一个函数来简化不同文本大小的文本输出。 对于更大的文本,底部边距必须更大: $this->phpWord = new \PhpOf...

回答 2 投票 0

phpword模板处理器返回值?

$template_processor->saveAs() 的返回值是多少? ,我试图捕获返回值以确定进程是否成功执行 公共函数 create_spm($data_...

回答 1 投票 0

在手机(android和ios)上打开时,从php生成的文档中嵌入的图片不显示。

我使用下面的代码用php将html转为doc.它在pc上工作得很好,但当从任何移动设备访问时,文本部分显示得很好,但没有嵌入的图像......。

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.