Schwarzer Kasten bei Longtables im Draft Modus.

Redefinition von Makros, Definition eigener Befehle sowie neuer Umgebungen


Rakete
Forum-Anfänger
Forum-Anfänger
Beiträge: 25
Registriert: So 12. Jan 2014, 00:57

Schwarzer Kasten bei Longtables im Draft Modus.

Beitrag von Rakete »

Hallo zusammen,

ich habe zwei Fragen bzgl. des Draft Modus.

1. Ich möchte gerne erreichen, dass im draft Modus kein Dateipfad bei Abbildungen steht aber die Beschriftung der Abbildung stehen bleibt.

2. Wie kann ich erreichen, dass bei Tabellen im draft Modus auch ein Kasten gesetzt wird als Platzhalter, aber die Tabellenbeschriftung stehen bleibt?

Wenn es an individuelle Strukturen geht, habe ich leider noch keine Erfahrung... Eigentlich ist auch ein Minimalbeispiel Pflicht, ich weiß, aber die Frage ist sehr allgemein und Dateipfade ja individuell. Daher habe ich keins gepostet. Ich freue mich auf Eure Unterstützung- Danke.
Zuletzt geändert von Rakete am Do 17. Jul 2014, 16:13, insgesamt 1-mal geändert.

prankenandi
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 60
Registriert: Di 8. Apr 2014, 13:59

Beitrag von prankenandi »

Hallo,

da ich kein Beispiel zum ausprobieren habe, weiß ich nicht ob es hilft, aber hier einfach mal zwei Links.

Vielleicht geht das in die Richtung was du gerne möchstest:

zu 1.

zu 2.

MfG
Debian 7 (Wheezy) mit Texlive 2013 und Texmaker

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

\listfiles
\documentclass[draft]{article}
\usepackage{graphicx}
\begin{document}
\includegraphics{example-image-a}
\end{document}
Da wird mir keine Pfad angegeben. Es kommt also drauf an, wie du die Bilder ansprichst.

Aber was meinst du mit Beschriftung? Und warumm willst du Tabellen ersetzen? Das Ersetzen con Bildern mit einem Rahmen dient vordergründig nur dem Sparen von Tinte (Druckkosten).
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Rakete
Forum-Anfänger
Forum-Anfänger
Beiträge: 25
Registriert: So 12. Jan 2014, 00:57

Beitrag von Rakete »

Hallo zusammen, danke für eure Ideen.

Ich habe beides angeschaut und leider hilft es noch nicht richtig.

Ich habe ein kleines Minimalbeispiel erstellt. Leider muss man sich noch ein eigenes Bild als Pfad reinkopieren.

Wenn ich mit
\listfiles
rangehe bekomme ich zwar eine Liste ausgegeben aber leider sind immer noch die Dateipfade der Figures in der Box. Kann man das irgendwie blocken? Ich brauch die Dateipfade nicht, da sie mir später bei zählen von Wörter im .pdf das Ergebnis verfälschen.

Genauso möchte ich erreichen, dass die selbe Box, die sich über Bilder legt, auch über Tabellen legt. Aber die "caption" erhalten bleibt. Damit ich die Wörter aus der Tabelle später nicht mitzähle sozusagen. Das ist der Hintergrund...

\listfiles
\documentclass[draft]{article}
\usepackage{graphicx}
\begin{document}

\begin{figure}[htb]
\centering
\includegraphics[width=\textwidth]{hello}
\caption{Das ist ein Bild}
\label{fig:Bild}
\end{figure}

\vspace{4cm}

\begin{table}[ht] 
\centering 
\begin{tabular}[ht]{|p{2cm}|p{5.5cm}|p{2cm}|} 
  \hline 

  \bf Spalte 1 & \bf Spalte 2 & \bf Spalte 3 \\ \hline\hline 
  
Kategorie A &  Punkt 1  & gut \\ 
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\ 
                  &  Punkt 4   & etc. \\ 
                  &  Punkt 5   & \\ 
                  &  Punkt 6   & \\ 
                  &  Punkt 7   & \\ [1ex] \hline 
  

\end{tabular} 
\caption{Das ist eine Tabelle}
\label{tab:die_tabelle} 
\end{table} 

\end{document}

