class HTML::Pipeline::SVGTeX::PostFilter
Public Instance Methods
call()
click to toggle source
# File lib/html/pipeline/svgtex.rb, line 76 def call doc.search('code.mathjax').each do |node| eqn = node.inner_text rsp = session.post(context[:svgtex_url], :q => eqn) if rsp.status == 200 node.parent.replace rsp.body.gsub(/margin-(left|right): 0px; /, "") else node.remove_attribute 'class' end end doc.search('code:not([class])').each do |node| eqn = node.inner_text next unless eqn.sub!(/\A\{mathjax\} /, '') rsp = session.post(context[:svgtex_url], :q => eqn) if rsp.status == 200 node.replace "<img style='display: inline; max-height: 1em;' class='mathjax' src='data:image/svg+xml;base64,#{Base64.encode64 rsp.body}' alt='#{CGI.escape_html eqn}' />" end end doc end
session()
click to toggle source
# File lib/html/pipeline/svgtex.rb, line 97 def session @session ||= Patron::Session.new end