groff
[Top][All Lists]
Advanced

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

Re: [groff] 24/40: [build]: Refactor handling of PDF FreeEuro font.


From: Deri
Subject: Re: [groff] 24/40: [build]: Refactor handling of PDF FreeEuro font.
Date: Sat, 12 Nov 2022 20:19:04 +0000

On Saturday, 12 November 2022 19:43:38 GMT G. Branden Robinson wrote:
> gbranden pushed a commit to branch master
> in repository groff.
> 
> commit 83004cbf0c8e30bd700f9ef246629ab77de96a7c
> Author: G. Branden Robinson <g.branden.robinson@gmail.com>
> AuthorDate: Fri Nov 11 15:34:56 2022 -0600
> 
>     [build]: Refactor handling of PDF FreeEuro font.
> 
>     [build]: Refactor handling of FreeEuro font for PDF device.
> 
>     * font/devpdf/Foundry.in: Drop "EURO" entry from file.
>     * font/devpdf/devpdf.am (font/devpdf/download): Add it here.
> 
>     * font/devpdf/util/BuildFoundries.pl: Add list `base35Fonts` to store
>       the groff font names of the PostScript Level 2 base fonts.
> 
>       (LoadFoundry): ...so that we copy their descriptions (and _only_
>       these) from the `ps` device's font description directory.
> 
>     * doc/doc.am (doc/groff-man-pages.pdf): Declare dependency on
>       "freeeuro.pfa" file in `pdf` device's font description directory.
> ---
>  ChangeLog                          | 14 ++++++++++++++
>  doc/doc.am                         | 12 +++++++-----
>  font/devpdf/Foundry.in             |  1 -
>  font/devpdf/devpdf.am              |  1 +
>  font/devpdf/util/BuildFoundries.pl | 12 ++++++++++--
>  5 files changed, 32 insertions(+), 8 deletions(-)
> 
> diff --git a/ChangeLog b/ChangeLog
> index eafe06a4b..7d328a511 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1,3 +1,17 @@
> +2022-11-11  G. Branden Robinson <g.branden.robinson@gmail.com>
> +
> +     [build]: Refactor handling of FreeEuro font for PDF device.
> +
> +     * font/devpdf/Foundry.in: Drop "EURO" entry from file.
> +     * font/devpdf/devpdf.am (font/devpdf/download): Add it here.
> +     * font/devpdf/util/BuildFoundries.pl: Add list `base35Fonts` to
> +     store the groff font names of the PostScript Level 2 base fonts.
> +     (LoadFoundry): ...so that we copy their descriptions (and _only_
> +     these) from the `ps` device's font description directory.
> +     * doc/doc.am (doc/groff-man-pages.pdf): Declare dependency on
> +     "freeeuro.pfa" file in `pdf` device's font description
> +     directory.
> +
>  2022-11-11  G. Branden Robinson <g.branden.robinson@gmail.com>
> 
>       * font/devpdf/devpdf.am: Refactor.
> diff --git a/doc/doc.am b/doc/doc.am
> index ee18976bb..76f719426 100644
> --- a/doc/doc.am
> +++ b/doc/doc.am
> @@ -248,12 +248,14 @@ man-all: $(GROFF_MAN_PAGES_ALL)
>  man-clean:
>       $(RM) $(GROFF_MAN_PAGES_ALL)
> 
> -# Many pages use tbl, a few use eqn, and soelim(1) uses pic.
> +# Many pages use tbl, a few use eqn, and soelim(1) uses pic.  We also
> +# need groff's FreeEuro font so we can embed it.
>  #
> -# We embed the fonts to (1) honor the current PDF standard, (2) ensure
> -# consistent rendering of the document, and (3) exercise this feature of
> -# gropdf.
> -doc/groff-man-pages.pdf: $(GROFF_MAN_PAGES_ALL) eqn pic tbl
> +# We embed the fonts (-P-e) to (1) honor the current PDF standard, (2)
> +# ensure consistent rendering of the document, and (3) exercise this
> +# feature of gropdf.
> +doc/groff-man-pages.pdf: $(GROFF_MAN_PAGES_ALL) eqn pic tbl \
> +     font/devpdf/freeeuro.pfa
>       $(GROFF_V)$(DOC_GROFF) -pet -mandoc -rC1 -rCHECKSTYLE=3 \
>         -Tpdf -P-e \
>         $(GROFF_MAN_PAGES1) \
> diff --git a/font/devpdf/Foundry.in b/font/devpdf/Foundry.in
> index 633a0a58d..67a91555a 100644
> --- a/font/devpdf/Foundry.in
> +++ b/font/devpdf/Foundry.in
> @@ -65,7 +65,6 @@
> TI|Y||||NimbusRoman-Italic.t1!NimbusRoman-Italic!NimbusRomNo9L-ReguItal!n02
> 1023l
> TR|Y||||NimbusRoman-Regular.t1!NimbusRoman-Regular!NimbusRomNo9L-Regu!n0210
> 03l.pfb
> ZCMI|N||||Z003-MediumItalic.t1!Z003-MediumItalic!URWChanceryL-MediItal!z003
> 034l.pfb ZD|Y||||D050000L!D050000L.t1!Dingbats!d050000l.pfb
> -EURO|N||||*../devps/freeeuro.pfa
> 
>  # BEGIN URW ============================================================
> 
> diff --git a/font/devpdf/devpdf.am b/font/devpdf/devpdf.am
> index 0114d15e0..0b2b39c33 100644
> --- a/font/devpdf/devpdf.am
> +++ b/font/devpdf/devpdf.am
> @@ -214,6 +214,7 @@ font/devpdf/download: $(devpdffontmapdata)
> font/devpdf/DESC \ --strict $(abs_top_builddir)/font/devpdf \
>              '$(abs_top_srcdir)/font/devps:$(abs_top_builddir)/font/devps' 
\
> 
>              >>$@.tmp \
> 
> +     && printf "\tFreeEuro\tfreeeuro.pfa\n" >>$@.tmp \
>       && mv $@.tmp $@
> 
>  # PDFs to be produced by troff should depend on this stamp file to
> diff --git a/font/devpdf/util/BuildFoundries.pl
> b/font/devpdf/util/BuildFoundries.pl index 1e7c416cb..cdc8573c0 100644
> --- a/font/devpdf/util/BuildFoundries.pl
> +++ b/font/devpdf/util/BuildFoundries.pl
> @@ -45,6 +45,15 @@ my $lct=0;
>  my $foundry='';      # the default foundry
>  my $notFoundFont=0;
> 
> +# We hard-code the PostScript Level 2 base 35 fonts because we don't
> +# want to copy any others from the devps font directory to devpdf's.
> +my @base35Fonts = (
> +    "AB", "ABI", "AI", "AR", "BMB", "BMBI", "BMI", "BMR", "CB", "CBI",
> +    "CI", "CR", "HB", "HBI", "HI", "HNB", "HNBI", "HNI", "HNR", "HR",
> +    "NB", "NBI", "NI", "NR", "PB", "PBI", "PI", "PR", "S", "TB", "TBI",
> +    "TI", "TR", "ZCMI", "ZD",
> +);
> +
>  if ($check)
>  {
>      CheckFoundry("Foundry.in");
> @@ -115,7 +124,7 @@ sub LoadFoundry
> 
>           my $gfont=($foundry eq '')?$r[0]:"$foundry-$r[0]";
> 
> -         if ($r[2] eq '')
> +         if ($r[2] eq '' && grep /^$r[0]$/, @base35Fonts)
>           {
>               # Don't run afmtodit; just copy the groff font
>               # description file for grops.
> @@ -142,7 +151,6 @@ sub LoadFoundry
>                       }
>                   }
>                   Notice("copied grops font $gfont") if $gotf;
> -
>               }
>               else
>               {
> 
> _______________________________________________
> Groff-commit mailing list
> Groff-commit@gnu.org
> https://lists.gnu.org/mailman/listinfo/groff-commit

And this one.

Cheers

Deri







reply via email to

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