3

for a scholarly edition, I need a rather complex layout. I tried using columns and tkiz, but I am not experienced enough to complete this daunting task.

How would I go and put the | .th. | incomplete magic square | complete magic square | text | next to each other, and still keep Habere bona saturni above the incomplete magic square ?

latin original


I managed to transcribe each and every segment separately, but I don't know how to float? them next to each other. I provide a MWE but if I approach this problem the wrong way, other suggestions are more than welcome! enter image description here


MWE

% !TeX spellcheck = nl_NL
% !TEX encoding = UTF-8 Unicode
% -*- coding: utf-8 -*-
\documentclass[a4paper]{article}

\usepackage{tikz}

\begin{document}
    
    \textit{lood}
    
\paragraph{}
    
    Habere bona \textit{Saturni}
    
    \begin{tikzpicture}
        \draw[step=1cm,gray,very thin] (0,0+0.5) grid (3,2);
        \node at (0.5,1.5){2};      \node at (1.5,1.5){0};      \node at (2.5,1.5){4};
        \node at (0.5,0.5){[7]};    \node at (1.5,0.5){[5]};    \node at (2.5,0.5){[3]};
    \end{tikzpicture}
    
\paragraph{}

    \begin{tikzpicture}
        \draw[step=1cm,gray,very thin] (0,0) grid (3,3);
        \node at (0.5,2.5){2};      \node at (1.5,2.5){9};      \node at (2.5,2.5){4};
        \node at (0.5,1.5){7};      \node at (1.5,1.5){5};      \node at (2.5,1.5){3};
        \node at (0.5,0.5){6};      \node at (1.5,0.5){1};      \node at (2.5,0.5){8};  
    \end{tikzpicture}

\paragraph{}


sculpa haec in plumbo \textit{Saturno} in\\
\textit{libra} \textit{piscibus} \textit{aquario} Direct\textit{o} et fortunat\textit{o}\\
et \textit{Luna} eum aspic\textit{iente} amico aspectu
    
\end{document} 

Thank you for your help!

1
  • Facinating manuscript. You could use the subfigure package to align them next to each other? Or a table?
    – nhck
    Oct 13 '20 at 9:16
4

It is quite easy to organize the pieces using the xcoffins package.

1 Allocate the coffins. (\New ..). Coffins are boxes with handles!

2 Fill the coffins with the material. (\Set ...)

3 Assemble the coffins by joining them by the handles. (\Join...)

4 Write the result.(\Typeset ...)

The coffin called \Frame of zero dimensions serves has a ``support frame'' to collect everything else.

Final writing is done at the current insertion point.

A somehow expanded explanations can be found in previous Q&A

Create a box using the tcolorbox package or any other? (image)

Position image next to a text within an adjustbox created in a newenvironment

I reused the tikz images from your question and added the same displacements to separate the material. (I did not know where to put the ``lood'')

% !TeX spellcheck = nl_NL
% !TEX encoding = UTF-8 Unicode
% -*- coding: utf-8 -*-
\documentclass[a4paper]{article}

\usepackage{xcoffins}
\usepackage{tikz}
    
\begin{document}        

\NewCoffin\Frame
\NewCoffin\completeMagic
\NewCoffin\incompleteMagic
\NewCoffin\iniText
\NewCoffin\aboveText
\NewCoffin\lastText

\SetHorizontalCoffin\completeMagic{%
     \begin{tikzpicture}%
    \draw[step=1cm,gray,very thin] (0,0) grid (3,3);%
    \node at (0.5,2.5){2};      \node at (1.5,2.5){9};      \node at (2.5,2.5){4};%
    \node at (0.5,1.5){7};      \node at (1.5,1.5){5};      \node at (2.5,1.5){3};%
    \node at (0.5,0.5){6};      \node at (1.5,0.5){1};      \node at (2.5,0.5){8}; %
    \end{tikzpicture}}  

\SetHorizontalCoffin\iniText{.th.}  

\SetHorizontalCoffin\incompleteMagic{%
\begin{tikzpicture}
\draw[step=1cm,gray,very thin] (0,0+0.5) grid (3,2);
\node at (0.5,1.5){2};      \node at (1.5,1.5){0};      \node at (2.5,1.5){4};
\node at (0.5,0.5){[7]};    \node at (1.5,0.5){[5]};    \node at (2.5,0.5){[3]};
\end{tikzpicture}
}

