我有一些代码来合并文档使用Tx文本控件(虽然它不是特定于Tx文本控件)。合并并另存为HTM文件后,HTM文件会忽略某些字体。
Me.MailMerge1 = New TXTextControl.DocumentServer.MailMerge(Me.components)
Me.ServerTextControl1 = New TXTextControl.ServerTextControl()
Me.MailMerge1.ReportDataSourceConfig = ""
Me.MailMerge1.TextComponent = Me.ServerTextControl1
MailMerge1.LoadTemplate(Server.MapPath("TempDoc.docx"), TXTextControl.DocumentServer.FileFormat.WordprocessingML)
MailMerge1.Merge(ds.Tables(0))
MailMerge1.SaveDocument(Server.MapPath("~/") + Guid.NewGuid().ToString + ".htm", TXTextControl.StreamType.HTMLFormat, Nothing)它在本地机器上运行良好,并且直接从Visual Studio运行(按Ctl+F5)。但在IIS上部署后会忽略某些字体(在Windows Server2008和Windows Server2012 R2上)。例如:它忽略了“百老汇”字体,但保留了"Courier New“、"Comic Sans MS”等格式。同样的问题也发生在OpenXML SDK代码中。它看起来像是Fonts文件夹权限问题。
发布于 2017-03-27 16:00:04
通过重新启动服务器解决了此问题。在重新启动后,它开始正确地获取字体。但是我认为重启服务器并不是一个明智的解决方案。
也欢迎任何其他解决方案。
https://stackoverflow.com/questions/43014829
复制相似问题