![](/img/trans.png)
[英]How can i identify pdf orientation whether landscape or portrait using itextsharp library in C#
[英]How can I detect Rectangles and Boxes in PDF using C# iTextSharp
我有一个看起来像这样的 PDF 样本
我正在尝试使用 C# iTextSharp 检索那些矩形/框
PdfReader reader = new PdfReader(inFileName);
for (int i = 1; i <= reader.NumberOfPages; ++i)
{
strPageNumber = i.ToString();
if (intCommentCount >= 5)
{
break;
}
PdfDictionary pagedic = reader.GetPageN(i);
var thing = reader.GetPageContent(i);
string converted = Encoding.UTF8.GetString(thing, 0, thing.Length);
PdfArray rectarray = (PdfArray)PdfReader.GetPdfObject(pagedic.Get(PdfName.RECT));
if (rectarray == null || rectarray.Size == 0)
{
continue;
}
}
然而,不幸的是,rectarray 返回为空。 我尝试了 BOX 而不是 RECT,但 rectarray 也返回为空
使用 C# iTextSharp 从 PDF 收集 BOX/RECTANGLE 对象的方法是什么
先感谢您
您可以使用PdfPig来检索这些矩形。 我不知道矩形是Path
还是Annotations
,所以这里是这两种情况的代码:
using (PdfDocument document = PdfDocument.Open("file.pdf"))
{
for (int i = 0; i < document.NumberOfPages; i++)
{
var page = document.GetPage(i + 1);
// if the rectangle are paths
var paths = page.ExperimentalAccess.Paths;
// if the rectangle are annotations
var annotations = page.ExperimentalAccess.GetAnnotations().ToList();
foreach (var annotation in annotations)
{
var rectangle = annotation.Rectangle;
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.