在 Word 中自动格式化纯文本文件

在 Word 中自动格式化纯文本文件

我们有一个旧系统,它输出以前在 132 列打印机上打印的文本文件。有些文件的行数甚至更长,例如 169 个字符。无论出于什么原因,.文档附加了文件扩展名,这样即使文件不是 Word 文档而只是纯文本,也可以在 Microsoft Word 中打开。

显然,人们的机器上曾经有一个 Word 宏,可以重新格式化文档以使其适合页面 - 据我所知,选择所有文本并将字体大小减小到 6pt 可以使用 Courier New 或 Consolas 字体实现这一点。

我不想强制对在 Word 中打开的所有纯文本文件执行这样的操作,理想的解决方案是将这些文件转换为 PDF(这也解决了在 iPhone 上将它们作为电子邮件附件查看的问题)但我没有主意了。

有什么建议么?

DATE 02-15-14                                          LISTING OF HIRED AND TERMINATED EMPLOYEES FOR 01/01/14 - 01/31/14                                          PAGE 1

EMPNO.....    AGENT NAME..........    Employee Name............    HIRE DATE    TERM DT.    LOGIN ID............    EMAIL NAME..............................

30594         ABC-NEWYORK            JOE SMITH               01/06/14                NEWYORK.JOE             JOE SMITH

答案1

我获取了您的文件并为您制作了一个宏:

Sub LongWidth()
'
' LongWidth Macro
'
'
    With Selection.PageSetup
        .Orientation = wdOrientLandscape
        .TopMargin = InchesToPoints(0.5)
        .BottomMargin = InchesToPoints(0.5)
        .LeftMargin = InchesToPoints(0.5)
        .RightMargin = InchesToPoints(0.5)
        .Gutter = InchesToPoints(0)
        .HeaderDistance = InchesToPoints(0.5)
        .FooterDistance = InchesToPoints(0.5)
        .PageWidth = InchesToPoints(8.5)
        .PageHeight = InchesToPoints(11)
        .GutterPos = wdGutterPosLeft
    End With
    Selection.WholeStory
    Selection.Font.Size = 7
    ActiveDocument.ExportAsFixedFormat OutputFileName:= _
        "C:\Path\To\Folder\foo.pdf", ExportFormat:=wdExportFormatPDF, _
        OpenAfterExport:=True, OptimizeFor:=wdExportOptimizeForPrint, Range:= _
        wdExportAllDocument, From:=1, To:=1, Item:=wdExportDocumentContent, _
        IncludeDocProps:=True, KeepIRM:=True, CreateBookmarks:= _
        wdExportCreateNoBookmarks, DocStructureTags:=True, BitmapMissingFonts:= _
        True, UseISO19005_1:=False
End Sub

因此,此操作首先将页面设置为横向模式,边距较窄。然后我选择所有文本并将字体设置为 7。然后我将文档导出为 PDF。

如果有用户希望在 iPhone 或其他设备上查看此内容,我会研究使用 Word 自动化流程将所有这些文件转换为 PDF。Joel Spolsky写了一篇文章很久以前就已开始讨论这一过程。虽然发生了很多变化,但这些概念仍然有效。

答案2

对于转换为 PDF,我发现http://www.adultpdf.com/products/txttopdf/非常棒。它给我的 PDF 文件完美地保留了换行符。它还提供了一个命令行界面,支持选择不同的字体类型,并允许您转换文件夹中的所有文件。对当前文件夹中的所有文件执行此操作的命令是:

@echo off
for /r %%F in (*) do TXTtoPDF "%%~nF"

将 TXTtoPDF 替换为 TXTtoPDF.exe 的位置

相关内容