掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 44775|回复: 61

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

  [复制链接]

该用户从未签到

发表于 2015-2-13 09:30:10 | 显示全部楼层 |阅读模式
本帖最后由 tsiank 于 2015-10-27 01:44 编辑
+ E6 u2 ^! m  ?; J  n0 w+ Q- w2 C$ Y$ p- P5 [, o! v  x
此贴原在国学数典发过,有网友因为注册等原因在上面看不到,所以就在此论坛转贴一下,不足之处请指正。
# A7 ~$ _. N1 Y! k8 C
. x' B$ E, [5 ^0 I( m6 [图像版mdict字典制作方法
0 }: R( x+ ], _8 ?# p) i  ~0 B' V# _; M% |0 u
本人不才,先后制作了《汉语大字典》、《汉语大词典》《王力古汉语字典》等图片版的mdict字典。现在应网友的要求,将其制作方法发布出来,希望能有同仁制作出更多的汉语或其他语言的字典。
1 W+ H9 K  h9 C9 n. X  d
0 k0 W6 \. V& S$ m1 G) d制作mdict字典的图片版,要有两个前提:1,比较清晰的电子书;2,有字头与页码对应的数据。几个工具:电子书转图片工具:Pdg2Pic ,DJVUTOY,或adobe acrobat pro ;1 z9 F3 W  f2 g0 V/ G& Q, U
文字处理工具:excel和支持正则表达式的文本工具,这里我用EmEditor;生成mdict字典格式的工具:MdxBuilder。+ T' q% o/ [  e& W9 N2 t8 O
# L( b- U3 u; B2 ?, W9 l, k- r
下面以制作王力古汉语字典为例,说明其制作过程:8 M4 ]3 p+ d* N, I2 k0 f
1,        将电子书拆分为单页图片。5 F" U/ P2 o; n; e
现有的电子书格式一般有PDG,DJVU以及PDF,制作电子字典,一本书有好几种格式的话,首选PDG格式的。因为用这个格式转成的png图片,不仅清晰,而且尺寸刚好合适,可直接在苹果设备中使用(ios中mdict电子字典,其图片尺寸若超过2400*2400便无法显示)。
% i5 L3 [, F# V( s9 y' \
3 V# ^8 }! c! o; q% j; D' S, g如果电子书是PDG格式的,用Pdg2Pic这个工具转为png,如图:
4 H) x4 V/ Z8 f0 e6 W! U & G! w; q7 r4 Q$ q0 Y" I# b

