掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 43931|回复: 60

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

  [复制链接]

该用户从未签到

发表于 2015-2-13 09:30:10 | 显示全部楼层 |阅读模式
本帖最后由 tsiank 于 2015-10-27 01:44 编辑
/ b" s- d8 I  w6 |$ B. a7 i) C- y$ ~, y5 v
此贴原在国学数典发过,有网友因为注册等原因在上面看不到,所以就在此论坛转贴一下,不足之处请指正。
+ L/ Q6 ]8 c3 [% E6 h- t. d: l3 P# i6 a. v6 |( E" K
图像版mdict字典制作方法) _- e( u2 [$ |7 j1 R1 z# S0 i

! l, N9 m( H/ h* [本人不才,先后制作了《汉语大字典》、《汉语大词典》《王力古汉语字典》等图片版的mdict字典。现在应网友的要求,将其制作方法发布出来,希望能有同仁制作出更多的汉语或其他语言的字典。
" m& l1 A9 ?6 z
8 |9 F/ }5 p, c4 ]制作mdict字典的图片版,要有两个前提:1,比较清晰的电子书;2,有字头与页码对应的数据。几个工具:电子书转图片工具:Pdg2Pic ,DJVUTOY,或adobe acrobat pro ;
& w$ H7 z) r% Z# \* n% n$ G文字处理工具:excel和支持正则表达式的文本工具,这里我用EmEditor;生成mdict字典格式的工具:MdxBuilder。
( C4 M- C  G% W7 }1 {" b  \- s: T# v1 |5 J
下面以制作王力古汉语字典为例,说明其制作过程:9 s* f$ U6 l- U( F
1,        将电子书拆分为单页图片。
9 n6 F9 y" B, \1 E8 p+ }现有的电子书格式一般有PDG,DJVU以及PDF,制作电子字典,一本书有好几种格式的话,首选PDG格式的。因为用这个格式转成的png图片,不仅清晰,而且尺寸刚好合适,可直接在苹果设备中使用(ios中mdict电子字典,其图片尺寸若超过2400*2400便无法显示)。+ o4 @! U8 A( j" ]# v$ \; i

6 H; a9 l% v. A! r" {$ f如果电子书是PDG格式的,用Pdg2Pic这个工具转为png,如图: ' E+ w  j' z( a; a  V5 `2 ]$ y. c/ F

7 x. r$ T! S. h8 B  p
' u6 t1 K2 \- k; T7 s$ c4 r* P那个参数设置只需选图像存为png就行,其他不用变。生成图像后,可以根据需要用文件批量改名工具修改一下文件名,也就是页码。比如我们把正文的页码(也就是以纯数字开头的文件)放在一起,图中的页码都是6位数的,将其改成4位数,并在文件名前加几个字母(这里加个WLG)以与其他字典的页码相区别。如图:" E8 g% Y* G2 K* k: N1 R( f
, C) Y; I! u% A3 a5 y5 b

8 O' m; N( \2 i6 ]2 D8 d
# A' g; b, R, T& J将附录和其他的页码放在一起,根据需要进行修改,比如也改成4位数并在前面加上WLGF几个字母,方法同上。
# f1 A* V  P9 j. S2 k8 `2 L- e- h4 O/ R( H; m
如果电子书是DJVU格式的,用DjVuToy这个工具中的转图像选项转为png。
1 |6 P* g! a6 Q, T
+ _* T, v" O  @8 Y. s/ g
& @$ l- q4 p) V6 J6 k% R7 Z- f: v" Y7 w如果电子书是PDF格式的,那可以用adobe acrobat pro直接导出为png。
, i8 B1 E* v1 p. Q# T% V# U需要注意的是后两者转换后的png尺寸并不一致,生成的mdict可能会在ios上无法显示,如果想在ios上使用,就需要使用另外的图像处理工具调整png的尺寸了。/ E3 }: |3 Y8 r

) R% H( H, f. F! T* ?2,        页码的处理:6 p8 |" j- t% A! l/ \! i- X
首先,在excel中根据字典正文的页码数输入一列页码数据,原字典是多少页,这里就输入多少个(王力古汉语字典正文页码到1817页)。然后将此列数据分别复制一份到B列和C列,在B1插入一个空单元格,数据与B2同。把C1删除,并在C列最后一行的单元格输入与上个单元格相同的数据,最终数据如图所示:
' H- @$ k& m7 ~* Y
' G. w, W" \$ X# ~5 h
' o5 [: }3 R) k将此三列数据复制到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</>”,然后点击替换全部,结果如图所示:
! r7 C0 W& Q# h9 ?' G6 Y  N3 \ ) G! k: R& p# W- d2 h0 N
最后将这个文件以UTF-8的格式先保存。
4 f" J% j" \) K& C& N$ h4 L 5 s; {: t& n8 U. o; o4 x! w2 \- O
; n" d5 k1 [; m2 u2 q
对于附录以及其他页码的处理同上,只不过替换中的WLG三个字母要改成WLGF,处理完毕后将其文本复制到已保存的王力古汉语字典.txt中并再次保存。
3 q8 J8 ~7 Q2 T$ x" V' P
6 v+ r" H. K' \% J9 m% k  |" o3,        字头的处理:
: x; ~0 x: v2 ~0 t( p/ `将字头与页码在excel中整理成如下所示:( O8 Y- ]: j$ l2 k  Q
% x' Y2 i! x2 ^$ a  W# v
将其复制到EmEditor中(首行不要),在查找栏中输入“(.+?)\t(.+?)$”,在替换栏中输入“\1\n@@@LINK=WLG\2\n</>”,点全部替换,结果如图所示:
$ e$ W, }2 \! u8 z& @+ ?3 [% t/ N
  Y2 q7 j) o$ p8 n2 X# n将其结果复制到王力古汉语字典.txt中,注意与前面的内容不要有空行,点击保存。这样文本就处理完毕了。
( A6 c! R% N. D* ]( |! a" y
! U: B8 z, B& B4,        转换成mdict格式的字典。
2 B8 K: f  z7 z( V打开MdxBuilder.exe,在source栏中输入刚才保存的文本所在路径及名字,在target栏中输入要生成的mdict格式的字典所在路径及名字,扩展名是.mdx,在data栏中输入第1 步制作的图片的所在位置。original format选择mdict(html),encoding中选择UTF-8,title栏输入这本字典的名字。description栏是这本字典相关信息的描述,支持html标签,也可以不填。其他选项用默认的就行。然后点击start开始生成mdict字典。如果status栏最后出现successful 字样就说明制作成功了。
7 a6 G0 f% K2 i' y8 V' B4 h$ i, p, A3 O$ f  @. C( h
. F* r1 ?- E$ M7 O$ S/ [

) j$ Y. m. \* U2 o1 q) I) g5,        mdict电子字典的使用。+ J  s' K. }* n5 X6 R$ j0 N8 G! L
PC端支持mdict格式的电子词典工具有mdict,goldendict,推荐使用后者。安卓端有mdict和bluedict,推荐后者。ios端的有mdict。将上述生成的mdict文件(mdx和mdd,两者文件名要一致)放入合适的目录中,并在软件中将词典路径指向这个目录来添加字典,然后就可以查询使用了。
: g( p1 Q+ T9 g
% V. y) H) G- Z; ^4 R9 g
, d* S8 @. W& t/ S, |/ r

本帖子中包含更多资源

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

x

评分

2

查看全部评分

本帖被以下淘专辑推荐:

该用户从未签到

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

该用户从未签到

发表于 2015-2-22 21:56:09 | 显示全部楼层
本帖最后由 fedor 于 2015-2-22 22:10 编辑
$ N  n# I- [6 x1 P$ q" r
liuyunrushui 发表于 2015-2-20 22:423 P7 N8 d: I/ d1 a5 B
字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!/ a8 Q' D- K9 Z' Y

1 M( S, c/ J8 a; H# l" M* J字头是将每张图片的单词作为字头的,后面 ...
1 q1 R6 [) Z/ q" K

% ]) y  M/ X+ `. u( y/ e又尝试做了一下,成功了。
( K; ]6 _, C4 X0 C# r. j0 Y每张图片上的所有单词都要做索引,也是比较耗时的,这还是其次,问题是图片大些的词典在手机上就无法用了,在电脑上用还是可以的,mdict中启用图片自适应窗口,字太小,开不清单词,而如不自适应窗口,图片又太大,浏览起来特费劲,所以说还不如先裁剪大小合适的图片,这样在手机和电脑上都能用,就是费时间。
4 V1 H( r% d; ]4 ]$ h, V/ Y2 L" z. ~; T还有个问题是,将词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小。
! [5 V( n% Y. d/ w( ]下面我做的词典,在手机上的应用和在GoldenDict上应用2 q! I8 K* m+ g; O/ [7 B
截图软件为FastStoneCapturecn。* V, y( {% H& {9 F5 L
! D/ z1 D- N  T& I4 H

: j9 m1 ]3 M( K0 f: ~' P' r  s, H  z9 R+ y+ z6 e3 s

本帖子中包含更多资源

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

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

    [LV.9]以坛为家II

    发表于 2016-10-3 08:53:16 | 显示全部楼层
    有点遗憾 根本看不懂啊!
    7 L/ N& p% N- c8 }1 Q- f将此三列数据复制到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</>”,然后点击替换全部,结果如图所示:
    * P8 u3 w. }9 J. b4 G. M# n这三列数据复制到Emeditor后,也就是那三列数据,哪来的“(.+?)\t(.+?)\t(.+?)$”?不能替换!本人比较笨!教程个人觉得不详细!在excell中输入数字时,按楼主的做法,B列会多一行,请问这最后一行的数字是保留还是删除呢?& u$ C  B3 J' s" n) A

    点评

    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:31
    6 O  A8 x( y# W: U" Y8 S. T4 P3 G图片都不能全幅显示

    ' _$ h% T: k( |/ j2 q$ M  |先传到相册,然后在贴子里引用,就能全幅显示了 :D

    该用户从未签到

    发表于 2015-2-13 16:15:18 | 显示全部楼层
    支持原创教程!
    ' d- W* C7 e3 d" p8 K7 l: D/ n  q4 U
    Pdg转png是关键,很多pdf或mdx的图片质量很差,估计就是转成了jpg格式。

    该用户从未签到

    发表于 2015-2-16 01:33:27 | 显示全部楼层
    本帖最后由 chigre3 于 2015-2-16 04:36 编辑 2 r5 i- L1 N7 U  ?1 N
    * }$ p0 {- U; h5 e
    汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理把所在页面的位置(序号)标志出来.
    , H: m" B0 b# ^7 B! a之前也简略说过这事情:
      m, b- Q  l8 j5 d4 r; X图片版词典的大致样子  https://www.pdawiki.com/forum/fo ... hread&tid=13169

    该用户从未签到

    发表于 2015-2-16 01:35:03 | 显示全部楼层
    我觉得论坛其他朋友对于图片版词典不够重视, 制作好的图片版词典实际用途也很好啊!
    : K# d1 a, w& x8 B6 G, S/ D(因为没有文本版的)% Z! i- M) w% M6 O$ V
    ( j: `% Z# O' f1 }, ?
    谢谢tsiank的帖子, 还有你制作的几个词典!

    该用户从未签到

    发表于 2015-2-16 14:45:38 | 显示全部楼层
    chigre3 发表于 2015-2-16 01:33( X5 V7 o; u! t. T
    汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理 ...
    # G1 L6 s$ g( \; P
    求详细教程讲解~非常愿意学习~
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-18 17:53:52 | 显示全部楼层
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?
    - u1 y$ E2 D' {$ }/ {2 G, Y& t能否赐教呢?
    ) x9 T: g8 [7 A手机上使用的是mdict软件,用深蓝好像也是不能缩小,可以放大,用于手机屏幕限制,所以想缩小一点浏览下!
    , F$ u/ w& e4 F$ Y
    4 \. L0 M/ F  r; D" p; E" k

    该用户从未签到

     楼主| 发表于 2015-2-19 13:31:52 | 显示全部楼层
    liuyunrushui 发表于 2015-2-18 17:53
    & g, Z, E$ r% r% @% T6 ~0 `7 N感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?
    % D+ i2 j6 H1 E5 X能否赐 ...
    / K2 J" r4 q. P, ~3 q7 X& b
    把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% \) p+ t" K' k
    把width="1080px“这个1080px换成适合你手机的数即可,比如换成720px或者100%什么的。

    2 R5 F% Y% j5 A8 i' M! @) s非常感谢大大!!!!
    % B4 N9 ^0 _% `4 F新年快乐!

    该用户从未签到

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

    [LV.1]初来乍到

    发表于 2015-2-20 22:42:10 | 显示全部楼层
    fedor 发表于 2015-2-19 20:36( ]! m+ _: k: Y, w2 j6 u/ ]- g
    尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所 ...
    # j6 X/ @& C5 X3 B2 K! r* ?3 k
    字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!
    7 J0 a0 h0 b' ]9 H9 R, M) N
    1 ~; E. u/ E+ J  S字头是将每张图片的单词作为字头的,后面一列的页码是同一页。我按照楼主大大的方法成功了!  }& P! o4 i# Q  X1 G
    ( L6 U! V5 J9 D. p2 U0 \2 ~7 ~/ P
    一张张切图片,阅读起来很方便,但是很费时间呀!6 B% r7 X3 w9 y
    % j5 N, G  A% o9 n3 ?- M
    能请问一下您是用什么软件切的图片吗?

    该用户从未签到

    发表于 2015-2-23 09:27:59 | 显示全部楼层
    请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了,显示效果如下。  Q5 H2 C- F# I/ z1 }1 t; R

    本帖子中包含更多资源

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

    x

    该用户从未签到

     楼主| 发表于 2015-2-23 10:38:38 | 显示全部楼层
    fedor 发表于 2015-2-23 09:275 i) \2 Z; R( D; u* S1 Y
    请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了, ...

    # C( r: T% R' C: y手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单栏的,和我汉语大字典手机版那样的。
  • TA的每日心情
    难过
    前天 06:59
  • 签到天数: 1587 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    发表于 2015-2-24 10:12:17 | 显示全部楼层
    tsiank 发表于 2015-2-23 10:38
    # U4 D1 M* R  d! {- ^8 Z手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单 ...

    1 }# a5 {9 y, f3 G' ~0 k9 ~感谢回复!
    : U/ R; s5 O6 L% `2 w; J) H还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小,这是怎么回事?如何调整?

    该用户从未签到

     楼主| 发表于 2015-2-24 13:28:48 | 显示全部楼层
    fedor 发表于 2015-2-24 10:12* o7 P# J' E2 V6 w& C
    感谢回复!- Q, f5 f4 R4 z  r+ _5 B" x% h
    还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且 ...
    + Y. U9 K( k$ {
    不好意思,由于我的粗心,在“<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:285 i; V5 Y0 H8 s1 T3 y. }
    不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...
    + I* U5 ^  k) I
    非常感谢!!!
      \+ Y' e+ n1 u; R这回正常了。以后有问题再请教大神

    该用户从未签到

    发表于 2015-2-24 17:41:15 | 显示全部楼层
    tsiank 发表于 2015-2-24 13:28
    4 {4 I% i' }7 H; S7 d( `( W4 M不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...

    ' C) n0 l8 `/ d  U$ R不好意思,还有个问题想请教一下; W- @. p1 o* V" J1 v9 ?' b
    在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑中浏览)。
    6 ]2 ~: |8 Q* O但是PDF转为png的,或者用XnView软件统一将图片都调整为png格式的,做出的词典却浏览不出来,这是怎么回事啊。$ r3 J- O2 p& J5 [1 X
    也就是说,只能是截图另存为的图片才可以浏览,而用原来的图片或PDF转换过到png格式的,都不能浏览。

    该用户从未签到

     楼主| 发表于 2015-2-24 17:55:28 | 显示全部楼层
    fedor 发表于 2015-2-24 17:41
    : n5 Z# |$ B" x) ^& W1 W8 D% u5 v不好意思,还有个问题想请教一下
    ( V- q* ]/ u) d在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑 ...
    ) m( x1 S% F6 E3 y
    我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    该用户从未签到

    发表于 2015-2-24 19:28:14 | 显示全部楼层
    本帖最后由 fedor 于 2015-2-24 19:31 编辑
    ' A! q1 S8 U9 F
    tsiank 发表于 2015-2-24 17:55
    - ~0 U1 ^, B+ b$ w" c$ I我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    & ?  }  y, F* j" U' E
    / S6 A9 S4 X* D" _- ^5 p* q本想发给你你看看的,$ e2 a9 V2 M6 d  [4 {7 z. x" D
    但一下子又好了,问题也不知出在哪里。
    2 A: ]5 z9 ?- {- j2 i' K, ?1 l不过最后一次是这样做的。+ R3 H7 ]. f2 r, @
    我的原图是pcx格式,用XnView转为png,就正常了。$ z  G5 T( {) l) W' R
    . H: k% S$ ]7 W; G1 U
    对了,有没可以将两栏的词典拆分为一栏的软件呢?而且不影响原来图片的清晰度,给推荐下。

    该用户从未签到

     楼主| 发表于 2015-2-24 20:55:56 | 显示全部楼层
    fedor 发表于 2015-2-24 19:280 M2 n; w& i1 e3 C1 R
    本想发给你你看看的,
    0 O+ Q, B% D0 |0 |% }但一下子又好了,问题也不知出在哪里。
    ' E' l/ V1 x# }不过最后一次是这样做的。

    1 F1 F5 U7 r) oComicEnhancer Pro:http://www.comicer.com/stronghor ... tm#ComicEnhancerPro

    该用户从未签到

    发表于 2015-2-24 21:08:58 | 显示全部楼层
    tsiank 发表于 2015-2-24 20:55
    : Y) T5 Z2 \2 wComicEnhancer Pro:http://www.comicer.com/stronghorse/software/index.htm#ComicEnhancerPro
    / T4 H  l0 A4 k& `; W" C
    感谢,下来试试
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-3-28 20:58 , Processed in 0.077518 second(s), 12 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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