掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 44445|回复: 61

[教程] 图像版mdict字典制作方法

  [复制链接]

该用户从未签到

发表于 2015-2-13 09:30:10 | 显示全部楼层 |阅读模式
本帖最后由 tsiank 于 2015-10-27 01:44 编辑 - k( v7 A8 O: k/ A! x6 u, V: T- `" ]

' E- q# ~, [6 n% E此贴原在国学数典发过,有网友因为注册等原因在上面看不到,所以就在此论坛转贴一下,不足之处请指正。
& b. A3 K# u2 r6 J' q
( O. z, X4 W0 ?# z) T8 x. Q图像版mdict字典制作方法
: t( |& d3 s6 e" n# X. l' Z4 V9 l
3 [- u0 S2 U& }7 t/ u$ ]/ |) g3 J9 T本人不才,先后制作了《汉语大字典》、《汉语大词典》《王力古汉语字典》等图片版的mdict字典。现在应网友的要求,将其制作方法发布出来,希望能有同仁制作出更多的汉语或其他语言的字典。/ o( }5 d/ m8 T7 O! X
- Y5 ?+ Z9 E+ C  U3 c9 x
制作mdict字典的图片版,要有两个前提:1,比较清晰的电子书;2,有字头与页码对应的数据。几个工具:电子书转图片工具:Pdg2Pic ,DJVUTOY,或adobe acrobat pro ;( l( ?7 ]+ u+ y0 u! p0 Y
文字处理工具:excel和支持正则表达式的文本工具,这里我用EmEditor;生成mdict字典格式的工具:MdxBuilder。6 m) G9 t! w7 |; r5 v- k

3 h" G$ B1 X% }' Z+ y0 ~, |- X) K下面以制作王力古汉语字典为例,说明其制作过程:
4 ~9 ?3 M) h7 [% B% n% L1,        将电子书拆分为单页图片。
& I# H! K: `) v8 l2 w现有的电子书格式一般有PDG,DJVU以及PDF,制作电子字典,一本书有好几种格式的话,首选PDG格式的。因为用这个格式转成的png图片,不仅清晰,而且尺寸刚好合适,可直接在苹果设备中使用(ios中mdict电子字典,其图片尺寸若超过2400*2400便无法显示)。. x* w* p: _/ e2 g

