You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过PowerShell脚本打印带格式的RTF文件?

解决方案:打印带格式的RTF文件

Out-Printer 仅处理纯文本内容,无法解析RTF格式标记,因此会直接输出编码后的纯文本。要打印带完整格式的RTF文件,可采用以下两种可靠方法:

方法1:使用Microsoft Word COM对象

借助Word的自动化功能打开RTF文件并打印,能完整保留所有格式:

$rtfPath = "C:\path\to\your\target.rtf"

# 创建Word应用实例
$word = New-Object -ComObject Word.Application
$word.Visible = $false # 后台运行,不显示窗口

try {
    # 打开目标RTF文件
    $document = $word.Documents.Open($rtfPath)
    # 调用打印功能(使用系统默认打印机)
    $document.PrintOut()
}
finally {
    # 清理资源,避免残留Word进程
    $document.Close()
    $word.Quit()
    [System.Runtime.Interopservices.Marshal]::ReleaseComObject($document) | Out-Null
    [System.Runtime.Interopservices.Marshal]::ReleaseComObject($word) | Out-Null
    [System.GC]::Collect()
    [System.GC]::WaitForPendingFinalizers()
}

方法2:调用系统关联程序打印

若机器未安装Word,可使用系统默认的RTF关联程序(如写字板)执行打印,无需依赖Office组件:

$rtfPath = "C:\path\to\your\target.rtf"
# 启动关联程序并触发打印命令,-Wait参数确保打印完成后再继续脚本
Start-Process -FilePath $rtfPath -Verb Print -Wait

内容的提问来源于stack exchange,提问作者Phil Hughes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 10:25:25