掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 664|回复: 8

[索引] 安卓版GoldenDict:仅有页面首单词索引的图片词典查词

[复制链接]

该用户从未签到

发表于 2026-7-13 01:49:22 | 显示全部楼层 |阅读模式
本帖最后由 chigre3 于 2026-7-13 02:02 编辑
& `& }  a% F- f) v/ X8 J
[设想]一种新的词典格式[专为图片版词典设计]* M6 _. i" \3 S. v
https://www.pdawiki.com/forum/fo ... hread&tid=22035 (出处: 掌上百科 - PDAWIKI)

  ~% T8 J5 B3 k& p$ @/ }  f; @& x& \& s8 ?! A" }
没想到最早的讨论帖子都过去这么久了,当时停留在桌面版GoldenDict可以通过外置的python代码实现图片词典的查词和图片显示。
$ {. C9 y" Q9 I5 ?+ w/ \现在将功能诉求告诉DeepSeek,让它帮忙写了些JavaScript代码,考虑了很多细节并反复修改优化,最终让这个功能在Android端的GoldenDict也较好地实现了。
/ J# ?$ }) V: s6 u: n! G/ e" f8 h当然啦,最好的就是APP本身的搜索框那里就能支持是最好的(DictTango要是加上这个功能就好啦~~)
1 \1 t$ t1 r, e这次提供了工具和例子,有需要就请拿过去用吧。
# z# y( ^- }/ q2 s( Q' ~+ i$ @0 e) p# V# g0 h9 ?) M, p

# o* |. V" v/ H3 \0 y/ m简单介绍:7 y* z0 |* M/ E9 Z3 ~* ~
0. 支持西文词典(一个词条一个页面),也支持中文词典(一个词条多个页面,如多音字"参")。
2 O% R' [1 H; z' t, x/ y5 A    中文词典搜索结果若有多个,默认显示第一个结果所在页面,并显示结果列表1.2.3.4以便点击查看
9 l# m4 A9 x. E* o6 K% [+ f3 x, U% `$ a) O6 S8 W
1. 查询功能入口暂时放在特定的"picdic"这个入口词条; b# i9 Z) O! [

) J1 C8 j+ J  x0 p6 X6 k2. 'picdic'入口,默认显示正文第一页
3 L6 r( I) Q7 P7 T9 e* r5 b* o* M
% g" U2 a5 ?. a3. 默认模式下,可对图片进行以下操作:: E5 ^1 y0 K" v8 Q2 |% h3 F
(1)单击:【翻页】左侧1/3→上一页;中间1/3→开启按钮功能区;右侧1/3→下一页
0 D7 q* \8 P2 }3 X(2)双击:【放大;开启允许图片拖拽浏览;开启按钮功能区】单次放大倍数1.75,超过5倍返回100%屏幕宽度
+ Y; s" F: Z7 Y0 d: E: N) c/ [: p+ Z% x; j( t6 s8 H
4. 按钮模式下,可对图片进行以下操作:
6 I1 e$ L  N2 m- X2 Y(1)拖拽:方便拖到自己想看的内容区域
$ P5 P4 K; ~+ ?; Q! q) A(2)双击放大:单次放大倍数1.75,超过5倍返回100%屏幕宽度. s3 v$ B0 T- H$ d6 {. f
(3)单击功能按钮:【上一页】 / 【下一页】 / 【关闭】 / 【放大】/ 【缩小】
9 \/ c- p/ B( S$ q    A. 图片已经放大的情况下,翻页显示新的图片大小也一致。& ~7 s: b  [% x8 Z" L
    B. 模仿阅读逻辑,下一页按钮,图片会拉齐到左上角;上一页按钮,图片会拉齐到右下角。/ i4 W$ O% b4 P+ }5 _3 K
    C. 关闭X:关闭功能区,返回初始页面状态& ^6 {! Y! W( Q- |+ l$ F  r0 i
    D. 放大/缩小按钮:+0.5 或者 -0.5 scale数值
* @( [. M7 P+ S: y+ f8 U+ _- Z2 _& D* y

! l' o2 ~* S: l' mGoldenDict Android 以前还在Play市场,是付费软件。现在众所周知的原因,被下架了。" {7 R/ \4 F* k1 b" @
作者都不更新了,也提供了免费下载和激活的方式:http://goldendict.mobi/  具体看网页上操作说明吧
& p0 S- ^& N: f4 D* m6 p2 V下载最后的版本,安装后用软件显示的device id,去网页上获得 license文件('goldendict-key.txt')放到goldendict文件夹下。
, I$ y" E  z1 r& A& A3 w5 q2 l! i  s6 G# h& t; c1 h7 |* a2 S2 J2 Q
  h+ [+ T2 \8 v! y% o

4 \5 e+ ^& P7 f+ X4 S" y; n请自行下载,解压后,不可修改任何文件名,复制到手机内部存储\GoldenDict 文件夹下
) m& n* _2 L1 a  ](词典ZIP资源文件的ID是根据‘路径和文件名’得到的MD5 HASH码,已经写进了html和js文件中,固定了放置的路径和文件名)
% ]- W# Y0 [5 u3 H! |* ?: E4 v, o
DOWNLOAD URL:
% k: l  j1 s! q: T, B
  \# J% k) H: P. G( O! U# o$ P6 O1. PicDic_EN-ZH_RHWCD.bmp                词典icon) j0 h0 U! H5 D, j- u
2. PicDic_EN-ZH_RHWCD.dict                Stardict格式,'picdic'入口词条
% n+ H5 b* o; x9 |3. PicDic_EN-ZH_RHWCD.idx                Stardict格式,'picdic'入口词条
) R- b, E) T( G" K1 k- C# {) L4. PicDic_EN-ZH_RHWCD.ifo                Stardict格式,'picdic'入口词条。.ifo可以用文本编辑器修改词典信息
4 }7 g* v; ~4 N; T" C9 r9 [' h4 m- W6 \' I3 D
5. PicDic_EN-ZH_RHWCD.dsl                Abbyy DSL格式,空壳占位。这个文件的文件名计算得到的MD5 hash值已被写入 PicDic_search.js 的 PIC_RESOURCE_ID)" L: C9 c1 O% |' Y; e/ n
6. PicDic_EN-ZH_RHWCD.dsl.files.zip                Abbyy DSL格式,空壳占位,所有词典图片的资源包【】  ]' A8 T! U0 b% B, R: S

