Как появиться смайлик в TinyMCE версии 5.06? - PullRequest
0 голосов
/ 03 июня 2019

Я пытаюсь вставить эмодзи с помощью версии TinyMCE 5.06, но при вставке произошла ошибка. Emoji не появляется, когда я использую Html.Raw () в Asp.Net MVC. Похоже, это "????". Как я могу это исправить ?

  //tinymce plugin and toolbar options
        $scope.tinymceOptions = {
            selector: '#post',         
            plugins: [
               "advlist autolink autoresize link image fullscreen  lists charmap paste print preview hr anchor pagebreak",
                "searchreplace wordcount visualblocks visualchars insertdatetime media nonbreaking wordcount  ",
                "table contextmenu directionality emoticons paste template spellchecker searchreplace help imagetools media "
            ], 
            mobile: {
                theme: "mobile",
                plugins: [ 'autosave', 'lists', 'autolink' ],
                toolbar: [ 'undo', 'bold', 'italic', 'styleselect' ]
            },
            toolbar: "insertfile undo redo | styleselect | bold italic underline left aligncenter alignright alignjustify | forecolor  backcolor | fontselect fontsizeselect| bullist numlist outdent indent | link image media  preview |  emoticons | searchreplace  help ",
            toolbar_items_size: 'small',
            file_picker_types: 'file image media',
            image_title: true,
            automatic_uploads: true,          
            file_picker_types: 'image',
            relative_urls: false,
            file_picker_callback: function (cb, value, meta) {
                var input = document.createElement('input');
                input.setAttribute('type', 'file');
                input.setAttribute('accept', 'image/*');
                input.onchange = function () {
                    var file = this.files[0];

                    var reader = new FileReader();
                    reader.onload = function () {

                        var id = 'blobid' + (new Date()).getTime();
                        var blobCache =  tinymce.activeEditor.editorUpload.blobCache;
                        var base64 = reader.result.split(',')[1];
                        var blobInfo = blobCache.create(id, file, base64);
                        blobCache.add(blobInfo);
                        cb(blobInfo.blobUri(), { title: file.name });
                    };
                    reader.readAsDataURL(file);
                };
                input.click();
            },

            media_url_resolver: function (data, resolve/*, reject*/) {
                if (data.url.indexOf('YOUR_SPECIAL_VIDEO_URL') !== -1) {
                    var embedHtml = '<iframe src="' + data.url +
                    '" width="400" height="400" ></iframe>';
                    resolve({html: embedHtml});
                } else {
                    resolve({html: ''});
                }
            },
            width: "98%",
        };

Я ожидаю, что выходные данные будут ? или ? в качестве примеров, но фактический результат равен ?? .

1 Ответ

0 голосов
/ 05 июня 2019

Проверьте, какой набор символов вы используете для обработки строки HTML. Это может произойти, когда вы случайно конвертируете строку из сложного набора символов (необходимого для эмодзи), такого как Unicode или UTF-8, во что-то более простое, например, ASCII.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...