[pdftex] 1.40.0-rc1

Martin Schröder martin at oneiros.de
Mon Dec 11 22:50:53 CET 2006


We're finally nearing a relase. Please test this.

pdfTeX 3.141592-1.40.0-rc1 was released on 2006-12-11
- pdfetex (as a separate binary/program) is gone; all extensions are now in
  pdftex. The make files still know about the target pdfetex, but it's just a
  copy of pdftex
- The sources of TeX, eTeX and pdfTeX have been merged into one file pdftex.web
  and one change file pdftex.ch. The sources of TeX and eTeX distributed are
  just there for reference
- New features:
  - pdfTeX can now generate PDF 1.5 object streams, which leads to smaller
    PDFs. This is controlled by setting \pdfobjcompresslevel to a value >0 (3
    compress everything, 2 don't compress /Info, 1 also don't compress embedded
    PDFs) and works only with PDF >=1.5
  - pdfTeX now supports another image file format: JBIG2 files (.jbig2)
  - the memory allocated for objects and destination names now grows
  - pdfTeX now generates smaller PDFs since for char positioning the width of
    chars (/Widths) is stored with more precision and so the chars must rarely
    be positioned seperatedly
  - the PK resolution is now taken from the "pk_dpi" parameter in texmf.cnf if
    it has not been set in the format file or by the user
  - pdfTeX now removes the generated pdf in case of a fatal error
  - pdfTeX now sets /ModDate and /Trapped in the InfoDict by default (the
    values can be overridden with /pdfinfo)
  - the format of warnings and errors issued by pdfTeX has been changed and
  - the output of -version has been extended and now includes information about
    the libraries actually used, which can be handy when using shared libraries
  - rules and their positioning on the page are now inside a qQ group
- New primitives:
  - TODO: pdfTeX can now handle Colorstacks
  - \pdfprimitive\TeX-primitive executes the original \TeX-primitive even if
    the command has been redefined since. E.g.
    expands to \relax.
    \ifpdfprimitive\TeX-primitive is true if \TeX-primitive has its original
  - \ifpdfabsnum and \ifpdfabsdim are like \ifnum and \ifdim, but don't care
    about negative numbers
  - shell escape: if the first character of a filename for \openin, \openout
    \input is a pipe symbol (|), the filename is assumed to be a request for a
    pipe to a command line that is given in the rest of the filename
  - draftmode: With \pdfdraftmode=1 or the commandline switch -draftmode pdfTeX
    doesn't write the output pdf and doesn't actually read any images, thus
    speeding up compilations when you know you need an extra run but don't care
    about the output, e.g. just to get the BibTeX references right
  - \pdfpxdimen (introduced in 1.30) is now a real dimension paramter. It
    allows one base dimensions on pixels. 1px defaults to 1bp (or 72dpi), but
    can be changed with the \pdfpxdimen primitive:
      \pdfpxdimen=1in % 1 dpi
      \divide\pdfpxdimen by 96 % 96 dpi
    Now \hsize is (1in/96)*1200
  - \pdflastlink returns the object number of the last \pdfstartlink
  - \pdfsavepos now works in DVI mode
- Fonts:
  - support for subfonts: This creates all needed map entries for subfonts
    automatically and handles Unicode mappings
  - ToUnicode entries for Type1 fonts (patch 580)
- HZ:
  - added patch 462 (HZ font expansion by text matrix manipulation)
- Bugfixes:
  - the PDF statistics in the log are now correct
  - added JFIF detection patch to writejpg.c (bug 548)
  - bugfix: invalid pdf created if font name contains space (509)
  - bugfix: truetype OS/2 v3 fonts (594)
  - bugfix: Type1C (CFF) fonts of embedded pdfs didn't get replaced
- pdfTeX uses libpng 1.2.14
- changes from last beta:
  - ToUnicode was broken in the latest beta (bug 711)
  - pdftosrc now handles compressed xref tables (PDF 1.5)
  - new primitive \letterspacefont to implement letter-spacing on-the-fly


More information about the pdftex mailing list