掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 48146|回复: 62

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

  [复制链接]

该用户从未签到

发表于 2015-2-13 09:30:10 | 显示全部楼层 |阅读模式
本帖最后由 tsiank 于 2015-10-27 01:44 编辑 ! O+ x% o& k2 h, `* Y! r6 F: D' p7 b
0 U. b7 l( z5 G" f' v5 D5 j3 H
此贴原在国学数典发过,有网友因为注册等原因在上面看不到,所以就在此论坛转贴一下,不足之处请指正。
3 b3 A+ ^  F2 q: I% t9 [' s5 W; v* q& p
图像版mdict字典制作方法* `5 q/ F" v, [& V6 O
( w2 D5 p- }- a; S3 s+ P
本人不才,先后制作了《汉语大字典》、《汉语大词典》《王力古汉语字典》等图片版的mdict字典。现在应网友的要求,将其制作方法发布出来,希望能有同仁制作出更多的汉语或其他语言的字典。
7 k5 R7 ]0 k; C' y% b. ]* y' x* ~4 F) i! q- y
制作mdict字典的图片版,要有两个前提:1,比较清晰的电子书;2,有字头与页码对应的数据。几个工具:电子书转图片工具:Pdg2Pic ,DJVUTOY,或adobe acrobat pro ;
$ W* Y* N! ~5 ?+ N文字处理工具:excel和支持正则表达式的文本工具,这里我用EmEditor;生成mdict字典格式的工具:MdxBuilder。
% O$ |# b/ P/ k6 A/ X4 M% T* ^' B# d6 u$ x/ P/ w& S9 |
下面以制作王力古汉语字典为例,说明其制作过程:+ }) |6 O* X. S4 Q8 Z- E1 q; m
1,        将电子书拆分为单页图片。
1 Z& s, w# w4 f% C- P1 `现有的电子书格式一般有PDG,DJVU以及PDF,制作电子字典,一本书有好几种格式的话,首选PDG格式的。因为用这个格式转成的png图片,不仅清晰,而且尺寸刚好合适,可直接在苹果设备中使用(ios中mdict电子字典,其图片尺寸若超过2400*2400便无法显示)。% A7 g, r# I3 f  o4 A0 U
4 D" \, R4 U3 Z- _& q# R* x
如果电子书是PDG格式的,用Pdg2Pic这个工具转为png,如图:
$ {! L' \6 Y, B
1 \9 f, _' v: r( Y- A+ X2 A4 v, S6 w- W3 Y, d- \( G
那个参数设置只需选图像存为png就行,其他不用变。生成图像后,可以根据需要用文件批量改名工具修改一下文件名,也就是页码。比如我们把正文的页码(也就是以纯数字开头的文件)放在一起,图中的页码都是6位数的,将其改成4位数,并在文件名前加几个字母(这里加个WLG)以与其他字典的页码相区别。如图:2 F* i! u2 _9 ]' I

