Patrick on Juli 3rd, 2007, 14.403 views

TeXnixCenter ist ein tolles Programm um TeX-Projekte zu erstellen, verwalten und zu editieren. Um das fertige PDF-Dokument zu betrachten, verwendet TeXnicCenter normalerweise den Acrobat Reader von Adobe. Das ganze funktioniert wunderbar, jedoch dauert das Laden des Acrobat Readers unheimlich lang. Die Lösung hierzu bietet der Foxit Reader, einem extrem schnellen und kostenlosen PDF-Viewer. Die Einbindung in TeXnicCenter ist jedoch nicht ganz problemlos.Daher poste ich mal eine Anleitung zur Verwendung des Foxit Readers im TeXnixCenter:

Wichtig: Wie ich ich heute feststellen musste funktioniert die unten beschriebene Lösung nicht unter Windows XP Home, da der Taskkill-Befehl dort nur in abgespeckter Form als “TSKill” vorliegt. Leider fehlt bei dem Befehl die Möglichkeit die Filterfunktion zu verwenden. Es gibt also zwei Wege das Problem zu umgehen, entweder ihr steigt auf Windows XP Professional um oder ihr sucht mal nach “taskkill.exe” bei Google ;)

  1. Voraussetzung ist ein funktionierendes TeXnicCenter mit in Verbindung mit einer TeX-Distribution.
  2. Herunterladen und Installieren des Foxit PDF Readers. Das Installationspaket kann man unter http://www.foxitsoftware.com/ finden.
  3. Erstelle eine Datei mit dem Namen FoxItTEX.bat im Verzeichnis des Foxit PDF Readers. Es sollte folgenden Inhalt haben:
    @echo off
    if "%1"=="close" goto TASKKILL
    goto OPEN
    
    :TASKKILL
    taskkill /fi "windowtitle eq %2*"
    goto END
    
    :OPEN
    Start C:\Progra~1\Multim~1\Foxitr~2\Foxitr~1.exe %1 %2
    
    :END

    Wichtig! Ändert den Pfad in der vorletzten Zeile auf das Installationsverzeichnis von eurem Foxit Reader. Der Pfad muss außerdem in der 8.3-Notation angegeben werden, also ohne Leerzeichen. Wenn ihr nicht sicher seit, wie der Pfad lautet, dann öffnet mit dem Befehl “cmd” die Windows Console, wechselt mit “cd C:ProgrammeMein langer Pfad” in das Foxit-Verzeichnis und gebt dann Befehl “command” ein. Der nun erscheinende prompt gibt das Verzeichnis in 8.3-Notation an.

  4. Erstellt eine weitere Datei, diesmal mit dem Namen FoxitTex.vbs und folgendem Inhalt:
    set shell = wscript.createobject("wscript.shell")
    Set Args = WScript.Arguments
    
    For i = 0 to Args.Count - 1
       Params = Params + Chr(32) + Args(i)
    Next
    
    shell.run """C:\Programme\Multimedia\FoxitReader\FoxItTEX.bat """+ Params,0,true

    Auch hier müsst ihr wieder den Pfad anpassen. Diesmal könnt ihr jedoch auch lange Pfadnamen verwenden.

  5. Jetzt muss nur noch TeXnicCenter konfiguriert werden:Screenshot von TexNicCenter
    1. Im Menü “Ausgabe” des TeXnicCenters den Eintrag “Ausgabeprofile definieren…” anklicken oder die Tastenkombination ALT+F7 benutzen.
    2. Das Fenster “Profiles” zeigt nun alle existierenden Ausgabeprofile. Wählt am besten das Profil “LaTeX => PDF” aus und legt eine Kopie (Button “kopieren” anklicken) z.B. mit dem Namen “LaTeX => PDF (Foxit)” an.
    3. Wählt den Karteireiter “Viewer”.
    4. In der Eingabezeile “Pfad der Anwendung” gebt ihr folgendes ein:
      wscript.exe "C:\Programme\Multimedia\FoxitReader\FoxitTex.vbs"

      Hier bitte wieder den Pfad entsprechend anpassen.

    5. Bei “Projektausgabe”Kommandozeile anklicken und dann dieses eingeben:
      "%sBm.pdf" -NoRegister
    6. “Suche in Ausgabe” könnte ihr leer lassen.
    7. Im Bereich “Vor Compilierung Ausgabe beenden” wieder “Kommandozeile” anklicken und folgendes eingeben:
      close "%stm.pdf"

