|
|
本帖最后由 chigre3 于 2021-1-12 11:50 编辑
0 _ M( w8 N" { o( U) N' \" T+ T
; U1 \, q y/ I, P2021.01.12更新:
- d6 I1 A. [2 Q. t; v& _4 ^: ?MD5 HASH值【路径、文件名 都区分大小写】
5 i# h9 e9 N" o1. DSL格式:.dsl 或者 .dsl.dz
: U4 G7 T) q& z8 t' f2. STARDICT格式:.ifo, f4 U/ o0 ?5 E
3. BABYLON格式:.bgl! n! U3 x# t5 Y b+ _% W- R7 }
4. ...其他! i- \% f' e% T6 `+ F
$ T' h7 f# q9 j; d; a& w J* ?2021.01.11更新:
1 N! `8 W, M$ V, v+ GGoldenDict 安卓版的词典ID产生是转化带目录的文件名hash为MD5得到(STRING TO MD5):" z, {; M* R! k( `( o
https://www.md5hashgenerator.com/
" l, H. X) C1 q: TID事先可以确定,就可以有比较有趣的用途了!!
9 h, h2 ^, q: E& u% \4 z" }
# m; `6 {+ T, V! g& p' u例子①:a.dsl + a.dsl.files.zip 放置在 /goldendict/ 目录下
! n1 M; w9 Z( C则:a.dsl ---> cf720ab20d00f14ea433254b99c5c1b8
0 i3 F) b5 _6 A3 H+ W2 W9 q6 h% G. C0 V: h
例子②:a.dsl + a.dsl.files.zip 放置在 /goldendict/zzz/ 目录下
; E- M K3 z% \; x( e则:zzz/a.dsl ---> 5a4a28e8fab346d876be7e2218556487
! n" J6 @% A. \5 Z# c5 r
: D( A) h9 _ u- @* J2 g. ?: O3 ?. G  ! y5 \ p/ t+ r3 j) v
" e( I: f+ w K! ~( ^ A, t* t为什么这么折腾?, h1 R" _8 V* x
1. 查词时不想输入特殊字符4 H+ j: _- @. H7 j. [
2. 名词、形容词等变形、动词变位等等直接根据hunspell返回原形单词
' `* M8 T, ^9 }/ U# A' p& G( F 3. 个人制作的切词版词典,DSL+ZIP格式最为简单, `: }+ ^" B4 v# E
安卓版goldendict能满足我个人上述使用要求,并且安卓版goldendict支持的词典格式也是很多的,详见安卓版官网:http://goldendict.mobi/
* d- E w4 n8 ]! W! ]9 R# o- Lingoes .LD2 files
- Babylon .BGL files
- ABBYY Lingvo .LSD, .DSL, .LSA and .DAT files
- StarDict files
- Dictd files
- Hunspell morphologies
% M5 L" {2 Q3 Z8 W( M 8 w4 c n5 I& B y: W, n
/////////////////////////////////////////////////////////////////3 z1 [. _3 ~8 G4 t) w! O& d
8 Z( V6 u0 w" X4 R8 i" c: l
额,先附上一个很早的帖子:安卓版 Goldendict 支持 .mdx .mdd 的方法 (经验)
$ `& _$ b% O" ?https://www.pdawiki.com/forum/thread-13437-1-1.html ?! u4 l. h1 f' \
4 P' l, E# p4 W- Q- r
2020.05.07 更新: 把goldendict安卓版原生的添加audio的js函数加上这样做的目的是让APP里不用点击自己设定的按钮键,直接点击APP上的工具栏上的发音键就可以了!(第一个音频)
3 o6 c2 B8 S7 |( }3 c6 q$ W请参考gd本来的js函数 gdAddAudioLink( dictionaryId, url )
6 [) x+ K( |# r. R<script language="JavaScript">gdAddAudioLink( '词典ID', "content://mobi.goldendict.android/audio/词典ID/音频名%2emp3" ); </script>) }3 q+ o% K+ ~" y
<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;
# X6 t% m* {9 c, I" v - var gdAudioLinks = {};
) ]1 g3 f4 Z; K K% {6 e; E* s2 J. n - / F& G( j; @# _6 K
- function gdAddAudioLink( dictionaryId, url )8 B. ?3 u$ b. U+ V. l
- {; o2 Z- e+ \! _, Q( P2 s5 y& |
- if ( !gdAudioLink )
9 J8 Y9 n$ m% D+ G' ^ - {
4 @; ~6 C" a5 t" d; z - gdAudioLink = url;+ h9 \/ U3 y" t! k- _
- // GDHost.setHasAudio();
$ @" S( p: u) x; c: F" l* [' h- o - alert( 'setHasAudio://' );) z" K$ ^0 L- {# q6 H
- }
; x& l: ]# O4 @6 G. Z3 H q - ' Z- x& V! Y( R
- // Only add the first sound in the dictionary7 O c3 P. C- r0 D; x0 t
- if ( !( dictionaryId in gdAudioLinks ) )" s& Y, R+ |, z8 G6 H
- gdAudioLinks[ dictionaryId ] = url;
& ] s {8 X! F" X - }
复制代码
, f2 X2 u! G. o7 e5 E" r% u+ N1 a" e+ T% a, u! O* W$ f
5 M" m( t5 h4 q! ^0 ] [, Y0 a# W2020.05.06 更新:测试词典和工具、教程下载链接:站内附件: 9 n5 W7 m4 s8 Z1 b
百度网盘:链接:https://pan.baidu.com/s/16YjbXM1YbdP-YR2-PG--0w 提取码:5lkl
/ e1 B* g$ t/ a; X1 J, h$ _6 V8 f3 B( Q

8 b5 t" `3 T! o6 J; ?$ D3 I$ l5 b1 W2 ^! V1 r* |
- M# H2 Z2 y# W3 o/ f
: J/ {1 j2 {; ]3 B9 e解压到文件夹,阅读:___ReadMe_请阅读我先.txt0 E, c0 E, o# B j: j. b0 n
你好!本文档为简略说明,请适当理解并自行DIY操作!
2 j4 X9 V! K) Q% N---------------------$ d) \' w" I7 K$ c; P0 y
目标:让安卓版Goldendict曲线支持MDX/MDD(MP3/图片/JS/CSS)
- P, S* s/ f' y) |! q! H: ~) }结果:* ~6 }) x/ p! W( C
MDX 转为 Stardict格式的.ifo .idx .dict或.dict.dz
5 F! C7 T$ |8 NMDD 转为 空壳DSL+ZIP
% u5 r* a! _* N---------------------
5 f) H2 m' r2 V* T; a(1) 获取词典ID的词典, 注意在Goldendict词典管理界面将其放置至末尾
+ P1 @4 j. @) ~$ ~├── _GetDict_id(Any-Any).bmp. ~8 B: [$ c3 ]$ p) r& x1 k) |
├── _GetDict_id(Any-Any).dict
+ D/ O5 I1 F# [0 i├── _GetDict_id(Any-Any).idx
! U* X# q1 j: q. b& {' _, Z* U└── _GetDict_id(Any-Any).ifo9 c$ A) H' J9 @* V4 v
% ?' m& F) U( Q5 Z( G+ `0 a) A! c(2) 测试词典资源ZIP和空壳DSL
, v: R* T# t% R( u7 m8 s9 k* e0 z├── 测试词典.bmp【词典图标】' h5 S3 ]' E- c2 ^7 y S
├── 测试词典.dsl【词典资源文件空壳DSL,仅设一个词条a,用于获取词典ID】* S) g0 C9 c! [1 d
└── 测试词典.dsl.files.zip【词典资源文件打包为zip,包含CSS/MP3/PNG】
R8 |9 D1 X% v: K, [' v3 i┈┈┈┈┈┈┈┈├── YHCD_IT-ZH.css9 Y" j+ c' U3 H, P
┈┈┈┈┈┈┈┈├── p068052.mp3
8 Q0 ]3 A: U4 y9 k! _, \┈┈┈┈┈┈┈┈└── 604_WW_001(1).png
' L0 Z/ K2 u. f' }% r: a( o' _/ q8 `8 H1 n4 \
(3) 修改测试词典.txt里引用的资源文件的路径
; H; ?: f2 O' R1 L测试词典.txt 【词典MDICT文本】9 \0 |# {/ u$ x7 b# b7 Z
┈┈┈└── 测试词典.mdx 【词典MDICT格式MDX; 下一步使用GetDict2_6.exe转为stardict格式】
( ?) g" U6 @ ~: V: e8 b# ~┈┈┈┈┈┈┈┈┈┈├── 测试词典.dict 【说明:可用 dictzip.exe 压缩】
; O3 ]0 R1 w- C5 ^┈┈┈┈┈┈┈┈┈┈├── 测试词典.idx8 Y1 c% h6 c% `
┈┈┈┈┈┈┈┈┈┈└── 测试词典.ifo' `' g: o3 e" {5 e9 r/ u7 t- N
/ p0 ]+ k* w4 [1 Q# [+ r1 d
(4) dictzip.exe 【压缩 .dict 为 .dict.dz】
: n9 Z. T' h0 {& [! u) J+ [(5) GetDict2_6.exe 【示例为用其转换MDX为StarDict文件】+ {: L# b1 n! [
---------------------
' ~& i4 d3 T( Z, F) C, _5 i* B/ F) D A9 `1. 将(1)(2)的文件放入手机sdcard/GoldenDict目录下, 打开GoldenDict, 扫描词典进行索引化, 设置这2个词典的源语言例如为Aa(Afar) 目标语言为Any(Any), 并且(1)的词典顺序始终要在(2)之后* r$ X% l2 x1 X }1 W
2. 右上角设置语言对:Aa - Any,查询 a,得到(2)的词典ID
* Z+ N: c! s/ {( y3. 修改测试词典.txt里相关的路径里的词典ID, 转为MDX, 再转为StarDict格式 (其中.dict可以使用dictzip.exe压缩)# D" O( u+ O* U- n) g# n
4. 将上一步得到的词典文件 (.dict或.dict.dz, .idx, .ifo) 复制到手机sdcard/GoldenDict目录下, 打开软件扫描词典索引化
) k6 n3 Z. t* o: c: Q5. 查询provare, 测试:(1) CSS加载成功,版式显示正确; (2) 点击小喇叭, 单词发音正确; (3) 点击数字1/2,图片显示正确( b, n6 i% t: L& U: O
' `; c7 X3 a, \8 l注意点:3 O# W7 M: M, r4 Q
CSS/图片/JS等路径:content://mobi.goldendict.android/resource/词典ID/文件名%2e后缀名6 D6 n9 V! f8 Z# G
MP3等Audio路径:<a type="audio" href="content://mobi.goldendict.android/audio/词典ID/文件名%2emp3">点击发音</a> ( c9 o8 j1 P/ D9 r( b. c+ L
2020.05.05 更新:成功实现!!!* b" G/ M) ]: m4 H/ Y7 m
安卓系统的GoldenDict加载DSL/ZIP格式时发音文件路径调取如下:
# T1 R, f& a7 U* `, P# d( [
6 ^: k; C" ]' u9 k$ o<span class="dsl_s_wav">! l% s) Z9 y. N
<a href="content://mobi.goldendict.android/audio/词典ID/音频名%2eMP3">$ L4 ^( h) s3 \
<img width="20" height="20" src="content://mobi.goldendict.android/asset/playsound.bmp" border="0" align="absmiddle" alt="Play">; ^7 m3 z1 `2 a
</a>' i( }) Y# g* Q2 S
</span>
) _: _' z, o) @
# m3 g. ?' [1 P$ a' d+ z1. 新建一个空的外壳资源DSL/ZIP,复制到手机上,打开goldendict,通过JavaScript获取其词典ID# k" q1 B" J+ w6 s2 P
2. 使用 GetDict2.6 转换MDX生成Stardict格式的词典(注意:MP3等资源文件的路径和.号)
# m: J# {5 j7 e3 H8 s r5 y& r' r8 }/ S8 }+ p) }9 t
一句话总结:STARDICT格式词典获取另外一个DSL/ZIP格式词典的资源作为己用
; E4 I/ b( i! f- J方法有点曲线救国~~
" i: ]/ ]: W+ |4 P, _
* @5 [. t7 D$ E- m ]4 E% e6 y' c% k! P9 l6 Z" H
+ @( K( `0 f! m$ h% ^( i' |& m5 o
! p5 I- ~( e* i! W1 E" a6 F+ I: q, A9 s4 b( V0 \
) V7 n8 r0 B/ O8 [! d/ H+ {2 U" \4 B. L& l
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?免费注册
x
评分
-
1
查看全部评分
-
|