Text in .eps-Datei ersetzen

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Text in .eps-Datei ersetzen

von cgnieder » Mo 28. Sep 2015, 01:27

lisa7147 hat geschrieben:Das mit -shell-escape bei PDFLaTeX hat nicht funktioniert
Was genau hat denn da nicht funktioniert. In der Tat funktioniert das in der Regel nämlich sehr gut. So habe ich mein Beispiel damit getestet, bevor ich's gepostet habe, auch die Doku von chemnum kompiliere ich damit problemlos.

Grüße

von lisa7147 » Mo 21. Sep 2015, 09:26

Das mit -shell-escape bei PDFLaTeX hat nicht funktioniert, aber ich habe die "Schnell Übersetzen"-Funktion eingestellt auf: LaTeX - dvips - ps2pdf - PDF anzeigen und so funktioniert dann alles :D

von cgnieder » Fr 18. Sep 2015, 10:51

Ich verstehe nicht, weshalb Du psfrag direkt verwendest, wo doch chemnum einen Befehl genau dafür bereitstellt, nämlich \replacecmpd?

Wenn Du willst, dass psfrag (oder \replacecmpd, das seinerseits psfrag verwendet) mit pdflatex funktioniert, brauchst Du
\usepackage[runs=2]{auto-pst-pdf}
und musst mit shell-escape compilieren.
% arara: pdflatex: { shell: on }
\documentclass{scrartcl}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

% benötigt mit pdflatex damit psfrag seine Arbeit machen kann -- muss mit
% shell-escape kompiliert werden:
\usepackage[runs=2]{auto-pst-pdf}

\usepackage{chemnum}

% chemmacros erkennt die Sprache selbst
\usepackage{chemmacros}

% für neueres und älteres chemmacros
\providecommand\IfChemCompatibilityTF[4]{#4}
\IfChemCompatibilityTF{>=}{5.}{
  \usechemmodule{scheme}
}{
  \usepackage{chemscheme}
}

\begin{document}

Benzen \cmpd{benzen}


\begin{scheme}
  \replacecmpd[tag=T]{benzen}
  \includegraphics[scale=1]{Benzen1.eps}
\end{scheme}

\end{document}
Grüße

von saputello » Fr 18. Sep 2015, 10:48

Du verwendest vermutlich pdflatex. psfrag funktioniert nur auf dem Weg latex → DVI → dvips → PS und optional anschließend noch pstopdf/ps2pdf → PDF.

Dein eigenes Beispiel ergibt auf dem Weg:

Bild

Die beiden Beispiele @Noch so einer:

Bild Bild

Übrigens ist das korrekte Vorgehen bei Verwendung von [d]psfrag[/d] auch in der bereits von @Noch so einer verlinken Anleitung erklärt. Dort ist unter Abschnitt 2 erklärt, dass man entweder dvips oder dvipsone verwenden sollte. Das geht nur, wenn man den DVI-Weg beschreitet.
Dateianhänge
2. Beispiel @Noch so einer
2. Beispiel @Noch so einer
test4.png (1.4 KiB) 2632 mal betrachtet
1. Beispiel @Noch so einer
1. Beispiel @Noch so einer
test3.png (1.59 KiB) 2644 mal betrachtet
Beispiel @lisa7147 mit falschen Klammern bei \psfrag
Beispiel @lisa7147 mit falschen Klammern bei \psfrag
test2.png (1.63 KiB) 2640 mal betrachtet

von lisa7147 » Fr 18. Sep 2015, 10:08

Also, wenn ich sowohl mein Beispiel als auch deinen beiden so wie sie sind kompiliere (auch mehrmals) wird der Text der .eps-Datei (in meinem Fall nur "T" als Platzhalter) nicht durch das zuvor für mein Benzen vergebenes Label (hier "1") ersetzt, sondern er Text bleibt einfach.

Ich habe das Bild mit ChemDraw erstellt (Struktur gezeichnet, einfach ein Text-Feld darunter und als eps-Datei exportiert).

Ist irgendwas an meinem Code falsch, oder liegt das an der Bild-Datei?

Ich hoffe, jetzt ist es klarer :)

von Noch so einer » Fr 18. Sep 2015, 09:48

Ich verstehe nicht ganz, was Dein Problem ist. Du kannst doch mit \psfrag beliebig ersetzen, beispielsweise:
\documentclass[
  parskip,
  12pt,
  headsepline,plainheadsepline,
  toc=listof,
  headheight=17.99446pt
]{scrartcl}


\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}


\usepackage{psfrag, graphicx}


\usepackage{float}
\usepackage{amsmath, amssymb, textcomp, chemnum }

\usepackage{chemscheme}
\usepackage[ngerman]{chemmacros}

\usepackage{hyperref}
\usepackage[ngerman]{cleveref}

\begin{document}

Benzen \cmpd{benzen}


\begin{scheme}[H]
\psfrag{T}{Benzen \cmpd{benzen}}
\includegraphics[scale=1]{Benzen1.eps}
\end{scheme}

\end{document}
oder
\documentclass[
  parskip,
  12pt,
  headsepline,plainheadsepline,
  toc=listof,
  headheight=17.99446pt
]{scrartcl}


\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}


\usepackage{psfrag, graphicx}


\usepackage{float}
\usepackage{amsmath, amssymb, textcomp, chemnum }

\usepackage{chemscheme}
\usepackage[ngerman]{chemmacros}

\usepackage{hyperref}
\usepackage[ngerman]{cleveref}

\begin{document}

Benzen \cmpd{benzen}


\begin{scheme}[H]
\psfrag{T}{\cmpd{benzen}}
\includegraphics[scale=1]{Benzen1.eps}
\end{scheme}

\end{document}
Je nachdem, was Du haben willst. Natürlich musst Du dabei die richtigen Klammern verwenden, sonst wird es nicht. Siehe auch die [d]psfrag[/d]-Anleitung.

von lisa7147 » Fr 18. Sep 2015, 08:20

Hat keiner eine Idee? Bei Unklarheiten einfach nachfragen :)

Text in .eps-Datei ersetzen

von lisa7147 » Do 17. Sep 2015, 11:26

Hallo,

da ich für meine BA viele chemische Verbindungen aufzähle und diese mit \cmpd labele, will ich diese Label auch in meinen Reaktionen, die ich mit ChemDraw zeichne verwenden. Durch \cmpd passen sich die Labels ja an, wenn ich Verbindungen hinzufüge oder lösche. Das soll dann auch so in den Reaktionen sein, damit ich die nicht immer wieder ändern muss (und vllt irgendwann den Überblick verliere).
Ich habe auch schon viel recherchiert, aber nichts gefunden :(

Ich hoffe, jemand von euch kann mir bei meinem Problem helfen :lol:

Mein Minimalbeispiel:
\documentclass[ 
  parskip, 
  12pt, 
  headsepline,plainheadsepline, 
  toc=listof, 
  headheight=17.99446pt 
]{scrartcl} 


\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}


\usepackage{psfrag, graphicx}


\usepackage{float} 
\usepackage{amsmath, amssymb, textcomp, chemnum }

\usepackage{chemscheme}
\usepackage[ngerman]{chemmacros}

\usepackage{hyperref}
\usepackage[ngerman]{cleveref} 

\begin{document}

Benzen \cmpd{benzen}


\begin{scheme}[H]
\psfrag[T]{\cmpd{benzen}} 
\includegraphics[scale=1]{Benzen1.eps}
\end{scheme}

\end{document}
Dateianhänge
Benzen1.eps
(13.28 KiB) 383-mal heruntergeladen

Nach oben