私はHerokuでホストされているDjangoアプリを持っています。その中で、私はLaTeXで書かれたビューを使ってオンザフライでpdfを生成し、これを動作させるためにHeroku LaTeX buildpackをインストールしています。私のLaTeXビューは以下の通りです。LaTeX class on Herokuをインストールするには?
def pdf(request):
context = {}
template = get_template('cv/cv.tex')
rendered_tpl = template.render(context).encode('utf-8')
with tempfile.TemporaryDirectory() as tempdir:
process = Popen(
['pdflatex', '-output-directory', tempdir],
stdin=PIPE,
stdout=PIPE,
)
out, err = process.communicate(rendered_tpl)
with open(os.path.join(tempdir, 'texput.pdf'), 'rb') as f:
pdf = f.read()
r = HttpResponse(content_type='application/pdf')
r.write(pdf)
return r
私はcv.tex
で既存のドキュメントクラスの一つ(例えば。\documentclass{article}
)を使用するとき、これは正常に動作しますが、私はres
というカスタムいずれかを使用したいと思います。私は通常、カスタムクラスを使用するための2つのオプションがあると信じています。
.tex
ファイルと同じフォルダに配置し(この場合res.cls
)クラスファイルを。私にとっては、それは私のアプリのテンプレートフォルダにあります。私はこれを試しましたが、pdflatex
はクラスファイルを見つけることができません。 (おそらく、テンプレートフォルダ内ではなく一時ディレクトリにあるので、クラスファイルを一時ディレクトリにコピーする方法がありますか?)クラスファイルを構造体
localtexmf/tex/latex/res.cls
this questionの回答に記載されている方法を使用して、にそれを認識させます。私はheroku run bash
を使用してHerokuでCLI命令を実行しようとしましたが、initexmf
は認識されません。関連するディレクトリを指定する方法は完全にはわかりません。
クラスファイルを見つける場所を教えてください。