Re: How to create a PDF-Printer from the command line
On Mon 08 Jan 2018 at 19:21:39 -0600, David Wright wrote:
> On Mon 08 Jan 2018 at 18:18:33 (+0000), Brian wrote:
> >
> > Unlike David Wright, I've not noticed the font quality to be poor when
> > the magnification ability (left click with the mouse) of gv is used to
> > examine characters in the PDF.
>
> What I was using with paps (and its maximum Unicode coverage when
> diagnostic printing) is FreeMono, which appears to substitute unifont
> characters where it needs to: freemono.png attached. This shows the
> font itself, some hex blobs, and some unifont substitutions.
> So *most* of a typical file will be printed with the quality of
> $ display /usr/share/fonts/opentype/freefont/FreeMono.otf
>
> Commenting on your other post, yes, it *would* be nice if paps were
> papdf, but I merely have | ps2pdf - - at the end of the bash
> function that sets the default font and margins etc to suit my
> printer. So being Unicode-aware is far more important to me than
> PS output.
>
> ¹ attachments are scrot screenshots of xpdf set to 600%, which limits
> their crispness.
I am not attempting to dissuade anyone from using paps but trying to
explore why what appears to be a relatively simple process (text to PDF)
has so few utilities. Without a UTF-8 requirement we are awash with
Postscript programs, but not so with direct conversion to PDF. Having
said that, I have no deep understanding of either the PostScript or PDF
format, so perhaps it is more difficult than I imagine; especially when
it comes to producing an output with, for example, columns, headers etc.
However, there are utilities which can help with preprocessing a text
file beforehand.
As a UTF-8 Debian alternative to txt2pdf:
Create $HOME/.config/fontconfig/fonts.conf with the contents
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<alias>
<family>monospace</family>
<prefer>
<family>freemono</family>
</prefer>
</alias>
</fontconfig>
(Is there anything better than FreeMono's UTF-8 glyph coverage?)
Then
CHARSET=utf-8 /usr/lib/cups/filter/texttopdf 1 1 1 1 1 < text.txt> > out.pdf
out.pdf is not searchable, so continue with
pdftocairo -pdf out.pdf searchable.pdf
A bonus is that searchable.pdf is about seven times smaller than out.pdf.
--
Brian.
Reply to: