Secara otomatis memformat file teks biasa di Word

2

Kami memiliki sistem lawas yang meludahkan file teks yang dulu dicetak pada printer 132-kolom. Beberapa file bahkan memiliki garis yang lebih panjang, seperti 169 karakter. Untuk alasan apa pun, itu. Ekstensi file DOC dilampirkan, sehingga file terbuka di Microsoft Word meskipun bukan dokumen Word dan hanya teks biasa.

Rupanya ada makro Word pada mesin orang di beberapa titik yang memformat ulang dokumen sehingga akan muat pada halaman - sejauh yang saya tahu, memilih semua teks dan menabrak ukuran font hingga 6pt menyelesaikan ini dengan Courier New atau font Consolas.

Saya benci memaksakan sesuatu seperti ini untuk SEMUA file teks biasa yang dibuka di Word, dan solusi yang ideal adalah mengonversi file-file ini ke PDF (yang juga memecahkan masalah melihatnya sebagai lampiran email pada iPhone) tetapi saya ' Saya kehabisan ide.

Ada saran?

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
Bert
sumber

Jawaban:

1

Saya mengambil file Anda, dan membuat makro untuk Anda:

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

Jadi yang dilakukan adalah pertama-tama mengatur halaman ke mode landscape dengan margin sempit. Lalu saya memilih semua teks dan mengatur font menjadi 7. Kemudian saya mengekspor dokumen sebagai PDF.

Jika Anda memiliki pengguna yang ingin melihat ini pada iPhone atau sesuatu, saya akan melihat otomatisasi Word untuk mengubah semua file ini menjadi PDF dalam proses otomatis. Joel Spolsky menulis sebuah artikel sejak lama tentang proses ini. Banyak yang telah berubah, tetapi konsep-konsep ini masih valid.

Nathan DeWitt
sumber
Tahun lalu saya membuat baris perintah menggunakan beberapa perangkat lunak yang disebut 'verypdf' yang melakukan apa yang kita inginkan. C:\Program Files (x86)\Text2PDF v1.5>txt2pdf "CLMTOT.txt" "clmtot.pdf" "-pfs10" "-plm16" "-prm16" "-ptm16" "-pbm16" "-pol0" "-pps43" "-width850" "-height600"
Bert
Saya akan menandai ini sebagai diterima karena mirip dengan makro yang kami gunakan sekarang - masalah sebenarnya adalah sistem mengeluarkan garis lebih dari 132 karakter dan itu tidak diharapkan.
Bert
0

Untuk mengkonversi ke PDF saya menemukan http://www.adultpdf.com/products/txttopdf/ menjadi sangat baik. Itu memberi saya file PDF yang membuat garis putus sempurna. Ini juga menyediakan antarmuka baris perintah yang mendukung pemilihan jenis font yang berbeda dan akan memungkinkan Anda untuk mengkonversi semua file dalam folder. Perintah untuk melakukan ini untuk semua file di folder saat ini adalah:

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

Ganti TXTtoPDF dengan lokasi TXTtoPDF.exe

Zalastax
sumber