Code Monkey home page Code Monkey logo

Comments (21)

mikkelee avatar mikkelee commented on July 21, 2024 6

Georg Duffner writes on the design plan: "Additionally, fonts providing initials based on renaissance designs will be provided. The current source for these initials is the Bible de Genève as printed in 1564 in Lyon, France."

It contains many of the still missing initials. I went through the Old Testament (first two tomes) and found these (list updated 2020-03-21):

I've only included the first handful for each.

Note: From Psalms 23 (2nd tome, p. 13) through Proverbs, Ecclesiastes, and Song of Solomon until Isaiah, the block initials aren't used, but instead simple large letters.

Still missing, possibly to be found in the New Testament (though many of them are rare to non-existant as initials in French):

  • J (probably not extant, as the letter I was used for initials)
  • K
  • U (probably not extant either, the letter V was used for initials)
  • W
  • X
  • Y
  • Z

There are also some much larger initials opening each book:

The Genève initials would need to cleaned up and redrawn as vectors to be included in the font. It's probably a good idea to mix & match parts of multiple versions to get the best result.

Note also that there are variants of many of the initials, possibly needed for printing multiple folio pages simultaneously.

from eb-garamond.

lutetiensis avatar lutetiensis commented on July 21, 2024 6
  • The font lacks BCEHIJKMPRSUVWXYZ initials.
  • BCEHIMPRSV can be found in the lettrines of the Bibliothèques Virtuelles Humanistes; JKUWXYZ are missing.
    • BCEHIMPRSV must be chosen (since several variants exist), then extracted.
    • JKUWXYZ must be drawn.
  • Finally, Fill1 and Fill2 must be merged to generate the EB Garamond Initials font.

I will give it a try, as I know a little of everything that is needed here.

Let's start with a lettrine for which both the letter and the decoration exist, I suggest V.

Three variants exist: 9737, 9777 & 10339. Which ones do you all prefer? I think 9737 is the one that matches the others best.

EDIT: the specimen won't help us here.

from eb-garamond.

lutetiensis avatar lutetiensis commented on July 21, 2024 6

After about three hours of work, here is what I could do:

It will require a lot of cleanup before looking good, but what do you all think so far?

If we agree on this direction, I will finish it, then look at integrating this letter (bba8267?) and finally generate an OTF we can all play with.

@mikkelee I forgot to thank you for your ample research!

from eb-garamond.

mikkelee avatar mikkelee commented on July 21, 2024 4

See also this, the Bibliothèque has separated out the lettrines in a bit higher resolution than the page scans themselves:

http://www.bvh.univ-tours.fr/Consult/imgcherche.asp?numfiche=571&numtable=B372615206_18229&typeimg=Lettrine&position=1&mode=1&ecran=0

from eb-garamond.

mikkelee avatar mikkelee commented on July 21, 2024 2

Agreed on 9737

from eb-garamond.

lutetiensis avatar lutetiensis commented on July 21, 2024 2

Here is V. Let me know what you think. I can make tiny corrections, but if you are happy I will start a branch for a potential PR.

V

I will do the H initial next.

from eb-garamond.

rixx avatar rixx commented on July 21, 2024 1

In case anybody is tempted by the beautiful initials, this is the current state of the project (which sadly seems somewhat abandoned).
Screenshot_2019-11-16 Projects

from eb-garamond.

mikkelee avatar mikkelee commented on July 21, 2024 1

And another of their sites, with alphabetically sorted lettrines:

http://www.bvh.univ-tours.fr/batyr/beta/notice_libraire.php?Libraire=5

Note that they haven't registered any other examples than the ones I found previously. It appears that there were no lettrines for the letters JKUWXYZ...

from eb-garamond.

lutetiensis avatar lutetiensis commented on July 21, 2024 1

I just succeeded in building an OTF shipping my character (V) and MacOS is happy with it. Quite encouraging for a first day! Now I need to work on those paths... sigh

I propose the following initials for the remaining letters:

For the record, the original font used:

from eb-garamond.

bt2901 avatar bt2901 commented on July 21, 2024 1

What does bba8267 by @georgd do, exactly? It appears that this commit adds D glyph, but isn't the initial D already in the font? Is it about adding another variation?

EDIT: sorry, I was confused here for a moment; bba8267 was exactly the commit that introduced D into the font. It makes sense to base the integration of V on that.

from eb-garamond.

georgd avatar georgd commented on July 21, 2024 1

@lutetiensis thanks for your great initiative! I like the V and I surely will merge it. As for the H, I already have done it quite some time ago but wasn't able to merge it for various reasons back then. I'll do it later this week if you don't mind.

from eb-garamond.

doctorlard avatar doctorlard commented on July 21, 2024

I'd love to help, but I have no idea how to even start.

from eb-garamond.

mikkelee avatar mikkelee commented on July 21, 2024

There, that's the OT :)

Also, many other books printed by Jean de Tournes can be found on Google Books, for example:

from eb-garamond.

mikkelee avatar mikkelee commented on July 21, 2024

Looks like a good base to me, but as you say, it requires much cleanup. I would help, but I am slow and, to be honest, pretty bad at drawing Bézier curves. So I figured doing some research was the best way I could contribute hehe.

from eb-garamond.

lutetiensis avatar lutetiensis commented on July 21, 2024

@lutetiensis thanks for your great initiative! I like the V