0 z3 s7 k% b, d6 e: {, J5 b* L如果电子书是PDG格式的,用Pdg2Pic这个工具转为png,如图:
  s: D' \" h. A7 q" ` 5 d* D3 g0 o! w& M. n

8 R# c$ ^6 }4 M5 Q# ^那个参数设置只需选图像存为png就行,其他不用变。生成图像后,可以根据需要用文件批量改名工具修改一下文件名,也就是页码。比如我们把正文的页码(也就是以纯数字开头的文件)放在一起,图中的页码都是6位数的,将其改成4位数,并在文件名前加几个字母(这里加个WLG)以与其他字典的页码相区别。如图:/ S$ f/ m8 ^; {/ z9 U

, T. K4 ~+ W; C- m8 F) q% m% ~/ _( m4 H' {1 G7 w4 j3 D

( k0 E" o  a4 e3 a$ I# U/ T: D& o将附录和其他的页码放在一起,根据需要进行修改,比如也改成4位数并在前面加上WLGF几个字母,方法同上。
4 t% S3 F) U3 [3 h0 }
7 y; k8 l% c4 X如果电子书是DJVU格式的,用DjVuToy这个工具中的转图像选项转为png。
$ Q4 m+ k4 b# N) c1 C, Y" a
. r0 n$ w& H& F7 [, s1 B# v2 \# ^* A: [8 M; k% b9 |
如果电子书是PDF格式的,那可以用adobe acrobat pro直接导出为png。
7 F1 x% ^$ V. M) {! S( t+ U7 W需要注意的是后两者转换后的png尺寸并不一致,生成的mdict可能会在ios上无法显示,如果想在ios上使用,就需要使用另外的图像处理工具调整png的尺寸了。
7 B* G+ u, N1 g1 v6 i2 A# J
- r" \5 B% N: B; R5 v2,        页码的处理:
; z& l* V% `" p; A" ]9 q7 h首先,在excel中根据字典正文的页码数输入一列页码数据,原字典是多少页,这里就输入多少个(王力古汉语字典正文页码到1817页)。然后将此列数据分别复制一份到B列和C列,在B1插入一个空单元格,数据与B2同。把C1删除,并在C列最后一行的单元格输入与上个单元格相同的数据,最终数据如图所示:
! v9 |. l; d- n8 v3 ^$ v/ D
9 O2 W0 y. L9 k& v0 u8 B$ u8 }0 L, l: e2 k# R
将此三列数据复制到EmEditor中,点击搜索-替换选项,勾选使用正则表达式,在查找栏中输入“(.+?)\t(.+?)\t(.+?)$”,在替换栏中输入“WLG\1\n<img src="/WLG\1.png" width="1080px"><br><center> <a href="entry://WLG\2">上一页</a> &nbsp;&nbsp;<a href="entry://WLG\3">下一页</a> \n</>”,然后点击替换全部,结果如图所示:
- ~* a7 P# ]2 [- H+ g
3 h7 F3 S5 z( V- q6 u, H& T最后将这个文件以UTF-8的格式先保存。
7 T7 n( S7 E5 A9 p% v+ M) @
9 x3 X" u& g- g, }1 d# Q* ?3 {
# W8 r  H" s$ x' X$ I对于附录以及其他页码的处理同上,只不过替换中的WLG三个字母要改成WLGF,处理完毕后将其文本复制到已保存的王力古汉语字典.txt中并再次保存。( X7 S( u( f0 O, I6 \

; _* A( u, }9 a# I7 i/ J3,        字头的处理:
3 G8 S% ^( L5 q% c将字头与页码在excel中整理成如下所示:3 P( j# {! y) D( c) m
# @4 \4 s! p7 \7 I
将其复制到EmEditor中(首行不要),在查找栏中输入“(.+?)\t(.+?)$”,在替换栏中输入“\1\n@@@LINK=WLG\2\n</>”,点全部替换,结果如图所示:/ O. b0 H7 b# F. {

) j0 a4 a# ^, w& p: I将其结果复制到王力古汉语字典.txt中,注意与前面的内容不要有空行,点击保存。这样文本就处理完毕了。" I- P) b# A  J4 G5 h' P
) f: E2 [* {, m0 P0 \0 |
4,        转换成mdict格式的字典。6 M& n8 {6 q- k
打开MdxBuilder.exe,在source栏中输入刚才保存的文本所在路径及名字,在target栏中输入要生成的mdict格式的字典所在路径及名字,扩展名是.mdx,在data栏中输入第1 步制作的图片的所在位置。original format选择mdict(html),encoding中选择UTF-8,title栏输入这本字典的名字。description栏是这本字典相关信息的描述,支持html标签,也可以不填。其他选项用默认的就行。然后点击start开始生成mdict字典。如果status栏最后出现successful 字样就说明制作成功了。3 _$ D8 _' f  Y( `. H; s, O
8 ~4 @  D& V4 u6 k3 X
/ Q% C; q. g- r9 z; r! D

2 J: ^5 A$ u6 `* D3 x( E5,        mdict电子字典的使用。, T' x- g7 K/ E
PC端支持mdict格式的电子词典工具有mdict,goldendict,推荐使用后者。安卓端有mdict和bluedict,推荐后者。ios端的有mdict。将上述生成的mdict文件(mdx和mdd,两者文件名要一致)放入合适的目录中,并在软件中将词典路径指向这个目录来添加字典,然后就可以查询使用了。& b! M0 e' S$ r1 w' ]* g
4 D( D, N/ `* _: e$ A8 C( T6 k6 @

2 z, O* q% k, {7 |

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

评分

2

查看全部评分

本帖被以下淘专辑推荐:

该用户从未签到

 楼主| 发表于 2015-2-13 09:31:49 | 显示全部楼层
图片都不能全幅显示

该用户从未签到

发表于 2015-2-22 21:56:09 | 显示全部楼层
本帖最后由 fedor 于 2015-2-22 22:10 编辑
  d5 ~% U" L/ J; I
liuyunrushui 发表于 2015-2-20 22:420 X- n  M$ J. o
字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!/ P9 d5 O: l4 Y; r$ N5 A3 T7 {* P2 d2 o
! r0 w! X) D# }9 D
字头是将每张图片的单词作为字头的,后面 ...
$ P& m; g! I" a% Q9 Y1 v$ S/ f8 U

+ Y( K5 F4 W% O3 d又尝试做了一下,成功了。
* K7 ]) F( ?) Z4 g每张图片上的所有单词都要做索引,也是比较耗时的,这还是其次,问题是图片大些的词典在手机上就无法用了,在电脑上用还是可以的,mdict中启用图片自适应窗口,字太小,开不清单词,而如不自适应窗口,图片又太大,浏览起来特费劲,所以说还不如先裁剪大小合适的图片,这样在手机和电脑上都能用,就是费时间。" R* v# e) p# N/ a" k
还有个问题是,将词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小。' S( O+ P5 h8 l( j5 M
下面我做的词典,在手机上的应用和在GoldenDict上应用0 r3 H4 f- l) k+ K
截图软件为FastStoneCapturecn。* [) C' f3 k% W! l4 v  B( q/ q5 U0 H( A
3 F4 p8 c+ c* h  V( G
1 |# o6 n( p. H  F
5 I) D7 h7 Y8 p

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x
  • TA的每日心情
    开心
    2023-7-5 21:21
  • 签到天数: 399 天

    [LV.9]以坛为家II

    发表于 2016-10-3 08:53:16 | 显示全部楼层
    有点遗憾 根本看不懂啊!
    ; y" m) f# s9 B5 @# V将此三列数据复制到EmEditor中,点击搜索-替换选项,勾选使用正则表达式,在查找栏中输入“(.+?)\t(.+?)\t(.+?)$”,在替换栏中输入“WLG\1\n<img src="/WLG\1.png" width="1080px"><br><center> <a href="entry://WLG\2">上一页</a> &nbsp;&nbsp;<a href="entry://WLG\3">下一页</a> \n</>”,然后点击替换全部,结果如图所示:* ?- [0 _8 c  J3 l2 n2 ]
    这三列数据复制到Emeditor后,也就是那三列数据,哪来的“(.+?)\t(.+?)\t(.+?)$”?不能替换!本人比较笨!教程个人觉得不详细!在excell中输入数字时,按楼主的做法,B列会多一行,请问这最后一行的数字是保留还是删除呢?
    6 s1 \$ J* H0 Q9 B

    点评

    B列多的一行并不能替换,应该还是要删掉的  发表于 2016-11-29 14:56

    该用户从未签到

    发表于 2015-2-13 10:11:12 | 显示全部楼层
    终于看到图片了~!!!点开可以看到完整的~!非常感谢~!
  • TA的每日心情
    慵懒
    2023-10-14 18:34
  • 签到天数: 210 天

    [LV.7]常住居民III

    发表于 2015-2-13 12:41:30 | 显示全部楼层
    tsiank 发表于 2015-2-13 09:319 x! V/ L+ k5 T* ^" G  K# y) N6 e: k
    图片都不能全幅显示
    5 ?* k: c  F6 B% q0 _8 x/ e
    先传到相册,然后在贴子里引用,就能全幅显示了 :D

    该用户从未签到

    发表于 2015-2-13 16:15:18 | 显示全部楼层
    支持原创教程!' C# g: O+ o6 P

    ' [- o- J& V$ t5 LPdg转png是关键,很多pdf或mdx的图片质量很差,估计就是转成了jpg格式。

    该用户从未签到

    发表于 2015-2-16 01:33:27 | 显示全部楼层
    本帖最后由 chigre3 于 2015-2-16 04:36 编辑
    7 C* t, h5 ]6 [: {/ v8 T# ~' @: V  z( ^; d6 f, D3 _
    汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理把所在页面的位置(序号)标志出来.
    $ ^* f5 y3 _2 Y/ J5 u0 i8 c9 W之前也简略说过这事情:% ~# W# J) n5 O: g. M" f
    图片版词典的大致样子  https://www.pdawiki.com/forum/fo ... hread&tid=13169

    该用户从未签到

    发表于 2015-2-16 01:35:03 | 显示全部楼层
    我觉得论坛其他朋友对于图片版词典不够重视, 制作好的图片版词典实际用途也很好啊!
    ' F% w7 g! X: E(因为没有文本版的)$ s2 ~# E  X+ {2 o2 |* f8 o& c& ?, r

    ! w1 V4 P0 Q  S3 ?! @- Z8 y谢谢tsiank的帖子, 还有你制作的几个词典!

    该用户从未签到

    发表于 2015-2-16 14:45:38 | 显示全部楼层
    chigre3 发表于 2015-2-16 01:33
    ! k2 \$ _$ w* E* R汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理 ...
    ( D3 l: o- g3 p9 P6 v. M% o
    求详细教程讲解~非常愿意学习~
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-18 17:53:52 | 显示全部楼层
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?2 W1 a; `" @$ q1 s4 t# p
    能否赐教呢?
    9 r0 a- Z& M1 {7 c. Q" |" J手机上使用的是mdict软件,用深蓝好像也是不能缩小,可以放大,用于手机屏幕限制,所以想缩小一点浏览下!8 I2 v. D  ^- F' s  a9 H

    . t) ~  G) u9 N$ L1 A

    该用户从未签到

     楼主| 发表于 2015-2-19 13:31:52 | 显示全部楼层
    liuyunrushui 发表于 2015-2-18 17:53, J5 l- ^: c2 K0 J8 y! b
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?
    $ G/ l9 V/ S6 u/ @能否赐 ...
    0 c/ E1 Y& R4 A; M3 S
    把width="1080px“这个1080px换成适合你手机的数即可,比如换成720px或者100%什么的。
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-19 16:40:00 | 显示全部楼层
    tsiank 发表于 2015-2-19 13:313 p+ T; W% E$ H8 N( }$ I
    把width="1080px“这个1080px换成适合你手机的数即可,比如换成720px或者100%什么的。

    " v/ V) z/ w! B# M% ^非常感谢大大!!!!$ i( A9 A' P" `! G% U3 q5 j
    新年快乐!

    该用户从未签到

    发表于 2015-2-19 20:36:52 | 显示全部楼层
    本帖最后由 fedor 于 2016-5-26 18:43 编辑 . x  P. N: `, W
    & ~3 Q# T- C& L$ h
    尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所在的页码,也就是文件名称吧,字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?& b! a) K. M! j/ b3 p
    我也非常喜欢制作图片词典,但都是最笨拙的方法,首先裁剪图片,大小要合适,其次是将每个单词都输入到表格中作为索引,这里无论是裁剪图片还是做索引,都太耗时间了。但好处是做成之后,输入即可查询定位。
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-20 22:42:10 | 显示全部楼层
    fedor 发表于 2015-2-19 20:360 }1 b" h6 S- s1 [! Z3 x
    尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所 ...
    / E' ~* r1 }/ a9 F/ O/ G
    字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!: K: M9 Y' P9 s
    . V5 l5 S8 i# Y2 h4 g2 ^$ |% x1 m$ ~
    字头是将每张图片的单词作为字头的,后面一列的页码是同一页。我按照楼主大大的方法成功了!/ X! J/ J+ i; E; k2 s# c

      h; U0 R& V. l一张张切图片,阅读起来很方便,但是很费时间呀!
    : k" F& o: ]2 [0 U9 L5 f$ f) `' N3 x4 g8 \, c$ _
    能请问一下您是用什么软件切的图片吗?

    该用户从未签到

    发表于 2015-2-23 09:27:59 | 显示全部楼层
    请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了,显示效果如下。, a- ?% _: w" G6 m+ G9 A7 o

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?免费注册

    x

    该用户从未签到

     楼主| 发表于 2015-2-23 10:38:38 | 显示全部楼层
    fedor 发表于 2015-2-23 09:27
    ) E/ e" k/ w3 i% G/ q2 C, [请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了, ...
    5 H. Y" E% a/ x
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单栏的,和我汉语大字典手机版那样的。
  • TA的每日心情
    难过
    昨天 07:55
  • 签到天数: 1609 天

    [LV.Master]伴坛终老

    发表于 2015-2-23 21:22:33 | 显示全部楼层
    文字版的还没学会

    该用户从未签到

    发表于 2015-2-24 10:12:17 | 显示全部楼层
    tsiank 发表于 2015-2-23 10:38* ?% ^9 d/ q- k/ Q
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单 ...
    + z3 f, U8 K  t! x
    感谢回复!* d8 O" Q$ b. M5 J
    还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小,这是怎么回事?如何调整?

    该用户从未签到

     楼主| 发表于 2015-2-24 13:28:48 | 显示全部楼层
    fedor 发表于 2015-2-24 10:124 _5 E; G0 E: F$ p) |
    感谢回复!
    5 S: x* e5 t6 y; J/ `5 h* |& k还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且 ...
    # [$ G! P; V6 k7 \
    不好意思,由于我的粗心,在“<a href="entry://WLG\3">下一页</a> \n</>”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中不能正常显示下一页,现已纠正。你可以把你做好的源文件用EmEditor打开,在查找栏中输入“>下一页",在替换栏中输入“"\0”,然后点击全部替换即可。

    点评

    不对,楼主已经纠正过了。我前面复制的代码应该是没错的。我的问题是点击下一页不是跳到下一页,而是跳到下一个词条那里。  发表于 2017-8-7 08:04
    刚看到这里,感谢纠正!  发表于 2017-8-7 07:52

    该用户从未签到

    发表于 2015-2-24 16:29:55 | 显示全部楼层
    tsiank 发表于 2015-2-24 13:28
    ) x9 D/ U1 t/ b不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...
    ' C# u; C/ K. N: Q* _# ^( ~; }
    非常感谢!!!
    1 v6 t7 u! m6 _这回正常了。以后有问题再请教大神

    该用户从未签到

    发表于 2015-2-24 17:41:15 | 显示全部楼层
    tsiank 发表于 2015-2-24 13:282 }; t* w/ S' f9 C- G3 a' X7 u
    不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...
    / p2 C* r5 y+ `2 d7 k
    不好意思,还有个问题想请教一下
    0 L7 q" Q, S6 S! G. ?; W/ |在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑中浏览)。9 G. V% c5 ~8 P+ m
    但是PDF转为png的,或者用XnView软件统一将图片都调整为png格式的,做出的词典却浏览不出来,这是怎么回事啊。
    6 |0 m8 A# U# k% p1 g! S" `也就是说,只能是截图另存为的图片才可以浏览,而用原来的图片或PDF转换过到png格式的,都不能浏览。

    该用户从未签到

     楼主| 发表于 2015-2-24 17:55:28 | 显示全部楼层
    fedor 发表于 2015-2-24 17:41
    5 p9 U: }* T. w& h" n  m' S9 ]% H不好意思,还有个问题想请教一下
    . O: |& M+ |* O$ N0 ?在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑 ...

    ! h' u$ ~! M6 ^! f我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    该用户从未签到

    发表于 2015-2-24 19:28:14 | 显示全部楼层
    本帖最后由 fedor 于 2015-2-24 19:31 编辑 9 O' s6 J( P9 E) Z5 V6 C8 t
    tsiank 发表于 2015-2-24 17:55
    ; y- z; d# }# U) ~我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?
    + E. R+ v6 p3 Z; R/ ~  M  z, j. ?

    3 ~  V1 Z- H" \本想发给你你看看的,3 W6 M- W( f' X, S( Z; u/ [
    但一下子又好了,问题也不知出在哪里。
    ' p% Q; B0 _9 n2 Y8 V) s不过最后一次是这样做的。- E+ r8 N0 A, B- F# v
    我的原图是pcx格式,用XnView转为png,就正常了。  d, I6 f2 O( X1 L, ], _

      {' f2 y0 p" k对了,有没可以将两栏的词典拆分为一栏的软件呢?而且不影响原来图片的清晰度,给推荐下。

    该用户从未签到

     楼主| 发表于 2015-2-24 20:55:56 | 显示全部楼层
    fedor 发表于 2015-2-24 19:28
    ! J) F1 k9 N, X8 p7 ^6 H5 M本想发给你你看看的,1 C1 d7 B* W( [: G
    但一下子又好了,问题也不知出在哪里。2 ~* D  n1 L# }
    不过最后一次是这样做的。
    + `# m$ {! a, Y: ~, i
    ComicEnhancer Pro:http://www.comicer.com/stronghor ... tm#ComicEnhancerPro

    该用户从未签到

    发表于 2015-2-24 21:08:58 | 显示全部楼层
    tsiank 发表于 2015-2-24 20:55+ o9 X9 u% L! k4 l6 C+ |" K
    ComicEnhancer Pro:http://www.comicer.com/stronghorse/software/index.htm#ComicEnhancerPro
    4 u: I; p  r4 B# i1 t! V
    感谢,下来试试
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    小黑屋|手机版|Archiver|PDAWIKI |网站地图

    GMT+8, 2024-4-29 10:36 , Processed in 0.078605 second(s), 12 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

    快速回复 返回顶部 返回列表