首页 > 解决方案 > Aspose Cell .net core:Linux主机上的一些文本被截断

问题描述

在 .net 核心平台上使用 aspose 开发导出功能时遇到问题。问题是导出为 PDF 的某些行数据被截断。

我在本地环境(Windows)上试过没有问题。结果和我预期的一样好。

但是当我将代码发布到主机环境(linux)中时,结果似乎不对。

我的本地结果(Windows)

在此处输入图像描述

我的托管结果(linux)

在此处输入图像描述

这是我用来生成文件的一段代码

public FileData ExportToFile(DataTable data, string format, string query)
    {
        var workbook = new Workbook();
        var style = workbook.CreateStyle();
        workbook.DefaultStyle = style;

        var sheet = workbook.Worksheets[0];

        AutoFitterOptions oAutoFitterOptions = new AutoFitterOptions { AutoFitMergedCells = true, OnlyAuto = true };

        data = _RemoveFormat(data); // Parse all data to String
        
        /**/
        
        sheet.PageSetup.Orientation = PageOrientationType.Landscape;
        
        PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();
        pdfSaveOptions.AllColumnsInOnePagePerSheet = true;
        sheet.AutoFitRows(oAutoFitterOptions);
        sheet.AutoFitColumns(oAutoFitterOptions);
        
        workbook.Save(stream, pdfSaveOptions);
        
        /**/
    }

标签: asp.net-coreasposeaspose-cells

解决方案


在与 Aspose 支持人员讨论后。我发现托管服务器(linux)中缺少字体引起的差异。所以我需要将它安装在服务器上以使两个文档具有相同的样式。

就我而言,我的应用程序托管在 kubernetes 集群中,所以我需要在dockerfile

RUN echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | debconf-set-selections

RUN apt-get update \
    && apt-get install -y --allow-unauthenticated \
        fontconfig \
        ttf-mscorefonts-installer

推荐阅读