phpword 相关问题

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

PhpWord 示例手动安装

手动安装的文档已过时。我尝试手动编写一个自动加载器类,也许它有效?但我在 Sample-01.php 中得到的唯一输出是 02:56:03 Create new PhpWord obj...

回答 1 投票 0

如何使用PHPWord将Word文档转换为PDF

我正在使用 PHPWord 创建 Microsoft Word 报告。我基本上从一个模板开始,填充字段并将其保存为文字报告。 我想将此报告转换为 pdf 文件。我...

回答 3 投票 0

删除phpWord表格中的段落

桌子上有一个空格。我无法删除它。它不仅仅是空格、制表符、对齐或 4space。这张图是错误的,应该是这样这张图是真的 $信息...

回答 1 投票 0

为什么 Office OpenXML 在标签之间分割文本以及如何防止这种情况?

我目前正在尝试使用 PHPWord 库及其模板系统来处理 docx 文件。我已经找到并更新了某人(不记得名字,但这并不重要)到这个库的路径......

回答 2 投票 0

PHPWord 内部服务器错误

我正在尝试解决很长时间以来的一个问题..我的PhpWord文档在本地主机中正确下载,但我没有得到确切的输出..我的word直接打印标签而不使其强大...

回答 1 投票 0

无法在表格中添加边框样式(phpword)

我正在尝试在 html 内的表格中添加边框。下面是我的代码 $phpWord = new \PhpOffice\PhpWord\PhpWord(); $section = $phpWord->addSection(); $html =“ ... 我正在尝试在 html 内的表格中添加边框。下面是我的代码 $phpWord = new \PhpOffice\PhpWord\PhpWord(); $section = $phpWord->addSection(); $html = "<table border='1'> <tr> <th>name</th> </tr> <tr><td>John</td></tr> </table>"; \PhpOffice\PhpWord\Shared\Html::addHtml($section, $html ); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment;filename="test.docx"'); $objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007'); $objWriter->save('php://output'); 我已指定边框为 1,但它不起作用。我的桌子没有边框 它的事件无法通过添加样式来工作。请帮忙 尝试以最小的更改和所有工作来运行您的代码) require_once __DIR__ . '/vendor/autoload.php'; use PhpOffice\PhpWord\IOFactory; use PhpOffice\PhpWord\PhpWord; use PhpOffice\PhpWord\Shared\Html; $phpWord = new PhpWord(); $section = $phpWord->addSection(); $html = "<table border='1'> <tr> <th>name</th> </tr> <tr><td>John</td></tr> </table>"; Html::addHtml($section, $html); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment;filename="test.docx"'); $objWriter = IOFactory::createWriter($phpWord); $objWriter->save('php://output'); 结果截图 在这种情况下使用内联 CSS。你应该这样做: require_once __DIR__ . '/vendor/autoload.php'; use PhpOffice\PhpWord\IOFactory; use PhpOffice\PhpWord\PhpWord; use PhpOffice\PhpWord\Shared\Html; $phpWord = new PhpWord(); $section = $phpWord->addSection(); $html = "<table style="border: 1px solid black;"> <tr> <th>name</th> </tr> <tr><td>John</td></tr> </table>"; Html::addHtml($section, $html); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment;filename="test.docx"'); $objWriter = IOFactory::createWriter($phpWord); $objWriter->save('php://output'); 添加 PHPWord/Shared/Html.php, 函数parseInlineStyle, 在案例部分添加 case 'border': $styles['borderSize'] = (int) $val; $styles['borderStyle'] = 'solid'; $styles['borderColor'] = '#000000'; break;

回答 3 投票 0

使用 laravel8、ajax 和 PhpWord 库下载带有服装名称的 Word 文档

