[教程]新手必看的 Mdict 制作教程和经验

查看: 11812|回复: 26

[教程]

新手必看的 Mdict 制作教程和经验

[复制链接]

独行者

独行者

当前离线

积分10908

TA的每日心情开心2023-4-4 20:46签到天数: 337 天

[LV.8]以坛为家I

电梯直达

1楼

发表于 2019-8-26 11:52:03

|

只看该作者

|倒序浏览

|阅读模式

本帖最后由 独行者 于 2020-8-3 09:34 编辑

. K" o7 X+ t, p) a+ M1 ]& e

4 a) @8 i$ p, v. g8 J9 r储备知识必学:HTML/CSS/JavaScript 知识。最好会:正则表达式、一门编程语言。

( n: Z9 n8 R) y/ X& B6 Y& S3 qMDX 规范词条由三部分组成:词条关键字:作为词条索引。词典 HMTL:词条内容。分隔符 :分割每个词条。( \+ e6 d5 u* Z5 H

注意: 后面不允许有任何空行。HMTL 允许换行,也可以不换行。

1 F' @3 z3 e6 b) u; Y例子:Antarctica

" U. V4 K8 K7 C/ E, t. d

南极洲

: G* X0 M' u. [3 t B复制代码

# [2 }" c/ T7 Y3 Z# Y/ R

; v# V b; x. g词典 HMTL格式

0 f' m! ~1 \# N. L) L和标准的 HTML 几乎一样,不过这里去掉了 、 和 标签的包裹,另外增加了一些 mdict 自有的标记和格式。下面介绍资源的引入,关于路径问题,请阅读下面的资源部分。) [0 G: b+ [$ `$ t C+ v2 ?

引入 css 和 js 文件( i- O: y. U% k0 Z$ q& E

- N; b, u: J, s- T/ R3 `; F( @

南极洲
复制代码1 m1 X# o9 B+ w

引入音频6 O$ b8 c. [$ H+ s+ z+ A4 X

2 p. D% J# m" A9 l$ t$ ~* _keyword复制代码

: h3 p6 ?' g3 e; _引入图片

& R, e" d8 U0 m$ ^7 U格式一:复制代码 t2 _- v% d5 Q

格式二:file:// 可以省略复制代码复制代码5 W9 b3 z$ J5 F( S x

跳转

/ A$ w ?) `6 ]两种形式:内联使用,可以多次使用:如 ,类似于标准 HTML 的 。还支持锚点,如 查询某个单词时直接从一个单词跳转到另一个单词,只允许使用一次:如 @@@LINK=ought to。

0 K1 m) ?8 A1 [9 J% ?+ p& c资源

6 |7 t! ?6 h9 r/ i: m2 l# THTML 中引入资源文件时根目录为 mdx 所在目录。

; L' r6 d7 h* ^$ f5 E, Y R存放当资源文件数量极多时,不建议:直接将所有资源文件存放在 mdx 目录下。建议:将资源文件打包为 mdd,注意 mdd 必须和 mdx 存放在同一目录下。有多个 mdd 文件时,文件名以 xx.mdd、xx.1.mdd,xx.n.mdd 词典软件都会读取。强烈推荐:将图片和 css、js 和字体打包为 xx.mdd,将语音打包为 xx.1.mdd,这样不想要语音文件的用户只需拷贝 xx.mdd 而不丢失样式排版。; q U7 L5 E$ T& l! H% f" B' J* a

6 q. j5 `& ]3 S. W4 N2 O- \

优先级裸露的资源文件 > mdd 中的资源文件。

* t3 M3 X% ?8 ?# s* N, R# U: m" [" `: r- N

词典软件) m# g' m# @+ B1 t8 \

6 D% N" s! ]+ G7 oMDict作为官方词典软件,却是体验最差的。基本的功能都有,这里只谈缺点:使用的 IE 浏览器,不支持许多新的 Web 规范,导致某些人制作的词典排版错乱,甚至某些引入了 JS 文件的词典直接弹窗报错。音频只支持 SPX 格式,这是当年为了节省空间的产物,因为当年 MDict 的主要活跃在 Windows Mobile 上,那时的存储卡不便宜。但是如今已经不建议使用,因为音质太差,推荐使用 MP3 或 AAC 格式。即便是该作者开发的 iOS 版本 Mdict,同样也只支持 SPX 格式,这个很让人不解。功能太弱,交互设计很差。