. U/ @% w& c7 C1 N+ T那个参数设置只需选图像存为png就行,其他不用变。生成图像后,可以根据需要用文件批量改名工具修改一下文件名,也就是页码。比如我们把正文的页码(也就是以纯数字开头的文件)放在一起,图中的页码都是6位数的,将其改成4位数,并在文件名前加几个字母(这里加个WLG)以与其他字典的页码相区别。如图:
- [2 o9 \/ E! m0 Y+ u+ a$ F8 e& Y- K8 d& i6 P* w, U, ?; w
. x: K/ J4 [2 E" _( [( E
: j6 f5 [3 f4 ]/ z: E% s, {5 E/ U" z2 \
将附录和其他的页码放在一起,根据需要进行修改,比如也改成4位数并在前面加上WLGF几个字母,方法同上。
- W* ?) w8 `' I' d, \6 |/ ~' D% ^' @# g# u  O) Z* j- M- x
如果电子书是DJVU格式的,用DjVuToy这个工具中的转图像选项转为png。  ?' b# v4 G' a2 k8 Y, \& J/ V
4 M& Y% C( d" G! v# q3 T; X" n
5 C$ T# ^# h: H- y
如果电子书是PDF格式的,那可以用adobe acrobat pro直接导出为png。
. F8 ?% {/ k# X9 }, H' o" C8 c需要注意的是后两者转换后的png尺寸并不一致,生成的mdict可能会在ios上无法显示,如果想在ios上使用,就需要使用另外的图像处理工具调整png的尺寸了。
) d; i4 |9 F9 j/ D5 w6 E& u6 F5 C2 M9 \, c' \. V  y2 D
2,        页码的处理:2 D8 T7 Y+ i4 R- l
首先,在excel中根据字典正文的页码数输入一列页码数据,原字典是多少页,这里就输入多少个(王力古汉语字典正文页码到1817页)。然后将此列数据分别复制一份到B列和C列,在B1插入一个空单元格,数据与B2同。把C1删除,并在C列最后一行的单元格输入与上个单元格相同的数据,最终数据如图所示:* l  c- K2 j, l
. b9 L. c- l% [- J

+ ?7 B# n7 U. @! \将此三列数据复制到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</>”,然后点击替换全部,结果如图所示:
$ a6 H% k, c1 m: D1 h ) h9 y8 P2 I1 C# r$ {3 E! R2 X
最后将这个文件以UTF-8的格式先保存。
- ?$ d7 A1 s, c! ~0 Q5 @
) ?! D+ D2 q; X. U( [, s# f
3 d' L, _, \  G- l* @9 n6 o+ J6 I对于附录以及其他页码的处理同上,只不过替换中的WLG三个字母要改成WLGF,处理完毕后将其文本复制到已保存的王力古汉语字典.txt中并再次保存。
4 o! c; K) H( y0 G. f* z$ w. G. z& {$ T% R1 l( O
3,        字头的处理:" _# I9 k5 k- H4 v0 C
将字头与页码在excel中整理成如下所示:9 g3 y/ _9 N) Q8 p

3 V0 G4 b" [0 X/ i; I9 G( K 将其复制到EmEditor中(首行不要),在查找栏中输入“(.+?)\t(.+?)$”,在替换栏中输入“\1\n@@@LINK=WLG\2\n</>”,点全部替换,结果如图所示:5 E. D9 u$ _# W5 [/ P) R

- W" l) J% N4 L4 e! M& Y3 h2 u将其结果复制到王力古汉语字典.txt中,注意与前面的内容不要有空行,点击保存。这样文本就处理完毕了。, a% t* i: a) s

' G3 Z' ]6 c/ x- T$ B7 Q6 h  e4,        转换成mdict格式的字典。
6 A1 R$ C' r3 R! y1 ^( o) }打开MdxBuilder.exe,在source栏中输入刚才保存的文本所在路径及名字,在target栏中输入要生成的mdict格式的字典所在路径及名字,扩展名是.mdx,在data栏中输入第1 步制作的图片的所在位置。original format选择mdict(html),encoding中选择UTF-8,title栏输入这本字典的名字。description栏是这本字典相关信息的描述,支持html标签,也可以不填。其他选项用默认的就行。然后点击start开始生成mdict字典。如果status栏最后出现successful 字样就说明制作成功了。$ r* ]0 W- J$ b1 v( W' d& a/ E& ?) n
/ C8 Y' s) Q8 U( M8 }/ Y' n
& h" ^; M% m9 Q) C' [: f' M
' l" b; e1 a. y! `$ G1 X
5,        mdict电子字典的使用。/ M, a$ S7 A+ [* P% D' O
PC端支持mdict格式的电子词典工具有mdict,goldendict,推荐使用后者。安卓端有mdict和bluedict,推荐后者。ios端的有mdict。将上述生成的mdict文件(mdx和mdd,两者文件名要一致)放入合适的目录中,并在软件中将词典路径指向这个目录来添加字典,然后就可以查询使用了。; C) f9 R9 k6 }. e" [# k  w% O

5 G0 ]" r7 a3 ~. _! E. ~
8 u; o. R6 g# }- o2 E% \' _

本帖子中包含更多资源

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

x

评分

2

查看全部评分

本帖被以下淘专辑推荐:

该用户从未签到

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

该用户从未签到

