Bombsquad.DynamicMedia.CombineCss.EmbedAsBase64CssMediaTransformerFactory.TransformText C# (CSharp) Method

TransformText() protected method

protected TransformText ( string text, string &transformedText ) : MediaTransformResult
text string
transformedText string
return MediaTransformResult
        protected override MediaTransformResult TransformText(string text, out string transformedText)
        {
            var result = MediaTransformResult.Success;

            transformedText = BackgroundImagesRexgex.Replace(text, delegate(Match m)
            {
                var url = m.Groups["Url"].Value.Trim(new[] { '\'', '"' });

                string base64;
                string contentType;
                if (!TryGetResourceAsBase64(new Uri(HttpContext.Current.Request.Url, url), out base64, out contentType))
                {
                    result = MediaTransformResult.FailedWithFallback;
                    return m.Value;
                }

                var output = new StringBuilder();
                output.Append("background-image: url(data:");
                output.Append(contentType);
                output.Append(";base64,");
                output.Append(base64);
                output.Append(");");
                return output.ToString();
            });
            return result;
        }