如何使用perl找到段落的对齐方式?

如何使用perl找到段落的对齐方式?,perl,ms-word,ole,Perl,Ms Word,Ole,是否有一种方法可以找出MS Word文档中段落的理由。有人能帮我吗?使用OLE,您似乎可以通过ParagraphFormat2对象获得对齐(或对齐),该对象具有alignment属性。以下是OLE文档中的一个示例: ActivePresentation.Slides(1).Shapes(2).TextFrame2.TextRange2.ParagraphFormat2.Alignment 您可以阅读有关此对象的更多信息 要提供这方面的Perl示例,请查看以下示例: use strict; us

是否有一种方法可以找出MS Word文档中段落的理由。有人能帮我吗?

使用OLE,您似乎可以通过
ParagraphFormat2
对象获得对齐(或对齐),该对象具有
alignment
属性。以下是OLE文档中的一个示例:

ActivePresentation.Slides(1).Shapes(2).TextFrame2.TextRange2.ParagraphFormat2.Alignment
您可以阅读有关此对象的更多信息

要提供这方面的Perl示例,请查看以下示例:

use strict;
use warnings;
use Win32::OLE qw(in with);
use Win32::OLE::Const 'Microsoft Word';
use Win32::OLE::Variant;

my $word = Win32::OLE->GetActiveObject('Word.Application')
  || Win32::OLE->new( 'Word.Application', 'Quit' );
$word->{Visible} = 1;
my $doc = $word->{Documents}->Open('<full path to file>');
print $doc->Paragraphs(1)->{Alignment} . "\n";
$doc->Close();
使用严格;
使用警告;
使用Win32::OLE qw(与一起使用);
使用Win32::OLE::Const“Microsoft Word”;
使用Win32::OLE::Variant;
my$word=Win32::OLE->GetActiveObject('word.Application')
||Win32::OLE->new('Word.Application','Quit');
$word->{Visible}=1;
我的$doc=$word->{Documents}->Open(“”);
打印$doc->段落(1)->{Alignment}。“\n”;
$doc->Close();
您至少需要在安装了Microsoft Word的计算机上安装
Win32::OLE
库。在编写Perl应用程序以使用OLE时,任何OLE对象都是方法调用,任何OLE成员都是哈希引用

打开文件时,需要提供文件的完整路径,即“C:\\folder\\doc.docx”。将传递给
段落的数字更改为所需段落的编号(在OLE数组中,从1开始)


对齐
键将返回一个int,它对应于一个。我能够测试这一点;0=>Left,1=>Center,2=>Right,3=>Justified.

可以解释一下如何在perl中使用它吗?@Praveenkumar我在文章中添加了一个示例,请随意看一下。执行后,它在para2.pl第18行的未定义值上抛出“无法调用方法”Open“。抛出@最后一行(my$doc=…)@Praveenkumar看看我刚做的更新。打开文件时,需要传入文件的完整路径。