# File lib/barby/outputter/prawn_outputter.rb, line 17
    def annotate_pdf(pdf, opts={})
      opts = options(opts)
      xpos, ypos, height, xdim = opts[:x], opts[:y], opts[:height], opts[:xdim]
      ydim = opts[:ydim] || xdim
      orig_xpos = xpos

      if barcode.two_dimensional?
        boolean_groups.reverse_each do |groups|
          groups.each do |bar,amount|
            if bar
              pdf.move_to(xpos, ypos)
              pdf.line_to(xpos, ypos+ydim)
              pdf.line_to(xpos+(xdim*amount), ypos+ydim)
              pdf.line_to(xpos+(xdim*amount), ypos)
              pdf.line_to(xpos, ypos)
              pdf.fill
            end
            xpos += (xdim*amount)
          end
          xpos = orig_xpos
          ypos += ydim
        end
      else
        boolean_groups.each do |bar,amount|
          if bar
            pdf.move_to(xpos, ypos)
            pdf.line_to(xpos, ypos+height)
            pdf.line_to(xpos+(xdim*amount), ypos+height)
            pdf.line_to(xpos+(xdim*amount), ypos)
            pdf.line_to(xpos, ypos)
            pdf.fill
          end
          xpos += (xdim*amount)
        end
      end

      pdf
    end