从 PHP 和控制台编译时输出不同

从 PHP 和控制台编译时输出不同

我正在创建带有 tex 格式任务的卡片。卡片样本

\documentclass[14pt]{book}
\usepackage{color}
\usepackage[utf8x]{inputenc}
\usepackage[T2A]{fontenc}
\usepackage[english,russian]{babel}
\usepackage{ucs}\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}

\pagestyle{empty}
\begin{document}
Карточка №1
\begin{equation*}\text{Решите уравнение}\space \log_{9}{(4x+5)}=5           \end{equation*} \\ 
\begin{equation*}\text{Решите уравнение}\space \log_{4}{(4x+(-1))}=4 \end{equation*} \\ 
\begin{equation*}Решите\space уравнение\space \log_{2}{(1x^2+(-2))} = \log_{2}{6x} \end{equation*} \\ 
\begin{equation*}\text{Решите уравнение}\space \log_{4}{x} = 5 \end{equation*} \\ 
\begin{equation*}\text{Решите уравнение}\space \log_{7}{x} = 2 \end{equation*} \\ 
\noindent\makebox[\linewidth]{\rule{\paperwidth}{0.4pt}}
\end{document}

当我在 PHP 中通过 shell_exec 编译此文件时,生成的 PDF 没有任何字母,只有公式。但是,如果我 /usr/bin/pdflatex -output-directory /var/www/files --interaction batchmode 2016-06-15.00-30-46576031369d029.tex在控制台中运行,PDF 将包含符号。

什么可能导致这个问题?

答案1

作为一个临时的解决办法,我完成了这个

$output = system("echo 'pass' | sudo -u user /usr/bin/pdflatex -output-directory /var/www/files --interaction batchmode files/".$name.".tex");

相关内容