发表于 2015-2-22 21:56:09 | 显示全部楼层
本帖最后由 fedor 于 2015-2-22 22:10 编辑 % y' e" Z/ _6 ~
liuyunrushui 发表于 2015-2-20 22:42
. U& r4 w3 G* r$ I  ]% D: g字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!2 E# K7 s2 F4 e" t& W. l; a
0 D/ w' K% B- Z1 D* U
字头是将每张图片的单词作为字头的,后面 ...

0 F- W" }  `' n( U/ _5 O
. _4 c/ }0 g! c( m5 J1 n, k' h又尝试做了一下,成功了。! ?" ~) D( F, x4 y1 Y6 k
每张图片上的所有单词都要做索引,也是比较耗时的,这还是其次,问题是图片大些的词典在手机上就无法用了,在电脑上用还是可以的,mdict中启用图片自适应窗口,字太小,开不清单词,而如不自适应窗口,图片又太大,浏览起来特费劲,所以说还不如先裁剪大小合适的图片,这样在手机和电脑上都能用,就是费时间。
) L& B5 u( X* f' \还有个问题是,将词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小。
: ^  [% ]4 v' B0 ?3 g下面我做的词典,在手机上的应用和在GoldenDict上应用0 m6 I8 }, k3 Y. s7 |' p
截图软件为FastStoneCapturecn。
5 z4 y6 U9 @% k2 D* X8 t3 x* h9 n& ]6 d) Z1 f$ h
, \6 I, l; H" H8 @4 Y! @

* s: ]; f8 [6 F& y8 ]. L! ~+ s& Y