5 K, H7 S6 J; m# t* _( KGoldenDict毛子开发的词典软件,起初不支持 MDict,好在在开源社区的努力下后来支持了。优点:因为是 Qt 编写,使用的 Webkit 浏览器,支持的 Web 标准虽然不是最新,但是大部分的词典都能正常显示。支持 MP3 音频,就这一点就值得推荐。方便地导出 HMTL。漂亮的界面,可以自定义软件界面样式,还有很棒的交互设计。支持全文检索、支持词典排序、支持自定义在线词典、支持复制取词,还有大量优点,请自行探索。

. E! e8 Y5 |: d2 R% ^9 l* O存在的问题:性能很差,如果开启全文搜索,会很卡;载入词典过多,也会很卡,严重时直接闪退。Qt4 版本的字体渲染存在问题,因此我一直用的 Qt5 版本。取词能力较有道词典弱。: {. g* A" f7 @6 G$ h8 C3 \7 g

欧路词典集合了上述 GoldenDict 的部分优点还有以下优点:界面更加现代化,更友好。支持单词同步和收藏。支持单词复习。PC 端取词功能很强。iOS 上最强词典。2 m! h, k2 k) ^, `2 @6 C

缺点:只能从网页或手机版导入单词表,但网页版导入经常出现导入失败或者导入数量不一致的问题,手机上又不支持词组或带有符号的单词导入。同步功能存在 BUG,偶尔出现同步数量不一致,需要注销重新登录才正常。最严重的 BUG,同时存在于 PC 端和手机端。因为不同的词典可能会使用相同的标签和样式,如果直接载入,会干扰其他的词典样式。因此欧路和 GoldenDict 的做法是重写 CSS,给不同的词典的 HTML 加上一个独立 id,在每个样式名前面加上 id 编号,但问题在于有的作者的 CSS 中存在中文,为避免浏览器以 ANSI 编码读取,因此在 CSS 头部加上了 @charset "utf-8";, GoldenDict 能正确处理它,但脑残的欧路词典就不能正确处理,它会忽略第一个 CSS 样式,没有加上 id 名,如果第一个样式名是 body,则会影响到所有词典的排版,这是我们不希望看到的。8 @# `$ ^) P* H

. b( A& V& l A5 |) g; [2 i% J

如原始 CSS@charset "utf-8";

. V' p7 M! }5 z# P: t8 {​; \2 G' C' o& d& D

body {

- \- @3 Q; [% ]5 D margin: 2em;1 y, s3 y) ^* G

}

. Y& b' p# \2 W% f. U/ S% R! F$ ^: g​

" u( d* U' m0 ^" u% P/ Y8 Ca:hover {

$ f, l% M1 Y! }# I" f/ T% D color: #4372b6;

0 l# d- G5 E1 Z text-decoration: underline

" ^& q8 h9 p Y P9 J}复制代码

+ O8 e- d/ R! Y& r$ k4 u! nGoldenDict 会解析为@charset "utf-8"; / u6 D; R3 P1 z( Z, Q

0 N" J, q+ y. L+ [

#gdfrom-2af74dded57c0b4bf1a2e7c76ade8787 .mdict body {

( q/ G/ W# b7 o3 O. S" W margin: 2em;

9 \! n4 k/ |( J: Y}

; P+ e* |# d8 v0 t7 x: c

; j) ^9 x# d+ i6 @3 r& P, u#gdfrom-2af74dded57c0b4bf1a2e7c76ade8787 .mdict a:hover {

6 _% ^, H( o7 G" l- Q) Q1 z color: #4372b6;% B8 I- [ r1 V' `( S

text-decoration: underline

( E6 \' ?6 s& H}复制代码' f& `+ ^( t8 _$ B! G9 n

而欧路词典解析如下,body 前面没有加上 #ID224342347child,进而影响到全局的 body 标签。@charset "utf-8"; 0 A' k. C! x6 S/ x

; A0 [- h( N/ y8 J& w% D

body{3 B) [0 _0 @( K9 N, e2 Z2 G/ h4 C8 ]

margin: 2em;

' b \# `4 m4 D+ ^! l, E7 |3 A7 I} & ?% C) g5 W& g8 D

: `. ?. e2 R3 ]8 `' A8 W#ID224342347child a:hover {! t* d& o( {/ {9 M3 x) a7 W

color: #4372b6;5 b$ _$ [# W# L! C* U5 a0 ~

text-decoration: underline

( k8 ]" _* U% @0 o}复制代码6 s& j& s% v4 j, a$ E% ^" |

这就是为什么许多人用欧路词典排版混乱的原因,这个 BUG 我已经反馈了,不知道会不会改,反正我之前提过好多建议,该公司都没采纳,这个 BUG 我看也未必会修复。因此我的建议是删掉 @charset "utf-8";,因为欧路词典和 GoldenDict 本身就是以 UTF-8 打开的,无需再多此一举。增加了反而会导致欧路词典解析出错。8 ]2 [- e+ D7 n/ O

制作工具EmEditor:一般的文本编辑器打开大文件会卡死,这个不会。PatchO8C:提取 MDX 和 MDD。MDXBuilder 3.0 Beta2:官方的制作工具,不要用 4.0,4.0 版本生成的 mdx 还未被解析出来,暂不被第三方软件支持。GoldenDict:导出 HTML 方便排版调试。9 h* h6 r* x- b) D8 d

