# File htree/encoder.rb, line 44
    def initialize(output_encoding, internal_encoding=HTree::Encoder.internal_charset)
      @buf = ''
      @internal_encoding = internal_encoding
      @output_encoding = output_encoding
      if defined? Encoding::Converter
        if @internal_encoding == output_encoding
          @ic = DummyEncodingConverter.new(@internal_encoding)
        else
          @ic = Encoding::Converter.new(@internal_encoding, output_encoding)
        end
      else
        @ic = Iconv.new(output_encoding, @internal_encoding)
      end
      @charpat = FirstCharPattern[internal_encoding]
      @subcharset_list = SubCharset[output_encoding] || []
      @subcharset_ic = {}
      @subcharset_list.each {|subcharset|
        if defined? Encoding::Converter
          if @internal_encoding == subcharset
            @subcharset_ic[subcharset] = DummyEncodingConverter.new(@internal_encoding)
          else
            @subcharset_ic[subcharset] = Encoding::Converter.new(@internal_encoding, subcharset)
          end
        else
          @subcharset_ic[subcharset] = Iconv.new(subcharset, @internal_encoding)
        end
      }
      @html_output = false
    end