--- Html.pm.orig	2008-05-12 13:22:47.000000000 +0200
+++ Html.pm	2008-05-21 23:54:45.000000000 +0200
@@ -11,6 +11,7 @@
 use Carp;
 use Config;
 use Cwd;
+use Encode qw(decode);
 use File::Spec;
 use File::Spec::Unix;
 use Getopt::Long;
@@ -208,6 +209,7 @@
     # open the output file
     open(HTML, ">$Htmlfile")
             || die "$0: cannot open $Htmlfile file for output: $!\n";
+    binmode HTML, ':utf8';
 
     # put a title in the HTML file if one wasn't specified
     if ($Title eq '') {
@@ -307,15 +309,19 @@
 
     # now convert this file
     my $after_item;             # set to true after an =item
+    my $encoding;
     warn "Converting input file $Podfile\n" if $Verbose;
     foreach my $i (0..$#poddata){
         $_ = $poddata[$i];
+        $_ = decode($encoding, $_) if $encoding;
         $Paragraph = $i+1;
         if (/^(=.*)/s) {        # is it a pod directive?
             $Ignore = 0;
             $after_item = 0;
             $_ = $1;
-            if (/^=begin\s+(\S+)\s*(.*)/si) {# =begin
+            if (/^=encoding\s+(.*)/) {
+                $encoding = $1;
+            } elsif (/^=begin\s+(\S+)\s*(.*)/si) {# =begin
                 _process_begin($1, $2);
             } elsif (/^=end\s+(\S+)\s*(.*)/si) {# =end
                 _process_end($1, $2);