lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Replace `-dgs-load-fonts' to `--bigpdfs' in lilypond-book (issue 300


From: David Kastrup
Subject: Re: Replace `-dgs-load-fonts' to `--bigpdfs' in lilypond-book (issue 300280043 by address@hidden)
Date: Fri, 22 Jul 2016 17:35:55 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux)

Werner LEMBERG <address@hidden> writes:

> About a month ago we discussed how to reduce the disk space necessary
> for builing the lilypond documentation.
>
>> [...]  Since lilypond itself converts all fonts to PostScript
>> resources, why not writing those resources to a `fontresource'
>> directory instead of embedding?  We could add a checksum to the
>> resource name, just to be sure that, say, `foo.tff' and `foo.otf'
>> will be rejected.
>> 
>> Ideally, all intermediate PDFs also refer to this `fontresource'
>> directory, and only in the last step PDFs with subsetted, embedded
>> fonts are created.
>
> Such an approach has now been discussed on the the pdftex mailing
> list, cf.
>
>   http://tug.org/pipermail/pdftex/2016-July/009045.html
>
> and the following e-mails in this thread.
>
> I've just tested successfully the following method, except itemĀ 1,
> which I've executed manually.
>
> 1. Instead of embedding font resources into the file, lilypond writes
>    them to a font resource directory and uses the `.loadfont' operator
>    in its PS output file.  For simplicity, the font resources should
>    have the PS font name as its file name (regardless of the font
>    format), e.g. `TeXGyraSchola-Regular'; we then don't need a font
>    map for ghostscript.
>
> 2. Lilypond's PS files are converted to PDFs with the additional gs
>    option `-dEmbedAllFonts=false' (to be added to `postscript->PDF' in
>    file `backend-library.scm').
>
> 3. Both xetex and pdftex accept the fontless PDFs without complaints;
>    they simply embed them into its output file without alterations,
>    AFAICS.
>
> 4. After the output PDF is built, a call to
>
>      ps2pdf -I<fontresourcedir> \
>             -dNOSAFER -P \
>             Fontless.pdf WithEmbeddedFonts.pdf
>
>    creates the final document.
>
> Comparing the `--bigpdfs' method with the fontless PDF approach as
> outlined above, the latter creates a final output file about 30%
> smaller (at least in my small test).

A 30% reduction in the final output file size sounds nice.  Personally,
I find the prospect of not having 4GB of disk usage for running
lilypond-patchy-staging quite more compelling, and I would seriously
suspect that all the amount of font juggling and merging subsetted fonts
will not just take quite a bit of disk space but also of processing
time.  So if we could successfully pull this off and have it work
reliably for lilypond-book, I consider it likely to end up as a real
boon in resource usage.

-- 
David Kastrup



reply via email to

[Prev in Thread] Current Thread [Next in Thread]