module Asciidoctor::PDF::FormattedText::InlineDestinationMarker

Public Instance Methods

render_behind(fragment) click to toggle source

render_behind is called before the text is printed

# File lib/asciidoctor/pdf/formatted_text/inline_destination_marker.rb, line 7
def render_behind fragment
  unless (pdf = fragment.document).scratch?
    if (name = fragment.format_state[:name])
      if fragment.format_state[:type] == :indexterm
        (pdf.instance_variable_get :@index).link_dest_to_page name, pdf.page_number
      end
      # get precise position of the reference (x, y)
      dest_rect = fragment.absolute_bounding_box
      pdf.add_dest name, (pdf.dest_xyz dest_rect[0], dest_rect[-1])
      # prevent any text from being written
      fragment.conceal
    end
  end
end