0

我有一个带有 PDF 查看器的应用程序,我尝试使用PDFKit.PDFView需要PDFKit.PDFDocument反对的应用程序。

我的代码是:

var pdfview = new PdfKit.PdfView();
var path = NSBundle.MainBundle.PathForResource("Harvard", "pdf");
var urll = new NSUrl(path);
var pdfdoc = new PdfDocument(urll);
pdfview.Document = pdfdoc;

我在第 4 行得到一个异常,它说:

无法初始化“PdfKit.PdfDocument”类型的实例:本机“initWithURL:”方法返回 nil

我的 pdf 文件,Harvard.pdf,位于 Resources 文件夹和具有 BundleResource 构建操作的直接 iOS 项目目录中。

这个 PDF 文件可以很容易地阅读CGPDFDocument,但我需要用它PDFView来解决我之前在 使用 swift 处理在 iOS 上的 PDF 查看器中单击的链接时提出的问题。那么,有人可以帮帮我吗?

4

1 回答 1

2

尝试以下方式检查是否URL返回nil

var documentURL = NSBundle.MainBundle.GetUrlForResource("Harvard", "pdf");
var pdfdoc = new PdfDocument(documentURL);

这是完整的示例代码:

var documentURL = NSBundle.MainBundle.GetUrlForResource("MyForm", "pdf");
if (documentURL != null)
{
    var document = new PdfDocument(documentURL);
    //var page = document.GetPage(0);

    var pdfview = new PdfKit.PdfView();
    pdfview.Frame = View.Frame;
    pdfview.Document = document;
    pdfview.AutoScales = true;
    pdfview.UserInteractionEnabled = true;
    pdfview.BackgroundColor = UIColor.Gray;

    View.AddSubview(pdfview);
}

及效果:</p>

在此处输入图像描述

于 2020-05-05T02:34:26.387 回答