2

我在我的 aspx 页面中放置了一个 radeditor 控件,并将一些内容从 microsoft word 复制到其中,其中包含图像和一些文本数据。然后我保存了数据。我标记它正在将图像转换为流。我注意到图像的字符串是这样的:

<img alt="" src="data:image/png;base64,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" /><br />

我复制了这个源并将其粘贴到另一个 html 文件中并在浏览器中运行它,它显示了我复制的图像。

现在,我从其他网站(浏览器)复制了一些其他文本和图像并将其粘贴到编辑器,它显示图像标签和路径。

我想要的是从浏览器复制并粘贴图像到编辑器应该像上面那样转换它,而不是它具有 src="domain/path/filename.extesion"。

可能吗?另一种解决方案是从 content() 方法中获取所有图像标签并替换其 src 属性值。但为此,我必须从 URL 获取图像,将其转换为字节或流(我不知道你们是怎么做的),使用 base 64 进行编码,然后用实际源替换它。

有人可以帮忙吗??

谢谢...

4

3 回答 3

4

我自己解决了:

为此,我HTMLAgilityPack.dll在 bin 文件夹中添加并在项目中添加了它的引用。在页面中添加了一个telerik RadEditor控件。然后创建了一个方法,该方法parseHtmlToImageSource(string html)接受 html 作为字符串并以流格式返回带有图像的修改后的字符串。单击提交按钮后,将执行以下代码,并为您提供整个 HTML 页面的内容,您可以将其存储到服务器varbinary数据类型中。

protected void submitBtn_Click(object sender, EventArgs e)
{
            try
            {
                string html = parseHtmlToImageSource(editor.Content);
                byte[] array = new GetBytes(html);
        }
            catch (Exception ex)
            {
                throw ex
            }
}

private string parseHtmlToImageSource(string html)
{
            try
            {
                string modifiedHTML = html;
                HtmlDocument doc = new HtmlDocument();
                doc.LoadHtml(html);

                var srcTags = doc.DocumentNode.SelectNodes("//img");
                if (srcTags != null)
                {
                    foreach (var item in doc.DocumentNode.SelectNodes("//img[@src]"))//select only those img that have a src attribute..ahh not required to do [@src] i guess
                    {
                        string value = item.Attributes["src"].Value.ToString();

                        if (!(value.Contains("data:image/") && value.IndexOf("base64") > 0))
                        {
                            string extension = Path.GetExtension(item.Attributes["src"].Value.ToString().ToLower());

                            if (extension.Contains("."))
                            {
                                extension = extension.Remove(extension.IndexOf("."), extension.IndexOf(".") + 1);
                            }

                            item.Attributes["src"].Value = makeImageSrcData(item.Attributes["src"].Value.ToString(), extension);

                            modifiedHTML = modifiedHTML.Replace(value, item.Attributes["src"].Value.ToString());
                        }
                    }
                }

                //doc.ToString();

                //doc.Save("yourFile");//dont forget to save

                return modifiedHTML;
            }
            catch (Exception ex)
            {
                throw ex;
            }
}


private string makeImageSrcData(string url, string extension)
{
            try
            {
                WebResponse result = null;
                WebRequest request = WebRequest.Create(url);

                // Get the content
                result = request.GetResponse();

                Stream rStream = result.GetResponseStream();
                byte[] rBytes = ReadFully(rStream);

                return "data:image/" + extension + ";base64," + Convert.ToBase64String(rBytes, Base64FormattingOptions.None);
            }
            catch (Exception ex)
            {
                throw ex;
            }
}

public static byte[] GetBytes(string str)
{
    try
        {
            byte[] bytes = new byte[str.Length * sizeof(char)];
            System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);
            return bytes;
    }
        catch (Exception ex)
        {
                throw ex;
        }
}

public static byte[] ReadFully(Stream input)
{
            try
            {
                byte[] buffer = new byte[16 * 1024];
                using (MemoryStream ms = new MemoryStream())
                {
                    int read;
                    while ((read = input.Read(buffer, 0, buffer.Length)) > 0)
                    {
                        ms.Write(buffer, 0, read);
                    }
                    return ms.ToArray();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
}

您还可以在读取数据或将其放置到编辑器时使用以下方法将字节转换为字符串:

例如 :

protected void getData()
{
    try
        {   // Make a code to get the data from data base here and then for varbinary fild I have used "fieldName"
        string contents = (byte[])ds.Tables[0].Rows[0]["fieldName"];
        editor.Content = new GetString(excelContents);
    }
    catch (Exception ex)
        {
                throw ex;
        }
}

public static string GetString(byte[] bytes)
{
    try
        {
            char[] chars = new char[bytes.Length / sizeof(char)];
            System.Buffer.BlockCopy(bytes, 0, chars, 0, bytes.Length);
            return new string(chars);
    }
    catch (Exception ex)
        {
                throw ex;
        }
}
于 2012-11-17T07:21:36.467 回答
0

我认为这提出了同样的问题:http ://www.telerik.com/community/forums/aspnet-ajax/editor/conver-image-to-stream-how.aspx

于 2012-11-06T14:15:17.740 回答
0

开发人员的回答解决了我的问题,但作为一个临时(快速和简单)的解决方案,您可以使用 OnClientPasteHtml 来防止粘贴 base64 编码图像:

<telerik:RadEditor ID="RadEditor1" runat="server" OnClientPasteHtml="OnClientPasteHtml">
</telerik:RadEditor> 
    <script type="text/javascript">
        function OnClientPasteHtml(sender, args) {
            if (args.get_value().indexOf(";base64,") > -1) {
                args.set_cancel(true);
            }
        }
    </script>
于 2020-01-17T15:35:29.987 回答