2017-09-14 1 views
1

Vous ne savez pas s'il s'agit d'un bogue car PDFKit est en version bêta sur iOS, mais lorsque je crée un PDFDocument basé sur un tableau d'images (en utilisant PDFPage (image :), il retourne l'image . verticalementPDFKit retourne verticalement PDFPage initialisé avec l'image

@IBAction func export(_ sender: Any){ 
    let apdf = PDFDocument() 
    var i = 0 
    while i < arrayOfImages.count{ 
     let image = arrayOfImages[i] 
     let pdfpage = PDFPage(image: image) 
     apdf.insert(pdfpage!, at: i) 
     i = i + 1 
    } 
    //Code for sharing the PDF Document 
    let objectsToShare = [apdf.dataRepresentation()] 
    let activityVC = UIActivityViewController(activityItems: objectsToShare, applicationActivities: nil) 

    activityVC.popoverPresentationController?.sourceView = view 
    self.present(activityVC, animated: true, completion: nil) 
} 

La sortie est la suivante:

enter image description here

Quand il devrait être ceci: enter image description here

I a m 100% sûr que les images sources ne sont pas inversées car elles sont utilisées ailleurs dans l'application. Vous pouvez définir la rotation d'un PDFPage mais je ne vois aucun moyen de le retourner manuellement.

Répondre

1

Une solution (mauvaise) à ce bug est de retourner l'image verticalement à l'avance afin qu'il se renversé en arrière (?):

let img = arrayOfImages[i] 
let image = UIImage(cgImage: img.cgImage!, scale: img.scale, orientation: .downMirrored) 
let pdfpage = PDFPage(image: image) 
+0

En effet, cela est étrange. J'espère que nous n'aurons pas de problèmes une fois qu'ils auront corrigé le bug ... mais merci beaucoup pour la solution de contournement! Je suis reparti. – Holtwick