# File lib/prawn/text/box.rb, line 175
      def render(flags={})
        # dup because normalize_encoding changes the string
        string = @original_string.dup
        unprinted_text = ''
        @document.save_font do
          process_options

          unless @skip_encoding
            @document.font.normalize_encoding!(string)
          end

          @document.font_size(@font_size) do
            shrink_to_fit(string) if @overflow == :shrink_to_fit
            process_vertical_alignment(string)
            @inked = true unless flags[:dry_run]
            if @rotate != 0 && @inked
              unprinted_text = render_rotated(string)
            else
              unprinted_text = _render(string)
            end
            @inked = false
          end
        end
        unprinted_text
      end