You can do it this way:
#!/usr/bin/perl use strict; use warnings; use File::Spec::Functions qw( catfile ); use Cwd qw(cwd); use Win32::OLE; use Win32::OLE::Const 'Microsoft.Word'; # wd constants $Win32::OLE::Warn = 3; my $dir = cwd; my $word = get_word(); $word->{Visible} = 0; my $filename_in = catfile $dir, 'test.docx'; my $doc = $word->{Documents}->Open($filename_in); my $filename_out = catfile $dir, 'mytest.txt'; $doc->SaveAs( { Filename => $filename_out, FileFormat => wdFormatUnicodeText | wdFormatTextLineBreaks, } ); $doc->Close(0); sub get_word { my $word; eval { $word = Win32::OLE->GetActiveObject('Word.Application'); }; die "$@\n" if $@; unless ( defined $word ) { $word = Win32::OLE->new( 'Word.Application', sub { $_[0]->Quit + } ) or die "Oops, cannot start Word: ", Win32::OLE->LastError, "\n"; } return $word; }
In reply to Re: Win32::OLE SaveAs Unicode
by Anonymous Monk
in thread Win32::OLE SaveAs Unicode
by Anonymous Monk
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |