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

Call \DeclareMathSizes for all sizes #514

Open
wspr opened this issue Feb 12, 2019 · 3 comments
Open

Call \DeclareMathSizes for all sizes #514

wspr opened this issue Feb 12, 2019 · 3 comments

Comments

@wspr
Copy link
Collaborator

wspr commented Feb 12, 2019

Currently we only run:

    \DeclareMathSizes { \f@size } { \f@size }
      { \@@_fontdimen_to_scale:nN {10} \g_@@_trial_font }
      { \@@_fontdimen_to_scale:nN {11} \g_@@_trial_font }

But really we need to copy the kernel and repeat this for all sizes:

\DeclareMathSizes{5}{5}{5}{5}
\DeclareMathSizes{6}{6}{5}{5}
\DeclareMathSizes{7}{7}{5}{5}
\DeclareMathSizes{8}{8}{6}{5}
\DeclareMathSizes{9}{9}{6}{5}
...
@RuixiZhang42
Copy link

Not sure about this… I have two major concerns:

  1. The 5pt lower bound. The math sizes simply do not go under 5pt in standard usage, to maintain legibility I suppose. I certainly cannot read something with, say, \DeclareMathSizes{6}{6}{4.2}{3}.

  2. One cannot consider everything. In Chinese typesetting, different standard font sizes apply. So the ctex classes have a completely independent set of \DeclareMathSizes:

    % Something of equivalence from the ctex classes:
    \DeclareMathSizes{5bp}{5bp}{5}{5}
    ...
    \DeclareMathSizes{10.5bp}{10.5bp}{7}{5}
    ...
    \DeclareMathSizes{15bp}{15bp}{12bp}{9bp}
    ...

    So even after calling \DeclareMathSizes for all sizes in the kernel, we are potentially missing out other sizes. Thus, I do not think it is worthwhile.

Overall, I think changing only the \normalsize suffices. The other sizes should be determined by either the class authors or the individual users. People who really care about typography will know how to setup the other sizes, provided that this is well-documented.

What unicode-math can do is to overwrite \defaultscriptratio and \defaultscriptscriptratio.

@wspr
Copy link
Collaborator Author

wspr commented Feb 13, 2019 via email

@RuixiZhang42
Copy link

It’s a good point that we need to provide the flexibility to customise…

Maybe a “three-way” option on how aggressive unicode-math should re-declare math sizes?

  • <key>=None being to honor the kernel/class;
  • <key>=OnlyNormalSize or <key>=OnlyBodyText being the current implementation (which should be the default);
  • <key>=All being to overwrite all math sizes.

The complication of course comes from the fact that the defaults are set up in a nonlinear way

Also the fact that Computer Modern comes at discrete sizes and no smaller than 5pt

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

No branches or pull requests

2 participants