掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 45075|回复: 61

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

  [复制链接]

该用户从未签到

发表于 2015-2-13 09:30:10 | 显示全部楼层 |阅读模式
本帖最后由 tsiank 于 2015-10-27 01:44 编辑 % K! G3 s8 s" U6 f$ e! B# I- ^
* M9 j- `3 X' U2 y" O% c
此贴原在国学数典发过,有网友因为注册等原因在上面看不到,所以就在此论坛转贴一下,不足之处请指正。
2 I0 y7 `# I9 q! t' C/ i0 M- ?! i/ e
图像版mdict字典制作方法2 X8 A  ?+ D% o$ }$ T6 |7 \

  M  {6 H* a+ y本人不才,先后制作了《汉语大字典》、《汉语大词典》《王力古汉语字典》等图片版的mdict字典。现在应网友的要求,将其制作方法发布出来,希望能有同仁制作出更多的汉语或其他语言的字典。' K5 y+ ~+ x, x/ h+ ~  }

/ {, H: K5 F/ c. N; F+ y制作mdict字典的图片版,要有两个前提:1,比较清晰的电子书;2,有字头与页码对应的数据。几个工具:电子书转图片工具:Pdg2Pic ,DJVUTOY,或adobe acrobat pro ;# z+ [3 [+ p5 u( y' C' G
文字处理工具:excel和支持正则表达式的文本工具,这里我用EmEditor;生成mdict字典格式的工具:MdxBuilder。0 S# A  g9 R5 e8 w7 {& z: u
4 A9 {" S: H  ~$ r) \' E+ }5 ]
下面以制作王力古汉语字典为例,说明其制作过程:8 J- e7 h/ J" H. Z
1,        将电子书拆分为单页图片。# y/ h3 a+ M$ O
现有的电子书格式一般有PDG,DJVU以及PDF,制作电子字典,一本书有好几种格式的话,首选PDG格式的。因为用这个格式转成的png图片,不仅清晰,而且尺寸刚好合适,可直接在苹果设备中使用(ios中mdict电子字典,其图片尺寸若超过2400*2400便无法显示)。' S& X0 G( d2 t& q1 }$ ^! m

) a  S0 a$ E1 u5 d" i如果电子书是PDG格式的,用Pdg2Pic这个工具转为png,如图: , @5 c6 z$ T% t9 g" f/ B: y; m  B

' C+ X5 w' {  W) r3 I' y
" c$ B6 V( _. C那个参数设置只需选图像存为png就行,其他不用变。生成图像后,可以根据需要用文件批量改名工具修改一下文件名,也就是页码。比如我们把正文的页码(也就是以纯数字开头的文件)放在一起,图中的页码都是6位数的,将其改成4位数,并在文件名前加几个字母(这里加个WLG)以与其他字典的页码相区别。如图:: w; m6 F- x0 l7 F
) a. [5 D" l# g0 V% ~
  X: h5 o+ V$ Y" v# L+ B

/ B! C+ n0 q+ W$ b  U; f将附录和其他的页码放在一起,根据需要进行修改,比如也改成4位数并在前面加上WLGF几个字母,方法同上。
) M5 z! L) b# P) v1 L7 N5 H7 g7 i3 {) X( J+ R2 j
如果电子书是DJVU格式的,用DjVuToy这个工具中的转图像选项转为png。, Y$ d/ Q8 y/ @: q$ F
; }5 f7 d, l" j( Q0 d) O9 U3 o4 Y

4 F7 V- m4 d( v$ v9 T如果电子书是PDF格式的,那可以用adobe acrobat pro直接导出为png。2 C! ~6 K" m7 G! ^6 d7 [
需要注意的是后两者转换后的png尺寸并不一致,生成的mdict可能会在ios上无法显示,如果想在ios上使用,就需要使用另外的图像处理工具调整png的尺寸了。( s% f7 Q' v7 S+ c" Z7 _- K

4 t. W" |% c0 f! S$ d4 u1 ^' Q2,        页码的处理:- A7 S: J' f9 N. m
首先,在excel中根据字典正文的页码数输入一列页码数据,原字典是多少页,这里就输入多少个(王力古汉语字典正文页码到1817页)。然后将此列数据分别复制一份到B列和C列,在B1插入一个空单元格,数据与B2同。把C1删除,并在C列最后一行的单元格输入与上个单元格相同的数据,最终数据如图所示:" Z/ F- G2 a, D  O  F5 c
+ v5 L( c; A4 E" w( h
9 J) f3 A' p/ _6 ^
将此三列数据复制到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</>”,然后点击替换全部,结果如图所示:9 g. h4 p) C4 ^; t; L- i8 f" C6 b
8 M  J6 S+ C. `; z& I; r
最后将这个文件以UTF-8的格式先保存。
" L4 I  |. t, y$ `# j' \, ~ : Z6 ^5 o& f7 G

* W3 C) r7 w8 j6 [& q) }5 \对于附录以及其他页码的处理同上,只不过替换中的WLG三个字母要改成WLGF,处理完毕后将其文本复制到已保存的王力古汉语字典.txt中并再次保存。+ p  e$ k; T. C- H+ g+ G

