I'm working with PDFKit and trying to rotate PDFAnnotation from a PDFView:
Here is my code for a normal case(no rotated):
class ImageAnnotation: PDFAnnotation {
var image: UIImage?
init(image: UIImage?, bounds: CGRect) {
self.image = image
super.init(bounds: bounds, forType: .stamp, withProperties: nil)
}
override func draw(with box: PDFDisplayBox, in context: CGContext) {
guard let cgImage = self.image?.cgImage else { return }
context.draw(cgImage, in: bound)
}
}
And here is the way I used to rotate PDFAnnotation:
init(image: UIImage?, bounds: CGRect) {
self.image = image
super.init(bounds: bounds.applying(CGAffineTransform(rotationAngle: -CGFloat.pi/12)), forType: .stamp, withProperties: nil)
}
override func draw(with box: PDFDisplayBox, in context: CGContext) {
guard let cgImage = self.image?.cgImage else { return }
context.rotate(by: CGFloat.pi/12)
context.draw(cgImage, in: bounds)
}
But it doesn't work as expected. Can you help me? Thank you.
Post
Replies
Boosts
Views
Activity
Hi, I'm working with UIDocument to store a PDF file. This is code I use for saving a file.
document.close(completionHandler: { (success) in
if success {
document.save(to: url,
for: .forOverwriting,
completionHandler: { (success) in
if success {
print("Saved file successfully")
}
})
}
})
This code works well with a small file size. But if it's a large file like 100MB, it takes around 2-5 minutes to save the file. Is there a way to save file with the changes only? Or create an auto save function triggered whenever the user edit the file?