盛世魔域下载[2021.01.11]安卓版Goldendict曲线全面支持MDX/MDD:发音/图片

本帖最后由 chigre3 于 2021-1-12 11:50 编辑 + @5 O) p, U; _" R
4 r/ k: L( Q# {& S2 R0 G& V
2021.01.12更新:3 J/ r: y9 C0 z6 T7 h
MD5 HASH值【路径、文件名 都区分大小写】
& o* o. `2 _' m. ]) K/ h1. DSL格式:.dsl 或者 .dsl.dz
& W, m+ Z8 D& R4 m2. STARDICT格式:.ifo. ]6 C/ H& r! ~4 I8 N) Z. }3 u
3. BABYLON格式:.bgl* J' M& D' {* s( x: A  ]# `9 A* _; g
4. ...其他
/ b7 h* _$ o9 G7 d5 g! i* B/ N7 l4 ]3 u
2021.01.11更新:  ^) O0 H( f$ ^* M4 Q
GoldenDict 安卓版的词典ID产生是转化带目录的文件名hash为MD5得到(STRING TO MD5):
7 q! K, z2 h0 c5 n. _5 ahttps://www.md5hashgenerator.com/
6 t1 U0 m8 s& D7 {5 h0 HID事先可以确定,盛世魔域下载就可以有比较有趣的用途了!!+ Y; A+ k/ L9 m. _/ O
. F3 ?0 h6 x& E" a- J2 p$ H
例子①:a.dsl + a.dsl.files.zip  放置在 /goldendict/ 目录下
# b3 K! d$ `3 i- J( Y4 o则:a.dsl ---> cf720ab20d00f14ea433254b99c5c1b8
% q- r5 K- L5 f2 E
2 U2 J3 D( [8 D. Y* p例子②:a.dsl + a.dsl.files.zip  放置在 /goldendict/zzz/ 目录下
: h: ~* C1 K+ G# V5 p7 d, f则:zzz/a.dsl ---> 5a4a28e8fab346d876be7e2218556487* D, k% O2 C" h- O
2 w' ]9 _& P/ ]$ t9 D


/ F( P, `4 _; D  U# P. k; |
% X% U" Q* X( H8 x0 S  ?) V为什么这么折腾?6 O5 I! P- b/ ~
  1. 查词时不想输入特殊字符
# u  f8 j7 h+ \  @/ c  2. 名词、形容词等变形、动词变位等等直接根据hunspell返回原形单词2 F4 ?: U3 k% G% \5 v+ F
  3. 个人制作的切词版词典,DSL+ZIP格式最为简单
' T: s8 j% f  P! ~  v/ b安卓版goldendict能满足我个人上述使用要求,并且安卓版goldendict支持的词典格式也是很多的,详见安卓版官网:
( T# s/ G( y: {) P0 v

Lingoes .LD2 files

Babylon .BGL files

ABBYY Lingvo .LSD, .DSL, .LSA and .DAT files

StarDict files

Dictd files

Hunspell morphologies9 q# f: A' i7 I# E. j

- }' l" `2 ?. b' I& S5 S  ]% r+ @/////////////////////////////////////////////////////////////////
/ A7 ~$ c$ t& @( d0 b9 ]4 U; M$ c" x% m, [/ r0 R" Z( R6 z8 B# Q% t2 e
额,先附上一个很早的帖子:安卓版 Goldendict 支持 .mdx .mdd 的方法 (经验)
2 x5 l$ A7 |& Z1 q  `) ]https://www.pdawiki.com/forum/thread-13437-1-1.html
) x1 `3 K! G0 d  w7 k7 V4 c; Q' Q. ?9 H" z# W/ _* w; q+ m
2020.05.07 更新: 把goldendict安卓版原生的添加audio的js函数加上这样做的目的是让APP里不用点击自己设定的按钮键,直接点击APP上的工具栏上的发音键就可以了!(第一个音频)) k4 i! w. y1 J, |; D! Q# ]+ n3 v3 d
请参考gd本来的js函数 gdAddAudioLink( dictionaryId, url )2 s8 }6 l# f8 q+ D

<script language="JavaScript">gdAddAudioLink( '词典ID', "content://mobi.goldendict.android/audio/词典ID/音频名%2emp3" ); </script>8 M4 h# d# f1 z2 g( \4 _
<a href="content://mobi.goldendict.android/audio/词典ID/音频名%2emp3"><img width="20" height="20" src="content://mobi.goldendict.android/asset/playsound.bmp" border="0" align="absmiddle" alt="Play"></a>

var gdAudioLink;
8 U7 x) |1 h6 `: ~: ?: l, K5 z

var gdAudioLinks = {};
3 \+ F0 `/ V' t0 I# S/ O1 x


; y$ q7 ^, s' Z0 A4 O

function gdAddAudioLink( dictionaryId, url ); |8 f# t+ [/ x' ?

{
1 u! k+ R: `! l" v5 j

  if ( !gdAudioLink )
+ D8 \0 s5 D: ^# v, p) Z3 E, ^

  {
: y( i6 Y! x& q0 Q

    gdAudioLink = url;
! O. J, A/ I3 E- I' w; p

//    GDHost.setHasAudio();
. @8 J! E0 K4 G9 o

    alert( 'setHasAudio://' );% M4 }* q  j  P1 C7 H$ b' P

  }
/ c3 s& R( Q  ]" q


' v; @. H8 g+ ?; `% q0 K

  // Only add the first sound in the dictionary
8 e1 r2 d' m2 `/ u4 W6 i, W) N

  if ( !( dictionaryId in gdAudioLinks ) )
! o; `" a; P1 N+ t7 j

    gdAudioLinks[ dictionaryId ] = url;2 b9 \# @8 c+ ~! i

}

复制代码


, v2 D/ {: s5 e4 V
& y1 @' ], I9 e# }$ B7 ^# _# \! r5 V& J5 n& Z
2020.05.06 更新:测试词典和工具、教程下载链接:站内附件:
; S: J/ N) a7 h/ h8 E2 d- P# A0 b百度网盘:链接:https://pan.baidu.com/s/16YjbXM1YbdP-YR2-PG--0w  提取码:5lkl0 n9 f/ {1 U/ ]- y. F

0 X' D. h1 i, Z


- q' L. c6 H4 F9 }: j5 V3 I; A% d9 d- e; r4 ~. ^; c+ A- e


) j0 A, N/ _9 Z: a; O& `! i( u5 }( F
解压到文件夹,阅读:___ReadMe_请阅读我先.txt+ k" {) l% v5 K9 E: F( h( z8 M

你好!本文档为简略说明,请适当理解并自行DIY操作!! R& f: `+ N. W
---------------------
) H- A  w, _7 v3 ?目标:让安卓版Goldendict曲线支持MDX/MDD(MP3/图片/JS/CSS)
4 ]0 @7 r6 g7 _1 d0 t结果:& m) l; W! U. V/ H) O5 y/ E4 @
MDX 转为 Stardict格式的.ifo .idx .dict或.dict.dz* w( H  g1 |3 Y7 y% |3 i* ?
MDD 转为 空壳DSL+ZIP
  |% }( c  Z% z: B+ E( B- f---------------------0 M# ?. @; n5 N! z( J7 b- f
(1) 获取词典ID的词典, 注意在Goldendict词典管理界面将其放置至末尾% R% i: f3 F; |" T, B( W" s2 a
├── _GetDict_id(Any-Any).bmp
% p" S- h* V) R2 }, I2 Z% D├── _GetDict_id(Any-Any).dict
) I( Q+ r: E+ ~3 \├── _GetDict_id(Any-Any).idx( q  k1 s3 G' a1 u% J
└── _GetDict_id(Any-Any).ifo
: g% W" _7 R, u. u
  U- S7 W8 \* {: [(2) 测试词典资源ZIP和空壳DSL
7 [) a( g( n/ p) V  e2 A├── 测试词典.bmp【词典图标】
$ U0 h  L: \; j# m8 V├── 测试词典.dsl【词典资源文件空壳DSL,仅设一个词条a,用于获取词典ID】; t' F; x5 D5 Y
└── 测试词典.dsl.files.zip【词典资源文件打包为zip,包含CSS/MP3/PNG】
' B2 U0 ~9 x/ ^* J0 \: B┈┈┈┈┈┈┈┈├── YHCD_IT-ZH.css& Z& z! {9 ^6 V
┈┈┈┈┈┈┈┈├── p068052.mp3
% p& d' x# M6 ^1 l2 O┈┈┈┈┈┈┈┈└── 604_WW_001(1).png, X6 g+ Z$ v5 f. ^

( Z2 u* I& w. B6 n0 b$ k+ S(3) 修改测试词典.txt里引用的资源文件的路径5 F" K8 @* I% m) ]! F  d9 R
测试词典.txt 【词典MDICT文本】$ {% ?4 e% H7 M0 [
┈┈┈└── 测试词典.mdx 【词典MDICT格式MDX; 下一步使用GetDict2_6.exe转为stardict格式】
! ^/ [7 W0 `* k* Q' c┈┈┈┈┈┈┈┈┈┈├── 测试词典.dict 【说明:可用 dictzip.exe 压缩】
- p0 A* O% S# T1 K. B: `0 Y┈┈┈┈┈┈┈┈┈┈├── 测试词典.idx
. |2 I5 u5 }2 t5 q┈┈┈┈┈┈┈┈┈┈└── 测试词典.ifo
, U3 c1 Y- G9 _# a% Y4 n+ m: R1 m8 U7 d4 d  R* `) i
(4) dictzip.exe 【压缩 .dict 为 .dict.dz】
% D$ U  @8 b  p( r3 }7 P. ?# H8 K(5) GetDict2_6.exe 【示例为用其转换MDX为StarDict文件】
! ]5 Z# U8 e9 ^  e  e* h  A+ L/ I---------------------
" a* q; F1 T; C% y* m  n1. 将(1)(2)的文件放入手机sdcard/GoldenDict目录下, 打开GoldenDict, 扫描词典进行索引化, 设置这2个词典的源语言例如为Aa(Afar) 目标语言为Any(Any), 并且(1)的词典顺序始终要在(2)之后' u9 j! m; j. I# E! ~. c, b
2. 右上角设置语言对:Aa - Any,查询 a,得到(2)的词典ID3 n# l7 d# o' J1 W9 |; K9 z+ W
3. 修改测试词典.txt里相关的路径里的词典ID, 转为MDX, 再转为StarDict格式 (其中.dict可以使用dictzip.exe压缩)4 ?: V' Y9 y( l- p& w: f/ I) P
4. 将上一步得到的词典文件 (.dict或.dict.dz, .idx, .ifo) 复制到手机sdcard/GoldenDict目录下, 打开软件扫描词典索引化! y( w; ~5 ^; `+ A
5. 查询provare, 测试:(1) CSS加载成功,版式显示正确; (2) 点击小喇叭, 单词发音正确; (3) 点击数字1/2,图片显示正确. r; |* m5 H+ q8 c  M  g+ V
! c$ J7 j+ y- G/ Q
注意点:
# R: X3 f! U9 {, f' F' tCSS/图片/JS等路径:content://mobi.goldendict.android/resource/词典ID/文件名%2e后缀名* o+ M, M) H4 y; e0 c
MP3等Audio路径:<a type="audio" href="content://mobi.goldendict.android/audio/词典ID/文件名%2emp3">点击发音</a>

$ W0 x6 u$ a6 C, \. S
2020.05.05 更新:成功实现!!!
' M4 b2 Q+ R2 {7 y; F& T: `& x# Y安卓系统的GoldenDict加载DSL/ZIP格式时发音文件路径调取如下:4 P7 g( F0 U/ O3 n# f0 Z
# F$ }5 Z7 R! h3 {3 r
<span class="dsl_s_wav">1 t1 B3 H- b% k7 ?
<a href="content://mobi.goldendict.android/audio/词典ID/音频名%2eMP3">% e! d. |$ J; G" F& I6 F
<img width="20" height="20" src="content://mobi.goldendict.android/asset/playsound.bmp" border="0" align="absmiddle" alt="Play">
: x* u, n0 ], D2 Y! d</a>
& a" J1 ~5 H! }0 ?, W</span>
: |" i% n2 c% g! \5 T) l
2 @, A7 z( K! q' j; I: y9 ]1. 新建一个空的外壳资源DSL/ZIP,复制到手机上,打开goldendict,通过JavaScript获取其词典ID7 i4 ?5 x1 N( D  k0 Q
2. 使用 GetDict2.6 转换MDX生成Stardict格式的词典(注意:MP3等资源文件的路径和.号)1 u; |0 X. ~" ~5 e$ C' t

- ~3 a) D  v* b! Z, S一句话总结:STARDICT格式词典获取另外一个DSL/ZIP格式词典的资源作为己用% |( O% T! ?  M3 j; w( E9 E9 j
方法有点曲线救国~~
4 I! G- n! y2 o1 z- u5 q1 R" R) i  v& }% x8 M! a

$ O9 b0 T# \4 x* Y5 g/ q% F: |
2 h6 w, f( s! B9 J
; u. l  p) _  o# R" p; s  Z7 Y2 g/ ]% y, ^, `6 n6 C+ C

$ ]4 |% |9 Y5 G. g3 C# y
: ^; h1 a, [: ~$ r/ c% v- D9 s
 

本帖子中包含更多资源

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

2025-12-08 11:21 点击量:1