raketenfehlersuchsystem: Ergänzungen

Beitrag lesen


chdir ( '/tmp' );
$system = "pdflatex  -interaction=nonstopmode \-synctex=0 -output-directory=/tmp $tmpfile_tex";

$dummy = exec( $system );
header( 'content-type: application/pdf' );
header( 'Content-Disposition: attachment; filename="' . $_POST['Filennumber'] . '.pdf"' );
echo file_get_contents( $tmpfile_pdf );

Ich unterdrücke also den Output von pdflatex und sende dann den inhalt der enstandenen Datei.

Bevor Du irritiert bist: Davor darf (auch von den nutzlosen Wrapper-Skripten wie Deinem Perl-Skript) NICHTS ausgegeben werden.

Die beiden Header-Zeilen (Aber eben nichts davor!) kannst Du in python3 so senden:

print ( "Content-Type: application/pdf\n" );
print ( "Content-Disposition: attachment; filename=\"" + filenumber + ".pdf\"\n\n" );

Achte darauf, dass in Python filenumber hierbei ein String sein muss..., also filenumber="3" - nicht filenumber=3

Die Ausgabe der von pdflatex erzeugten Dateei kann dann so gehen:

f = open("dateiname.pdf", "r")
print(f.read()) 

Dein Kernproblem ist übrigens, dass Du selbst sagst, Du seist ein Beginner, aber dann Probleme aus der hohen Reitschule präsentierst. Du fängst an Galopp zu reiten bevor Du weisst, wie der Sattel festgezogen wird.