如何禁用pdfView中的放大和缩小?

Deg*_*sei 5 pdfview ios swift

我想要得到我之后收到的东西

 pdfView.autoScales = true
Run Code Online (Sandbox Code Playgroud)

无法改变比例。

在@carmine的帮助下,我们得到了:

import UIKit
import PDFKit

class ViewController: UIViewController {

@IBOutlet weak var pdfView: PDFView!

override func viewDidLoad() {
    super.viewDidLoad()

    setPdfFile()
}

override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
    super.viewWillTransition(to: size, with: coordinator)
    self.pdfView.autoScales = true
}

func setPdfFile() {
    if let path = Bundle.main.path(forResource: "Swift.org - Getting Started", ofType: "pdf") {
        let url = URL(fileURLWithPath: path)
        if let pdfDocument = PDFDocument(url: url) {
            pdfView.autoScales = true
            pdfView.displayMode = .singlePageContinuous
            pdfView.displayDirection = .vertical
            pdfView.document = pdfDocument

            pdfView.displaysPageBreaks = false

            pdfView.minScaleFactor = pdfView.scaleFactor
            pdfView.maxScaleFactor = pdfView.scaleFactorForSizeToFit
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这给出了这样的结果: https: //gfycat.com/briefpowerlessbug

但如果你运行时没有这些行:

            pdfView.minScaleFactor = pdfView.scaleFactor
            pdfView.maxScaleFactor = pdfView.scaleFactorForSizeToFit
Run Code Online (Sandbox Code Playgroud)

您将收到我需要的结果,但需要缩放:https://gfycat.com/presentconcretebunting

我想禁用缩放并使 pdfView 的宽度等于 pdf 文件的宽度。

car*_*ine 2

使用

 pdfView.minScaleFactor = pdfView.scaleFactor
 pdfView.maxScaleFactor = pdfView.scaleFactorForSizeToFit
Run Code Online (Sandbox Code Playgroud)

并添加

override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
    super.viewWillTransition(to: size, with: coordinator)
    self.pdfView.autoScales = true
}
Run Code Online (Sandbox Code Playgroud)