所以我有这个 pdfView,我想让它的第一个显示是页面 100% 的缩放,但问题是我现在放大太多,而且 UI 不太漂亮。
我的代码是这样的:
let pdfView = PDFView()
pdfView.translatesAutoresizingMaskIntoConstraints = false
pdfView.autoScales = true
pdfView.maxScaleFactor = 4.0
pdfView.minScaleFactor = pdfView.scaleFactorForSizeToFit
view.addSubview(pdfView)
pdfView.leadingAnchor.constraint(equalTo: view.safeAreaLayoutGuide.leadingAnchor).isActive = true
pdfView.trailingAnchor.constraint(equalTo: view.safeAreaLayoutGuide.trailingAnchor).isActive = true
pdfView.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor).isActive = true
pdfView.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor).isActive = true
guard let path = Bundle.main.url(forResource: materia , withExtension: "pdf") else { return }
if let document = PDFDocument(url: path) {
pdfView.document = document
}
Run Code Online (Sandbox Code Playgroud)
小智 16
我知道这听起来很疯狂,但你所要做的就是pdfView.autoScales = true把pdfView.minScaleFactor = pdfView.scaleFactorForSizeToFit
我的狙击:
let pdfViewer = PDFView();
if let path = Bundle.main.url(forResource: "test", withExtension: "pdf") {
pdfViewer.document = PDFDocument(url: path);
}
pdfViewer.maxScaleFactor = 4.0;
pdfViewer.minScaleFactor = pdfViewer.scaleFactorForSizeToFit;
pdfViewer.autoScales = true;
self.view.addSubview(pdfViewer);
pdfViewer.translatesAutoresizingMaskIntoConstraints = false;
pdfViewer.leadingAnchor.constraint(equalTo: self.view.safeAreaLayoutGuide.leadingAnchor, constant: 0).isActive = true;
pdfViewer.trailingAnchor.constraint(equalTo: self.view.safeAreaLayoutGuide.trailingAnchor, constant: 0).isActive = true;
pdfViewer.bottomAnchor.constraint(equalTo: self.view.safeAreaLayoutGuide.bottomAnchor, constant: 0).isActive = true;
pdfViewer.topAnchor.constraint(equalTo: self.view.safeAreaLayoutGuide.topAnchor, constant: 0).isActive = true;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2831 次 |
| 最近记录: |