OpenCC 範例 - 轉換 ePub 電子書中文繁簡字

這是一個 OpenCC 的使用範例 - 轉換 ePub 電子書
說明以後有空再補......

OpenCC
http://www.mobile01.com/topicdetail.php?f=511&t=4138972

7za (7-Zip Command Line Version)
http://www.7-zip.org/download.html

程式路徑:
BAT所在目錄\opencc\opencc.exe
BAT所在目錄\unarchiver\7za.exe

將以下內容另存為 BAT 檔即可
然後直接拖曳 epub 檔給 BAT 開啟即可

BAT:
@echo off
path=%~dp0opencc;%~dp0unarchiver;%path%
cd /d "%~dp0opencc"

echo.--------------------------------
echo. 刪除暫存檔案
echo.--------------------------------

rmdir /s /q "%TEMP%\myepub"

:Main
if "%~1"=="" goto :Completed

echo.--------------------------------
echo. 解壓縮ePub電子書
echo.--------------------------------

7za x "%~1" -o"%TEMP%\myepub"

echo.--------------------------------
echo. 開始轉換檔案
echo.--------------------------------

set FILExt=*.ncx *.opf *.xhtml *.html *.txt

for /r "%TEMP%\myepub" %%i in (%FILExt%) do (
echo. "%%~i"
opencc -i "%%~i" -o "%%~i.new" -c s2tw.json
del "%%~i" & ren "%%~i.new" "%%~nxi"
)

echo.--------------------------------
echo. 封裝ePub檔案
echo.--------------------------------

7za a -tzip "%~dpn1.cht.epub" "%TEMP%\myepub\*"


echo.--------------------------------
echo. 刪除暫存檔案
echo.--------------------------------

rmdir /s /q "%TEMP%\myepub"

if not "%~2"=="" (
shift /1
goto :Main
)

echo.--------------------------------
echo. "%~nx1" 轉換結束
echo.--------------------------------
pause
2014-12-11 17:07 發佈
請問能否批次轉換?還是只能一次轉一個?
感謝您的分享!

kingdragon wrote:
這是一個 OpenC...(恕刪)


感謝分享
sampocopy wrote:
請問能否批次轉換?還...(恕刪)

要轉多個EPUB
只要選取多個EPUB拖曳給BAT開啟即可
請問如果只是想單純的轉換txt文字檔(比方說 簡體的 1.txt 2.txt ),而不是epub檔,該如何寫這個 BAT 檔?
感謝您!
測試用以下這個可單文件轉換,但是bat檔只能放在opencc目錄下才行。

@echo.
@cd /d %~dp0
@opencc.exe -i %1 -o "%~dp1%~n1.cht%~x1" -c s2tw.json
@echo.
@echo Done!
@echo.
@pause
sampocopy wrote:
測試用以下這個可單文件轉換,但是bat檔只能放在opencc目錄下才行

要轉多個檔案,你可以參考以下範例

@echo off
path=opencc.exe所在目錄;%path%
cd /d ".json檔所在目錄"
:Loop
if "%~1"=="" goto :End
opencc -i "%~1" -o "%~dpn1.cht%~x1" -c s2tw.json
shift /1
goto :Loop
:End
pause

斜體部分請自行手動修改

假設你的路徑是:
BAT所在目錄\opencc\opencc.exe

則:
path=%~dp0opencc;%path%
cd /d "%~dp0opencc"

--------

輸入文件的字元編碼必須是 Unicode
你可以事先用其他工具轉成 UTF-8 字元編碼

http://www.mobile01.com/topicdetail.php?f=511&t=4192036

或是使用 Echa 自動轉換

@echo off
path=opencc.exe所在目錄;enconv所在目錄;%path%
cd /d ".json檔所在目錄"
:Loop
if "%~1"=="" goto :End
copy "%~1" "%~dpn1.temp%~x1"
enconv -L zh -x utf8 "%~dpn1.temp%~x1"
opencc -i "%~dpn1.temp%~x1" -o "%~dpn1.cht%~x1" -c s2tw.json
del "%~dpn1.temp%~x1"
shift /1
goto :Loop
:End
pause
感謝神人熱心幫忙,終於可以轉多檔了,再次感謝,受益良多!
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?