\SetVerticalCoffin\lastText{200pt}{sculpa haec in plumbo \textit{Saturno} in\par
    \textit{libra} \textit{piscibus} \textit{aquario} Direct\textit{o} et fortunat\textit{o}\par
    et \textit{Luna} eum aspic\textit{iente} amico aspectu}

\SetHorizontalCoffin\aboveText{Habere bona \textit{Saturni}}

\JoinCoffins*\incompleteMagic[hc,t]\aboveText[hc,b](0pt,5pt)

\JoinCoffins*\Frame[hc,vc]\iniText[r,vc]

\JoinCoffins*\Frame[\iniText-r,\iniText-vc]\incompleteMagic[l,vc](15pt,0pt)

\JoinCoffins*\Frame[\incompleteMagic-r,\incompleteMagic-t]\completeMagic[l,t](20pt,0pt)

\JoinCoffins*\Frame[\completeMagic-r,\completeMagic-t]\lastText[l,t]

\noindent\TypesetCoffin\Frame

\end{document}

output

Splitting the last text in three sentences and using three coffins it is possible to align each of them with the rows of the last square. (larger font size, sculpa or Sculpa?)

\NewCoffin\lastTexti
\NewCoffin\lastTextii   
\NewCoffin\lastTextiii

\SetHorizontalCoffin\lastTexti{\large Sculpa haec in plumbo \textit{Saturno} in}

\SetHorizontalCoffin\lastTextii{\large \textit{libra} \textit{piscibus} \textit{aquario} Direct\textit{o} et fortunat\textit{o}}

\SetHorizontalCoffin\lastTextiii{\large et \textit{Luna} eum aspic\textit{iente} amico aspectu}
....

%\JoinCoffins*\Frame[\completeMagic-r,\completeMagic-t]\lastText[l,t]

\JoinCoffins*\Frame[\completeMagic-r,\completeMagic-t]\lastTexti[l,t](20pt,-2ex)
\JoinCoffins*\Frame[\completeMagic-r,\completeMagic-vc]\lastTextii[l,t](20pt,1ex)
\JoinCoffins*\Frame[\completeMagic-r,\completeMagic-b]\lastTextiii[l,t](20pt,4ex)
\noindent\TypesetCoffin\Frame

nicer output

2
  • most impressive! Thank you @Simon Dispa Oct 14 '20 at 10:39
  • @LooselySubtle Thank you for the manuscript! A lot of fun! Oct 14 '20 at 15:06
1

First of all, if you put one tikzpicture one after the other they will try to align on the line. So for that all you have to do is to take away the \paragraph{} between them and delete the space. As for the title above you can use node label and place it relative to the node you put it on. It would also help that the images that you are trying to align have the same dimensions so adding "padding" is one way to go (I added an empty node).

% !TeX spellcheck = nl_NL
% !TEX encoding = UTF-8 Unicode
% -*- coding: utf-8 -*-
\documentclass[a4paper]{article}

\usepackage{tikz}

\begin{document}
    
    \textit{lood}
    
    \begin{tikzpicture}
        \draw[step=1cm,gray,very thin] (0,0+0.5) grid (3,2);
        \node at (0.5,1.5){2};      \node[label={[yshift=0.5cm]Habere bona \textit{Saturini}}] at (1.5,1.5){0};      \node at (2.5,1.5){4}; % label on the middle node so it is above
        \node at (0.5,0.5){[7]};    \node at (1.5,0.5){[5]};    \node at (2.5,0.5){[3]};
        \node at (0.5,-0.9) {}; % fake node so that the boxes have the same dimensions
    \end{tikzpicture} % no space = same line
    \begin{tikzpicture}
        \draw[step=1cm,gray,very thin] (0,0) grid (3,3);
        \node at (0.5,2.5){2};      \node at (1.5,2.5){9};      \node at (2.5,2.5){4};
        \node at (0.5,1.5){7};      \node at (1.5,1.5){5};      \node at (2.5,1.5){3};
        \node at (0.5,0.5){6};      \node at (1.5,0.5){1};      \node at (2.5,0.5){8};  
    \end{tikzpicture}

\paragraph{}


sculpa haec in plumbo \textit{Saturno} in\\
\textit{libra} \textit{piscibus} \textit{aquario} Direct\textit{o} et fortunat\textit{o}\\
et \textit{Luna} eum aspic\textit{iente} amico aspectu
    
\end{document} 

Hope this helps :)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.