Зачем WKWebView загружать контент HTML, масштабируя его? - PullRequest
0 голосов
/ 28 марта 2019

Я использую библиотеку mailcore2 (http://libmailcore.com/api/objc/index.html) в своем проекте. Я хочу отобразить тело сообщения (электронная почта) в WKWebView. Когда я отображаю тело сообщения HTML, webView загружаетсодержание HTML, уменьшив его слишком сильно. Как я могу это исправить? Это связано с содержимым сообщения? Или методом рендеринга тела сообщения HTML? Теперь я реализовал протокол IMAP только с классом MCOIMAPSessionбиблиотека mailcore2. Спасибо

Снимок экрана: https://i.ibb.co/pb1xG0R/IMG-CA104358-B976-1.jpg

Я делаю следующее:

var imapsession: MCOIMAPSession?
func getBodyOfEmail(message: MCOMessage, folder: String, completion: @escaping(String)->()) {
        if mailProtocol == "IMAP" {
            let op = self.imapsession!.htmlBodyRenderingOperation(with: message.imapMessage!, folder: folder)

            print("IMAPSESSION: RENDERING \(message.uid) FOLDER \(folder)")

            op?.start({ (body, error) in
                if let error = error {
                    print("IMAPSESSION: ERROR \(error) HTML BODY RENDERING")
                    completion("")
                } else {
                    if let body = body {
                        completion(body)
                    } else {
                        print("IMAPSESSION: ERROR HTML BODY RENDERING")
                        completion("")
                    }
                }
            })
}
MCOSession.shared.getBodyOfEmail(message: email, folder: folder) { (body) in
                print("BODY: \(body)")
                self.webView.loadHTMLString(body, baseURL: nil)
            }
class MCOMessage {

    var mailProtocol: String // IMAP or POP

    var imapMessage: MCOIMAPMessage?
    var popMessage: MCOPOPMessageInfo?

    var uid: UInt32
    var sequenceNumber: UInt32
    var flags: MCOMessageFlag

    var header: MCOMessageHeader

    var plainText: String?

    // I have only implemented the imap protocol
    init(mailProtocol: String, message: MCOIMAPMessage) {
        self.mailProtocol = mailProtocol
        self.imapMessage = message

        self.uid = message.uid
        self.sequenceNumber = message.sequenceNumber
        self.flags = message.flags
        self.header = message.header
    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...