diff --git a/manual/qpdf-manual.xml b/manual/qpdf-manual.xml
index c1ac5e1..4f3b54a 100644
--- a/manual/qpdf-manual.xml
+++ b/manual/qpdf-manual.xml
@@ -4416,111 +4416,32 @@ print "\n";
- Bug Fixes
-
-
-
-
- A small handful of memory issues, assertion failures, and
- unhandled exceptions that could occur on badly mangled input
- files have been fixed. Most of these problems were found by
- Google's OSS-Fuzz project.
-
-
-
-
- When qpdf --check or qpdf
- --check-linearization encounters a file with
- linearization warnings but not errors, it now properly exits
- with exit code 3 instead of 2.
-
-
-
-
- The and
- options now work properly
- when qpdf is invoked as an AppImage.
-
-
-
-
- Calling
- QPDFWriter::set*EncryptionParameters on
- a QPDFWriter object whose output
- filename has not yet been set no longer produces a
- segmentation fault.
-
-
-
-
- When reading encrypted files, follow the spec more closely
- regarding encryption key length. This allows qpdf to open
- encrypted files in most cases when they have invalid or
- missing /Length keys in the encryption dictionary.
-
-
-
-
- When qpdf --check or qpdf
- --check-linearization encounters a file with
- linearization warnings but not errors, it now properly exits
- with exit code 3 instead of 2.
-
-
-
-
-
-
- Build Changes
+ CLI Enhancements
- On platforms that support it, qpdf now builds with
- . If you build qpdf with
- your own build system, this is now safe to use. This
- prevents methods that are not part of the public API from
- being exported by the shared library, and makes qpdf's ELF
- shared libraries (used on Linux, MacOS, and most other UNIX
- flavors) behave more like the Windows DLL. Since the DLL
- already behaves in much this way, it is unlikely that there
- are any methods that were accidentally not exported.
- However, with ELF shared libraries, typeinfo for some
- classes has to be explicitly exported. If there are problems
- in dynamically linked code catching exceptions or
- subclassing, this could be the reason. If you see this,
- please report a bug at pikepdf.
-
-
-
-
- QPDF is now compiled with integer conversion and sign
- conversion warnings enabled. Numerous changes were made to
- the library to make this safe.
-
-
-
-
- QPDF's make install target explicitly
- specifies the mode to use when installing files instead of
- relying the user's umask. It was previously doing this for
- some files but not others.
+ The instructs
+ qpdf to recompress streams that are
+ already compressed with /FlateDecode.
+ Useful with .
- If pkg-config is available, use it to
- locate libjpeg and
- zlib dependencies, falling back on old
- behavior if unsuccessful.
+ the
+
+ sets the zlib compression level used for any streams
+ compressed by /FlateDecode. Most
+ effective when combined with
+ .
- Library and CLI Enhancements
+ Library Enhancements
@@ -4609,24 +4530,6 @@ print "\n";
- CLI enhancement: the
- instructs qpdf to recompress streams that
- are already compressed with /FlateDecode.
- Useful with .
-
-
-
-
- CLI enhancement: the
-
- sets the zlib compression level used for any streams
- compressed by /FlateDecode. Most
- effective when combined with
- .
-
-
-
-
The underlying implementation of QPDF arrays has been
enhanced to be much more memory efficient when dealing with
arrays with lots of nulls. This enables qpdf to use
@@ -4668,6 +4571,110 @@ print "\n";
+ Bug Fixes
+
+
+
+
+ A small handful of memory issues, assertion failures, and
+ unhandled exceptions that could occur on badly mangled input
+ files have been fixed. Most of these problems were found by
+ Google's OSS-Fuzz project.
+
+
+
+
+ When qpdf --check or qpdf
+ --check-linearization encounters a file with
+ linearization warnings but not errors, it now properly exits
+ with exit code 3 instead of 2.
+
+
+
+
+ The and
+ options now work properly
+ when qpdf is invoked as an AppImage.
+
+
+
+
+ Calling
+ QPDFWriter::set*EncryptionParameters on
+ a QPDFWriter object whose output
+ filename has not yet been set no longer produces a
+ segmentation fault.
+
+
+
+
+ When reading encrypted files, follow the spec more closely
+ regarding encryption key length. This allows qpdf to open
+ encrypted files in most cases when they have invalid or
+ missing /Length keys in the encryption dictionary.
+
+
+
+
+ When qpdf --check or qpdf
+ --check-linearization encounters a file with
+ linearization warnings but not errors, it now properly exits
+ with exit code 3 instead of 2.
+
+
+
+
+
+
+ Build Changes
+
+
+
+
+ On platforms that support it, qpdf now builds with
+ . If you build qpdf with
+ your own build system, this is now safe to use. This
+ prevents methods that are not part of the public API from
+ being exported by the shared library, and makes qpdf's ELF
+ shared libraries (used on Linux, MacOS, and most other UNIX
+ flavors) behave more like the Windows DLL. Since the DLL
+ already behaves in much this way, it is unlikely that there
+ are any methods that were accidentally not exported.
+ However, with ELF shared libraries, typeinfo for some
+ classes has to be explicitly exported. If there are problems
+ in dynamically linked code catching exceptions or
+ subclassing, this could be the reason. If you see this,
+ please report a bug at pikepdf.
+
+
+
+
+ QPDF is now compiled with integer conversion and sign
+ conversion warnings enabled. Numerous changes were made to
+ the library to make this safe.
+
+
+
+
+ QPDF's make install target explicitly
+ specifies the mode to use when installing files instead of
+ relying the user's umask. It was previously doing this for
+ some files but not others.
+
+
+
+
+ If pkg-config is available, use it to
+ locate libjpeg and
+ zlib dependencies, falling back on old
+ behavior if unsuccessful.
+
+
+
+
+
+
Other Notes