tsiank 发表于 2019-3-18 17:29:21

(20220909更新)图片版mdx源文件生成工具

本帖最后由 tsiank 于 2022-9-9 21:08 编辑

20201223更新:
1 解决了跨页词条无法翻到下一页的问题;
2 增加了页内词条列表分栏功能;
3 可自动调用并打开mdxbuilder,填好相关选项;

几年前我发布过图片版mdx的制作方法,算是最入门也是最简便的方法了。详见: https://www.pdawiki.com/forum/fo ... ad&tid=13451&extra=然而对于有些网友而言,可能看了后还是不会操作,主要在于正则表达式以及查找替换方面。加之最近图片版字典也是越来越多,呈现形式也比以前丰富,所以如果有一个便捷的工具来制作那是更好不过了。有感于@喬治兄 最近辛苦制作外研社新英漢詞典 (圖片版):https://www.pdawiki.com/forum/forum.php?mod=viewthread&tid=33566&extra= 及发布制作方法,经过昨夜的酝酿及今天的修改调试,我用excel vba写了这个图片版mdx源文件生成工具,只要有词条和对应的页码,便无须繁杂的操作,直接一键生成mdx源文件。虽然代码比较烂,好在运行速度还可以。现在发布给大家有需要时使用。

使用说明:
1 打开图片版mdx源文件生成工具.xlsm,把词条与对应的页码按顺序放入A列和B列,注意A列为文本格式
2 在D1单元格输入要制作的词典名字,中英文皆可
3 在F1单元格输入第1个词头对应的图片名字,比如fr_0001.png,英汉大词典001.jpg,WLG 001.png等,图片名需由汉字或英文+序号组成,汉字或英文与序号之间可由下划线,减号或空格组成。
4 在H1单元格输入正文总页码
5 点击简单图片版转换,可生成页面只由图片组成的mdx源文件,如我以前制作的王力古汉语字典等;点击词条列表版转换,可生成页面由词条列表和图片组成的mdx源文件
5 在本文件目录下会生成txt源文件和相应的css文件,源文件板式为带签名的UTF8,打开检查无误后需要另存为UFT8(无签名)格式;css文件可根据需要自行修改,比如显示与隐藏词条列表等。


里面的词头与页码即为喬治兄 的外研社新英漢詞典 (圖片版)数据,在此表示感谢!


本工具用excel 2016写成, excel 2010及以上版应该都可以使用。使用时需要启用excel的宏功能(在文件——选项——信任中心,右边点击信任中心设置——宏设置——启用所有宏,确定):



下载链接:




喬治兄 发表于 2019-3-19 22:29:56

本帖最后由 喬治兄 于 2019-3-20 01:12 编辑

tsiank 兄:
我剛想到應可如此規劃
也就是針對圖是2欄或是3欄
期實只是對映的那個table要給出那欄的第一個單字 Achilliches Heel 就可以作為切割點
讓我再補幾點:
很多首尾詞都有數字.....此若能處理好則自動編頁應沒問題
1. 如圖此只解釋對映的那個 table 的 desert 的處理中的那個先忽略不要看
也就是說當 625 頁尾詞有 desert1 而 626 頁 首詞也有desert1時
需以黃色那欄為基準..........此是以Excel vlookup 的匹配特性的可能狀況思考
但若VBA應可避掉很多類似狀況
2. 若要中間也作一個割點時則相對需輸入中間那個首詞

wjl 发表于 2021-2-10 13:39:44

本帖最后由 wjl 于 2021-2-10 13:44 编辑

新版能够出结果了,不过似乎仍未处理图片文件名中的栏位编号问题。分栏切分图片的文件名一般是前缀+分隔符+页码+分隔符+栏号+扩展名(如YY_0001.1.png,YY_0001-1.png等)

词头        页码(按顺序排列)        栏位(可以不填写)
阿那贝律        1        1
暗典        1        1
暗韵        1        1
按断副词        1        2
按断句        1        2
按断式        2        1
按断语气        2        2
按断助词        2        2


