掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 48504|回复: 62

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

  [复制链接]

该用户从未签到

发表于 2015-2-13 09:30:10 | 显示全部楼层 |阅读模式
本帖最后由 tsiank 于 2015-10-27 01:44 编辑 3 I8 n% Q5 E& H  M0 E$ I

1 G; y' m0 Y8 @0 `& V此贴原在国学数典发过,有网友因为注册等原因在上面看不到,所以就在此论坛转贴一下,不足之处请指正。
# Z+ \# Z' R4 _' h
  p6 R1 D7 E0 C+ e图像版mdict字典制作方法
  w; v9 h2 z7 M( m4 x9 i% P( m6 b( Z- \4 x7 k
本人不才,先后制作了《汉语大字典》、《汉语大词典》《王力古汉语字典》等图片版的mdict字典。现在应网友的要求,将其制作方法发布出来,希望能有同仁制作出更多的汉语或其他语言的字典。! f* e' @' S5 o6 P) v3 d

- l6 W/ ]3 A( @6 i( ^; F( @5 J* R) P制作mdict字典的图片版,要有两个前提:1,比较清晰的电子书;2,有字头与页码对应的数据。几个工具:电子书转图片工具:Pdg2Pic ,DJVUTOY,或adobe acrobat pro ;
' M7 u+ }* u; `% r# s文字处理工具:excel和支持正则表达式的文本工具,这里我用EmEditor;生成mdict字典格式的工具:MdxBuilder。6 t  y! ]# p9 I" W  i2 q
. I/ ]# t: i8 k5 D+ X' f* o% e( i
下面以制作王力古汉语字典为例,说明其制作过程:# \% `2 i: r' ~9 y0 o$ d3 P3 x
1,        将电子书拆分为单页图片。
& C  H$ K9 _+ a) ~% s现有的电子书格式一般有PDG,DJVU以及PDF,制作电子字典,一本书有好几种格式的话,首选PDG格式的。因为用这个格式转成的png图片,不仅清晰,而且尺寸刚好合适,可直接在苹果设备中使用(ios中mdict电子字典,其图片尺寸若超过2400*2400便无法显示)。: q0 D2 C, o0 |/ z; d% T/ ?
' g8 u% }' S) z6 h
如果电子书是PDG格式的,用Pdg2Pic这个工具转为png,如图:
5 f6 P6 Z, c: S+ X* D   f& @0 v2 i! w

$ ~# v! \! H# J* B6 L# t' p4 K3 s* N2 {那个参数设置只需选图像存为png就行,其他不用变。生成图像后,可以根据需要用文件批量改名工具修改一下文件名,也就是页码。比如我们把正文的页码(也就是以纯数字开头的文件)放在一起,图中的页码都是6位数的,将其改成4位数,并在文件名前加几个字母(这里加个WLG)以与其他字典的页码相区别。如图:
- z  R5 Q  l# W3 {/ }% M% b  D: y8 j5 g- X

