Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在Swift中生成图像_Ios_Swift_Image_Rendering - Fatal编程技术网

Ios 在Swift中生成图像

Ios 在Swift中生成图像,ios,swift,image,rendering,Ios,Swift,Image,Rendering,这似乎是一个非常简单的问题,但我在网上找到的关于该主题的文档很少: 如何使用Swift生成图像 更具体地说,我有一个应用程序,可以跟踪真实游戏的分数,并保存这些分数。我希望我的用户能够按需生成记分板,并将其导出为图像,例如在Facebook上共享。大多数关于UIImage编程的教程似乎都是关于更改图像(如应用过滤器等),但这是另一种编程 我认为在这里使用HTML/CSS生成记分板是个好主意,因为可以用它生成表格和概述,然后尝试将其导出为pdf/位图/png,但我不确定这是否是正确的解决方案 如何

这似乎是一个非常简单的问题,但我在网上找到的关于该主题的文档很少:

如何使用Swift生成图像

更具体地说,我有一个应用程序,可以跟踪真实游戏的分数,并保存这些分数。我希望我的用户能够按需生成记分板,并将其导出为图像,例如在Facebook上共享。大多数关于UIImage编程的教程似乎都是关于更改图像(如应用过滤器等),但这是另一种编程

我认为在这里使用HTML/CSS生成记分板是个好主意,因为可以用它生成表格和概述,然后尝试将其导出为pdf/位图/png,但我不确定这是否是正确的解决方案


如何生成我的记分板?

从记分板创建图像的最简单方法是创建记分板视图(
UIView
),用户可以与之交互,当您需要实际图像时,您可以拍摄视图的快照并将其保存在
UIImage
实例中。我创建了一个
UIView
扩展来实现这一点

extension UIView {
    func getImage() -> UIImage {
        UIGraphicsBeginImageContextWithOptions(bounds.size, false, UIScreen.mainScreen().scale)
        drawViewHierarchyInRect(bounds, afterScreenUpdates: true)
        let image = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()
        return image
    }
}
然后,您可以在任何
UIView
上调用此方法,在您的情况下,也可以在记分板视图上调用此方法

let scoreImage = scoreBoardView.getImage()

您将获得
UIImage
实例,以后可以作为PDF或任何其他图像格式使用。

从记分板创建图像的最简单方法是创建记分板视图(
UIView
)用户可以与实际图像进行交互,当您需要实际图像时,可以拍摄视图的快照并将其保存在
UIImage
实例中。我创建了一个
UIView
扩展来实现这一点

extension UIView {
    func getImage() -> UIImage {
        UIGraphicsBeginImageContextWithOptions(bounds.size, false, UIScreen.mainScreen().scale)
        drawViewHierarchyInRect(bounds, afterScreenUpdates: true)
        let image = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()
        return image
    }
}
然后,您可以在任何
UIView
上调用此方法,在您的情况下,也可以在记分板视图上调用此方法

let scoreImage = scoreBoardView.getImage()

您将获得
UIImage
实例,以后可以作为PDF或任何其他图像格式使用。

那么,假设我在UITableView上调用此方法,它会工作吗?那么,假设我在UITableView上调用此方法,它会工作吗?