Hello,

I cleared the list of bug fixes, feature additions and API changes
that I had in mind for 0.10, so I thought it was about time tagging a
0.10.0-rc1. In the past weeks I received quite some intense testing
from some early adopter users, so I am very happy for the current
solidity of PoDoFo. There were also very useful discussions about
critical API changes that ended in PoDoFo, and those lead to make the
API design even more robust, and code organization as well. After many
delays I finally decided to move the I/O subsystem to a non PDF
specific location (the "auxiliary"[1] folder, previously known as
"common"). I also made a change that may be controversial, so I speak
about it now: I renamed PdfRect to Rect and moved to "auxiliary". The
rationale is the following: Matrix and Vector2 classes were added,
Rect is coupled with Matrix (we can transform the rectangle with the
matrix), and I found that either we prefix all the geometrical types
with "Pdf", or we go without prefix for all of them. I found PdfMatrix
and especially PdfVector2 non appealing (too long to type), so I
decided to have all of them without Pdf prefix, because they are quite
generic geometrical concepts that don't have a strong/unique coupling
with the Pdf specification, except the fact that Matrix and Rect can
be serialized through PdfArray (the conventions for the
roto-translation matrix used in PDF are common also outside of PDF).
Still the types are within the PoDoFo namespace, so we have now:
- PoDoFo::Vector2
- PoDoFo::Matrix
- PoDoFo::Rect

which are all enough short to type. I am assuming the risk of clashes
with other libraries low or avoidable qualifying the
namespace/creating typedefs. If you don't like the naming of the
classes, please suggest some alternatives, considering that all the
three types are directly or indirectly coupled and should be grouped
together.

If no major discussion or bug fixing is required, I think we can have
a 0.10.0 in a week/ten days: after that I will also be able to talk
more about the experience of these two months after re-integration of
pdfmm and the plans for the future. For Linux distribution packagers:
I will recommend against 0.10 for packaging in Linux distros, for two
reasons: tools are untested, and more API improvements are planned for
1.0. I will also talk more about this later.

Cheers,
Francesco

[1] https://github.com/podofo/podofo/tree/master/src/podofo/auxiliary


_______________________________________________
Podofo-users mailing list
Podofo-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/podofo-users

Reply via email to