$ l0 \' Y5 b/ R* R* ~3,        字头的处理:
3 {3 A% w8 f8 d! D* Y$ D! G将字头与页码在excel中整理成如下所示:
/ H7 `) m7 f) {+ T& |8 Y" H- S* c) H8 p- w/ f/ P5 Z
将其复制到EmEditor中(首行不要),在查找栏中输入“(.+?)\t(.+?)$”,在替换栏中输入“\1\n@@@LINK=WLG\2\n</>”,点全部替换,结果如图所示:
) E, b* b: m2 e! G9 g
1 _# ^/ \6 I5 ]9 [) _将其结果复制到王力古汉语字典.txt中,注意与前面的内容不要有空行,点击保存。这样文本就处理完毕了。
) o7 I4 X* R! ?& C$ K; _' |+ h( I. V1 D! H4 [
4,        转换成mdict格式的字典。: p4 }# e( S. c& \. v) ]2 b7 j4 U% Z
打开MdxBuilder.exe,在source栏中输入刚才保存的文本所在路径及名字,在target栏中输入要生成的mdict格式的字典所在路径及名字,扩展名是.mdx,在data栏中输入第1 步制作的图片的所在位置。original format选择mdict(html),encoding中选择UTF-8,title栏输入这本字典的名字。description栏是这本字典相关信息的描述,支持html标签,也可以不填。其他选项用默认的就行。然后点击start开始生成mdict字典。如果status栏最后出现successful 字样就说明制作成功了。
6 j/ V9 Z2 u" O, U1 L: d; B7 M  {; I, {( D

. N: F0 f, I1 `# F+ ?& J7 u) @
6 Y- B4 ^% Q5 b/ y0 B: W* _# }5,        mdict电子字典的使用。' e5 p$ B" s# [$ p) h" U, v4 d; y/ c
PC端支持mdict格式的电子词典工具有mdict,goldendict,推荐使用后者。安卓端有mdict和bluedict,推荐后者。ios端的有mdict。将上述生成的mdict文件(mdx和mdd,两者文件名要一致)放入合适的目录中,并在软件中将词典路径指向这个目录来添加字典,然后就可以查询使用了。
' O8 x. p: q3 X3 O9 f+ S
. S+ X, l1 O& j% c
$ k+ ?  `0 M/ N/ b7 M9 {5 b# W

本帖子中包含更多资源

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

x

评分

2

查看全部评分

本帖被以下淘专辑推荐:

该用户从未签到

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

该用户从未签到

发表于 2015-2-22 21:56:09 | 显示全部楼层
本帖最后由 fedor 于 2015-2-22 22:10 编辑 0 h4 d) U4 c/ C8 \% b$ O8 G
liuyunrushui 发表于 2015-2-20 22:42
6 B( l' ?, X3 o7 j6 U字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!, e; L' m: \% |& ]0 }& n4 d! S# p4 i

& l+ R3 h/ Z- ^# u5 V, F字头是将每张图片的单词作为字头的,后面 ...
) ?: t4 k1 y- g# b/ O( E; s+ y8 }

- ?! Z8 h0 l: E1 @又尝试做了一下,成功了。! Z& O: K- Q2 ^- w) \
每张图片上的所有单词都要做索引,也是比较耗时的,这还是其次,问题是图片大些的词典在手机上就无法用了,在电脑上用还是可以的,mdict中启用图片自适应窗口,字太小,开不清单词,而如不自适应窗口,图片又太大,浏览起来特费劲,所以说还不如先裁剪大小合适的图片,这样在手机和电脑上都能用,就是费时间。
8 Z: v  H+ `) K# W" b6 K+ ^还有个问题是,将词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小。
# Y" G- Z' b& G+ M8 [' q1 p: ~' ^下面我做的词典,在手机上的应用和在GoldenDict上应用
" T$ S, R- t2 f5 G2 R: B截图软件为FastStoneCapturecn。
/ c- q* B. M9 y9 e" @' {1 r% K8 E& V- ?
6 L' J. u+ r, |7 W  Z

0 h4 Z/ z& J: }- \

