У меня есть один PDF, и я преобразую PDF в изображение и отображаю в UIImageView
, а затем после того, как я конвертирую это изображение в Base 64, но при конвертации Base64 Я теряю качество изображения, поэтому есть ли какой-нибудь способ предотвратить потерю качества при конвертации в базу 64
, скажите, пожалуйста, есть ли какое-то решение для этого
вот мой код для конвертации
let previewImage1 = convertedImageView.getImage()
let btnImg = UIButton()
btnImg.setImage(previewImage1, for: .normal)
let btn1Imggg2 = btnImg.image(for: .normal)
let imageData2 = btnImg?.jpegData(compressionQuality: 0.0)
let imgString2 = imageData2!.base64EncodedString(options: .init(rawValue: 0))
Даже если я установил качество сжатия на 0,0, его сжатое изображение все равно
У меня есть UIView
Внутри у меня есть ScrollView
, внутри у меня есть ImageView
, и я преобразую всеUIView
в качестве изображения, а затем преобразование в base64. Сценарий, который поможет вам понять,
Код для UIView
К UIImage
func getImage(scale: CGFloat? = nil) -> UIImage {
let newScale = scale ?? UIScreen.main.scale
self.scale(by: newScale)
let format = UIGraphicsImageRendererFormat()
format.scale = newScale
let renderer = UIGraphicsImageRenderer(size: self.bounds.size, format: format)
let image = renderer.image { rendererContext in
self.layer.render(in: rendererContext.cgContext)
}
return image
}