从一个字体文件复制/粘贴字形/字符到另一个文件

19

我有两个不同的字体文件FontFile1.otf和FontFile2.otf。我想将FontFile1.otf中位置为1759的Unicode字符复制到FontFile2.otf中。我该如何做?

我尝试使用FontForge和Fontographer进行操作,但复制粘贴似乎无法工作(粘贴被禁用,并且菜单项未启用)。是否有任何特定的复制/粘贴说明?还有其他工具可以使用吗?

5个回答

24

在同一个FontForge实例中打开两种字体,然后就可以从一种字体复制字形到另一种字体中了。


2
在我使用最新的FontForge时,它在Windows 10上无法工作。 - Seb Charrot
8
这对我在Win10上的操作有效。打开一个实例,然后使用文件菜单打开第二个字体,而不是从文件夹中打开它。 - doublefelix
这似乎也是Linux的情况(至少在20201107版本中)。从文件管理器单独打开它们似乎不起作用。 - Fred Hornsey

4

你可以尝试为FontForge编写脚本。如果十六进制或十进制下的代码点1759在FontFile2.otf中不存在,则可以执行以下操作(未经测试):

Open("FontFile1.otf");
Select(0u1759);
Copy();
Open("FontFile2.otf");
Select(0u1759);
Paste();
Generate("FontFile3.otf", "", 4);

您可以使用MergeFonts()函数合并所有字体字形,将A中不存在的所有字形复制到B中。

3

@rustyx的解决方案对我没有用。

我找到的唯一解决办法:

  1. Shift+单击要复制的所有字符
  2. 编辑 > 选择 > 反选
  3. 右键单击 > 清除
  4. 元素 > 合并字体
  5. 选择您的其他文件

尽管我承认这有点繁琐,但最终会得到相同的结果。


2

我在另一个留言板上找到了一个解决方案可以帮助我。我只需要在X11->首选项中取消勾选“启用同步”即可。


1
这个 "X11 -> Preferences" 在哪里找到?你能详细说明一下吗? - zrajm

2
我实际上是为了回答这个问题而注册的账号。打开Fontforge,选择一个字体并打开它 -> 在同一个窗口中,点击:文件 -> 打开 -> 选择另一个字体。在那里,你可以从一个字体复制粘贴到另一个字体。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接