掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 54083|回复: 62

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

  [复制链接]

该用户从未签到

发表于 2015-2-13 09:30:10 | 显示全部楼层 |阅读模式
本帖最后由 tsiank 于 2015-10-27 01:44 编辑
- b& H, o# T6 L* q. ?3 c' ~' i1 S/ t9 S! f* B! j( u5 c, G
此贴原在国学数典发过,有网友因为注册等原因在上面看不到,所以就在此论坛转贴一下,不足之处请指正。
6 f* D4 t+ u( R( w( |0 x5 X. K% m
图像版mdict字典制作方法
& V. N; ?" o  o9 j% Z4 n3 R9 A) r5 u4 w9 {' B$ b
本人不才,先后制作了《汉语大字典》、《汉语大词典》《王力古汉语字典》等图片版的mdict字典。现在应网友的要求,将其制作方法发布出来,希望能有同仁制作出更多的汉语或其他语言的字典。- b9 y! |8 `3 `; {. N$ O

0 e: \# R  V: X8 P; S! Z) _4 S+ J' \1 b制作mdict字典的图片版,要有两个前提:1,比较清晰的电子书;2,有字头与页码对应的数据。几个工具:电子书转图片工具:Pdg2Pic ,DJVUTOY,或adobe acrobat pro ;: [9 X, M# _6 R3 V2 G+ ^
文字处理工具:excel和支持正则表达式的文本工具,这里我用EmEditor;生成mdict字典格式的工具:MdxBuilder。
5 A9 P, Y8 Y- `5 o$ f
: {1 z8 c! M4 ?: I) {# g$ w. k1 z1 k下面以制作王力古汉语字典为例,说明其制作过程:
- H& m5 M- l3 K4 Z# R; k1,        将电子书拆分为单页图片。
) O, Y8 i. x) G现有的电子书格式一般有PDG,DJVU以及PDF,制作电子字典,一本书有好几种格式的话,首选PDG格式的。因为用这个格式转成的png图片,不仅清晰,而且尺寸刚好合适,可直接在苹果设备中使用(ios中mdict电子字典,其图片尺寸若超过2400*2400便无法显示)。
, j. y7 @% G! H9 ^8 J3 c! c3 r) b6 I4 A: S7 |: q# d, N( n; D0 k
如果电子书是PDG格式的,用Pdg2Pic这个工具转为png,如图:
, v1 E$ ]8 a2 i! H) i
9 q5 P1 p# c4 ]: ^3 }
# p3 t$ A$ ?( a- n3 T那个参数设置只需选图像存为png就行,其他不用变。生成图像后,可以根据需要用文件批量改名工具修改一下文件名,也就是页码。比如我们把正文的页码(也就是以纯数字开头的文件)放在一起,图中的页码都是6位数的,将其改成4位数,并在文件名前加几个字母(这里加个WLG)以与其他字典的页码相区别。如图:
! O3 k  z4 X  `" ~& U5 v7 @
! b; a, }4 }! p# ]8 @9 u, B1 Z' t3 `' u6 l; a) J* S  ]

% p2 N& y4 ]' |将附录和其他的页码放在一起,根据需要进行修改,比如也改成4位数并在前面加上WLGF几个字母,方法同上。8 |# F1 N$ w0 K7 T- C5 m2 E: O
9 P/ x2 r/ O7 Q% E/ o" t" j/ d- k
如果电子书是DJVU格式的,用DjVuToy这个工具中的转图像选项转为png。
9 _/ }$ q/ p+ C ) s, \* b, `; G9 U+ T; d. o
6 i$ b$ _6 T- S: F
如果电子书是PDF格式的,那可以用adobe acrobat pro直接导出为png。
% |) Y+ ?5 Q. _$ q. i$ [需要注意的是后两者转换后的png尺寸并不一致,生成的mdict可能会在ios上无法显示,如果想在ios上使用,就需要使用另外的图像处理工具调整png的尺寸了。. m* d( I' d  Z  D

8 }2 D3 v: f0 D/ s# P; G2,        页码的处理:# I$ }8 y$ R: k" h& _) G
首先,在excel中根据字典正文的页码数输入一列页码数据,原字典是多少页,这里就输入多少个(王力古汉语字典正文页码到1817页)。然后将此列数据分别复制一份到B列和C列,在B1插入一个空单元格,数据与B2同。把C1删除,并在C列最后一行的单元格输入与上个单元格相同的数据,最终数据如图所示:$ A$ O3 r4 v) U6 z* a# ]& n
. h7 G8 w& ?0 S. ~, ?

  F6 M$ J+ h7 e& Y0 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</>”,然后点击替换全部,结果如图所示:* F5 f( E6 D9 S/ F. m' w
7 g3 w5 r% i7 p- H
最后将这个文件以UTF-8的格式先保存。
1 n8 e4 w* Z% y& ~
+ m6 s/ c: G" n% v% g
" O0 ^& q1 j) l3 k4 @* O对于附录以及其他页码的处理同上,只不过替换中的WLG三个字母要改成WLGF,处理完毕后将其文本复制到已保存的王力古汉语字典.txt中并再次保存。) `* C, m) w7 n) v+ j
, e+ w0 m5 k4 T- u8 i* O: m$ H
3,        字头的处理:9 R! d3 ~( R. s9 s9 C5 R7 ?' S
将字头与页码在excel中整理成如下所示:0 v1 [$ w$ `+ F: E0 [6 Q

: f2 {' w* ~7 X' p3 `$ @9 l 将其复制到EmEditor中(首行不要),在查找栏中输入“(.+?)\t(.+?)$”,在替换栏中输入“\1\n@@@LINK=WLG\2\n</>”,点全部替换,结果如图所示:
9 _5 D# s; v; X4 H6 {
- d  Q3 ~0 ~& C) I- i$ Q9 `将其结果复制到王力古汉语字典.txt中,注意与前面的内容不要有空行,点击保存。这样文本就处理完毕了。) d: m. Q' M* M+ K9 n  q$ p/ D

5 W" H, c6 j  {8 Z4,        转换成mdict格式的字典。; a" i: k7 q7 G" H
打开MdxBuilder.exe,在source栏中输入刚才保存的文本所在路径及名字,在target栏中输入要生成的mdict格式的字典所在路径及名字,扩展名是.mdx,在data栏中输入第1 步制作的图片的所在位置。original format选择mdict(html),encoding中选择UTF-8,title栏输入这本字典的名字。description栏是这本字典相关信息的描述,支持html标签,也可以不填。其他选项用默认的就行。然后点击start开始生成mdict字典。如果status栏最后出现successful 字样就说明制作成功了。
0 N% @6 {2 a) e8 [8 n* J- x; g; e. e- U2 h$ Y; f! I$ R

2 @4 E% p( z4 x5 C8 v( k# I8 _- N, b$ w$ m! y$ t
5,        mdict电子字典的使用。4 d) w; M9 a) w; M
PC端支持mdict格式的电子词典工具有mdict,goldendict,推荐使用后者。安卓端有mdict和bluedict,推荐后者。ios端的有mdict。将上述生成的mdict文件(mdx和mdd,两者文件名要一致)放入合适的目录中,并在软件中将词典路径指向这个目录来添加字典,然后就可以查询使用了。
; }) B+ k* Q4 x
7 h7 b2 _4 b) D. r, X7 \) ]* e9 u) d8 o( x

本帖子中包含更多资源

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

x

评分

3

查看全部评分

本帖被以下淘专辑推荐:

该用户从未签到

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

该用户从未签到

发表于 2015-2-22 21:56:09 | 显示全部楼层
本帖最后由 fedor 于 2015-2-22 22:10 编辑
' L7 H" _1 R' Q$ L
liuyunrushui 发表于 2015-2-20 22:42
6 C! ?1 m0 g& x. O* X% y0 c2 p) d字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!
& s* j* [2 ^$ x/ `% `8 T/ ~2 ?0 h" I$ }7 d* o: {
字头是将每张图片的单词作为字头的,后面 ...

0 _. x. V" r! u4 N  Q- P( q
7 Y& }% U% y, \2 M+ _又尝试做了一下,成功了。' {- n0 Z- x; I) i
每张图片上的所有单词都要做索引,也是比较耗时的,这还是其次,问题是图片大些的词典在手机上就无法用了,在电脑上用还是可以的,mdict中启用图片自适应窗口,字太小,开不清单词,而如不自适应窗口,图片又太大,浏览起来特费劲,所以说还不如先裁剪大小合适的图片,这样在手机和电脑上都能用,就是费时间。$ Q. o" e# h6 m$ P
还有个问题是,将词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小。
4 c. C6 N% c1 W下面我做的词典,在手机上的应用和在GoldenDict上应用
/ ~& u% H2 V/ k. d截图软件为FastStoneCapturecn。
+ X) M2 f  [+ }% ~/ N3 _7 E
) M, m& F' `: g* N# t5 g
  X2 W3 I6 F, G# t& k
* @5 s4 G- w' |2 C8 ^

本帖子中包含更多资源

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

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

    [LV.9]以坛为家II

    发表于 2016-10-3 08:53:16 | 显示全部楼层
    有点遗憾 根本看不懂啊!
    6 a+ c# E2 v; g将此三列数据复制到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: K: ]( k& q# j) ~4 e; z这三列数据复制到Emeditor后,也就是那三列数据,哪来的“(.+?)\t(.+?)\t(.+?)$”?不能替换!本人比较笨!教程个人觉得不详细!在excell中输入数字时,按楼主的做法,B列会多一行,请问这最后一行的数字是保留还是删除呢?
    + V; H9 G. N9 L3 \

    点评

    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:312 q) r' i+ e2 |2 c1 z9 B
    图片都不能全幅显示
    8 o, j$ s. c2 ^. A0 K/ L4 C
    先传到相册,然后在贴子里引用,就能全幅显示了 :D

    该用户从未签到

    发表于 2015-2-13 16:15:18 | 显示全部楼层
    支持原创教程!
    ) E" A0 I" K3 p4 E( C
    0 B# G' j+ h0 J) R/ Q0 c% i" F7 YPdg转png是关键,很多pdf或mdx的图片质量很差,估计就是转成了jpg格式。

    该用户从未签到

    发表于 2015-2-16 01:33:27 | 显示全部楼层
    本帖最后由 chigre3 于 2015-2-16 04:36 编辑
    . c1 ?6 r, r  B  v4 z4 s' i: h( q
    . P8 Q; e: U, `3 l* y汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理把所在页面的位置(序号)标志出来.
    % P" a9 b, \% ]  c之前也简略说过这事情:4 M( K4 H) h1 F9 V* k
    图片版词典的大致样子  https://www.pdawiki.com/forum/fo ... hread&tid=13169

    该用户从未签到

    发表于 2015-2-16 01:35:03 | 显示全部楼层
    我觉得论坛其他朋友对于图片版词典不够重视, 制作好的图片版词典实际用途也很好啊!7 `5 t/ ?: q7 x" a8 E
    (因为没有文本版的)
    4 y: D# @- V7 }! E& y3 ]1 _1 w5 q  A' q* F  s  n
    谢谢tsiank的帖子, 还有你制作的几个词典!

    该用户从未签到

    发表于 2015-2-16 14:45:38 | 显示全部楼层
    chigre3 发表于 2015-2-16 01:335 H1 t6 }# Y- R; O, W8 v
    汉语词典单页上一般词头不多, 容易定位, 对于其他语言 (如英语, 意大利语, 西班牙语等) 就需要更进一步处理 ...

    ) z# S. p+ h2 c+ E8 L' K* z4 y求详细教程讲解~非常愿意学习~
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-18 17:53:52 | 显示全部楼层
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?* q7 G9 J2 m! R! g0 J8 h, w( I( n
    能否赐教呢?
    * n* ]" H7 f3 E) ]" I手机上使用的是mdict软件,用深蓝好像也是不能缩小,可以放大,用于手机屏幕限制,所以想缩小一点浏览下!
    . l, C) t+ y  u# F  T6 x+ F
    5 V( y# h' p+ m! k

    该用户从未签到

     楼主| 发表于 2015-2-19 13:31:52 | 显示全部楼层
    liuyunrushui 发表于 2015-2-18 17:53" {: J& T( ?0 b+ D' U, q# x
    感谢老大,请问一下,用您的教程制作的辞典,在手机上可以放大浏览,但是不可以缩小浏览是何故呢?+ Y; }5 n: s3 J& n" q
    能否赐 ...
    3 {; R/ s7 j6 ]( i: \
    把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
    8 _3 w& v5 x* x$ l& j把width="1080px“这个1080px换成适合你手机的数即可,比如换成720px或者100%什么的。

    & b( }& ?0 G+ ^2 o$ y非常感谢大大!!!!
    ; @) L2 M! O' [/ P) e新年快乐!

    该用户从未签到

    发表于 2015-2-19 20:36:52 | 显示全部楼层
    本帖最后由 fedor 于 2016-5-26 18:43 编辑
    0 B" |9 [1 V$ u7 I
    $ i% \  K+ n( C/ t3 V$ ?尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所在的页码,也就是文件名称吧,字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?
    $ c+ D& N0 }/ i' C我也非常喜欢制作图片词典,但都是最笨拙的方法,首先裁剪图片,大小要合适,其次是将每个单词都输入到表格中作为索引,这里无论是裁剪图片还是做索引,都太耗时间了。但好处是做成之后,输入即可查询定位。
  • TA的每日心情
    开心
    2018-1-27 00:16
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-2-20 22:42:10 | 显示全部楼层
    fedor 发表于 2015-2-19 20:36
    $ g* r- ~$ p' i) w尝试照着描述做了一下,没有成功,主要是没有明白字头的处理的描述,两列的表格,左列为字头,右列为字头所 ...

    ( |4 X5 P/ d, b: Q9 n+ W# B, H字头没有弄明白啊,是将每张图片的那些字作为索引字头啊?!
    & ?' ~* Z& N6 {& ]6 {
    - L  K5 c# z* Y% E, K+ F: a7 C字头是将每张图片的单词作为字头的,后面一列的页码是同一页。我按照楼主大大的方法成功了!
    ( Q& w7 g5 ~8 s% f& O9 [, ^! ?/ S) i
    一张张切图片,阅读起来很方便,但是很费时间呀!9 F. D* \, {6 i* f5 b6 i) S7 r

    5 W5 F) ], ?5 _/ x. d能请问一下您是用什么软件切的图片吗?

    该用户从未签到

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

    本帖子中包含更多资源

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

    x

    该用户从未签到

     楼主| 发表于 2015-2-23 10:38:38 | 显示全部楼层
    fedor 发表于 2015-2-23 09:276 p9 f- ~4 @7 n/ p' l% z
    请教大神,在手机(小米3)图片词典浏览无法看清单词,字体太小啊,如何解决啊?我将1024px调整为100%了, ...
    # N9 W, k% q, o/ |3 U! ]
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单栏的,和我汉语大字典手机版那样的。
  • TA的每日心情
    开心
    13 小时前
  • 签到天数: 2388 天

    [LV.Master]伴坛终老

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

    该用户从未签到

    发表于 2015-2-24 10:12:17 | 显示全部楼层
    tsiank 发表于 2015-2-23 10:38" e! o% X7 Q4 G" p7 b/ k* _% R' K
    手机上看这种双栏的图片,我看还是放弃吧,来回不停地放大缩小,太麻烦。 要么就把这种双栏图片切割成单 ...
    3 t+ m* h; c# V, y5 k2 {+ {) S
    感谢回复!( M+ F( n' y+ X
    还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且还非常的小,这是怎么回事?如何调整?

    该用户从未签到

     楼主| 发表于 2015-2-24 13:28:48 | 显示全部楼层
    fedor 发表于 2015-2-24 10:12
    0 R% d3 v4 _: E) [8 _感谢回复!
    ) M% T4 k, G) Y还有个问题,词典放在GoldenDict上应用时,没有“下一页”的显示,只有“上一页”显示,而且 ...

    / n* y( w9 `0 P/ M/ v不好意思,由于我的粗心,在“<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
    * S6 i9 }1 x& R+ z- @不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...
    7 S/ q* ?9 b* U4 V9 |; [
    非常感谢!!!: X/ V2 j4 l- H" N/ ?: c/ F
    这回正常了。以后有问题再请教大神

    该用户从未签到

    发表于 2015-2-24 17:41:15 | 显示全部楼层
    tsiank 发表于 2015-2-24 13:282 G- i! j9 t( y3 z( ^
    不好意思,由于我的粗心,在“下一页 \n”这个代码中,>下一页  的前面少了一个"号,导致在goldendict中 ...

    ' C! {3 j) k- y  @! D: m2 r不好意思,还有个问题想请教一下
    4 o( c/ E! ?0 K9 V2 V1 i/ V, T在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑中浏览)。9 T4 {) m7 U. e. ?. z
    但是PDF转为png的,或者用XnView软件统一将图片都调整为png格式的,做出的词典却浏览不出来,这是怎么回事啊。: X" }3 z" f7 H3 N: z% h4 C
    也就是说,只能是截图另存为的图片才可以浏览,而用原来的图片或PDF转换过到png格式的,都不能浏览。

    该用户从未签到

     楼主| 发表于 2015-2-24 17:55:28 | 显示全部楼层
    fedor 发表于 2015-2-24 17:41
    & q3 Y9 W3 o3 l! N+ [: }- O% R3 M不好意思,还有个问题想请教一下
    ; U3 {6 k/ y  V' w3 H7 E; {; a7 Z& u在PDF中用截图工具截取图像另存为png格式的,做出的词典正常浏览(电脑 ...

    ; |3 c, O- V" e我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    该用户从未签到

    发表于 2015-2-24 19:28:14 | 显示全部楼层
    本帖最后由 fedor 于 2015-2-24 19:31 编辑
    7 K" a, t" k# h* U& Y, t* E
    tsiank 发表于 2015-2-24 17:55# O4 I* O& S8 ]. f$ F& k( L
    我没遇到过这样的问题。你是怎么把PDF转为png的?可否上传一下让我看看?

    : D: ]) a% _. e! M* R, s* d9 [
    - x- o+ J) Q" P0 _7 q" g4 {- y5 r本想发给你你看看的,9 q9 n: M6 z* }& ^
    但一下子又好了,问题也不知出在哪里。
    1 z" K! o2 y+ ^! U  f不过最后一次是这样做的。
    4 K  }2 \- v( g) _# T我的原图是pcx格式,用XnView转为png,就正常了。2 s* s) @, k3 g. K
    ; H! ^9 }$ L5 |+ a
    对了,有没可以将两栏的词典拆分为一栏的软件呢?而且不影响原来图片的清晰度,给推荐下。

    该用户从未签到

     楼主| 发表于 2015-2-24 20:55:56 | 显示全部楼层
    fedor 发表于 2015-2-24 19:28
    $ @) r/ G9 G: Y$ C4 b- r本想发给你你看看的,
    # j0 l% n0 y8 s" e3 x, N1 a. f: y) g5 k但一下子又好了,问题也不知出在哪里。+ Z4 @0 B" I+ t% `: E4 k$ ~7 H
    不过最后一次是这样做的。
    + x) h" p3 h5 C0 q
    ComicEnhancer Pro:http://www.comicer.com/stronghor ... tm#ComicEnhancerPro

    该用户从未签到

    发表于 2015-2-24 21:08:58 | 显示全部楼层
    tsiank 发表于 2015-2-24 20:55( S* F% R# X% y5 [
    ComicEnhancer Pro:http://www.comicer.com/stronghorse/software/index.htm#ComicEnhancerPro

    8 l8 Q3 z8 u% K: D感谢,下来试试
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2026-9-18 20:07 , Processed in 0.028495 second(s), 26 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

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