目前我有一个符合包含UIBezierPath和UIColor的NSCoding的类。
required init(coder aDecoder: NSCoder) {
super.init()
self.lineColor = aDecoder.decodeObjectForKey("color") as! UIColor
self.bezierPath = aDecoder.decodeObjectForKey("bezier") as! UIBezierPath
}
func encodeWithCoder(aCoder: NSCoder) {
aCoder.encodeObject(lineColor, forKey: "color")
aCoder.encodeObject(bezierPath, forKey: "bezier")
}
我用NSKeyedArchiver实现了这个目标
NSKeyedArchiver.archivedDataWithRootObject(path)
并将其保存在服务器上(parse.com) 我可以在没有iOS问题的情况下解压缩它。但是如何与Android兼容?
答案 0 :(得分:1)
我同意Wain。您可以调用self.bezierPath.CGPath来检索CGPath,然后您可以使用以下答案将其转换为SVG。
然后您可以以中性格式发送它。
答案 1 :(得分:0)
您需要将路径和颜色转换为某种通用格式,然后以通用格式导出。像SVG这样的东西,包括RGBA值。 UIBezierPath
和密钥存档是具有私有二进制实现的iOS特定项目 - 尝试在Android上使用它们将花费您很长时间而不是将来的证明。