3

If I want to imitate the (scaled) look, albeit not the feel, of a typical line printer printout on fan-fold paper, using Letter-, Legal- or A4-sized paper, what settings should be used to reproduce the ratio of character height to inter-line distance, character size and pitch, etc.?

Perhaps, a tool (Windows or UNIX) exists to generate such printouts?

Leo B.
  • 19,082
  • 5
  • 49
  • 141
  • Will the orientation be Landscape or Portrait? – Walter Mitty Mar 09 '23 at 23:35
  • @WalterMitty Please use your good judgement and take a guess. – Leo B. Mar 09 '23 at 23:38
  • 8
    Don't forget you need a color printer to get your proper greenbar. – davidbak Mar 10 '23 at 01:02
  • 2
    Don't forget you always alway always need to print a cover sheet, in order to be authentic, as seen in this answer (where you can also see that "greenbar" is the name for almost any pastel colored lines - those lines BTW are always 3 lines of white, 3 lines of color.) – davidbak Mar 10 '23 at 01:12
  • @davidbak - and you need a duplex printer to put the greenbar on the side you don't print on :-) – dave Mar 10 '23 at 01:26
  • 1
  • 4
    @davidbak Where I grew up, the fan-fold printer paper was white as snow! And there were systems besides IBM, you know :) – Leo B. Mar 10 '23 at 01:56
  • @davidbak Actually, "3 lines of white, 3 lines of color" goes to a very core issue: Did typical line printers print 6 lpi (3+3) or 8 lpi (4+4 as in Raffzahn's answer)? – manassehkatz-Moving 2 Codidact Mar 10 '23 at 02:10
  • @manassehkatz-Moving2Codidact - dunno, but whatever it was the guys making greenbar paper knew how to do color bars 3 lines high ... (you can see it in that image) – davidbak Mar 10 '23 at 02:23
  • 1
    @manassehkatz-Moving2Codidact - an IBM 1443 manual here says the operator could manually select either 6 or 8 LPI for that printer. (See page 1 under "Printing Operations", 2nd paragraph.) Presumably others too. – davidbak Mar 10 '23 at 02:30
  • @davidbak 'manually select? Err, yes, but to not forget the swap the control tape as well. – Raffzahn Mar 10 '23 at 02:42
  • @Raffzahn - as if anyone ever changed the setting after the big damn thing was installed. Don't you think? The field engineer set it the way you wanted and left and then it was a service call to get it changed? Meanwhile your facilities department had already ordered 10 pallets of custom-logo paper? So it wasn't like it was 6LPI most of the day but you switched it to 8LPI for the big inventory run at 8PM, then back? – davidbak Mar 10 '23 at 02:51
  • 1
    @manassehkatz-Moving2Codidact 6 lines per inch is a compatibility setting for old time (pre computer) tabulating machinery. It was used to go with classic ledger height 11 inch paper - producing 66 lines a page. In computing 8 1/2 inch soon became standard, producing not only the same 66 lines at 8 lines per inch, but also adding 1/4 inch space to avoid printing across the fold even when less than super perfect aligned, improving handling al lot. – Raffzahn Mar 10 '23 at 02:51
  • @Raffzahn - nice, IDNKT! – davidbak Mar 10 '23 at 02:51
  • 1
    @davidbak Not every customer had the money to have a printer dedicated to every form. It was quite common to exchange the form tape according to job. They encoded not only page length, but also all vertical positions. Think an invoice with an order ID section (customer address), a list of items, some sum and/or some footing. Such used at least 3 tape columns. One for (standard) start of page (ID section), one for start of items and one for the sum/footer. Print program inserted according feed. This not only secured positioning but also speed up printing, as skipping does move paper faster. – Raffzahn Mar 10 '23 at 03:05
  • Wow, guess I didn't know what a control tape was! I only ever used those things at locations utilized by programmers - colleges/universities, and the R&D departments of various industrial companies/military (sub)contractors. – davidbak Mar 10 '23 at 03:09
  • @davidbak See this 1403 printer video. See that grey tape on the top right side with the transport holes in the middle? It's made of a durable oil resistant paper. Each transport hole equals a line, so it will be cut and glues to fit the desired form length (according to line height - that's why page height must be a multiple of line height). Other tracks can be used to set markings the printer can skip to. Track#1 is by default top of form. The first byte of a print line contains a feed byte encoding if and where to skip to. (I did field service) – Raffzahn Mar 10 '23 at 03:24
  • @davidbak The OP will also have to set it up to print the greenbar all the way to the bottom of the page even if the text doesn't extend that far. – doneal24 Mar 10 '23 at 17:08
  • @davidbak "music"-ruled seemed to be also an option: alternating lines blank and multiple-ruled. Maybe it was a UK/European vs North America thing? – scruss Mar 12 '23 at 12:18

