Как конвертировать изображение в формат base 64 в kendo imagebrowser - PullRequest
1 голос
/ 24 октября 2019

Я использую версию Kendo Kendo.Mvc, Версия = 2015.2.902.545

Я хочу преобразовать мое изображение в формат Base64 в kendo EditorFor, но оно не поддерживает URLHandler ввышеуказанная версия. Ниже приведен скрипт браузера и изображения кендо

Код браузера изображений Kendo:

@(Html.Kendo().EditorFor(model => model.Text)
    .Name(Model.Name)
    .HtmlAttributes(new { style = "width:100%; height:200px", id = Model.Id })
    .ImageBrowser(imageBrowser => imageBrowser
    .Image("~/Content/UserFiles/Images/{0}")
    .Read("Read", "ImageBrowser")
    .Create("Create", "ImageBrowser")
    .Destroy("Destroy", "ImageBrowser")
    .Upload("Upload", "ImageBrowser")
    .Thumbnail("Thumbnail", "ImageBrowser"))
    .Events(e => e.Change(changedEventName))
    .Encode(false)
    .Tools(tool => tool.ViewHtml())
    //.Tools(tool => tool.FontSize())
    //.Tools(tool => tool.FontName())
    // Oliver added on 27 June 2018. To enable the subscript and superscript function
    .Tools(tool => tool.SubScript())
    .Tools(tool => tool.SuperScript())
    .Tools(tool => tool.FontColor())                                                            
    .StyleSheets(s => s.Add("/Content/KendoEditorStyle.css"))
)

Скрипт:

<script>
function imageUrlFn(path) {
    var result = "";
    $.ajax({
        async: false,
        url: "/ImageBrowser/GetImage",
        data: {
            path: path
        },
        success: function (data) {
            result = data;
        }
    });

    return result;
}
</script>

Контроллер:

public ActionResult GetImage(string path)
{
    Byte[] currentFile = System.IO.File.ReadAllBytes(Server.MapPath(Path.Combine(contentFolderRoot, "UserFiles", imagesFolder) + path));

    if (currentFile == null) return HttpNotFound();

    String file = Convert.ToBase64String(currentFile);
    return Json("data:image/png;base64," + file, JsonRequestBehavior.AllowGet);
}

Мне нужна помощь для решения следующей проблемы, например, как передать функцию в браузере изображений, поскольку она не требует .CustomButton, или что-то вроде события при нажатии на кнопку вставки, которая появляется при выборе значка изображения.

Спасибо и С наилучшими пожеланиями Tejas

...