我正在尝试使用 Laravel8 和 Ajax 调用从存储路径下载 Word 文档。 我正在使用以下代码: $(文档).on('点击', '.下载', function(){ var da...</desc> <question vote="0"> <p>我正在尝试使用 Laravel8 和 Ajax 调用从存储路径下载 Word 文档。</p> <p>我正在使用以下代码:</p> <pre><code>&lt;script&gt; $(document).on(&#39;click&#39;, &#39;.download&#39;, function(){ var data = &#39;&#39;; var id = $(this).attr(&#39;id&#39;); console.log(id); var data = &#39;&#39;; $.ajax({ url:&#34;modeles_contrat/&#34;+id+&#34;/download&#34;, type:&#34;GET&#34;, data: data, xhrFields: { responseType: &#39;blob&#39; }, success: function(response) { var blob = new Blob([response]); var link = document.createElement(&#39;a&#39;); link.href = window.URL.createObjectURL(blob); link.download = &#34;casting.docx&#34;; link.click(); }, error: function() { $(&#39;#responseMsg&#39;).removeClass(&#34;alert-success&#34;); $(&#39;#responseMsg&#39;).addClass(&#34;alert-danger&#34;); $(&#39;#responseMsg&#39;).html(&#39;Veuillez générer le contrat&#39;); $(&#39;#responseMsg&#39;).show(); } }) }); &lt;/script&gt; </code></pre> <p>以及以下控制器:</p> <pre><code>public function download($id, $downloadName = null) { $data2 = array(); $data_modele = Model_Contrat::where(&#39;id_modele_contrat&#39;,$id)-&gt;first(); $filename= $data_modele-&gt;fichier; $filepath = &#39;Casting_V0.1_Test\casting\storage\app\public\uploads\modeles_contrat/&#39;.$filename; /* $filepath = str_replace(&#39;&#39;, &#39;/&#39;,public_path(&#39;Model/&#39;.$filename.&#39;.docx&#39;)); */ if (file_exists($filepath)) { $headers = array( &#39;Content-Type: application/docx&#39;, ); $downloadName = $downloadName??$filename; return Response::download($filepath); } else { $data2[&#39;success&#39;] = 2; $data2[&#39;message&#39;] = &#39;File not uploaded.&#39;; return response()-&gt;json($data2); } } </code></pre> <p>所有作品文件,但问题是所有文件都以<pre><code>casting.docx</code></pre>的名称下载。我想下载每个文件的原始名称,而不是名称 <pre><code>casting.docx</code></pre>。</p> <p>如果您对如何下载具有自定义名称的文件有任何想法,请帮助我。</p> <p>提前谢谢您</p> <p><strong>编辑</strong></p> <p>我尝试删除ajax调用,所以我使用以下代码:</p> <p>我的数据表添加了一个列链接来获取行的 id:</p> <pre><code>$button .=&#39;&lt;a href=&#34;/modeles_contrat/&#34;&#39;.$data-&gt;id_modele_contrat.&#39;&#34;/download&#34; class=&#34;btn btn-xs btn-info pull-right&#34; data_id=&#34;&#39;.$data-&gt;id_modele_contrat.&#39;&#34; &gt;Télécharger&lt;/a&gt;&#39;; </code></pre> <p>在我的路线中,我有以下路线:</p> <pre><code>Route::group([&#39;middleware&#39; =&gt; [&#39;auth&#39;,&#39;role:account_manager|admin|manager_de_filiale&#39;]], function() { Route::get(&#39;/modeles_contrat/{id_modele_contrat}/download&#39;, [App\Http\Controllers\ModeleController::class, &#39;download&#39;]); }); </code></pre> <p>在我的控制器中我有以下代码:</p> <pre><code>public function download($id_modele_contrat) { $data2 = array(); $data_modele = Model_Contrat::where(&#39;id_modele_contrat&#39;,$id_modele_contrat)-&gt;first(); $filename = $data_modele-&gt;fichier; $filepath = &#39;Casting_V0.1_Test\casting\storage\app\public\uploads\modeles_contrat/&#39;.$filename; /* $filepath = str_replace(&#39;&#39;, &#39;/&#39;,public_path(&#39;Model/&#39;.$filename.&#39;.docx&#39;)); */ if (file_exists($filepath)) { $headers = array( &#39;Content-Type: =&gt; application/docx&#39;, ); return Response::download($filepath,$filename, $headers); } } </code></pre> <p>现在,当我单击下载文件的链接时,我会看到以下页面,但文件未下载:</p> <p><a href="https://i.sstatic.net/Odn4C.jpg" rel="nofollow noreferrer"><img src="https://cdn.txt58.com/i/AWkuc3N0YXRpYy5uZXQvT2RuNEMuanBn" alt="enter image description here"/></a></p> </question> <answer tick="false" vote="0"> <p>您可以将文件名作为第二个参数传递给 <pre><code>Response::download()</code></pre> 函数。<br/> 尝试:</p> <pre><code>return Response::download($filepath, $downloadName); </code></pre> <p><a href="https://laravel.com/docs/8.x/filesystem#downloading-files" rel="nofollow noreferrer">这里</a>是下载功能的文档(<pre><code>Storage::download</code></pre>和<pre><code>Response::download</code></pre>应该是一样的)</p> </answer> </body></html>

回答 0 投票 0

文档左侧浮动图像。 PhpWord 0.18,环境 php 8.1,Laravel 9

我需要将签名放在word文档的左边距,如下图所示。 它在 PHP 7.4 环境中运行良好,只需将 style="float: left" 放在图像上即可...

回答 1 投票 0

用 templateProcessor 替换模板表中的值

我有一个文档模板,其中包含下表: 在 php 中,我用这一行填充变量: $templateProcessor->setValues(array("{key1}" => 59, "{key2}" =&...

回答 1 投票 0

PHPWord 模板处理,在块克隆内进行块行克隆

我正在使用 PHPWord 创建使用 .docx 模板的报告。 这个库允许我克隆块和克隆表行。然而,这些示例是相互独立的。我需要联系...

回答 2 投票 0

PHPWord addTOC 不显示页码

我正在使用https://github.com/PHPOffice/PHPWord生成word文档。 函数 addTOC 生成带有标题的页面索引,但由于某种原因,页码不显示。 // 添加...

回答 2 投票 0

PhpWord 0.18 未保存并且代码引发内部服务器错误

我正在尝试在 php (7.4) 中创建 Word 文档,并使用 PhpWord 0.18.2。 在我保存文档之前一切都很顺利。 系统抛出 HTTP 500(内部服务器错误)。 我已经搜索过...

回答 2 投票 0

为什么“deleteBlocks”在 phpWord 中不起作用?

我正在尝试在 Word 文档中使用块,但遇到一些问题。首先,当我在文档中声明一个块时,如果我不使用函数“cloneBlock”,结果会像这样......

回答 3 投票 0

使用 PHPWord 库将 Word 文件转换为 PDF

我尝试将 Word 文档转换为 PDF,但格式丢失且与原始文档不匹配。具体来说,我将证书从 Word 文件转换为 PDF,导致错误...

回答 1 投票 0

为什么 phpword 忽略 html 列表中的段落样式?

我正在将 html 添加到无序列表的 phpword 中。字体样式可以很好地通过(在列表项上),但段落样式完全被忽略。 我的列表项上的这个效果很好:

回答 0 投票 0

找不到存档文件。在 PHPWord-0.16.0/vendor/phpoffice/common/src/Common/XMLReader.php

我想在php中将docx文件转换为html并将内容作为json响应发送到角度端。 我正在尝试这里的代码 require_once 'bootstrap.php'; $phpWord = 新 \PhpOffice\PhpWord\Ph...

回答 2 投票 0

PhpOffice\PhpWord 1.2.0 - TemplateProcessor 添加数字列表项不起作用

if (!empty($params['responsibilityItems'])) { $cnt = count($params['responsibilityItems']); $templateProcessor->cloneBlock('responsibilityItems', $cnt, true, true); $部分= ...

回答 1 投票 0

如何使用模板处理器在phpword中添加图片?

好吧,我终于让 phpword 模板处理器工作了,现在我遇到了一个小问题:我想动态地将图片添加到我的模板中。到目前为止,我一直在更换我寺庙中的东西......

回答 1 投票 0

PHPWod 生成页眉(和页脚)时出错

脚本在以前的手动安装版本中是可以的,所以我upradiung php(使用LAMPP) 我收到错误: 致命错误:未捕获错误:在 /opt/la 中的 null 上调用成员函数 addTable()...

回答 1 投票 0

找不到类“PhpOffice\PhpWord\Writer\Word2007\Element\Section”

我正在尝试使用以下代码将列表项添加到 phpword 模板: $PHPWord = new PHPWord(); $document = $PHPWord->loadTemplate(storage_path('app/template_report.docx')); $se...

回答 1 投票 0

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