【问题标题】:Getting base64 image from python server to set UIImage in swift从python服务器获取base64图像以快速设置UIImage
【发布时间】:2016-12-02 06:29:00
【问题描述】:

我正在使用 swift/socketio 将图像上传到我的 python 服务器。

发送到服务器

let data = UIImagePNGRepresentation(image)
let base64encoding = data?.base64EncodedString(options: Data.Base64EncodingOptions(rawValue: 3))
let result = client.send(string:base64encoding!)

数据作为 base64 字符串发送到服务器。然后我尝试将其发送回我的 xcode 项目并将其放在 UIImage 中

Python 代码

def connectionMade(self):
    self.factory.clients.append(self)
    print "a clinet connected ", self.factory.clients

def connectionLost(self, reason):
    self.factory.clients.remove(self)

def dataReceived(self, data):
    print data

"""Write back to user"""
self.transport.write(data)

发送回客户端并解码

guard let receivedMessage = client.read(1024*10) else {return}

if let response = String(bytes: receivedMessage, encoding:.utf8) {
    let decodedData = NSData(base64Encoded: response, options: .ignoreUnknownCharacters)


myImage.image = UIImage(data:decodedData! as Data)
myImage.contentMode = .scaleAspectFill

我的图像正在 UIImage 中设置,但它显示为黑色。请帮忙!!!

【问题讨论】:

    标签: python ios socket.io base64


    【解决方案1】:

    编码:

     let base64EnCodedStr:String = imageData.base64EncodedStringWithOptions(.Encoding64CharacterLineLength)
    

    解码:

     let decodedData:NSData = NSData(base64EncodedString: base64EnCodedStr, options: NSDataBase64DecodingOptions.IgnoreUnknownCharacters)!
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-01
      • 2016-10-13
      相关资源
      最近更新 更多