5
5
<!ENTITY mdash "—">
6
6
<!ENTITY ndash "–">
7
7
<!ENTITY nbsp " ">
8
<!ENTITY swversion "2.2.4">
9
<!ENTITY lastreleased "June 25, 2011">
8
<!ENTITY swversion "2.3.0">
9
<!ENTITY lastreleased "August 11, 2011">
2078
<term>2.3.0: August 11, 2011</term>
2083
Bug fix: when preserving existing encryption on encrypted
2084
files with cleartext metadata, older qpdf versions would
2085
generate password-protected files with no valid password.
2086
This operation now works. This bug only affected files
2087
created by copying existing encryption parameters; explicit
2088
encryption with specification of cleartext metadata worked
2089
before and continues to work.
2094
Enhance <classname>QPDFWriter</classname> with a new
2095
constructor that allows you to delay the specification of the
2096
output file. When using this constructor, you may now call
2097
<function>QPDFWriter::setOutputFilename</function> to specify
2098
the output file, or you may use
2099
<function>QPDFWriter::setOutputMemory</function> to cause
2100
<classname>QPDFWriter</classname> to write the resulting PDF
2101
file to a memory buffer. You may then use
2102
<function>QPDFWriter::getBuffer</function> to retrieve the
2108
Add new API call <function>QPDF::replaceObject</function> for
2109
replacing objects by object ID
2114
Add new API call <function>QPDF::swapObjects</function> for
2115
swapping two objects by object ID
2120
Add <function>QPDFObjectHandle::getDictAsMap</function> and
2121
<function>QPDFObjectHandle::getArrayAsVector</function> to
2122
allow retrieval of dictionary objects as maps and array
2128
Add functions <function>qpdf_get_info_key</function> and
2129
<function>qpdf_set_info_key</function> to the C API for
2130
manipulating string fields of the document's
2131
<literal>/Info</literal> dictionary.
2136
Add functions <function>qpdf_init_write_memory</function>,
2137
<function>qpdf_get_buffer_length</function>, and
2138
<function>qpdf_get_buffer</function> to the C API for writing
2139
PDF files to a memory buffer instead of a file.
2078
2148
<term>2.2.4: June 25, 2011</term>