0 r% v  l: s' c* d. `' Z; j( ]7. PicDic_EN-ZH_RHWCD_index.dsl                Abbyy DSL格式,空壳占位。3 @9 R# ]/ ]4 J, F( J- T% F7 F
8. PicDic_EN-ZH_RHWCD_index.dsl.files.zip                Abbyy DSL格式,空壳占位,资源包(CSS+INDEX索引+查词js)。为方便修改,不和图片一起打包9 _6 d% E9 [5 `/ c/ |* o
→→(8.1 PicDic_EN-ZH_RHWCD.css        入口词条'picdic'的CSS)$ [; A; c, j  J' K
→→(8.2 PicDic_EN-ZH_RHWCD_index.js                词典的INDEX数据)
4 f4 o% d2 B. W1 V8 X+ M8 C→→(8.3 PicDic_search.js                后端查词和调用图片显示等所有功能的通用js代码,这个是核心啦,其他APP要支持就靠这个啦)
" p- w6 H, [' I  }. S9 W' \7 L7 s7 D0 }* U

% H2 S0 s& I% e2 k+ ?原始index文件结构简单(页码\t内容),举例如下,可使用python代码直接转为'PicDic_EN-ZH_RHWCD_index.js'0 h2 K7 R8 l" j. [2 S) w% ?
代码也附在这儿了:" ]' u/ u/ J2 i2 `! t

, P8 m' }% i1 H( q* ]* d: `8 r( o0000_00_00        封面7 h/ i& ^1 t# S  [6 c% C
0000_00_01        内封* q; b& {0 Y1 V& ?  o
0000_00_02        版权
! w# S  l6 ?: g$ s, @  v: X( T; q0000_00_03        7 t9 {- i' ]; _% ~4 T- `
0000_00_04        原书编写者名单
! U7 U/ Q0 j! F- I0000_00_05        编译组名单
4 L- r3 S  M$ R+ h3 d6 Q0000_01        编译者前言6 n& _, D; N/ Q7 U' a- v- T/ Z9 [# T  M
0000_02        7 m! D+ x4 G1 F
0000_03        原书修订版英语序言
/ y9 _" h% r2 Q1 s3 W; y3 A$ O8 H0000_04        原书第一版英语序言0 z/ |' j8 s$ w9 w
0000_05        印欧语系语言! X* E% r. X" ^$ \$ K5 g4 H8 Z
0000_06        英语简史
6 P. ^! M) d5 M( Y  M1 \* B' o0000_07        $ c  e! p; {' H7 j7 k! ?
0000_08        ' v" U- I. k0 H# ^  Q" T. ^
0000_09       
& n  Z# B# ?8 t9 R/ C% u0000_10       
) _1 U/ _4 c1 P' \0000_11       
* i0 K: n5 u* V- f) w6 e0000_12        用法说明& l1 U- Z9 a' u1 _+ F$ J4 L
0000_13       
4 k4 a& ?. V4 G. M$ h. Z% s9 k- U0000_14        , X6 l+ F& l- |0 e! ^# e% N+ d
0000_15        " O$ K6 ?% k0 J
0000_16       
6 a; Z) `0 N5 F  \+ n0000_17        美英音标对照表/ K$ \+ X5 p. |
0000_18        ' E7 ^- y+ s9 P7 i5 o' x
0000_19        目录
! A- i  s1 _+ c0001        aalst
7 ~' c6 _# Z' G$ k' o. c1 Z0002        abandon
: Y+ g8 }3 \' M! {/ E% j& d  G. s0003        abdicate. l6 C! c# k& V0 C. }! u$ C
0004        abhor
+ d; p; R7 }/ w: k/ j- q0005        ablative absolute8 A5 U" n4 T; e5 |% ~/ W/ h6 ]
0006        Abominable Snowman
$ V8 l! B) P1 E& f. |, m% |0007        ab ovo
: c5 o' W8 j7 C/ z, ?0008        absence1 R1 R8 g8 h8 N) b
0009        absolve& i: P7 h7 N7 Z& p2 v5 S) i
0010        abstractive7 w7 ~# `4 t( }6 ?$ t! E
0011        abysm, f" F- ~3 z, w+ `
0012        acarid
+ s! }* {/ b. W$ h0013        accept
/ U) j9 U; Q( o1 L4 U  e0014        acclaim
# z- l$ U; H2 j. {) ]4 Z* B$ I3 y2 m0015        accordingly0 j, S% B8 [* r5 f$ r8 O
0016        accumulate
0 g2 ^% V6 b' z2 z- I7 @.............................
7 u) }; I# ?" @9 P+ D  p% b5 F9 F& q
$ Q& R9 S3 P% j# b! `: K3 S. |& ]: ~
----------------------------
8 r! M$ i, {! e! w! a其他有用的DIY相关信息:7 z9 C3 a0 |- j* v" [2 A
1. MD5 HASH计算('路径/文件名', 不包括''):在线版 https://www.md5hashgenerator.com/  当然也可以CMD命令得到(问下deepseek就知道啦)) n' H; t% ?; k! t4 @; Q4 ~% ^
2. TAB文本转STARDICT:需要安装pyglossary,然后CMD命令行运行:pyglossary PicDic_EN-ZH_RHWCD.txt PicDic_EN-ZH_RHWCD.ifo --read-format=Tabfile --write-format=Stardict, Y( ^$ c1 [* Q- ]) p5 l4 N
3. 暂时就这样吧9 Z1 A' ^8 K2 q1 {" q& R

本帖子中包含更多资源

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

x

该用户从未签到

发表于 2026-7-14 23:32:49 | 显示全部楼层
咋支持中文词典的呀?按音序推断的吗?

该用户从未签到

 楼主| 发表于 2026-7-15 00:32:23 | 显示全部楼层
本帖最后由 chigre3 于 2026-7-15 00:37 编辑 3 ?: N/ _, Q: d  |1 H6 L

1 P) c2 z' W4 a. ~9 p0 b9 F--------------------------
6 W  g, V8 G& p+ N) Z0 b& C如果词条形式是:中文→页码(1个或多个),那就下面举例的情况。- ^* b; E8 F+ U; w& {+ b) D: c
如果词典本身是按照拼音顺序排列的,那也可以录入:拼音→页码,就类似西文处理的方式了(针对拼音,js后端还需要特别处理,使得排序正确吧)9 o) l8 f7 ?! Y) E
+ q5 H2 F0 o# C& |# W' r