It's great to hear from you @georgd! You liking it means a lot to me!

I surely will merge it.

Do you have a nice way to convert SVG to glyph? I looked at different ways (like this)... and ultimately wrote this piece of code:

diff --git a/tools/makefont.py b/tools/makefont.py
index c1ab91c2d..ea46a2eaf 100644
--- a/tools/makefont.py
+++ b/tools/makefont.py
@@ -3,6 +3,7 @@
 # invoked by the Makefile
 
 from __future__ import absolute_import, print_function, unicode_literals
+import glob
 import os
 import re
 import sys
@@ -57,6 +58,10 @@ font.selection.all()
 font.removeOverlap()
 font.autoHint()
 
+for svg in glob.glob(args.input + "/*svg"):
+    letter = os.path.splitext(os.path.basename(svg))[0]
+    font.createMappedChar(letter).importOutlines(svg)
+
 if args.reloadgpos:
     for lookup in font.gpos_lookups:
         font.removeLookup(lookup)
-- 
2.30.0

I could also send you the SVGs, but might as well, I'd rather write a clean patch that you can one-click merge.

As for the H, I already have done it quite some time ago but wasn't able to merge it for various reasons back then. I'll do it later this week if you don't mind.

I surely don't! I noticed the N isn't quite finished, so I could maybe refresh it? Or work on the C? Do you have other letters ready in your branches? Given the time it takes, I would hate doing something you have already done! ;)

And since you're here: congratulations, and thanks for your tremendous work. I have been a user of EB G for years!

Edit: waiiiit a minute. What is -Lettrines? Is it the same as -Initials but including characters that haven't been cleaned yet?

from eb-garamond.

georgd avatar georgd commented on July 21, 2024

@lutetiensis thanks for your great initiative! I like the V

It's great to hear from you @georgd! You liking it means a lot to me!

I surely will merge it.

Do you have a nice way to convert SVG to glyph? I looked at different ways (like this)... and ultimately wrote this piece of code:

No, I don't. If that works, it'll be better than anything I could come up in a reasonable amount of time.

I could also send you the SVGs, but might as well, I'd rather write a clean patch that you can one-click merge.

As for the H, I already have done it quite some time ago but wasn't able to merge it for various reasons back then. I'll do it later this week if you don't mind.

I surely don't! I noticed the N isn't quite finished, so I could maybe refresh it? Or work on the C? Do you have other letters ready in your branches? Given the time it takes, I would hate doing something you have already done! ;)

And since you're here: congratulations, and thanks for your tremendous work. I have been a user of EB G for years!

Thank you!

Edit: waiiiit a minute. What is -Lettrines? Is it the same as -Initials but including characters that haven't been cleaned yet?

Shame on me that I forgot about that. I'm really sorry. I wrote it down in the Readme, else I'd be very puzzled right now. Yes, the -Lettrines contains automatic tracings of the initials I could find in the Bible de Génève. In most of them I cleaned up the letter from inkless spots but not more. So, right, it's probably the best place to cotinue the work. Looking at your V: I like it much better than my choice :), a PR is definitely very welcome!

from eb-garamond.

lutetiensis avatar lutetiensis commented on July 21, 2024

No, I don't. If that works, it'll be better than anything I could come up in a reasonable amount of time.

Alright then.

Shame on me that I forgot about that. I'm really sorry. I wrote it down in the Readme, else I'd be very puzzled right now. Yes, the -Lettrines contains automatic tracings of the initials I could find in the Bible de Génève. In most of them I cleaned up the letter from inkless spots but not more. So, right, it's probably the best place to cotinue the work. Looking at your V: I like it much better than my choice :), a PR is definitely very welcome!

No worry, it's actually a good surprise! Next steps for me: submit a PR for V, and start working on C.

Can you please review #110?

from eb-garamond.

astoeriko avatar astoeriko commented on July 21, 2024

I would also love to contribute by converting one or several (depending on how long it takes me) of the pictures to SVG. I would need some help regarding the steps after that as I have never worked with fonts before.
I would like to start with the M and then S.

from eb-garamond.

lutetiensis avatar lutetiensis commented on July 21, 2024

Great! @astoeriko

For now you can prepare the SVG files: one for Initials Fill 1, one for Initials Fill 2 and one for Initials that is the exact combination of the previous ones (@georgd Do we agree on 1000x1000 for the SVGs?).

By then, I will have shot a PR for V that you can copy. You don't need to know anything about fonts, the build system will take care of everything for you.

So H is @georgd's, M and S are @astoeriko's, C and N are @lutetiensis'!

I think I am going to start a new ticket...

from eb-garamond.

lutetiensis avatar lutetiensis commented on July 21, 2024

PR #114 fired.

I suggest to move discussion to #115 to track this task, and to close this issue (@georgd, @tjt263).

from eb-garamond.

georgd avatar georgd commented on July 21, 2024

Great! @astoeriko

For now you can prepare the SVG files: one for Initials Fill 1, one for Initials Fill 2 and one for Initials that is the exact combination of the previous ones (@georgd Do we agree on 1000x1000 for the SVGs?).

Yes, that's fine.

By then, I will have shot a PR for V that you can copy. You don't need to know anything about fonts, the build system will take care of everything for you.

Still, we'll have to check if the curves are valid after merging.

from eb-garamond.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.