/// <summary> /// URL解析部で呼び出されるサムネイル画像URL作成デリゲート /// </summary> /// <param name="args">Class GetUrlArgs /// args.url URL文字列 /// args.imglist 解析成功した際にこのリストに元URL、サムネイルURLの形で作成するKeyValuePair /// </param> /// <returns>成功した場合True,失敗の場合False</returns> /// <remarks>args.imglistには呼び出しもとで使用しているimglistをそのまま渡すこと</remarks> private static bool Tinami_GetUrl(GetUrlArgs args) { //// http://www.tinami.com/view/250818 //// http://tinami.jp/5dj6 (短縮URL) var mc = Regex.Match(string.IsNullOrEmpty(args.Extended) ? args.Url : args.Extended, "^http://www\\.tinami\\.com/view/\\d+$", RegexOptions.IgnoreCase); if (mc.Success) { args.AddThumbnailUrl(args.Url, mc.Value); return(true); } // 短縮URL mc = Regex.Match(string.IsNullOrEmpty(args.Extended) ? args.Url : args.Extended, "^http://tinami\\.jp/(\\w+)$", RegexOptions.IgnoreCase); if (mc.Success) { try { args.AddThumbnailUrl(args.Url, string.Format("http://www.tinami.com/view/{0}", RadixConvert.ToInt32(mc.Result("${1}"), 36))); return(true); } catch (ArgumentOutOfRangeException) { } } return(false); }
/// <summary> /// URL解析部で呼び出されるサムネイル画像URL作成デリゲート /// </summary> /// <param name="args">Class GetUrlArgs /// args.url URL文字列 /// args.imglist 解析成功した際にこのリストに元URL、サムネイルURLの形で作成するKeyValuePair /// </param> /// <returns>成功した場合True,失敗の場合False</returns> /// <remarks>args.imglistには呼び出しもとで使用しているimglistをそのまま渡すこと</remarks> private static bool PhotoShare_GetUrl(GetUrlArgs args) { var mc = Regex.Match(string.IsNullOrEmpty(args.Extended) ? args.Url : args.Extended, "^http://(?:www\\.)?bcphotoshare\\.com/photos/\\d+/(\\d+)$", RegexOptions.IgnoreCase); if (mc.Success) { // 成功時はサムネイルURLを作成しimglist.Addする args.AddThumbnailUrl(args.Url, mc.Result("http://images.bcphotoshare.com/storages/${1}/thumb180.jpg")); return(true); } // 短縮URL mc = Regex.Match(string.IsNullOrEmpty(args.Extended) ? args.Url : args.Extended, "^http://bctiny\\.com/p(\\w+)$", RegexOptions.IgnoreCase); if (!mc.Success) { return(false); } try { args.AddThumbnailUrl(args.Url, string.Format("http://images.bcphotoshare.com/storages/{0}/thumb180.jpg", RadixConvert.ToInt32(mc.Result("${1}"), 36))); return(true); } catch (ArgumentOutOfRangeException) { } return(false); }