mirror of
https://github.com/farcasclaudiu/myfriendsaround.git
synced 2026-06-29 13:02:05 +03:00
c0d31a8652
user picture image crop
81 lines
2.7 KiB
C#
81 lines
2.7 KiB
C#
using System;
|
|
using System.Net;
|
|
using System.Windows;
|
|
using System.Windows.Controls;
|
|
using System.Windows.Documents;
|
|
using System.Windows.Ink;
|
|
using System.Windows.Input;
|
|
using System.Windows.Media;
|
|
using System.Windows.Media.Animation;
|
|
using System.IO;
|
|
using System.IO.IsolatedStorage;
|
|
using Microsoft.Phone;
|
|
using System.Windows.Media.Imaging;
|
|
|
|
namespace MyFriendsAround.WP7.Utils
|
|
{
|
|
public class IsolatedStorageHelper
|
|
{
|
|
|
|
public static void SaveToLocalStorage(string imageFileName, string imageFolder, byte[] content)
|
|
{
|
|
if (content == null)
|
|
{
|
|
return;
|
|
}
|
|
|
|
var isoFile = IsolatedStorageFile.GetUserStoreForApplication();
|
|
if (!isoFile.DirectoryExists(imageFolder))
|
|
{
|
|
isoFile.CreateDirectory(imageFolder);
|
|
}
|
|
|
|
string filePath = Path.Combine(imageFolder, imageFileName);
|
|
using (var stream = isoFile.CreateFile(filePath))
|
|
{
|
|
stream.Write(content, 0, content.Length);
|
|
}
|
|
}
|
|
|
|
public static WriteableBitmap LoadFromLocalStorage(string imageFileName, string imageFolder)
|
|
{
|
|
var isoFile = IsolatedStorageFile.GetUserStoreForApplication();
|
|
if (!isoFile.DirectoryExists(imageFolder))
|
|
{
|
|
isoFile.CreateDirectory(imageFolder);
|
|
}
|
|
string filePath = Path.Combine(imageFolder, imageFileName);
|
|
if (!isoFile.FileExists(filePath))
|
|
{
|
|
return null;
|
|
}
|
|
using (var imageStream = isoFile.OpenFile(filePath, FileMode.Open, FileAccess.Read))
|
|
{
|
|
var imageSource = PictureDecoder.DecodeJpeg(imageStream);
|
|
return imageSource;
|
|
}
|
|
}
|
|
|
|
public static byte[] LoadFromLocalStorageArray(string imageFileName, string imageFolder)
|
|
{
|
|
var isoFile = IsolatedStorageFile.GetUserStoreForApplication();
|
|
if (!isoFile.DirectoryExists(imageFolder))
|
|
{
|
|
isoFile.CreateDirectory(imageFolder);
|
|
}
|
|
string filePath = Path.Combine(imageFolder, imageFileName);
|
|
if (!isoFile.FileExists(filePath))
|
|
{
|
|
return null;
|
|
}
|
|
using (var imageStream = isoFile.OpenFile(filePath, FileMode.Open, FileAccess.Read))
|
|
{
|
|
byte[] buffer = new byte[imageStream.Length];
|
|
imageStream.Read(buffer, 0, buffer.Length);
|
|
return buffer;
|
|
}
|
|
return null;
|
|
}
|
|
}
|
|
}
|