Skip to content

Commit 1c3e94e

Browse files
committed
add README.md
1 parent cd6c1f2 commit 1c3e94e

File tree

1 file changed

+85
-2
lines changed

1 file changed

+85
-2
lines changed

README.md

Lines changed: 85 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,85 @@
1-
# ssfconv
2-
Sogou input method skin file (.ssf file) converter, supports conversion to fcitx 's format.
1+
# 简介
2+
fcitx输入法框架能够自定义皮肤,然后有个很nb的作者开发了个搜狗皮肤转换成fcitx皮肤的,这是原项目地址https://github.com/VOID001/ssf2fcitx
3+
4+
然后我亲自试了几个我喜欢的皮肤,居然真的可以转换,跟搜狗差不多了,不过一段时间后,发现一些bug:设置了皮肤之后,输入法菜单隔空而且透明,字都看不清。部分皮肤文字位置很奇怪。于是,我看了他的源码,发现逻辑还挺简单,然后看了下fcitx的自定义皮肤的各种格式,打算亲自研究研究这是怎么回事。
5+
6+
最终打算参考这个项目,自己用python写个。
7+
8+
## 成果
9+
10+
最终两个函数实现,取名为转换器ssfconv,放到 github 托管 https://github.com/fkxxyz/ssfconv
11+
12+
在原作者的基础上进行了下面几方面改进:
13+
14+
1. 部分皮肤文字位置重新计算,摆放更合理
15+
2. 将菜单的背景也设置成皮肤的主题色,文字大小和颜色均计算到合理
16+
3. 字体单位改成像素,和搜狗一致,完美还原
17+
4. 调整了翻页指示器的位置,自动生成指示器的图像
18+
19+
参考图像在这里看
20+
21+
https://www.fkxxyz.com/d/ssfconv/
22+
23+
## 开始使用
24+
25+
下面直接举例吧。
26+
27+
### 下载此仓库
28+
29+
```shell
30+
git clone https://github.com/fkxxyz/ssfconv.git
31+
cd ssfconv
32+
```
33+
34+
### 下载皮肤
35+
36+
先从[搜狗输入法的皮肤官网](https://pinyin.sogou.com/skins/)下载自己喜欢的皮肤,得到ssf格式的文件,例如 【雨欣】蒲公英的思念.ssf
37+
38+
### 转换皮肤
39+
40+
```shell
41+
./ssfconv 【雨欣】蒲公英的思念.ssf 【雨欣】蒲公英的思念
42+
```
43+
44+
### 复制到用户皮肤目录
45+
46+
```shell
47+
mkdir -p ~/.config/fcitx/skin/
48+
cp 【雨欣】蒲公英的思念 ~/.config/fcitx/skin/
49+
```
50+
51+
### 使用该皮肤
52+
53+
右键输入法托盘图表,选中皮肤,这款皮肤是不是出现在列表里了呢,尽情享用吧。
54+
55+
## 详细介绍
56+
57+
使用方法被封装得非常简单,像个转换器,可以在下面四种格式之间任意转换:
58+
59+
1. ssf格式(加密)
60+
2. ssf格式(未加密,本质是zip)
61+
3. 文件夹(解密或解压ssf格式得到)
62+
4. fcitx格式(在文件夹的基础上多了fcitx_skin.conf,可用于fcitx)
63+
64+
命令行参数
65+
66+
```shell
67+
ssfconv <src> <dest> [-t type]
68+
```
69+
70+
源文件和目标文件是必选参数,转换的目标类型 -t 是可选参数,type值是下面四个值之一:
71+
72+
```
73+
fcitx 可直接用于fcitx的文件夹
74+
dir 解包后的文件夹
75+
encrypted 加密的ssf皮肤
76+
zip 未加密的ssf皮肤(zip)
77+
```
78+
79+
默认是转换为 fcitx 格式。
80+
81+
注意,源文件的格式可以是以上任意四个格式之一,不需要指定,程序已经可以智能识别格式。
82+
83+
## 已知缺陷
84+
85+
因为fcitx的限制,输入框里只能对文字的外边距进行设置,无法像搜狗拼音输入法一样任意调整坐标,导致部分皮肤只能在图片拉升和文件位置靠右来二选一的取舍。不过大多数皮肤都能挺不错的转换,只有少数皮肤实在是没办法了,只好用图片拉升代替(原作者是将文字调整到靠右,留了很多空白)。

0 commit comments

Comments
 (0)