本帖子中包含更多资源

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

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

    [LV.9]以坛为家II

    发表于 2016-10-3 08:53:16 | 显示全部楼层
    有点遗憾 根本看不懂啊!
    ( i2 `: I1 u. V+ o3 Z0 Z& l" c  Y将此三列数据复制到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</>”,然后点击替换全部,结果如图所示:
    * [  E; Q% }+ v; a/ o% S. ~( U这三列数据复制到Emeditor后,也就是那三列数据,哪来的“(.+?)\t(.+?)\t(.+?)$”?不能替换!本人比较笨!教程个人觉得不详细!在excell中输入数字时,按楼主的做法,B列会多一行,请问这最后一行的数字是保留还是删除呢?" D4 X$ M8 r: K1 L1 B! }2 a& Y

    点评

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

    该用户从未签到

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

    [LV.7]常住居民III

    发表于 2015-2-13 12:41:30 | 显示全部楼层
    tsiank 发表于 2015-2-13 09:31% Q3 Q  Z1 o$ E6 w# o% l7 K
    图片都不能全幅显示

    ! L+ R( g: Z* ^' C先传到相册,然后在贴子里引用,就能全幅显示了 :D

    该用户从未签到

    发表于 2015-2-13 16:15:18 | 显示全部楼层
    支持原创教程!
    , d) ]( o, p0 l7 @) ?. S
    % H+ `9 D# |! O! mPdg转png是关键,很多pdf或mdx的图片质量很差,估计就是转成了jpg格式。

    该用户从未签到

    发表于 2015-2-16 01:33:27 | 显示全部楼层
    本帖最后由 chigre3 于 2015-2-16 04:36 编辑 ( U) `' v+ h% |- }8 w0 C- n8 _  r
    ' m' c6 d( r! j- M+ {) T5 A4 J- k# K
    汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理把所在页面的位置(序号)标志出来.) Y5 e# a6 a! L% R: J7 `4 h
    之前也简略说过这事情:
    9 @7 P* s3 y6 u5 Z4 Y, y0 W( y3 o图片版词典的大致样子  https://www.pdawiki.com/forum/fo ... hread&tid=13169

    该用户从未签到

    发表于 2015-2-16 01:35:03 | 显示全部楼层
    我觉得论坛其他朋友对于图片版词典不够重视, 制作好的图片版词典实际用途也很好啊!# j/ c2 I" e5 `8 V  _
    (因为没有文本版的)7 O; l* D: `/ y& X
    & e) q" H$ ~# Q3 ]+ y
    谢谢tsiank的帖子, 还有你制作的几个词典!

    该用户从未签到

    发表于 2015-2-16 14:45:38 | 显示全部楼层
    chigre3 发表于 2015-2-16 01:33
    5 m( Z1 b9 N7 @0 B" @: Q; z汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理 ...
    $ w+ m& O0 Y8 e( Y0 F: b% B
    求详细教程讲解~非常愿意学习~
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-18 17:53:52 | 显示全部楼层
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?' T4 S) h  }% N! A6 m8 c
    能否赐教呢?7 i& K2 T0 I: I( g0 T
    手机上使用的是mdict软件,用深蓝好像也是不能缩小,可以放大,用于手机屏幕限制,所以想缩小一点浏览下!0 H: D/ f- R/ C3 q0 Z1 r
    5 o5 ^" p" y/ ]! s# y* r4 A

    该用户从未签到

     楼主| 发表于 2015-2-19 13:31:52 | 显示全部楼层
    liuyunrushui 发表于 2015-2-18 17:53% @# H5 D/ v& Y  L
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?4 G: v9 n! P% t4 m* Z
    能否赐 ...
    $ o) P+ |  F2 t0 l2 y  Q
    把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& g1 E% Y5 }5 I# U' }" p
    把width="1080px“这个1080px换成适合你手机的数即可,比如换成720px或者100%什么的。

    + A* W, x% E; Y( X- r非常感谢大大!!!!. E; y  v3 x3 w* D
    新年快乐!

    该用户从未签到

    发表于 2015-2-19 20:36:52 | 显示全部楼层
    本帖最后由 fedor 于 2016-5-26 18:43 编辑 . b) N* [3 H% ^' R& G

    ; m: K% w3 I! }- c( x9 {6 M" f! q尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所在的页码,也就是文件名称吧,字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?
    7 E$ J4 c8 A- N我也非常喜欢制作图片词典,但都是最笨拙的方法,首先裁剪图片,大小要合适,其次是将每个单词都输入到表格中作为索引,这里无论是裁剪图片还是做索引,都太耗时间了。但好处是做成之后,输入即可查询定位。
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-20 22:42:10 | 显示全部楼层
    fedor 发表于 2015-2-19 20:36; u6 K8 O: c' {* w( \' q% @6 U
    尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所 ...

    ' @* \6 ~7 P) ?, \- p# r字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!8 t1 g' V$ e, t# |, h$ x1 v+ ]

    6 _. ]5 N, d1 \' j. H1 E5 I字头是将每张图片的单词作为字头的,后面一列的页码是同一页。我按照楼主大大的方法成功了!6 m3 m7 O5 ~, Q5 t! T3 q' O
    $ {* S# P* h6 x
    一张张切图片,阅读起来很方便,但是很费时间呀!: D& R( M/ P6 }) E: d& D
    % ~8 b+ N2 t0 `
    能请问一下您是用什么软件切的图片吗?

    该用户从未签到

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

    本帖子中包含更多资源

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

    x

    该用户从未签到

     楼主| 发表于 2015-2-23 10:38:38 | 显示全部楼层
    fedor 发表于 2015-2-23 09:27
    & P0 x7 G3 v/ B4 \! t请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了, ...
    5 ~' }' G7 K5 J9 K1 ~
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单栏的,和我汉语大字典手机版那样的。
  • TA的每日心情
    难过
    半小时前
  • 签到天数: 1622 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    发表于 2015-2-24 10:12:17 | 显示全部楼层
    tsiank 发表于 2015-2-23 10:389 b+ ~/ G5 z& q1 l( |6 u) [
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单 ...
    5 e3 v6 o4 }& X$ `1 [& J' n
    感谢回复!
    , d. |' [5 k* n! \; L# }还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小,这是怎么回事?如何调整?

    该用户从未签到

     楼主| 发表于 2015-2-24 13:28:48 | 显示全部楼层
    fedor 发表于 2015-2-24 10:127 r! W- P9 J: j. ?  E+ o
    感谢回复!  w) [6 [0 Q+ y6 s) q, _1 R0 G
    还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且 ...
      G& ?# Q# K) H# `0 D+ j$ N
    不好意思,由于我的粗心,在“<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:283 r7 p+ k! n6 l5 Y2 `2 z4 L
    不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...
    $ H) m* g$ u' E- y5 M
    非常感谢!!!
    , H) s0 C0 G+ B$ U这回正常了。以后有问题再请教大神

    该用户从未签到

    发表于 2015-2-24 17:41:15 | 显示全部楼层
    tsiank 发表于 2015-2-24 13:28
    + Q' h# K! t; o0 A不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...

    : D0 c7 @$ h, p/ Q/ x不好意思,还有个问题想请教一下
    # o7 q3 h: J- X0 h. u( t( g0 E) x: V在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑中浏览)。
    ; K" d+ k9 k% ^' g- T+ V7 S但是PDF转为png的,或者用XnView软件统一将图片都调整为png格式的,做出的词典却浏览不出来,这是怎么回事啊。
    3 Y$ C5 v* O" z也就是说,只能是截图另存为的图片才可以浏览,而用原来的图片或PDF转换过到png格式的,都不能浏览。

    该用户从未签到

     楼主| 发表于 2015-2-24 17:55:28 | 显示全部楼层
    fedor 发表于 2015-2-24 17:417 Z& {7 F3 D) D: ?% m( b  O: a- L
    不好意思,还有个问题想请教一下" D# `% v9 V% c* w, t* s, B, ?
    在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑 ...

    7 c. ?9 {8 O+ c1 i$ u, j- N我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    该用户从未签到

    发表于 2015-2-24 19:28:14 | 显示全部楼层
    本帖最后由 fedor 于 2015-2-24 19:31 编辑
    + _6 ?# Q& p  @: u
    tsiank 发表于 2015-2-24 17:55
    5 V; T9 ]) _0 m我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    . \9 S" p1 ~# B9 \$ ~
    7 S9 [: F+ S& G# m; {本想发给你你看看的,
    8 s) g) t; t  e2 H, r但一下子又好了,问题也不知出在哪里。
    ; f: v* w5 X& ~/ _) @不过最后一次是这样做的。4 I4 L# L" J* m- T
    我的原图是pcx格式,用XnView转为png,就正常了。
    6 ]  Y' R5 v3 \, R2 L( {) h* E' C, z& i# ~6 w
    对了,有没可以将两栏的词典拆分为一栏的软件呢?而且不影响原来图片的清晰度,给推荐下。

    该用户从未签到

     楼主| 发表于 2015-2-24 20:55:56 | 显示全部楼层
    fedor 发表于 2015-2-24 19:28, ?& }/ L3 Q  O0 a+ u5 j
    本想发给你你看看的,
    , f+ K: |( K& O( d4 o. Y0 T但一下子又好了,问题也不知出在哪里。' b6 M2 M" D4 t7 U
    不过最后一次是这样做的。

    5 i' L9 x( `8 W9 p" ?ComicEnhancer Pro:http://www.comicer.com/stronghor ... tm#ComicEnhancerPro

    该用户从未签到

    发表于 2015-2-24 21:08:58 | 显示全部楼层
    tsiank 发表于 2015-2-24 20:55  I9 ]) S4 M( o) q+ a
    ComicEnhancer Pro:http://www.comicer.com/stronghorse/software/index.htm#ComicEnhancerPro
    ) Z  i3 e; R0 _) b; r5 R* r! e( a! ]! Q
    感谢,下来试试
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-5-17 06:49 , Processed in 0.093485 second(s), 18 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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