Noch so einer

Beitrag von Noch so einer »

Du willst also nicht den Dateipfad, sondern auch den Dateinamen unterdrücken.

Eigentlich wäre das Grafikproblem am einfachsten mit Option demo statt draft oder final statt draft zu lösen. Man kann aber auch die "Grafikausgabe" patchen. Für die Tabellen, muss man allerdings erst einmal etwas neues basteln:
\listfiles
\documentclass[draft]{article}
\usepackage{graphicx}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\Gin@setfile}{% Grafikausgabe patchen, um die Namensausgabe zu unterdrücken
  \rlap{
    \ttfamily\expandafter\strip@prefix\meaning\@tempa}%
}{}{}{\FehlerBeimPatchen}
\ifGin@draft% Ich mache das jetzt mal frech daran fest, ob das graphicx-Paket
            % Option draft gesetzt hat. Das funktioniert also nur _nach_ dem
            % Laden von graphicx.
  % Die tabular-Umgebung so umdefinieren, dass an Stelle der Tabelle
  % nur ein Rahmen gleicher Größe ausgegeben wird.
  \let\savedbegintabular\tabular
  \let\savedendtabular\endtabular
  \newsavebox\tabularbox
  \renewenvironment{tabular}[2][]{%
    \begin{lrbox}{\tabularbox}
      \savedbegintabular[#1]{#2}
  }{%
      \savedendtabular
    \end{lrbox}
    \frame{%
      \rule{\wd\tabularbox}{0pt}%
      \rule[-\dp\strutbox]{0pt}{\dimexpr\ht\tabularbox+\dp\tabularbox}%
    }%
  }%
\fi
\makeatother
\usepackage{mwe}% Nur zu DEMO-Zwecken nicht im echten Dokument!
\begin{document}

\begin{figure}[htb]
\centering
\includegraphics[width=\textwidth]{example-image}
\caption{Das ist ein Bild}
\label{fig:Bild}
\end{figure}

\vspace{4cm}

\begin{table}[ht]
\centering
\begin{tabular}[ht]{|p{2cm}|p{5.5cm}|p{2cm}|}
  \hline

  \textbf{Spalte 1} & \textbf{Spalte 2} & \textbf{Spalte 3} \\ \hline\hline
 
Kategorie A &  Punkt 1  & gut \\
                  &  Punkt 2   & besser \\
                  &  Punkt 3   & schlecht \\
                  &  Punkt 4   & etc. \\
                  &  Punkt 5   & \\
                  &  Punkt 6   & \\
                  &  Punkt 7   & \\ [1ex] \hline
 

\end{tabular}
\caption{Das ist eine Tabelle}
\label{tab:die_tabelle}
\end{table}

\end{document}
BTW: \bf ist seit 20 Jahren veraltet und sollte nicht mehr verwendet werden. Siehe auch: Woher auch immer Du also \bf hast: Vergiss es ganz schnell und stufe jene Quelle vorsichtshalber als zweifelhaft ein.

Rakete
Forum-Anfänger
Forum-Anfänger
Beiträge: 25
Registriert: So 12. Jan 2014, 00:57

Beitrag von Rakete »

Das ist stark. Genau danach habe ich gesucht. Vielen Dank.


Danke auch wegen des Tips mit \bf ...!!!

:) :) :)

Rakete
Forum-Anfänger
Forum-Anfänger
Beiträge: 25
Registriert: So 12. Jan 2014, 00:57

Beitrag von Rakete »

Das Tüpfelchen auf dem "i" wäre jetzt natürlich noch wenn das mit einer longtable Umgebung auch klappt.

Ich habe (ohne 100%iges Verständnis) tabular durch longtable ersetzt aber das hat leider nicht funktioniert....

Ich habe einen Longtable eingebaut, es würde mich sehr freuen wenn sich jemand der Sache nochmal annehmen kann.

Viele Grüße :)
\documentclass[final]{article} 

\usepackage{graphicx} 
\usepackage{etoolbox} 
\usepackage{longtable}
\usepackage{hyperref}


