Coordinate Precision in PDF using PDFTron

Q: I noticed that the content stream PDFTron outputs only contains
coordinates up to 3 decimal places. I also noticed that an output
transformation matrix can contain up to 5 decimal places. The PDF
spec notes that real numbers are accurate to approximately 5 decimal
places (single floating point precision). Is there a way to increase
the precision of the numbers being output?
----
A: According to the PDF specification, real numbers should have 5
digits of precision (not decimal places).
So, if you have a number such as 0.0000018298111 it will be written as
0.0000018291

Although PDFNet SDK can properly parse and write real numbers, it also
allows users to override the default PDFNet number parsing/writing
function (see pdftron::SDF::Number::WriteProc/ReadProc). Please note
that this functionality is only available in the C++ version of the
library.

Q: I may have misinterpreted the PDF Spec. Appendix C notes that real
numbers have "5: Number of significant decimal digits of precision in
_fractional part (approximate)_." (emphasis mine). I read this to
mean that the fractional part will contain 5 decimal digits of
precision, but now that I consider it, that doesn't make too much
sense with floating point numbers.

Thanks for informing me that we can overwrite the parse/writing
function. If we decide to preserve our current (double precision)
information in the PDF file, it is good to know that round-tripping it
back will not be a problem if we so choose. We will keep in mind that
the native renderer might have limitations in reading/rendering such
numbers.
----
A: The PDFNet SDK renderer does not have limitations when it comes to
working with doubles, so you will be safe even implementing your own
number reading/writing functions.