PDFKit - PDFThumbnailView 跳过一个页面而不是显示连续的页面 - swift
PDFKit - PDFThumbnailView skips a page instead of showing continuous pages - swift
我可以显示我的 pdf 文档的 PDFThumnailView。问题是它在跳页。它显示第 1、3、5 页等...而不显示其间的页面。我的代码如下。
@IBOutlet weak var pdfView: PDFView!
@IBOutlet weak var pdfThumbnailView: PDFThumbnailView!
func setupThumbnailView() {
pdfThumbnailView.pdfView = pdfView
pdfThumbnailView.thumbnailSize = CGSize.init(width: thumbnailDimension, height: thumbnailDimension)
pdfThumbnailView.backgroundColor = sidebarBackgroundColor
}
我可能是错的,但我认为这就是 PDFThumbnailView 的工作方式。通过不显示一些中间缩略图,它可以在视图宽度内容纳尽可能多的缩略图。如果您触摸缩略图,它确实会显示它们。将宽度调大或将缩略图调小,它会显示更多。
你必须把 pdfThumbnailView
变大。然而,它可能太大而无法显示在屏幕上,所以让我们将它放在滚动视图中。
首先更改 pdfThumbnailView
的约束,使其足够宽以容纳所有页面。
NSLayoutConstraint.activate([
pdfThumbnailView.heightAnchor.constraint(equalToConstant: CGFloat(thumbnailSize)),
pdfThumbnailView.widthAnchor.constraint(equalToConstant: CGFloat(pdfDocument.pageCount*thumbnailSize))
])
接下来创建滚动视图并将缩略图视图添加为其唯一的子视图。
var pdfThumbnailScrollView = UIScrollView()
pdfThumbnailScrollView.translatesAutoresizingMaskIntoConstraints = false
pdfThumbnailScrollView.addSubview(pdfThumbnailView)
最后添加一些约束,以便滚动视图和缩略图视图知道如何布局。滚动视图只有一个子视图,所以让我们限制它以适应。
NSLayoutConstraint.activate([
pdfThumbnailView.leadingAnchor.constraint(equalTo: pdfThumbnailScrollView.leadingAnchor),
pdfThumbnailView.trailingAnchor.constraint(equalTo: pdfThumbnailScrollView.trailingAnchor),
pdfThumbnailView.topAnchor.constraint(equalTo: pdfThumbnailScrollView.topAnchor),
pdfThumbnailView.bottomAnchor.constraint(equalTo: pdfThumbnailScrollView.bottomAnchor)
])
您可以按照 this 教程了解更多详情。
我可以显示我的 pdf 文档的 PDFThumnailView。问题是它在跳页。它显示第 1、3、5 页等...而不显示其间的页面。我的代码如下。
@IBOutlet weak var pdfView: PDFView!
@IBOutlet weak var pdfThumbnailView: PDFThumbnailView!
func setupThumbnailView() {
pdfThumbnailView.pdfView = pdfView
pdfThumbnailView.thumbnailSize = CGSize.init(width: thumbnailDimension, height: thumbnailDimension)
pdfThumbnailView.backgroundColor = sidebarBackgroundColor
}
我可能是错的,但我认为这就是 PDFThumbnailView 的工作方式。通过不显示一些中间缩略图,它可以在视图宽度内容纳尽可能多的缩略图。如果您触摸缩略图,它确实会显示它们。将宽度调大或将缩略图调小,它会显示更多。
你必须把 pdfThumbnailView
变大。然而,它可能太大而无法显示在屏幕上,所以让我们将它放在滚动视图中。
首先更改 pdfThumbnailView
的约束,使其足够宽以容纳所有页面。
NSLayoutConstraint.activate([
pdfThumbnailView.heightAnchor.constraint(equalToConstant: CGFloat(thumbnailSize)),
pdfThumbnailView.widthAnchor.constraint(equalToConstant: CGFloat(pdfDocument.pageCount*thumbnailSize))
])
接下来创建滚动视图并将缩略图视图添加为其唯一的子视图。
var pdfThumbnailScrollView = UIScrollView()
pdfThumbnailScrollView.translatesAutoresizingMaskIntoConstraints = false
pdfThumbnailScrollView.addSubview(pdfThumbnailView)
最后添加一些约束,以便滚动视图和缩略图视图知道如何布局。滚动视图只有一个子视图,所以让我们限制它以适应。
NSLayoutConstraint.activate([
pdfThumbnailView.leadingAnchor.constraint(equalTo: pdfThumbnailScrollView.leadingAnchor),
pdfThumbnailView.trailingAnchor.constraint(equalTo: pdfThumbnailScrollView.trailingAnchor),
pdfThumbnailView.topAnchor.constraint(equalTo: pdfThumbnailScrollView.topAnchor),
pdfThumbnailView.bottomAnchor.constraint(equalTo: pdfThumbnailScrollView.bottomAnchor)
])
您可以按照 this 教程了解更多详情。