\makeatletter 
\patchcmd{\Gin@setfile}{% Grafikausgabe patchen, um die Namensausgabe zu unterdrücken 
  \rlap{ 
    \ttfamily\expandafter\strip@prefix\meaning\@tempa}% 
}{}{}{\FehlerBeimPatchen} 
\ifGin@draft% Ich mache das jetzt mal frech daran fest, ob das graphicx-Paket 
            % Option draft gesetzt hat. Das funktioniert also nur _nach_ dem 
            % Laden von graphicx. 
  % Die tabular-Umgebung so umdefinieren, dass an Stelle der Tabelle 
  % nur ein Rahmen gleicher Größe ausgegeben wird. 
  \let\savedbegintabular\tabular 
  \let\savedendtabular\endtabular 
  \newsavebox\tabularbox 
  \renewenvironment{tabular}[2][]{% 
    \begin{lrbox}{\tabularbox} 
      \savedbegintabular[#1]{#2} 
  }{% 
      \savedendtabular 
    \end{lrbox} 
    \frame{% 
      \rule{\wd\tabularbox}{0pt}% 
      \rule[-\dp\strutbox]{0pt}{\dimexpr\ht\tabularbox+\dp\tabularbox}% 
    }% 
  }% 
\fi 
\makeatother 
\usepackage{mwe}% Nur zu DEMO-Zwecken nicht im echten Dokument! 
\begin{document} 

\begin{figure}[htb] 
\centering 
\includegraphics[width=\textwidth]{example-image} 
\caption{Das ist ein Bild} 
\label{fig:Bild} 
\end{figure} 


\begin{table}[ht] 
\centering 
\begin{tabular}[ht]{|p{2cm}|p{5.5cm}|p{2cm}|} 
  \hline 

  \textbf{Spalte 1} & \textbf{Spalte 2} & \textbf{Spalte 3} \\ \hline\hline 
  
Kategorie A &  Punkt 1  & gut \\ 
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\ 
                  &  Punkt 4   & etc. \\ 
                  &  Punkt 5   & \\ 
                  &  Punkt 6   & \\ 
                  &  Punkt 7   & \\ [1ex] \hline 
  

\end{tabular} 
\caption{Das ist eine Tabelle} 
\label{tab:die_tabelle} 
\end{table} 


\begin{longtable}{p{3cm}p{2.5cm}p{3cm}}
\caption[Dies ist ein Longtable]{Dies ist ein Longtable, Source: XYZ} \label{tab:Longtable} \\
\endfirsthead
\caption*{Table \ref{tab:Longtable}: \nameref{tab:Longtable} (continued)} \\
\endhead
\endfoot
\endlastfoot

\hline

  \textbf{Spalte 1} & \textbf{Spalte 2} & \textbf{Spalte 3} \\ \hline\hline 
  
Kategorie A &  Punkt 1  & gut \\ 
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\                  
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\
                  &  Punkt 2   & besser \\ 
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\                  
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\                  
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\
                  &  Punkt 3   & schlecht \\                  
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\                  
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\
                  &  Punkt 2   & besser \\ 
                  &  Punkt 3   & schlecht \\ 
                  &  Punkt 4   & etc. \\  [1ex] \hline 

\hline
\end{longtable}

\end{document}

Rakete
Forum-Anfänger
Forum-Anfänger
Beiträge: 25
Registriert: So 12. Jan 2014, 00:57

Beitrag von Rakete »

Hat keiner eine Idee? :cry:

Noch so einer

Beitrag von Noch so einer »

Bei longtable kann das so nicht gehen, weil diese über mehrere Seiten umbrochen wird. Man kann sie also nicht einfach ausmessen. Mir ist es ehrlich gesagt zu viel Aufwand, mich da lediglich für den draft-Modus extra reinzuknien. Da wäre es einfacher longtable-Umgebungen einfach wegzuwerfen (siehe beispielsweise das comment-Paket). Allerdings fehlen dann natürlich auch die \caption-Texte.

Es sei auch darauf hingewiesen, dass meine Umdefinierung von tabular natürlich auch Auswirkungen auf implizite Tabellen hat. So setzt LaTeX beispielsweise die Autoren im Titel mit einer Tabelle.

Rakete
Forum-Anfänger
Forum-Anfänger
Beiträge: 25
Registriert: So 12. Jan 2014, 00:57

Beitrag von Rakete »

mmmh - schade.

Antworten