ios - 如何以编程方式将图像保存在自定义位置?

标签 ios xamarin xamarin.ios uiimage

我需要将图像保存在 iOS 中的自定义文件夹位置。当图像保存在设备的默认位置时,我使用了以下代码来保存图像。

        UIGraphics.BeginImageContext(nativechart.Frame.Size);
        nativechart.Layer.RenderInContext(UIGraphics.GetCurrentContext());

        UIImage image = UIGraphics.GetImageFromCurrentImageContext();
        UIGraphics.EndImageContext();

        //Captured chart image will save into photo album

        image.SaveToPhotosAlbum(new UIImage.SaveStatus(delegate (UIImage img, NSError error) { }));

        ////save image

        NSData data = image.AsJPEG(1.0f);
        NSFileManager fileManager = NSFileManager.DefaultManager;
        string[] paths = NSSearchPath.GetDirectories(NSSearchPathDirectory.PicturesDirectory, NSSearchPathDomain.All, true);
        string documentsDirectory = paths[0];
        string fullPath = documentsDirectory + "/" + filename;
        fileManager.CreateFile(fullPath, data, new NSDictionary());

你能帮我把图片保存到自定义文件夹位置吗?

最佳答案

下面是将图片保存到文档目录的代码

   var photo = yourImageFile as UIImage;
   var documentsDirectory = Environment.GetFolderPath
                         (Environment.SpecialFolder.Personal);
    var directoryname = Path.Combine(documentsDirectory, "FolderName");
   Directory.CreateDirectory(directoryname);
   string jpgFilename = System.IO.Path.Combine (directoryname, "Photo.jpg"); // hardcoded filename, overwritten each time. You can make it dynamic as per your requirement.

   NSData imgData = photo.AsJPEG();
   NSError err = null;
   if (imgData.Save(jpgFilename, false, out err)) {
       Console.WriteLine("saved as " + jpgFilename);
   } else {
       Console.WriteLine("NOT saved as " + jpgFilename + " because" + err.LocalizedDescription);
   }

来源Link

关于ios - 如何以编程方式将图像保存在自定义位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46296473/

相关文章:

xamarin - 应用程序不会部署到 Android,但会编译

android - 在 Android 上提供离线 html 5 移动应用程序

ios - iOS 上的蓝牙和播放列表

objective-c - 在 Monotouch 中调整大小并将图像保存到磁盘

ios - 如何在 ios 应用程序商店的 Release模式下构建 React Native 应用程序?

ios - 4.0 的 Vuforia VideoPlayback 示例?

javascript - 检查 React Native 中是否始终启用位置服务(iOS 和 Android 均如此)

ios - 如何为 iOS 和 OSX 构建 OpenSSL

ios - LocationManager.DidDetermineState 中的 HTTP 请求

ios - 在不呈现/显示 UIView 的情况下将 UIVIew 转换为 UIImage