Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve drawing experience #1851

Open
BlackFoundry opened this issue Dec 11, 2024 · 6 comments
Open

Improve drawing experience #1851

BlackFoundry opened this issue Dec 11, 2024 · 6 comments
Labels
enhancement New feature or request

Comments

@BlackFoundry
Copy link
Collaborator

Ideas to improve Fontra's drawing experience:

  • cap-corners (but variable)
  • cap-segment (but variable)
  • being able to see all masters at once in a row, as well as any location of the design-space
  • being able to see and locate interpolation errors at a glance
  • edit contours and components order simply and quickly (like percolator)
  • Hanzi database management with ability to import elements simply from one glyph to another ("Hanzi choose and pick")
  • smooth junction of 2 contours even in curves and diagonals
  • CJK-frame script-dependent
  • extensions like speedpunk / RMX tools
  • power-ruler always on
  • automatic OT features (like 'vert' feature for JP)
@BlackFoundry BlackFoundry added the enhancement New feature or request label Dec 11, 2024
@justvanrossum
Copy link
Collaborator

Clarification needed for:

  • cap-corners
  • cap-segment
  • smooth junction of 2 contours

@justvanrossum
Copy link
Collaborator

Component reordering issue: #1116. Ideally this should indeed work the same for contours and components.

@BlackFoundry
Copy link
Collaborator Author

BlackFoundry commented Dec 11, 2024

  • cap-corners
  • cap-segment

These are GlyphsApp features enabling to 'magically' stick 'components' -open contours with 2 nodes (1 curve segment) or more (shaped corners)- to a segment or corner, transforming it on the fly and making it somewhat responsive to changes where it's being used. As of today these cannot be variable components in glyphs, but could potentially be in Fontra.

  • smooth junction of 2 contours

When 2 contours overlap, the merged shape is calculated and displayed automatically to the user, smoothing out potential contours issues in curves, and / or making resulting grid-fitted corners points visible.

@justvanrossum
Copy link
Collaborator

When 2 contours overlap, the merged shape is calculated and displayed automatically to the user, smoothing out potential contours issues in curves, and / or making resulting grid-fitted corners points visible.

So, a live preview for "remove overlaps on export"? Since this isn't relevant for variable fonts (we don't remove overlaps on export for VF), I'm not sure how important this should be for variable-first-Fontra. Or do I miss something?

@mrk-z
Copy link

mrk-z commented Dec 11, 2024

Some clarifications:

Cap, corner, segment component:

In Glyphs there are 3 types of components that can be attached to contours:

  • Cap component: attached to the end of a shape
  • Corner component: attached to a corner
  • Segment component: attached to a path

From their website:
https://glyphsapp.com/learn/reusing-shapes-segment-components
https://glyphsapp.com/learn/reusing-shapes-corner-components

I find them useful, especially during prototyping designs, for a few reasons:

  • Keep serifs and details consistent and able to edit them globally. Especially during prototyping I might try different serifs and modify them constantly.
  • Avoid the need to adjust the details every time I adjust the contour. Especially for some diagonal curves on diagonal strokes, it could save a lot of hassle.
  • In some situations, turning the whole shape into a smart component is a bit overkill, and making a small component for the detail may have alignment issues. The combination of contours + attached component works well in this kind of situation, and also keeps the flexibility of contours.

In Glyphs currently they are not smart/variable: after attaching a component to a contour, I can only mechanically adjust the overall width/height.
I was thinking a “smart cap component” function could be very useful for Chinese, and some people have also asked in the Glyphs Forum.

Being able to see all masters at once in a row
Glyphs has a preview window that can show all masters at once next to each other.
You can also add middle interpolation between the masters (by adding an instance in the Export setting.)
If there are compatibility issues, the middle interpolation won’t show, so it’s also useful for checking compatibility.

Smooth junction of 2 contours
Currently in Glyphs, if two points/contours are very close, Glyphs automatically smooth out the contours.
At the contour junctions it also adds an extra node, so you can attach a corner component to make ink traps.
An example from their website:
Image

CJK-frame script-dependent
Currently CJK frame is still not very integrated in Fontra. It needs an extra _cjkDesignFrame glyph, and also the help of an external script to be able to set up easily. I think firstly, it would be good to be able to set up the frame within the app settings.
Then in Japanese, Hiragana/Katakana/Kanji require different size of frames. In Glyphs you can set it up by adding custom parameters in each Master.

Power-ruler always on
In Glyphs there are these plugins available:
https://github.com/RafalBuchner/StemThickness
https://github.com/Mark2Mark/show-stems-pro-plugin

@mrk-z
Copy link

mrk-z commented Dec 11, 2024

Hanzi database management

This is essentially #1779 as we discussed. But today we mentioned an additional function, which is to be able to select part of a glyph directly in the interface and import (copy/paste) it into the current glyph.

Something like this in the current Related Glyphs Panel:
Image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants