Anzeige:
Ergebnis 1 bis 6 von 6

Thema: Tabellengröße anpassen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer
    Registriert seit
    23.08.2005
    Beiträge
    60

    Tabellengröße anpassen

    Moin,

    ich komme bei meinen Tabellen nicht wirklich weiter.

    Die Einträge \BatchZugA, \BatchZugB werden vorher in dem Dokument über \newcommand{\BatchZugA}{XX}, usw. definiert. Gibt es eine Möglichkeit, wenn ein Eintrag leer bleibt keine Zeile in der Tabellen anzulegen?

    \begin{tabular}{c}
    \toprule
    Test \\
    \midrule
    \BatchZugA \\
    \BatchZugB \\
    \bottomrule
    \end{tabular}

    Wäre topp wenn da einer eine Idee hätte. Vielen Dank

    Quax

  2. #2
    Registrierter Benutzer
    Registriert seit
    06.03.2010
    Ort
    St. Petersburg, Russland
    Beiträge
    2.468
    Erstelle bitte ein vollständiges Minimalbeispiel, das wir direkt ausprobieren können.
    Obwohl ich mir auch dann nicht sicher bin, dass jemand auf eine Idee kommt, wie das gehen könnte, aber mehr Chancen hast du damit auf jeden Fall.

  3. #3
    Registrierter Benutzer
    Registriert seit
    23.08.2005
    Beiträge
    60
    Sorry, hatte den ersten Teil vergessen.

    \newcommand{\A}{1}
    \newcommand{\B}{}

    \begin{tabular}{c}
    \toprule
    Titel \\
    \midrule
    \A \\
    \B \\
    \bottomrule
    \end{tabular}

    Vielen Dank

  4. #4
    Registrierter Benutzer
    Registriert seit
    06.03.2010
    Ort
    St. Petersburg, Russland
    Beiträge
    2.468
    OK, ich helfe dir mal, das zu einem lauffähigen Dokument zu erweitern. Aber eigentlich ist das deine Arbeit. Schon allein weil du besser weißt, welche Klasse und welche Pakete du dafür benutzt. OK, dass toprule etc. zum Paket booktabs gehören, wusste ich jetzt auswendig, aber wahrscheinlich kann noch nicht mal Ulrike Fischer zu allen Befehlen auf Anhieb das richtige Paket sagen.
    Code:
    \documentclass{scrreprt}
    \usepackage{booktabs}
    \newcommand{\A}{1}
     \newcommand{\B}{}
    \begin{document}
     \begin{tabular}{c}
     \toprule
     Titel \\
     \midrule
     \A \\
     \B \\
     \bottomrule
     \end{tabular}
     \end{document}
    Leider habe ich absolut keinen Plan, wie man deinem Wunsch näherkommen könnte. Aber jetzt hilft vielleicht auch sonst noch wer :-)

  5. #5
    Registrierter Benutzer Avatar von bobmalaria
    Registriert seit
    28.11.2006
    Ort
    Düsseldorf
    Beiträge
    4.174
    hi,

    das ist etwas trickreicher als gedacht....

    ich habe es jetzt so geloest das das makro \Atemp bzw \Btemp mit deinem text gefuellt werden muss. dann wird getestet (\ifnum) on der test \pdfstrcmp (pdf string comparison) = 1 ergibt.

    das ist der fall wenn das erste argument \Atemp bzw \Btemp groesser ist als das zweite (in diesem fall die {}). ansosnten passiert gar nichts.

    dieser trick mit dem zahelnvergleich ist in diesem fall noetig, daman test wie z.b. \ifstrempty oder \ifblank (aus etoolbox) nicht verwenden kann da diese, so wie ich das verstanden habe, dann intern noch \edef{} ausgeben und das nicht expandiert wird und somit das makro nicht vollkommen leer ist was dann dazu fuehrt das zu leere extrazeilen
    in deiner tabelle hast. aber du willst ja leere makros komplett gar nicht ausgeben.

    gruss

    Code:
    \documentclass{article}
    
    \usepackage{booktabs}
    
    \newcommand{\Atemp}{something}
    \newcommand{\Btemp}{}
    \newcommand{\A}{\ifnum\pdfstrcmp{\Atemp}{}=1 \Atemp \tabularnewline \else\fi}
    \newcommand{\B}{\ifnum\pdfstrcmp{\Btemp}{}=1 \Btemp \tabularnewline \else\fi}
    
    \begin{document}
    
     \begin{tabular}{c}
     \toprule
     Titel \\
     \midrule
     \A 
     \B 
     \bottomrule
     \end{tabular}
    
    \end{document}


    siehe dazu auch
    http://tex.stackexchange.com/questio...row-in-tabular

    und

    http://www.tug.org/pipermail/pdftex/...st/005913.html
    Mein Ball ist umgefallen

  6. #6
    Registrierter Benutzer
    Registriert seit
    23.08.2005
    Beiträge
    60
    Hi,

    super, vielen Dank. Wäre ich alleine im Leben nicht drauf gekommen.

    Ich habe das ganze noch ein wenig auf mehrere Spalten erweitert, falls es jemand interessiert:

    Code:
    \documentclass{article}
    
    \usepackage{booktabs}
    
    \newcommand{\Atemp}{some}
    \newcommand{\Btemp}{thing}
    \newcommand{\Ctemp}{}
    \newcommand{\Dtemp}{}
    \newcommand{\A}{\ifnum\pdfstrcmp{\Atemp}{}=1 \Atemp & \else\fi}
    \newcommand{\B}{\ifnum\pdfstrcmp{\Btemp}{}=1 \Btemp \tabularnewline \else\fi}
    \newcommand{\C}{\ifnum\pdfstrcmp{\Ctemp}{}=1 \Ctemp & \else\fi}
    \newcommand{\D}{\ifnum\pdfstrcmp{\Dtemp}{}=1 \Dtemp \tabularnewline \else\fi}
    
    
     \begin{tabular}{c c}
     \toprule
     Titel & Bla \\
     \midrule
      \A  \B
      \C  \D
     \bottomrule
     \end{tabular}

    Nächstes Mal bringe ich auch gleich ein gescheites Minimalbeispiel, sorry dafür

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •