April 1, 2016 at 4:43 am #20530
[EDIT} Please disregard this post, it was foolish of me to ask a question of law in this forum. My apologies.
I have a commercial, non-free, font that I would like to use on eggbot. I would like to do a manual tracing/interpretation of the font to make it an engraving font.
I have no problem deciding that I can use this for my own non-commercial purposes. But I wonder if anybody has knowledge of how copyright law would apply in the event that I wanted to make the engraving script freely available to the eggbot community??
A brief web search leads me to a very tentative conclusion that my work would be”transformative” (a term of art) and thus be fair use. https://en.wikipedia.org/wiki/Derivative_work
I know this subject is more properly a legal question, but just wonder if anybody has some considered opinions on the subject?
April 1, 2016 at 6:22 am #22469
- This topic was modified 3 years, 2 months ago by Windell Oskay.
Ignoring the question.An interesting thing to think about is what would it take to be able to take an outline font, and draw it with a marker, such that it represented the intended outline as well as possible. Perhaps a path-inset type operation, aware of the pen width (a “tool offset”) could be designed to do that.April 20, 2016 at 2:00 am #22470
I’ve been pondering this topic a bunch. My inclination for the moment is to not attempt what is by all accounts the hugely complicated task of automating the process.
Nonetheless, to try to educate myself about the snags involved, I tried manually converting a few free fonts to vector format. I have evolved a system that, while far from perfect, is perhaps useful. It enables me to convert an appropriate font to single-vector style in just a few hours. The strokes are completely manually performed in Inkscape, then the resulting .svg files are put through the wringer in a Visual Basic 6(!) program I wrote.
The output of the VB6 program is a line of text defining the font face in hershey vector format as used in a completely stock hershey.py. The text line can then be copied into a stock hersheydata.py.
The image below is of three different fonts I’ve vectorized, along with the stock Sans 1-stroke, and the picture comes from the attached .svg [whoops, I don’t see how to attach an svg, so we’ll ignore that for the moment.]
I feel that the manually transcribed vectors yield a perhaps more “supple” text effect than the standard Hershey fonts. Oh, I should mention that I took the liberty of pushing the Hershey envelope by going to higher precision. I think it’s this higher precision which gives the new text a less “pedantic” feel. I think the century has come when we can throw off some of the constraints Hershey worked within a half century ago.
I did _not_, however, change anything in hershey.py – so the new schema is as far as I know completely compatible.
What do you think – is this method interesting enough to pursue? Or should I just keep it for my in-house use.
Oh, rats, I see I can’t paste an image here without exceeding the allowed character count. I guess I’ll have to finally open a flickr account or something.
OK, let’s see if I’ve flickrized it: http://www.flickr.com/photos/35400824@N03/shares/n1gH7XApril 20, 2016 at 3:03 am #22471
Yes, it’s a good idea.I’ve often thought about trying to create more fonts in the Hershey format… and there are precedents for creating font derivatives on your own computer (for your personal use). Having an editor that would let you create new Hershey Fonts would be pretty awesome indeed. :)April 20, 2016 at 8:12 pm #22472
Well, are there any particular fonts you have been hankering for? I’d be glad to take a hack at it – my results would only be mediocre-to-fairly good, but I’d be happy for the practice. Up to a small handful of fonts? (There are plenty of free-to-use-for-any-purposes out there.)
On the editor idea…If you felt strongly enough about it to create a github issue, I would be glad to at least consider undertaking creation of an Inkscape extension to accomplish this. Nothing fancy, and probably a bit complicated to use, but maybe with the kind of back-and-forth we did on the hatch extension we could get it done.April 22, 2016 at 8:00 pm #22473
I can’t make my image show up inline. I click the “Insert Image” icon, and fill in the URL – I’ve tried flickr and imgur, and all I get inline is an icon for no image. I must be doing something really stupid, but I don’t know what it is!!??April 22, 2016 at 10:43 pm #22474
After some digging…. Looks like the img tag works OK, if the URL is the actual image.
http://i.imgur.com/7wmraYbApril 23, 2016 at 3:22 am #22475
Oh, silly me! I shoulda been able to figure that out. Thanks much for the digging!! 8^)April 24, 2016 at 3:34 am #22476
I added two more fonts since earlier post.April 24, 2016 at 2:33 pm #22477
These look really great! If we start with fonts that are covered under the SIL Open Font License — Architect’s Daughter, Sacramento, and Allura are — then it should be acceptable to create and publish derivative fonts of those, so long as we comply with the license terms. One asterisk is that the font designer can require that the name of derivatives is changed… and it may be kinder to do so whether or not it is required.April 24, 2016 at 9:30 pm #22478
Glad you like them! 8^)
1. Perhaps we could acknowledge the designer while making it clear that the designer is not responsible for this incarnation, by doing something like: prepending “Like ” or “Derived from ” or “Not ” or “Based on ” or “Eggbot-“, rather than simply making up descriptive names???
1a. For what it’s worth, at http://www.dafont.com/jenna-sue.font the author is quoted as:Note of the author
A casual handwritten font, handmade with care by yours truly. Includes numbers and punctuation.
Free for personal AND commercial use. That’s right, FREE. 100% Free, no need to ask permission!
And the license.txt file that accompanied the download said:
Free for personal or commercial use. That’s right, FREE. 100% Free, for any project. No need to ask permission… just use it! Enjoy :)
2. I’ll review and touch-up if necessary the three fonts you have mentioned. What would you like me to submit to you – just the text lines to be inserted into hersheydata.py and hershey.inx, or new hersheydata.py and hershey.inx?
And where should they be sent? firstname.lastname@example.org, or someplace else? Or maybe you want to open an issue at github and I’ll send them there?
3. Would you also like the .svg files I generated where I hand-traced each glyph, and which are the input files to the Visual Basic 6 svg-to-hershey program?
4. I would be glad to give you the VB6 program, but it is very very creaky and windows only. Would you like me to rewrite the VB6 program in python? It would be a good python learning experience for me.
5. If you wish me to give the same treatment to additional fonts, please let me know, I’d be happy to – this is kinda fun! 8^)April 26, 2016 at 4:58 am #22479
Added another cuppla fonts – am running out of styles…could use some suggestions. or not.April 26, 2016 at 6:04 am #22480
These attribution type questions — especially the names — are a little tricky. With the Jenna Sue example, “free for commercial or personal use” does not necessarily include derivatives, whereas the OFL fonts do explicitly allow derivatives. However, they also allow the license to require a name change (etc.). That kind of information *should* be packaged with the font somewhere– perhaps in the font file itself… and it would be good to figure that out before publishing any derivatives. (I haven’t looked inside the font files themselves.) If there is not any obvious location where that can be found, we’re likely in the clear to publish these.
I particularly do like the Sacramento. Bilbo, too. A fantastic source of these SIL OFL fonts (not sure if this is where you’re getting them) is Google Fonts, when you filter by “Handwriting”. Clicking through that list, I thought that the following (in addition to the ones that you already created) might be good candidates: Mrs Saint Delafield, League Script, Bad Script, Tangerine, Alex Brush, Parisienne, Delius, Qwigley, and Felipa
Probably the best way to move forward would be to add these directly to the Hershey text extension… a possible path forward _from there_ would be that we could get this updated into a future version of Inkscape itself. :) (And for that reason, we probably don’t want to label any of them as EggBot specific.)
One other consideration, which you’re probably thinking about: When possible, it is best to try and match the locations where cursive-type letters begin and end. I have an experimental optimization that I’ve been trying out, which skips the pen raise-and-lower if the pen travel distance is zero (really, below a fixed, small threshold). This makes much neater characters when the pen doesn’t have to lift between them.
It’s a tricky call what the best way to move forward on that software is– a Hershey-style font editor is a really neat idea, but I’m not sure that it’s best in Inkscape, or elsewhere– perhaps as a processing sketch that can run within a browser? There are font editing capabilities built into Inkscape now; it might be worth looking at how that process works.May 4, 2016 at 9:37 pm #22481
I’ve been fontifying quite a bit, as you can see. I wish I had been more consistent in a number of my design decisions, but overall I’m pretty pleased. Not really professional quality, but definitely usable for eggbot I would venture. Your pointing me to google was a “goodo” 8^) , though I think they do not have all of the SIL OFL faces.
I have checked the metadata in all the exemplars, and all state that they are licensed with SIL OFL (except Tangerine has nothing in the metadata, though both fontsquirrel and google claim the SIL OFL license applies. I have an email request in with fontsquirrel requesting the source of their licensing info.)
Yeah, I see what you mean about the naming problem. If I had designed one of those fonts, I for sure would not want to see it hacked up by somebody like me without changing the name.
I find that hershey.py annoyingly has two casts to integer in draw_svg_text. For use here I’ve changed the casts to float. The only difference is that the cast to integer forces character location to integer values, which leaves an ambiguity of up to 1 step in character position. Once the character is positioned, hershey.py allows my more-precise values for the character shape. A possible workaround would be for me to do the conversion to hershey at a larger size. This would presumably cause user to scale it down, so the character position ambiguity would be reduce to less than one step.
Thus, your experimental skip-pen-up-down (“SPUD”?) would perhaps only marginally work on the integer text. Dunno, you’d have to try it. With the two casts changed to float, I get beautiful joinage of joinable cursive characters. I was not, however, thinking of your SPUD algorithm when I did the fonts, so the beginning and end of cursive characters is not readily identifiable. This could be fixed by my reworking the fonts if it proves desirable.May 4, 2016 at 10:05 pm #22482
Once again, these look really great!I think that I’d be OK with extending the format to allow floats directly– seems that there shouldn’t be any technical reason why we shouldn’t do that.Glad you found the SPUD. :)
- You must be logged in to reply to this topic.