Releases: jorisschellekens/borb
v2.0.25
📣 borb release 2.0.25
This release is a small feature release.
- Small fix in
TextAnnotation
. - Small fix(es) in tests related to redaction.
- All tests that produce a PDF now check the validity of that PDF using an external validator.
- The default profile of this validator checks against the latest version of the PDF spec.
borb
was built to adhere to iso32000.
Most notable difference is the embedding of the standard 14 fonts. I made a separate profile that checks only against the iso32000 spec. CheckBox
should be debugged. The validator marks it as a bad PDF.- For PDF A1/b to really match the spec, the fonts (even standard 14) need to be embedded.
- The default profile of this validator checks against the latest version of the PDF spec.
- You can now specify
multiplied_inter_column_spacing
inMultiColumnLayout
. x or Decimal(y)
evaluates toDecimal(y)
whenx == Decimal(0)
. This was unintended. I only wanted it to evaluate toDecimal(y)
whenx is None
. I fixed all unwanted occurrences. This mostly affected theLayoutElement
classes.- Add
Alignment
to easy imports - Add
LoremIpsum
class to quickly generate dummy text (using a markov chain)
v2.0.24
📣 borb release 2.0.24
This release is a small feature release.
- a strong effort has been made to annotate all asserts
- all public methods are documented
- fixed a small bug in
Page.apply_redact_annotations
- fixed a ton of
mypy
warnings
v2.0.23.2
📣 borb release 2.0.23.2
This release is a small feature release.
- rounded corners are available on
LayoutElement
and all its children - all properties of
LayoutElement
are now available on all its children- with the exception of
FormField
- with the exception of nonsensical properties
- e.g.:
font_size
onShape
- e.g.:
- with the exception of
PDFToJPG
can now locate fonts on Windows and MacOCRImageRenderEventListener
has been made more resilient to bad input
v2.0.23
📣 borb release 2.0.23
This release is a small feature release.
- rounded corners are available on
LayoutElement
and all its children - all properties of
LayoutElement
are now available on all its children- with the exception of
FormField
- with the exception of nonsensical properties
- e.g.:
font_size
onShape
- e.g.:
- with the exception of
PDFToJPG
can now locate fonts on Windows and MacOCRImageRenderEventListener
has been made more resilient to bad input
v2.0.22.2
📣 borb release 2.0.22.2
This release is a small bugfix release.
By adding al lot of imports to borb/pdf/__init__.py
suddenly all imports for Chart
were imported.
This included matplotlib.pyplot
. This import is only needed when working with Chart
.
I changed the code in Chart
to only declare the type, but not do the import (as it didn't really need to in the first place).
v2.0.22
📣 borb release 2.0.22
This release is a small feature release:
- Test have been added corresponding to issues on GitHub.
- More documentation has been added in general. No undocumented public methods!
- Unsplash API has been added, to ensure you can build rapid prototypes for Documents by just specifying keywords for images, rather than having to look for the perfect
Image
- Small bugfix w.r.t. annotation names
- Small improvement in writing a PDF to bytes, inline array objects no longer have trailing newline character
- Small bugfix to fix layout of
FormField
objects usingFlexibleWidthColumnTable
- Added some imports to
borb/pdf/__init__.py
to make it easier to importborb
objects in general - Added the EURion symbol to the
LineArtFactory
- Added methods to rotate
Shape
andDisjointShape
v2.0.21
📣 borb release 2.0.21
This release is a small feature release:
borb
can now read some broken PDF documents- tests have been added for this use case
- more documentation has been added in general (less than 10 undocumented methods)
- border for
RemoteGoToAnnotation
has been removed
v2.0.20
📣 borb release 2.0.20
This release is a small feature release.
SoundAnnotation
can now be added to a PDF, enabling you to add voice-clips, music or other audio to your documentJavaScriptPushButton
makes it easier to add your ownJavaScript
enabled buttons- minor improvement to
TextRankKeywordExtraction
The majority of the work this sprint went into updating the documentation.
You should check it out. All code-samples in the README are now actually stand-alone code files that can be run.
They are automatically included in the README, rather than duplicated (as before), making it a lot easier to maintain the examples repo.
v2.0.19
📣 borb release 2.0.19
This release is a small feature release.
-
Forms have been extended with
PushButton
, which enables you to place aPushButton
in a PDF and tie an action to it. -
Tests for
PushButton
have been added to the repository. -
Examples for
PushButton
have been added to the examples repository. -
A test was added for issue #69 on GitHub, which deals with adding 500
Heading
objects to a PDF.
Turns out recursive parsing has its limits 😵💫 -
A small fix was introduced for issue #71 on GitHub
-
Annotation
now is its own proper class, each seperateAnnotation
has its own subclass. This makes thePage
class a lot lighter (where the code previously resided). -
Document
level JavaScript is now supported, examples and tests have been added to the corresponding repositories. -
Both embedded files and JavaScript use the concept of a
NameTree
which is now its own separate class.
In order to make sure your code runs smoothly, check your imports when upgrading to the latest version.
v2.0.18
📣 borb release 2.0.18
This release is a cleanup release.
- The library (previously called
ptext
) still had some imports being renamed aspDecimal
orpString
orpList
.
These occurences have been completely removed from the code. borb
can now create PDF documents that are almost PDF/A-1b valid. Some effort for fonts remains.