为有中文需求的客户提供多渠道中文技术支持.

Tue Feb 14, 2023 1:38 am

1. 正在使用的产品版本
版本:Spire.PDF 9.2.2
2. 运行环境
a) 操作系统:Windows 10 家庭中文版
b) 目标框架:.NET Framework 4.5
c) 开发工具:Visual Studio Community 2017
3. 所使用的PDF文件:测试PDF_1.pdf(见附件)
4. 发现的问题及相关代码
1) 使用FindText查找竖直方向且带有下划线的文字时查找不到,但是在福昕阅读器中是可以正常查找匹配到的。
2) 使用FindText查找竖直方向文字,然后通过结果中的RectangleF去DrawRectangle,所绘区域并不正确
3) 使用FindText查找竖直方向文字,然后通过结果中的RectangleF去DrawString,所绘文字方向不正确
Spire.PDF查找字符问题-v2-20230214.rar

firefly_chang
 
Posts: 3
Joined: Tue Feb 14, 2023 1:32 am

Tue Feb 14, 2023 8:14 am

您好,

感谢您的留言。
我测试您的文档重现到了您的问题。我已将此问题记录到我们的问题跟踪系统,问题编号为SPIREPDF-5782(您提出的问题1:找不到有下划线的文本)和SPIREPDF-5783(您提出的问题2和问题3:绘制矩形和文本时位置错误)。一旦问题解决了,我将会第一时间通知您。非常抱歉给您带来的不便。

Sincerely
Abel
E-iceblue support team
User avatar

Abel.He
 
Posts: 1010
Joined: Tue Mar 08, 2022 2:02 am

Tue Mar 28, 2023 2:56 am

请问这个错误大概什么时候能修复呀。

firefly_chang
 
Posts: 3
Joined: Tue Feb 14, 2023 1:32 am

Tue Mar 28, 2023 6:23 am

您好,

抱歉对于您的问题(SPIREPDF-5783与SPIREPDF-5782),实现起来比较复杂,短时间内无法修复。请多给我们一点时间,感谢您的合作。另外,如果您方是购买客户,请提供您们的订单编号或者公司名称。

Sincerely
Abel
E-iceblue support team
User avatar

Abel.He
 
Posts: 1010
Joined: Tue Mar 08, 2022 2:02 am

Thu Mar 30, 2023 12:27 am

你好,我方是**************。麻烦尽快修复一下,卡这个bug上了。谢谢。
Last edited by firefly_chang on Thu Mar 30, 2023 1:51 am, edited 1 time in total.

firefly_chang
 
Posts: 3
Joined: Tue Feb 14, 2023 1:32 am

Thu Mar 30, 2023 1:26 am

您好,

感谢您的反馈。
我已经敦促开发加快修复您的这个问题,一旦有关于您问题的任何进展,我都将第一时间通知您。抱歉给您造成不便。

Sincerely
Abel
E-iceblue support team
User avatar

Abel.He
 
Posts: 1010
Joined: Tue Mar 08, 2022 2:02 am

Mon Jun 05, 2023 9:47 am

您好,

感谢您的耐心等待。
很高兴通知您我们刚刚发布了Spire.Pdf.9.6.0 hotfix,修复了您编号为SPIREPDF-5782、SPIREPDF-5783的问题。欢迎下载测试。
另外,对于绘制有旋转度的文本需要调整代码如下:
Code: Select all
PdfDocument pdfDocument = new PdfDocument();
            pdfDocument.LoadFromFile(@"../../data/测试PDF_1.pdf");
            PdfPageBase page = pdfDocument.Pages[0];

            PdfTextFinder finder = new PdfTextFinder(page);
            finder.Options.Parameter = TextFindParameter.IgnoreCase;

            List<PdfTextFragment> collection = finder.Find("会签1");


            PdfBrush brush = new PdfSolidBrush(Color.Black);
            PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("SimSun", 2.0f, FontStyle.Regular), true);

            foreach (PdfTextFragment find in collection)
            {
                //保存当前GraphicsState
                PdfGraphicsState state = page.Canvas.Save();

                RectangleF rec = find.Bounds[0];

                page.Canvas.DrawRectangle(PdfBrushes.GreenYellow, rec);

                //坐标系旋转90度
                page.Canvas.RotateTransform(90, rec.Location);

                PdfStringFormat stringFormat = new PdfStringFormat();

                //文本竖直方向底部对齐
                stringFormat.LineAlignment = PdfVerticalAlignment.Bottom;

                page.Canvas.DrawString("测试文本", font, brush, new PointF(rec.X, rec.Y), stringFormat );

                //回到原始状态
                page.Canvas.Restore(state);
            }

            pdfDocument.SaveToFile(@"../../data/R2_测试PDF_1_.pdf");


网站下载链接: https://www.e-iceblue.cn/Downloads/Spire-PDF-NET.html
Nuget安装地址:https://www.nuget.org/packages/Spire.PDF/9.6.0

Sincerely
Abel
E-iceblue support team
User avatar

Abel.He
 
Posts: 1010
Joined: Tue Mar 08, 2022 2:02 am

Return to 中文技术支持