[pdftex] pdftex 1.30.0
Martin Schröder
martin at oneiros.de
Mon Aug 1 22:54:55 CEST 2005
[http://sarovar.org/download.php/673/pdftex-1.30.0.zip]
The pdfTeX team is happy to announce the release of a new stable version:
===========================================================================
pdfTeX 1.30.0
===========================================================================
This is the announcement of pdfTeX 1.30.0 an extended version of TeX that
can create PDF directly from TeX source files and enhance the result of TeX
typesetting with the help of PDF.
===========================================================================
Main changes of pdfTeX 1.30.0
===========================================================================
- pdfxtex (introduced with 1.20a) is gone; all extensions are now in
pdf(e)tex.
- Some primitives have been renamed; the old names will still work, but are
deprecated and some give a warning that they are obsolete:
\pdfoptionpdfminorversion -> \pdfminorversion
\pdfoptionalwaysusepdfpagebox -> \pdfforcepagebox
\pdfoptionpdfinclusionerrorlevel -> \pdfinclusionerrorlevel
- pdftex knows two new units:
- new Didot (1nd=0.375mm)
- new Cicero (1nc=12nd)
- New primitives:
- Inclusion of pngs has been greatly improved: It now does
- alpha channel and transparency (only if %!PDF >=1.4)
- 16-bit colour (only if %!PDF >=1.5); this must be enabled by setting
\pdfimagehicolor to 1.
- gamma correction; this must be enabled by setting \pdfimageapplygamma
to 1. The device gamma is taken from \pdfgamma. If no embedded value
can be found in the png image, then the value of \pdfimagegamma is
used instead.
- fast direct embedding of png streams, if their structure allows this;
the automatic fall-back is to decompress and re-compress as before.
- pdfTeX now has an interface to the precise system time (if available)
as an aid in benchmarking TeX macro code.
- \pdfelapsedtime is a read-only integer that (initially) returns the
amount of time passed since the start of this run. This amount is
given in `scaled seconds': the value 65536 counts as one second. If
more time has passed than 32767 seconds, (2^31)-1 will be returned.
- \pdfresettimer updates the internal timer, such that subsequent calls
to \pdfelapsedtime will restart from 0.
- pdfTeX can now generate random numbers.
- \pdfuniformdeviate <count> generates a uniformly distributed random
integer value between 0 (inclusive) and <count> (exclusive).
- \pdfnormaldeviate expands to a random integer value with a mean of 0
and a unit of 65536.
- \pdfrandomseed allows access to the current seed value.
- \pdfsetrandomseed <count> sets the random seed to a specific value.
- \pdfnoligatures\f disables ligatures for the loaded font \f.
- \pdfstrcmp{<a>}{<b>} compares two strings and returns the strings "0"
if <a> equals <b>, "-1" if <a> is less than <b>, "1" if <a> is greater
than <b>
- \pdfretval is an integer that is either <0, 0, or >0; currently it's
used by \pdfstrcmp.
- Escaping strings:
- \pdfescapestring{<a>} escapes the string <a> so that it can be used
as PDF string.
- \pdfescapename{<a>} escapes the string <a> so that it can be used as
PDF name.
- \pdfescapehex{<a>} converts the string <a> to uppercase hexadecimal
representation.
- \pdfunescapehex{<b>} reverses the effect of \pdfescapehex
- \pdfcreationdate expands to the date string that pdfTeX uses in the
info dict as default.
- \pdffilemoddate{<file>} expands to the modification date of <file> in
the same format as \pdfcreationdate (PDF date format).
- \pdffilesize{<file>} expands to the size of <file> as string.
- \pdfmdfivesum{<abc>} or \pdfmdfivesum file {<file>} calculates the md5
sum (of a string or a file) and converts it to uppercase hexadecimal
format (same as \pdfescapehex).
- \pdfshellescape is a read-only integer that is 1 if \write18 is
enabled, 0 otherwise.
- \pdfxformname <object number>, which expands to the number in the
corresponding form XObject name.
- \leftmarginkern <box number> and \rightmarginkern <box number> tell the
margin kern at the left and right side of the horizontal list stored in
box <box number>.
- \pdfpkmode is a token register that sets the MF mode for pixel font
generation. The contents of this register is dumped into the format, so
one can (optionally) preset it e.g. in part of pdftexconfig.tex.
- \pdftracingfonts: An integer variable controlling the tracing of font
expansion. It is zero by default; then we get a log (with
fontexpansion) like this
...\tenrm t
...\tenrm (+20) e
Without font expansion, this default should be compatible with TeX's
original log output.
If \pdftracingfonts is set to 1 (or greater), we get a more verbose
log:
...\xivtt (cmtt10 at 14.0pt) t
...\xivtt (cmtt10+20 at 14.0pt) e
See also bug 304.
- \pdffiledump [offset <int>] [length <int>] <general text>
Returns a hex dump of file, given in <general text>, starting at given
offset or 0 with given length.
- New experimental primitives:
- \pdfmatch [icase] [subcount <number>}] {<pattern>}{<string>}
Implements pattern matching using the POSIX regex.
It returns the same values as \pdfstrcmp, but with the following
semantics:
-1: error case (invalid pattern, ...)
0: no match
1: match found
Options:
* icase: case insensitive matching
* subcount: it sets the table size for found subpatterns.
A number "-1" resets the table size to the start default.
- \pdflastmatch <number>
The result of \pdfmatch is stored in an array. The entry "0" contains
the match, the following entries submatches. The positions of the
matches are also available. They are encoded:
<position> "->" <match string>
The position "-1" with an empty string indicates that this entry is not
set.
- The primitive \pdfmovechar has been removed (bug 294)
- Numerous bugfixes
- pdfTeX uses zlib 1.2.3
For complete release notes see http://www.pdftex.org/NEWS
===========================================================================
Legal notice / license
===========================================================================
pdfTeX is copyright (c) 1996-2005 Han The Thanh, <thanh at pdftex.org>
pdfTeX is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.
For a complete README (with a full discussion of the license)
please look at http://www.pdftex.org/README
===========================================================================
The files / installation
===========================================================================
You should first try to get a new version of pdfTeX through your
distribution.
If you want to compile it yourself, have a look at http://www.pdftex.org --
there you can find links to the pdfTeX sources on CTAN. And some useful
documentation.
===========================================================================
Mailing lists / web pages:
===========================================================================
Mailing list:
http://tug.org/mailman/listinfo/pdftex
Related web pages:
http://www.pdftex.org
http://sarovar.org/projects/pdftex/
http://www.tug.org/tex-live/
http://www.tug.org/tetex/
http://www.tex.ac.uk/cgi-bin/texfaq2html?introduction=yes
http://www.dante.de/
http://tug.org/
http://www.pragma-ade.com/
Have fun!
Martin Schröder (martin at pdftex.org) for the pdfTeX team, August 2005
--
http://www.tm.oneiros.de
More information about the pdftex
mailing list