暗韵
<link rel="stylesheet" type="text/css" href="YY.css"/><pagetitle><a class="goto" href="entry://YY_0001"><mark>0001</mark></a><pggap> </pggap><a class="goto" href="entry://YY_0002">0002</a><pggap> </pggap><a class="goto" href="entry://YY_0003">0003</a><pggap> </pggap><a class="goto" href="entry://YY_0004">0004</a><pggap> </pggap><a class="goto" href="entry://YY_0005">0005</a><pggap> </pggap><a class="goto" href="entry://YY_0006">0006</a><pggap> </pggap><a class="goto" href="entry://YY_0007">0007</a><pggap> </pggap><a class="goto" href="entry://YY_0008">0008</a><pggap> </pggap><a class="goto" href="entry://YY_0009">0009</a><pggap> </pggap><a class="goto" href="entry://YY_0010">0010</a></pagetitle><hwlt><colm><a href="entry://阿那贝律">阿那贝律</a>, <a href="entry://暗典">暗典</a>, <a href="entry://暗韵"><mark2>暗韵</mark2></a> </colm> <colgap> </colgap> <colm2><a href="entry://按断副词">按断副词</a>, <a href="entry://按断句">按断句</a> </colm2></hwlt><img class="pic" src="YY_0001.1.png"><pagetitle><a class="goto" href="entry://YY_0001"><mark>0001</mark></a><pggap> </pggap><a class="goto" href="entry://YY_0002">0002</a><pggap> </pggap><a class="goto" href="entry://YY_0003">0003</a><pggap> </pggap><a class="goto" href="entry://YY_0004">0004</a><pggap> </pggap><a class="goto" href="entry://YY_0005">0005</a><pggap> </pggap><a class="goto" href="entry://YY_0006">0006</a><pggap> </pggap><a class="goto" href="entry://YY_0007">0007</a><pggap> </pggap><a class="goto" href="entry://YY_0008">0008</a><pggap> </pggap><a class="goto" href="entry://YY_0009">0009</a><pggap> </pggap><a class="goto" href="entry://YY_0010">0010</a></pagetitle>
</>
按断副词
<link rel="stylesheet" type="text/css" href="YY.css"/><pagetitle><a class="goto" href="entry://YY_0001"><mark>0001</mark></a><pggap> </pggap><a class="goto" href="entry://YY_0002">0002</a><pggap> </pggap><a class="goto" href="entry://YY_0003">0003</a><pggap> </pggap><a class="goto" href="entry://YY_0004">0004</a><pggap> </pggap><a class="goto" href="entry://YY_0005">0005</a><pggap> </pggap><a class="goto" href="entry://YY_0006">0006</a><pggap> </pggap><a class="goto" href="entry://YY_0007">0007</a><pggap> </pggap><a class="goto" href="entry://YY_0008">0008</a><pggap> </pggap><a class="goto" href="entry://YY_0009">0009</a><pggap> </pggap><a class="goto" href="entry://YY_0010">0010</a></pagetitle><hwlt><colm><a href="entry://阿那贝律">阿那贝律</a>, <a href="entry://暗典">暗典</a>, <a href="entry://暗韵">暗韵</a> </colm> <colgap> </colgap> <colm2><a href="entry://按断副词"><mark2>按断副词</mark2></a>, <a href="entry://按断句">按断句</a> </colm2></hwlt><img class="pic" src="YY_0001.1.png"><pagetitle><a class="goto" href="entry://YY_0001"><mark>0001</mark></a><pggap> </pggap><a class="goto" href="entry://YY_0002">0002</a><pggap> </pggap><a class="goto" href="entry://YY_0003">0003</a><pggap> </pggap><a class="goto" href="entry://YY_0004">0004</a><pggap> </pggap><a class="goto" href="entry://YY_0005">0005</a><pggap> </pggap><a class="goto" href="entry://YY_0006">0006</a><pggap> </pggap><a class="goto" href="entry://YY_0007">0007</a><pggap> </pggap><a class="goto" href="entry://YY_0008">0008</a><pggap> </pggap><a class="goto" href="entry://YY_0009">0009</a><pggap> </pggap><a class="goto" href="entry://YY_0010">0010</a></pagetitle>

页码只链接了一张图片,不知道是不是应该将多张(栏位数)图片水平并排显示出来,跟实际页面类似

