Hallo ihr lieben! Ich bin gerade dabei mir einen Kalender anzufertigen (für den hauseigenen Gebrauch). Dafür wollte ich ein tolles Design benutzen, doch leider waren die LaTeX-Vorlagen nicht gerade das, wonach ich gesucht habe. Also habe ich mir kurzer Hand entschlossen selbst eine Vorlage zu erstellen. Leider bin ich nicht so bewandert in LaTeX, und brauche deshalb Hilfe. In Scribus habe ich eine rohe Skizze produziert, um zu zeigen wie das Resultat im besten Fall aussehen wird (Magenta ist da wo die Bilder, eins für Jeden Monat, sein sollte; die roten Zahlen sind Sonntage): Ich habe schon Hilfe bekommen automatisierte Datums- und Monatsangaben, in dem gewünschten Design, zu erstellen. Mark Wibrow hat hier diesen LaTeX Code geschrieben: Open in writeLaTeX
\documentclass[tikz,border=5]{standalone} \usepackage[utf8]{inputenc} \usepackage[ngerman]{babel} \usepackage[T1]{fontenc} \usetikzlibrary{calendar,backgrounds} \newcount\daycount \begin{document} \begin{tikzpicture}[background rectangle/.style={fill=black!95}, show background rectangle] \calendar[% dates=2015-01-01 to 2015-12-last, every day/.style={anchor=base west, font=\sffamily}, execute before day scope={ \ifdate{day of month=1}{% % On the first of the month move down... \pgftransformyshift{-6em}% % ...do the month label... \scshape \tikzmonthcode% % ...and draw the line. \draw [line cap=round,white, thick] (0,-.75em) -- (18*2em,-.75em); }{}% }, execute at begin day scope={ % Grr. \pgfcalendarcurrentday is zero prefixed % so the math parser will think it is octal. \daycount=\pgfcalendarcurrentday\relax % Now shift into position for the current day. \pgftransformxshift{(mod(\daycount-1,18)+(\daycount>18)*2.5)*2em}% \pgftransformyshift{-floor(\daycount/19)*2em}% }, every month/.style={anchor=text, yshift=-3em, text=white, font=\rmfamily} ] if (Sunday) [text=red] else [text=white] ; \end{tikzpicture} \end{document} Hier das Bild welches ich jetzt rausbekomme: Fragen und Probleme die ich dabei noch habe sind:
Kann mir Jemand helfen, damit der LaTeX Code so wird wie meine Skizze? Hier der LaTeX Code den ich geschrieben hatte bevor ich Hilfe bekam. Vielleicht kann man diese beiden Codes zusammenschneiden: Open in writeLaTeX
\documentclass[12pt,a4paper,oneside]{article} \usepackage[utf8]{inputenc} \usepackage[landscape, left=0cm,right=0cm,top=0cm,bottom=0cm]{geometry} \usepackage{tikz} \usepackage[T1]{fontenc} \usetikzlibrary{calc} \begin{document} \begin{tikzpicture}[remember picture, overlay] \fill[black] (current page.south west) rectangle ($(current page.south east) + (0,5cm)$); \fill[green] (current page.north west) rectangle ($(current page.south east) + (0,5cm)$); \fill[white] ($(current page.south west) + (30pt, 3cm)$) rectangle ($(current page.south east) + (-30pt, 3.07cm)$); \node[white] at ($(current page.south west) + (30pt, 30pt)$) {{\fontsize{30}{25} \scshape \bfseries January}}; %the node doesn't work ... January is not placed correctly. It should be placed at 30pt, 30pt but it is "hiding". \end{tikzpicture} \end{document} Vielen Dank schon mal im Voraus! Und vielen Dank an Mark Wibrow für den bisherigen Code! Wäre echt schön wenn mir Jemand hier helfen könnte! gefragt 06 Dez '14, 20:30 Basilius Sap... esdd |
Die Übersetzung übernimmt das Paket Open in writeLaTeX
\usepackage[ngerman]{translator} Für den Rest ist hier ein Vorschlag, bei dem die einzelnen Blätter einer Open in writeLaTeX
% basiert auf http://tex.stackexchange.com/questions/215645 (Antwort von Mark Wibrow) \documentclass[ngerman,landscape,fontsize=14pt]{scrartcl} \usepackage[margin=0pt]{geometry} \usepackage[utf8]{inputenc} \usepackage{babel} \usepackage[T1]{fontenc} \usepackage{translator} \usepackage{tikz} \usetikzlibrary{calendar,backgrounds} \renewcommand\tikzmonthcode{% \node[every month]{\pgfcalendarmonthname{\pgfcalendarcurrentmonth}};} \newcount\daycount \pagecolor{black} \newcommand\Kalender[2]{% \centering\includegraphics[width=\paperwidth,height=16cm, %keepaspectratio % Seitenverhältnis beachten ]{#2} \vfill \begin{tikzpicture} \calendar[% dates=2015-#1-01 to 2015-#1-last, every day/.style={anchor=base west, font=\sffamily\LARGE}, execute before day scope={ \ifdate{day of month=1}{% % ...do the month label... \tikzmonthcode% % ...and draw the line. \draw [line cap=round,white, thick] (0,-.75em) -- (0.97*\paperwidth,-.75em); }{}% }, execute at begin day scope={ % Grr. \pgfcalendarcurrentday is zero prefixed % so the math parser will think it is octal. \daycount=\pgfcalendarcurrentday\relax % Now shift into position for the current day. \pgftransformxshift{(mod(\daycount-1,18)+(\daycount>18)*2.5)*0.055*\paperwidth}% \pgftransformyshift{-floor(\daycount/19)*2.5em}% }, every month/.style={anchor=text, yshift=-5.5em, text=white, font=\rmfamily\Huge\scshape} ] if (Sunday) [text=red] else [text=white] ; \end{tikzpicture}% \vspace{.5cm}\clearpage} \usepackage{mwe}% für die Beispielbilder \begin{document} \foreach[count=\i] \bild in { example-image,example-image-A,example-image-B,example-image-C, example-image,example-image-A,example-image-B,example-image-C, example-image,example-image-A,example-image-B,example-image-C% }{\Kalender{\i}{\bild}} \end{document} Um andere Bilder einzufügen werden die Bilder in die Open in writeLaTeX
\foreach[count=\i] \bild in { BildJanuar,BildFebruar,BildMärz,BildApril, BildMai,BildJuni,BildJuli,BildAugust, BildSeptember,BildOktober,BildNovember,BildDezember% }{\Kalender{\i}{\bild}} Mit obigem Code werden die Bilder auf Papierbreite und eine Höhe von 16cm gestreckt. Wenn das Seitenverhältnis des Bildes anders ist, dann sieht es verzerrt aus. Verhindern kann man das durch die Option Will man die Bilder nicht vorher bearbeiten, sondern erst im Dokument die anzuzeigenden Bereich mit Open in writeLaTeX
% basiert auf http://tex.stackexchange.com/questions/215645 (Antwort von Mark Wibrow) \documentclass[ngerman,landscape,fontsize=14pt]{scrartcl} \usepackage[margin=0pt]{geometry} \usepackage[utf8]{inputenc} \usepackage{babel} \usepackage[T1]{fontenc} \usepackage{translator} \usepackage{tikz} \usetikzlibrary{calendar,backgrounds} \renewcommand\tikzmonthcode{% \node[every month]{\pgfcalendarmonthname{\pgfcalendarcurrentmonth}};} \newcount\daycount \pagecolor{black} \newcommand\Kalender[1]{% \vfill \begin{tikzpicture} \calendar[% dates=2015-#1-01 to 2015-#1-last, every day/.style={anchor=base west, font=\sffamily\LARGE}, execute before day scope={ \ifdate{day of month=1}{% % ...do the month label... \tikzmonthcode% % ...and draw the line. \draw [line cap=round,white, thick] (0,-.75em) -- (0.97*\paperwidth,-.75em); }{}% }, execute at begin day scope={ % Grr. \pgfcalendarcurrentday is zero prefixed % so the math parser will think it is octal. \daycount=\pgfcalendarcurrentday\relax % Now shift into position for the current day. \pgftransformxshift{(mod(\daycount-1,18)+(\daycount>18)*2.5)*0.055*\paperwidth}% \pgftransformyshift{-floor(\daycount/19)*2.5em}% }, every month/.style={anchor=text, yshift=-5.5em, text=white, font=\rmfamily\Huge\scshape} ] if (Sunday) [text=red] else [text=white] ; \end{tikzpicture}% \vspace{.5cm}\clearpage} \usepackage{mwe}% für die Beispielbilder \begin{document} \centering\includegraphics[width=\paperwidth,height=16cm]{% example-image}\Kalender{1} \centering\includegraphics[width=\paperwidth,height=16cm,keepaspectratio]{% example-image-A}\Kalender{2} \centering\includegraphics[width=\paperwidth,height=16cm,trim=2cm 2cm 2cm 2cm,clip]{% example-image-B}\Kalender{3} \centering\includegraphics[width=\paperwidth,height=16cm,keepaspectratio]{% example-image}\Kalender{1} \centering\includegraphics[width=\paperwidth,height=16cm]{% example-image-C}\Kalender{4} \end{document} beantwortet 06 Dez '14, 22:26 esdd Vielen Dank dafür! :-)
(07 Dez '14, 06:54)
Basilius Sap...
1
@esdd sieht wirklich gut aus! Doch etwas verstehe ich nicht. Was muss ich eingeben um ein example-image mit einem eigenen Bild auszutauschen (und so anzupassen, dass das eigene Bild den gesamten Bildbereich ausfüllt)?
(07 Dez '14, 09:28)
goldsonne23
@esdd Vielen Dank! Es ist wirklich sehr nett und schön wie ihr LaTeXbeginner wie mir helft, damit wir auch im Genuss von LaTeX kommen :-)
(07 Dez '14, 12:06)
goldsonne23
@esdd vielen Dank!
(07 Dez '14, 12:29)
Basilius Sap...
|