See also Changes-ver_2 for changes released for PDF::API2, and incorporated
into PDF::Builder.
See also Changes_2017 for earlier version 3 release logs.
3.010 2018-08-20
.gitignore, Changes, docs/buildDoc.pl, lib/PDF/Builder/Content.pm,
lib/PDF/Builder/Resource/XObject/Image/PNG.com
fix some minor glitches discovered in final testing
lib/PDF/Builder/Basic/PDF/Array.pm-Bool.pm-Dict.pm,
lib/PDF/Builder/Content.pm, lib/PDF/Builder/Resource/ColorSpace/DeviceN.pm,
lib/PDF/Builder/Resource/XObject/Image/PNG.pm
fix some minor POD errors
Changes_2017, Changes-ver_2, DEPRECATED, KNOWN_INCOMP, LICENSE, PATENTS,
README, SUPPORT
move to new INFO/ directory, as things were starting to get a little
crowded in the root directory. Changes and MANIFEST are used by the
system and can not be moved. MANIFEST updated to reflect new structure.
Changes, Changes_2017, MANIFEST
split up Change logs by year, to make them easier to handle.
docs/, docs/buildDoc.pl, MANIFEST
provide a tool and place to build the HTML pages from PODs in the
PDF::Builder module sources. The .html files are NOT shipped with either
the Perl build or on GitHub.
lib/PDF/Builder/Resource/XObject/Image/PNG.pm
[ref RT 124349] code cleanup while looking at issue of why PNG RGBA
processing is so incredibly slow. Suspect that the heavy use of the
Perl vec() call may have something to do with it. To be continued...
lib/PDF/Builder/Content.pm, examples/Content.pl, examples/Bspline.pl,
t/content.t, MANIFEST, examples.bat
[ref CTS 8] add "bspline" method to draw a smoothly continuous curve
(using blended cubic Bezier curves) through all the given points. In
addition, the first and/or last points may be specified as visible or
invisible straight line or curved segments in order to constrain the
spline's behavior at the endpoints.
lib/PDF/Builder/Content.pm, examples/Content.pl, t/content.t, DEPRECATED
[ref CTS 8] change "spline" method name to "qbspline", and deprecate
"spline". This is to reflect that this method is actually a piecewise
(non-continuous) series of quadratic Bezier curves, and not a true spline.
lib/PDF/Builder.pm, lib/PDF/Builder/Docs.pm, MANIFEST
Add POD commentary on input and output PDF version supported.
Move POD function details out of Builder.pm to a lower level "Docs"
routine, in order to reduce the POD clutter.
.perl-version, dist.ini.old, .travis.yml.HOLD, Makefile.PL,
lib/PDF/Builder.pm, lib/PDF/Builder/UniWrap.pm, MANIFEST
change minimum Perl release level from 5.8.6 to Perl 5.16.0, per PDF::API2.
The intent is to "support major Perl versions released in the past six
years, plus one major release before that one. This should provide
backward compatibility for the life of most LTS server distributions,
while eliminating the need to troubleshoot warnings and bugs that only
show up in increasingly-ancient versions of Perl." For this release, it
means that the minimum supported Perl is 5.16 (first released 2012-05-20...
see https://www.cpan.org/src/ "First release in each branch of Perl" for
dates, NOT "Latest releases in each branch of Perl"!). The next version
bump (to 5.18) should be after 2019-05-18.
lib/PDF/Builder/Resource/CIDFont/TrueType/FontFile.pm
use confess (Carp.pm) rather than die, per PDF::API2.
examples/*, examples.bat
moved output PDFs for several examples from the current directory to the
examples directory, in the same style as the rest of the example outputs.
Note that contrib.bat still outputs in the current directory.
contrib/text2pdf.pl, examples/020_corefonts--021_psfonts--021_synfonts--
022_truefonts--022_truefonts_diacrits_utf8--023_cjkfonts--026_unifont2--
ShowFont.pl, examples/Windows/Win32.pm, lib/PDF/Builder.pm,
lib/PDF/Builder/Annotation.pm--Content.pm--Lite.pm--Page.pm,
lib/PDF/Builder/Basic/PDF/Page.pm--Pages.pm,
lib/PDF/Builder/Resource/CIDFont/TrueType/FontFile.pm,
lib/PDF/Builder/Resource/XObject/Image/TIFF_GT.pm, t/author-critic.t--
author-pod-syntax.t--font-synfont.t--font-ttf.t--font-type1.t--
rt120397.t--rt120450.t
minor code styling changes to make perlcritic (level 5) happy. Some changes
from PDF::API2 for level 4/5.
t/*, contrib/pdf-debug.pl--text2pdf.pl, examples/012_pages--021_psfonts--
030_colorspecs--BarCode.pl--Content.pl--ContentText.pl--ShowFont.pl,
lib/PDF/Builder/Annotation.pm--Content.pm--Lite.pm--Matrix.pm--Outline.pm--
Page.pm--Resource.pm--UniWrap.pm--Util.pm,
lib/PDF/Builder/Content/Text.pm,
lib/PDF/Builder/Basic/PDF/Array.pm--Dict.pm--File.pm--Filter.pm--
Literal.pm--Null.pm--Objind.pm--Pages.pm--String.pm,
lib/PDF/Builder/Basic/PDF/Filter/FlateDecode.pm--ASCII85Decode.pm,
lib/PDF/Builder/Resource/CIDFont.pm--ColorSpace.pm--ExtGState.pm--
Glyphs.pm,
lib/PDF/Builder/Resource/CIDFont/CJKFont.pm--TrueType.pm,
lib/PDF/Builder/Resource/CIDFont/TrueType/FontFile.pm,
lib/PDF/Builder/Resource/Font/CoreFont.pm,
lib/PDF/Builder/Resource/XObject/Form/BarCode.pm,
lib/PDF/Builder/Resource/XObject/Image/GIF.pm
minor code styling changes to make perlcritic (level 4) happy, including
adding explicit "return" on all routines where missing, and not using
variables $a and $b ("magic" according to perlcritic). Some changes
suggested by PDF::API2 for this. There are many other level 4 errors yet
to be gotten rid of: "Code before warnings" and "Warnings disabled at" due
to use of "no warnings", "Close filehandles as soon as possible" due to
too many lines between "open" and "close" calls, "Always unpack @_ first"
(perlcritic doesn't like much about using the @_ array), "Subroutine name
is a homonym for a builtin function" (e.g., our own "open" in contrast to
CORE::open), "Symbols are exported by default" (doesn't like @EXPORT_OK
usage). Most other perlcritic level 4 complaints were permanently fixed,
but a few, such as "grep" and "map" formats, have been suppressed with
"no critic" statements. Those might be revisited later.
pc.bat
add batch file to run perlcritic
lib/PDF/Builder/Page.pm
a few minor code styling changes, per PDF::API2. Most of the PDF::API2
changes were already in PDF::Builder, and some I declined because the
style was not consistent.
examples.bat, examples/024_bdffonts, examples/examples.output
some minor improvements to bitmapped (BDF) display output. Bitmap font
support is still _very_ buggy! Does anyone actually _use_ bitmapped fonts?
lib/PDF/Builder.pm
stringify() make sure return value has at least empty string for content.
Several cases of -unicodemap check for true, not 1. After PDF::API2
changes for perlcritic.
lib/PDF/Builder/Content.pm
outobjdeep() check -docompress is true, not 1. bogen() explicitly default
move, larger, reverse to "false" (0). isvirtual(), ' apiistext' check for
true, not 1. After PDF::API2 changes for perlcritic.
lib/PDF/Builder/Basic/PDF/File.pm
add support for cross-reference streams (PDF 1.5) using 64-bit field
widths, per PDF::API2 changes.
.travis.yml.HOLD, MANIFEST
name restore (from .tgravis.yml). May attempt at some point to make use of
Travis for testing. Currently my system seems to not be supportive of
Travis modules, and I don't have a Travis account. I vaguely recall the
CPAN system trying to use .travis.yml in my first release, and requiring
an immediate release update, so I'm not using the name .travis.yml for now.
(see Changes_2017 for earlier changes)
(see Changes-ver_2 for changes to PDF::API2 up through 2.031)