head 1.2; access; symbols pkgsrc-2025Q3:1.1.0.100 pkgsrc-2025Q3-base:1.1 pkgsrc-2025Q2:1.1.0.98 pkgsrc-2025Q2-base:1.1 pkgsrc-2025Q1:1.1.0.96 pkgsrc-2025Q1-base:1.1 pkgsrc-2024Q4:1.1.0.94 pkgsrc-2024Q4-base:1.1 pkgsrc-2024Q3:1.1.0.92 pkgsrc-2024Q3-base:1.1 pkgsrc-2024Q2:1.1.0.90 pkgsrc-2024Q2-base:1.1 pkgsrc-2024Q1:1.1.0.88 pkgsrc-2024Q1-base:1.1 pkgsrc-2023Q4:1.1.0.86 pkgsrc-2023Q4-base:1.1 pkgsrc-2023Q3:1.1.0.84 pkgsrc-2023Q3-base:1.1 pkgsrc-2023Q2:1.1.0.82 pkgsrc-2023Q2-base:1.1 pkgsrc-2023Q1:1.1.0.80 pkgsrc-2023Q1-base:1.1 pkgsrc-2022Q4:1.1.0.78 pkgsrc-2022Q4-base:1.1 pkgsrc-2022Q3:1.1.0.76 pkgsrc-2022Q3-base:1.1 pkgsrc-2022Q2:1.1.0.74 pkgsrc-2022Q2-base:1.1 pkgsrc-2022Q1:1.1.0.72 pkgsrc-2022Q1-base:1.1 pkgsrc-2021Q4:1.1.0.70 pkgsrc-2021Q4-base:1.1 pkgsrc-2021Q3:1.1.0.68 pkgsrc-2021Q3-base:1.1 pkgsrc-2021Q2:1.1.0.66 pkgsrc-2021Q2-base:1.1 pkgsrc-2021Q1:1.1.0.64 pkgsrc-2021Q1-base:1.1 pkgsrc-2020Q4:1.1.0.62 pkgsrc-2020Q4-base:1.1 pkgsrc-2020Q3:1.1.0.60 pkgsrc-2020Q3-base:1.1 pkgsrc-2020Q2:1.1.0.56 pkgsrc-2020Q2-base:1.1 pkgsrc-2020Q1:1.1.0.36 pkgsrc-2020Q1-base:1.1 pkgsrc-2019Q4:1.1.0.58 pkgsrc-2019Q4-base:1.1 pkgsrc-2019Q3:1.1.0.54 pkgsrc-2019Q3-base:1.1 pkgsrc-2019Q2:1.1.0.52 pkgsrc-2019Q2-base:1.1 pkgsrc-2019Q1:1.1.0.50 pkgsrc-2019Q1-base:1.1 pkgsrc-2018Q4:1.1.0.48 pkgsrc-2018Q4-base:1.1 pkgsrc-2018Q3:1.1.0.46 pkgsrc-2018Q3-base:1.1 pkgsrc-2018Q2:1.1.0.44 pkgsrc-2018Q2-base:1.1 pkgsrc-2018Q1:1.1.0.42 pkgsrc-2018Q1-base:1.1 pkgsrc-2017Q4:1.1.0.40 pkgsrc-2017Q4-base:1.1 pkgsrc-2017Q3:1.1.0.38 pkgsrc-2017Q3-base:1.1 pkgsrc-2017Q2:1.1.0.34 pkgsrc-2017Q2-base:1.1 pkgsrc-2017Q1:1.1.0.32 pkgsrc-2017Q1-base:1.1 pkgsrc-2016Q4:1.1.0.30 pkgsrc-2016Q4-base:1.1 pkgsrc-2016Q3:1.1.0.28 pkgsrc-2016Q3-base:1.1 pkgsrc-2016Q2:1.1.0.26 pkgsrc-2016Q2-base:1.1 pkgsrc-2016Q1:1.1.0.24 pkgsrc-2016Q1-base:1.1 pkgsrc-2015Q4:1.1.0.22 pkgsrc-2015Q4-base:1.1 pkgsrc-2015Q3:1.1.0.20 pkgsrc-2015Q3-base:1.1 pkgsrc-2015Q2:1.1.0.18 pkgsrc-2015Q2-base:1.1 pkgsrc-2015Q1:1.1.0.16 pkgsrc-2015Q1-base:1.1 pkgsrc-2014Q4:1.1.0.14 pkgsrc-2014Q4-base:1.1 pkgsrc-2014Q3:1.1.0.12 pkgsrc-2014Q3-base:1.1 pkgsrc-2014Q2:1.1.0.10 pkgsrc-2014Q2-base:1.1 pkgsrc-2014Q1:1.1.0.8 pkgsrc-2014Q1-base:1.1 pkgsrc-2013Q4:1.1.0.6 pkgsrc-2013Q4-base:1.1 pkgsrc-2013Q3:1.1.0.4 pkgsrc-2013Q3-base:1.1 pkgsrc-2013Q2:1.1.0.2 pkgsrc-2013Q2-base:1.1; locks; strict; comment @# @; 1.2 date 2025.11.10.13.53.33; author wiz; state dead; branches; next 1.1; commitid J9S5OZGliIzGO0iG; 1.1 date 2013.05.04.12.51.31; author joerg; state Exp; branches; next ; desc @@ 1.2 log @podofo: update to 1.0.2. Tools have been obsoleted upstream, pkgsrc follows suit. ## Version 1.0.2 - Fixed [#275](https://github.com/podofo/podofo/issues/275), [#276](https://github.com/podofo/podofo/issues/276) - `PdfTokenizer`: Fixed free-after-use after failing to parse content while reading literal tokens - `PdfFont`: Improved heursitic for word spacing - `PdfDifferenceEncoding`: Fixed handling of ligatures in AGL character names - `PdfXMPPAcket`: Make `GetDescription()` const correct - `PdfMemDocument`: Fixed upgrade to PDF2.0 in a incremental update ## Version 1.0.1 - Fixed [#265](https://github.com/podofo/podofo/issues/265), [#264](https://github.com/podofo/podofo/issues/264) - Fixed several issues related to use of `nullable>` - XMP: Fixed removing extension from extension bag - XMP: Fix double inserting pdfuaid schema - Text extraction fixes: improved word spacing heuristic, space trimming in ligatures, text in XObject form with non identity matrix - Fixed pkg-config for shared built library ## Version 1.0.0 - Added support for Type1, CFF and OpenType CFF font subsetting - Added support for Type3 font subsetting (no encoding subsetting, yet) - Implemented full "Adobe Glyph List" specification (https://github.com/adobe-type-tools/agl-specification) for text extraction and glyph selection - Implemented full Type1, TrueType font glyph selection - Many fixes in TrueType legacy subsetting - Added support for PDF/UA preserving when adding annotations/form fields - Improved PDF/A preserving (eg. when PDF/UA level is set as well in the XMP metadata) - Added support for automatically rotating imported images drawn on a `PdfPainter` when a orientation is detected in the source image codec metadata. Currently supported on Tiff images only (Jpeg exif metadata support pending) - Added high-level signing API, see `PdfSignerCMS` and [`TestSignature1`](https://github.com/podofo/podofo/blob/edbcb16a5b18cb20f1d0da1724639cee13608436/test/unit/SignatureTest.cpp#L37) test case - Added support for signing encrypted documents - Added support for preserving encryption among savings - Removed Libidn dependency, default to AESV3R6 encryption - Added support for predefined CMap(s) for improved CJK text extraction - Added much better CMake [integration](https://github.com/podofo/podofo?tab=readme-ov-file#consume-podofo-from-package-managers-with-cmake) - Added raw rectangle corners retrieval in `PdfAnnotation`, `PdfPage` - `PdfDocument`: Added `GetFieldsIterator()` - `PdfPage`: Added `GetFieldsIterator()` - `PdfSignature`: Added `TryGetPreviousRevision()` - `PdfCanvas`: Added `CopyContentsTo()` - `FileStreamDevice` now uses again C stdio for better performance - `PdfName`: * Optimized for struct size and construction from string const literal * Added `PdfName operator""_nm(const char*, size_t)` - `PdfString`: * Optimized for struct size * Added `std::string&&` constructor - `PdfVariant`: Optimized for accessing `PdfString`, `PdfName` and `PdfReference` - Reviewed `PdfFileSpec`, `PdfAction`, `PdfDestination` API and their usage in `PdfOutlineItem`, `PdfOutlines`, `PdfAnnotationActionBase`, `PdfAnnotationLink`, `PdfAnnotationFileAttachment` - Reviewed `PdfExtension` API - Reviewed `PdfNameTree`, renamed to `PdfNameTrees` and added `PdfNameTree` to pick specific trees with typed element - Reviewed `PdfExtGState` - Reviewed `PdfTilingPattern`, `PdfShadingPattern`, `PdfFunction`: the API now exposes the full capabilities of the PDF specification - `PdfEncrypt` is now stateless: added `PdfEncryptContext` as a separate state context and used as argument in `PdfEncrypt` methods - Set `PdfSignature` to have correct `/ByteRange` and `/Contents` after signing with `PoDoFo::SignDocument` - Added `PdfNames` and moved all known names there from `PdfName` - `PdfPageCollection`: Methods creating pages now takes `PdfPageSize` or default inferred size from doc - Fixed `PdfStreamedDocument`, see #88 - Tons of API improvements (see [API-MIGRATION.md](https://github.com/podofo/podofo/blob/master/API-MIGRATION.md)) - Tons of other bug fixes ## Version 0.10.5 - Fix [#191](https://github.com/podofo/podofo/issues/191), [#197](https://github.com/podofo/podofo/issues/197), [#201](https://github.com/podofo/podofo/issues/201), [#212](https://github.com/podofo/podofo/issues/212), [#233](https://github.com/podofo/podofo/issues/233), [#241](https://github.com/podofo/podofo/issues/241), [#251](https://github.com/podofo/podofo/issues/251), [#252](https://github.com/podofo/podofo/issues/252), [#253](https://github.com/podofo/podofo/issues/253) - `PdfParser`: Fixed stack overflow parsing documents with many XRef stream updates - `PdfFont`: Fixed `GetBoundingBox()` retrival - `PdfFontMetricsObject`: Fixed reading `/FontBBox` - `PdfEncodingFactory`: Fixed parsing of limits with `/FirstChar` equals to `/LastChar` - `PdfFontMetricsStandard14`: Fixed parsing /Widths - `PdfMetadata`: Fixed missing init ensure for SetAuthor() - `PdfTokenizer`: Fixed character escaping when reading strings - `PdfPageCollection`: Fix memory leak in `RemovePageAt` - Compilation and linking fixes in various conditions - `PdfFontManager`: Fixed GetOrCreateFontFromBuffer stealing memory - `PdfPageCollection`: Disable copy/assignment - `PdfPage_TextExtraction`: Fix `decodeString` with no font - Fix eating of non-space chars in `SplitTextAsLines` - Fix FreeType segfault race condition - `PdfCheckBox`: Fixed `IsChecked()` - `PdfParser`: Uncondtionally try to read XRef stream in all PDFs that doesn't have a cross reference section ## Version 0.10.4 - Fixes [#161](https://github.com/podofo/podofo/issues/161), [#162](https://github.com/podofo/podofo/issues/162), [#167](https://github.com/podofo/podofo/issues/167), [#183](https://github.com/podofo/podofo/issues/183), merges [#157](https://github.com/podofo/podofo/issues/) - `StandardStreamDevice`: Fixed `seek()` in case of `iostream`/`fstream` - `PdfWriter`: Fixed computing the doc identifier with a wrong buffer - `PdfPainter`: Fix `SetCurrentMatrix()` to really update CTM - Fixed compilation in mingw < 12 - `PdfCIDToGIDMap`: Fixed map reading - `PdfPainter`: Fixed offset on multiline text if text is not left aligned ## Version 0.10.3 - Fixed big performance regression introduced in 0.10, see [#108](https://github.com/podofo/podofo/issues/108) - Fixed data loss with encrypted documents, see [#99](https://github.com/podofo/podofo/issues/99) - Fixed compilation with VS2022 >= 17.8 - Fixed compilation using libxml >= 2.12.0 ## Version 0.10.2 - Security related bugfixes [#76](https://github.com/podofo/podofo/issues/76), [#89](https://github.com/podofo/podofo/issues/89), [#96](https://github.com/podofo/podofo/issues/96) - Some compilation and test fixes ## Version 0.10.1 - Security bugfixes, [#66](https://github.com/podofo/podofo/issues/66), [#67](https://github.com/podofo/podofo/issues/67), [#69](https://github.com/podofo/podofo/issues/69), [#70](https://github.com/podofo/podofo/issues/70), [#71](https://github.com/podofo/podofo/issues/71), [#72](https://github.com/podofo/podofo/issues/72) - Rewritten `PdfPageCollection` for performance - `PdfCMapEncoding`: Fix parsing some invalid CMap(s) supported by Acrobat - `PdfXRefStreamParserObject`: Fixed handling of invalid XRef stream entries - Support compilation of the library header (not the library itself) with C++20 ## Version 0.10.0 - `PdfPage`/`PdfAnnotationCollection`/`PdfAnnotation`: Now functions with rect input assume it to be using the canonical coordinate system with no rotation - `PdfImage`: Added support for CYMK jpeg - `PdfParser`: Cleaned `FindToken2` -> `FindTokenBackward` - Renamed base source folder -> main - `PdfPainter`: Revamped API, added full state inspection with current point, added added `PdfPainterTextContext` to handle text object operations Use it with `PdfPainter::Text` instance member. Added `PdfContentStreamOperators` low level interface for PdfPainter - `PdfFontMetrics`: Added `FilePath`/`FaceIndex` for debugging, when available - `PdfFont`: Renamed `GetStringLength()` overloads with `PdfString` to `GetEncodedStringLength()` - `PdfFontManager`: Renamed `GetFont()` -> `SearchFont()` Re-Added better `GetOrCreateFont()` from file/buffer - `PdfEncrypt`: Cleaned factory methods - Added `PdfArray::FindAtAs()`, `PdfArray::FindAtAsSafe()`, `PdfArray::TryFindAtAs()`, `PdfArray::GetAtAs()`, `PdfArray::GetAtAsSafe()`, `PdfArray::TryGetAtAs()` - Added `PdfDictionary::FindKeyAsSafe()` and `PdfDictionary::TryFindKeyAs()` - `PdfDictionary::AddKeyIndirect`/`PdfArray::AddKeyIndirect` accepts a reference - `PdfAnnotation`/`PdfField` API review - `PdfDate`: Introduced `PdfDate::LocalNow()` and `PdfDate::UtcNow()` and default constructor is epoch time instead - Renamed `PdfDocument::GetNameTree()` -> `GetNames()` - `PdfObject`: Flate compress on write objects that have no filters - `PdfMemDocument` does collect garbage by default when saving - `PdfField`/`PdfAnntation`: Fully reworked the hierarchy and added proper fields ownership - Added `PdfField::GetParent()`, `PdfField::GetChildren()` - `PdfImage`: Cleaned/reviewed/fixed `SetData()`/`SetDataRaw()` - Renamed `PdfPageTree` -> `PdfPageCollection` - Added XMP metadata reading/saving. Added `PdfMetadata` class - Added text extraction API - Review I/O API: Merged `InputDevice`/`OutputDevice` into `StreamDevice`. New hierarchy deriving `StreamDevice` - Reviewed `PdfObjectStream` API: added streaming operations, `GetInputStream()`, `GetOutputStream()`. Renamed `GetFilteredCopy()` -> `GetUnwrappedCopy()`/`UnwrapTo()`. They only unwrap non media filters (see `PdfImage::DecodeTo` for media ones). Added proper copy and move assignment operators - `PdfImage`: Added `DecodeTo(pixelFormat)` ## Version 0.9.22 (pdfmm) - Fixed serialization of strings with non ASCII `PdfDocEncoding` characters - Removed `PdfLocaleImbue` - `PdfEncrypt`: Removed `PdfReference` state. Added `PdfStatefulEncrypt` - Removed use of `std::ostringstream`. Added efficient `outstringstream` - Added `PdfMath` functionalities (matrix transformations and so on) ## Version 0.9.21 (pdfmm) - Fixed serialization of UTF-16BE strings - More lenient `PdfDate` parsing ## Version 0.9.20 (pdfmm) - The project is now a C++17 library - Added move semantics for `PdfVariant`, `PdfObject`, `PdfArray`, `PdfDictionary` - Improved XRefStream support, added support in incremental saves - Many fixes in save incremental object/generation number incrementing - `PdfString` backed with UTF-8 storage - `PdfName` backed with UTF-8 storage - Brand new P`dfEncoding` class with support for both `/Encoding` and `/ToUnicode`, more complete Unicode support - Added a `PdfDynamicEncoding` class that creates a custom CID encoding based on actual used glyphs used - Automatic creation of CIDMap and `/ToUnicode` - Added `PdfSigner` class and `SignDocument()` - Added `PdfFontType1Encoding`, which support Type1 implicit encoding - Added support for PDF 2.0 UTF-8 strings (untested) - Added indirect iteration for `PdfArray`/`PdfDictionary` (see `GetIndirectIterator` methods) - Added `PdfDocument::GetPdfALevel()` - Added PDFA preserving writing - Refactored/Reviewed `PdfInputDevice`: versions that take buffer do not copy it (use `istringviewstream`) - Added font replacement facility `PdfFont::TryCreateFontSubstitute()` - Added standard14 fonts embedding, with font programs from PDFium - Reviewed `PdfXObject` hierarchy, added `PdfXObjectForm`, `PdfXObjectPostScript` - Added `PdfTextState` and use it to compute string widths in `PdfFont` - Improved `PdfDocEncoding` to expose conversion utf8 conversion facilities - `PdfParser`: Support also files with whitespace offset before magic start - `PdfObject` auto ownership - `PdfContents`: create on demand /Contents. First create a single stream, after array - Improved `IsDirty` handling: less dirty bit sets - Added `PdfPostScriptTokenizer` that as better general support for PostScript - `PdfDictionary`: Reviewed/convert `GetKey` -> `FindKey` - `PdfDictionary`: Reviewed `GetKeyAs` methods - Fixed hundreds of warnings. No warnings left in tested builds - `FontConfigManager`: better handling with custom configurations - Removed `PdfMutex`. Used `std::mutex` where necessary - Datatypte: removed `PdfDataType::HexString` - Removed support for old compilers (MSVC6, hpux, borland, turbo...) - Added better endian swap functions - Removed `auto_ptr` usage - Removed `pdf_int`/`pdf_uint` types - Removed use of `pdf_long`/`long` types - Removed use of `ptrdiff_t` - Removed unistring and ugly string conversion code. Moved to utfcpp - Reviewed `PdfObject::GetNumber`/`PdfObject::GetReal` (strict/lenient) - Remove `PdfObject` inheritance on `PdfVariant` - Reviewed `PdfVariant`/`PdfObject`/`PdfArray`/`PdfDictionary` equality/disequality operators - Simplified copyright headers - Object copy constructor must copy also stream - `PdfElement`: `GetDocument()`, `GetObject()` refs - `PdfIndirectObjectList`: `GetParentDocument()` -> `GetDocument()` - Remove `PdfSignOutputDevice::SetSignatureSize(size)` - Moved inline code to .cpp - Remove comments on overrides - Cleaned CMakeFiles (removed custom Find<>.cmake) - `NULL` -> `nullptr` - Use `std::shared_ptr` in `PdfFontMetrics`, `PdfEncoding` in `PdfFont` - Cleaned `PdfFontCache` (renamed `PdfFontManager`), removed font functions from `PdfDocument` - `PdfArray::FindAt()` return ref - Simplified license headers - Reviewed `PdfPageTree` and `PdfPageTreeCache` API - Reviewed most int vs unsigned indexing - Remove all hungarian notation - Sanitize code style - Removed all const char* and passed to string/string_view - Renamed `PdfFontCache` -> `PdfFontManager` - Renamed `PdfVecObjects` -> `PdfIndirectObjectList` - Renamed `PdfNamesTree` -> `PdfNameTree` - Renamed `PdfPagesTree` -> `PdfPageTree` - Renamed `PdfPagesTreeCache` -> `PdfPageTreeCache` - PdfObject: removed GetIndirectObject(), MustGetIndirectKey (must use PdfDictionary now) - Remove `PdfMemoryManagement.cpp`, Removed `podofo_new`, `podofo_free` - Add chars type for char array storage/buffering which inerits string - Review pointer vs ref parameters/return types - Removed `PdfRefCountedBuffer`, `PdfRefCountedInputDevice`, `PdfRefCountedOutputDevice` - Removed `PdfMemoryManagement` and all C style malloc/free usage - Refactored `PdfOutputDevice` (`PdfMemoryOutputDevice`/`PdfFileOutputDevice`/etc.) - Clean `PdfError`, remove `wchar_t` - Remove `printf`, `snprintf` - Renamed `PdfElement`-> {`PdfDictionaryElement`|`PdfArrayElement`} that respectively have `GetDictionary()`, `GetArray()` - Reviewed `PdfWriteFlags`, added `PdfSaveOptions` @ text @$NetBSD: patch-test_CMakeLists.txt,v 1.1 2013/05/04 12:51:31 joerg Exp $ --- test/CMakeLists.txt.orig 2013-05-04 02:09:14.000000000 +0000 +++ test/CMakeLists.txt @@@@ -11,6 +11,5 @@@@ SUBDIRS( TokenizerTest VariantTest WatermarkTest - unit ) @ 1.1 log @Use STL header, not a forward define. Don't try to build unit tests as the dependency on cppunit is not present. @ text @d1 1 a1 1 $NetBSD$ @