制作步骤获取数据源:可以是自己编纂的,也可以是其他格式的词典,还可以从网站抓取。按照 mdx 的规则清洗数据:上面提到的 mdx 规范。用 MDXBuilder 3.0 Beta2 转成 mdx。

^) r/ G" O( j$ ^) d+ y' F! ~配置Source:即词典原始数据文本路径,扩展名随意。Target:目标词典文件路径,扩展名必须为 mdx。Sytle:留空,这个用不到。Data:资源数据路径,有就填,没有就不填。注意了,资源数据一定要存放到一个单独的文件夹 xx 中,不要直接全部分散在 mdx 目录下,而且这个 xx 文件夹并不会打包到 mdd 中,它会作为 mdd 资源数据的根目录。Options: R4 [- J d" |. g \

Original:一定要选 Mdict(Compact HTML),这种格式就是我们上面提到的规范。Encoding:为避免乱码,必须选 UTF-8(Unicode)。Title:词典标题,可以被欧路词典读取到。Description:词典描述,支持 HTML 标签,不过支持十分有限,词典软件可以读取到。未提到的其他选项不管。& V: [3 V" S7 E2 D. g" [" G

5 _; g2 p( ~! z制作技巧体积不大的图片可以使用 base64。iOS 欧路词典不支持字体文件,可以通过转成 base64 解决。! e1 r0 a7 d% q7 F1 ` m6 U) N3 r# [

7 @; v" d. O4 j- h# T! X5 g# |

& P, {; ?' i; v2 s) r7 g X1 D }$ n6 s( o9 J, d

& i4 Q: S& l+ a/ E B

评分

8

查看全部评分

GL_n

Sakyamuni

y8888

lmjiao

cocowind

本帖被以下淘专辑推荐:

· 词典制作|主题: 111, 订阅: 24

· MDX制作|主题: 46, 订阅: 17

· 其他资料|主题: 24, 订阅: 1

· 1|主题: 40, 订阅: 0

分享到:

QQ好友和群

QQ空间

收藏64

分享2

淘帖4

回复

举报

mtaa

mtaa

当前离线

积分6071

TA的每日心情衰2023-3-29 00:54签到天数: 344 天

[LV.8]以坛为家I

推荐

发表于 2019-8-26 13:10:58

|

只看该作者

本帖最后由 mtaa 于 2019-8-26 13:16 编辑 1 `9 S" S/ R1 A0 q0 D9 U$ q- K- h9 `

. E$ o# P& ], g& y8 }【性能很差,如果开启全文搜索,会很卡;载入词典过多,也会很卡,严重时直接闪退。】# ?7 Y- w; r. c$ d4 D# k

" s8 u6 f# d, f" E1 X) E* ]& G说下遇到过的GD的问题。和楼主类似也是载入了很多词典,会闪退,最后发现有词典本身质量很差,一本简单的词典,里面html结构嵌套很深,像是直接从文字pdf转的html。* O2 x; r6 T, D$ ^0 B. O) G) o( j

解决办法是一本一本添加词典,如果闪退就说明刚添加的词典有问题,移除这本就好了。

4 V7 o+ p' b+ X+ q1 \5 A7 A

( |/ o" x/ I3 K) y' s q另外GD的全文搜索本身不慢,慢的是开始生成全文索引的时候。

3 F. Y/ l3 A: ^1 FMDX词条格式3 N2 X$ i1 c) C+ j1 Z, m- e1 |7 f

词头 -> 对应文本(释义html)

1 y" d( S4 n0 n( V( L$ _' A7 B, r" r# c

GD生成全文索引的大致流程:2 G" B7 q* U( D4 F! k* P0 S, ^

s7 D* ^1 C6 S) x% L/ r/ M获取词头 -> 获取文本块记录地址,获取词头偏移量 -> 提取解压文本块 -> 使用偏移量提取词头对应的文本 -> 生成索引2 C a8 f: {0 M! w

) I! L4 d& b. w5 p

