Hot
- Automatic way to hide every solution environment in handout modeby Stephen on September 21, 2026 at 8:46 am
In beamer, I want all the solution environments' contents to appear in normal beamer mode but disappear in handout mode. Typically this can be achieved by something like \documentclass[handout]{beamer} \begin{document} \begin{frame} \begin{example} example text \end{example} \begin{solution}<2-|handout:0> solution text \end{solution} \end{frame} \end{document} However, adding handout:0 for every solution environment is tedious. Is there any automatic may?
- math mode: make parentheses smaller?by Thibault de Villèle on September 21, 2026 at 8:11 am
I already know \left<opening operator> <content> \right<closing operator> automatically scales up the operators to adapt to the <content> size. I have the opposite problem: I want to scale a set of parentheses down, specifically in a superscript. Take the symbol below in (1) which I use to refer to a specific curve in my paper. I sometimes want to take the first derivative of it, which needs a \prime in superscript, leading to (2). % (1) The regular curve symbol. \NewDocumentCommand{\curve}{m}{% \phi_{\vphantom{m}\smash{f}}^{\text{\upshape gen}}% \IfBlankF{#1}{(#1)} }% % (2) Its derivative \NewDocumentCommand{\curvederivative}{m}{% \phi_{\vphantom{m}\smash{f}}^{\text{\upshape gen}\prime}% \IfBlankF{#1}{(#1)} }% However, these can easily be confused. I want to add parentheses around the \prime in order to make the difference stand out. The problem is the parentheses have a lot of height, but no depth (quite the change compared to the "gen" text, only having depth). This version also adds some height to the surrounding line in text mode... % (3) My attempt with parentheses... \NewDocumentCommand{\curvederivativeparen}{m}{% \phi_{\vphantom{m}\smash{f}}^{\text{\upshape gen}(\prime)}% \IfBlankF{#1}{(#1)} }% Is there an automatic way to scale the parentheses down to the size of the content (in that case, only the \prime symbol)? I know I can play around with \scalebox and \raisebox, but I don't want to fiddle with the lengths if the content changes... MWE, with EBGaramond: \documentclass{article} \usepackage{fontspec} \usepackage[amsthm,frenchmath,uprightscript]{newtxmath} \usepackage[lining,tabular]{ebgaramond} \usepackage{mathtools} \NewDocumentCommand{\curve}{m}{% \phi_{\vphantom{m}\smash{f}}^{\text{\upshape gen}}% \IfBlankF{#1}{(#1)}% }% \NewDocumentCommand{\curvederivative}{m}{% \phi_{\vphantom{m}\smash{f}}^{\text{\upshape gen}\prime}% \IfBlankF{#1}{(#1)}% }% \NewDocumentCommand{\curvederivativeparen}{m}{% \phi_{\vphantom{m}\smash{f}}^{\text{\upshape gen}(\prime)}% \IfBlankF{#1}{(#1)} }% \begin{document} First attempt: \( \curve{} \).\par Second attempt: \( \curvederivative{} \).\par Third attempt: \( \curvederivativeparen{} \).\par \end{document}
- Index not created automatically by the package imakeidxby lyl on September 21, 2026 at 7:53 am
I try to use Emacs + AUCTeX + Miktex to compile the following code which fails to output the index I expect. The options of the engine is: (add-to-list 'TeX-command-list '("XeLaTeX" "%`xelatex -shell-escape -aux-directory=./tmp -recorder %(mode)%' %t" TeX-run-TeX nil t)) Then I remove the option -aux-directory=./tmp and the index is created. But temporary files created during compilation are now all located in root path which is very annoying. How to get my index automatically created with imakeidx and meanwhile put all the temporay files in a given path? \documentclass{article} \usepackage[nonewpage]{imakeidx} \makeindex[columns=3,intoc,title=My Index] \begin{document} The first index needed\index{index}\\\clearpage The second index needed\index{second} \printindex \end{document}
- bigfoot doesn't work with lua-ulby lemzwerg on September 21, 2026 at 6:02 am
[This has been reported in the lua-ul tracker] Consider the following input file (a further size reduction doesn't trigger the problem). \documentclass[fontsize=12pt]{scrbook} \usepackage[semibold, lining]{ebgaramond} \usepackage{bigfoot} \usepackage{lua-ul} \begin{document} \chapter*{Geistesgeschichtliche und gesellschaftliche Gegebenheiten\footnote{Für das Einleitungskapitel wurden generell herangezogen: Ackerl; Arnold; Bauer in: Zeman, Literaturgeschichte; Brunner, Benediktiner; ders., Cistercienser; ders., Prediger-Orden; Budik; Cramer; Großmann; Horawitz 1--3; Horawitz, Wien; Kralik-Schlitter; Lamer-Kroh; Langer-Dolch; Meyer; Niederkorn-Bruck; Nußbaumer; Obersteiner; ÖML; Paravicini; Pauser-Scheutz; Rachum; Rommel; Rupprich in: De Boor-Newald 4/1; Sallaberger; Störig; Treml; Vorarlberg-Chronik; Wetzer-Welte; Wiesflecker; Zöllner, Österreichbegriff. Detaillierte Quellenangaben s.~die jeweiligen Namen in den folgenden Kapiteln.}} Unter der Literatur des Humanismus in Österreich wird im folgenden die Literatur zur Zeit des von Italien ausgehenden Renaissance-Humanismus verstanden, der unmittelbar von etwa 1430 bis 1550, in seinen Auswirkungen aber noch weit darüber hinaus das Geistesleben Österreichs maßgeblich beeinflußte. „Humanismus“ (eigentlich das Bemühen um eine der Menschenwürde entsprechende Persönlichkeitsentfaltung) ist eine Wortschöpfung des frühen 19.~Jahrhunderts, abgeleitet von dem neulateinischen Wort „humanista“. Dieses entstand in Italien frühestens Ende des 14.~Jahrhunderts und bezeichnete einen Vertreter jener damals an Universitäten aufkommenden Gelehrsamkeit, die -- innerhalb der mittelalterlich-scholastischen Bildungskategorien der „Septem artes liberales“ (sieben freien Künste) -- die Dialektik (bzw.~deren Teilbereich, die Logik) durch die Rhetorik ersetzte und die Bedeutung der Grammatik in den Vordergrund rückte. Nach wie vor unterschied man innerhalb der sieben freien Künste zwischen dem Trivium („Dreiweg“: Grammatik, Poetik, Dialektik bzw.~Logik) und dem Quadrivium („Vierweg“: Arithmetik, Geometrie, Musik, Astronomie inklusive Astrologie). War aber bisher im Bereich der Dialektik bzw.~Logik die spezifisch scholastische, sich auf Schriften des Aristoteles und auf kirchliche Autoritäten berufende Form des Denkens und Argumentierens gelehrt worden, so wurde nun allmählich mehr Gewicht auf den reflektierten Gebrauch des Lateinischen gelegt, das im ganzen Abendland als Sprache der Wissenschaft im akademischen Bereich galt. Gleichzeitig traten die Fächer des Quadriviums als Grundlagen der universitären Bildung zunächst in den Hintergrund, und das Hauptgewicht verlagerte sich auf das Trivium; für letzteres wurde der Ausdruck „studia humanitatis“ üblich. Unbeschadet des Festhaltens an dem als wahr erkannten Glauben an die Heilslehre Jesu Christi suchten die Humanisten durch das Studium der Antike und die Beschäftigung mit antiken Schriftstellern, allen voran \underLine{Cicero} % <---- (106--43 v.\,Chr.), die menschliche Persönlichkeit zu ihrer höchsten Entfaltung zu bringen. Vor allem in der Wissenschaft, der Staatskunst, der Technik, der Dichtkunst, der bildenden Kunst und in den weltlichen Tugenden hielt man die Vertreter der Antike für überlegen und nachahmenswert. Das neue Menschenbild des Humanismus sah als Ideal den „Universalmenschen“, der die Eigenschaften eines Poeta, Orator und Philosophus (Dichters, Redners und Philosophen) vollkommen in sich vereinigte. Die Scholastik des Mittelalters war der Ansicht gewesen, daß der Mensch in seiner Unvollkommenheit ganz \end{document} Compiling this snippet with lualatex aborts with ! Incompatible list can't be unboxed. \FN@newleveli ...sertion \penalty \z@ \unvbox \z@ \ifnum \FN@defaultpenalty ... Remove the call to \underLine, and it compiles just fine. Any idea how to fix or circumvent the issue?
- How to make this matrix fit inside the width of a column, in a document with a two-column page layoutby Ricky W. on September 20, 2026 at 7:02 pm
I am trying to put a 12 times 12 matrix into one column of the IEEE conference format. But it turns out like this. How do I make this looks better and fit the 12*12 matrix into the left column? Here is the package I am using \documentclass[conference]{IEEEtran} \IEEEoverridecommandlockouts % The preceding line is only needed to identify funding in the first footnote. If that is unneeded, please comment it out. \usepackage{cite} \usepackage{amsmath,amssymb,amsfonts} \usepackage{algorithmic} \usepackage{graphicx} \usepackage{textcomp} \usepackage{xcolor} \usepackage{algorithm} \usepackage{mathtools} \usepackage{matlab-prettifier} \usepackage{diagbox} \usepackage{amsmath} \usepackage{booktabs} \usepackage{amsthm} \setcounter{MaxMatrixCols}{12} \newcommand{\INPUT}{\item[\algorithmicinput]} \newcommand{\algorithmicinput}{\textbf{Input:}} \newcommand{\OUTPUT}{\item[\algorithmicoutput]} \newcommand{\algorithmicoutput}{\textbf{Output:}} \newcommand{\INITIALIZE}{\item[\algorithmicinitialize]} \newcommand{\algorithmicinitialize}{\textbf{Initialize:}} \newcommand{\wvar}[1]{\mathit{#1}} Here is my code: \begin{equation} A = \begin{bmatrix} 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & g\sin{\psi} & g\cos{\psi} & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & -g\cos{\psi} & g\sin{\psi} & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & r & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & -r & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & q & 0 & 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & \frac{J_y-Jz}{J_x}r & \frac{J_y-J_z}{J_x}q \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & \frac{J_z-J_x}{J_y}r & 0 & \frac{J_z-J_x}{J_y}p \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & \frac{J_x-J_y}{J_z}q & \frac{J_x-J_y}{J_z}p & 0 \\ \end{bmatrix}\label{eq.3} \end{equation}
- "restore" booktabs rules above/below spacing in tabularray with `rowsep=0pt`by Stefan Pinnow on September 20, 2026 at 6:31 pm
The title says it all. What needs to be done, thus that \toprule, \midrule, and bottomrule (and maybe other rules from booktabs) in a tblr environment have the additional spacing again, as they have in a regular tabular environment? Here a direct comparison in the MWE \documentclass[border=5pt,varwidth]{standalone} \usepackage{booktabs} \usepackage{tabularray} \UseTblrLibrary{booktabs} \SetTblrInner{rowsep=0pt} \begin{document} \begin{tabular}{@{}llr@{}} \toprule \multicolumn{2}{c}{Item} \\ \cmidrule(r){1-2} Animal & Description & Price (\$) \\ \midrule Gnat & per gram & 13.65 \\ & each & 0.01 \\ Gnu & stuffed & 92.50 \\ Emu & stuffed & 33.33 \\ Armadillo & frozen & 8.99 \\ \bottomrule \end{tabular} \vspace{1ex} \begin{tblr}{@{}llr@{}} \toprule \SetCell[c=2]{c} Item \\ \cmidrule[r]{1-2} Animal & Description & Price (\$) \\ \midrule Gnat & per gram & 13.65 \\ & each & 0.01 \\ Gnu & stuffed & 92.50 \\ Emu & stuffed & 33.33 \\ Armadillo & frozen & 8.99 \\ \bottomrule \end{tblr} \end{document} which results in
- Endnotes looking just like footnotes?by muk.li on September 20, 2026 at 4:03 pm
As my second question with regard to reledmac's endnotes (the first one), as I am trying to shift the critical apparatus to a separate part of the book, I am trying to understand why \Xfootnote{}s look so different from \Xendnote{}s, and if there's a reasonable way to make them look practically the same way. See the following example: \documentclass{article} \usepackage{reledmac} \numberstanzatrue \Xstanza \setstanzaindents{5,0,1,0,1} \Xstanzaseparator[B]{} \Xstanzaseparator[C]{.} \begin{document} \beginnumbering \linenumberstyle{alph} \stanza AAAAAAAAAAAAAAA & BBBBBBBBBBBBBBB & CCCCCCC\edtext{CCCCC}{\Bfootnote{test 1}\Bendnote{test 1}}& DDDDDDDDDDDD \& \bigskip \linenumberstyle{arabic} \setlinenum{0}% \pstart This is the commentary on Verse 1. \edtext{something in the commentary}{\Cendnote{test 2}\Cfootnote{test 2.}}. \pend \endnumbering \section{Endnotes on Verse 1} \doendnotesbysection{B} \doendnotesbysection{C} \end{document} The footnotes look like this: The endnotes like that: By default, they do look quite different, which to some extent is probably because they are not displayed together with their text, but perhaps they were originally intended for a very different purpose than I would want to use them for here? Actually, I'd like them to appear identical. I do not need the page number as the internal structure of the text is clear if you print the stanza number, and use headings. I suppose the printing of page numbers can be disabled in some way, perhaps using \Xendpagenumberonlyfirst and manually setting the required counter to two or something like that. The lemma marker can be inserted by the \Xendlemmaseparator. What I am more worried about though is that \linenumberstyle{alph} and \Xstanza are not applied to the numbering in the endnotes. Well, I suppose there will be ways of getting these to work, too. Just I am wondering if I am somehow on the wrong track if I need to make so many changes?
- roman numerals as enumeration in italics font styleby Rup_LA on September 20, 2026 at 2:59 pm
I'm writing a lemma with italics font style where I need enumeration in lowercase Roman numerals. I tried different ways and the best I could do is to use the package enumerate like this: \usepackage{enumerate} \begin{document} \begin{lemma} For any graph G, \begin{enumerate}[(i)] \item L(G) is symmetric. \item L(G) is positive semidefinite. \item etc. \end{enumerate} \end{lemma} \end{document} But the problem I'm facing is the tilts of parentheses are more than that I like. Actually I want like this: Any help would be appreciated.
- TikZ 3D: different planes within one pathby Wrzlprmft on September 20, 2026 at 10:29 am
Suppose, I want to draw a 3D cylinder using TikZ’ 3D library. If I just want to draw the outline, it’s straightforward, as I can draw each line in a separate command: \documentclass[tikz]{standalone} \usetikzlibrary{3d} \begin{document} \begin{tikzpicture}[z={(0.5cm,0.2cm)}] \newcommand{\atan}{26.565} % the visually rightmost angle \newcommand{\radius}{2} \newcommand{\height}{3} % top \draw[canvas is xz plane at y=0] (\atan:\radius) arc(\atan:\atan-180:\radius) coordinate(top left); % left \draw (top left) -- ++(0,-\height); % bottom \draw[canvas is xz plane at y=-\height] (\atan-180:\radius) arc(\atan-180:\atan:\radius) coordinate(bottom right); % right \draw (bottom right) -- ++(0,\height); % back of top face \draw[canvas is xz plane at y=0,red] (\atan:\radius) arc(\atan:\atan+180:\radius); \end{tikzpicture} This gives me: Now, if I want to fill the faces of the cylinder, I cannot simply adapt the above as the planes are changing all the time. Changing coordinate systems mid-command as described here doesn’t work (or I am using it wrong). How can I do this? I prefer answers that are generalisable and where it is clear what the current coordinate system is at any point (like the above solution). For reference, the desired output is something like this:
- allow caption over two pages in float environmentby Matteo on September 20, 2026 at 6:17 am
I have the current situation where I handled a panel/composite figure with subfigure; I have adjusted sizes so that both images can be visible and occupy the entire page space. The problem is that when I add the caption it covers the page number... I wish for it to break at some point and continue to the next page. I have attempted to use \ContinuedFloat but this has the undesired effect of positionning each subfigure in an independent page. Is there a way to keep images in one page, possibly part of the caption, and having the rest naturally finishing on the following page? Thanks. MWE \documentclass{article} \usepackage{graphicx} \usepackage[margin=1in]{geometry} \usepackage[T1]{fontenc} \usepackage{textcomp} \usepackage{lmodern} \usepackage{float} \usepackage{graphicx} \usepackage{csquotes} \usepackage{subcaption} \usepackage[labelfont=bf,font=small]{caption} \usepackage[noabbrev]{cleveref} \Crefname{figure}{Fig.}{Figs.} \makeatletter \renewcommand{\fnum@figure}{Fig. \thefigure} \makeatother \renewcommand{\_}{{\fontfamily{ptm}\selectfont\textunderscore}} \begin{document} \begin{figure}[htbp] \centering \begin{subfigure}{\textwidth} \centering \includegraphics[width=6.15in]{example-image-a} \caption{sub1} \label{figure:1a} \end{subfigure} \medskip \begin{subfigure}{\textwidth} \centering \includegraphics[width=6.15in]{example-image-b} \caption{sub2} \label{figure:1b} \end{subfigure} \caption{\textbf{(a)} top part showcases sequencing data in input for assembling the \textsc{rpe}\oldstylenums{1} genome; both \enquote{isogenomic mapping} and genome graph methodologies, tested for ascertaining the most suitable to accurately detect variants genome-wide, are indicated as schematics on the right — heterozygous sites private to each haplotype are in darker shades of red. The bottom part shows different \textsc{rpe}\oldstylenums{1} batches sequenced with long-read \textsc{h}i\textsc{f}i and aligned to the two data structures; \textit{c0\_prt} are the reads used for assembly and afterward for benchmark (besides short-read Illumina\textsuperscript{\textregistered}). In \textbf{(b)} a grouped bar plot for the three metrics recall, precision, and \textsc{f}\oldstylenums{1} comparing graph and linear approaches with different sequencing technologies.} \label{figure:fig_1} \end{figure} \end{document} Also, a visual output of my real case without and with caption
- biber doesn't compileby Epimanes on September 19, 2026 at 8:15 pm
Today I tried to use biber (within TeXShop) and I got this error in the console: usage: lipo <input_file> <command> [<options> ...] command is one of: -create[_album] -info -detailed_info -thin <arch> -extract <arch> [-extract <arch> ...] -remove <arch> [-remove <arch> ...] -replace <arch> <file_name> [-replace <arch> <file_name> ...] -verify_arch <arch> ... -archs options are one or more of: -arch <arch> <input_file> -o <output_file> -segalign <arch> <alignment> /Library/TeX/texbin/biber: extracting arm64 binary with lipo failed (wstatus=256) All of the error makes no sense to me. But when I google that last line, it says that it "does not contain the arm64 architecture slice." I'm wondering if this is an error having to do with the upcoming updates in the OS (???). If anyone has a solution or even a description of what is going on, I'd appreciate the help.
- Macro for drawing intervalsby Fabrice on September 19, 2026 at 6:04 pm
How to modify this macro to ensure the same spacing between the first mark and the opening delimiter, and between the last mark and the closing delimiter ? \documentclass[border=5mm]{standalone} \usepackage{luatex85} \usepackage{luamplib} \begin{document} \mplibtextextlabel{enable} \begin{mplibcode} beginfig(1); vardef interval(expr a, b, c, d) = interim ahangle := 30; numeric u; u = 0.5cm; path l; l = (0,0) -- (8*u,0); drawarrow l; for x = (a + 0.2) step 0.2 until (b - 0.2): draw (3 down -- 3 up rotated -45) shifted (x * u, 0); endfor label(c, (2*u,0)); label(d, (6*u,0)); label.bot("$a$", (a*u,-5)); label.bot("$b$", (b*u,-5)); label.bot("$-\infty$", (0,-5)); label.bot("$+\infty$", (8*u,-5)); enddef; interval(2, 6, "[", "]"); endfig; \end{mplibcode} \end{document}
- Importing text file while following newlinesby ticster on September 19, 2026 at 4:52 pm
I'm putting together a collection of poems I've written. The poems are already written separately in txt files, and I would like to import them directly into my LaTeX file. The reason I don't want to simply copy and paste them is that I want the ability to access and modify them directly, independently of the broader collection I'm writing, and for any modifications to then be reflected directly in the final LaTeX file. The issue I'm having is that if I just \input the files, the line breaks aren't respected. Is there any way to import the file in such a way that LaTeX understands that every new line in the txt file should represent a line break in the final PDF ?
- How to delete entire section using track changes package?by IgotiT on September 19, 2026 at 8:17 am
I am submitting a minor revision of my manuscript. One of the reviewers has asked me to remove a section from the manuscript because it is somewhat misaligned with the main focus of the work. I am using the changes package, and the commands \added{...}, \replaced{...}{...}, and \deleted{...} work perfectly well when applied to a single word or even an entire paragraph. However, when I use \deleted{...} to delete an entire section (including the section heading and all of its contents), it does not work as expected. I am aware that there are other solutions, such as latexdiff, but I am not very familiar with it and would prefer to continue using the changes package. Is there a way to use \deleted{...} to mark an entire section as deleted while using only the changes package? If not, is there a recommended way to achieve this with changes without manually applying \deleted{...} to every paragraph?
- Replace Source Sans Pro with Source Sans 3by Paul Gaborit on September 19, 2026 at 6:05 am
A document compiled with lualatex used the "Source Sans Pro" font: \setsansfont{Source Sans Pro} However, the new version of the font distributed via TeXLive 2026 is "Source Sans 3". The document must therefore use: \setsansfont{Source Sans 3} However, this document is shared among several users. Some use TeXLive 2026, while others use TeXLive 2025 or even 2024. How to use the "Source Sans 3" font when available, and fall back to the "Source Sans Pro" font otherwise ?
- Wiley Latex template does not provide subcaption labels (a, b, etc) to subfigures using subfig packageby user3236841 on September 19, 2026 at 2:29 am
Following the Optimal Design guidelines at https://authors.wiley.com/author-resources/Journal-Authors/Prepare/latex-template.html, I downloaded the template from https://authors.wiley.com/asset/WileyDesign.zip and was successful in running it, however, the template does not appear to label the subfigures at all. Here is a minimal example: \documentclass[APA,twocolumn]{USG} %twocolumn \usepackage{anyfontsize} % \usepackage{colortbl} % For coloring table lines \usepackage{xcolor} % For color definitions \usepackage{subfig} \usepackage{graphicx} \usepackage{steinmetz} \graphicspath{{./images/}} \articletype{ORIGINAL ARTICLE}% \received{20 January 2023} \revised{21 January 2023} \accepted{22 January 2023} \journal{} \volume{0} \copyyear{2024} \startpage{1} \articledoi{10.1002/0000} \begin{document} \title{Guidelines for Establishing a Cytometry Laboratory} %\subtitle{Subtitle} \transtitle{Guidelines for Establishing a Cytometry Laboratory} \subtranstitle{trans-subtitle} \author[1]{Anna C. Belkina}[https://orcid.org/0000-0001-7037-2721][\facebook{https://www.facebook.com} \linkedin{https://www.linkedin.com} \twitter{https://www.twitter.com}] \author[1]{Caroline E. Roe} \authormark{TAYLOR \textsc{et al.}} \titlemark{PLEASE INSERT YOUR ARTICLE TITLE HERE} \address[1]{\orgdiv{Key Laboratory for Ecological Metallurgy of Multimetallic Mineral of Ministry of Education, }\orgname{Institution Name, }% \orgaddress{\state{State Name, }\country{Country Name}}} \corres{Mark Taylor (\email{zhangh@mail.neu.edu.cn}) ~|~ Pengyue D. Gue (\email{Second.Author@charlte.de})} \editor{\textbf{Academic Editor:} Alex ~|~ \textbf{Guest Editor:} Andrew A. Rooney} \presentaddress{This is sample for present address text this is sample for present address text.} \fundingInfo{National Key Research and Development Program of China, Grant/Award Number: 2021YFB1715500.} \keywords{DEM | flexible cylindrical particle | internal friction angle | particle deformation | shear stress} \transkeywords{DEM | flexible cylindrical particle | internal friction angle | particle deformation | shear stress} \abstract[ABSTRACT]{This is sample abstract text just for the template display purpose.} \transabstract[transABSTRACT]{This is sample abstract text just for the template display purpose.} \copyright{This is an open access article under the terms of the \href{Creative Commons Attribution-NonCommercial}{Creative Commons Attribution-NonCommercial} License, which permits use, distribution and reproduction in any medium, provided the original~work~is~properly cited and is not used for commercial purposes. \\[5pt] © 2024 The Author(s) \textit{AIChE Journal} published by Wiley Periodicals LLC on behalf of American Institute of Chemical Engineers.} \maketitle \begin{figure} \centering \mbox{ \subfloat[First subfigure]{\includegraphics[width=.48\linewidth]{Facebook_Logo-eps-converted-to.pdf}} \subfloat[Second subfigure]{\includegraphics[width=.48\linewidth]{ORCID_Logo-eps-converted-to.pdf}}} \caption{Without space} \end{figure} \end{document} I get the following: As we can see, the subcaptions do not have a (a), (b), etc. How can I get these with the subfig package? I am using TexLive 2025 on Fedora Linux 44.
- Hiding digits in a long division with xlop (skeletal division)by Martin on September 18, 2026 at 5:25 pm
I use the package xlop to make skeletel divisions, i.e., long divisions where some of the digits are missing and have to be determined. When I hide certain digits with the option given by \opdiv, this does not work properly if in an intermediate step we have the result 0. Consider the following MWE: \documentclass{article} \usepackage{xlop} \newcommand\hole[1]{$\bullet$} \begin{document} \opdiv[displayintermediary=all, voperation=top, intermediarystyle.1.1=\hole]{21}{20} \hfil \opdiv[displayintermediary=all, voperation=top, intermediarystyle.2.1=\hole]{21}{20} \end{document} The first long division should hide the 0 in 20 but it also hides the next 0. The secong long division should hide the single 0 that we subtract in the second step, but nothing is hidden. How can I hide the first 0 without hiding also the second 0? And how can I hide the single 0?
- Biber german punctuation with style=ieeeby muggi on September 18, 2026 at 10:58 am
In my bibliography I'd like to have the localized punctuation, which is german here. I narrowed down a MWE, but couldn't find a solution yet. I think it's got something to do with style=ieee, but I don't know how to fix this. The mistake only seems to exist in @articles and @techreports. How to tell BibLaTeX to use the licalized punctiatuon? MWE main.tex \documentclass[a4paper,12pt,listof=totoc,bibliography=totoc]{scrreprt} \usepackage[T1]{fontenc} \usepackage[latin1,utf8]{inputenc} \usepackage[ngerman]{babel} \usepackage{verbatim} \usepackage{lipsum} \usepackage{scrhack} \usepackage[sorting=none,style=ieee,language=german,hyperref=true,backend=biber]{biblatex} \addbibresource{q.bib} \usepackage[ngerman]{hyperref} \usepackage[all]{hypcap} \begin{document} \tableofcontents \lipsum[2]\cite{techreport}\newline\newline \lipsum[2]\cite{article} \printbibliography[heading=bibnumbered] \end{document} q.bib @techreport{techreport, author = {David P. Wood and Kyo Chul Kang}, title = {A Classification and Bibliography of Software Prototyping}, month = {10}, year = {1992}, number = {CMU/SEI-92-TR-013}, publisher = {Carnegie Mellon University, Software Engineering Institute's Digital Library}, doi = {10.1184/R1/6571607.v1} } @article{article, author = {Mike Mannion and Barry Keepence}, title = {SMART requirements}, month = {4}, year = {1995}, journal = {SIGSOFT Softw. Eng. Notes}, publisher = {Association for Computing Machinery}, address = {New York, NY, USA}, volume = {20}, number = {2}, pages = {42--47}, numpages = {6}, issn = {0163-5948}, doi = {10.1145/224155.224157} }
- Several registers of endnotes with \doendnotesbysectionby muk.li on September 18, 2026 at 8:04 am
For the edition of a poem together with its commentary, I am considering shifting my critical apparatus to a separate part of the book. This task, I fear, is everything but trivial. I will need to ask a number of questions related to this. Here is the first one. How does one control several registers of endnotes when using \doendnotesbysection? What I am essentially trying to achieve is something like this: verse 1 commentary on verse 1 verse 2 commentary on verse 2 ... [Further down in the book] notes on verse 1 notes on commentary on verse 1 notes on verse 2 notes on commentary on verse 2 ... Where critical notes to the verses go to register B and notes to the commentary to register C. Later, at least one more register is going to be added, for citations/parallels. Even later, possibly more once I edit more than one commentary. But let's start with two registers. Here is an example: \documentclass[article]{memoir} \usepackage{reledmac} \Xstanza \numberstanzatrue \setstanzaindents{5,0,1,0,1} \begin{document} \chapter{Edition} \section{Verse 1} \beginnumbering \stanza AAAAAAAAAAAAAAA & BBBBBBBBBBBBBBB & CCCCCCC\edtext{CCCCC}{\Bendnote{test 1}}& DDDDDDD\edtext{DDDDD}{\Bendnote{test 2}} \& \endnumbering \bigskip \beginnumbering \pstart This is the commentary on Verse 1. \edtext{something in the commentary}{\Cendnote{test 3}}. \pend \endnumbering \section{Verse 2} % Later, I'd rather go with the stanza numbers without inserting sections. \beginnumbering \stanza EEEEEEEEEEEEEEE& FFFFFFFFFFFFFFF & GGGGGGGGGGGGGGG & HHHHHHHH\edtext{HHHHH}{\Bendnote{test 4}} \& \endnumbering \bigskip \beginnumbering \pstart This is the commentary on Verse 2. \edtext{something more.}{\Cendnote{test 5}}. \pend [3]: https://i.sstatic.net/V07RqpTt.png \endnumbering \chapter{Critical Apparatus} \section{Verse 1} \doendnotesbysection{B} \doendnotesbysection{C} \section{Verse 2} \doendnotesbysection{B} \doendnotesbysection{C} \section{does not exist} \doendnotesbysection{B} \doendnotesbysection{C} \section{does not exist either} \doendnotesbysection{B} \doendnotesbysection{C} \end{document} The last two sections in the apparatus I had to add in order to understand what happens, which was a surprise to me: In the result, we see that for each section in the apparatus, only one set of notes is printed, and I do not understand the logic by which it is happening. It looks as if first all notes of the B series are printed, followed by all notes of the C series. Now if I try to catch that, and adapt my example as follows: \section{Verse 1} \doendnotesbysection{B} \section{Commentary on Verse 1} \doendnotesbysection{C} \section{Verse 2} \doendnotesbysection{B} \section{Commentary on Verse 2} \doendnotesbysection{C} I get the following output: Why is there no output at all in the sections “Commentary on Verse 1” and “Verse 2”? How do I control the output of the different series of registers?
- latex extra alignment tab has been changed to cr in matrix [duplicate]by Ricky W. on September 18, 2026 at 12:55 am
I am trying to insert the matrix that is 12*12, but when I use the code: \begin{bmatrix} ... \end{bmatrix} and type this purely by hand, it says ! Extra alignment tab has been changed to \cr. Here is the packages I am using: \documentclass[conference]{IEEEtran} \IEEEoverridecommandlockouts % The preceding line is only needed to identify funding in the first footnote. If that is unneeded, please comment it out. \usepackage{cite} \usepackage{amsmath,amssymb,amsfonts} \usepackage{algorithmic} \usepackage{graphicx} \usepackage{textcomp} \usepackage{xcolor} \usepackage{algorithm} \usepackage{mathtools} \usepackage{matlab-prettifier} \usepackage{diagbox} \usepackage{amsmath} \usepackage{booktabs} \usepackage{amsthm} \newcommand{\INPUT}{\item[\algorithmicinput]} %定义Input \newcommand{\algorithmicinput}{\textbf{Input:}} \newcommand{\OUTPUT}{\item[\algorithmicoutput]} %定义Onput \newcommand{\algorithmicoutput}{\textbf{Output:}} \newcommand{\INITIALIZE}{\item[\algorithmicinitialize]}%定义Initialize \newcommand{\algorithmicinitialize}{\textbf{Initialize:}} \newcommand{\wvar}[1]{\mathit{#1}} %斜体的math样式,便于伪代码里面的变量 \newtheorem{theorem}{Theorem} \newtheorem{definition}{Definition} \def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}} \begin{document} Here is the matrix: \begin{bmatrix} 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 7 & 5 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 6 & 3 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & r & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & -r & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & q & 0 & 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 9 & 4 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 5 & 0 & 6 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 7 & 8 & 0 \\ \end{bmatrix}
- Counter not updated in foreach loop [duplicate]by Thomas on September 17, 2026 at 3:57 pm
I trying to make some algorithmic in LaTeX (how crazy am I !), but I'm stuck on something. I make a for loop to count some elements of an array (actually 2D array, but the issue is not from that). Do do that, I use a counter that I increment on each steps of the foreach loop: \documentclass[11pt]{article} \usepackage{tikz} \begin{document} \newcount\mycounter \mycounter=0 \foreach\i in {0,1,...,5}{% \advance\mycounter by1 It. \i : Counter is \the\mycounter } In the end : \the\mycounter \end{document} But in the end, the counter seems to be updated only locally and its value is 0 : It. 0: Counter is 1 It. 1: Counter is 1 It. 2: Counter is 1 It. 3: Counter is 1 It. 4: Counter is 1 It. 5: Counter is 1 In the end : 0 I did not managed to find an explanation to this, and how to fix this :/ I also tried to look another way to make for loop in (La)TeX, but except this discussion that I did not manage to adapt to my case, I did not found it...
- SyncTeX preview jumps one page backward after compilation with macOS Golden Gateby david Balavoine on September 17, 2026 at 12:52 pm
I’m writing to report a reproducible issue with TeXShop’s built-in PDF preview after upgrading to macOS Golden Gate. Description: After each compilation, the PDF preview window systematically shows the page one page before the expected SyncTeX position. This happens even with a minimal document. Minimal example: \documentclass{article} \usepackage{lipsum} \begin{document} \section{First section} \lipsum[1-10] \section{Second section} \lipsum[11-20] \section{Third section} \lipsum[21-30] \end{document} Steps to reproduce: Open this file in TeXShop. Ensure SyncTeX is enabled (Preferences → Typeset → Sync Method: SyncTeX). Place the cursor in the “Third section”. Compile with Cmd-T. The PDF preview shows the previous page instead of the page corresponding to the current source line. Environment: macOS: Golden Gate TeXShop: 5.57 TeX Live: 2026 tlmgr revision 79639 (2026-07-10 18:45:34 +0200) installation: /usr/local/texlive/2026 Engine: pdflatex (SyncTeX enabled via -synctex=1) The issue started immediately after upgrading to macOS Golden Gate and did not occur on the previous macOS version. Could this be a regression in TeXShop’s PDF preview / SyncTeX handling under macOS Golden Gate? I’m happy to provide additional information (logs, screen recording, etc.) if needed.
- Scalebox and tikzby Carl on September 17, 2026 at 10:46 am
I want to reduce the dimension of the formula in the image, keeping the arrow pointing to the green square containing ’2’. It works fine without \scalebox. However, using this command a displacement of the arrow's endpoint emerges... how can I solve this? With thanks. Below, find my code (compiled via LuaLatex): \documentclass{beamer} \usepackage{tikz} \usetikzlibrary{tikzmark,calc,positioning,fit,arrows,shapes,backgrounds,shapes.geometric,arrows.meta,patterns.meta,decorations.pathreplacing} \begin{document} \begin{frame} \begin{equation*} \text{\scalebox{0.95}{$f(t) = \left\{ \begin{array}{l} x \; \; \text{if $t < 0$ or $t = 1.05\tikzmarknode[fill=green,inner sep = 2pt,outer sep=1pt]{a}{2}3$} \\[10pt] y, \; \; \text{otherwise} \end{array} \right.$}} \end{equation*} \begin{tikzpicture}[remember picture,overlay] \node[inner sep=2pt] (b) [above right=3.0cm and 4.0cm of current page.center]{$z$}; \path[<-] (a) edge [out=90,in=180] (b); \end{tikzpicture} \end{frame} \end{document}
- In what situations should I use \noexpand after \romannumeral?by Elayson Abreu on September 16, 2026 at 6:20 pm
In what situations should I use \noexpand after \romannumeral? For example, the trimspaces package contains the following code: \catcode`\Q=3 \newcommand\trim@spaces[1]{% \romannumeral-`\q\trim@trim@\noexpand#1Q Q% } \long\def\trim@trim@#1 Q{\trim@trim@@#1Q} \long\def\trim@trim@@#1Q#2{#1} \catcode`\Q=11 Why is the \noexpand in \trim@spaces necessary? Edit: I managed to create an example where \noexpand does not seem to be important. % !TeX TS-program = lualatex \documentclass{article} \begin{document} \def\y{1} \expandafter\def\expandafter\x\expandafter{\romannumeral-`\. \y} \show\x % >\y . \end{document} Note how the \y macro survived expansion.
- The triple link no longer appearsby Nicolas on September 16, 2026 at 3:26 pm
I want to show a sequence of reaction, keeping the environment reaction: for the first alcyne, the triple bond is clearly visible; on the other hand, for the next two, it no longer appears \documentclass[a4paper,12pt]{article} \usepackage[T1]{fontenc} \usepackage{chemfig} \usepackage{chemmacros} \begin{document} \begin{reaction} \chemfig{R_1-C~C-H}->[ base~forte] "\chemfig{R_1-C~C\mch{}}" %+\ch{BH} ->[ "\chemfig{R_2-X}" ] "\chemfig{R_1-C~C-R_2}" \label{rxn:bilansnalcyne}% \end{reaction} \end{document}
- Text in Devanāgarī, line numbering in Arabicby muk.li on September 16, 2026 at 1:24 pm
In the following example, to be compiled with LuaLaTeX, I have a Sanskrit text which, while in the source file it is written in IAST transliteration, in the PDF output it is rendered in Devanāgarī, which is done by babel's transform mechanism. \documentclass{memoir} \usepackage{fontspec} \defaultfontfeatures{Ligatures=TeX} \setmainfont{Noto Serif} \usepackage[english]{babel} \babelprovide[% typography/prehyphenchar = `-, transforms=transliteration.iast, ]{sanskrit} \babelfont{rm}{Noto Serif} \babelfont[*devanagari]{rm}[Renderer=Harfbuzz]{Noto Serif Devanagari} \usepackage{reledmac} \linenumberstyle{arabic} \setcounter{firstlinenum}{1} \setcounter{linenumincrement}{1} \begin{document} \begin{otherlanguage}{sanskrit} \beginnumbering \pstart athety ayam adhikārārthaḥ. yogānuśāsanaṃ śāstram adhikṛtaṃ veditavyam. yogaḥ samādhiḥ. sa ca sārvabhaumaś cittasya dharmaḥ. kṣiptaṃ mūḍhaṃ vikṣiptam ekāgraṃ niruddham iti cittabhūmayaḥ. tatra vikṣipte cetasi vikṣepopasarjanībhūtaḥ samādhir na yogapakṣe vartate. yas tv ekāgre cetasi sadbhūtam arthaṃ pradyotayati kṣiṇoti ca kleśān karmabandhanāni ślathayati nirodham abhimukhaṃ karoti sa saṃprajñāto yoga ity ākhyāyate. sa ca vitarkānugato vicārānugata ānandānugato 'smitānugata ity upariṣṭān nivedayiṣyāmaḥ. sarvavṛttinirodhe tv asaṃprajñātaḥ samādhiḥ. 1.1 \pend \endnumbering \end{otherlanguage} \end{document} I would prefer the line numbering to be exempt from that transformation, so that the numbers in the left margin appear in the usual Arabic form. One possibility to do that could be to open the Sanskrit environment only after \pstart and close it before \pend, but that would then lead to the lemmas not being displayed properly, and possibly other complications. Is there a way to wrap the line numbers in an English language environment?
- Adding an arrowhead at the bottom of \rceil and \lceilby J.-E. Pin on September 15, 2026 at 10:54 am
As indicated in the title, I am trying to create new delimiters (variable-sized if possible!) derived from the pair (\rceil, \lceil) by adding an arrowhead at the bottom of these symbols. After looking at these questions How do I superimpose two math symbols? Exact positioning of superimposed symbols How do you superimpose two symbols over each other? I tried to superimpose \downarrow and \rceil (respectively \lceil), using the following code \documentclass[]{article} \newcommand{\da}{\downarrow} \makeatletter \newcommand{\dar}{\mathrel{\mathpalette\eqdr@t\relax}} \newcommand{\eqdr@t}[2]{% \ooalign{% $\m@th#1\rceil$\cr \hidewidth$\m@th#1\da$\hidewidth\cr }% } \newcommand{\dal}{\mathrel{\mathpalette\eqdl@t\relax}} \newcommand{\eqdl@t}[2]{% \ooalign{% $\m@th#1\lceil$\cr \hidewidth$\m@th#1\da$\hidewidth\cr }% } \makeatother \begin{document} $u\dal I \dar$ \qquad $u\dal I \cup J \dar$ \end{document} but, as you can see on the picture, the downarrow is slightly too high and does not superimpose perfectly. I'm not particularly keen on using \downarrow if there are better ways to obtain the arrowheads.
- TIkZ: draw only a group/scope from a larger TikZ picture?by Thibault de Villèle on September 14, 2026 at 9:30 am
I have a large TikZ picture showing the different steps from a pipeline. I have grouped different steps inside their own scope, to make it easier to differentiate paths and file names (which have similar names). In the main text, I describe the different steps of the pipeline. My advisor suggested putting the picture of the steps I'm describing in a small picture next to the paragraphs (as the description goes on for a while). Here is a MWE, which should convey what I want to to in my document: \documentclass{scrarticle} \KOMAoption{parskip}{half-} \usepackage{tikz} \usetikzlibrary{arrows.meta, fit, math, positioning} \begin{document} \begin{filecontents}[overwrite]{pipeline.tikz} \begin{tikzpicture}[x = 1cm, y = 1cm, inner sep=0pt, outer sep=0pt]% \begin{scope}[local bounding box=setup]% \draw[red,fill=red!90!white] (-2, 0) circle [radius=1cm];% \end{scope}% \begin{scope}[local bounding box=result]% \draw[blue,fill=blue!90!white] (1.5, -1) rectangle (3.5, 1);% \end{scope}% \draw[->,thick] ([xshift=5mm]setup.east) -- ([xshift=-5mm]result.west);% \end{tikzpicture}% \end{filecontents} \begin{figure}% \centering% \input{pipeline.tikz}% \caption{The whole pipeline.}% \label{fig/pipeline}% \end{figure}% This text is supposed to explain the pipeline: \begin{itemize} \begin{minipage}{.7\textwidth}% \item% This is the first step of the pipeline. A long text is supposed to explain what exactly is going on, which can be quite long. Sometimes, the description goes on for more than three lines! \end{minipage}\hfill% \begin{minipage}{.28\textwidth}% \centering% \includegraphics[width=.8\textwidth,height=2\baselineskip]{example-image-a}\\% Should be the scope \texttt{setup} from figure 1. \end{minipage}\\% \begin{minipage}{.7\textwidth}% \item% This is the second step of the pipeline. An even longer text is supposed to explain what exactly is going on, which can be quite long. And even then, three lines are the minimum; sometimes I get crazy and get to four lines! \end{minipage}\hfill% \begin{minipage}{.28\textwidth}% \centering% \includegraphics[width=.8\textwidth,height=2\baselineskip]{example-image-b}\\% Should be the scope \texttt{result} from figure 1. \end{minipage} \end{itemize} \end{document} Which gives the following (LuaLaTeX from TeXLive 2026): Is there a way to tell TikZ to only draw a certain scope from a larger TikZ picture ? Or should I maybe do an export of the steps in a PDF file and only include them when necessary ? I'm looking for a TeX/TikZ-only solution to avoid having picture contents "out of sync", since I will have to tweak the larger pipeline picture a bit. Note: As far as I can tell, the spy library (related question here) cannot help me here, as my text should live outside of the TikZ picture.
- Issue in getting ribbon effects using Latex on Arrow in the infographicsby Kashi on September 12, 2026 at 8:31 am
I am trying to create the this Infographic Image using Latextikz library: However, I am unable to get the ribbon effects for the arrow hiding behind the information card. Here is my example code: \documentclass[tikz]{standalone} \usepackage[T1]{fontenc} \usepackage{helvet} \renewcommand{\familydefault}{\sfdefault} \usetikzlibrary{shadows,calc} % ---- Colour palette (sampled from the source infographic) ---- \definecolor{ifsiBlue}{HTML}{5B9BD5} \definecolor{ifsiGreen}{HTML}{7F9B72} \definecolor{ifsiTeal}{HTML}{1D9AA6} \definecolor{ifsiOrange}{HTML}{E8912D} \definecolor{ifsiNavy}{HTML}{1B3A8C} \definecolor{ifsiDark}{HTML}{2B2B2B} \definecolor{ifsiRule}{HTML}{8A8A8A} % ---- Ribbon-arrow shape, drawn pointing in the +x direction, then rotated --- \newcommand{\ribbonShape}{% (0,-0.6) rectangle (3.0,0.6); (3.0,-1.2) -- (4.6,0) -- (3.0,1.2) -- cycle; } \newcommand{\ribbonArrow}[4]{% \begin{scope}[shift={(#1,#2)}, rotate=#3] % ---- soft contained drop shadow (concentric, same direction, growing blur) ---- \foreach \r/\op in {0.30/0.05, 0.22/0.07, 0.15/0.10, 0.09/0.14} { \begin{scope}[shift={(\r,-\r)}] \fill[black, opacity=\op, rounded corners=1pt] (0,-0.62) rectangle (3.0,0.62); \fill[black, opacity=\op] (3.0,-1.22) -- (4.62,0) -- (3.0,1.22) -- cycle; \fill[black, opacity=\op] (0,-0.62) -- (-0.58,-0.30) -- (-0.58,0.30) -- (0,0.62) -- cycle; \end{scope} } % ---- fold flap (darker underside), drawn behind the body ---- \fill[#4!52!black] (0,-0.6) -- (-0.58,-0.30) -- (-0.58,0.30) -- (0,0.6) -- cycle; \draw[#4!30!white, line width=0.7pt] (-0.58,-0.30) -- (0,-0.6); % ---- main ribbon body ---- \fill[#4] (0,-0.6) rectangle (3.0,0.6); % ---- arrow head ---- \fill[#4] (3.0,-1.2) -- (4.6,0) -- (3.0,1.2) -- cycle; % ---- thin highlight along the top edge for a touch of depth ---- \draw[#4!35!white, line width=0.6pt] (0,0.6) -- (3.0,0.6) -- (4.6,0); \end{scope} } \begin{document} \begin{tikzpicture}[ font=\sffamily, >=stealth ] % ============ Canvas: 34 wide x 20 tall ============ \useasboundingbox (0,0) rectangle (34,20); % ============ Four ribbon arrows: confined to the centre band, converging on the middle ============ \ribbonArrow{12.2}{15.9}{-45}{ifsiBlue} % top-left -> points down-right toward centre \ribbonArrow{21.8}{15.9}{225}{ifsiGreen} % top-right -> points down-left toward centre \ribbonArrow{12.2}{4.1}{45}{ifsiTeal} % bottom-left -> points up-right toward centre \ribbonArrow{21.8}{4.1}{135}{ifsiOrange} % bottom-right -> points up-left toward centre % ============ TOP-LEFT: Islamic Banking ============ \node[anchor=east, text=ifsiBlue, font=\sffamily\bfseries\fontsize{50}{50}\selectfont] at (5.6,16.15) {9.7\%}; \draw[ifsiRule, line width=0.7pt] (5.95,15.35) -- (5.95,16.95); \node[anchor=north west, text=ifsiDark, align=left, font=\sffamily\fontsize{18}{20}\selectfont] at (6.3,17.15) {Islamic Banking\\[2pt] YoY Growth}; \node[anchor=north west, text=ifsiDark, font=\sffamily\bfseries\fontsize{17}{17}\selectfont] at (6.3,15.45) {69.3\% of IFSI}; % bank icon \begin{scope}[shift={(10.7,16.15)}, ifsiRule, line width=1.1pt] \draw (-0.5,-0.38) -- (0.5,-0.38); \draw (-0.34,-0.38) -- (-0.34,0.09); \draw (-0.12,-0.38) -- (-0.12,0.09); \draw (0.11,-0.38) -- (0.11,0.09); \draw (0.33,-0.38) -- (0.33,0.09); \draw (-0.55,0.09) -- (0.55,0.09) -- (0,0.52) -- (-0.55,0.09) -- cycle; \draw[->] (-0.24,0.38) -- (-0.24,-0.62); \draw[->] (0.02,0.38) -- (0.02,-0.62); \end{scope} % ============ TOP-RIGHT: Sukuk Outstanding ============ \node[anchor=west, text=ifsiGreen, font=\sffamily\bfseries\fontsize{50}{50}\selectfont] at (28.4,16.15) {21.8\%}; \draw[ifsiRule, line width=0.7pt] (28.05,15.35) -- (28.05,16.95); \node[anchor=north east, text=ifsiDark, align=right, font=\sffamily\fontsize{18}{20}\selectfont] at (27.7,17.9) {Suk\=uk\\[2pt] Outstanding\\[2pt] YoY Growth}; \node[anchor=north east, text=ifsiDark, font=\sffamily\bfseries\fontsize{17}{17}\selectfont] at (27.7,15.05) {>USD 1tn milestone}; % growth chart icon \begin{scope}[shift={(23.3,16.15)}, ifsiRule, line width=1.1pt] \draw (-0.55,-0.44) -- (-0.55,0.46) -- (0.55,0.46); \draw (-0.38,-0.44) rectangle (-0.2,-0.05); \draw (-0.09,-0.44) rectangle (0.09,0.11); \draw (0.2,-0.44) rectangle (0.38,0.27); \draw[->] (-0.46,0.0) -- (0.02,0.31) -- (0.38,0.44); \end{scope} % ============ BOTTOM-LEFT: Islamic Funds ============ \node[anchor=east, text=ifsiTeal, font=\sffamily\bfseries\fontsize{50}{50}\selectfont] at (5.6,3.85) {25.6\%}; \draw[ifsiRule, line width=0.7pt] (5.95,3.05) -- (5.95,4.65); \node[anchor=north west, text=ifsiDark, align=left, font=\sffamily\fontsize{18}{20}\selectfont] at (6.3,4.85) {Islamic Funds\\[2pt] YoY Growth}; \node[anchor=north west, text=ifsiDark, font=\sffamily\bfseries\fontsize{17}{17}\selectfont] at (6.3,3.15) {4.1\% of IFSI}; % hand + coin icon \begin{scope}[shift={(10.7,4.15)}, ifsiRule, line width=1.1pt] \draw (-0.55,-0.34) .. controls (-0.32,-0.54) and (0.17,-0.54) .. (0.34,-0.24); \draw (-0.55,-0.34) -- (-0.55,-0.06) -- (-0.05,-0.06); \draw (0.11,0.22) circle (0.22); \draw (0.02,0.22) -- (0.2,0.22); \end{scope} % ============ BOTTOM-RIGHT: Islamic Insurance ============ \node[anchor=west, text=ifsiOrange, font=\sffamily\bfseries\fontsize{50}{50}\selectfont] at (28.4,3.85) {13.9\%}; \draw[ifsiRule, line width=0.7pt] (28.05,3.05) -- (28.05,4.65); \node[anchor=north east, text=ifsiDark, align=right, font=\sffamily\fontsize{18}{20}\selectfont] at (27.7,5.6) {Islamic\\[2pt] Insurance\\[2pt] YoY Growth}; \node[anchor=north east, text=ifsiDark, font=\sffamily\bfseries\fontsize{17}{17}\selectfont] at (27.7,2.85) {1.6\% of IFSI}; % umbrella icon \begin{scope}[shift={(23.3,4.15)}, ifsiRule, line width=1.1pt] \draw (-0.54,0.06) .. controls (-0.54,0.46) and (0.54,0.46) .. (0.54,0.06); \draw (-0.54,0.06) .. controls (-0.35,0.24) .. (-0.18,0.06); \draw (-0.18,0.06) .. controls (0,0.24) .. (0.18,0.06); \draw (0.18,0.06) .. controls (0.35,0.24) .. (0.54,0.06); \draw (0,0.06) -- (0,-0.43); \draw (0,-0.43) .. controls (-0.18,-0.43) and (-0.18,-0.61) .. (0,-0.61); \draw (0.43,-0.1) circle (0.15); \node[font=\small] at (0.43,-0.1) {\$}; \end{scope} % ============ CENTRE BLOCK ============ \node[text=ifsiNavy, font=\sffamily\bfseries\fontsize{58}{58}\selectfont] at (17,10.9) {USD 4.40tn}; \node[text=ifsiNavy, font=\sffamily\fontsize{27}{27}\selectfont] at (17,9.35) {Total IFSI Assets Q3 2025}; \draw[fill=ifsiNavy, draw=none, rounded corners=17pt] (14.3,7.9) rectangle (19.7,8.75); \node[text=white, font=\sffamily\bfseries\fontsize{20}{20}\selectfont] at (17,8.325) {+13.4\% YoY}; \end{tikzpicture} \end{document} It gives the following: I would like to get the exact curves and ribbon effects on for each arrow. What I am missing and how I can create arrow curves and ribbon effects. Any advice or support would be greatly appreciated.
- How to have centred text within reduced margins?by Sho on September 11, 2026 at 4:59 pm
I'm writing a text and I'd like to quote a small rhyme in the middle of my paragraphs. I'd like it for the rhyme to be centered and specifically for all its verses to occupy the same length (that is, for the rhyme to look like a square basically, margins-wise, instead of a line followed by a longer line, then a shorter one, etc.). What I'd been writing till now was something like \begin{center} \textit{Littera gesta docet;} \\ \textit{quid credas Allegoria.} \\ \textit{Moralis quid agas;} \\ \textit{quo tendas, Anagogia} \end{center}`. This, as I said, doesn't give me what I want, for, say, the second line ends up longer than the first. I'd like it for the whole rhyme to have "margins," as long as its longest line, and have the other, shorter lines, perhaps stretched just a tiny bit so that they all fit this length. (Normally this might not be all that desirable, but since all the lines of this rhyme don't differ that much in length, I figured it wouldn't look all that bad visually speaking.)