tex4ebook、tex4ht 错误“非法存储地址”

tex4ebook、tex4ht 错误“非法存储地址”

运行 tex4ebook 时我收到以下错误消息

--- warning --- File `EBGaramond-Regular-lf-ts1.htf' starts/ends with character code 255 (instead of 246)
--- warning --- File `EBGaramond-Regular-lf-ts1.htf' starts/ends with character code 255 (instead of 246)
--- error --- Illegal storage address

并给出错误代码 1,没有 epub 文件输出。

我需要在 MWE 中重现错误吗?或者有没有解决方案?

更新 1

在命名的 htf 文件中,前 9 行如下:

EBGaramond-Regular-lf-ts1 11 255
'¸' '' cedilla 11
'˛' '' ogonek 12
'‚' '' quotesinglbase 13
'' ''
'' ''
'' ''
'' ''
'„' '' quotedblbase 18

有人知道这是什么意思吗? 是不是哪里出了问题? 顺便说一句,用 notepad++ 查看了这个文件的编码,是 utf8(无 BOM)。

更新 2

我尝试制作 MWE,但这似乎很难。以下是运行 tex4ebook 时编译错误的最后一行。也许有帮助?我尝试在 MWE 中重现错误,然后再回来。

Searching `EBGaramond-Regular-lf-t1.htf' for `EBGaramond-Regular-osf-t1.htf'
(c:/texlive/2023/texmf-dist/tex4ht/ht-fonts/unicode/EB_Garamond_Regular/EBGaramond-Regular-lf-t1.htf)
[1
[FATAL]   make4ht-lib: Fatal error. Command tex4ht returned exit code 1
C:\texlive\2023\bin\windows\runscript.tlu:921: command failed with exit code 1:

更新 3 - 最小工作示例

我发现了一个 MWE,它代表了运行 tex4ebook 时发生的情况并得到了上述非法存储地址的错误:

\documentclass[11pt,a4paper]{report}
\usepackage[cmintegrals,cmbraces]{newtxmath}
\usepackage{ebgaramond-maths}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{nextpage}
\usepackage{bbding}
% needs bbding.4ht by Michal H. in same folder for tex4ebook run
\usepackage{tex4ebook}
\providecommand\phantomsection{}
\usepackage[continuous,page]{pagenote}
% needs pagenote.4ht by Michal H. in same folder for tex4ebook run
\makepagenote
\let\footnote=\pagenote
\newcommand*{\addtonotesnewcommand}[1]{%
    \ifpnhaschapter%
    \ifnum\value{pnotesavechap}=\value{chapter}\else%
    \setcounter{pnotesavechap}{\value{chapter}}%
    \fi%
    \else%
    \ifnum\value{pnotesavechap}=\value{section}\else%
    \setcounter{pnotesavechap}{\value{section}}%
    \fi%
    \fi%
    \addtonotes{\vspace*{0.7\baselineskip}\protect\noindent\vspace*{0.35\baselineskip}\textsc{\large #1}}%
}% by Michal H.
\newcommand{\Quoteforchapter}[3]{%
    \begin{flushright}
        \begin{minipage}{#3}\small
            \noindent\parbox{\textwidth}{\emph{#1}}\\[0.35\baselineskip]
            \raggedleft\scriptsize #2
        \end{minipage}
\end{flushright}}

\begin{document}
When running \TeX4ebook the following will happen:
 
\Quoteforchapter{>>Just to comment this out separately\\
    the error disappears<<}{Some author}{0.4\textwidth}

\addtonotesnewcommand{First Chapter: Just to comment this out the error disappears}

\textsc{A Name}: Just to comment this out separately the error disappears\footnote{A footnote that becomes an pagenote}

\AsteriskThinCenterOpen : Just to comment this out separately the error disappears

\printnotes

\end{document}

当我说“错误消失”时,我的意思是生成了一个 epub 文件。出现错误时没有生成任何文件(错误代码 1)。

更新 4-将文件移动到新目录

我将.tex和两个.4ht文件(bbding、pagenote)移动到新目录,首先移动到 下OneDrive/...,然后移动到 下C:/...。但在这两种情况下,错误仍然存​​在。我使用了 not my.cfg和 not my .mk4。错误看起来和以前一样:

...
Transcript written on Testdocument_illegalstorageaddress.log.
[INFO]    mkutils:  xhtml,charset=utf-8,epub,uni-html4,html
[INFO]    mkutils: executing: tex4ht  -cmozhtf -utf8 -cmozhtf -utf8 "Testdocument_illegalstorageaddress.dvi"
--- error --- Illegal storage address
....
Searching `EBGaramond-Regular-lf-t1.htf' for `EBGaramond-Regular-osf-t1.htf'
(c:/texlive/2023/texmf-dist/tex4ht/ht-fonts/unicode/EB_Garamond_Regular/EBGaramond-Regular-lf-t1.htf)
[1
[FATAL]   make4ht-lib: Fatal error. Command tex4ht returned exit code 1
C:\texlive\2023\bin\windows\runscript.tlu:921: command failed with exit code 1:

我还不知道现在该怎么办。

我另外尝试了另一种字体,我使用了\usepackage{lmodern}。这样,错误就消失了,无论是在 OneDrive 下还是在 Windows C:/ 下。

如何修复已使用的字体的问题ebgaramond

答案1

错误illegal storage address消失了when using the above MWE。但具体原因尚不清楚,因为在其他 sourcename.tex 文件中,错误仍然存​​在。

我使用较早的字体(如在 MWE 中)tex4ebook -a debug -c config.cfg -e build.mk4 Testdocument.tex "fonts"的选项运行,输出结果为 epub 文件。前一天运行 tex4ebook 时没有此选项,因此出现上述错误,没有 epub 输出。"fonts"ebgaramond"fonts"

但是当我现在再次运行 tex4ebookwithout选项时"fonts"也没有出现错误,这是应该的,因为前一天它导致了上述错误。

也许其他人知道整个问题的更合适的答案并在这里回答?

相关内容