我喜欢 提供的字体\usepackage{bera}
。但在 tex4ht 中使用它时,它似乎会因为某种原因从某些单词中删除一些字母。在此示例中,它不喜欢这些f
字母,并将其从所有单词中删除。
是否可以在 tex4ht 中实现此功能?以下是 MWE
\documentclass[11pt]{article}%
\usepackage{bera}
\usepackage[T1]{fontenc}
\begin{document}
term by term differentiation is justified here
\end{document}
lualatex foo.tex
给出
但 make4ht -u foo.tex
给予
我也试过
\documentclass[11pt]{article}%
\usepackage{bera}
\ifdefined\HCode
\usepackage[utf8]{luainputenc}
\else
\usepackage[T1]{fontenc}
\fi
\begin{document}
term by term differentiation is justified here
\end{document}
但结果是一样的。
是否需要一些技巧才能使其在 tex4ht 中工作,或者它根本不受支持?
在 Linux 上使用 texlive 2017。我仅使用lualatex
它编译为 PDF,并使用使用make4ht -u
它编译为 HTML。PDF 没问题,问题仅在于 HTML。
更新
添加日志文件
drop_letter>cat foo.tex
\documentclass[11pt]{article}%
\usepackage{bera}
\usepackage[T1]{fontenc}
\begin{document}
term by term differentiation is justified here
\end{document}
drop_letter>ls -lrt *.htf
-rwxrwxrwx 1 me me 44 Feb 15 11:51 fveb8r.htf
-rwxrwxrwx 1 me me 46 Feb 15 11:52 fvero8r.htf
-rwxrwxrwx 1 me me 6 Feb 15 11:53 fver8t.htf
-rwxrwxrwx 1 me me 42 Feb 15 11:55 fveb8t.htf
-rwxrwxrwx 1 me me 44 Feb 15 11:56 fvero8t.htf
-rwxrwxrwx 1 me me 10 Feb 15 18:42 fver8r.htf
drop_letter>cat fver8r.htf
.pcrro8r
drop_letter>which make4ht
/usr/local/texlive/2017/texmf-dist/scripts/make4ht/make4ht
屏幕日志
drop_letter>make4ht foo.tex
.....
Output written on foo.dvi (1 page, 9652 bytes).
....
Transcript written on foo.log.
Make4ht: tex4ht "foo.dvi"
----------------------------
tex4ht.c (2012-07-25-19:36 kpathsea)
tex4ht foo.dvi
(/usr/local/texlive/2017/texmf-dist/tex4ht/base/unix/tex4ht.env)
(/usr/local/texlive/2017/texmf-dist/tex4ht/ht-fonts/iso8859/1/charset/unicode.4hf)
(/usr/local/texlive/2017/texmf-dist/fonts/tfm/public/bera/fver8t.tfm)
(fver8t.htf)
.lm-ec--- error --- Improper file `fver8t.htf'
Make4ht: Fatal error. Command tex4ht returned exit code 256
drop_letter>
日志档案
drop_letter>cat foo.log
This is pdfTeX, Version 3.14159265-2.6-1.40.18 (TeX Live 2017) (preloaded format=latex 2017.11.10) 15 FEB 2018 18:47
entering extended mode
restricted \write18 enabled.
%&-line parsing enabled.
**\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCo
de"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.
{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\
documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname
tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{
\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode xhtml,.a.b.c.\input foo.tex
(./foo.tex (/usr/local/texlive/2017/texmf-dist/tex/latex/base/article.cls
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
(/usr/local/texlive/2017/texmf-dist/tex/latex/base/size11.clo
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option)
)
\c@part=\count79
\c@section=\count80
\c@subsection=\count81
\c@subsubsection=\count82
\c@paragraph=\count83
\c@subparagraph=\count84
\c@figure=\count85
\c@table=\count86
\abovecaptionskip=\skip41
\belowcaptionskip=\skip42
\bibindent=\dimen102
)
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/tex4ht.sty
version 2016-07-18-16:08
Package: tex4ht
--------------------------------------
--- Note --- for _ at preamble, use the command line option `early_'
--------------------------------------
--------------------------------------
--- Note --- for ^ at preamble, use the command line option `early^'
--------------------------------------
\tmp:toks=\toks14
)
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/usepackage.4ht)
(/usr/local/texlive/2017/texmf-dist/tex/latex/bera/bera.sty
Package: bera 2004/01/31 (WaS)
(/usr/local/texlive/2017/texmf-dist/tex/latex/base/fontenc.sty
Package: fontenc 2017/04/05 v2.0i Standard LaTeX package
(/usr/local/texlive/2017/texmf-dist/tex/latex/base/t1enc.def
File: t1enc.def 2017/04/05 v2.0i Standard LaTeX file
LaTeX Font Info: Redeclaring font encoding T1 on input line 48.
))
(/usr/local/texlive/2017/texmf-dist/tex/latex/base/textcomp.sty
Package: textcomp 2017/04/05 v2.0i Standard LaTeX package
Package textcomp Info: Sub-encoding information:
(textcomp) 5 = only ISO-Adobe without \textcurrency
(textcomp) 4 = 5 + \texteuro
(textcomp) 3 = 4 + \textohm
(textcomp) 2 = 3 + \textestimated + \textcurrency
(textcomp) 1 = TS1 - \textcircled - \t
(textcomp) 0 = TS1 (full)
(textcomp) Font families with sub-encoding setting implement
(textcomp) only a restricted character set as indicated.
(textcomp) Family '?' is the default used for unknown fonts.
(textcomp) See the documentation for details.
Package textcomp Info: Setting ? sub-encoding to TS1/1 on input line 79.
(/usr/local/texlive/2017/texmf-dist/tex/latex/base/ts1enc.def
File: ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file
)
LaTeX Info: Redefining \oldstylenums on input line 334.
Package textcomp Info: Setting cmr sub-encoding to TS1/0 on input line 349.
Package textcomp Info: Setting cmss sub-encoding to TS1/0 on input line 350.
Package textcomp Info: Setting cmtt sub-encoding to TS1/0 on input line 351.
Package textcomp Info: Setting cmvtt sub-encoding to TS1/0 on input line 352.
Package textcomp Info: Setting cmbr sub-encoding to TS1/0 on input line 353.
Package textcomp Info: Setting cmtl sub-encoding to TS1/0 on input line 354.
Package textcomp Info: Setting ccr sub-encoding to TS1/0 on input line 355.
Package textcomp Info: Setting ptm sub-encoding to TS1/4 on input line 356.
Package textcomp Info: Setting pcr sub-encoding to TS1/4 on input line 357.
Package textcomp Info: Setting phv sub-encoding to TS1/4 on input line 358.
Package textcomp Info: Setting ppl sub-encoding to TS1/3 on input line 359.
Package textcomp Info: Setting pag sub-encoding to TS1/4 on input line 360.
Package textcomp Info: Setting pbk sub-encoding to TS1/4 on input line 361.
Package textcomp Info: Setting pnc sub-encoding to TS1/4 on input line 362.
Package textcomp Info: Setting pzc sub-encoding to TS1/4 on input line 363.
Package textcomp Info: Setting bch sub-encoding to TS1/4 on input line 364.
Package textcomp Info: Setting put sub-encoding to TS1/5 on input line 365.
Package textcomp Info: Setting uag sub-encoding to TS1/5 on input line 366.
Package textcomp Info: Setting ugq sub-encoding to TS1/5 on input line 367.
Package textcomp Info: Setting ul8 sub-encoding to TS1/4 on input line 368.
Package textcomp Info: Setting ul9 sub-encoding to TS1/4 on input line 369.
Package textcomp Info: Setting augie sub-encoding to TS1/5 on input line 370.
Package textcomp Info: Setting dayrom sub-encoding to TS1/3 on input line 371.
Package textcomp Info: Setting dayroms sub-encoding to TS1/3 on input line 372.
Package textcomp Info: Setting pxr sub-encoding to TS1/0 on input line 373.
Package textcomp Info: Setting pxss sub-encoding to TS1/0 on input line 374.
Package textcomp Info: Setting pxtt sub-encoding to TS1/0 on input line 375.
Package textcomp Info: Setting txr sub-encoding to TS1/0 on input line 376.
Package textcomp Info: Setting txss sub-encoding to TS1/0 on input line 377.
Package textcomp Info: Setting txtt sub-encoding to TS1/0 on input line 378.
Package textcomp Info: Setting lmr sub-encoding to TS1/0 on input line 379.
Package textcomp Info: Setting lmdh sub-encoding to TS1/0 on input line 380.
Package textcomp Info: Setting lmss sub-encoding to TS1/0 on input line 381.
Package textcomp Info: Setting lmssq sub-encoding to TS1/0 on input line 382.
Package textcomp Info: Setting lmvtt sub-encoding to TS1/0 on input line 383.
Package textcomp Info: Setting lmtt sub-encoding to TS1/0 on input line 384.
Package textcomp Info: Setting qhv sub-encoding to TS1/0 on input line 385.
Package textcomp Info: Setting qag sub-encoding to TS1/0 on input line 386.
Package textcomp Info: Setting qbk sub-encoding to TS1/0 on input line 387.
Package textcomp Info: Setting qcr sub-encoding to TS1/0 on input line 388.
Package textcomp Info: Setting qcs sub-encoding to TS1/0 on input line 389.
Package textcomp Info: Setting qpl sub-encoding to TS1/0 on input line 390.
Package textcomp Info: Setting qtm sub-encoding to TS1/0 on input line 391.
Package textcomp Info: Setting qzc sub-encoding to TS1/0 on input line 392.
Package textcomp Info: Setting qhvc sub-encoding to TS1/0 on input line 393.
Package textcomp Info: Setting futs sub-encoding to TS1/4 on input line 394.
Package textcomp Info: Setting futx sub-encoding to TS1/4 on input line 395.
Package textcomp Info: Setting futj sub-encoding to TS1/4 on input line 396.
Package textcomp Info: Setting hlh sub-encoding to TS1/3 on input line 397.
Package textcomp Info: Setting hls sub-encoding to TS1/3 on input line 398.
Package textcomp Info: Setting hlst sub-encoding to TS1/3 on input line 399.
Package textcomp Info: Setting hlct sub-encoding to TS1/5 on input line 400.
Package textcomp Info: Setting hlx sub-encoding to TS1/5 on input line 401.
Package textcomp Info: Setting hlce sub-encoding to TS1/5 on input line 402.
Package textcomp Info: Setting hlcn sub-encoding to TS1/5 on input line 403.
Package textcomp Info: Setting hlcw sub-encoding to TS1/5 on input line 404.
Package textcomp Info: Setting hlcf sub-encoding to TS1/5 on input line 405.
Package textcomp Info: Setting pplx sub-encoding to TS1/3 on input line 406.
Package textcomp Info: Setting pplj sub-encoding to TS1/3 on input line 407.
Package textcomp Info: Setting ptmx sub-encoding to TS1/4 on input line 408.
Package textcomp Info: Setting ptmj sub-encoding to TS1/4 on input line 409.
)
(/usr/local/texlive/2017/texmf-dist/tex/latex/bera/beraserif.sty
Package: beraserif 2004/01/30 (WaS)
(/usr/local/texlive/2017/texmf-dist/tex/latex/graphics/keyval.sty
Package: keyval 2014/10/28 v1.15 key=value parser (DPC)
\KV@toks@=\toks15
)
LaTeX Font Info: Try loading font information for T1+fve on input line 30.
(/usr/local/texlive/2017/texmf-dist/tex/latex/bera/t1fve.fd
File: t1fve.fd 2004/09/07 scalable font definitions for T1/fve.
)
LaTeX Font Info: Font shape `T1/fve/m/n' will be
(Font) scaled to size 9.85492pt on input line 30.
)
(/usr/local/texlive/2017/texmf-dist/tex/latex/bera/berasans.sty
Package: berasans 2004/01/30 (WaS)
)
(/usr/local/texlive/2017/texmf-dist/tex/latex/bera/beramono.sty
Package: beramono 2004/01/31 (WaS)
))
(/usr/local/texlive/2017/texmf-dist/tex/latex/base/fontenc.sty
Package: fontenc 2017/04/05 v2.0i Standard LaTeX package
(/usr/local/texlive/2017/texmf-dist/tex/latex/base/t1enc.def
File: t1enc.def 2017/04/05 v2.0i Standard LaTeX file
LaTeX Font Info: Redeclaring font encoding T1 on input line 48.
))
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/tex4ht.4ht
version 2017-05-09-09:21
--------------------------------------
--- Note --- for additional information, use the command line option `info'
--------------------------------------
::::::::::::::::::::::::::::::::::::::::::
TeX4ht info is available in the log file
::::::::::::::::::::::::::::::::::::::::::
) (/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/tex4ht.sty
version 2016-07-18-16:08
--- needs --- tex4ht foo ---
\tmp:cnt=\count87
\openout15 = `foo.tmp'.
(./foo.tmp)
\tmp:dim=\skip43
(./foo.xref)
\:refout=\write3
\openout3 = `foo.xref'.
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4.4ht
version 2017-10-26-14:53
--------------------------------------
--- Note --- to remove the <?xml version=...?> processing instruction use the c
ommand line option `no-VERSION'
--------------------------------------
--------------------------------------
--- Note --- to remove the DOCTYPE declaration use the command line option `no-
DOCTYPE'
--------------------------------------
)
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4-math.4ht
version 2017-03-30-16:04
)
--------------------------------------
--- Note --- for marking of the base font, use the command line option `fonts+'
--------------------------------------
--------------------------------------
--- Note --- for non active _, use the command line option `no_'
--------------------------------------
--------------------------------------
--- Note --- for _ of catcode 13, use the command line option `_13'
--------------------------------------
--------------------------------------
--- Note --- for non active ^, use the command line option `no^'
--------------------------------------
--------------------------------------
--- Note --- for ^ of catcode 13, use the command line option `^13'
--------------------------------------
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4.4ht
version 2017-10-26-14:53
--------------------------------------
--- Note --- for alternative charset, use the command line option `charset=...'
--------------------------------------
--------------------------------------
--- Note --- to ignore CSS font decoration, use the `NoFonts' command line opti
on
--------------------------------------
--------------------------------------
--- Note --- for jpg bitmaps of pictures, use the `jpg' command line option. (C
haracter bitmaps are controled only by `g' records of tex4ht.env and `-g' switc
hes of tex4ht.c)
--------------------------------------
--------------------------------------
--- Note --- for gif bitmaps of pictures, use the `gif' command line option. (C
haracter bitmaps are controled only by `g' records of tex4ht.env and `-g' switc
hes of tex4ht.c)
--------------------------------------
--------------------------------------
--- Note --- for content and toc in 2 frames, use the command line option `fram
es'
--------------------------------------
--------------------------------------
--- Note --- for content, toc, and footnotes in 3 frames, use the command line
option `frames-fn'
--------------------------------------
--------------------------------------
--- Note --- for file extension name xht, use the command line option `xht'
--------------------------------------
TeX4ht package options: xhtml,html
--------------------------------------
--- Note --- To print a timestamp, use the command line option timestamp
--------------------------------------
--------------------------------------
--- Note --- to ignore CSS code, use the command line option `-css
--------------------------------------
--------------------------------------
--- Note --- for inline CSS code, use the command line option `css-in'
--------------------------------------
--------------------------------------
--- Note --- for pop ups on mouse over, use the command line option `mouseover'
--------------------------------------
--------------------------------------
--- Note --- for addressing images in a subdirectory, use the command line opti
on `imgdir:.../'
--------------------------------------
)
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4-math.4ht
version 2017-03-30-16:04
)
\:tokwrite=\toks16
\:tokpage=\toks17
--------------------------------------
--- Note --- for back links to toc, use the command line option `sections+'
--------------------------------------
--------------------------------------
--- Note --- for linear crosslinks of pages, use the command line option `next'
--------------------------------------
\openout15 = `foo.4ct'.
\:tocout=\write4
\openout4 = `foo.4tc'.
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4.4ht
version 2017-10-26-14:53
)
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4-math.4ht
version 2017-03-30-16:04
)
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/latex.4ht
version 2017-01-24-15:21
LaTeX Info: Redefining \_ on input line 168.
--------------------------------------
--- Note --- for links into captions, instead of float heads, use the command l
ine option `refcaption'
--------------------------------------
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4.4ht
version 2017-10-26-14:53
--------------------------------------
--- Note --- For mini tocs immediately aftter the header use the command line o
ption `minitoc<'
--------------------------------------
--------------------------------------
--- Note --- for enumerated list elements with valued data, use the command lin
e option `enumerate+'
--------------------------------------
--------------------------------------
--- Note --- for enumerated list elements li's with value attributes, use the c
ommand line option `enumerate-'
--------------------------------------
--------------------------------------
--- Note --- for CSS2 code, use the command line option `css2'
--------------------------------------
--------------------------------------
--- Note --- for pictorial tabular, use the command line option `pic-tabular'
--------------------------------------
--------------------------------------
--- Note --- for bitmap fbox'es, use the command line option `pic-fbox'
--------------------------------------
--------------------------------------
--- Note --- for bitmap framebox'es, use the command line option `pic-framebox'
--------------------------------------
--------------------------------------
--- Note --- for inline footnotes use command line option `fn-in'
--------------------------------------
--------------------------------------
--- Note --- for tracing of latex font commands, use the command line option `f
onts'
--------------------------------------
--------------------------------------
--- Note --- for width specifications of tabular p entries, use the `p-width' c
ommand line option or a configuration similar to \Configure{HColWidth}{\HCode{
style="width:\HColWidth"}}
--------------------------------------
)
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4-math.4ht
version 2017-03-30-16:04
--------------------------------------
--- Note --- for pictorial eqnarray, use the command line option `pic-eqnarray'
--------------------------------------
--------------------------------------
--- Note --- for pictorial array, use the command line option `pic-array'
--------------------------------------
--------------------------------------
--- Note --- for pictorial $...$ environments, use the command line option `pic
-m' (not recommended!!)
--------------------------------------
--------------------------------------
--- Note --- for pictorial $...$ and $$...$$ environments with latex alt, use t
he command line option `pic-m+' (not safe!!)
--------------------------------------
--------------------------------------
--- Note --- for pictorial array, use the command line option `pic-array'
--------------------------------------
))
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/fontmath.4ht
version 2009-05-21-09:32
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4.4ht
version 2017-10-26-14:53
)
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4-math.4ht
version 2017-03-30-16:04
))
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/article.4ht
version 2009-05-21-09:32
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4.4ht
version 2017-10-26-14:53
--------------------------------------
--- Note --- for automatic sectioning pagination, use the command line option `
1', `2', `3', '4', '5', '6', or '7'
--------------------------------------
--------------------------------------
--- Note --- for files named derived from section titles, use the command line
option `sec-filename'
--------------------------------------
--------------------------------------
--- Note --- for i-columns index, use the command line option `index=i' (e.g.,
index=2)
--------------------------------------
)
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4-math.4ht
version 2017-03-30-16:04
))
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4.4ht
version 2017-10-26-14:53
)
(/usr/local/texlive/2017/texmf-dist/tex/generic/tex4ht/html4-math.4ht
version 2017-03-30-16:04
))
(./foo.aux)
\openout1 = `foo.aux'.
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 6.
LaTeX Font Info: ... okay on input line 6.
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 6.
LaTeX Font Info: ... okay on input line 6.
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 6.
LaTeX Font Info: ... okay on input line 6.
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 6.
LaTeX Font Info: ... okay on input line 6.
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 6.
LaTeX Font Info: ... okay on input line 6.
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 6.
LaTeX Font Info: ... okay on input line 6.
LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 6.
LaTeX Font Info: Try loading font information for TS1+cmr on input line 6.
(/usr/local/texlive/2017/texmf-dist/tex/latex/base/ts1cmr.fd
File: ts1cmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions
)
LaTeX Font Info: ... okay on input line 6.
--- file foo.css ---
[1
] (./foo.aux) )
Here is how much of TeX's memory you used:
4199 strings out of 492986
46895 string characters out of 8882611
222098 words of memory out of 8000000
7751 multiletter control sequences out of 15000+600000
6585 words of font info for 17 fonts, out of 8000000 for 9000
1141 hyphenation exceptions out of 8191
33i,4n,30p,638b,209s stack positions out of 5000i,500n,10000p,30000000b,80000s
Output written on foo.dvi (1 page, 9652 bytes).
drop_letter>
答案1
没有Bera
字体的支持文件tex4ht
,因此可能缺少特殊字符,例如您遇到的ff
和fi
连字符。您可以将以下文件添加到文档目录中:
fveb8r.htf:
.pcrro8r
htfcss: fveb8r font-weight: bold;
fvero8r.htf:
.pcrro8r
htfcss: fvero8r font-style: italic;
fver8r.htf:
.pcrro8r
fver8t.htf:
.lm-ec
fveb8t.htf:
.lm-ec
htfcss: fveb8t font-weight: bold;
fvero8t.htf:
.lm-ec
htfcss: fvero8t font-style: italic;
这些文件支持斜体和粗体变体。您还可以使用该选项LuaTeX
作为编译器。make4ht
-l
结果似乎是正确的: