个人做 Windows 端开源输入法(TSF)有没有可能获取收益?每个月 5000 人民币的收入就满足

4 天前
 FanyFull

一直在想这个问题,也做了一个原型出来,目前是自己在用着,还有不少 bug 和 feature 要处理。感兴趣可以翻翻我的仓库:https://github.com/fanlumaster/MetasequoiaImeTsf

之所以问这个问题,是因为目前在 gap 躺平中,毕业在华子上过一年班,感受到职场环境的恶劣所以尽可能想通过不上班的方式利用自己的技能实现基本的可持续的躺平自由。

但是,我也经常逛知乎和小红书的输入法相关的帖子,综合目前我看到的信息来看,似乎输入法想要实现商业化是一件很困难的事情。v 友们觉得呢?

附:关于输入法,目前是实现了双拼加辅助码的方案,默认开启单码辅助,第二个辅助码可以通过输入大写拼音来支持。全拼是打算复用谷歌的遗产代码,也会加上辅助码的支持。图形的渲染这一块是用的 d2d,后面打算加上 dcomposition 以及利用 directx 实现一个简易的 gui 框架,目前目测比微信输入法的 flutter ( skia )渲染要快。

再附:因为是个半成品阶段,所以这个帖子应该不算推广吧(

1176 次点击
所在节点    问与答
30 条回复
FanyFull
3 天前
@MajestySolor #14 好想法,已记下~
FanyFull
3 天前
@msg7086 #17 你的想法很奇怪。开源和付费并不冲突。黑产什么的更奇怪,开源的目的之一就是严正声明:不卖数据,不碰隐私。
admirez
3 天前
顺路问下楼主 我程序主界面 内嵌了浏览器,浏览器按下按键比如 a 我会转发这个按键到我主窗口,但是主窗口如果是 tsf 输入法 开启的情况下 比如搜狗输入法,这个按键无法激活输入法的候选面板,这一般是什么原因? win7 因为是 IME 输入法倒是完全正常
FanyFull
3 天前
@admirez #23 其他的输入法可以激活候选框面板吗?按理说 TSF 是默认兼容 IMM 的,微软做了自动桥接的工作。排查建议:可以手动编译一下微软提供的 TSF 输入法样例,打点日志看看按键有没有被 TSF “吃下”,或者将 TSF 输入法 attach 到主进程单步调试看看。
admirez
3 天前
@FanyFull 我用微软自带输入法没问题,其他的不行。我是收到转发的 key 后用 sendinput 模拟了一次键盘按键
FanyFull
3 天前
@admirez #25 sendinput 模拟的按键是不保证被 TSF 感知的,估计是微软针对这种情况做了兼容。在这种情况下,有两种处理思路:1 、你收到转发按键后,按照 IMM 的方式处理一下相关的 message ,这个你可以参考 Nvy 的处理,比较简单。2 、按照 TSF 的方式处理相关的事件,是的,TSF 要求 App 端也要实现一套相应的接口,这个你可以参考微软提供的 TsfPad 代码样例,相当相当复杂,但却最标准正统。
admirez
3 天前
@FanyFull 第一个 IMM 估计不行,搜狗不支持了,第二种我试试看,是不是实现了接口之后 先判断是不是 tsf 在主窗口启用 启用就通过 ITfKeystrokeMgr 发送 key 过去?
FanyFull
3 天前
@admirez #27 第一个 IMM 可以的。因为 TSF 默认兼容 IMM 的。你看很多古早的基于 IMM 的 win32 应用现在依然可以使用纯 TSF 的输入法。第二种是真的很复杂(现在很多几万星的 GUI 项目都处理不好 TSF,当然这也和开发者不是 CJK 区域的有关),我也给不了太多建议,只能去读 TsfPad 的源码。不过,我有点好奇,为什么不直接让嵌入的浏览器来处理输入法呢?浏览器的输入法支持目前是做得很好的。
admirez
3 天前
@FanyFull 嵌入的浏览器没办法处理 因为这个按键是触发主窗口的原生搜索窗口的
msg7086
2 天前
@FanyFull #22 我很期待你能在不做黑产的情况下光靠卖开源的输入法月入几千。欢迎打我脸。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1148817

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX