[tex-live] \pdffontattr in pdftex-1.40.0-rc4
Hartmut Henkel
hartmut_henkel at gmx.de
Thu Dec 28 06:38:51 CET 2006
On Thu, 28 Dec 2006, Hartmut Henkel wrote:
> On Wed, 27 Dec 2006, Reinhard Kotucha wrote:
>
> > I'm trying to run the vntex testfiles with the current pdftex
> > release recently uploaded to the TeXLive repository by Martin.
> >
> > Can anybody tell me what the warnings mean?
> >
> > pdfTeX warning (\pdffontattr): font \^^@ has conflicting attributes
is this a nullfont? how does one get it?
> in the intended cases it means, that it was tried to add two different
> font attributes to the same font dictionary. But here is a case where
> this happens even without:
>
> \pdfcompresslevel=0
> \nopagenumbers
> \font\aa cmr10 at 10pt
> \pdffontattr\aa {foo}
> \aa abc
> \font\bb cmr10 at 11pt
> %\pdffontattr\bb {bar}
> \bb abc
> \bye
>
> Both TeX fonts refer to the same font dictionary. So there is only one
> font, and this gets the attribute "foo".
>
> > I get a lot of these messages. The (pdf) output seems to be ok.
>
> The above source creates the right PDF. Maybe we need to get rid of
> the warning here.
Here is the try of a patch, which also shows what happens with the above
file. Reinhard, does it remove the warnings in your case?
--- pdftex.web.orig 2006-12-21 17:19:20.000000000 +0100
+++ pdftex.web 2006-12-28 06:07:11.771455920 +0100
@@ -19341,6 +19341,8 @@
pdf_mark_char(i, j);
if (length(pdf_font_attr[i]) = 0) and (length(pdf_font_attr[k]) <> 0) then
pdf_font_attr[i] := pdf_font_attr[k];
+ if (length(pdf_font_attr[k]) = 0) and (length(pdf_font_attr[i]) <> 0) then
+ pdf_font_attr[k] := pdf_font_attr[i];
if not ((pdf_font_attr[i] = pdf_font_attr[k]) or
str_eq_str(pdf_font_attr[i], pdf_font_attr[k])) then begin
pdf_warning("\pdffontattr", "font ", false, false);
An alternative (more complicated) might be that one keeps font
dictionaries separate when the user wants different attributes. No idea
what the typical use of these attributes is.
Regards, Hartmut
More information about the tex-live
mailing list