知乎相关回答:https://www.zhihu.com/question/30089364/answer/1165021255
恭喜你发现了宝藏!本文是防止OneNote自动切换字体迄今为止唯一完美的解决方案,如有雷同,纯属抄袭。
众所周知,OneNote在切换中英文输入时,会在微软雅黑和Calibri反复横跳,该bug(feature)据说从Office 2003开始至今存在了近20年未能修复,逼死了一大批强迫症患者。
有言道,如果觉得国家不好,就去考公务员建设她;如果觉得OneNote不好,就向微软提交BUG或者加入微软修复它;如果不愿意加入微软或者加入了却干不过负责Office的阿三产品经理……[Emm]
没关系,真正的共产主义接班人敢于在没有发动机源代码的情况下,熟练运用逆向工程修(爆)复(破)掉任何程序。
使用方法:启动OneFont.exe使之在后台运行,程序会检测到OneNote的启动,并将其调教为不会自动切换字体。OneNote设置中需设置为包含英文的中文字体(例如宋体、微软雅黑),不要设置为纯英文字体。
工具仅支持运行在64位系统上,在作者电脑64位Win10下的64位UWP版本和32位OneNote 2016桌面版本测试通过。
(有同学留言说想要个捐助二维码,po主受宠若惊。其实页面右边区域有个链接指向捐助二维码,可能太不起眼了吧。链接是/donate)
2020-7-25 update:
修复某些系统设置下对OneNote桌面版无效的问题(例如英文版win10+中文语言包的case)
感谢@Yang瓮党 同学的测试
2020-4-25 update:
添加支持64位OneNote 2016桌面版,之前64位2016桌面版运行无效的同学重新下载即可
感谢@吴学阳 同学的测试
TIPS:
- 开始那个MessageBox点确定后才会开始工作哦
- OneNote的全局设置里务必一定要设置为“微软雅黑”,或者其它同时包含中英文字库的字体,务必一定不能是默认的Calibri,否则输入中文时会跳到雅黑
- 安装了搜狗等第三方国产流氓输入法的同学不是非常推荐使用,可能会使情况变得更迷惑(见评论区大佬实验)
- 还是有问题且确信自己正确操作的同学,请知乎私信联系我远程协助。
感谢优秀的你!这个恶心的问题终于有解了!
太强了!非常感谢!
作者太棒了!有条件的话可以加个好看点的图标么
你用ResHacker之类的PE工具自己加个呗(图标比原程序还大.jpg)
我爱你
Bug Report
Win10 Onenote2016,使用工具后,先输入中文,再输入数字。所输入数字仍旧跳回Calibri
我是先输入大写英文,再输入中文,还是会跳。
太牛逼了
谢谢!!解决了我一直以来的问题!!
十分感谢,这个小工具很好用!请问如何添加/quiet参数,想要每次开机的时候自动启动,但是不太清楚怎么弄,期待回复!
一种方法:1右键拖动,创建快捷方式2右键属性,目标一栏结尾输入参数3把快捷方式移动到当前用户开始菜单启动的目录里。windows应用知识点可能有点多,百度学习一下会比较好,另外也可以用注册表的方式
64位桌面OneNote+等线测试成功。希望能加一些程序的参数,比如设置开机运行、不显示MessageBox等。
+10086
牛逼!还有一个问题,设置了开机自启动后怎么把弹出的messagebox也去掉?
加/quiet参数
快捷方式里改下目标一项即可 “C:\Program Files\OneFont\OneFont.exe” /quiet
放入启动文件夹里,开始-运行,打开如下目录%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
哦!我的上帝!你真是太优秀了。
目前新版本的office365(microsoft365)安装, 又重新自带了OneNote桌面版(无2016标识),测试同样可生效。 ps: 工具下早了是不支持64桌面的版本,重装了office之后没生效 , 以为是工具的问题, 然后发现了是我的问题, 顺道来码一下, 捞一下其他人。
不能分开中英文就很烦,比如我先用宋体输入中文,然后切换到英文输入法,上面还显示宋体..
大佬,是大佬没错了。
但是这个工具在使用中出现了另一个问题:当用管理员身份启动OneNote后,这个工具就失效了……
我是win10,64位,2004版本,OneNote2016桌面版也是64位的。
你用管理员启动的OneNote当然也要用管理员启动外挂程序,我又不是会任意提权的神仙黑客 = =
大佬牛逼!
解决了我N年以来一直头疼的问题!
onenote 2016 mso(16.0.12026.20312) 32位无效
————————————————————————
Try time 9
New process ONENOTE.EXE
Found module ONMain.dll
Module base 6c4b0000 size b8a000
ReadProcessMemory 6d039000 failed, LastErr=299
Signature not found
已发布新版本,重新下载试试
I love you
感谢,Noto Sans SC (思源黑体) 可用
留个赞助二维码吧,这个要给赞助的
20200911 bug report:alt= 输入公式时,原本在这一状态下输入中文可以输入雅黑字体的,但打开Onefont.exe之后,该状态中文字体锁定为SimSun
微软设计如此。本工具的原理是强行关闭默认开启的双字体模式,这要求选定的字体必须同时包含中英文字库,但输入公式时指定的Cambria Math仅包含英文,缺少字库只能跳到宋体。
OneNote for Windows 10有没有人出现行距变小的问题?设置的默认宋体,一开始输入时行距可能会变得很小,输入一段时间后正常,但之后又可能出现最后一行文字下半部分消失的问题。重启OneNote后正常。
是有这种情况,我都是拉一拉滚动条,再不行切换页面
我这边拉滚动条和切换页面好像没用 🙁 只能重启OneNote
20201007 OneNote桌面版(365)似乎无效?
系统是20H1/H2(今天更新的,前后都不生效)
但商店版(OneNote for Windows10)生效
emmm,我表示快受够桌面版本了,你要是确实一直有需要,可以留个qq号有空远程研究下
不过看到楼上说旧版本不支持64bit我看看是不是我用的旧版
对是我的问题!我从旧电脑上拷的备份文件夹一直在用我好蠢
我这就去打钱(
这是什么宝藏!!!感谢博主:)
发现个问题,如果含有英文数字的字段被设置为标题的话,英文和数字会变回Calibri字体,同时中文的微软雅黑字体变成Microsoft YaHei字体。
64位家庭版win10
onenote for windows 版本 16001.13127.20190.0
我经常用的uwp版本目前没遇到这种情况,另外据我所知正常情况下微软雅黑是不会自己变成Microsoft YaHei的,你是不是搜狗输入法?(搜狗会干扰字体设置,知乎评论里有讨论到)
突然重现出来了。。。待研究
我也是这个问题
感谢大佬!
真·全网唯一靠谱方案
经测试,“待办事项”的条目换行后会从微软雅黑变回Calibri,其他情况不会。
—-
Win10 家庭中文版
OneNote 2016 版本 16.0.10338.20019 64位
UWP的待办事项目测没问题(我电脑上没装桌面版。。
大神,能不能支持OneNote 2013桌面版?
最近精神有些问题,估计要无限延期了
哇!!!!!!
用“ctrl+alt+数字”设置样式的时候还是有问题,UWP和2016都一样。
精神不好就休息一下吧,想起来了再研究好了。
360报毒建议你们申请误报一下
谢谢
天,我要请你喝咖啡
从2021年1月初下载这个神仙插件使用良好,但是从2月初开始也会在输入英文时回到calibri….
不知道原因是什么
onenote 2016 64位
win10
系统默认微软输入法
开心的点进来,结果我是 MACOS ,尴尬。
不过家里有台 Windows ,可以试试。
请问能解决Mac上的字体问题吗?
求个mac版本!
感谢大佬救我狗命!!!!真的太感谢了呜呜呜呜 一直要被carbli气死了
onenote 2016 64位通过ONENOTEIMP.dll间接链接的ONMAIN.dll,因而作者的工具只使用一层EnumProcessModulesEx没有锁定到ONMAIN.dll,故而修改ONMAIN.dll的意图没有达到。
请忽略。。。
通过调试,确认onenote 2016 64位最新使用的是ONMAINW32.dll,不再使用ONMAIN.dll,在作者出新版本之前,可以按如下步骤解决:
1. 使用everything搜索到ONMAINW32.dll,拷贝到普通目录中
2. 在上述普通目录中使用010edit打开上述dll,crt-f搜索“68 02 03”
3. 修改成“68 00 03” ,ctl-s 保存
4. 使用修改后的dll替换原来的dll
是大佬!!!
神仙工具,3月一直用到现在,直到0513 windows更新后工具好像无效了(╥╯^╰╥)
默认字体选了微软雅黑,开了工具,切换到英文或者数字的时候跳回calibri
赞美你
大佬,这个cpu占用有点高啊,小破surface伤不起(哭
检测进程启动是需要轮询,但是频率我已经调的很低了,或者你也可以等OneNote成功启动之后把OneFont kill掉
追加一条 找到了一个字体 汉字是微软雅黑,但是英文确是Consolas 配合这个工具 还可以
Microsoft YaHei Mono
所以说, 巨硬真的一点都不考虑解决这个问题么…
或者说, 巨硬就是在给强迫症治病?
在onenote中插入的表格里,直接输入数字其实还是Calibri,因为看的出来没居中,是偏上的。这时候框起来再点选一次微软雅黑,才真的变成微软雅黑,因为居中了;用小键盘输入数字也是以上情况,请楼主看看,谢谢!
目前似乎因为系统的更新已经不在生效了
Win11+Office365 Beta 通道 使用Onenote会使微软拼音(无论新旧版本)间歇性无法输入中文 有没有大神知道如何解决
2022_02_19-12_26
今天进行测试和使用,暂时有效,且完美匹配,64桌面版本.就是没有再任务栏中显示的放置一个小图标.
测试了中文输入法下:
1. 先输入中文,再输入数字,再输入,再输入英文字符 ,接着再输入中文, 正常
2 先输入数字,再输入英文,再输入中文,正常
3. 先输入英文,再输入数字,再输入中文,正常.
4. 输入中文,切换到英文状态下,输入英文字符,数字,再切换为中文输入状态,输入汉字,正常.
5.(用的英文符号)先输入符号–其实是英文符号,再中文,数字,字符都正常.
英文输入法:
同上测试 都正常.
感谢大佬,穷人用爱感谢吧!
感谢
万分感谢
感谢,大佬
这也太强了!!!为什么没有大力推广啊………………这样的神器应该人人都知道才对!
这么牛的工具,应当加入微软office 套餐!感谢大佬
太好了,感谢~
而你,我的朋友,是真正的英雄!