( g4 [2 |$ N% `: v
% b; `7 |* O+ n$ r8 U
5 K2 w/ t" c# o3 Y将附录和其他的页码放在一起,根据需要进行修改,比如也改成4位数并在前面加上WLGF几个字母,方法同上。  n: t2 o9 W) |$ q( R
- P; M2 {$ x8 O' q
如果电子书是DJVU格式的,用DjVuToy这个工具中的转图像选项转为png。
3 Y8 _' D# ~" L7 Q( C
6 o- H) A( C# ~7 u9 h* @( B- r* A( s4 {% S2 r0 ^4 L0 a; `
如果电子书是PDF格式的,那可以用adobe acrobat pro直接导出为png。  `! J. D7 u0 Z3 |
需要注意的是后两者转换后的png尺寸并不一致,生成的mdict可能会在ios上无法显示,如果想在ios上使用,就需要使用另外的图像处理工具调整png的尺寸了。
! p0 H# l  B" G: z  z9 R
6 `* i9 ]- y6 u+ G1 i/ e% J- K2,        页码的处理:
: s" |1 n8 g- f! s; g$ [首先,在excel中根据字典正文的页码数输入一列页码数据,原字典是多少页,这里就输入多少个(王力古汉语字典正文页码到1817页)。然后将此列数据分别复制一份到B列和C列,在B1插入一个空单元格,数据与B2同。把C1删除,并在C列最后一行的单元格输入与上个单元格相同的数据,最终数据如图所示:6 A4 n3 a* k4 R% x% f+ k
$ j! s4 j+ W- q' R% b

$ F: k* i: ^: V, v+ k" g- j0 I将此三列数据复制到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</>”,然后点击替换全部,结果如图所示:7 Z; L+ [0 s7 H( a5 B
+ S/ r' e9 Z' N) u; ~
最后将这个文件以UTF-8的格式先保存。
5 N5 P/ q4 {# ^- P6 E5 B4 S$ F2 q - x$ f# q) H" `$ j  O0 \. Q% D

: f( I/ a0 G6 n, M" M对于附录以及其他页码的处理同上,只不过替换中的WLG三个字母要改成WLGF,处理完毕后将其文本复制到已保存的王力古汉语字典.txt中并再次保存。
4 o6 v) k4 e. H% o& V) |* Y0 Z( t0 W, e/ C/ \! |  _4 I9 y4 e5 C/ _7 R
3,        字头的处理:
* h" \& o% A& u5 T% y  {/ o7 X将字头与页码在excel中整理成如下所示:
5 S, _! P  d; m3 }( j
4 f; i# r  V, b, b" \  w8 Z' r+ s* J 将其复制到EmEditor中(首行不要),在查找栏中输入“(.+?)\t(.+?)$”,在替换栏中输入“\1\n@@@LINK=WLG\2\n</>”,点全部替换,结果如图所示:
0 c( r4 x# V' N0 r  d7 ?
5 b8 n. a; P2 H将其结果复制到王力古汉语字典.txt中,注意与前面的内容不要有空行,点击保存。这样文本就处理完毕了。  W, z; R* m! C9 I
0 I  D3 o# P/ }* _
4,        转换成mdict格式的字典。
$ H1 ?8 W0 K( f7 d) I9 c打开MdxBuilder.exe,在source栏中输入刚才保存的文本所在路径及名字,在target栏中输入要生成的mdict格式的字典所在路径及名字,扩展名是.mdx,在data栏中输入第1 步制作的图片的所在位置。original format选择mdict(html),encoding中选择UTF-8,title栏输入这本字典的名字。description栏是这本字典相关信息的描述,支持html标签,也可以不填。其他选项用默认的就行。然后点击start开始生成mdict字典。如果status栏最后出现successful 字样就说明制作成功了。# Y, s0 H% C8 o" G
0 h( V7 p$ b$ z7 t& e+ s
" |) n- U2 P8 k" Q6 w( B
) W6 H. {  Z, m- w" Q" M
5,        mdict电子字典的使用。! }7 e, B& t' D# S& Y+ ?  f
PC端支持mdict格式的电子词典工具有mdict,goldendict,推荐使用后者。安卓端有mdict和bluedict,推荐后者。ios端的有mdict。将上述生成的mdict文件(mdx和mdd,两者文件名要一致)放入合适的目录中,并在软件中将词典路径指向这个目录来添加字典,然后就可以查询使用了。. N3 s. t5 X4 E

6 {$ j; j7 h, f+ c7 K* C. Q* n  i8 b7 K( f3 O4 _

本帖子中包含更多资源

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

x

评分

3

查看全部评分

本帖被以下淘专辑推荐:

该用户从未签到

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

该用户从未签到

发表于 2015-2-22 21:56:09 | 显示全部楼层
本帖最后由 fedor 于 2015-2-22 22:10 编辑 ! q/ T" Q' _: w- {: A0 ^! x
liuyunrushui 发表于 2015-2-20 22:42, [: t8 c8 a0 A9 ~) M* I
字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!+ P& D( _1 X0 E+ y7 y# s5 `
: f3 [% d% f2 K0 p9 L, p7 ?
字头是将每张图片的单词作为字头的,后面 ...
  P8 z2 n; ?8 l0 Q. L0 |6 N
2 a0 f! Y+ h6 u! `0 U/ o
又尝试做了一下,成功了。3 q) D9 t/ ~2 Q7 }
每张图片上的所有单词都要做索引,也是比较耗时的,这还是其次,问题是图片大些的词典在手机上就无法用了,在电脑上用还是可以的,mdict中启用图片自适应窗口,字太小,开不清单词,而如不自适应窗口,图片又太大,浏览起来特费劲,所以说还不如先裁剪大小合适的图片,这样在手机和电脑上都能用,就是费时间。% S/ A6 b5 O7 J( U, I* L
还有个问题是,将词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小。! t1 L5 V5 T- N: w% n1 z# R5 S/ q
下面我做的词典,在手机上的应用和在GoldenDict上应用
; W2 w& h) w5 M截图软件为FastStoneCapturecn。# J) ]: j& e  x4 v
' T/ T, h6 o7 x( a5 K

- [  e4 a8 V+ Q. N( o9 M
) g& g6 O- H4 ~' p! I. M6 }

本帖子中包含更多资源

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

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

    [LV.9]以坛为家II

    发表于 2016-10-3 08:53:16 | 显示全部楼层
    有点遗憾 根本看不懂啊!$ [2 f( \$ Z' s* m7 t
    将此三列数据复制到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</>”,然后点击替换全部,结果如图所示:
    , b2 p0 t! G. R: L2 Q: T9 n0 d/ c这三列数据复制到Emeditor后,也就是那三列数据,哪来的“(.+?)\t(.+?)\t(.+?)$”?不能替换!本人比较笨!教程个人觉得不详细!在excell中输入数字时,按楼主的做法,B列会多一行,请问这最后一行的数字是保留还是删除呢?  c1 U% F8 `( R; i: ?  Y

    点评

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

    该用户从未签到

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

    [LV.7]常住居民III

    发表于 2015-2-13 12:41:30 | 显示全部楼层
    tsiank 发表于 2015-2-13 09:31# ]3 D- R' s- r  ~) U; @
    图片都不能全幅显示
    6 r& b( i1 _- D/ t! ^
    先传到相册,然后在贴子里引用,就能全幅显示了 :D

    该用户从未签到

    发表于 2015-2-13 16:15:18 | 显示全部楼层
    支持原创教程!
    * _/ D  T: L9 C* {8 k  t: C
    " q- B1 C) _0 o/ [( y9 ]Pdg转png是关键,很多pdf或mdx的图片质量很差,估计就是转成了jpg格式。

    该用户从未签到

    发表于 2015-2-16 01:33:27 | 显示全部楼层
    本帖最后由 chigre3 于 2015-2-16 04:36 编辑 * G4 l( T( W, v# G& x
    ; t7 j, @5 P* p7 X" d/ c2 b; v9 H
    汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理把所在页面的位置(序号)标志出来.
    0 n& i8 a( ]' x4 Y  q1 F之前也简略说过这事情:: e, _) I( r9 Y+ V
    图片版词典的大致样子  https://www.pdawiki.com/forum/fo ... hread&tid=13169

    该用户从未签到

    发表于 2015-2-16 01:35:03 | 显示全部楼层
    我觉得论坛其他朋友对于图片版词典不够重视, 制作好的图片版词典实际用途也很好啊!
    : S& s/ j4 Q4 N! v1 r8 Z* G* D(因为没有文本版的)- v) [# e7 e# M+ c1 M# A

    5 E% I) ?9 Z+ W0 x# ?* w谢谢tsiank的帖子, 还有你制作的几个词典!

    该用户从未签到

    发表于 2015-2-16 14:45:38 | 显示全部楼层
    chigre3 发表于 2015-2-16 01:33
    : M( B, g/ Z+ s  W! h3 Q  }+ `: D汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理 ...
    / N& y; {: {0 F3 p5 k
    求详细教程讲解~非常愿意学习~
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-18 17:53:52 | 显示全部楼层
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?1 k9 ^% _* ]$ r# _
    能否赐教呢?! Z1 c! j6 Z" j. d, d; c( y! ?# |
    手机上使用的是mdict软件,用深蓝好像也是不能缩小,可以放大,用于手机屏幕限制,所以想缩小一点浏览下!
    * d$ l0 a5 J8 b( s* I3 o& X! Z% x+ i

    该用户从未签到

     楼主| 发表于 2015-2-19 13:31:52 | 显示全部楼层
    liuyunrushui 发表于 2015-2-18 17:53
    7 m- s% h  z+ c% O0 V# N' O3 C感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?
    2 L4 S: S# z" Z% o# N; n) c能否赐 ...
    : V3 }% `/ f6 {! i* x& X
    把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:31
    ' j6 F4 @$ \0 X5 D9 Z5 z把width="1080px“这个1080px换成适合你手机的数即可,比如换成720px或者100%什么的。

    % T$ r6 D& ]! o2 A& U2 F非常感谢大大!!!!
    ) R$ |* u6 ~2 ~2 |6 n新年快乐!

    该用户从未签到

    发表于 2015-2-19 20:36:52 | 显示全部楼层
    本帖最后由 fedor 于 2016-5-26 18:43 编辑
    : U2 a$ ]8 R6 U& ?1 T7 |% ]* s* [* P9 Z3 j5 b
    尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所在的页码,也就是文件名称吧,字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?. z& Y; n2 {3 T8 R' B9 G
    我也非常喜欢制作图片词典,但都是最笨拙的方法,首先裁剪图片,大小要合适,其次是将每个单词都输入到表格中作为索引,这里无论是裁剪图片还是做索引,都太耗时间了。但好处是做成之后,输入即可查询定位。
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-20 22:42:10 | 显示全部楼层
    fedor 发表于 2015-2-19 20:36
    1 G, j/ @6 t9 [尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所 ...

    & O0 z: Z3 u$ t: Y8 V/ a/ A. ?字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!
    8 O' a. z& H! E+ t5 p
    ) P- [2 l* Q. \* R字头是将每张图片的单词作为字头的,后面一列的页码是同一页。我按照楼主大大的方法成功了!( @- @# b- a( {9 d$ G2 C
    8 n( s- N1 l% a  I: [+ g, g3 J* P% x
    一张张切图片,阅读起来很方便,但是很费时间呀!
    0 s* V1 ~$ C! F
    , f. E8 U% b: D' I能请问一下您是用什么软件切的图片吗?

    该用户从未签到

    发表于 2015-2-23 09:27:59 | 显示全部楼层
    请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了,显示效果如下。
    / y( q/ B1 ~  `: g1 l0 t1 R( P

    本帖子中包含更多资源

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

    x

    该用户从未签到

     楼主| 发表于 2015-2-23 10:38:38 | 显示全部楼层
    fedor 发表于 2015-2-23 09:276 p& p% o7 K/ q! G0 S  o8 ?
    请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了, ...
    ) a; \2 d$ ?& S
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单栏的,和我汉语大字典手机版那样的。
  • TA的每日心情
    难过
    16 小时前
  • 签到天数: 1918 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    发表于 2015-2-24 10:12:17 | 显示全部楼层
    tsiank 发表于 2015-2-23 10:38
    ' a! b) t  x, E/ T6 G, b  ?$ }手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单 ...

    $ W8 l2 D+ k  y) c2 C感谢回复!  G) i6 D7 Q* a8 `2 w
    还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小,这是怎么回事?如何调整?

    该用户从未签到

     楼主| 发表于 2015-2-24 13:28:48 | 显示全部楼层
    fedor 发表于 2015-2-24 10:12* r2 u5 `$ b, G
    感谢回复!
    & J7 i. i2 z' {; C. X还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且 ...
    / G9 W" K, {5 h& }* r8 N+ x8 P
    不好意思,由于我的粗心,在“<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
    8 ^( i3 j" X7 x: ~4 ?不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...

    : r) B2 o& M* t; n! n; o; P+ S; {非常感谢!!!
    + l: Y1 W5 `, j' ^4 l& ]% Z这回正常了。以后有问题再请教大神

    该用户从未签到

    发表于 2015-2-24 17:41:15 | 显示全部楼层
    tsiank 发表于 2015-2-24 13:289 e5 c4 b0 |& y
    不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...

    . o3 f* }+ a$ `* H不好意思,还有个问题想请教一下
    1 ~4 D$ }% u3 y在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑中浏览)。
    5 n7 D/ M( f$ O# h8 K9 D5 o但是PDF转为png的,或者用XnView软件统一将图片都调整为png格式的,做出的词典却浏览不出来,这是怎么回事啊。
    1 T$ ~' G; }  [4 V$ W; `6 `也就是说,只能是截图另存为的图片才可以浏览,而用原来的图片或PDF转换过到png格式的,都不能浏览。

    该用户从未签到

     楼主| 发表于 2015-2-24 17:55:28 | 显示全部楼层
    fedor 发表于 2015-2-24 17:41" m+ j& Y. l1 l* w& P! m
    不好意思,还有个问题想请教一下" i0 x/ p+ @% @; }
    在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑 ...

    9 J2 W( j9 j9 `7 B" p; Z" [7 m* Y我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    该用户从未签到

    发表于 2015-2-24 19:28:14 | 显示全部楼层
    本帖最后由 fedor 于 2015-2-24 19:31 编辑
    - H: [8 l, ~0 e; ]' r, k4 |% T
    tsiank 发表于 2015-2-24 17:55
    * q& N, e2 o) w9 d5 \! I我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?
    + m5 \, u7 [5 U) R( r2 t
    7 p/ F8 X6 s6 r. _8 D
    本想发给你你看看的,
      a3 m0 x4 x% _* Y* `但一下子又好了,问题也不知出在哪里。( j! r/ _; G; j! q- P
    不过最后一次是这样做的。& [( Q* j5 m0 }
    我的原图是pcx格式,用XnView转为png,就正常了。" }9 C, N6 M0 Z% Z" h' S
    0 r0 i) c* `$ Q7 r9 n$ _, e# B5 l
    对了,有没可以将两栏的词典拆分为一栏的软件呢?而且不影响原来图片的清晰度,给推荐下。

    该用户从未签到

     楼主| 发表于 2015-2-24 20:55:56 | 显示全部楼层
    fedor 发表于 2015-2-24 19:28! c  z$ R# M/ @
    本想发给你你看看的,6 x  R7 B9 t. u% G  \1 T( G
    但一下子又好了,问题也不知出在哪里。' H9 z2 ?- {. n: D4 N
    不过最后一次是这样做的。

    + V- D( [) f1 g5 a/ A2 C% P2 gComicEnhancer Pro:http://www.comicer.com/stronghor ... tm#ComicEnhancerPro

    该用户从未签到

    发表于 2015-2-24 21:08:58 | 显示全部楼层
    tsiank 发表于 2015-2-24 20:55
    9 X$ P: x" j' B: B* }8 |ComicEnhancer Pro:http://www.comicer.com/stronghorse/software/index.htm#ComicEnhancerPro
    5 ?4 O0 W3 t4 Y8 t# @4 S* c
    感谢,下来试试
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2025-4-26 23:01 , Processed in 0.024649 second(s), 26 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

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