从复杂的 LaTeX 文档导出文本内容

从复杂的 LaTeX 文档导出文本内容

我有一个大型且复杂的 LaTeX 文档 (XeLaTeX),其中包含多节参考书目 (biblatex)。我想将结果文本内容导出为纯文本。pdf2text和类似工具的输出包含额外的换行符和连字符。我也不能使用detex或类似工具,因为我需要完整的参考书目。

我唯一的想法是导出页面尺寸非常大的文档(每段一行),然后再制作pdf2text(参见 MWE)。 可能有更优雅的解决方案吗?

\documentclass{article}
\usepackage{biblatex}
\usepackage[paperwidth=50in, paperheight=8.5in, left=1in]{geometry}

\begin{filecontents}{literatur.bib}

@ARTICLE{Reitman2015,
     author = {Reitman, N. G. and Bennett, S. E. and Gold, R. D. and Briggs, R. W. and DuRoss, C. B.},
      title = {Транзитная фотомозаика высокого разрешения из моделирования на основе изображений: анализ рабочих процессов и ошибок},
    journal = {Bulletin of the Seismological Society of America},
       year = {2015},
     volume = {105},
      pages = {2354-2366}
}


\end{filecontents}

\addbibresource{literatur.bib}

\begin{document}

Проверка

\thispagestyle{empty}

\nocite{Reitman2015}

\printbibliography

\end{document} 

答案1

您可以将文档转换为 HTML,然后将 HTML 文件转换为文本。TeX4ht 支持 XeLaTeX 和 BibLaTeX,但需要进行配置才能支持非拉丁字母。

将以下代码保存为myconfig.cfg

\Preamble{xhtml}
\xeuniuseblock{Cyrillic}
\begin{document}
\EndPreamble

\xeuniuseblock命令加载给定的 Unicode 字符的声明Unicode 块。如果参考书目中有希腊语或阿拉伯语,您就需要类似的命令。

可以使用以下命令完成转换:

make4ht -uxm draft -c myconfig.cfg filename.tex
biber filename
make4ht -uxm draft -c myconfig.cfg filename.tex
pandoc filename.html -t plain -o filename.txt

结果如下:

Проверка

References

 [1] 

    N. G. Reitman et al. “Транзитная фотомозаика высокого разрешения из
    моделирования на основе изображений: анализ рабочих процессов и
    ошибок”. In: Bulletin of the Seismological Society of America 105
    (2015), pp. 2354–2366.

相关内容