Fertig! Jetzt müsste Foxit problemlos mit TexNicCenter zusammenarbeiten.

Viele Grüße

Patrick

54 Responses to “Anleitung zur Einbindung des Foxit PDF Reader in TeXnicCenter”

  1. Genau was ich gesucht hatte, das Skript ist noch komfortabler als meine alte bat Datei ;)
    …hab mich bei den Sternen leider verklickt, das wäre wirklich sehr nützlich!

  2. Ein ganz nettes Tutorial!
    Kann es sein, dass es zu Problemen kommt, wenn die pdf-Datei auf einer anderen Partition ist, als foxit-Reader??
    Habs nämlich versucht mit dem Starten und es klappt nicht!
    Gruß,

    Alexander

  3. Hallo Alex,

    ich habe es gerade mal getestet. Bei mir funktioniert es auch, wenn die PDF-Datei auf einem anderen Laufwerk liegt. Es hätte mich auch sehr gewundert, da immer der komplette Pfad (inkl. Laufwerk) übergeben wird. Dein Problem muss also wo anders liegen.

    Die Skripte sind so gebastelt, dass man bei der täglichen Nutzung so wenig wie möglich merkt. Das hat dann aber auch zur Folge, dass man keine Fehlermeldung bei Problemen bekommt.

    Hier findest du ein kleines Tutorial um das “Debugging” zu ermöglichen:
    Debugmodus für die TeXnicCenter-Skripte

    Viele Grüße
    Patrick

  4. Genau DIESE info habe ich gesucht! DANKE!!!!

  5. Super! Das hat geholfen!

  6. cool, funktionier so weit.

    gehört das so, dass jedesmal ein neues fenster aufgemacht wird, wenn ich ne neue ausgabe erstelle, oder hab ich mist gebaut?

  7. Eigentlich müsste die FoxItTEX.bat, unmittelbar vor dem Kompilieren Deines Dokumentes, den FoxitReader beenden.
    Um das Problem einzugrenzen könntest Du evtl. vorhandene Fehlermeldungen sichbar machen, indem du die hier vorgeschlagenen Änderungen vornimmst: http://blog.netpebbles.de/2007.....r-skripte/.

    Viele Grüße
    Patrick

  8. Der Dummschwätzer
    Dezember 12th, 2007 at 15:02

    Hallo
    Wie kann ich denn Tskill durch Taskkill dauerhaft ersetzen? Windows erstellt Tskill automtisch neu wenn ich es entferne. Also was tun…?
    mfg

  9. Hallo,

    warum willst du tskill überhaupt ersetzen? Es reicht doch völlig, wenn ergänzend zu tskill auch taskkill im Befehlspfad (z.B. “C:\windows\system32\”) liegt. Zumindest die Foxit-Lösung funktioniert dann einwandfrei.

    Viele Grüße
    Patrick

  10. Der Dummschwätzer
    Dezember 13th, 2007 at 20:20

    Hi
    Hat alles geklappt. Hatte mich nur im Skript verschrieben. Vielen Dank..

  11. dürfte eigentlich bei niemandem funktionieren
    “%sBm.pdf” -NoRegister
    muss ersetzt werden durch
    “%bm.pdf” -NoRegister

  12. Hallo,

    wieso sollte es denn nicht funktionieren? Mit %sbm wird der Pfad in 8.3-Notation übergeben. Dies war zumindest bei den ersten FoxItReader-Versionen zwingend notwendig.

    Außerdem ist die Groß-/Kleinschreibung des Platzhalters irrelevant, denn %sBm funktioniert bei mir genauso gut wie %sbm.

    Viele Grüße
    Patrick

  13. Hallo Patrick,
    danke für die ausführliche Anleitung. Ich habe Schritt für Schritt alles befolgt. Wenn ich jedoch das pdf-Dokument erstellen lasse, kommt immer ein Fenster, in dem mir der Gebrauch von Foxit Reader erklärt wird: -Register Set Foxit Reader as default reader, -NoRegister usw. Ist nur ein OK-Knopf vorhanden, danach geht es aber nicht mehr weiter.
    Was habe ich übersehen?
    Viele Grüße,
    Jork

  14. Hallo Jork,

    dafür gibt es eigentlich nur eine Erklärung. Foxit bekommt einen Parameter übergeben, den er nicht kennt bzw. mag. Schau dir also bitte nochmal alle Einstellungen (Pfade und Parameter) im TexNiccenter an und prüfe die beiden Skripte. Wenn es danach immernoch nicht funktioniert, dann probiere mal dem “Debugmodus” aus. Wenn du dann noch nicht schlau daraus wirst kannst du dir ja noch die beiden Startparameter aus der FoxitTEX.bat ausgeben lassen indem du die folgenden Zeilen in das Skipt direkt über :END setzt:
    echo “Parameter 1: “$1
    echo “Parameter 2: “$2

    Wahrscheinlich ist der Aufwand jedoch überflüssig. Ich vermute stark, dass du einfach irgendwo ein Leerzeichen zuviel drin hast oder so etwas ;)

    Viele Grüße
    Patrick

  15. Super, klappt prima bei mir. Allerdings musste ich die Reihenfolge von “%sbm.pdf” und -NoRegister vertauschen.

    Wenn jetzt noch jemand weiß, wie man immer die zuletzt geöffnete Seite angezeigt bekommt, dann wäre ich restlos glücklich ;-)

    Besten Dank,
    Martin

  16. Hallo Martin,

    das man die Parameter vertauschen muss war mir neu. Bei mir funktioniert es in der von mir beschriebenen Weise problemlos.

    Mir fällt keine Möglichkeit ein, wie sich Foxit die zuletzt betrachtete Seite merken kann und diese dann beim erneuten aufrufen auch wieder anzeigen kann. Aber vielleicht macht jemand einen guten Vorschlag :)

    Viele Grüße
    Patrick

  17. Funktioniert hervorragend, vielen Dank.

  18. Ist es auch möglich, dass nur der relevante Tab im Foxit Reader geschlossen wird? Wenn ich mehrere Tabs geöffnet habe werden mir alle geschlossen. Ich finde die Ansicht mit den Tabs nähmlich recht brauchbar.
    Die zuletzt geöffnete Seite kann man sich übrigens auch anzeigen lassen. Einfach im Foxit Reader unter => Bearbeiten => Einstellungen => Allgemein “Restore last view settings when reopening” anwählen.
    Ansonsten funktioniert alles super! Danke!

  19. SEHR SEHR GUT,
    ich bin begeistert, danke für deine Mühe. Hat sehr gut geklappt, dein Tutorial.

    Herzliche Grüße Uli

  20. Hallo Matthias,

    danke für Deinen Tip.

    Da das Skript einfach nur den Foxit Reader-Prozess beendet und keine Kommunikation mit dem Prozess stattfindet können auch keine einzelne Tabs geschlossen werden. Mit einer solchen Funktion ist mein kleines Skipt einfach überfordert ;)

    Viele Grüße
    Patrick

  21. Hi Patrick,

    Bei Foxit 2.2 muss die “Projektausgabe” Kommandozeile folgendermassen sein (sonst kommt das oben von Jork geschilderte Foxit-help Fenster):

    -NoRegister “%Bm.pdf”

    Ausserdem darf die .tex-datei keine Leerzeichen enthalten.
    Bei mir oeffnet sich wunderbarerweise auch brav die zuletzt geoeffnete Seite :-)

    Vielen Dank fuer die professionelle Anleitung,
    Martin

  22. Foxitreader 2.2 oeffnet die zuletzt angezeigte Seite, version 2.3 allerdings oeffnet immer die erste Seite. Noch gibt es version 2.2 hier:

    http://www.foxitsoftware.com/downloads/

  23. Hi,
    bei mir mit Foxitreader Version 2.3.2008.2923 und WinXP SP3 geht das:
    unter Projektausgabe betrachten:

    “%sbm.pdf” -NoRegister

    (bei -NoRegister “%Bm.pdf” erhalte ich Fehlermeldung File “C:\Dokumente” not found wegen der Leerzeichen im Pfad)
    hiermit kann ich auch eine .tex-Datei unter C:\Dokumente und Einstellungen\Benutzername\… kompilieren und anzeigen, und mit Matthias’ Tipp öffnet sich die neu erzeugte PDF-Datei sogar auf derselben Seite.

  24. Super! Vielen Dank für die Skripte und die Anleitung. Hatte schon befürchtet, dass ich für LaTeX wieder den Acrobat installieren muss… Alles funktioniert.

    Gruß!

  25. Vielen Dank für diese prima Anleitung!
    Alles wunderbar bis auf ein kleines Problemchen: Bei mir wird nun das pdf in 8.3-Notation ausgegeben. Hätte diesen gerne aber in langer Schreibweise?
    Hat jemand eine Idee?

    Gruß
    Henning

  26. Super Tutorial!

    Gibt es darüber hinaus noch die Möglichkeit, zur aktuell editierten Stelle im PDF zu springen, oder ist das nur als DVI möglich?

    Grüße Sebastian

  27. @Sebastian
    Hi Sebastian,

    meines Wissens gibt es derzeit keine solche Möglichkeit. Ich lasse mich da aber gerne eines besseren belehren.

    Viele Grüße
    Patrick

  28. Vielen Dank! Klappt super! Musste nur noch im IE die Einstelliungen für locale Zone auf sehr niedrig setzen, damit kein die Ausführung der Skripte nicht bestätigen muss)))

  29. Hi Patrick,

    erstmal danke für dein Protokoll. Habe jeden Schritt verfolgt, so wie du ihn aufgeschrieben hast. Doch leider kommt bei mir immer die Fehlermeldung, wenn ich mein .tex-Datei kompilieren möchte “….vbs Der Befehl konnte nicht ausgeführt werden.” Woran kann das liegen?

    Beste Grüße
    Anna

  30. Hi Patrik,

    super Anleitung! Lief auf Anhieb problemlos.
    Besten Dank!

    Grüße
    Matze

  31. Hi,

    Anleitung hat bei mir auch auf Anhieb funktioniert. Auch das Springen auf die richtige Seite läuft….
    Nur einen Tab schließen wäre aber echt cool, weil alle Paper die man wärend dem Schreiben so braucht auch immer als PDF geöffnet sind….
    Vielleicht gibts da ja irgendwan ein Update…

    Lg sven

  32. Es scheint Probleme bei Dateinamen zu geben, die einen Unterstrich enthalten, z.B. Projekt3_2009.tex Gibt es dafür eine Lösung?

  33. Hi,

    leider habe ich mich schon eine ganze Weile mit dem ganzen nicht mehr beschäftigt. Demnach habe ich derzeit auch keine Umgebung, in der ich das von dir beschriebene Problem nachstellen kann.

    Grundsätzlich wäre es hilfreich, wenn du die Aussage “Es scheint Probleme bei Dateinamen zu geben” etwas präizisieren könntest.

    Viele Grüße
    Patrick

  34. Beim Aufruf des FoxIt-Readers aus TexnicCenter heraus gibt der FoxIt bei solchen Dateinamen die Meldung, dass er die Datei nicht öffnen konnte, weil er sie nicht finden kann. Dazu wird der Pfad zur Datei angezeigt, wobei die Kurznamen, d.h. mit Tilden angezeigt werden. Enthält der Dateiname keine Unterstriche, funktioniert der Aufruf problemlos. Das ist das “Problem”, das ich meinte.

    Für einen Tip wäre ich dankbar.

    Grüße

    Benjamin

  35. Hallo,

    eigentlich hatte ich mit der Einstellung beim Foxitreader nie Probleme. Geändert habe ich auch nichts, außer dass ich seit neustem im Texniccenter noch MakeIndex für meinen Glossar verwende.
    Aber seit neustem öffnet sich das PDF File einfach nicht mehr automatisch. Ich muss es immer mit dem entsprechendem Butten im Texniccenter nachträglich noch einmal öffnen.
    Leider habe ich gar keine Ahnung woran das liegen könnte. Ich habe alle meine Files noch mal verglichen udn auch das eingestellte Ausgabeprofil, jedoch konnte ich keine Unterschiede zu dem was hier beschrieben wurde erkennen.

    Einen Fehler gibt es ja anscheinend auch nicht wirklich, nur kann ich das Dokument eben nur noch manuell nach dem kompilieren öffnen.

    Kann mir jemand von euch helfen?

    Gruß Dorothee

  36. Vielen Dank an Patrick und Matthias!

  37. Super Anleitung!
    Wenn man sie (genau :-) ) befolgt, kann nix schief gehen.
    Vielen Dank!

  38. Vielen Dank, hat super geklappt :-)

    Schnell gefunden, Schritt für Schritt befolgt, und schon klappt’s!

  39. Hallo Patrick,

    vielen Dank für die Anleitung, hat mir sehr geholfen.
    Musste aber die Kommandozeilenbefehle etwas anpassen und zwar
    “%Bm.pdf” -NoRegister
    close “%tm.pdf”
    verwenden (also jeweils das s weglassen), weil es sonst nicht ging. Habe Foxit Reader 3.1 vielleicht hat das damit was zu tun, deine Beschreibung stammt ja zu Zeiten älterer Versionen.

    So klappt es jedenfalls auch bei mir.

    Grüße und nochmals Danke!
    Philippe

  40. Hammer, danke für diese Anleitung. War schon kurz davor den Foxit Reader wegzuschmeißen deswegen, hatte mich aber gerade so an ihn gewöhnt. Auch 2,5 Jahre danach immer noch sehr hilfreich.
    Beste Grüße und Danke

  41. Hey,
    erstmal vielen Dank für die tolle Anleitung!
    Bei mir funktioniert allerdings nicht das automatische Schließen des FoxtReaders. Ist das Dokument bei Kompilierung noch geöffnet, wechselt der Fokus von TexnicCenter zum FoxitReader, allerdings hat der noch die “alte” Version geladen. Ist das Dokument bei Kompilierung nicht geöffnet, funktioniert es problemlos.
    Weiß jemand, was man da machen kann?

    Liebe Grüße,
    Gunnar

  42. Hallo,

    bei mir weigert texnic sich, das vbs-script zu finden. Es ist da, die Benamung stimmt, ich hab keine Ahnung wo der Fehler sein könnte…
    Hat jemand bereits Ähnliches gelöst?

    Danke vorab, S.

  43. Originally Posted By SistiHallo,

    bei mir weigert texnic sich, das vbs-script zu finden. Es ist da, die Benamung stimmt, ich hab keine Ahnung wo der Fehler sein könnte…
    Hat jemand bereits �hnliches gelöst?

    Danke vorab, S.

    Ich hab den Fehler gefunden. Mein System hat keine shell.run (XP prof unter Parallels auf dem Mac)

    Wo finde ich nun eine shell.run bzw. wie kommt es dass ich diese nicht habe?

  44. Hi,
    evtl das close “%stm.pdf” unten im Profil-Dialog vergessen einzutragen?

  45. Toll, der Eintrag ist schon 3 Jahre alt aber funktoiniert immer noch wie geschmiert! DANKE!!!

  46. Super Sache! Danke:)
    Funktioniert mit TexnicCenter Alpha 3, FoxIt 4.2 und MikTeX 2.8 immer noch problemlos:)

    Als Hinweis: Unter Windows 7 muss man in der *.bat den normalen (langen) Pfad & Dateinamen in “” eintragen.

  47. Hey, Super Geschichte! Hat astrein funktioniert.

    Gibts ne Möglichkeit, das so einzustellen, dass nur der letzte Tab im Foxit geschlossen wird? Ist ein bisschen nervig, dass man keine Tutorials offen haben kann, da immerwieder der FoxitReader beim neukompilieren geschlossen wird.

  48. Vielen Dank!

    Funktioniert auch mit TexnicCenter 1.0 Stable Release, Foxit 4.3 und MixTeX 2.9.
    Seltsamerweise musste ich jedoch den Befehl “%sbm.pdf” unter “Suche in Ausgabe” setzen, da wohl sonst kein Parameter an Foxit übergeben wird.

    Ich verwende Windows 7 64 bit. Bei mir funktionier es auch mit der 8.3-Notation in der *.bat-Datei.

    Nochmals vielen Dank für die tolle Anleitung.

  49. Danke für das tolle und hilfreiche Tutorial!

    Unter Win7 bekomme ich den Pfad und Dateinamen in der 8.3 Notation mit folgendem Befehl in der CMD heraus:

    dir *.* /x

    Viele Grüße
    Gabiele

  50. Läuft super. Nur kommen immer zwei Sicherheitsabfragen, ob ich das denn auch wirklich öffnen möchte (WinXP). Das nervt ein wenig.

  51. Hallo,
    gibt es auch die Möglichkeit nur den Tab zu schließen und nicht den gesamten Reader?

  52. Hallo,

    Ich kann unter Win7 den Pfad in 8.3 Notation nicht heraufinden… nicht mit “command” und auch nicht mit “dir/x”..
    kann man das per Hand irgendwie erledigen??

    Gruß

  53. Hallo,

    Nach langem hin und her läuft das Programm bei mir auch (WinXP, FoxitReader 5.1). Mein Fehler war, dass ich die vbs-Datei nicht richtig gespeichert habe. Der Werbebanner hat mir den shell.run-befehl abgeschnitten :-/.

    Tipp: Den Download der Dateien nutzen ^.^.

    Danke für diese Seite !!!!

Trackbacks/Pingbacks

  1. Trackback Test Center @ Speisekarten-Blog

Leave a Reply