Teilweise Screenshot & Verlust der Bildqualität

Ich drucke einen Teil-Screenshot für Kamerarolle, E-Mail, SMS, FB, Twitter usw. .. Ausgewählter Teilbildschirm - 100 Pixel von oben, 100 Pixel von unten.

Ich habe folgenden Code verwendet:

let top: CGFloat = 100
let bottom: CGFloat = 100

let size = CGSize(width: view.frame.size.width, height: view.frame.size.height - top - bottom)

UIGraphicsBeginImageContext(size)

let context = UIGraphicsGetCurrentContext()!

CGContextTranslateCTM(context, 0, -top)

view.layer.renderInContext(context)

let snapshot = UIGraphicsGetImageFromCurrentImageContext()

UIGraphicsEndImageContext()

UIImageWriteToSavedPhotosAlbum(snapshot, nil, nil, nil)

Der resultierende Screenshot war von schlechter Qualität.

ch habe stundenlang recherchiert und festgestellt, dass mehrere Leute ein ähnliches Problem haben. Ich kann mich nicht wirklich damit abfinden, die Lösungen zu ändern, die ihnen für mein Problem gegeben wurden.

Ich habe es geschafft, einen halben Fehler zu finden. Ich habe mich verändert

UIGraphicsBeginImageContext(size)

z

UIGraphicsBeginImageContextWithOptions(imageView.bounds.size,true,2.0)

Das vergrößert meinen Screenshot im Wesentlichen um den Faktor 2,0

Dies scheint mir einen schärferen / qualitativ besseren Teil-Screenshot zu liefern, obwohl das Bild größer ist, als ich beabsichtigt hatte.

Gibt es eine andere Lösung, die ich anwenden kann und die geeigneter sein könnte?

Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage