问题标签 [phpword]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2223 浏览

javascript - 用 PHPWord 的 setValue 函数替换 html 实体

我对 PHPWord 中的 setValue() 函数有疑问。通常,参数应该是纯文本变量,但在这种情况下,我必须处理一个 html 块。并且 PHPWord 无法将 html 标签解析为 word xml。

我的意思是替换这个html: 在此处输入图像描述

进入Word模板: 在此处输入图像描述

要制作这样的输出: 在此处输入图像描述

有什么解决办法吗?

0 投票
1 回答
3426 浏览

php - 使用 PHPWord 下载 DOCX 文件时获取损坏的文件

我正在尝试使用“PHPWord”下载 docx 文件。

如果我尝试将文件保存到服务器上,它工作正常。但是,如果添加标题以下载它,则文件将以损坏的形式显示。

注意:我使用 openOffice 打开它。

这是我的代码:

谁能告诉我可能是什么问题?

0 投票
1 回答
7676 浏览

php - CodeIgniter PHPWord 用作第三方

我正在尝试使用 PHPWord,但使用起来有困难。

这是我在 application/libraries/words.php 中的代码

基于 PHPWord github,我必须像这样使用它:

当我尝试从我的控制器加载库时:

它给了我一个错误,上面写着:

我试图扩展 Autoloader 类,但 PHP 仍然抱怨它找不到 Autoloader.php。

当我做

它返回 1。

有谁知道如何解决这一问题?

0 投票
0 回答
3730 浏览

php - PHPWord 创建模板 - 替换封面页上的文本 .docx

好的,所以我正在使用PHPWord创建模板。然后使用函数setValue替换文档中的不同字符串,这一切正常,但是我的文档上有一个封面,并且此页面上的文本没有替换?

有没有办法添加这个功能,本质上,所有需要发生的只是替换(setValue)需要在对应于封面页(标题和资产)(自定义 xml 文件夹?)的 xml 上运行。您可以通过将文件扩展名更改为 .zip 后提取 .docx 文件来查看这些内容

https://github.com/PHPOffice/PHPWord/blob/master/src/PhpWord/Template.php

我目前如何从模板化的 .docx 文件创建 .docx:

0 投票
1 回答
1168 浏览

php - PHPword无法打开流

我的任务是将 Tinymce 编辑器加载到浏览器并进行编辑。编辑后,我尝试将编辑器值保存为 Microsoft 格式,为此我使用 Phpword 类。我包含文件路径,但我不能有一个致命错误说 require_once(../PhpWord.php): failed to open stream: No such file or directory。我已经将 Phpwrd.php 放在我要访问的目录中

我的代码是

0 投票
1 回答
529 浏览

php - 使用 PHPWord 在文档中没有打印任何内容

我正在使用 PHPWord 在 php 中下载 docx 文件。但是如果我尝试下载它,文件中不会打印任何内容。但是内容会显示在保存在服务器上的文件中。下面是我使用的代码。谁能告诉我问题是什么。

提前致谢。

问候,

内哈

0 投票
1 回答
675 浏览

php - ZipArchive addFromString 在 Windows 上无法正常工作

我有一个服务器,它运行一个我们用来创建 .docx 的小应用程序。

它在旧服务器上运行良好,但我不得不将它移到另一台服务器上,现在它有一个很大的问题:当我运行我的 php 脚本时 - 基于 PHPWord - 输出文件已损坏且无法使用(MS Word 报告“文件 xyz.docx 无法打开,因为内容存在问题)。

将文件扩展名从 .docx 更改为 .zip(只是为了查看其内容)也无济于事。

这个问题“有趣”的一面是,在同一台服务器上,使用相同版本的 PHP,使用 nginx 1.2.3 它消失了,.docx 文件很完美(好吧,如果不关心内容......但这是另一个问题......)。

我可以打开 nginx,但我有一个不同的问题:我无法按预期读取 Latin1 特殊字符。

google了半天的代码,发现问题出在PHPWord的Template.php库中的下面一行,第105行:$this->_objZip->addFromString('word/document .xml', $this->_documentXML);

它显然工作正常(在 nginx 上它确实工作正常),但它会产生一个假的 .docx,无法打开。

我尝试了不同版本的 apache 服务器,但没有成功,所以我非常感谢任何帮助。

总结:

  • 我在 Windows Server 2003 主机和 php 5.2.8 上测试了我的脚本(使用 PHPWord)
  • 它适用于 nginx
  • 它使用 apache 生成一个错误的 .docx 文件(ZipArchive addFromString 不起作用)
  • 我使用几个 Apache 版本对其进行了测试,从 2.0.64 到 2.2.25
  • 我看不到任何错误信息

任何想法?

0 投票
0 回答
4387 浏览

php - PhpOffice\PhpWord loadTemplate not rendering Word as it should

I have problem with rendering HTML tags when load template. I use HTMLtoOpenXML to render it, but in the end it is just plain code. I use this:

And PhpWord load document, and set description from variable, but output is something like this in rendered document:

If I do not use HTMLtoOpenXML I get:

So this looks like I'm missing something. Any help?

0 投票
1 回答
4794 浏览

php - 如何使用 phpWord 和使用 cloneBlock 将变量复制到模板中

在我的应用程序中使用 phpWord,我尝试在模板中克隆一个块,如下所示:

在我的 php 代码中执行此操作: $document->cloneBlock('CLONEME', 2}

我得到:

" 您可能还注意到在此之前有一个文本中断(空段落)也可以由 PHPWord 创建 ${item}
您可能还注意到在此之前有一个文本中断(空段落)也可以由创建PHPWord ${item} "

${item}不要重复。

我希望有 :

" 您可能还注意到在此之前有一个文本中断(空段落)也可以由 PHPWord 创建 ${item#1} 您可能还注意到在此之前有一个文本中断(空段落)可以创建也由 PHPWord ${item#2} "

我怎样才能做到这一点 ?谢谢

0 投票
1 回答
2701 浏览

php - 从列表项中删除前后的空格

我正在使用 PHPWord 创建 word 文件。我想创建带有段落样式的列表。为此,我遵循 PHPWord 代码标准。

我创建精选列表的代码:-

我遵循以下PHPWord代码:

除了行高和间距之外,一切都在工作。在列出行高即将 1.15 时,我想给行高 1 并且还想删除列表项中的间距。