Вопрос How do i accept MathML? уже объясняет, как обрабатывать выходные данные из Windows 7 и Windows 8 Math Input Panel с использованием собственного кода Windows.Как принять MathML из панели ввода Windows Math?
Можно ли сделать то же самое с любым веб-браузером, используя только JavaScript (то есть, не разрешено использование Silverlight или любого другого плагина)? Я понимаю, что вход MathML находится в буфере обмена, но объявлен как нетекстовый (несмотря на то, что это действительно application/mathml
или более точно UTF-16LE encoded XML with MathML markup with a BOM at the start of the data
). Моя цель - получить MathML
как UTF-8 encoded text
и вставить этот текст через TinyMCE. Полученный MathML позже будет отображаться MathJax
, но может быть обработан сервером. Недостающая часть предназначена для извлечения правильных данных из буфера обмена. Поскольку TinyMCE и JavaScript (как я его использую), вы видите буфер обмена, он всегда пуст, когда он действительно содержит форматы, описанные в How do i accept MathML?.
Я бы предпочел поддерживать MSIE 10 и последние версии Firefox и Google Chrome , Однако в краткосрочной перспективе я был бы в порядке, поддерживая только один браузер, работающий в Windows 8. Я действительно очень хотел бы избежать любой зависимости от плагина даже для поддержки одного браузера, работающего в Windows 8.
Если кто-то может показать мне код для отображения MathML
от Math Input Panel в alert()
, используя только JavaScript (jquery
и TinyMCE
зависимости в порядке, если это поможет), я могу справиться с остальными.
Что касается правильной цветовой гаммы, выбранной для вставки из буфера обмена, это невозможно сделать без браузера AddOn. Используете ли вы CLCL для проверки содержимого буфера обмена и его вкусов? – Thariama
Я пробовал http://www.peterbuettner.de/develop/tools/clipview/ для проверки кливера. Кажется, что 'MathML' на самом деле закодирован в' UTF-16LE' с 'BOM', а не просто' UTF-8'. –
этот инструмент достаточно хорош. +1 для вашего хорошего вопроса – Thariama