Отображения шрифтов-лицо @шрифтов в капибара-webkit в

когда я тестирую свой сайт с помощью capybara-webkit и делаю скриншот, объявления @font-face в CSS игнорируются.

Это особенно плохо, потому что я использую FontAwesome, поэтому будут большие различия в том, как страница отображается в реальном браузере.

Как воспроизвести:https://gist.github.com/anonymous/4948827

выход:http://i.imgur.com/5lsrleY.jpg

есть ли способ исправить это?

2 ответов


в зависимости от версии qt что capybara-webkit построен против, webkit нуждается в не localhost urls в белом списке. Это включает в себя мета-ссылки на внешние активы, такие как шрифты.

чтобы это произошло глобально, добавьте это в spec_helper.rb в блоке конфигурации rspec:

config.before(:each) do
  page.driver.allow_url("the-domain-name.com")
end

если у вас есть раньше: каждый уже, просто бросьте его туда вместо этого. allow_url также принимает массив строк.

Я поместил комментарий в вашу суть к этому эффект.


некоторые исследования показывают, что полностью можно отображать пользовательские шрифты в Capybara-Webkit, как и в PhantomJS. Это Сообщение Форума PhantomJS определяет проблемы, неприятности. Краткое описание:

  1. шрифты SVG работают лучше всего.
  2. шрифты OTF как правило, не работают.
  3. он должен быть исправлен с помощью Qt5, поэтому проверьте, какую версию Qt вы создали.