掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 44436|回复: 61

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

  [复制链接]

该用户从未签到

发表于 2015-2-13 09:30:10 | 显示全部楼层 |阅读模式
本帖最后由 tsiank 于 2015-10-27 01:44 编辑 5 D" Q$ _/ k7 b2 A  c
: g3 W, Z8 W- L* X1 b) \+ d
此贴原在国学数典发过,有网友因为注册等原因在上面看不到,所以就在此论坛转贴一下,不足之处请指正。. G; l, h' J( c3 H1 ?6 T4 K$ S! {7 _
+ t( ]2 {( x" {# T6 g
图像版mdict字典制作方法0 E- z, }5 ~* d, X3 A5 t
$ j1 I, [. _. i% \
本人不才,先后制作了《汉语大字典》、《汉语大词典》《王力古汉语字典》等图片版的mdict字典。现在应网友的要求,将其制作方法发布出来,希望能有同仁制作出更多的汉语或其他语言的字典。# |4 r& ^" [+ v; r  m# P5 I  F

, |# B: [! O. s6 ?% T6 {- v, A$ v制作mdict字典的图片版,要有两个前提:1,比较清晰的电子书;2,有字头与页码对应的数据。几个工具:电子书转图片工具:Pdg2Pic ,DJVUTOY,或adobe acrobat pro ;+ e* A- `! L% y& c) n4 A+ z6 f
文字处理工具:excel和支持正则表达式的文本工具,这里我用EmEditor;生成mdict字典格式的工具:MdxBuilder。+ I7 S% r2 @: u1 l9 Y

$ q& L  I* D8 Y/ x( t! `下面以制作王力古汉语字典为例,说明其制作过程:6 o) F% Y3 Z& ^  V
1,        将电子书拆分为单页图片。
, p5 z* }# Q" L: j/ t! s现有的电子书格式一般有PDG,DJVU以及PDF,制作电子字典,一本书有好几种格式的话,首选PDG格式的。因为用这个格式转成的png图片,不仅清晰,而且尺寸刚好合适,可直接在苹果设备中使用(ios中mdict电子字典,其图片尺寸若超过2400*2400便无法显示)。, |+ [% z6 l9 `# G$ S& ?
7 l. A$ q& M& k6 h) A
如果电子书是PDG格式的,用Pdg2Pic这个工具转为png,如图: ) ^1 C; L! s/ `; ^1 Z6 l' A2 Y
8 O6 ^7 E/ u% S5 P+ O
/ [/ y) Q# o/ E& ^' P
那个参数设置只需选图像存为png就行,其他不用变。生成图像后,可以根据需要用文件批量改名工具修改一下文件名,也就是页码。比如我们把正文的页码(也就是以纯数字开头的文件)放在一起,图中的页码都是6位数的,将其改成4位数,并在文件名前加几个字母(这里加个WLG)以与其他字典的页码相区别。如图:
9 O0 C/ q9 M; @
  D. N/ l+ S* g5 ~* }7 g5 W
$ ~6 t7 h9 e% g! `  I6 t1 K+ S   s7 g/ g) [8 f
将附录和其他的页码放在一起,根据需要进行修改,比如也改成4位数并在前面加上WLGF几个字母,方法同上。: s& b- J7 V0 p" g2 g$ N

5 d- l' S! |  Z* i, n% A% O- N如果电子书是DJVU格式的,用DjVuToy这个工具中的转图像选项转为png。  u. x  z0 }- o- L7 O: }
8 o9 h! M2 P' U! u5 ~4 I
: U. j) |0 [" U! r; \1 z  b4 V' X
如果电子书是PDF格式的,那可以用adobe acrobat pro直接导出为png。/ F  O/ i5 K  G6 s- {& L5 Y) a1 |
需要注意的是后两者转换后的png尺寸并不一致,生成的mdict可能会在ios上无法显示,如果想在ios上使用,就需要使用另外的图像处理工具调整png的尺寸了。) _; [9 M+ r" E5 Z( l
$ o! r: S5 O5 D+ v
2,        页码的处理:
0 W5 @/ h" o8 `. j4 i4 _& ?首先,在excel中根据字典正文的页码数输入一列页码数据,原字典是多少页,这里就输入多少个(王力古汉语字典正文页码到1817页)。然后将此列数据分别复制一份到B列和C列,在B1插入一个空单元格,数据与B2同。把C1删除,并在C列最后一行的单元格输入与上个单元格相同的数据,最终数据如图所示:
6 s+ a9 i2 x  O- m1 D* W' E 1 C- [; t, p9 z3 P# I

$ g3 @; N  ]; [  p* Z  b9 K6 j将此三列数据复制到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</>”,然后点击替换全部,结果如图所示:* h) x6 R9 ]' o% p

