./print/qpdf, Structural, content-preserving transformations on PDF files

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 10.0.1nb1, Package name: qpdf-10.0.1nb1, Maintainer: pkgsrc-users

QPDF is a command-line program that does structural, content-preserving
transformations on PDF files. It could have been called something like
pdf-to-pdf. It also provides many useful capabilities to developers of
PDF-producing software or for people who just want to look at the innards of a
PDF file to learn more about how they work.

QPDF is capable of creating linearized (also known as web-optimized) files and
encrypted files. It is also capable of converting PDF files with object streams
(also known as compressed objects) to files with no compressed objects or to
generate object streams from files that don't have them (or even those that
already do). QPDF also supports a special mode designed to allow you to edit the
content of PDF files in a text editor. For more details, please see the
documentation links below.

QPDF includes support for merging and splitting PDFs through the ability to copy
objects from one PDF file into another and to manipulate the list of pages in a
PDF file. The QPDF library also makes it possible for you to create PDF files
from scratch. In this mode, you are responsible for supplying all the contents
of the file, while the QPDF library takes care off all the syntactical
representation of the objects, creation of cross references tables and, if you
use them, object streams, encryption, linearization and other syntactic details.

Required to run:
[graphics/jpeg] [devel/pcre]

Required to build:

Master sites:

SHA1: 0d101ffc8356618a2f950753e739e55946709143
RMD160: cc0864688a307219ca72e1671ab39f9092e87503
Filesize: 17968.735 KB

Version history: (Expand)

CVS history: (Expand)

   2020-08-31 20:13:29 by Thomas Klausner | Files touched by this commit (3631) | Package updated
Log message:
*: bump PKGREVISION for perl-5.32.
   2020-04-12 09:50:24 by Ryo ONODERA | Files touched by this commit (3) | Package updated
Log message:
qpdf: Update to 10.0.1


This is qpdf version 10.0.1. This release includes some small bug
fixes over 10.0.0 including a fix to one regression in
QPDFObjectHandle::getStreamData. If you use that method in your
code, you should definitely take 10.0.1 over 10.0.0.
   2020-04-07 15:54:12 by Ryo ONODERA | Files touched by this commit (2) | Package updated
Log message:
qpdf: Update to 10.0.0

This is qpdf version 10.0.0. This release includes several notable
improvements: substantially improved performance over the 8.x and
9.x releases, an openssl crypto provider, delegation of random
number generation to the crypto provider, fast and automatic
determination of whether to run slow unreferenced resource removal
whens splitting pages (though you can force the behavior to be on
or off as well), and a few others.
   2020-03-23 23:42:26 by Roland Illig | Files touched by this commit (1)
Log message:
print/qpdf: require Perl for building the package

There is a small Perl program that computes an SHA1 hash. This program is
required to run the fuzzing tests as part of the build. Without Perl, the
build contains about 40 of these messages:

fuzz/build.mk:82: warning: overriding recipe for target
fuzz/build.mk:82: warning: ignoring old recipe for target
   2020-03-20 12:58:37 by Nia Alarie | Files touched by this commit (640)
Log message:
*: Convert broken sourceforge HOMEPAGEs back to http
   2020-02-10 14:00:04 by Ryo ONODERA | Files touched by this commit (2) | Package updated
Log message:
qpdf: Update to 9.1.1

This is qpdf version 9.1.1. This release contains a few small
enhancements and bug fixes. Most notably, fix-qdf is now a proper
executable rather than a perl script, so qpdf no longer has a
runtime dependency on perl.
   2020-01-19 00:36:14 by Roland Illig | Files touched by this commit (3046)
Log message:
all: migrate several HOMEPAGEs to https

pkglint --only "https instead of http" -r -F

With manual adjustments afterwards since pkglint 19.4.4 fixed a few
indentations in unrelated lines.

This mainly affects projects hosted at SourceForce, as well as
freedesktop.org, CTAN and GNU.
   2019-12-04 14:05:20 by Ryo ONODERA | Files touched by this commit (3) | Package updated
Log message:
Update to 9.1.0

2019-11-17  Jay Berkenbilt  <ejb@ql.org>

	* 9.1.0: release

2019-11-09  Jay Berkenbilt  <ejb@ql.org>

	* 9.1.rc1: release

	* Improve behavior of wildcard expansion for msvc executable when
	run from the Windows cmd.exe shell. Unlike in UNIX environments,
	Windows leaves it up to the executable to expand its own
	wildcards. Fixes #224.

	* When reading /P from the encryption dictionary, use static_cast
	instead of QIntC to convert the value to a signed integer. The
	value of /P is a bit field, and PDF files have been found in the
	wild where /P is represented as an unsigned integer even though
	the spec states that it is a signed 32-bit value. By using
	static_cast, we allow qpdf to compensate for writers that
	incorrectly represent the correct bit field as an unsigned value.
	Fixes #382.

2019-11-05  Jay Berkenbilt  <ejb@ql.org>

	* Add support for pluggable crypto providers, enabling multiple
	implementations of the cryptographic functions needed by qpdf.
	This feature was added by request of Red Hat, which recognized the
	use of qpdf's native crypto implementations as a potential
	security liability, preferring instead to get all crypto
	functionality from a third-party library that receives a lot of
	scrutiny. However it was also important to me to not impose any
	unnecessary third party dependencies on my users or packagers,
	some of which build qpdf for lots of environments, some of which
	may not easily support gnutls. Starting in qpdf 9.1.0, it is be
	possible to build qpdf with both the native and gnutls crypto
	providers or with either in isolation. In support of this feature,
	new classes QPDFCryptoProvider and QPDFCryptoImpl have been added
	to the public interface. See QPDFCryptoImpl.hh for details about
	adding your own crypto provider and QPDFCryptoProvider.hh for
	details about choosing which one is used. Note that selection of
	crypto providers is invisible to anyone who doesn't explicitly
	care. Neither end users nor developers have to be concerned about

	* The environment variable QPDF_CRYPTO_PROVIDER can be used to
	override qpdf's default choice of crypto provider. The
	--show-crypto flag to the qpdf CLI can be used to present a list
	of supported crypto providers with the default provider always
	listed first.

	* Add gnutls crypto provider. Thanks to Zdenek Dohnal for
	contributing the code that I ultimately used in the gnutls crypto
	provider and for engaging in an extended discussion about this
	feature. Fixes #218.

2019-10-22  Jay Berkenbilt  <ejb@ql.org>

	* Incorporate changes from Masamichi Hosoda <trueroad@trueroad.jp>
	to properly handle signature in the following ways:
	  - Always represent /Contents in a signature dictionary as a hex
	  - Do not compress signature dictionaries when generating object
	  - Do not encrypt/decrypt the /Contents field of the signature
	    dictionary when creating or reading encrypted files

	* Incorporate changes from Masamichi Hosoda <trueroad@trueroad.jp>
	to add additional methods for making it possible to gain deeper
	insight into cross reference tables and object renumbering. These
	new API calls make it possible for applications to go into PDF
	files created by qpdf and make changes to them that go beyond
	working with the PDF at the object level. The specific use case
	for these changes was to write an external tool to perform digital
	signature, but there could be other uses as well. New methods
	include the following, all of which are described in their
	respective headers:
	  - QPDF::getXRefTable()
	  - QPDFObjectHandle::getParsedOffset()
	  - QPDFWriter::getRenumberedObjGen(QPDFObjGen)
	  - QPDFWriter::getWrittenXRefTable()