mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-04 22:32:19 +00:00
280 lines
9.0 KiB
TeX
280 lines
9.0 KiB
TeX
|
% TeX source file for creating TRIPVDU.DVI, a torture file for DVItoVDU
|
||
|
% (using the same philosophy as Donald Knuth's torture test for TeX).
|
||
|
|
||
|
\nopagenumbers
|
||
|
\topskip 0pt
|
||
|
\parindent 0pt
|
||
|
\parskip 0pt
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 1
|
||
|
% This page is completely empty but has some \special stuff.
|
||
|
|
||
|
\message{Empty page.}
|
||
|
\null
|
||
|
\special{DVItoVDU should warn user that it is ignoring this stuff.}
|
||
|
\special{And this.}
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 2
|
||
|
% This page has 1 black pixel at (0,0).
|
||
|
|
||
|
\message{1 black pixel at (0,0).}
|
||
|
\hrule height 1sp width 1sp depth 0sp
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 3
|
||
|
% This page will fill an A4 sheet with black pixels, assuming A4 paper is
|
||
|
% 8.3in by 11.7in and (0,0) is 1in from the top and left edges.
|
||
|
|
||
|
\message{A4 sheet full of black pixels.}
|
||
|
{% change page size and location temporarily
|
||
|
\hsize 10in
|
||
|
\vsize 12in
|
||
|
\hoffset -1in
|
||
|
\voffset -1in
|
||
|
% Because ref pts of rules are at BOTTOM left corner we first need to output
|
||
|
% a rule that will guarantee Minv = -1in, then output the large rule with
|
||
|
% slightly less than A4 height.
|
||
|
\hrule height 1sp width 8.299in depth 0sp
|
||
|
\hrule height 11.695in width 8.299in depth 0sp
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 4
|
||
|
% This page is 1 pixel wider than page 3.
|
||
|
% DVItoVDU should detect that page is too wide for A4 paper.
|
||
|
|
||
|
\message{As above but 1 pixel too wide.}
|
||
|
\hrule height 1sp width 8.301in depth 0sp
|
||
|
\hrule height 11.695in width 8.301in depth 0sp
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 5
|
||
|
% This page is 1 pixel longer than page 3.
|
||
|
% DVItoVDU should detect that page is too low for A4 paper.
|
||
|
|
||
|
\message{As above but 1 pixel too low.}
|
||
|
\hrule height 11.701in width 8.299in depth 0sp
|
||
|
\vfil\eject
|
||
|
|
||
|
}% reset page size and location
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 6
|
||
|
% This page has a rulelist with a full ruletable (= 300 rules).
|
||
|
% Note that DVItoVDU does not impose any limits
|
||
|
% on the number of rules or characters in a page. Pages 6 to 9
|
||
|
% test the list manipulating code in DVIReader and DVItoVDU.
|
||
|
|
||
|
\message{Page with ruletablesize rules.}
|
||
|
\newcount\temp
|
||
|
\temp=300
|
||
|
\loop\ifnum\temp>0
|
||
|
\hrule height 1sp width \hsize % 1 pixel high
|
||
|
\vfil
|
||
|
\advance\temp by -1
|
||
|
\repeat
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 7
|
||
|
% This page has ruletablesize+1 rules (so rulelist has 2 nodes).
|
||
|
|
||
|
\message{Page with ruletablesize+1 rules.}
|
||
|
\temp=301
|
||
|
\loop\ifnum\temp>0
|
||
|
\hrule height 1sp width \hsize % 1 pixel high
|
||
|
\vfil
|
||
|
\advance\temp by -1
|
||
|
\repeat
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 8
|
||
|
% This page has a charlist with a full chartable (= 3000 characters).
|
||
|
|
||
|
\message{Page with chartablesize characters from one font.}
|
||
|
\font\small=cmr5
|
||
|
{\small \offinterlineskip
|
||
|
\temp=30
|
||
|
\loop\ifnum\temp>0
|
||
|
\leftline{iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
||
|
iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii} % 100 chars
|
||
|
\advance\temp by -1
|
||
|
\repeat
|
||
|
}
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 9
|
||
|
% This page has chartablesize+1 characters (so charlist has 2 nodes).
|
||
|
|
||
|
\message{Page with chartablesize+1 characters from one font.}
|
||
|
{\small \offinterlineskip
|
||
|
\temp=30
|
||
|
\loop\ifnum\temp>0
|
||
|
\leftline{iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
|
||
|
iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii} % 100 chars
|
||
|
\advance\temp by -1
|
||
|
\repeat
|
||
|
\leftline{i} % the extra character
|
||
|
}
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 10
|
||
|
|
||
|
\message{Multiple TeX page counters.}
|
||
|
\footline={\hss\tenrm\folio\hss} % turn on page numbers
|
||
|
\pageno=0
|
||
|
\count1=1 \count2=2 \count3=3 \count4=4 \count9=9
|
||
|
\noindent
|
||
|
This is \TeX\ page [0.1.2.3.4.....9].
|
||
|
\vfil\eject
|
||
|
|
||
|
\count1=0 \count2=0 \count3=0 \count4=0 \count9=0 % reset TeX counters
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 11
|
||
|
|
||
|
\message{Negative TeX page.}
|
||
|
\pageno=-11
|
||
|
\noindent
|
||
|
This is \TeX\ page [-11].
|
||
|
\vfil\eject
|
||
|
|
||
|
\pageno=12 % DVI page = TeX page again
|
||
|
\nopagenumbers % turn off page numbers again
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 12
|
||
|
% This page has characters from many fonts.
|
||
|
% Note that the page is off the right edge of A4 paper.
|
||
|
|
||
|
\message{Page with characters from many fonts.}
|
||
|
% avoid redefining plain TeX's \i, \j etc.
|
||
|
\font\Fb=cmr5
|
||
|
\font\Fc=cmr5 scaled\magstep5
|
||
|
\font\Fe=cmr10 scaled\magstep5
|
||
|
\font\Fg=cmbx10
|
||
|
\font\Fh=cmbx10 scaled\magstep5
|
||
|
\font\Fj=cmsl10
|
||
|
\font\Fk=cmsl10 scaled\magstep5
|
||
|
\font\Fm=cmtt10
|
||
|
\font\Fn=cmtt10 scaled\magstep5
|
||
|
\font\Fo=cmss10
|
||
|
\font\Fp=cmcsc10
|
||
|
\font\Fq=cmdunh10
|
||
|
|
||
|
\leftline{\Fb These characters are from CMR5 at mag 1000.}
|
||
|
\leftline{\Fc These characters are from CMR5 at mag 2488.}
|
||
|
\leftline{\tenrm These characters are from CMR10 at mag 1000.}
|
||
|
\leftline{\Fe These characters are from CMR10 at mag 2488.}
|
||
|
\leftline{\Fg These characters are from CMBX10 at mag 1000.}
|
||
|
\leftline{\Fh These characters are from CMBX10 at mag 2488.}
|
||
|
\leftline{\Fj These characters are from CMSL10 at mag 1000.}
|
||
|
\leftline{\Fk These characters are from CMSL10 at mag 2488.}
|
||
|
\leftline{\Fm These characters are from CMTT10 at mag 1000.}
|
||
|
\leftline{\Fn These characters are from CMTT10 at mag 2488.}
|
||
|
\leftline{\Fo These characters are from CMSS10 at mag 1000.}
|
||
|
\leftline{\Fp These characters are from CMCSC10 at mag 1000.}
|
||
|
\leftline{\Fq These characters are from CMDUNH10 at mag 1000.}
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 13
|
||
|
% This page has characters from many fonts, some of which have no corresponding
|
||
|
% PXL file. DVItoVDU should warn user about non-existent font files and
|
||
|
% continue as best it can by loading dummy font info.
|
||
|
% Note that the page is off the right edge of A4 paper.
|
||
|
|
||
|
\message{Page with characters from fonts at unknown magnifications.}
|
||
|
% PXL files do not exist at the requested magnifications:
|
||
|
\font\Fr=cmr5 scaled 500
|
||
|
\font\Fs=cmr5 scaled 3000
|
||
|
\font\Ft=cmr10 scaled 200
|
||
|
\font\Fu=cmr10 scaled 5000
|
||
|
\font\Fv=cmsl10 scaled 49
|
||
|
\font\Fw=cmsl10 scaled 10000
|
||
|
|
||
|
\leftline{\Fr CMR5 at mag 500 does not exist.}
|
||
|
\leftline{\Fb These characters are from CMR5 at mag 1000.}
|
||
|
\leftline{\Fs CMR5 at mag 3000 does not exist.}
|
||
|
\leftline{\Ft CMR10 at mag 200 does not exist.}
|
||
|
\leftline{\tenrm These characters are from CMR10 at mag 1000.}
|
||
|
\leftline{\Fu CMR10 at mag 5000 does not exist.}
|
||
|
\leftline{\Fv CMSL10 at mag 49 does not exist.}
|
||
|
\leftline{\Fj These characters are from CMSL10 at mag 1000.}
|
||
|
\leftline{\Fw CMSL10 at mag 10000 does not exist.}
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 14
|
||
|
% This page has a paragraph illustrating most of the characters from the
|
||
|
% standard roman TeX text font.
|
||
|
|
||
|
\message{Standard paragraph.}
|
||
|
\rm
|
||
|
Our task is to create a paragraph illustrating what a typical piece of text
|
||
|
looks like in the standard \TeX\ font. It should be stressed that not all
|
||
|
\TeX\ fonts can be used for typesetting text. We need to show most of the
|
||
|
characters in this font---for instance, something like ``the quick brown fox
|
||
|
jumps over a lazy dog'' would use all the lower-case letters. Hmmm \dots\
|
||
|
how about ``THE QUICK BROWN FOX JUMPS OVER 9876543210 LAZY DOGS'' to make
|
||
|
sure we show all the upper-case letters and digits? Such a paragraph would
|
||
|
hardly be typical! Then there's ligatures (try and fit in words like
|
||
|
fluffy, waffle, firefly, difficult) and examples of kerning (boxer, cooked,
|
||
|
vowel). Not to mention the various accents and other special letters:
|
||
|
prot\'eg\'e, r\^ole, na\"\i ve, \AE sop's \OE vres en fran\c cais.
|
||
|
But how do we put all this stuff into a paragraph that makes sense!?
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 15
|
||
|
|
||
|
\message{Page in bottom half of A4 paper.}
|
||
|
\null\vfil
|
||
|
\centerline{Page in bottom half of A4 paper.}
|
||
|
\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 16
|
||
|
|
||
|
\message{Page completely above left of A4 paper.}
|
||
|
\voffset -3in
|
||
|
\hoffset -9in
|
||
|
\leftline{Page completely above left of A4 paper.}
|
||
|
\vfil\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 17
|
||
|
|
||
|
\message{Page completely below right of A4 paper.}
|
||
|
\voffset 3in
|
||
|
\hoffset 9in
|
||
|
\null\vfil
|
||
|
\rightline{Page completely below right of A4 paper.}
|
||
|
\eject
|
||
|
|
||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||
|
% DVI page 18
|
||
|
|
||
|
\message{Page beyond all edges of A4 paper.}
|
||
|
\voffset -3in
|
||
|
\hoffset -3in
|
||
|
\vsize 15in
|
||
|
\hsize 15in
|
||
|
\line{Page beyond all edges of A4 paper.\hfil
|
||
|
Page beyond all edges of A4 paper.}
|
||
|
\vfil
|
||
|
\line{Page beyond all edges of A4 paper.\hfil
|
||
|
Page beyond all edges of A4 paper.}
|
||
|
\eject
|
||
|
\voffset 0in \hoffset 0in % offsets back to normal
|
||
|
|
||
|
\bye
|