YY_0733
<link rel="stylesheet" type="text/css" href="YY.css"/><pagetitle><a class="goto" href="entry://YY_0724">0724</a><pggap> </pggap><a class="goto" href="entry://YY_0725">0725</a><pggap> </pggap><a class="goto" href="entry://YY_0726">0726</a><pggap> </pggap><a class="goto" href="entry://YY_0727">0727</a><pggap> </pggap><a class="goto" href="entry://YY_0728">0728</a><pggap> </pggap><a class="goto" href="entry://YY_0729">0729</a><pggap> </pggap><a class="goto" href="entry://YY_0730">0730</a><pggap> </pggap><a class="goto" href="entry://YY_0731">0731</a><pggap> </pggap><a class="goto" href="entry://YY_0732">0732</a><pggap> </pggap><a class="goto" href="entry://YY_0733"><mark>0733</mark></a></pagetitle><hwlt><colm><a href="entry://组合"><mark2>组合</mark2></a>, <a href="entry://组合词">组合词</a>, <a href="entry://组合能力">组合能力</a>, <a href="entry://组合式">组合式</a> </colm> <colgap> </colgap> <colm2><a href="entry://组合性记号">组合性记号</a>, <a href="entry://纂集派">纂集派</a>, <a href="entry://尊称">尊称</a> </colm2></hwlt><img class="pic" src="YY_0733.1.png"><pagetitle><a class="goto" href="entry://YY_0724">0724</a><pggap> </pggap><a class="goto" href="entry://YY_0725">0725</a><pggap> </pggap><a class="goto" href="entry://YY_0726">0726</a><pggap> </pggap><a class="goto" href="entry://YY_0727">0727</a><pggap> </pggap><a class="goto" href="entry://YY_0728">0728</a><pggap> </pggap><a class="goto" href="entry://YY_0729">0729</a><pggap> </pggap><a class="goto" href="entry://YY_0730">0730</a><pggap> </pggap><a class="goto" href="entry://YY_0731">0731</a><pggap> </pggap><a class="goto" href="entry://YY_0732">0732</a><pggap> </pggap><a class="goto" href="entry://YY_0733"><mark>0733</mark></a></pagetitle>
</>

如果页码不连续,则默认以上一页最后一个词头为所缺失页词头。感觉这一项可以作为可选功能,以便在任选几页生成测试mdx文件时,不会生成过多不必要的页面。

tsiank 发表于 2019-3-21 00:15:05

本帖最后由 tsiank 于 2019-3-21 00:25 编辑

喬治兄 发表于 2019-3-20 21:41
tsiank 兄:
再度請教, 受 kriskr 兄之託, 讓小弟幫他用21世紀英漢的詞頭配外研社新英漢詞典
整理後483206詞 ...
alpha(      46
Athanasius(      95
delta (      392
antipathetic)      66
ASTMS)      93
d)      372
k)      816
mit)      969
neks)      1014
nit)      1026
s)      1342
t)      1561
Treitschke)      1634
U)      1658
up)      1688
vt.)      1722
x)      1781

这几个词条错误所致,都是只有装修括号。另外,词条数太多了,词条列表版的话生成的文件巨大,运行一会儿就崩溃了。到benedictions都已经800多兆了。除非你把词条分成几个小部分来依次生成

55487754 发表于 2019-3-18 18:26:12

非常感谢!!!!试试

VimVim 发表于 2019-3-18 18:29:40

哇!大神来了!之前的教程已经很经典了,一直是最佳指引,现在又来了一个工具,赞!赞!赞!

图像版mdict字典制作方法
https://www.pdawiki.com/forum/forum.php?mod=viewthread&tid=13451
(出处: 掌上百科 - PDAWIKI)

theduck1968 发表于 2019-3-18 21:19:45

thank you very much! ! ! ! Try

liuyunrushui 发表于 2019-3-19 11:02:25

太厉害了!

非常感谢t大!

请问t大图片文件也与mdx源文件放在同一个文件夹下吗?

tsiank 发表于 2019-3-19 11:29:09

liuyunrushui 发表于 2019-3-19 11:02
太厉害了!

非常感谢t大!


跟图片文件位置无关

bob123 发表于 2019-3-19 12:11:30

这个太赞了,制作图片版mdx更方便了

liuyunrushui 发表于 2019-3-19 12:13:41

tsiank 发表于 2019-3-19 11:29
跟图片文件位置无关

好的,多谢指教!有问题再向您讨教!

neilzhu 发表于 2019-3-19 12:45:36

大神啊,有了这个就更方便了,trying

喬治兄 发表于 2019-3-19 21:25:52

本帖最后由 喬治兄 于 2019-3-19 21:55 编辑

tsiank 兄:
不知是我的Excelvba 有問題
或是我輸入有問題
錯誤訊息
剛發現原來我的 Excel 好像是 2007 版本
能否提供 2007 版本能用的 vba ......謝謝啦
{:4_91:}

tsiank 发表于 2019-3-19 22:17:06

