Es geht um das Zusammenwürfeln der Fragen:

https://texwelt.de/wissen/fragen/22435/tikz-calendar-wie-kalender-seitengro-setzen

und

https://texwelt.de/wissen/fragen/22452/tikz-text-in-node-platzieren

__

Ich möchte, dass die Zahlen exakt oben links oder exakt unten rechts in den Rechtecken stehen.

Mit der Einstellung

Öffne in Overleaf
text width=(\textwidth-\pgflinewidth)/5-1pt, 
text depth=(\textheight-\pgflinewidth)/7-1pt,
  day xshift=(\textwidth-\pgflinewidth)/7,
  day yshift=(\textheight-\pgflinewidth)/5,

kommt es nahezu hin, allerdings erzeugt es unschöne Zusatzlinien.

alt text

Was muss ich anders machen?

Öffne in Overleaf
\documentclass[landscape]{scrartcl}
\usepackage[margin=1.75cm,showframe=true]{geometry}
\pagestyle{empty}

\usepackage{tikz}
\usetikzlibrary{calendar}
%\usetikzlibrary{decorations}
%\usetikzlibrary{shapes.multipart}

\begin{document}
\centering
\begin{tikzpicture}[
every day/.append style={
font=\Large\bfseries,
align=flush left,
%    anchor=south east,
    draw,
    minimum width=(\textwidth-\pgflinewidth)/7 , %<-geändert
    minimum height=(\textheight-\pgflinewidth)/5,%<-geändert
}
]
\calendar
[
text width=(\textwidth-\pgflinewidth)/5-1pt, 
text depth=(\textheight-\pgflinewidth)/7-1pt,
  day xshift=(\textwidth-\pgflinewidth)/7,% <- eingefügt
  day yshift=(\textheight-\pgflinewidth)/5,% <- eingefügt
  dates=2018-08-01 to 2018-08-31,
  week list,
%  day text=red
]
if (Sunday) [red]
if=(equals=08-10) [rectangle, draw, blue]
;
\end{tikzpicture}

\end{document}

gefragt 31 Jul, 15:27

cis's gravatar image

cis
8.2k15167263
Akzeptiert: 71%


Eigentlich geht das ganz einfach mit den beiden Antworten und Saputello's Kommentar unter meiner Antwort. Im wesentlichen hast Du nur vergessen, text width und text depth auch in den every day Style einzutragen.

Öffne in Overleaf
\documentclass[landscape]{scrartcl}
\usepackage[margin=1.75cm,showframe=true]{geometry}
\pagestyle{empty}

\usepackage{tikz}
\usetikzlibrary{calendar}

\pgfkeys{tikz/.cd,
         my inner sep/.store in =\myinnersep,
         my inner sep=8pt
}
\begin{document}
% so bekommt man die 16.03793pt
%{\Huge \pgfmathsetmacro{\myheight}{height("1")}
%\typeout{\myheight}}
\centering
\begin{tikzpicture}[
  every day/.append style={
    font=\Huge,
    draw,
    inner sep=\myinnersep,
    text width=(\textwidth-\pgflinewidth)/7-2*\myinnersep, %<-geändert
    text depth=(\textheight-\pgflinewidth)/5-16.03793pt-2*\myinnersep,%<-geändert
    minimum width=(\textwidth-\pgflinewidth)/7 , %<-geändert
    minimum height=(\textheight-\pgflinewidth)/5,%<-geändert
  },
]
\calendar
[
  day xshift=(\textwidth-\pgflinewidth)/7,% <- eingefügt
  day yshift=(\textheight-\pgflinewidth)/5,% <- eingefügt
  dates=2018-08-01 to 2018-08-31,
  week list, 
]
if (Sunday, Saturday) [red]
;
\end{tikzpicture}
\end{document}

alt text

Permanenter link

beantwortet 31 Jul, 21:46

Murmeltier's gravatar image

Murmeltier
1.9k64

@Murmeltier Mir scheint, du kannst \myheight auch direkt verwenden, also ohne auslesen.

(01 Aug, 10:28) cis

@cis Ja natürlich. Das unschöne daran ist, dass das Auslesen ein kleines bisschen Platz braucht. Das kann man mit einer \savebox umgehen, aber dann hatte ich befürchtet, dass der code als "zu komplizieret" geächtet wird, deswegen habe ich gelassen. ;-)

(01 Aug, 11:52) Murmeltier
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×617
×69
×37
×6

Frage gestellt: 31 Jul, 15:27

Frage wurde angeschaut: 309 Mal

Zuletzt aktualisiert: 01 Aug, 11:52