1 ~7 X, Q% w6 B. |) T; k+ x
2 \$ g1 E0 F8 ?/ u9 ?) }将附录和其他的页码放在一起,根据需要进行修改,比如也改成4位数并在前面加上WLGF几个字母,方法同上。
5 Q- [( f) D* F# A7 c/ }" v9 ~- P  d3 a5 z
如果电子书是DJVU格式的,用DjVuToy这个工具中的转图像选项转为png。4 u1 t1 Y/ u; E9 S

9 |$ R% d1 A0 d
! R# e8 Q. M4 l- Z如果电子书是PDF格式的,那可以用adobe acrobat pro直接导出为png。# w) u! ^+ p+ ~# t0 `0 e# \9 f
需要注意的是后两者转换后的png尺寸并不一致,生成的mdict可能会在ios上无法显示,如果想在ios上使用,就需要使用另外的图像处理工具调整png的尺寸了。
, Z; q/ t: `0 z0 g) W  U# g2 ~; ~  Z( ]; K' z
2,        页码的处理:6 W" s% E8 H. H7 [8 I( L
首先,在excel中根据字典正文的页码数输入一列页码数据,原字典是多少页,这里就输入多少个(王力古汉语字典正文页码到1817页)。然后将此列数据分别复制一份到B列和C列,在B1插入一个空单元格,数据与B2同。把C1删除,并在C列最后一行的单元格输入与上个单元格相同的数据,最终数据如图所示:
$ X9 X7 K0 L# D  U& \0 g
2 k% F/ P, q# z2 B1 z  G- c/ y! A
1 g6 U& F9 h1 e  A将此三列数据复制到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 U9 V/ s" |# R& D. `) m ( p2 a1 {, L9 d( l! I3 Z& l0 ]3 P
最后将这个文件以UTF-8的格式先保存。
$ b& K2 F* e/ R2 Q2 E4 e6 I& l . o2 p, C1 R9 S' |  L

! ]" m7 h% F; M. d: p% v: Z7 H, I对于附录以及其他页码的处理同上,只不过替换中的WLG三个字母要改成WLGF,处理完毕后将其文本复制到已保存的王力古汉语字典.txt中并再次保存。; }5 s$ l- d% [- h" n! j2 [

' R' C& L" c( x& }  ?3,        字头的处理:
& j0 n1 M: ^/ V# G, i1 q将字头与页码在excel中整理成如下所示:
6 H: w$ V# M1 e8 m7 {+ [2 I) n: ?- k- `' s& j3 i! e
将其复制到EmEditor中(首行不要),在查找栏中输入“(.+?)\t(.+?)$”,在替换栏中输入“\1\n@@@LINK=WLG\2\n</>”,点全部替换,结果如图所示:+ N$ j% j. P  z! d

! R' g# g! t& n将其结果复制到王力古汉语字典.txt中,注意与前面的内容不要有空行,点击保存。这样文本就处理完毕了。- D. F( ~/ P  N% ?: s) W
: E+ l% g( w9 S: M  Y
4,        转换成mdict格式的字典。
6 t* m. c* A0 G$ V" Q# J0 p打开MdxBuilder.exe,在source栏中输入刚才保存的文本所在路径及名字,在target栏中输入要生成的mdict格式的字典所在路径及名字,扩展名是.mdx,在data栏中输入第1 步制作的图片的所在位置。original format选择mdict(html),encoding中选择UTF-8,title栏输入这本字典的名字。description栏是这本字典相关信息的描述,支持html标签,也可以不填。其他选项用默认的就行。然后点击start开始生成mdict字典。如果status栏最后出现successful 字样就说明制作成功了。
+ n; R+ T( a/ u: g3 Y! g% |2 C5 I- t5 {! S) o
" m" F$ F' |3 c

) J! U, V# _, E5,        mdict电子字典的使用。/ I  o' v# Q9 l2 O
PC端支持mdict格式的电子词典工具有mdict,goldendict,推荐使用后者。安卓端有mdict和bluedict,推荐后者。ios端的有mdict。将上述生成的mdict文件(mdx和mdd,两者文件名要一致)放入合适的目录中,并在软件中将词典路径指向这个目录来添加字典,然后就可以查询使用了。
5 D- b4 I! p0 k+ g& B/ `& [
4 H- Y4 [; l$ [9 x6 V- G4 Q3 |4 _  j4 u9 t' h

本帖子中包含更多资源

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

x

评分

3

查看全部评分

本帖被以下淘专辑推荐:

该用户从未签到

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

该用户从未签到

发表于 2015-2-22 21:56:09 | 显示全部楼层
本帖最后由 fedor 于 2015-2-22 22:10 编辑
* }3 {- X+ Q6 v3 Y
liuyunrushui 发表于 2015-2-20 22:42
+ k; g7 K6 F" @8 o5 b' X字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!+ p$ t: d2 U7 Y, f; {6 T

+ i4 W6 w( d! {6 g4 z7 I# L字头是将每张图片的单词作为字头的,后面 ...

6 `1 F2 Q4 Q& M) }1 e% _  C: [- d* M+ T4 ]4 h  V$ U
又尝试做了一下,成功了。
' M3 g# k/ L+ k+ s) c+ D; D, y. r$ H每张图片上的所有单词都要做索引,也是比较耗时的,这还是其次,问题是图片大些的词典在手机上就无法用了,在电脑上用还是可以的,mdict中启用图片自适应窗口,字太小,开不清单词,而如不自适应窗口,图片又太大,浏览起来特费劲,所以说还不如先裁剪大小合适的图片,这样在手机和电脑上都能用,就是费时间。* V- ^8 j% d! s6 b7 \: ]1 C
还有个问题是,将词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小。. ~0 k0 G8 I" ]/ a! [8 E/ E
下面我做的词典,在手机上的应用和在GoldenDict上应用
6 a: j$ g! x) W4 X1 Q截图软件为FastStoneCapturecn。
+ E2 \2 L) R( c0 ^1 v# K' ]4 b. z8 Z, a8 r6 _/ z: x' k

2 }1 Y1 c! k) W5 K- U
4 k  q' j2 r4 ?. l