4 Answers4

10

I would assume it to be already covered in this answer.


Basic Numbers for classic printers are

  • Width of 14 inch
  • Height of 8½ inch
  • 10 characters per inch
  • 8 lines per inch

At 132 columns the usable area is

  • 13⅕ inch

or a ratio of

  • 1:33:1

for perforation to print area.

There is no page height, lines are set continuous, that means there are (up to)

  • 68 lines per page

Printers did have a top of page setting, but that did not do any formatting or skipping of space, unless a 'page feed' was given. In that case feed was done until the line tracker detected the according marker. For standard paper this marker was reached every 68 lines.

Convention for regular prints was to send a maximum of 66 lines before issuing a page feed. This left

  • Two lines (or 2/8th of an inch) unused.

What this meant for paper borders depended entirely on how the paper was inserted (*1).

For simple printing this was usually done with the page perforation roughly a line above the print position. which resulted in a ratio:

  • 1:66:1

Of course this could be any other setting for other forms or margins.

The same works of course with any other page size, but then you might need to calculate based on whatever paper is used.

Also, especially when it came to letter type paper, the feed margin was not part of the final page but to be added (and to be removed along the perforation. That means an

  • 8½ by 11 inch (US Letter size) paper
  • meant for sprocket feed
  • measures 9 by 11 inch and has a horizontal ratio of
  • 2:33:2

Bottom line:

  • No top or bottom margin
  • No side margins
  • 0.25 inches on each side for feed perforation to be considered.
    • i.e. added or subtracted according to paper

Now, for the "tool", what about Open Office Writer (*2)?

  • Set page size to 14 by 8.5
  • Set left and right margins to 0.25
  • Set Top and Bottom margins to 0.125
  • Set font to a fixed one like Liberation Mono or Courier New
  • Set Font size to fit 66 lines (9pt line height IIRC)
  • Insert your text
  • Print to PDF

The process can of course be automated - which depends on the text processor choosen.


*1 - Set printer offline, press manual page feed, insert paper aligned to indent, set printer online again.

*2 - Or Word or any other word processor capable of formatting - including TEX.

Raffzahn
  • 222,541
  • 22
  • 631
  • 918
  • 1
    Don't forget to add a little randomness to the character positioning for the authentic look; vertical in the case of a drum printer. – dave Mar 10 '23 at 00:58
  • @another-dave I wish there was a tool that does that. – Leo B. Mar 10 '23 at 02:04
  • @LeoB. Ho should a tool do that? I.e. you may want too tell at least what the output media with what kind of limitation you got in mind. And then there is ofc. Word: Set page size, add margins, font type and size and maybe some background- voila :) – Raffzahn Mar 10 '23 at 02:19
  • A tool which generates PostScript, like the one @another-dave mentioned in his comment, could add a little randomness in character positions with relative ease. – Leo B. Mar 10 '23 at 02:36
  • @LeoB. You might want to add that to your Question - if that's what you're looking for. I might sound like a broken record, but Word (as well as OO Writer) can do PDF, so set the values as above, paste the text you want to see and generate. – Raffzahn Mar 10 '23 at 02:40
  • @Raffzahn How? --wonkiness=0.5mm, for example :-) – dave Mar 10 '23 at 03:08
  • 1
    When I got line printouts as a student, the printer was adjusted IIRC so that a carriage control character of "1" would place the paper 1.5 lines below the top of the page, but each job was prefixed by a banner page which a row of asterisks printed 2 lines above it, and another row of asterisks exactly one page below that, so that the middle line of the asterisks would land right on the performation. This made it possible for the person running the shop to take a stack of printouts and separate out the different jobs thereon. – supercat Mar 10 '23 at 07:18
  • 1
    @LeoB. that wouldn't be hard in LaTeX. You'd need to tone down my bad typewriter imitation but it demonstrates how you could create the effect – Chris H Mar 10 '23 at 14:40
  • 1
    Sorry, I am pretty darn sure from my own memory (but have to go hunting for printouts - I am pretty sure I saved a few (but only a few) from 40 years ago) that the standard was 14+" wide, 11" tall. 14+x8.5 would be US "legal" size but landscape - it wasn't that. It was 11" tall so folded (or even chopped) on the right it would be close to letter size. Yes, 8 lpi was a thing - not doubting that. But the standard height was 11". – manassehkatz-Moving 2 Codidact Mar 10 '23 at 15:04
  • @manassehkatz-Moving2Codidact you are aware that there were endless paper variations? Same way as everyone got his own forms? 14x8.5 is the most common one - which came with introduction 8 lpi to keep the 66 line format but save paper on printout. Likewise, 14 inch printable area would result in 140 characters, not 132. Such wider (15") paper was of course as well availble (and used with 136 character printers), but again, it was a variation. – Raffzahn Mar 10 '23 at 15:40
  • I know there were plenty of variations. But personally (and yes, my experience was quite limited compared to yours - no doubt about that !) the paper I always saw (and still see if I search for it) is 14+x11. Special forms were different - I actually got to program some myself (PC/AT printing forms on a Printronix for a railroad that would normally have been done on a mainframe - but the mainframe people would have taken "forever" to get the job done), and they were probably something like 6" high by 11" wide or similar. But default was always 14+x11 green bar. – manassehkatz-Moving 2 Codidact Mar 10 '23 at 15:43
  • So you are talking about a time when line printers were on the way out, right? – Raffzahn Mar 10 '23 at 15:47
  • My experience is primarily late 70s/early 80s. – manassehkatz-Moving 2 Codidact Mar 10 '23 at 15:59
  • @Raffzahn No, my question is not concerned with printer artefacts. Ideally, I'm looking for a tool that can automatically arrange NxM characters within a rectangle of a given size, automatically selecting the font based on size or pitch, depending on what is more restrictive, and adjusting the inter-line spacing or character spacing as appropriate. Incidentally, I'm familiar with 12" paper that would fit 72 lines fold to fold. The assembler printed 63 lines + 2 header lines per page, allowing for generous margins. – Leo B. Mar 10 '23 at 16:51
  • 1
    @manassehkatz-Moving2Codidact I concur that 6 lines per inch / 11 inches was standard (in the UK, and for minis and micros as well as IBM mainframes) and Raffzahn even mentions this first in his other answer which he links. – grahamj42 Mar 10 '23 at 21:19
  • what did you use to generate this page image: operating system - What information was present in line printer printout cover/trailer? - Retrocomputing Stack Exchange, please? It's clearly not a scan. It has a much more authentic (to me) font than Courier – scruss Mar 12 '23 at 13:19
5

In my experience, the common size for line printer paper was 14" or so (i.e., actually a bit more to include the feed holes) x 11", with standard horizontal spacing 10 characters per inch (132 columns) and standard vertical spacing 6 lines per inch for a total number of lines between 60 and 66, depending on how much, if any, spacing over the perforations between the pages.

The paper is still out there. For example, from Amazon:

Sparco green bar 14-7/8x11

An interesting variant was the TTY 43 (the first terminal I owned - actually half-owned, shared with my evil twin) used 8-1/2" x 12" (11" printable plus extra for the feed holes, but the edges were perforated so it would tear down to standard letter size 8-1/2" x 11") landscape orientation, with approximately 13 characters per inch (yes, the manual says "approximately"!) to get the standard 132 characters across, combined with 8 lines per inch. The end result being a very close approximation of the usual 14"+ x 11" paper on much more convenient 8-1/2" x 11". It wasn't a line printer - in fact, it wasn't even a fully-formed character printer like the classic 33, it was actually a dot-matrix printer. But the output was close to a shrunken line printer page.

  • Sorry, but print area of 14 inch at 10 CPI does not make any sense, as it would end up at 140 character print lines - something that did not eist with classic line printers. Also, using landscape with letter output only works with later bitmap printers, not classic line printers. Which fits with you mentioning a TY43, which is a complete different beast than a line printer. Your experience seems to stem from way later and smaller machines, does it? – Raffzahn Mar 10 '23 at 15:42
  • 1
    14-7/8 - 1/2" on each side (for the holes) gets to 13-7/8", subtract a drop more for margins and you get to 13.2" = 132 characters at 10 CPI. As far as landscape with letter output - correct that it was never that way with classic line printers, which is why I edited my answer to reflect that very valid point. – manassehkatz-Moving 2 Codidact Mar 10 '23 at 15:46
  • 1
    Point about classic line printers is that there were no additional margins. Again,there can be many formats - so many that one can of course find some fitting any desire. So, when asked to pick one, I'd say the most logical is the one that was used at the time the question asked for. That was 11 inch for 6 lines per inch - which faded soon - and 8 1/2 for 8 lines, which became standard about the time computers became a thing. Of course there was as well 11 inch paper, then used for up to 88 lines (see the original linked answer). but that's a later combination for getting more onto a page. – Raffzahn Mar 10 '23 at 15:51
5

You'd be surprised, but this is much harder than it looks. Even forgetting about cosmetic niceties like green bars, aspect ratio and appropriate fonts, putting exactly M×N characters in a block on a page is complex, and your extended requirements comment:

Ideally, I'm looking for a tool that can automatically arrange NxM characters within a rectangle of a given size, automatically selecting the font based on size or pitch, depending on what is more restrictive, and adjusting the inter-line spacing or character spacing as appropriate.

may be practically impossible. (Adjusting character spacing, incidentally, is not recommended, ever.) Sadly, any effort to produce nice mono-spaced output is usually swamped by the (much larger) effort to make nice proportional output. As you didn't have any layout options on a line printer, it all seemed rather too easy.

But for the special case of 132×66, we can get close with a couple of programs. I'm going to assume you want PDF output, and we're going to get it by using the CUPS PDF virtual printer on Linux (in the printer-driver-cups-pdf package on Debian). I'm also going to assume you have a file called 132cols.txt that's exactly 132 columns wide. Tools such as fmt can help you get there. We're also going to use US Letter paper, and we're going to be very happy to use Courier, okay?

1) enscript

enscript page output

enscript has knocked around Unix installations for decades in many forms. The version you have on your system may not have all of the options I use here. But to get a 132×66 text block to fit a page, this command will do it:

enscript --no-header --no-job-header --lines-per-page=66 --font=Courier@8.8/7.5 --media=letter --landscape --margins=18:18:36:36 --printer=PDF 132cols.txt

enscript's font selection is extremely poor, unless you're willing to dive into some deep configuration. The only other option available by default is Courier-Bold. --lines-per-page is supposedly overridden by font selection (but isn't), and this font size was found by trial and error.

2) a2ps

a2ps is a Gnu thing, so has overly long and mostly contradictory documentation. I had great difficulty keeping this to the 132×66 format, and sometimes even feeding it different input with the same options gave me different numbers of lines and columns. However, this appear to usually do the job:

a2ps --medium=Letter --landscape --columns=1 --rows=1 --lines-per-page=66 --no-header --borders=no --printer=PDF ~/Desktop/132cols.txt

Text block isn't centred, if that matters. For this page size, --lines-per-page=66 was the controlling variable. If I set --chars-per-line=132 I only got 58 lines per page.

Other options

  • Ghostscript's gslp is equivalent to an early version of enscript, but written entirely in PostScript. Not tried, but seems to default to some very obsolete printer choices (even by our standards).

You may have to fiddle with the pr (the text formatter/paginator) and fmt utilities to make your output work. Good luck!

scruss
  • 21,585
  • 1
  • 45
  • 113
  • Thank you very much! a2ps looks like a better choice especially because it appears to be Unicode-aware, unlike enscript, and it scales the font automatically. – Leo B. Mar 16 '23 at 07:26
  • I thought you might be interested in more Unicode-aware output, but I didn't want my answer to be too long. Both of them sort-of work, but if one is good enough, then I'm glad. – scruss Mar 17 '23 at 01:17
2

Typically, people were happy enough to get ink on paper without thinking too much about dimensions.

For a common desktop dot matrix printer, a usual size on US "Letter" size paper (8.5" by 11") would be 80 columns of (monospace) text and 66 lines per page (top edge to bottom edge with no margin). That means the line height would be about 1/6 of an inch. Metric (A4) size paper would have been slightly different.

A word processor program would allow you to configure exactly how many characters (left/right) and lines (top/bottom) margin you would like to pad your text with, and would reformat the output accordingly. Printers differed, so you would have been able to change these each margin value individually.

There was no one single "standard" character pitch or inter-character spacing. Again, printers differed, so if you didn't like it maybe you would have to buy a different printer.

If you want the line printer "look" on unix, definitely use lpr! It probably hasn't changed in decades.

Greg Hewgill
  • 6,999
  • 1
  • 28
  • 32
  • 2
    The question was 'line printers', though. Desktop printers were character printers. Line printters generally had a rotating drum with all characters in every print position, or else a rotating chain with several copies of the character repertoire. In both cases, the printer buffered the entire line; characters were printed in the order in which the type reached the right place, not in column order. – dave Mar 10 '23 at 01:00
  • Yeah, I used line printers too. Again, at the time people were mostly happy to have some way to get ink on paper. There were standard fanfold paper sizes, some of which were the same as desktop dot matrix printers. I think if you want to capture the "look" of a line printer, then use a 12 point monospace font with zero page margins. – Greg Hewgill Mar 10 '23 at 01:02
  • 2
    We called those band printers. They were still 132 characters with 66 lines per page. Not all line printers were band printers. There were many dot matrix line printers. I've formatted enough forms and checks to all these things in my time to be very intimate with character positioning. Obviously, some had added features (notably the dot matrix ones) such as compressed characters and such. But out of the box, with defaults, 14" green bar paper was 132 characters per line, 66 lines per page. – Will Hartung Mar 10 '23 at 15:54
  • Rather than lpr (which is now a general purpose file spooler), maybe you meant the pr print formatter? – scruss Mar 12 '23 at 13:07