喬治兄 发表于 2019-3-19 21:25
tsiank 兄:
不知是我的Excelvba 有問題
或是我輸入有問題


应该是没有开启宏功能吧,照我第一张图片开启宏功能看看

喬治兄 发表于 2019-3-19 22:25:53

本帖最后由 喬治兄 于 2019-3-19 22:27 编辑

tsiank 发表于 2019-3-19 22:17
应该是没有开启宏功能吧,照我第一张图片开启宏功能看看

tsiank 兄:
有開啟可能是 2007 版本的 excel 問題吧!
因檔案在 windows 是看有點怪怪的

喬治兄 发表于 2019-3-19 23:18:30

本帖最后由 喬治兄 于 2019-3-19 23:30 编辑

另外 equitable ~ equity 之間是沒有字的
若光以字首配此區間有時為多配
實現此功能還有一些可能失誤的狀況
讓我在想想如何避開........配錯欄位

tsiank 发表于 2019-3-19 23:50:59

喬治兄 发表于 2019-3-19 22:25
tsiank 兄:
有開啟可能是 2007 版本的 excel 問題吧!
因檔案在 windows 是看有點怪怪的


你那里面文件夹里怎么多了一个Graph Source.xlsm文件?删除这个看看

喬治兄 发表于 2019-3-19 23:52:14

本帖最后由 喬治兄 于 2019-3-19 23:58 编辑

兩欄式的首尾詞出現的狀況無非就這三種
也就是說若留一欄來標示是哪一種則可以配對欄位
也就是說除了圖 NO1 的狀況 中的那字作切割
若圖 NO2 , NO3 中的那字可不處理

tsiank 发表于 2019-3-19 23:53:51

喬治兄 发表于 2019-3-19 23:18
另外 equitable ~ equity 之間是沒有字的
若光以字首配此區間有時為多配
實現此功能還有一些可能失誤的狀況 ...

哈,太复杂了代码我可写不来{:4_91:}

喬治兄 发表于 2019-3-19 23:54:22

tsiank 发表于 2019-3-19 23:50
你那里面文件夹里怎么多了一个Graph Source.xlsm文件?删除这个看看

本以為是簡體檔名的問題
改成英文檔名問題依樣
{:4_105:}

tsiank 发表于 2019-3-19 23:56:04

喬治兄 发表于 2019-3-19 23:54
本以為是簡體檔名的問題
改成英文檔名問題依樣

那就只有升级你的OFFICE啦

喬治兄 发表于 2019-3-19 23:59:14

tsiank 发表于 2019-3-19 23:56
那就只有升级你的OFFICE啦

嗯嗯, 也只能如此
{:4_105:}

喬治兄 发表于 2019-3-20 00:03:48

tsiank 发表于 2019-3-19 23:53
哈,太复杂了代码我可写不来

tsiank 兄:
應該沒問題的
慢慢來
您靜下來思考一下
釐清一些細節一定成的
{:4_105:}

tsiank 发表于 2019-3-20 00:32:30

喬治兄 发表于 2019-3-19 23:59
嗯嗯, 也只能如此

我估计是07版的不支持这些按钮,你可以在sheet1那里右键选择查看代码,然后在模块1里面直接运行代码应该是可以的

喬治兄 发表于 2019-3-20 00:46:25

tsiank 发表于 2019-3-20 00:32
我估计是07版的不支持这些按钮,你可以在sheet1那里右键选择查看代码,然后在模块1里面直接运行代码应该 ...

很可能是簡繁體的問題
{:4_105:}

zhongl 发表于 2019-3-20 00:49:36

tsiank先生,曾下载使用你制作的《康熙字典》修改版,很好。后来台湾的WFG制作的《康熙字典》支持“开卷助理”,可以和PDF书对照,可谓锦上添花。先生能否也能让你这个生成工具支持“开卷助理”?即生成MDX后显示页码,那可就十全十美了。谢谢!

喬治兄 发表于 2019-3-20 01:20:18

tsiank 发表于 2019-3-20 00:32
我估计是07版的不支持这些按钮,你可以在sheet1那里右键选择查看代码,然后在模块1里面直接运行代码应该 ...


很可能是簡繁體的問題
按下偵錯後跳到這一行

FileCopy ThisWorkbook.PATH & "\饜离恅璃\" & "潠等芞唳css耀啣.css", ThisWorkbook.PATH & "\" & qzs & ".css"

{:4_105:}
页: [1] 2 3
查看完整版本: (20220909更新)图片版mdx源文件生成工具