シナリオ:
LaTeXを使用して作成したドキュメント(この場合は履歴書)があり、pdflatex
を正しくコンパイルして、希望どおりに出力しています。ここで、同じドキュメントをプレーンASCIIに変換する必要があります。
例:
これは(少なくとも1回) ここ で行われましたが、作成者は PDFバージョン と ASCIIバージョン を持っていますPDFバージョンと、マージン、スペース、箇条書きを含むほぼすべての方法で一致します。
ASCII形式の制限により、このタイプの変換は正確に行えないことを認識していますが、これまでに発見したことに基づいて非常に近い近似が可能と思われます。 ?
CatDVI は、DVIをテキストに変換し、フォーマットを保持しようとします。
Opendetex は、WindowsとLinuxの両方で使用できます(Macでもコンパイルできます)。 https://github.com/pkubowicz/opendetex からダウンロードできます
使用法:
detex project
project.texを開き、\ includeまたは\ includeonlyコマンドを使用してインクルードされたすべてのファイルを読み取り、結果のテキストを標準出力に出力します。
detex -n project > out.txt
project.texを開き、\ includeまたは\ includeonlyコマンドに従いません。結果のテキストをout.txtに出力します
detex --help
完全なヘルプを表示します
任意のディレクトリに抽出します。ダウンロードディレクトリに抽出したとします。
その中に任意の名前の別のディレクトリを作成します(これはオプションですが推奨されます)。ディレクトリ名が「my_paper」だとします。論文を「my_paper」ディレクトリに入れます。論文名がproject.texであると仮定します。
パスに移動します
cd ~/Downloads/opendetex
コマンドを実行する
detex my_paper/project.tex > out.txt
一般的な形式
detex -n full_path_to_tex_file.tex > output_text_file.txt
ここで提案されているプログラムのいくつかを試すことができます:
Pandoc を試すこともできます。ラテックスを他の多くの形式に変換できます。ドキュメントを読むことをお勧めします。いくつかの引数を渡して処理する必要があるトリッキーなケースがあるかもしれません。
pdflatex
を使用している場合、DVIを生成するためにlatex
に切り替えるためにパッケージオプションをいじりたくないでしょう。
代わりに、pdfファイルを取り、代わりに変換します。これは、Curveパッケージで作成されたCV /履歴書で機能しました。
pdftotext -layout MyResume.pdf
-layout
フラグに注意してください。
私の通常の戦略は、 hyperlatex を使用してWebページに変換し、Webブラウザから対処して貼り付けることです。これが最適な書式設定であることがわかりました。
その後、通常、行の折り返しを手動で修正する必要があります...
私に最適なソリューションは次のとおりです。ラテックスドキュメント名(拡張子なし)が${BASENAME}
に保存されていると仮定すると、次の3つの手順を適用します。
htlatex ${BASENAME}.tex
iconv -f iso-8859-1 -t utf-8 ${BASENAME}.html > ${BASENAME}-utf8.html
html2markdown ${BASENAME}-utf8.html > ${BASENAME}.txt
どうやら、tex4ht
とpython-html2text
をインストールする必要があります。
ここで手順を試してください: http://zanedp.livejournal.com/201222.html
LaTeXファイルをプレーンテキストに変換するシーケンスを次に示します。
$ latex file.tex
$ catdvi -e 1 -U file.dvi | sed -re "s/\[U\+2022\]/*/g" | sed -re "s/([^^[:space:]])\s+/\1 /g" > file.txt
Catdviの-e 1オプションは、ASCIIを出力するように指示します。 1ではなく0を使用すると、Unicodeが出力されます。 Unicodeには、箇条書き文字、ダッシュ、ギリシャ文字などのすべての特殊文字が含まれます。また、「fi」や「fl」などの文字の組み合わせの合字も含まれます。気に入らないかもしれません。そのため、代わりに-e 1を使用してください。 -Uオプションを使用して、不明な文字のunicode値を出力し、簡単に検索して置換できるようにします。
コマンドの2番目の部分は、箇条書き文字(•)を指定するために使用される文字列[U + 2022]を見つけ、それらをアスタリスク(*)に置き換えます。
3番目の部分は、行の先頭のスペース(インデント)を維持しながら、catdviがスローした余分な空白をすべて使い果たしてテキストを完全に揃えます。
これらのコマンドを実行した後、.txtファイルで文字列[U +を検索して、ASCIIにマッピングできないUnicode文字が残っていないことを確認して修正することをお勧めします。
インデックス作成と検索のためにTEXファイルからプレーンテキストを取得する必要があるとき、LaTeX2RTFが適切なソリューションであることがわかりました。これには Windows用インストーラーとGUI があり、RTF Wordで開くことができる50ページの論文のファイル。
LyXを試してみましたが、うまく機能します。唯一の微妙な違いは、他のTeXファイルを含むTeXファイルがある場合、何かが足りない限り、それらをすべて個別にエクスポートする必要があるということです。
Pandoc を使用すると、ファイルをある形式から別の形式に変換できます。次のpandocコマンドを使用します。
pandoc -s /path/to/foobar.tex -o foobar.txt
特定の列で行を分割する場合は、--column
フラグを使用します。改行しない場合は--columns 10000
を使用します。
-o foobar.txt
を 他の多くの形式 markdown(.md)などに変換できます。-o foobar.txt
を指定しない場合、pandocは可能なHTMLを出力しますオンラインツールでレンダリングします。
Pandocをインストールするには、 この公式ドキュメント に従ってください
lyxにインポートして、lyxのテキストへのエクスポート機能を使用できます。
lyxを使用していないが、すでに持っている場合は非常に迅速かつ簡単なソリューションです。私にとっては良い結果が得られましたが、公平を期すために、私のファイルは非常に単純です。どれだけ精巧なファイルが変換されるかわかりません。
Emacsには、iso-iso2tex
のような単一のコマンドをiso-tex2iso
に変換しないことを除いて、非常にうまく機能するコマンド\OE
およびŒ
があります。