/ ?9 t  W" z; w- S* V最后将这个文件以UTF-8的格式先保存。& v) v/ P0 [8 K1 R! @
3 ?7 ~2 x* o. j* Q/ D
, W# s. z8 W% B5 B/ m8 c7 V
对于附录以及其他页码的处理同上,只不过替换中的WLG三个字母要改成WLGF,处理完毕后将其文本复制到已保存的王力古汉语字典.txt中并再次保存。% u, Y7 a" `8 A- Y
  E: Z& J; p! u$ q
3,        字头的处理:
. x$ g% X& T; {- f将字头与页码在excel中整理成如下所示:! ^. C4 s1 d" H0 t

9 j% U* t- |$ O 将其复制到EmEditor中(首行不要),在查找栏中输入“(.+?)\t(.+?)$”,在替换栏中输入“\1\n@@@LINK=WLG\2\n</>”,点全部替换,结果如图所示:
4 M7 F3 V7 j5 v
! n3 D* x- y/ w" ?( X1 o将其结果复制到王力古汉语字典.txt中,注意与前面的内容不要有空行,点击保存。这样文本就处理完毕了。
. s# X. J) o" w* ?
3 x- m5 f7 s7 P& G7 x$ X* v: ]% V) B4,        转换成mdict格式的字典。# j1 T* M: C9 B$ `3 [# w
打开MdxBuilder.exe,在source栏中输入刚才保存的文本所在路径及名字,在target栏中输入要生成的mdict格式的字典所在路径及名字,扩展名是.mdx,在data栏中输入第1 步制作的图片的所在位置。original format选择mdict(html),encoding中选择UTF-8,title栏输入这本字典的名字。description栏是这本字典相关信息的描述,支持html标签,也可以不填。其他选项用默认的就行。然后点击start开始生成mdict字典。如果status栏最后出现successful 字样就说明制作成功了。8 q$ a& z( K7 p! Z1 l
5 w7 {( n# D$ t! P: a2 s
$ m) W. \8 L, Z+ d* d  L

  A6 U; G4 n1 l5 u- @7 q( Z: F5,        mdict电子字典的使用。
) Y3 i8 t/ ]$ u1 {& c% OPC端支持mdict格式的电子词典工具有mdict,goldendict,推荐使用后者。安卓端有mdict和bluedict,推荐后者。ios端的有mdict。将上述生成的mdict文件(mdx和mdd,两者文件名要一致)放入合适的目录中,并在软件中将词典路径指向这个目录来添加字典,然后就可以查询使用了。
! X. Q9 O3 k' j' O+ R 9 Z: h+ b- }( b. q0 ~

; N+ C6 C! L$ a: j. H) N

本帖子中包含更多资源

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

x

评分

2

查看全部评分

本帖被以下淘专辑推荐:

该用户从未签到

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

该用户从未签到

发表于 2015-2-22 21:56:09 | 显示全部楼层
本帖最后由 fedor 于 2015-2-22 22:10 编辑
$ |1 q& _  E  s3 @
liuyunrushui 发表于 2015-2-20 22:42) m2 |* A  t. J. y* A8 w. y
字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!9 g* x9 I! ~* `7 s2 a

0 ^, m$ _" f; p字头是将每张图片的单词作为字头的,后面 ...
0 b8 [' \  D$ T$ W. R+ v& ~1 i& W
' ]  E( p% @! a* D( T0 W+ @0 F
又尝试做了一下,成功了。. S0 m  Y: e3 t; Y
每张图片上的所有单词都要做索引,也是比较耗时的,这还是其次,问题是图片大些的词典在手机上就无法用了,在电脑上用还是可以的,mdict中启用图片自适应窗口,字太小,开不清单词,而如不自适应窗口,图片又太大,浏览起来特费劲,所以说还不如先裁剪大小合适的图片,这样在手机和电脑上都能用,就是费时间。
% n: i% ?, M8 ]0 m9 ?% x还有个问题是,将词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小。
5 S; X& N& L" w! Q, I3 ~下面我做的词典,在手机上的应用和在GoldenDict上应用% f. Z. @4 G9 x/ D+ n$ P
截图软件为FastStoneCapturecn。5 p9 Z& M5 V8 p; d+ j

" R0 w5 o8 G7 k6 n0 V8 c8 |4 I- L  D. a2 C) Y+ I1 {2 E

- r  [, C+ J+ |5 B  [4 a

本帖子中包含更多资源

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

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

    [LV.9]以坛为家II

    发表于 2016-10-3 08:53:16 | 显示全部楼层
    有点遗憾 根本看不懂啊!9 I& t& z$ S0 H; ?
    将此三列数据复制到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</>”,然后点击替换全部,结果如图所示:) N$ U- E9 o0 @# Z
    这三列数据复制到Emeditor后,也就是那三列数据,哪来的“(.+?)\t(.+?)\t(.+?)$”?不能替换!本人比较笨!教程个人觉得不详细!在excell中输入数字时,按楼主的做法,B列会多一行,请问这最后一行的数字是保留还是删除呢?6 K1 ?$ ?" [  a" x$ F

    点评

    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:316 t( A3 l' Z- F- H1 d
    图片都不能全幅显示
    0 E" M3 k/ @7 i5 W( D; d0 s  H
    先传到相册,然后在贴子里引用,就能全幅显示了 :D

    该用户从未签到

    发表于 2015-2-13 16:15:18 | 显示全部楼层
    支持原创教程!3 E4 N/ S/ m( l9 }0 G0 e9 a

    . b5 U( _/ F6 J# r6 `9 @  \" mPdg转png是关键,很多pdf或mdx的图片质量很差,估计就是转成了jpg格式。

    该用户从未签到

    发表于 2015-2-16 01:33:27 | 显示全部楼层
    本帖最后由 chigre3 于 2015-2-16 04:36 编辑 , z9 R( n( ~: A/ B2 o+ z7 T$ E0 C

    - T: l$ _9 {- ]汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理把所在页面的位置(序号)标志出来.
    4 \. D* T6 ]# X9 g, j之前也简略说过这事情:# m9 o! q4 G% o: K
    图片版词典的大致样子  https://www.pdawiki.com/forum/fo ... hread&tid=13169

    该用户从未签到

    发表于 2015-2-16 01:35:03 | 显示全部楼层
    我觉得论坛其他朋友对于图片版词典不够重视, 制作好的图片版词典实际用途也很好啊!
    ' v  B% E% i7 K0 X8 D(因为没有文本版的)
    - |. W! q$ |, I5 L6 j) R3 N& M+ i
    ) g. S$ }  [8 g+ n- `+ l谢谢tsiank的帖子, 还有你制作的几个词典!

    该用户从未签到

    发表于 2015-2-16 14:45:38 | 显示全部楼层
    chigre3 发表于 2015-2-16 01:33
    " [9 v$ h- O+ R1 u+ L6 S* e汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理 ...
    + Q# |4 W, w3 f. C* G. _
    求详细教程讲解~非常愿意学习~
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-18 17:53:52 | 显示全部楼层
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?
    ' C! ]' |( x4 f# y4 A6 s. b+ l9 `能否赐教呢?
    8 g* T( W. r: i手机上使用的是mdict软件,用深蓝好像也是不能缩小,可以放大,用于手机屏幕限制,所以想缩小一点浏览下!* y7 |( C; I; M( z, o# [  f: c
    5 h+ R* h6 x7 |* |- n. v! r; z4 e

    该用户从未签到

     楼主| 发表于 2015-2-19 13:31:52 | 显示全部楼层
    liuyunrushui 发表于 2015-2-18 17:53
    ; X: K% i; Q. D2 a8 I2 @. @感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?
    6 p0 m* z$ T# l能否赐 ...
    * ]! k" l% G7 S* 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:318 h9 i" Z7 r4 _! {+ U; W( @
    把width="1080px“这个1080px换成适合你手机的数即可,比如换成720px或者100%什么的。

    $ Y- F, w" o1 x4 C% c7 w1 @非常感谢大大!!!!
    - c2 u1 r% X, L( t新年快乐!

    该用户从未签到

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

    [LV.1]初来乍到

    发表于 2015-2-20 22:42:10 | 显示全部楼层
    fedor 发表于 2015-2-19 20:368 M4 R7 Q" d4 c" i6 [4 T' ]
    尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所 ...

    & _/ ]! V8 s" M8 ?字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!7 D8 O4 _  P# k# u2 q3 Z
      t, ^, Z% L% a- _, g- S4 b- i
    字头是将每张图片的单词作为字头的,后面一列的页码是同一页。我按照楼主大大的方法成功了!/ ?- a1 c$ i. v* s* }8 u& S
    8 k! k9 K4 }' K
    一张张切图片,阅读起来很方便,但是很费时间呀!
    ; L& `) n5 a, h* Z/ F. s; [8 _# p) l. k
    能请问一下您是用什么软件切的图片吗?

    该用户从未签到

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

    本帖子中包含更多资源

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

    x

    该用户从未签到

     楼主| 发表于 2015-2-23 10:38:38 | 显示全部楼层
    fedor 发表于 2015-2-23 09:27/ k. N( p; k% x/ E3 x) n
    请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了, ...
    % j3 j: y; v  F2 [  U5 K
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单栏的,和我汉语大字典手机版那样的。
  • TA的每日心情
    难过
    昨天 07:55
  • 签到天数: 1609 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    发表于 2015-2-24 10:12:17 | 显示全部楼层
    tsiank 发表于 2015-2-23 10:383 e. v2 z* S. ]: B% @8 h' L
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单 ...
    6 x4 E, M) \2 B4 ^
    感谢回复!+ G) V2 |# y6 F+ d* u
    还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小,这是怎么回事?如何调整?

    该用户从未签到

     楼主| 发表于 2015-2-24 13:28:48 | 显示全部楼层
    fedor 发表于 2015-2-24 10:12
    5 @$ D: |* v; m! @8 B. i$ }! Y1 }, _感谢回复!
    . u2 E" Y) h" R$ Q还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且 ...
    - |- g% w+ _: _
    不好意思,由于我的粗心,在“<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& m1 O' @3 x- q# _" O8 E6 O
    不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...

    * _) ?: {& `/ f8 V, W非常感谢!!!8 X* f/ X8 C9 ^! w' {# ~- R
    这回正常了。以后有问题再请教大神

    该用户从未签到

    发表于 2015-2-24 17:41:15 | 显示全部楼层
    tsiank 发表于 2015-2-24 13:28
    5 ?, B% J( u! p* ^3 L$ M不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...

    ; f) Z4 T. ^- L4 S/ |不好意思,还有个问题想请教一下
    2 q1 _1 f( G% Z( J在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑中浏览)。
    0 Y& L+ u6 C) N4 I* l但是PDF转为png的,或者用XnView软件统一将图片都调整为png格式的,做出的词典却浏览不出来,这是怎么回事啊。* ]$ M* z; N' [' F
    也就是说,只能是截图另存为的图片才可以浏览,而用原来的图片或PDF转换过到png格式的,都不能浏览。

    该用户从未签到

     楼主| 发表于 2015-2-24 17:55:28 | 显示全部楼层
    fedor 发表于 2015-2-24 17:41) ]5 N1 P/ r& l: e
    不好意思,还有个问题想请教一下
    - j8 \+ ?; s: N9 c5 Y5 x4 U1 {在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑 ...
    . g+ ~5 S5 B+ S% d2 V( l1 [
    我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    该用户从未签到

    发表于 2015-2-24 19:28:14 | 显示全部楼层
    本帖最后由 fedor 于 2015-2-24 19:31 编辑
    ' {# m9 r" n9 M! L
    tsiank 发表于 2015-2-24 17:55
    3 o6 E" S, `+ }( X: H, f我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

      f6 E' [/ e9 y1 U  S( B! Z& u. J7 r. J& Y1 O; N
    本想发给你你看看的,
    ; e. I7 q( B; X9 f+ Y但一下子又好了,问题也不知出在哪里。
    " ^/ H+ Q$ n8 c不过最后一次是这样做的。6 H7 D, ?/ l# J6 r& K& @; T
    我的原图是pcx格式,用XnView转为png,就正常了。
    $ N7 c" O  `+ E7 W
    # d" ], m. N  o对了,有没可以将两栏的词典拆分为一栏的软件呢?而且不影响原来图片的清晰度,给推荐下。

    该用户从未签到

     楼主| 发表于 2015-2-24 20:55:56 | 显示全部楼层
    fedor 发表于 2015-2-24 19:28' Q  X# ^) a% Y, F; O% a
    本想发给你你看看的,
    / i% V4 P2 `6 [& h# X/ Z但一下子又好了,问题也不知出在哪里。" c# P! W7 \5 R$ o+ Q! L
    不过最后一次是这样做的。
    - M1 Z& K; o) a$ X2 Q* r6 M
    ComicEnhancer Pro:http://www.comicer.com/stronghor ... tm#ComicEnhancerPro

    该用户从未签到

    发表于 2015-2-24 21:08:58 | 显示全部楼层
    tsiank 发表于 2015-2-24 20:55
    0 M# U  T8 V- lComicEnhancer Pro:http://www.comicer.com/stronghorse/software/index.htm#ComicEnhancerPro
    + c0 h4 _( e! a
    感谢,下来试试
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-4-29 03:58 , Processed in 0.054873 second(s), 10 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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