aspose.cell,输出pdf,文本框中文本与在Excel中显示效果不一致。

aspose.cell,Excel文件保存为pdf,文本框中文本与在Excel中显示效果不一致。CalculateTextSize计算的文本高度也没超过文本框,但是输出pdf时文本已溢出文本框
testPdf.zip (256.2 KB)

 public static void testHeight()
 {
     //CellsHelper.DPI = 168;
     Workbook workbook = new Workbook("D:\\input_testPdf.xlsm");
     Worksheet sheet = workbook.Worksheets["sheet1"];

     foreach (Shape shape in sheet.Shapes)
     {
         // 判断形状是否为文本框
         if (shape is Aspose.Cells.Drawing.TextBox)
         {
             Aspose.Cells.Drawing.TextBox textBox = (Aspose.Cells.Drawing.TextBox)shape;

             // 判断文本框的名称是否以"批注文本框"开头
             if (textBox.Name.StartsWith("批注文本框"))
             {
                 // 获取文本框的高度
                 double textBoxHeight = textBox.Height;
                 Console.WriteLine("textBoxHeight:" + textBoxHeight);

                 int[] estimatedTextHeight = textBox.CalculateTextSize();
                 Console.WriteLine("estimatedTextHeight:" + estimatedTextHeight[1]);

  

                 // 检查是否溢出
                 if (estimatedTextHeight[1] > textBoxHeight)
                 {
                     throw new OverflowException(
                         $"{sheet.Name}文本框内容溢出,请调整内容!"
                     );
                 }

             }
         }
     }

     workbook.Save("d:\\output_test.pdf");

 }

@lingtian

感谢您提供的样本文件,这有助于复现问题。我们尚未确认此问题,只有在我们这边复现后才能确认。根据您的描述,这可能是 Aspose.Cells 在将 xlsm 转换为 pdf 时的一个 bug。为了确认并在内部记录此问题,我需要一些细节。

  • 您使用的 Aspose.Cells for .NET 具体版本号是?
  • 运行代码的 .NET 运行时(如 .NET Framework 4.x、.NET Core/5/6 等)和操作系统版本是什么?
  • 在保存 PDF 时是否使用了自定义的 PdfSaveOptions(例如设置 Compliance, EmbedStandardFonts 等)?如果有,请提供相关设置。

我们会把这些信息转给支持工程师,稍后会在此线程中回复您。

我会尝试使用你的样本复现此问题。如果确认成功,我会在内部记录并在此处跟进。

如有需要,支持工程师将在此线程中跟进。

@lingtian

感谢您提供的模板Excel文件和测试代码。我们确实复现了你遇到的问题。

我们已在内部问题跟踪系统中创建以下新工单,并将根据 Free Support Policies 中所述的条款进行修复。

问题 ID:CELLSNET-59846

如果您需要优先支持,并希望直接联系我们的付费支持管理团队,您可以获取 Paid Support Services