Powershell 获取包含评论的页码
Powershell get page number containing the comment
如何获取 WordDocument
中评论的页码?
$doc.Comments| ForEach-Object{
Write-Host $_.Author"," $_.Date"," $_.Range.Text `r`n
# comment page number?
}
Word 不会为其任何对象存储页码,正如您在 docx xml 中看到的那样,但是可以使用 wdActiveEndPageNumber 信息从评论范围中获取它:
$doc.Comments | %{
$pageNo = $_.Scope.Information(3) # wdActiveEndPageNumber
$_.Author, $_.Date, $_.Range.Text, $pageNo -join ', '
}
P.S。我认为 Word 可能不会重新计算实际页码,而是使用内部 LastRenderedPageBreak 元素(XML 文件中的 <w:lastRenderedPageBreak/>
),理论上在某些情况下可能不准确(例如字体是在您的 PC 上丢失并且使用了具有不同字符的替代品 width/height 导致页面回流)。
如何获取 WordDocument
中评论的页码?
$doc.Comments| ForEach-Object{
Write-Host $_.Author"," $_.Date"," $_.Range.Text `r`n
# comment page number?
}
Word 不会为其任何对象存储页码,正如您在 docx xml 中看到的那样,但是可以使用 wdActiveEndPageNumber 信息从评论范围中获取它:
$doc.Comments | %{
$pageNo = $_.Scope.Information(3) # wdActiveEndPageNumber
$_.Author, $_.Date, $_.Range.Text, $pageNo -join ', '
}
P.S。我认为 Word 可能不会重新计算实际页码,而是使用内部 LastRenderedPageBreak 元素(XML 文件中的 <w:lastRenderedPageBreak/>
),理论上在某些情况下可能不准确(例如字体是在您的 PC 上丢失并且使用了具有不同字符的替代品 width/height 导致页面回流)。