iOS PDF套件 - 完整尺寸页面

发布于 2025-01-20 23:36:06 字数 1447 浏览 3 评论 0原文

我想创建一个具有完整尺寸页面的PDF文档。它不会填写整个页面。我该如何修复。

class PDFAssortmentExporter: NSObject {
        
    var metaDataPDF: PDFMetaData
    lazy var pageWidth : CGFloat  = {
        return 11 * 72.0
    }()

    lazy var pageHeight : CGFloat = {
        return 8.5 * 72.0
    }()

    lazy var pageRect : CGRect = {
        CGRect(x: 0, y: 0, width: pageWidth, height: pageHeight)
    }()

    lazy var marginPoint : CGPoint = {
        return CGPoint(x: 10, y: 10)
    }()

    lazy var marginSize : CGSize = {
        return CGSize(width: self.marginPoint.x * 2 , height: self.marginPoint.y * 2)
    }()
    
    init(metaDataPDF: PDFMetaData) {
        self.metaDataPDF = metaDataPDF
    }
    
    func prepareData() -> Data {
        
        let pdfMetaData = [
            kCGPDFContextCreator: metaDataPDF.contextCreatorPDF,
            kCGPDFContextAuthor: metaDataPDF.authorPDF,
            kCGPDFContextTitle: metaDataPDF.contextTitle
        ]

        let format = UIGraphicsPDFRendererFormat() 
        format.documentInfo = pdfMetaData as [String: Any]
        
        let renderer = UIGraphicsPDFRenderer(bounds: pageRect, format: format)

        
        let data = renderer.pdfData { (context) in

        }
        
        return data
    }
}

I want to create a pdf document with full size page. It doesn't fill the whole page. How can I fix it.

class PDFAssortmentExporter: NSObject {
        
    var metaDataPDF: PDFMetaData
    lazy var pageWidth : CGFloat  = {
        return 11 * 72.0
    }()

    lazy var pageHeight : CGFloat = {
        return 8.5 * 72.0
    }()

    lazy var pageRect : CGRect = {
        CGRect(x: 0, y: 0, width: pageWidth, height: pageHeight)
    }()

    lazy var marginPoint : CGPoint = {
        return CGPoint(x: 10, y: 10)
    }()

    lazy var marginSize : CGSize = {
        return CGSize(width: self.marginPoint.x * 2 , height: self.marginPoint.y * 2)
    }()
    
    init(metaDataPDF: PDFMetaData) {
        self.metaDataPDF = metaDataPDF
    }
    
    func prepareData() -> Data {
        
        let pdfMetaData = [
            kCGPDFContextCreator: metaDataPDF.contextCreatorPDF,
            kCGPDFContextAuthor: metaDataPDF.authorPDF,
            kCGPDFContextTitle: metaDataPDF.contextTitle
        ]

        let format = UIGraphicsPDFRendererFormat() 
        format.documentInfo = pdfMetaData as [String: Any]
        
        let renderer = UIGraphicsPDFRenderer(bounds: pageRect, format: format)

        
        let data = renderer.pdfData { (context) in

        }
        
        return data
    }
}

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

抠脚大汉 2025-01-27 23:36:06

将 pdfView 的显示模式更改为单页

pdfView.displayMode = .singlePage
pdfView.displayDirection = .vertical
pdfView.autoScales = true
//pdfView.minScaleFactor = pdfView.scaleFactorForSizeToFit
pdfView.usePageViewController(true, withViewOptions: nil)

Change the displayMode to single page for pdfView

pdfView.displayMode = .singlePage
pdfView.displayDirection = .vertical
pdfView.autoScales = true
//pdfView.minScaleFactor = pdfView.scaleFactorForSizeToFit
pdfView.usePageViewController(true, withViewOptions: nil)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文