上面这个流程是循环处理的,问题就出在第三步,反复解压同一个文本块。这里的文本块包含多个词头对应的文本。& n+ V3 f6 D+ T

$ R+ U( ^/ n# t/ N8 @1 r$ v

举例说明下:

2 j6 L3 w% Q9 ?词头 文本地址 偏移量

3 A0 m2 k$ R& |+ k& Ga -> 00000001 -> 0+ d: e9 J0 V; {5 ?

bug -> 00000002 -> 0) ~; M+ p0 U! l1 @$ |8 B' ?* D/ N4 z

bugger -> 00000002 -> 649 \5 d8 K8 t/ k, z

buggy -> 00000002 -> 128

& G6 i: \) _ A ]$ R. g3 @# {2 r$ K$ C0 K! N3 s% a

MDX多个词头的文本是打包压缩在一起的,比如上面的bug,bugger和buggy三者的文本是打包在一起的,都是同一个地址00000002,在文本块内部通过偏移量区分不同词头的文本。

" W' \% M! v3 O8 ~GD的全文索引生成是通用的,他没有为MDX单独处理bug,bugger和buggy三者的文本在同一个文本块的情况,对于00000002这个地址上的文本块,GD会反复解压3次,提取3个词头的文本,实际上解压1次就能提取这3个词头的文本。$ ]* [0 v9 x# L% v8 |* |

真实的MDX里,这种反复解压同一个文本块的情况更多,这是GD全文索引缓慢的根本原因。

# g* {0 u5 ^% V1 Z) _

! ]) r, G% A, D. X- N, p

4 d& \4 k; [; y5 H6 h6 x0 K/ L; W" N4 y* b0 _0 Q

7 f' `6 c4 R( @& }

4 @! y$ g% J ^1 m" S$ ?' V, W, P' h0 w* V% @' Z; H

回复

支持 3

反对 0

举报

独行者

独行者

当前离线

积分10908

TA的每日心情开心2023-4-4 20:46签到天数: 337 天

[LV.8]以坛为家I

推荐

楼主|

发表于 2019-8-26 15:42:05

|

只看该作者

oversky 发表于 2019-8-26 15:35

7 M" I# e2 o7 Z" E" O建议把资源档存放的路径和 mdxbuilder 内 data 指定的路径,两者要如何对应也写一下。之前也试了好几次才成 ...8 V, }0 w1 m' N! _

如果不打包的话,根路径就是 mdx 所在的路径,如果打包成 mdd,最外层的文件夹是不打包到mdd的,只是起到收纳的作用。

回复

支持

反对

举报

498018591

498018591

当前离线

积分20289

TA的每日心情郁闷2021-7-16 22:15签到天数: 90 天

[LV.6]常住居民II

4楼

发表于 2019-8-26 12:04:27

|

只看该作者

谢谢分享经验!

回复

支持

反对

举报

喬治兄

喬治兄

当前离线

积分84266

TA的每日心情开心2018-8-8 03:13签到天数: 1 天

[LV.1]初来乍到

5楼

发表于 2019-8-26 12:35:13

|

只看该作者

感謝 独行者 兄, 熱心提示 Midct 制作教程和经验 : y, }8 x9 C+ ]- C3 V- r

