|
本帖最后由 chigre3 于 2021-1-12 11:50 编辑 - _: \3 ]4 W8 M- H. p& {- N
" j: m4 L% m6 P" i4 a8 U; C2 z
2021.01.12更新:6 _1 F# l/ q" _ p7 {; M+ o* _8 O
MD5 HASH值【路径、文件名 都区分大小写】" t& h$ D7 Z$ ^( B# {5 @
1. DSL格式:.dsl 或者 .dsl.dz
+ {" E& ^+ b6 t( F6 I/ t; n/ E2 t2. STARDICT格式:.ifo
9 Q$ R0 c. S+ O) K; C6 `3. BABYLON格式:.bgl) } x9 y/ y1 Q; W0 R6 A
4. ...其他
+ K% p' I5 z, b/ m% O
d$ f* d' V1 _1 E- g2021.01.11更新:/ v/ t7 R, f2 o: u1 E( n
GoldenDict 安卓版的词典ID产生是转化带目录的文件名hash为MD5得到(STRING TO MD5):( o4 I" V$ j& p1 b% q h
https://www.md5hashgenerator.com/
/ B9 `6 I# _) Y1 o/ q1 \- uID事先可以确定,就可以有比较有趣的用途了!!8 P+ R9 _9 _# \; `
0 W& C4 U2 m5 J- ?
例子①:a.dsl + a.dsl.files.zip 放置在 /goldendict/ 目录下: \1 F: U+ e4 I$ r( i9 N
则:a.dsl ---> cf720ab20d00f14ea433254b99c5c1b89 t' L0 F" F D
, i( E2 O+ V: Z2 H; Y例子②:a.dsl + a.dsl.files.zip 放置在 /goldendict/zzz/ 目录下
7 P8 d, N# Q1 J T2 X; B则:zzz/a.dsl ---> 5a4a28e8fab346d876be7e22185564879 F+ D3 J" z) }0 N
, h, `) U, i, o; b2 @6 V* Z
  
3 K& B w, |1 S5 ~9 L9 w
) M o- g* p, V为什么这么折腾?; a! n" a/ b1 i8 K* _& w2 H! _
1. 查词时不想输入特殊字符
9 {3 p) [& X' g: f' O7 [2 p2 ~ 2. 名词、形容词等变形、动词变位等等直接根据hunspell返回原形单词
0 }& p7 a8 k' O; \$ @ 3. 个人制作的切词版词典,DSL+ZIP格式最为简单. Q7 S7 U) S! V A7 p6 Z
安卓版goldendict能满足我个人上述使用要求,并且安卓版goldendict支持的词典格式也是很多的,详见安卓版官网:http://goldendict.mobi/7 ~$ i+ n Y9 \& S; e! k& B
- Lingoes .LD2 files
- Babylon .BGL files
- ABBYY Lingvo .LSD, .DSL, .LSA and .DAT files
- StarDict files
- Dictd files
- Hunspell morphologies; M. M3 C/ i2 Z E3 F
' U+ u5 e; {' e6 e1 I; s! U/////////////////////////////////////////////////////////////////( v& C, P/ Q( C# ` y$ g$ u) S
& f" |6 p5 d% L2 U! N; b额,先附上一个很早的帖子:安卓版 Goldendict 支持 .mdx .mdd 的方法 (经验)0 {7 X0 j- }+ _
https://www.pdawiki.com/forum/thread-13437-1-1.html, r" l" n2 G% o, ]2 Y
+ W4 X/ _( o% s- ^9 Q
2020.05.07 更新: 把goldendict安卓版原生的添加audio的js函数加上这样做的目的是让APP里不用点击自己设定的按钮键,直接点击APP上的工具栏上的发音键就可以了!(第一个音频)
: @" E5 ?. G9 C( V' T: h请参考gd本来的js函数 gdAddAudioLink( dictionaryId, url )! A/ R2 D$ L" i& c, b& ]
<script language="JavaScript">gdAddAudioLink( '词典ID', "content://mobi.goldendict.android/audio/词典ID/音频名%2emp3" ); </script>
$ |# L o9 U$ M<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;: J) f6 @" d0 h3 h
- var gdAudioLinks = {};# H$ T1 Q* o* I O5 b
- * V" O! A1 W3 D7 A" B" K
- function gdAddAudioLink( dictionaryId, url )
2 P) I; Y7 z. g/ J - {. f& H: U4 o% j
- if ( !gdAudioLink )
7 j7 k9 W8 @# q B$ H - {
, P9 i) ~) t# R1 W0 }" F - gdAudioLink = url;/ @" }5 d% Z$ l) T
- // GDHost.setHasAudio();
, y# O* z- f0 r# S. X7 M `. k# a - alert( 'setHasAudio://' );1 m; i1 V2 T0 o
- }
- h- k1 W6 o* Q2 a/ n2 o - " [/ Z( S# O. \' h) H
- // Only add the first sound in the dictionary) M- v7 o# g& V& i- N& x
- if ( !( dictionaryId in gdAudioLinks ) )
' m0 L* A* [/ G' h - gdAudioLinks[ dictionaryId ] = url;
$ w3 ~# \- s0 ~ - }
复制代码
8 y$ [/ S% j: g5 J2 u8 e2 o/ Q5 a' h0 J3 c$ {, d2 Z( J1 r
# l3 U6 M, T' T: H8 b& E2020.05.06 更新:测试词典和工具、教程下载链接:站内附件: 4 @0 s/ ], ?$ B- ]# Y7 M: W
百度网盘:链接:https://pan.baidu.com/s/16YjbXM1YbdP-YR2-PG--0w 提取码:5lkl
' N3 c5 F1 P' `' |3 [- _& |" _6 Q4 W w. X
q. B6 G, b; T: c% @
_5 L/ R. p- x5 F5 z8 } * s8 r7 s& R+ t6 H/ M1 f$ f
0 u) w+ c. h; l# V1 N解压到文件夹,阅读:___ReadMe_请阅读我先.txt8 K2 e% H, Z0 @' E7 D
你好!本文档为简略说明,请适当理解并自行DIY操作!, L* G1 \/ F' k6 O2 P& e( \
---------------------4 C' N% v1 u% i
目标:让安卓版Goldendict曲线支持MDX/MDD(MP3/图片/JS/CSS). H) t, ?- B. v& {
结果:
) b4 P: `& B3 O2 ?$ ^' F2 rMDX 转为 Stardict格式的.ifo .idx .dict或.dict.dz0 B! p, B5 d) l, E8 t
MDD 转为 空壳DSL+ZIP( [- N9 e' a0 @+ L7 l% n+ n
---------------------: z# W' K! v5 C7 g T
(1) 获取词典ID的词典, 注意在Goldendict词典管理界面将其放置至末尾! m- B! F' Q( N
├── _GetDict_id(Any-Any).bmp
* `- T7 d: x' O# B! B9 x' N├── _GetDict_id(Any-Any).dict
9 A& i) }- p: V, l├── _GetDict_id(Any-Any).idx
" h& N; c; _8 m7 ]& Q, p3 t└── _GetDict_id(Any-Any).ifo
1 `/ F% i( \$ l7 T. x" o
8 v/ L8 M# }4 R5 l6 [; A(2) 测试词典资源ZIP和空壳DSL
- r L! R+ s& o├── 测试词典.bmp【词典图标】
; B3 F" B5 i3 k/ c( R├── 测试词典.dsl【词典资源文件空壳DSL,仅设一个词条a,用于获取词典ID】
& L9 O8 Y9 B) j$ a3 {/ W└── 测试词典.dsl.files.zip【词典资源文件打包为zip,包含CSS/MP3/PNG】
# Q0 v+ \4 ~$ O2 J% f┈┈┈┈┈┈┈┈├── YHCD_IT-ZH.css
: W( o; [+ x! c5 y. H E┈┈┈┈┈┈┈┈├── p068052.mp3
0 j0 _' W- U1 K┈┈┈┈┈┈┈┈└── 604_WW_001(1).png
( A/ W! L# J& N, a
6 R2 f, N% T, J(3) 修改测试词典.txt里引用的资源文件的路径
' |) Q, Y; R' ~4 A \: A% [# f测试词典.txt 【词典MDICT文本】
# p2 n9 Q0 a5 v6 t I( Y9 D┈┈┈└── 测试词典.mdx 【词典MDICT格式MDX; 下一步使用GetDict2_6.exe转为stardict格式】
5 V+ _2 V6 x1 I/ |┈┈┈┈┈┈┈┈┈┈├── 测试词典.dict 【说明:可用 dictzip.exe 压缩】3 w" l$ `2 Q& x$ A- x3 i6 `
┈┈┈┈┈┈┈┈┈┈├── 测试词典.idx6 C! T( b9 x' K* Y" U; i, u! N5 V
┈┈┈┈┈┈┈┈┈┈└── 测试词典.ifo
/ _; `: L9 r2 l# d2 t* ^: v5 E! u0 Q) y0 d8 }
(4) dictzip.exe 【压缩 .dict 为 .dict.dz】( F7 H& B7 U/ p$ N, Q, g. O
(5) GetDict2_6.exe 【示例为用其转换MDX为StarDict文件】
, k0 B% ?5 W/ V8 Q3 Q) R---------------------
2 u/ N% K! |0 m8 R$ N1. 将(1)(2)的文件放入手机sdcard/GoldenDict目录下, 打开GoldenDict, 扫描词典进行索引化, 设置这2个词典的源语言例如为Aa(Afar) 目标语言为Any(Any), 并且(1)的词典顺序始终要在(2)之后* X7 o6 ^/ w+ X8 m3 s
2. 右上角设置语言对:Aa - Any,查询 a,得到(2)的词典ID
4 T7 s1 E9 t; j# l! z- n$ ^" ^6 p3. 修改测试词典.txt里相关的路径里的词典ID, 转为MDX, 再转为StarDict格式 (其中.dict可以使用dictzip.exe压缩); q/ m+ ]4 v: C
4. 将上一步得到的词典文件 (.dict或.dict.dz, .idx, .ifo) 复制到手机sdcard/GoldenDict目录下, 打开软件扫描词典索引化0 }& D& {; Z2 e* m$ q [% s1 n$ J
5. 查询provare, 测试:(1) CSS加载成功,版式显示正确; (2) 点击小喇叭, 单词发音正确; (3) 点击数字1/2,图片显示正确) }+ w( ~9 C! E. I# F
* H3 i, b% n5 k2 V D$ `+ U; [5 E
注意点:
9 c; d9 a1 G/ ^2 O% P0 ~CSS/图片/JS等路径:content://mobi.goldendict.android/resource/词典ID/文件名%2e后缀名$ W- i) A# J: S
MP3等Audio路径:<a type="audio" href="content://mobi.goldendict.android/audio/词典ID/文件名%2emp3">点击发音</a>
: Z' [3 n+ ~; _ {" T4 n6 _2020.05.05 更新:成功实现!!!
# l& b7 X" o+ v6 r/ H安卓系统的GoldenDict加载DSL/ZIP格式时发音文件路径调取如下:+ }) K( i& M' \( E; X
3 n# k7 l* E! s9 O& J4 v/ \" }<span class="dsl_s_wav">6 t0 w+ ]- y, g" [" Q
<a href="content://mobi.goldendict.android/audio/词典ID/音频名%2eMP3">
1 ]$ V; e* w% |! S; P3 z<img width="20" height="20" src="content://mobi.goldendict.android/asset/playsound.bmp" border="0" align="absmiddle" alt="Play">
1 }0 h2 t6 l! v i8 z& G</a>
3 |1 {9 m) h6 G$ l0 u</span>, b z/ |8 \" ?7 `
0 p/ q8 S7 S1 |1. 新建一个空的外壳资源DSL/ZIP,复制到手机上,打开goldendict,通过JavaScript获取其词典ID
! E' U6 ]) A8 w$ o6 n$ w2. 使用 GetDict2.6 转换MDX生成Stardict格式的词典(注意:MP3等资源文件的路径和.号)
& S4 b' K. \" X2 K# g) {3 P* m% t+ o0 r; b6 \9 z+ d
一句话总结:STARDICT格式词典获取另外一个DSL/ZIP格式词典的资源作为己用
2 {! `- J! s( m- J% ?$ _ a u6 S" m方法有点曲线救国~~
1 l# h8 I$ g" s, K; f. z0 F( o5 \6 F& j
) o! ^) s8 b/ Z2 F" _! S0 B- \+ w
& f& t1 p; N/ s0 e8 b, A1 v
. I! h# k" p# Y
4 j2 Y2 f# _# R) G% J5 c" y+ Z6 w9 z& m3 X
' T( U7 |+ S/ A
5 p( R0 ` C0 U7 \: b. |0 G
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?免费注册
x
评分
-
1
查看全部评分
-
|