[ pdftex-Bugs-274 ] \unhbox kills protrusion
Bugs item #274, was opened at 2005-01-31 03:09
You can respond by visiting:
http://sarovar.org/tracker/?func=detail&atid=493&aid=274&group_id=106
Category: hz
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Robert (schlcht)
Assigned to: The Thanh Han (hanthethanh)
Summary: \unhbox kills protrusion
Initial Comment:
Protrusion will break when boxes containing protruded
characters are \unhbox'ed. I've stumbled upon this when
using edmac/ledmac, which decomposes each paragraph
into lines, then reassembling them.
I wasn't sure whether protrusion is supposed to survive
this treatment but it does if one uses \unhcopy instead
of \unhbox.
Here's a greatly reduced example:
%--------------------------------------------
\font\testfont=cmr10 \testfont
\pdfprotrudechars=2
\rpcode\font`\-=1000
\parindent0pt
\hsize=126pt
\newbox\testline
\newbox\testbox
%
\setbox\testbox\vbox{%
Margin kerning is the adjustments
of the characters at the
margins of a typeset text.
}
\loop\ifvbox\testbox
\setbox\testline=\vsplit\testbox to\baselineskip
\unvbox\testline
\setbox\testline=\lastbox
\hbox to\hsize{\unhcopy\testline}% OK
\hbox to\hsize{\unhbox\testline} % not OK
\repeat
\bye
% --------------------------------------------------
Regards,
Robert
Comment By: Hartmut Henkel (hhenkel) Date: 2005-01-31 23:34
Message: Logged In: YES user_id=929 There seems to be one place in hz.ch where \unhbox and \unhcopy are treated differently: %@x [1100] - margin kerning %while link(tail)<>null do tail:=link(tail); %@y %if c = copy_code then begin % while link(tail)<>null do tail:=link(tail); %end %else while link(tail) <> null do begin % r := link(tail); % if not is_char_node(r) and (type(r) = margin_kern_node) then begin % link(tail) := link(r); % free_avail(margin_char(r)); % free_node(r, margin_kern_node_size); % end; % tail:=link(tail); %end; %@z After just commenting this piece out (as shown), both \unhcopy and \unhbox do protrusion ok. Now i don't have the slightest idea what this code is for, neither which side effects would appear if it's removed... Regards, Hartmut ---------------------------------------------------------------------- You can respond by visiting: http://sarovar.org/tracker/?func=detail&atid=493&aid=274&group_id=106
participants (1)
-
noreply@sarovar.org