Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.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绘图图像并保存到磁盘_Ios_Drag And Drop_Uiimage_Core Image - Fatal编程技术网

带对象(箭头)的iOS绘图图像并保存到磁盘

带对象(箭头)的iOS绘图图像并保存到磁盘,ios,drag-and-drop,uiimage,core-image,Ios,Drag And Drop,Uiimage,Core Image,我正在创建一个iOS绘图应用程序,允许用户在页面上放置箭头并定位/拉伸/旋转箭头。当用户保存图像时,我必须在拖动到的确切坐标处使用png箭头修改背景图像 3个可拖动的部分将是UIImage的,带有帽状插图,以使箭头在拉伸时看起来正常。画布UIImageView将具有与实际图像相同的外观,确保没有可见的黑色空间 我的问题是。拉伸可拖动部件后,如何将UIImageView(较小的可拖动部件)的结果保存到磁盘/内存中,以便以后修改背景图像(背景UIImageView画布)。重要的是要确保我用来修改画

我正在创建一个iOS绘图应用程序,允许用户在页面上放置箭头并定位/拉伸/旋转箭头。当用户保存图像时,我必须在拖动到的确切坐标处使用png箭头修改背景图像

3个可拖动的部分将是UIImage的,带有帽状插图,以使箭头在拉伸时看起来正常。画布UIImageView将具有与实际图像相同的外观,确保没有可见的黑色空间

我的问题是。拉伸可拖动部件后,如何将UIImageView(较小的可拖动部件)的结果保存到磁盘/内存中,以便以后修改背景图像(背景UIImageView画布)。重要的是要确保我用来修改画布的图像与表示它的UIImageView可拖动部分看起来完全相同。这意味着它必须准确地保留图像的显示方式,包括capinset


我现在忽略了可拖动部件的旋转,因为我怀疑这将是最简单的部分。

尝试使用此代码从所需视图获取图层截图:

- (UIImage *)imageFromLayer:(CALayer *)layer {
    UIGraphicsBeginImageContext([layer frame].size);
    [layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage *outputImage = UIGraphicsGetImageFromCurrentImageContext();

    UIGraphicsEndImageContext();

    return outputImage;
}

我不明白你想救什么。是“截图”图像还是数据重新创建场景进行修改?只是编辑以澄清更多。我需要在移动/拉伸/旋转较小的UIImageView后保存它们。这样,我可以稍后“重新创建”在背景UIImageView画布中的UIImage上直接看到的图像。您尝试过从图层获取图像吗?这样,您可以从当前状态的任何视图中获取图像。谢谢您的提示。我发现这个可能会起作用。如果你把你的评论作为回答,我会把它标记为接受。