Я использую версию 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