0

我有以下代码

 org.pdfclown.objects.PdfDictionary dict = new org.pdfclown.objects.PdfDictionary();
 org.pdfclown.objects.PdfName name;
 name = dict[org.pdfclown.objects.PdfName.AcroForm];

我想要做的是查看应用程序中加载的文件是否有 AcroFrom 字段我在想是否可以调用

 dict[org.pdfclown.objects.PdfName.AcroForm];

在某种程度上,现在出现的错误是

Error   2   Cannot implicitly convert type  
'org.pdfclown.objects.PdfDirectObject' to 'org.pdfclown.objects.PdfName'. 
An explicit conversion exists (are you missing a cast?) 
C:\ImpressionContext (1)\ImpressionContext\ImpressionContext\ContextDialogue.cs 
184 20  ImpressionContext

最初的要求是检测表单是 AcroForm 还是 Xfa Form

是否有可能,以便我可以转到字典中的 PdfName.AcroForm 并获取存储在此处的值。

4

2 回答 2

1

这里的字典返回PdfDirectObject-typed 值。您需要做的是将返回的值转换为PdfName.

name = dict[org.pdfclown.objects.PdfName.AcroForm] 
             as org.pdfclown.objects.PdfName;
if(name != null) 
{
    //work with name
}
于 2012-12-21T09:15:50.087 回答
0

PdfDictionary返回一个对象,org.pdfclown.objects.PdfDirectObject但你想要一个org.pdfclown.objects.PdfName对象。所以你需要投射它。

您可以使用:

name = dict[org.pdfclown.objects.PdfName.AcroForm] 
          as org.pdfclown.objects.PdfName; // Cast it to PdfName
于 2012-12-21T09:17:32.823 回答