Consider the following code:
\showboxdepth=20
\showboxbreadth=200
\hsize=5.33333in
\pdfoutput=0
\pdfprotrudechars=1
\input protcode.tex
\setprotcode\tenrm
\vbox{\noindent Test. Test. Test. Test. Test. Test. Test. Test.
Test. Test. Test. Test. Test. Test. Test. Test. Test. Test. Test. Test.
Test. Test. Test. Test. Test. Test. Test. Test. Test. Test.\par
\global\setbox3=\lastbox }
\showbox3 \setbox3=\hbox{\unhbox3 }%
\showbox3
\bye
Now run it with pdftex
. The log file shows that the left and right margin \kern
s disappear in reboxing. Why? Can it be prevented? Here are excerpts:
> \box3=
\hbox(6.83331+0.0)x385.43962, glue set 3.85056fil
.\kern-0.36 (left margin)
.\tenrm T
.\kern-0.83334
.\tenrm e
.\tenrm s
.\tenrm t
.\tenrm .
.\glue 4.44444 plus 4.99997 minus 0.37036
[cut]
.\tenrm T
.\kern-0.83334
.\tenrm e
.\tenrm s
.\tenrm t
.\tenrm .
.\penalty 10000
.\kern-1.94 (right margin)
.\glue(\parfillskip) 0.0 plus 1.0fil
.\glue(\rightskip) 0.0
! OK.
l.15 \showbox3
\setbox3=\hbox{\unhbox3 }%
?
> \box3=
\hbox(6.83331+0.0)x383.88907
.\tenrm T
.\kern-0.83334
.\tenrm e
.\tenrm s
.\tenrm t
.\tenrm .
[cut]
.\tenrm T
.\kern-0.83334
.\tenrm e
.\tenrm s
.\tenrm t
.\tenrm .
.\penalty 10000
.\glue(\parfillskip) 0.0 plus 1.0fil
.\glue(\rightskip) 0.0
! OK.
l.16 \showbox3
This won't happen with ordinary \kern
s, such as if we \setbox3=\hbox{\kern-1pt Test.\kern1pt}
.