Exemplo n.º 1
0
        private string GetFileName(String name, ItemImageSize size)
        {
            Encoding iso  = Encoding.GetEncoding("ISO-8859-1");
            Encoding utf8 = Encoding.UTF8;

            byte[] utfBytes = utf8.GetBytes(name);
            byte[] isoBytes = Encoding.Convert(utf8, iso, utfBytes);
            string filename = iso.GetString(isoBytes);

            filename  = filename.ToLower();
            filename  = filename.Replace(" ", "_");
            filename += "_" + size.ToString().ToLower();
            filename += Extension;
            return(filename);
        }
Exemplo n.º 2
0
        public void LoadItemImage(IItem item, ItemImageSize size, Action <string> callback)
        {
            if (string.IsNullOrEmpty(item.Name))
            {
                callback(string.Empty);
                return;
            }
            string target = _cacheDirectory.FullName + GetFileName(item.Name, size);

            if (File.Exists(target))
            {
                callback(target);
                return;
            }
            Task.Run(() =>
            {
                IItemImageDownloader dl = new ItemImageDownloader();
                dl.DownloadImage(item, target);
                callback(target);
            });
        }