本帖子中包含更多资源

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

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

    [LV.9]以坛为家II

    发表于 2016-10-3 08:53:16 | 显示全部楼层
    有点遗憾 根本看不懂啊!1 D# b. d9 Q3 v) v" _9 a( 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</>”,然后点击替换全部,结果如图所示:9 {* M: k+ M, a( U, [3 \% f
    这三列数据复制到Emeditor后,也就是那三列数据,哪来的“(.+?)\t(.+?)\t(.+?)$”?不能替换!本人比较笨!教程个人觉得不详细!在excell中输入数字时,按楼主的做法,B列会多一行,请问这最后一行的数字是保留还是删除呢?
    1 y5 Z' j, _9 Q! {% E

    点评

    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
    ; g7 Y  D; i+ c: e, \8 |图片都不能全幅显示
    - a6 U2 g% a5 i' H" u: Z0 ^; ^4 a
    先传到相册,然后在贴子里引用,就能全幅显示了 :D

    该用户从未签到

    发表于 2015-2-13 16:15:18 | 显示全部楼层
    支持原创教程!
    & y$ W* T+ ]- c; _8 O5 @; ?$ n2 Y3 _9 x* k5 Y3 z+ o/ P1 X
    Pdg转png是关键,很多pdf或mdx的图片质量很差,估计就是转成了jpg格式。

    该用户从未签到

    发表于 2015-2-16 01:33:27 | 显示全部楼层
    本帖最后由 chigre3 于 2015-2-16 04:36 编辑
    8 R  a/ D- |2 M; @7 N; _6 G7 i$ l9 P+ R: P2 D0 s3 x8 r
    汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理把所在页面的位置(序号)标志出来.3 f1 X# _6 W3 o9 h! c/ B
    之前也简略说过这事情:( B3 P. T, A& z0 Q' Y
    图片版词典的大致样子  https://www.pdawiki.com/forum/fo ... hread&tid=13169

    该用户从未签到

    发表于 2015-2-16 01:35:03 | 显示全部楼层
    我觉得论坛其他朋友对于图片版词典不够重视, 制作好的图片版词典实际用途也很好啊!& l; R6 c  ?* u
    (因为没有文本版的)
    ' k% L: V5 u4 s" S0 O
    ' C' Q3 r: ~0 p1 k$ B! \) o谢谢tsiank的帖子, 还有你制作的几个词典!

    该用户从未签到

    发表于 2015-2-16 14:45:38 | 显示全部楼层
    chigre3 发表于 2015-2-16 01:33
      j4 M, A" |7 \. K. ^5 R汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理 ...

    % O# e! d+ H1 D( A2 w求详细教程讲解~非常愿意学习~
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-18 17:53:52 | 显示全部楼层
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?
    * B/ H5 w* w. R4 n! z能否赐教呢?% U/ K! `% b  n8 o7 t" p5 x
    手机上使用的是mdict软件,用深蓝好像也是不能缩小,可以放大,用于手机屏幕限制,所以想缩小一点浏览下!9 T( u0 P) F: J0 B

    9 Z6 s1 [' Z0 f7 x! X

    该用户从未签到

     楼主| 发表于 2015-2-19 13:31:52 | 显示全部楼层
    liuyunrushui 发表于 2015-2-18 17:536 Q) n. Q  ?& Y' k" U* N
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?
    8 |5 H4 e0 U$ l1 L能否赐 ...

    ' h- x3 Q$ ?7 X( N# T把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
    4 Y" i7 {: _" b) f) @把width="1080px“这个1080px换成适合你手机的数即可,比如换成720px或者100%什么的。
    ) z& B3 r. c1 p7 I
    非常感谢大大!!!!" X+ ^0 V2 \8 H4 y
    新年快乐!

    该用户从未签到

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

    [LV.1]初来乍到

    发表于 2015-2-20 22:42:10 | 显示全部楼层
    fedor 发表于 2015-2-19 20:36
    $ B$ x$ @; J! N4 e+ {3 z尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所 ...
    1 L% R; n  ~  z9 |  N; d- J
    字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!6 L. K4 e- Y5 V1 @: S; T

    & E. k+ h, v+ ~3 H6 i字头是将每张图片的单词作为字头的,后面一列的页码是同一页。我按照楼主大大的方法成功了!! m: }% m- v1 H
    1 M4 F  R" X- a6 y
    一张张切图片,阅读起来很方便,但是很费时间呀!
    & q& y# R- P8 F( u# N% ~8 g; m1 u( q% h. _
    能请问一下您是用什么软件切的图片吗?

    该用户从未签到

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

    本帖子中包含更多资源

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

    x

    该用户从未签到

     楼主| 发表于 2015-2-23 10:38:38 | 显示全部楼层
    fedor 发表于 2015-2-23 09:27
    ) q% S8 }% w" e/ J请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了, ...

    ( d# B7 E; j8 \  Z手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单栏的,和我汉语大字典手机版那样的。
  • TA的每日心情
    难过
    昨天 07:25
  • 签到天数: 1938 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    发表于 2015-2-24 10:12:17 | 显示全部楼层
    tsiank 发表于 2015-2-23 10:388 G5 H1 w9 i; P
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单 ...

    0 Y' W2 b3 }9 [* y2 C4 v' Q感谢回复!
    4 o; I& g: O4 O; t还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小,这是怎么回事?如何调整?

    该用户从未签到

     楼主| 发表于 2015-2-24 13:28:48 | 显示全部楼层
    fedor 发表于 2015-2-24 10:12
    ( c  W  O* R0 n2 G8 O7 }感谢回复!$ b% S9 ?+ J, j
    还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且 ...

    * K* o1 h! `2 G不好意思,由于我的粗心,在“<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+ P$ N5 H3 R! r7 Q" `- i
    不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...
    * i, v, y7 B2 c, v: r/ f7 O
    非常感谢!!!6 n3 b# h" B8 T
    这回正常了。以后有问题再请教大神

    该用户从未签到

    发表于 2015-2-24 17:41:15 | 显示全部楼层
    tsiank 发表于 2015-2-24 13:288 ?* s$ |6 r/ f
    不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...

    8 J& f9 p7 O6 T& v不好意思,还有个问题想请教一下
    7 S6 ^" C1 d; e: }在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑中浏览)。
    ! t3 _# E" y5 W5 e但是PDF转为png的,或者用XnView软件统一将图片都调整为png格式的,做出的词典却浏览不出来,这是怎么回事啊。
    $ q" H; e+ `9 o, i7 [/ @也就是说,只能是截图另存为的图片才可以浏览,而用原来的图片或PDF转换过到png格式的,都不能浏览。

    该用户从未签到

     楼主| 发表于 2015-2-24 17:55:28 | 显示全部楼层
    fedor 发表于 2015-2-24 17:414 y; r+ z" O5 }
    不好意思,还有个问题想请教一下' D3 I( q5 y5 W7 O/ i$ u' t
    在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑 ...
    5 O3 m# z  L  V8 t
    我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    该用户从未签到

    发表于 2015-2-24 19:28:14 | 显示全部楼层
    本帖最后由 fedor 于 2015-2-24 19:31 编辑
    1 P2 W2 J, Z* F. ?2 b
    tsiank 发表于 2015-2-24 17:55
    ; z$ {8 H: t8 y我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    8 f, i4 T" v, G& J. ~" I( x7 ]# _) C, K( C' o" X
    本想发给你你看看的,
    ; S- M% v, l7 N0 N* c0 P( e% `但一下子又好了,问题也不知出在哪里。
    , ]- C- u2 D" B) p2 f不过最后一次是这样做的。
    0 R: w; Z$ J$ A我的原图是pcx格式,用XnView转为png,就正常了。
    - c9 r4 `  Q6 f0 C4 s' C, y( ?, |% X& }) a& C% _
    对了,有没可以将两栏的词典拆分为一栏的软件呢?而且不影响原来图片的清晰度,给推荐下。

    该用户从未签到

     楼主| 发表于 2015-2-24 20:55:56 | 显示全部楼层
    fedor 发表于 2015-2-24 19:28- k: s4 K2 A. s; q/ |' S; O
    本想发给你你看看的,
    - U; Y  _' B7 z/ v" m( n; A但一下子又好了,问题也不知出在哪里。
    ; t& J) t1 u# V6 s- z不过最后一次是这样做的。

    & W9 S& }' d$ b/ ~% vComicEnhancer Pro:http://www.comicer.com/stronghor ... tm#ComicEnhancerPro

    该用户从未签到

    发表于 2015-2-24 21:08:58 | 显示全部楼层
    tsiank 发表于 2015-2-24 20:55
    2 G& y* Z( o; q( xComicEnhancer Pro:http://www.comicer.com/stronghorse/software/index.htm#ComicEnhancerPro

    # r9 Y& `" V' V8 ^0 x感谢,下来试试
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2025-5-18 04:07 , Processed in 0.026045 second(s), 26 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

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