本帖子中包含更多资源

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

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

    [LV.9]以坛为家II

    发表于 2016-10-3 08:53:16 | 显示全部楼层
    有点遗憾 根本看不懂啊!5 e1 J/ \4 S- v6 b
    将此三列数据复制到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</>”,然后点击替换全部,结果如图所示:1 H0 {8 f; o  k2 A2 q5 K
    这三列数据复制到Emeditor后,也就是那三列数据,哪来的“(.+?)\t(.+?)\t(.+?)$”?不能替换!本人比较笨!教程个人觉得不详细!在excell中输入数字时,按楼主的做法,B列会多一行,请问这最后一行的数字是保留还是删除呢?
    ! U7 k" L* }/ ^

    点评

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

    该用户从未签到

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

    [LV.7]常住居民III

    发表于 2015-2-13 12:41:30 | 显示全部楼层
    tsiank 发表于 2015-2-13 09:31
    ( h: D+ y3 ~) s, a图片都不能全幅显示
    3 b3 F3 {: f4 X& S" o* h4 v
    先传到相册,然后在贴子里引用,就能全幅显示了 :D

    该用户从未签到

    发表于 2015-2-13 16:15:18 | 显示全部楼层
    支持原创教程!
    7 c. `+ h" J- X# u5 u- E  x9 I$ q
    $ s7 l9 r! [6 X' N( f8 d* W4 p* U' \Pdg转png是关键,很多pdf或mdx的图片质量很差,估计就是转成了jpg格式。

    该用户从未签到

    发表于 2015-2-16 01:33:27 | 显示全部楼层
    本帖最后由 chigre3 于 2015-2-16 04:36 编辑 6 v, T2 d+ ?) f8 N- u

    4 v" k  {5 w& p% h0 o汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理把所在页面的位置(序号)标志出来.0 _5 R  I# K$ |: f1 ]! _* c
    之前也简略说过这事情:
    4 v7 I* d( F6 i% P# G% V图片版词典的大致样子  https://www.pdawiki.com/forum/fo ... hread&tid=13169

    该用户从未签到

    发表于 2015-2-16 01:35:03 | 显示全部楼层
    我觉得论坛其他朋友对于图片版词典不够重视, 制作好的图片版词典实际用途也很好啊!
    5 x% W& y" V( j+ p0 Q& A' u) i& S3 l(因为没有文本版的)
    , E7 T$ K$ C3 [& Z4 ~# Y! K2 |- Z) B5 P% O- O  s4 T5 G
    谢谢tsiank的帖子, 还有你制作的几个词典!

    该用户从未签到

    发表于 2015-2-16 14:45:38 | 显示全部楼层
    chigre3 发表于 2015-2-16 01:33
    0 \( Q0 r# U: ^& s4 ?+ e0 x汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理 ...
      U* a- B4 z9 O
    求详细教程讲解~非常愿意学习~
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-18 17:53:52 | 显示全部楼层
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?
    8 U3 d* E+ i# h% A1 u3 i- a能否赐教呢?6 |0 F; T; i1 r5 k
    手机上使用的是mdict软件,用深蓝好像也是不能缩小,可以放大,用于手机屏幕限制,所以想缩小一点浏览下!
    8 U! y- G; N7 I1 @4 z7 F) }9 P0 E9 y5 B% j+ _

    该用户从未签到

     楼主| 发表于 2015-2-19 13:31:52 | 显示全部楼层
    liuyunrushui 发表于 2015-2-18 17:532 H  O' s' F+ x- q* D
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?
    ( X( ~/ g! Z0 G- N' o能否赐 ...
    9 s8 p  A5 J% s  l! ?* J
    把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
    5 Y4 g. N' n4 Y0 b' o1 t把width="1080px“这个1080px换成适合你手机的数即可,比如换成720px或者100%什么的。
    , M& H$ \, _4 H. D' O* Z& S
    非常感谢大大!!!!
    + M* H* u( B8 q6 |8 K3 C新年快乐!

    该用户从未签到

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

    [LV.1]初来乍到

    发表于 2015-2-20 22:42:10 | 显示全部楼层
    fedor 发表于 2015-2-19 20:36
    ; p  o3 G# x' i/ h/ S2 X尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所 ...

    3 `* s+ j* ^6 }. Z. A2 F: h3 v" h字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!& U; U; P, ?/ |) t$ J
    . R& P, s5 z9 ^2 \% X
    字头是将每张图片的单词作为字头的,后面一列的页码是同一页。我按照楼主大大的方法成功了!8 T2 V% i* Z$ D
    ( x7 I. [# X6 p4 T, N/ v
    一张张切图片,阅读起来很方便,但是很费时间呀!8 y( \: k% {8 T' ]& ]" \
    ! r, R/ J* D: ^# f
    能请问一下您是用什么软件切的图片吗?

    该用户从未签到

    发表于 2015-2-23 09:27:59 | 显示全部楼层
    请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了,显示效果如下。
    ) }" O* F& I0 y; B% T' B0 P+ Q1 {  w

    本帖子中包含更多资源

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

    x

    该用户从未签到

     楼主| 发表于 2015-2-23 10:38:38 | 显示全部楼层
    fedor 发表于 2015-2-23 09:27' h1 L+ ]% B9 ]4 U5 o' A* V% a
    请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了, ...
    : G, E) F  n& z' q
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单栏的,和我汉语大字典手机版那样的。
  • TA的每日心情
    难过
    昨天 06:36
  • 签到天数: 1632 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    发表于 2015-2-24 10:12:17 | 显示全部楼层
    tsiank 发表于 2015-2-23 10:38: Q& e4 ]% n9 a( e* ]
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单 ...
    $ E1 S9 t8 q" y/ u3 F
    感谢回复!% R/ V( y$ l+ M, O) r
    还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小,这是怎么回事?如何调整?

    该用户从未签到

     楼主| 发表于 2015-2-24 13:28:48 | 显示全部楼层
    fedor 发表于 2015-2-24 10:12
    3 ]0 a# c, Y+ g: q感谢回复!8 P/ c0 U) `  h( R. Y
    还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且 ...

    # C. l- S7 r" T9 {) _6 X不好意思,由于我的粗心,在“<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
    5 t- ^- C+ M1 W, @不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...

    % {/ L+ L# M" O# }; a. C非常感谢!!!: p0 _: H# d, \. |
    这回正常了。以后有问题再请教大神

    该用户从未签到

    发表于 2015-2-24 17:41:15 | 显示全部楼层
    tsiank 发表于 2015-2-24 13:28
    $ J) T: h, x( `+ N$ `; F5 D1 d不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...
    2 }! q$ x( ^0 z+ n2 g7 Q$ A
    不好意思,还有个问题想请教一下( }' j3 e  w; W, d
    在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑中浏览)。
    # K6 d$ D/ M3 e( a, j但是PDF转为png的,或者用XnView软件统一将图片都调整为png格式的,做出的词典却浏览不出来,这是怎么回事啊。  ~7 |5 c  z* i
    也就是说,只能是截图另存为的图片才可以浏览,而用原来的图片或PDF转换过到png格式的,都不能浏览。

    该用户从未签到

     楼主| 发表于 2015-2-24 17:55:28 | 显示全部楼层
    fedor 发表于 2015-2-24 17:411 `7 k" J/ M( S
    不好意思,还有个问题想请教一下
    % y% m' s+ W* T1 v9 U在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑 ...

    7 F7 x2 X4 U5 z& |我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    该用户从未签到

    发表于 2015-2-24 19:28:14 | 显示全部楼层
    本帖最后由 fedor 于 2015-2-24 19:31 编辑 9 }) N0 z6 T+ b8 W0 m( `0 R
    tsiank 发表于 2015-2-24 17:55
    . U4 h+ g, ~/ X* x2 N! W: H  G7 W我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?
    0 O2 D2 u8 u: N8 q8 ~
    " n" Z* \0 Q2 B$ \
    本想发给你你看看的,
    * W! |2 F' K# c. f* O: z2 c6 x但一下子又好了,问题也不知出在哪里。4 Q2 n  h! Z4 L1 }/ j, G
    不过最后一次是这样做的。
    . L; Q2 _. U' P1 }我的原图是pcx格式,用XnView转为png,就正常了。# [2 T- W* G9 S1 |' C* s

    , v. s+ g! u' U0 {0 R8 w+ q对了,有没可以将两栏的词典拆分为一栏的软件呢?而且不影响原来图片的清晰度,给推荐下。

    该用户从未签到

     楼主| 发表于 2015-2-24 20:55:56 | 显示全部楼层
    fedor 发表于 2015-2-24 19:286 _( ?0 K0 F' [; {0 a; K% o
    本想发给你你看看的,+ y# d; i0 o! T- B
    但一下子又好了,问题也不知出在哪里。
    . a" Q. Z7 H2 F+ x不过最后一次是这样做的。
    3 Z: Q6 w0 c& a; i' y+ ]
    ComicEnhancer Pro:http://www.comicer.com/stronghor ... tm#ComicEnhancerPro

    该用户从未签到

    发表于 2015-2-24 21:08:58 | 显示全部楼层
    tsiank 发表于 2015-2-24 20:55
    / o4 H; O; \/ M7 `ComicEnhancer Pro:http://www.comicer.com/stronghorse/software/index.htm#ComicEnhancerPro
    : X7 h3 K9 t- @% j9 [! Z# s# ]
    感谢,下来试试
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-6-1 17:24 , Processed in 0.070758 second(s), 13 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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