问题标签 [spire.doc]
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.
c# - 从 docx 转换为 pdf 时,Spire doc 会丢失格式
我正在编写一个系统,它为不同的人修改模板字母(通过 OpenXml 文字处理),然后将它们转换为 pdf 以供打印。然而,在转换为 pdf 时,地址正在失去从正常地址行切换的间距
mrs1 Test2 Name2
那
房子
下来
inr32m
到一个平坦的地址行
mrs1 Test2 Name2thathousedowninr32m
用word写相同的时候产生的xml是
我输出版本的 xml 是
我生成 的 word doc 和结果 pdf word doc 和结果 pdf 的图像
以及手动编写的 word doc 和生成的 pdf 手动生成的 word doc 和生成的 pdf
此转换当前通过 2 个主要方法运行
和
localDocText 是完整文档 xml 的副本
我需要它将地址输出为正常格式,但我不确定是什么原因造成的
c# - 有没有更好的方法从嵌入式资源加载 docx 文件?
我正在重新创建一个旧的废弃程序,该程序是我在学习 c# 时创建的,它输出一个包含表单信息的 word 文件。该程序将位于 Res 文件夹中的 template.docx 嵌入资源提取到 C:\ClearanceResource\template.docx 然后将由程序再次使用:
有没有更好的方法来做到这一点,比如获取嵌入式资源的字符串位置路径并在其中使用它,dox.Loadfromfile(someStringPath)
这样我就不需要每次运行都创建文件的实例?
spire.doc - 我从 NuGet 添加了 Spire.Doc,但现在出现运行时错误?
我正在尝试实现 Spire.Doc,但出现运行时错误:
无法加载文件或程序集“Spire.Doc”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(来自 HRESULT 的异常:0x80131040)
堆栈跟踪:
spire.doc - spire.doc 无法将数据从 doc/rtf 文件转换为 pdf
我正在使用 spire.office。它正在成功地将数据从 excel 转换为 pdf,但不是从文档或 RTF 文件。它显示以下错误无法从程序集“Spire.Doc,Version=7.1.13.41046,Culture=neutral,PublicKeyToken=663f351905198cb3”加载类型“spr”,因为它尝试将类实现为接口。
请检查并提供一些建议。提前致谢
pdf-generation - 快照测试 PDF
问题
我正在尝试对 PDF 进行一些非常快速的快照测试。我们的系统使用 Spire.PDF 生成它们并将它们发送到以 base64 编码的 DocuSign。我的快照获取生成的 base64 并将其与“已知良好”进行比较,看看是否有任何变化。
到目前为止,这个过程在我的电脑和同事的电脑上可以 100% 重现。但是当我们在 Jenkins 上进行测试时,测试失败了。深入研究这个问题,具有相同基础文档的相同测试用例会生成完全不同的字节,同时也会生成外观相同的PDF。
一些细节
或者我已经排除的事情。或者其他想法。
- 在此过程中的某个时刻,我必须转换为字符串并返回,并且我检查了我的计算机和 Jenkins 上的编码是否相同。
- 我已经用静态值替换了任何“随机”元数据值,例如 PDF 中的创建日期和 ID,因此可以进行快照。
- 我对可以快速完成的快照测试的其他想法持开放态度!我正在寻找一种“速赢”来减少我们需要对这些东西进行每个版本的回归测试,而不是一个“全面的测试解决方案”。
- 每次构建并重新创建构建环境都会被破坏,而我的计算机则没有。
- 我没有检查 Spire 的版本是否相同(因为这是周末,我没有开发操作权限和政治......),但是两个进程都使用 NuGet 获取库,所以我没有任何它们可能不同的原因。
- 我们使用嵌入式资源方法授权 Spire,生成的 PDF 都没有暗示它是试用版。
c# - 从 MemoryStream 获取 XPS FixedDocumentSequence
我正在使用 Spire 库将 DocX 文件转换为 XPS 文件,以便可以在我的 Windows 桌面(WPF、C#)应用程序中显示文档的预览。
转换很好 - 我可以将生成的 XPS 文件保存到临时文件位置。然后我可以打开 XPS 文件,Packaging.XpsDocument
并使用GetFixedDocumentSequence
它在 DocumentViewer 控件中显示 XPS 文档——到目前为止一切都非常简单。
为了加快这个过程,我真的很想将 XPS 保存到 MemoryStream 并从那里加载 XPS。我尝试了以下方法:
我现在已经复制并粘贴了我作为测试函数所拥有的内容-为此目的,我已经删除了 using 语句。我的示例编译,我收到以下错误:
看来我也可以将压缩类型传递给 XpsDocument ctor,并且我可以传递一个 Uri - 但在这种情况下没有 Uri - Xps 文档在内存中并且没有任何物理存储支持。
当然,我可以继续使用临时文件,但感觉这种转换不需要触摸磁盘。
c# - 如何使用 .NET Web API 和 Angular 下载编辑过的 Word 文档
我想做的事
我继承了一个 Angular 项目,并且是该框架的新手。我正在尝试使用 Spire.Doc(免费版)打开启用宏的 word 文档并编辑文件,然后将编辑后的文件发送到客户端。我打电话给一个。Net Core 3 Web API 从一个角度组件通过一个报告服务。我需要向 API 发送一个 ID,打开并编辑 word 文件,然后将其发送回客户端。
我得到了什么
我尝试过的所有改变都得到了不同的结果。使用下面的代码,我可以下载一个 word 文档,但是一页文件现在是 54 页随机字符(编码错误?)。
我的代码
客户端.component.ts
报告.service.ts
报告控制器.cs
我尝试过的事情
- 不同的word文档 -相同的结果
- 不同的单词类型(docx,docm) -单词表示它是损坏的文件
- 使用不同的
type
值(都具有相同的结果):- 斑点
- 应用程序/vnd.openxmlformats-officedocument.wordprocessingml.document
- 数组缓冲区
- 添加
charset:utf-8;
到type
字符串 - 删除 Spire.Doc 代码 -结果相同
- 从控制器返回 a
byte[]
而不是HttpResponseMessage
使用memoryStream.ToArray()
-相同的结果 - 在组件代码而不是服务中创建并保存 blob -结果相同
- 使链接按钮重定向到控制器路径并跳过 .ts 文件 -由于路径问题,无法使用此方法
任何帮助表示赞赏!
编辑
通过 Postman 发出 GET 请求时,我收到以下信息:
java - 将 Spire.Doc.jar 用于 docx 文件时,Netbeans 中的包中缺少类
我下载并安装了免费的 Spire.Doc.jar 文件来处理 .docx 文件。当我在 Netbeans 中运行它时,功能可以正常工作,但是当我尝试构建程序时,我收到以下错误:
警告:注释处理器“org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor”支持的源版本“RELEASE_6”低于-source“1.8”注意:创建静态元数据工厂...错误:com.sun.tools。 javac.code.Symbol$CompletionFailure:com.spire.doc.packages.spryOb$1 的类文件未找到
注释处理器抛出未捕获的异常。有关详细信息,请参阅以下堆栈跟踪。java.lang.RuntimeException:com.sun.tools.javac.code.Symbol$CompletionFailure:找不到 com.spire.doc.packages.spryOb$1 的类文件
我已将 .jar 文件添加到我的类路径中,但是 com.spire.packages 位置似乎缺少一个类文件。
有谁知道这是 Netbeans 问题还是 .jar 文件有问题?我觉得奇怪的是,当我在 Netbeans 中运行它时它可以工作,但是当我尝试构建项目时会发生上述错误。
c#-4.0 - 我试图使用 Spire.Doc 将我的 word 文档转换为 PDF,并且总是遇到异常“GDI+ 中发生一般错误”
我试图通过 url/共享链接/共享驱动器从不同来源获取单词并将其保存到内存流。我的内存流每次都会获取数据,但是在通过 Spire.Doc 将其转换为 PDF 时,它会给出一个错误消息“GDI+ 中发生一般错误”。但这仅发生在我的生产中,而不是在本地主机中。该应用程序托管在 Azure 云中。
我放了一些日志,并知道第 3 行是导致问题的原因。
fileContentStream 和 finalStream 是内存流。
我使用的代码是: