答案1
理论上,您只需更改文件\chaptername
中的宏即可.cfg
:
\Preamble{xhtml}
\begin{document}
\let\chaptername\relax
\EndPreamble
这可以正常工作,但是我发现这个例子不起作用:
% !TeX program = xelatex
\documentclass[justified,12.5pt]{book}
\usepackage{float}
\def\linenumberfont{\normalfont}
\usepackage{polyglossia}
\setmainfont[Script=Kannada]{Tunga}%{NudiUni01K.ttf}
\setmainlanguage{kannada}
\begin{document}
%\let\chaptername\relax
\chapter{ಪೀಠಿಕೆ}
ಆಧುನಿಕ ಬದುಕಿನ ಜ್ಞಾನ ವಿಜ್ಞಾನ ಕ್ಷೇತ್ರದಲ್ಲಿನ ಅದ್ಭುತ ಅವಿಷ್ಕಾರಗಳಲ್ಲೊಂದಾದ ಮಾಹಿತಿ ತಂತ್ರಜ್ಞಾನದ ಒಂದು ವಿನೂತನ ಪರಿಕಲ್ಪನೆ ವಿಕಿಪೀಡಿಯಾ. ಹವಾಮಿ ಭಾಷೆಯಲ್ಲಿ ವಿಕಿ
ಎಂದರೆ ಶೀಘ್ರ ಅಥವಾ ತ್ವರಿತಗತಿ ಎಂದರ್ಥ. ಇಂಗ್ಲೀಷಿನಲ್ಲಿ ಎನ್ ಸೈಕ್ಲೊಪೀಡಿಯಾ ಎಂದರೆ ವಿಶ್ವಕೋಶ ಎಂದರ್ಥ. ಇವೆರಡೂ ಶಬ್ದಗಳನ್ನು ಸಂಯೋಜಿಸಿ
ವಿಕಿಪೀಡಿಯಾ ಎಂಬ ಗಣಕೀಕೃತ ವಿಶ್ವಕೋಶದ ಮಾದರಿಯಲ್ಲಿ ಇದನ್ನು ಅಭಿವೃದ್ಧಿಗೊಳಿಸಲಾಗಿದೆ. ಕನ್ನಡದಲ್ಲಿ ಇದನ್ನು 'ತ್ವರಿತ ವಿಶ್ವಕೋಶ' ಎಂದು ಹೆಸರಿಸ ಬಹುದು.
ಇದೊಂದು ಬಹುಭಾಷೀಯ ಹಾಗೂ ಅಂತರ್ಜಾಲ ಆಧಾರಿತ ವಿಶ್ವಕೋಶವಾಗಿದ್ದು,ನಿರಂತರವಾಗಿ ಪರಿಷ್ಕರಣಗೂಳ್ಳಬಲ್ಲ ಮಾಹಿತಿ ವಿತರಣ ಸಾಧನವಾಗಿದೆ.
\end{document}
我猜测章节名称是由 Polyglossia 在开始文档时设置的,所以它会覆盖我们的重新定义。
无论如何,由于您还想更改章节编号,最简单的方法是使用make4ht
构建文件。将以下代码保存为mybuild.lua
:
local domfilter = require "make4ht-domfilter"
local number_table = {
["0"] = "೦",
["1"] = "೧",
["2"] = "೨",
["3"] = "೩",
["4"] = "೪",
["5"] = "೫",
["6"] = "೬",
["7"] = "೭",
["8"] = "೮",
["9"] = "೯",
}
local process = domfilter {
function(dom)
-- remove <br> elements from chapter
for _, br in ipairs(dom:query_selector "h2 br") do
local space = br:create_text_node(" ")
br:replace_node(space)
end
-- -- remove text from chapter mark and convert numbers
for _, mark in ipairs(dom:query_selector ".titlemark") do
local titlemark = mark:get_text() or ""
local number = titlemark:match("([%d%.]+)") or ""
-- replace arabic number to kannada number
local newnumber = number:gsub("%d", number_table)
-- crete new HTML mode
-- add space that will separate number from rest of the chapter title
local numbernode = mark:create_text_node(newnumber .. " ")
-- replace old text
mark._children = {numbernode}
end
dom:traverse_elements(function(el)
for _, child in ipairs(el:get_children()) do
if child:is_text() then
-- replace numbers in all texts
child._text = child._text:gsub("%d", number_table)
end
end
end)
return dom
end
}
Make:match("html$", process)
我们使用 LUaXML DOM 库来处理 HTML,查找所有章节编号并将其转换为正确的形式。
结果如下:
使用编译
tex4ebook -e mybuild.lua -x filename.tex