##################### # # Word handling package # ##################### package LTG::DocBuddy::WordSub; use strict; use WIN32::OLE; use WIN32::OLE::Variant; use WIN32::OLE::Const 'Microsoft Word'; require Exporter; use vars qw(@ISA @EXPORT); use LTG::DocBuddy::Config qw($DEBUG); @ISA = qw(Exporter); @EXPORT = qw(get_word_content); $DEBUG && print "Loading LTG::DocBuddy::WordSub package...\n"; sub get_word_content { $DEBUG && print "Calling LTG::DocBuddy::WordSub->get_word_content(@_) method...\n"; my $obj = shift; my $enumerate = new Win32::OLE::Enum($obj->Paragraphs()); my %content; while(defined(my $paragraph = $enumerate->Next())) { $content{$paragraph->{Style}->{NameLocal}} .= "$paragraph->{Range}->{Text}\n\n"; } $enumerate->Reset(); return %content; } 1;