当前位置: 首页>>代码示例>>C#>>正文


C# CreateImageArgs类代码示例

本文整理汇总了C#中CreateImageArgs的典型用法代码示例。如果您正苦于以下问题:C# CreateImageArgs类的具体用法?C# CreateImageArgs怎么用?C# CreateImageArgs使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


CreateImageArgs类属于命名空间,在下文中一共展示了CreateImageArgs类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Piapro_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool Piapro_CreateImage(CreateImageArgs args)
        {
            var mc = Regex.Match(args.Url.Value, "^http://piapro\\.jp/(?:content/[0-9a-z]+|t/[0-9a-zA-Z_\\-]+)$");
            if (!mc.Success)
            {
                return false;
            }

            string src = string.Empty;
            var http = new HttpVarious();
            if (!http.GetData(args.Url.Key, null, ref src, 0, ref args.Errmsg, string.Empty))
            {
                return false;
            }

            Match mc2 = Regex.Match(src, "<meta property=\"og:image\" content=\"(?<big_img>http://c1\\.piapro\\.jp/timg/[0-9a-z]+_\\d{14}_0500_0500\\.(?:jpg|png|gif)?)\" />");
            if (!mc2.Success)
            {
                args.Errmsg = "Pattern NotFound";
                return false;
            }

            // 各画像には120x120のサムネイルがある(多分)ので、URLを置き換える。元々ページに埋め込まれている画像は500x500
            var r = new Regex("_\\d{4}_\\d{4}");
            string minImgUrl = r.Replace(mc2.Groups["big_img"].Value, "_0120_0120");
            Image img = http.GetImage(minImgUrl, args.Url.Key, 0, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:46,代码来源:Thumbnails.Piapro.cs

示例2: ViaMe_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">CreateImageArgs</param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        private static bool ViaMe_CreateImage(CreateImageArgs args)
        {
            var mc = Regex.Match(args.Url.Value, @"^https?://via\.me/-(\w+)$", RegexOptions.IgnoreCase);
            var apiUrl = mc.Result("http://via.me/api/v1/posts/$1");
            var src = string.Empty;
            if (!new HttpVarious().GetData(apiUrl, null, ref src, 0, ref args.Errmsg, MyCommon.GetUserAgentString()))
            {
                return false;
            }

            // "thumb_url":"http://img.viame-cdn.com/photos/0e267550-b6c4-012f-bf69-123138092a26/s150x150.jpg",
            var thummc = Regex.Match(src, "\"thumb_url\":\"([^\"]+)\"", RegexOptions.IgnoreCase);
            if (!thummc.Success)
            {
                return false;
            }

            var thumburl = thummc.Result("$1");
            var img = new HttpVarious().GetImage(thumburl, args.Url.Key, 10000, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:33,代码来源:Thumbnails.ViaMe.cs

示例3: Lockerz_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool Lockerz_CreateImage(CreateImageArgs args)
        {
            var src = string.Empty;
            if (!new HttpVarious().GetData(args.Url.Value, null, ref src, 0, ref args.Errmsg, MyCommon.GetUserAgentString()))
            {
                return false;
            }

            // <meta name="twitter:image" value="http://static.lockerz.com/decalz/original/image001366662197907nmgm7x.jpeg" />
            var thummc = Regex.Match(src, "name=\"twitter:image\" (?:value|content)=\"([^\"]+)\"", RegexOptions.IgnoreCase);
            if (!thummc.Success)
            {
                return false;
            }

            var thumburl = thummc.Result("$1");
            var img = new HttpVarious().GetImage(thumburl, args.Url.Key, 10000, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            // 成功した場合はURLに対応する画像、ツールチップテキストを登録
            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:38,代码来源:Thumbnails.Lockerz.cs

示例4: TwitterGeo_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool TwitterGeo_CreateImage(CreateImageArgs args)
        {
            var img = (new HttpVarious()).GetImage(args.Url.Value, args.Url.Key, 10000, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            // 成功した場合はURLに対応する画像、ツールチップテキストを登録
            string url = args.Url.Value;
            try
            {
                // URLをStaticMapAPIから通常のURLへ変換
                // 仕様:ズーム率、サムネイルサイズの設定は無視する
                // 参考:http://imakoko.didit.jp/imakoko_html/memo/parameters_google.html
                // サンプル
                // static版 http://maps.google.com/maps/api/staticmap?center=35.16959869,136.93813205&size=300x300&zoom=15&markers=35.16959869,136.93813205&sensor=false
                // 通常URL  http://maps.google.com/maps?ll=35.16959869,136.93813205&size=300x300&zoom=15&markers=35.16959869,136.93813205&sensor=false
                url = url.Replace("/maps/api/staticmap?center=", "?ll=");
                url = url.Replace("&markers=", "&q=");
                url = Regex.Replace(url, "&size=\\d+x\\d+&zoom=\\d+", string.Empty);
                url = url.Replace("&sensor=false", string.Empty);
            }
            catch (Exception)
            {
                url = args.Url.Value;
            }

            args.AddTooltipInfo(url, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:43,代码来源:Thumbnails.TwitterGeo.cs

示例5: MiilMe_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">CreateImageArgs</param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool MiilMe_CreateImage(CreateImageArgs args)
        {
            var photoId = new Uri(args.Url.Value).AbsolutePath.Split('/')[2];
            var apiUrl = $"http://miil.me/api/photos/{ToInt32(photoId, 36)}.js";

            var json = string.Empty;
            if (!new HttpVarious().GetData(apiUrl, null, ref json, 0, ref args.Errmsg, MyCommon.GetUserAgentString()))
            {
                return false;
            }

            // name="twitter:image" content="http://images.miil.me/i/ab9f8cd6-9500-11e2-97f8-123143016634.jpg"
            var thummc = Regex.Match(json, "\"url\"\\s*:\\s*\"([^\"]+)\"", RegexOptions.IgnoreCase);
            if (!thummc.Success)
            {
                return false;
            }

            var thumburl = thummc.Result("$1");
            var img = new HttpVarious().GetImage(thumburl, args.Url.Key, 10000, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:35,代码来源:Thumbnails.MiilMe.cs

示例6: Instagram_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool Instagram_CreateImage(CreateImageArgs args)
        {
            var src = string.Empty;
            var http = new HttpVarious();
            if (!http.GetData(args.Url.Value, null, ref src, 0, ref args.Errmsg, string.Empty))
            {
                return false;
            }

            var mc = Regex.Match(src, "<meta property=\"og:image\" content=\"(?<url>.+)\" ?/>");
            if (!mc.Success)
            {
                args.Errmsg = "Pattern NotFound";
                return false;
            }

            var img = http.GetImage(mc.Groups["url"].Value, args.Url.Key, 0, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:37,代码来源:Thumbnails.Instagram.cs

示例7: TwipplePhoto_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool TwipplePhoto_CreateImage(CreateImageArgs args)
        {
            var mc = Regex.Match(args.Url.Value, "^http://p.twipple.jp/(?<contentId>[0-9a-z]+)", RegexOptions.IgnoreCase);
            if (!mc.Success)
            {
                return false;
            }

            var src = string.Empty;
            var http = new HttpVarious();
            if (!http.GetData(args.Url.Key, null, ref src, 0, ref args.Errmsg, string.Empty))
            {
                return false;
            }

            var contentId = mc.Groups["contentId"].Value;
            var thumbnailUrl = "http://p.twpl.jp/show/large/" + contentId;
            var img = http.GetImage(thumbnailUrl, args.Url.Key, 0, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:38,代码来源:Thumbnails.Twipple.cs

示例8: Flickr_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool Flickr_CreateImage(CreateImageArgs args)
        {
            /*

            // 参考: http://tanarky.blogspot.com/2010/03/flickr-urlunavailable.html アグレッシブエンジニア: flickr の画像URL仕様についてまとめ(Unavailable画像)
            // 画像URL仕様 http://farm{farm}.static.flickr.com/{server}/{id}_{secret}_{size}.{extension}
            // photostreamなど複数の画像がある場合先頭の一つのみ認識と言うことにする
            // (二つ目のキャプチャ 一つ目の画像はユーザーアイコン)
            */
            string src = string.Empty;
            var http = new HttpVarious();
            if (!http.GetData(args.Url.Value, null, ref src, 0, ref args.Errmsg, string.Empty))
            {
                return false;
            }

            var mc = Regex.Match(args.Url.Value, "^http://www.flickr.com/", RegexOptions.IgnoreCase);
            var mc2 = Regex.Matches(src, mc.Result("http://farm[0-9]+\\.staticflickr\\.com/[0-9]+/.+?\\.([a-zA-Z]+)"));

            // 二つ以上キャプチャした場合先頭の一つだけ 一つだけの場合はユーザーアイコンしか取れなかった
            if (mc2.Count > 1)
            {
                var img = http.GetImage(mc2[1].Value, args.Url.Value, 0, ref args.Errmsg);
                if (img == null)
                {
                    return false;
                }

                args.AddTooltipInfo(args.Url.Key, string.Empty, img);
                return true;
            }

            args.Errmsg = "Pattern NotFound";
            return false;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:47,代码来源:Thumbnails.Flickr.cs

示例9: StreamZoo_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">CreateImageArgs</param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool StreamZoo_CreateImage(CreateImageArgs args)
        {
            var src = string.Empty;
            if (!new HttpVarious().GetData(args.Url.Value, null, ref src, 0, ref args.Errmsg, MyCommon.GetUserAgentString()))
            {
                return false;
            }

            // 	<meta property="og:image"  content="http://cdn.streamzoo.com/si_5790766_p194egkoms_lr.jpg" />
            var thummc = Regex.Match(src, "property=\"og:image\"(?: *)content=\"([^\"]+)\"", RegexOptions.IgnoreCase);
            if (!thummc.Success)
            {
                return false;
            }

            var thumburl = thummc.Result("$1");
            var img = new HttpVarious().GetImage(thumburl, args.Url.Value, 10000, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:32,代码来源:Thumbnails.StreamZoo.cs

示例10: Tumblr_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool Tumblr_CreateImage(CreateImageArgs args)
        {
            var http = new HttpVarious();
            string targetUrl = args.Url.Value;
            string tmp = http.GetRedirectTo(targetUrl);
            while (!targetUrl.Equals(tmp))
            {
                targetUrl = tmp;
                tmp = http.GetRedirectTo(targetUrl);
            }

            Match mc = Regex.Match(targetUrl, "(?<base>http://.+?\\.tumblr\\.com/)post/(?<postID>[0-9]+)(/(?<subject>.+?)/)?", RegexOptions.IgnoreCase);
            string apiurl = mc.Groups["base"].Value + "api/read?id=" + mc.Groups["postID"].Value;
            string src = string.Empty;
            if (!http.GetData(apiurl, null, ref src, 0, ref args.Errmsg, string.Empty))
            {
                return false;
            }

            string imgurl;
            try
            {
                var xdoc = new XmlDocument();
                xdoc.LoadXml(src);
                string type = xdoc.SelectSingleNode("/tumblr/posts/post").Attributes["type"].Value;
                if (type == "photo")
                {
                    imgurl = xdoc.SelectSingleNode("/tumblr/posts/post/photo-url").InnerText;
                }
                else
                {
                    args.Errmsg = "PostType:" + type;
                    imgurl = string.Empty;
                }
            }
            catch (Exception)
            {
                imgurl = string.Empty;
            }

            if (!string.IsNullOrEmpty(imgurl))
            {
                Image img = http.GetImage(imgurl, args.Url.Key, 0, ref args.Errmsg);
                if (img == null)
                {
                    return false;
                }

                args.AddTooltipInfo(args.Url.Key, string.Empty, img);
                return true;
            }

            return false;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:66,代码来源:Thumbnails.Tumblr.cs

示例11: Nicoseiga_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool Nicoseiga_CreateImage(CreateImageArgs args)
        {
            var mc = Regex.Match(args.Url.Value, "^http://(?:seiga\\.nicovideo\\.jp/seiga/|nico\\.ms/)im(?<id>\\d+)");
            if (!mc.Success)
            {
                return false;
            }

            var img = new HttpVarious().GetImage(string.Format("http://lohas.nicoseiga.jp/thumb/{0}q?", mc.Groups["id"].Value), args.Url.Key, 0, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:29,代码来源:Thumbnails.NicoSeiga.cs

示例12: Twimg_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool Twimg_CreateImage(CreateImageArgs args)
        {
            var mc = Regex.Match(args.Url.Value, "^https?://p\\.twimg\\.com/.*$", RegexOptions.IgnoreCase);
            if (!mc.Success)
            {
                return false;
            }

            var img = new HttpVarious().GetImage(args.Url.Value + ":thumb", string.Empty, 0, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:29,代码来源:Thumbnails.Twitter.cs

示例13: Foursquare_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool Foursquare_CreateImage(CreateImageArgs args)
        {
            string tipsText = string.Empty;
            string mapsUrl = Foursquare.GetInstance.GetMapsUri(args.Url.Key, ref tipsText);
            if (string.IsNullOrEmpty(mapsUrl))
            {
                return false;
            }

            var img = new HttpVarious().GetImage(mapsUrl, args.Url.Key, 10000, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, tipsText, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:30,代码来源:Thumbnails.FourSquare.cs

示例14: Photozou_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool Photozou_CreateImage(CreateImageArgs args)
        {
            var mc = Regex.Match(args.Url.Value, "^http://photozou\\.jp/photo/show/(?<userId>[0-9]+)/(?<photoId>[0-9]+)", RegexOptions.IgnoreCase);
            if (!mc.Success)
            {
                return false;
            }

            string src = string.Empty;
            string apiUrl = mc.Result("http://api.photozou.jp/rest/photo_info?photo_id=${photoId}");
            var http = new HttpVarious();
            if (!http.GetData(apiUrl, null, ref src, 0, ref args.Errmsg, string.Empty))
            {
                return false;
            }

            string thumbnailUrl;
            try
            {
                var xdoc = new XmlDocument();
                xdoc.LoadXml(src);
                thumbnailUrl = xdoc.SelectSingleNode("/rsp/info/photo/thumbnail_image_url").InnerText;
            }
            catch (Exception ex)
            {
                args.Errmsg = ex.Message;
                thumbnailUrl = string.Empty;
            }

            if (string.IsNullOrEmpty(thumbnailUrl))
            {
                return false;
            }

            Image img = http.GetImage(thumbnailUrl, args.Url.Key);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:55,代码来源:Thumbnails.Photozo.cs

示例15: Pixiv_CreateImage

        /// <summary>
        /// BackgroundWorkerから呼び出されるサムネイル画像作成デリゲート
        /// </summary>
        /// <param name="args">Class CreateImageArgs
        ///                                 url As KeyValuePair(Of String, String)                  元URLとサムネイルURLのKeyValuePair
        ///                                 pics As List(Of KeyValuePair(Of String, Image))         元URLとサムネイル画像のKeyValuePair
        ///                                 tooltiptext As List(Of KeyValuePair(Of String, String)) 元URLとツールチップテキストのKeyValuePair
        ///                                 errmsg As String                                        取得に失敗した際のエラーメッセージ
        /// </param>
        /// <returns>サムネイル画像作成に成功した場合はTrue,失敗した場合はFalse
        /// なお失敗した場合はargs.errmsgにエラーを表す文字列がセットされる</returns>
        /// <remarks></remarks>
        private static bool Pixiv_CreateImage(CreateImageArgs args)
        {
            var url = new Uri(args.Url.Value);
            var queries = HttpUtility.ParseQueryString(url.Query);
            if (!string.IsNullOrEmpty(queries["tag"]) && queries["tag"].StartsWith("R-18"))
            {
                args.Errmsg = "NotSupported";
                return false;
            }

            //var mc = Regex.Match(args.Url.Value, "^http://www\\.pixiv\\.net/(member_illust|index)\\.php\\?mode=(medium|big)&(amp;)?illust_id=(?<illustId>[0-9]+)(&(amp;)?tag=(?<tag>.+)?)*$", RegexOptions.IgnoreCase);

            var http = new HttpVarious();
            string src = string.Empty;
            if (!http.GetData(Regex.Replace(args.Url.Value, "amp;", string.Empty), null, ref src, 0, ref args.Errmsg, string.Empty))
            {
                return false;
            }

            // illustIDをキャプチャ
            var illustId = queries["illust_id"];
            var mc2 = Regex.Match(src, string.Format(@"http://i(mg)?([0-9]+)\.pixiv\.net/.+/img/.+/{0}_[ms]\.([a-zA-Z]+)", illustId));
            if (!mc2.Success)
            {
                args.Errmsg = Regex.Match(src, "<span class='error'>ログインしてください</span>").Success ? "NotSupported" : "Pattern NotFound";
                return false;
            }

            var img = http.GetImage(mc2.Value, args.Url.Value, 0, ref args.Errmsg);
            if (img == null)
            {
                return false;
            }

            args.AddTooltipInfo(args.Url.Key, string.Empty, img);
            return true;
        }
开发者ID:t-ashula,项目名称:hoehoe2,代码行数:49,代码来源:Thumbnails.Pixiv.cs


注:本文中的CreateImageArgs类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。