Взятый от нижней части QUnit
function triggerEvent( elem, type, event ) {
if ( $.browser.mozilla || $.browser.opera ) {
event = document.createEvent("MouseEvents");
event.initMouseEvent(type, true, true, elem.ownerDocument.defaultView,
0, 0, 0, 0, 0, false, false, false, false, 0, null);
elem.dispatchEvent( event );
} else if ( $.browser.msie ) {
elem.fireEvent("on"+type);
}
}
можно, конечно, заменить $ .browser материал к собственным методам определения браузера для создания его jQuery независимый.
Для использования этой функции:
var event;
triggerEvent(ele, "change", event);
Это в основном запустит реальное событие DOM, как будто что-то на самом деле изменилось.
Средства визуализации текста протокола X не поддерживают сглаживание и в наши дни не используются особо. (Я думаю, причина в том, что протокол шрифтов X не имеет места для альфа-канала.)
GTK и Qt визуализируют текст в клиенте с использованием библиотеки FreeType, получая в результате растровое изображение с альфа-каналом. Если X-сервер поддерживает расширение RENDER, клиент может отправить это растровое изображение на сервер, чтобы оно было наложено на дисплей, используя его альфа-канал. Если X-сервер не поддерживает RENDER, клиент должен получить область экрана, в которой должен отображаться текст (в основном, сделать небольшой снимок экрана), выполнить альфа-смешивание на стороне клиента и отправить полученное непрозрачное растровое изображение обратно на X-сервер для отображения.
FreeType находится на неправильном уровне стека. Это позволит вам рисовать глифы только в определенных местах. Обычно вам нужен как минимум механизм выбора шрифта (предоставленный Fontconfig ) и механизм формирования (предоставляемый Pango или Qt).
И Pango, и Qt используют разветвленную версию заброшенный механизм компоновки FreeType, но он согласовывается с проектом HarfBuzz .
См. также этот пост Бехдада Эсфахбода: Pango vs HarfBuzz и этот более длинный и более подробный документ : Состояние отображения текста .
FreeType . GTK + использует Pango, а Qt имеет свою собственную библиотеку макета текста, но оба они используют FreeType в конце, а несколько приложений (например, XTerm с включенными шрифтами с антиалиасингом) используют FreeType через библиотеку нижнего уровня libXft, которая поставляется с Xorg.