Aspose.Words for .NET影像在本機環境可顯示,部署後圖片消失

在本機用Aspose.Words 18.8產出的PDF的(png圖章)可以正常顯示,但發佈到正式機上,PDF的(png圖章)就會消失。 能否提供協助?謝謝

@aorangean 能否请您提供有关您的操作、代码的更多详细信息,并附上一份文档,以便我们重现该问题?

@aorangean 其中一个原因可能是应用程序部署到了 Linux 服务器上,但开发环境却是 Windows。
Aspose.Words for .NET Standard 和 .NET6 使用 SkiaSharp 处理图形,要使其在 Linux 上运行,您必须添加对 SkiaSharp.NativeAssets.LinuxSkiaSharp.NativeAssets.Linux.NoDependencies 的引用。

如果添加 SkiaSharp.NativeAssets.Linux 引用,则还应在系统中安装 libfontconfig1。SkiaSharp.NativeAssets.Linux 依赖于此库。你可以使用以下命令安装它:

apt-get update && apt-get install -y libfontconfig1

此外,你也可以直接使用 SkiaSharp.NativeAssets.Linux.NoDependencies,它不需要安装 libfontconfig1。

您好,確認開發環境是Windows,部署環境也是Windows,我盡快提供檔案給您,謝謝

Hi 您好

會以下列網址用get方式呼叫網頁,程式如code.txt所示
大至上是以取代【套版文件】中的文字。並以memoryStream的方式回傳給client下載
不知道這樣的資訊是否可以?
套版文件.docx (71.5 KB)

code.docx (18.3 KB)

https://localhost:44334/HrSpreadForm/PersonalApplicationFormPDFDownload?type=EMPLOYMENT_CERTIFICATE&applyReason=8

@aorangean 遗憾的是,我这边无法重现这个问题。

请检查官方机器上的发布目录中是否有 SkiaSharp 库。也许它没有被自动复制。如果没有,请从 复制该库 .nuget\packages\skiasharp\1.68.0\runtimes\win-x64\native\libSkiaSharp.dll 。

另外,你还可以修改代码:

Aspose.Words.Document myDocx = new Aspose.Words.Document(stream);

HandleDocumentWarnings handleDocumentWarnings = new HandleDocumentWarnings();
doc.WarningCallback = handleDocumentWarnings;

....

myDocx.UpdatePageLayout();
myDocx.Save(memoryStream, saveOptions);

public class HandleDocumentWarnings : IWarningCallback
{
    public void Warning(WarningInfo info)
    {
        Console.WriteLine(info.Description + " : " + info.WarningType);
        FontWarnings.Warning(info);
    }

    public WarningInfoCollection FontWarnings = new WarningInfoCollection();
}

并检查官方机器上的警告结果。