- P+ {4 Z; a/ ^, Q1 M- l6 _0 M直接举例吧,用下面的文件替换(只是把原来英文的索引文件后面加了-en,把示例的中文索引加了进来,图片还是兰登的)* m" s- q; X( J$ L* _4 I# d  s/ [
【PicDic_EN-ZH_RHWCD_index.dsl.files.zip】 - k, m. z) z3 p# X
0 R; S9 @% v+ Z1 u% U+ v8 {2 `; i

! ^6 I$ D  u+ U9 U3 |
        "阿": ["0001", "0011", "0015", "1000"],
9 W+ o( E2 J5 e+ _        "阿门": ["0016"],
# B$ V' p# w" t5 P9 o        "阿姨": ["0008", "0105"],
' V/ J# s7 ?+ Q0 k# B9 J4 W        "啊": ["0002", "0010", "0100"],
* R- X* g2 D, w( A- ^5 f) v        "吖": ["0003"],) |% Z3 M8 i4 e: \
        "腌": ["0004"],4 J: Q( m# k  W3 {
        "挨": ["0005"],2 L! `0 |: o: D" h# x
        "唉": ["0006"],; p+ F) b6 O; K. m& [
        "哀": ["0007"],! @  v5 V) q* X
        "皑": ["0008"],
/ d, C/ L) ]& T1 Z( r7 ^+ b
( o7 o+ [" K! E: j- ^) c. S$ v
" ]" l" t2 V4 F9 P# p1 A
在'picdic'查询界面,输入‘阿',就会出现 ① ② ③ ④,
3 X$ D  ^1 `3 O* F: i: d5 |分别对应0001,0011,0015,1000这4个页面,默认显示第一个结果
1 V- D' p- Z( g% D点击其他序号就显示相应页面。/ }+ U. b" X( N4 b0 @' `
图片浏览功能很方便了:翻页/放大缩小/拖动(当然,没有像浏览PDF那么方便)
9 W% ?5 l* i4 p; i. ]

本帖子中包含更多资源

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

x

该用户从未签到

 楼主| 发表于 2026-7-15 00:43:24 | 显示全部楼层
实际就是:搞了一个统一格式format的索引式图片词典(无论是只有每页页首单词,或者是详细索引,不论中文还是英文索引)
- P# B- z6 i7 r, d1 L! e前端展示放在了goldendict的‘picdic’词条下,
' P. i: G' v# Q* }1 u1 k后端js搞定排序定位/显示结果和图片/图片操作定义等
& V( A3 u/ G% x, z7 C% z( }. g: Z- {, t/ _$ {& h# [1 Z7 W
如果有手机端APP集成了这个功能,也就是增添了对于这个统一格式format索引图片词典的支持,: p0 U" H* t2 w3 M0 G. c; ^  L% [2 E
前端就直接是APP搜索入口,和其他词典一样查询啦,同时显示,那样最好啦。

该用户从未签到

 楼主| 发表于 2026-7-15 01:14:52 | 显示全部楼层
本帖最后由 chigre3 于 2026-7-15 01:17 编辑 1 p; O. c2 b, b- q: D/ _

' Z( ?: [% _, c" X  P20260715:) h" j! N- ]( m: }/ L/ ]1 x
功能增强:
  D/ P: J  X0 G0 i, p" J1. 增设配置文件 picdic_display.ini(也还是js格式,放了常用设置选项)1 p5 C3 Z( \8 O& E% q' F8 k
2. 增加图片显示时预先加载前后页的可选功能(翻页浏览的感觉更丝滑了)" s( M( ?3 G" W4 u+ C
2. 增加默认模式下的左右滑动翻页功能(手指划一划翻页,很符合手机上操作啊)

该用户从未签到

 楼主| 发表于 2026-7-15 01:29:58 | 显示全部楼层
klwo2 发表于 2026-7-14 23:32
" O5 R1 K# O2 P, |咋支持中文词典的呀?按音序推断的吗?

: i' ^7 i- h% o/ E# ~" e我又想了下,就是如果一本全新的中文词典,只录入了(拼音→页码)这样的最简单形式的索引。对这样的索引词典,如何输入中文后去定位页面呢?
6 W- V2 l4 `; M$ [" H: m2 r& A. Q有python包,刚刚去了解了下,可以实现输入中文,转为拼音(多音也可以),然后用pinyin去定位页面。
7 W, \2 W, F7 E, A9 u. Y" I
" g, }; k+ d+ E# Bjs有没有这样的功能库我需要再查一下。其实没有,也可以自制一个数据库用来转化咯。

该用户从未签到

 楼主| 发表于 2026-7-15 04:32:46 | 显示全部楼层
功能升级:
6 Q7 H( }& _5 H: K. i6 \; I, t支持索引类型:拼音,汉字,英文(西文)
4 t0 n+ l0 Z: z/ Z对于中文词典,只制作了拼音索引,也可以支持了
2 q" C- e- }& V4 h' t; \* }: K-------------------------------------5 p: U6 Y" I' f1 i8 H: M
输入        索引类型        行为        结果$ E1 a* c5 [$ H% f- z
"参"        pinyin        取所有读音(can1, cen1, san1, shen1)        合并四个读音对应的所有页面
; \5 q( Z; x7 v) Z3 u"参加"        pinyin        取首字 "参" 的上下文读音 can1        仅匹配 can1 对应的页面% p+ c2 s' @( ?' f% l
"中心"        chinese        二分查找精确匹配 "中心"        返回 "中心" 对应的页面) [- r! |  ~" T0 @' N" ^1 J/ |
"center"        english        二分查找精确/前缀匹配 "center"        返回最接近的页面
! u5 i" G5 I# H7 y"can1"        pinyin        二分查找匹配键 "can1"        返回 "can1" 对应的页面

该用户从未签到

发表于 2026-7-15 19:29:50 | 显示全部楼层
chigre3 发表于 2026-7-15 04:32/ S0 c' b1 `4 y7 w3 I5 I5 U6 [3 S
功能升级:
  @6 y& O, N" K; C3 J$ M3 m4 ]支持索引类型:拼音,汉字,英文(西文)
) B" Y% d* j% i4 S0 U8 f6 a对于中文词典,只制作了拼音索引,也可以支持了

8 B$ d. u3 U+ x2 a& ]8 C$ I- H2 q我想来想去,你这套东西可能最适合《古今汉语词典》,因为它是按音序排的,收词量也算大
# [$ o8 g3 x# ?2 Y/ Y: k
& ~& e1 M; `9 D' H* A也适合《现代汉语大词典》——不过这套书大家都想要精确索引
# s# A  u* P( {
) }+ e+ r0 M! j# ~它暂时不适合按部首排的,或者按四角号码排的
  p1 ]( {% t* H- x
! o: Q( ]3 J+ |. G2 _我没工夫研究这个只是留言给感兴趣的朋友

该用户从未签到

 楼主| 发表于 2026-7-16 00:44:42 | 显示全部楼层
klwo2 发表于 2026-7-15 19:29
; S5 k2 O) q0 d% ?我想来想去,你这套东西可能最适合《古今汉语词典》,因为它是按音序排的,收词量也算大* E1 I: |' P( F6 V0 A& C( z4 p
# o/ f& A# n7 w9 D$ V; ], W
也适合 ...
' y9 ~% o' H  E1 F3 K4 A  [, \' p
我是觉得那些没有文字版的外文词典和中文词典都通用呀
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2026-10-17 08:02 , Processed in 0.021229 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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