提醒了小弟, 差點都忘了還有幾招可以實現的方法; | t2 l( v3 X J/ O9 \

Thanks a lot

; k" n4 R6 z. x5 m; [- Y

回复

支持

反对

举报

cocowind

cocowind

当前离线

积分146890

TA的每日心情开心2022-1-21 00:52签到天数: 699 天

[LV.9]以坛为家II

6楼

发表于 2019-8-26 12:45:15

|

只看该作者

这个是高阶的,可惜收费100米

* n; a- R/ {4 p7 d" q& R最近学习到的制作mdict词库时候的一些经验

: I+ w; L; L( H$ a3 `https://www.pdawiki.com/forum/thread-34178-1-1.html?x=180507

回复

支持

反对

举报

kid728

kid728

当前离线

积分75

TA的每日心情无聊2019-8-28 09:13签到天数: 3 天

[LV.2]偶尔看看I

7楼

发表于 2019-8-26 13:58:14

|

只看该作者

小白求问,数据源也就是原始词典文本数据从哪找QvQ

回复

支持

反对

举报

独行者

独行者

当前离线

积分10908

TA的每日心情开心2023-4-4 20:46签到天数: 337 天

[LV.8]以坛为家I

8楼

楼主|

发表于 2019-8-26 14:12:22

|

只看该作者

kid728 发表于 2019-8-26 13:580 d, s9 s+ J) A6 B6 E' G

小白求问,数据源也就是原始词典文本数据从哪找QvQ/ D& D7 h! \" o8 s+ X

从其他格式词典转,或者写爬虫从某些词典网站抓取。

回复

支持

反对

举报

kid728

kid728

当前离线

积分75

TA的每日心情无聊2019-8-28 09:13签到天数: 3 天

[LV.2]偶尔看看I

9楼

发表于 2019-8-26 14:14:13

|

只看该作者

明白啦,谢谢解答~

回复

支持

反对

举报

我爱深蓝

我爱深蓝

当前离线

积分13462

TA的每日心情慵懒2020-4-10 13:19签到天数: 269 天

[LV.8]以坛为家I

10楼

发表于 2019-8-26 14:17:43

|

只看该作者

欧路也是令人不爽,奈何竟没有比他更好的,就想百度一样,加个inspect功能就那么难吗?

回复

支持

反对

举报

江湖侠客

江湖侠客

当前离线

积分15606

TA的每日心情开心2019-5-18 18:07签到天数: 521 天

[LV.9]以坛为家II

11楼

发表于 2019-8-26 14:35:46

|

只看该作者

请教楼主,如果不会正则表达式,能在mdx解包的TXT文件中每个词条上加上

回复

支持

反对

举报

独行者

独行者

当前离线

积分10908

TA的每日心情开心2023-4-4 20:46签到天数: 337 天

[LV.8]以坛为家I

12楼

楼主|

发表于 2019-8-26 14:42:32

|

只看该作者

江湖侠客 发表于 2019-8-26 14:35

/ x) i, c# e1 U1 d E8 }8 K请教楼主,如果不会正则表达式,能在mdx解包的TXT文件中每个词条上加上

' ~, ~0 N% G' i有点困难,建议学习下,入门很快的。

回复

支持

反对

举报

oversky

oversky

当前离线

积分28024

TA的每日心情无聊2022-9-25 21:09签到天数: 1136 天

[LV.10]以坛为家III

13楼

发表于 2019-8-26 15:35:41

|

只看该作者

建议把资源档存放的路径和 mdxbuilder 内 data 指定的路径,两者要如何对应也写一下。之前也试了好几次才成功,久了又忘了。

回复

支持

反对

举报

realHank

realHank

当前离线

积分1825

TA的每日心情奋斗2022-10-31 03:46签到天数: 224 天

[LV.7]常住居民III

14楼

发表于 2019-8-26 16:40:00

|

只看该作者

Nice. Thank you for your sharing

回复

支持

反对

举报

chenboeli

chenboeli

当前离线

积分26186

TA的每日心情慵懒2020-12-26 15:05签到天数: 154 天

[LV.7]常住居民III

15楼

发表于 2019-8-26 18:28:23

|

只看该作者

很不错的总结,9 H- l8 Y4 C1 f) w

想问一下:GD 方便地导出 HMTL这一条,批量的导出呢这方面,有经验吗?

回复

支持

反对

举报

独行者

独行者

当前离线

积分10908

TA的每日心情开心2023-4-4 20:46签到天数: 337 天

[LV.8]以坛为家I

16楼

楼主|

发表于 2019-8-26 18:29:41

|

只看该作者

chenboeli 发表于 2019-8-26 18:28

. R+ R9 e5 P2 M4 `很不错的总结,

3 B) c% m! j& H1 F" E想问一下:GD 方便地导出 HMTL这一条,批量的导出呢这方面,有经验吗? ...0 @2 z; I4 k( G! h: {, K

看看这个帖子 https://www.pdawiki.com/forum/fo ... &extra=page%3D1

回复

支持

反对

举报

chenboeli

chenboeli

当前离线

积分26186

TA的每日心情慵懒2020-12-26 15:05签到天数: 154 天

[LV.7]常住居民III

17楼

发表于 2019-8-26 19:57:07

|

只看该作者

独行者 发表于 2019-8-26 18:29$ f' e4 }7 o# R7 H

看看这个帖子 https://www.pdawiki.com/forum/forum.php?mod=viewthread&tid=35598&extra=page%3D17 }- v" Z6 f- Z8 X" ]3 @7 j

非常感谢

回复

支持

反对

举报

lewpad

lewpad

当前离线

积分11564

TA的每日心情擦汗2024-9-20 12:01签到天数: 784 天

[LV.10]以坛为家III

18楼

发表于 2019-8-27 11:36:28

|

只看该作者

谢谢楼主,辛苦了。 4 ]1 C$ b* ~, R. r, m- ?

GD在用。“性能很差,如果开启全文搜索,会很卡;载入词典过多,也会很卡,严重时直接闪退。” 词典过多,常无响应,不知有无解决办法.

回复

支持

反对

举报

quslrux

quslrux

当前离线

积分2337

TA的每日心情郁闷2023-5-19 21:52签到天数: 127 天

[LV.7]常住居民III

19楼

发表于 2019-8-28 19:33:04

|

只看该作者

谢谢分享经验!

回复

支持

反对

举报

cocowind

cocowind

当前离线

积分146890

TA的每日心情开心2022-1-21 00:52签到天数: 699 天

[LV.9]以坛为家II

20楼

发表于 2019-8-30 14:34:54

|

只看该作者

请教一下:

8 w, k3 @, ^5 D8 Q* E8 [. M是不是以格式@@@LINK=pic001引用的图片必须是JPG后缀?

" Q ]. e- Q3 ]+ D' a" |# s# Z4 \2 Y& M2 V! S l6 Z

pic001图片格式即便是png或者gif,都必须改为pic001.JPG才能在GoldenDict里正确显示出来

回复

支持

反对

举报

独行者

独行者

当前离线

积分10908

TA的每日心情开心2023-4-4 20:46签到天数: 337 天

[LV.8]以坛为家I

21楼

楼主|

发表于 2019-8-30 21:30:29

|

只看该作者

cocowind 发表于 2019-8-30 14:341 j! `) L( w j9 e9 [* ?* U3 ]

请教一下:

* ]$ I" L0 V7 W$ ?' [是不是以格式@@@LINK=pic001引用的图片必须是JPG后缀?

$ | P! U( ^3 i& u请重新阅读我的帖子。

回复

支持

反对

举报

liubingxy

liubingxy

当前离线

积分1179

TA的每日心情开心2019-10-1 15:42签到天数: 36 天

[LV.5]常住居民I

22楼

发表于 2019-8-31 22:04:33

|

只看该作者

谢谢分享,看上去还是不容易啊

回复

支持

反对

举报

我是小肥柴

我是小肥柴

当前离线

积分6486

TA的每日心情擦汗2024-8-20 15:02签到天数: 100 天

[LV.6]常住居民II

23楼

发表于 2020-3-13 07:54:26

|

只看该作者

谢谢分享,收藏

回复

支持

反对

举报

lwx228

lwx228

当前离线

积分10414

TA的每日心情无聊2023-2-17 11:35签到天数: 284 天

[LV.8]以坛为家I

24楼

发表于 2020-3-14 07:49:28

|

只看该作者

每次回帖、谢谢!辛苦了。

回复

支持

反对

举报

yyksyh

yyksyh

当前离线

积分4630

TA的每日心情擦汗2022-7-1 09:29签到天数: 521 天

[LV.9]以坛为家II

25楼

发表于 2020-3-25 09:13:13

|

只看该作者

这个优缺点说得太明了了,尤其关于排版,一阵见血。

回复

支持

反对

举报

Copyright © 2022 中国足球世界杯_90年世界杯 - doulol.com All Rights Reserved.