diff options
Diffstat (limited to 'macros/latex/contrib/rorlink/rorlink.dtx')
-rw-r--r-- | macros/latex/contrib/rorlink/rorlink.dtx | 166 |
1 files changed, 166 insertions, 0 deletions
diff --git a/macros/latex/contrib/rorlink/rorlink.dtx b/macros/latex/contrib/rorlink/rorlink.dtx new file mode 100644 index 0000000000..4e169fd189 --- /dev/null +++ b/macros/latex/contrib/rorlink/rorlink.dtx @@ -0,0 +1,166 @@ +% \iffalse meta-comment +% +% Copyright (C) 2023 by Florian Lukas <florian.lukas@dainst.de> +% --------------------------------------------------------------------------- +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3c or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% This work has the LPPL maintenance status `maintained'. +% +% The Current Maintainer of this work is Florian Lukas. +% +% This work consists of the files rorlink.dtx and rorlink.ins +% and the derived filebase rorlink.sty. +% +% \fi +% +% \iffalse +%<*driver> +\ProvidesFile{rorlink.dtx} +%</driver> +%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01] +%<package>\ProvidesPackage{rorlink} +%<*package> + [2023/06/15 1.0.0 Linked ROR logo macro package] +%</package> +% +%<*driver> +\documentclass{ltxdoc} +\usepackage{rorlink}[2023/06/15] +\usepackage{orcidlink} +\EnableCrossrefs +\CodelineIndex +\RecordChanges +\begin{document} + \DocInput{rorlink.dtx} + \PrintChanges + \PrintIndex +\end{document} +%</driver> +% \fi +% +% \CheckSum{31} +% +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% +% \changes{1.0.0}{2023/06/15}{Build documentation and sty} +% +% \DoNotIndex{\newcommand,\newenvironment} +% +% \providecommand*{\url}{\texttt} +% \GetFileInfo{rorlink.dtx} +% \title{The \textsf{rorlink} package} +% \author{Florian Lukas\,\orcidlink{0000-0002-7959-5494}\,\rorlink{https://ror.org/02rspp784}\thanks{The code is mainly derived from the \href{https://github.com/duetosymmetry/orcidlink-LaTeX-command}{\textbf{orcidlink}} package maintained by Leo Stein. The code of the orcidlink package itself rests mainly on th \href{https://tex.stackexchange.com/questions/445563/ieeetran-how-to-include-orcid-in-tex-pdf-with-pdflatex/445583\#445583}{tex.SE answer} by user Milo} \\ \href{mailto:florian.lukas@dainst.de}{florian.lukas@dainst.de}} +% \date{\fileversion~from \filedate} +% +% \maketitle +% +%Repo: \url{https://gitlab.com/lukeflo/rorlink-latex-package} +% +% \section{Introduction} +% +% This package provides a simple command for creating a \href{https://ror.org/}{ROR} (Research Organization Registry) symbol including a link to the given ROR-ID -- very similar to the \href{https://github.com/duetosymmetry/orcidlink-LaTeX-command}{\textbf{orcidlink}} package. +% +% \section{Usage} +% +% The package can be included in the praeambel like any other package: +%\begin{verbatim} +% \usepackage{rorlink} +%\end{verbatim} +% +%\DescribeMacro{\rorlink\marg{ror-link}} +%Use the command to create a small ROR symbol which is linked to the given ROR-URL. For example, |\rorlink{https://ror.org/00rcxh774}| will create a linked symbol to the ID of the \textit{University of Cologne}. +% +%You can include it into the document title using it inside the |\author{names}| command, as I did for this documentation: +%\begin{verbatim} +%\author{Florian Lukas\,\orcidlink{0000-0002-7959-5494}\,\rorlink{https://ror.org/02rspp784}} +%\end{verbatim} +% +%Furthermore, it can be included into larger macros; for instance, to create an author section with all necessary informations of the contributors: +% +%\includegraphics[width=0.7\textwidth]{example_authorsection.png} +% +% \section{Required Packages} +% +%\begin{description} +% \item[hyperref] Needed to use the symbol as a link to the particular ROR webpage. +% \item[tikz] Is used to draw the ROR symbol using the svg-path method and process the image, when the |\rorlink| command is called. +%\end{description} +% +% \StopEventually{} +% +% \section{Implementation} +% +% \iffalse +%<*package> +% \fi +% +%% The code is derived mainly from the orcidlink package https://github.com/duetosymmetry/orcidlink-LaTeX-command +% \begin{macrocode} +\RequirePackage{hyperref} +\RequirePackage{tikz} +\ProcessOptions\relax +\usetikzlibrary{svg.path} +\definecolor{rorlogocol}{HTML}{53BAA1} +% \end{macrocode} +%% The original svg-path received from the file https://raw.githubusercontent.com/ror-community/ror-logos/main/ror-icon-rgb.svg +% \begin{macrocode} +\tikzset{ + rorlogo/.pic={ + \fill[rorlogocol] svg{M68.65,4.16L56.52,22.74L44.38,4.16L68.65,4.16Z} + svg{M119.41,4.16L107.28,22.74L95.14,4.16L119.41,4.16Z} + svg{M44.38,115.47L56.52,96.88L68.65,115.47L44.38,115.47Z} + svg{M95.14,115.47L107.28,96.88L119.41,115.47L95.14,115.47Z}; + \fill[black] svg{M145.53,63.71C149.83,62.91 153.1,61 155.33,57.99C157.57,54.98 158.68,51.32 158.68,47.03C158.68,43.47 158.06,40.51 156.83,38.13C155.6,35.75 153.93,33.86 151.84,32.45C149.75,31.05 147.31,30.04 144.53,29.44C141.75,28.84 138.81,28.54 135.72,28.54L112.16,28.54L112.16,47.37C111.97,46.82 111.77,46.28 111.55,45.74C109.92,41.79 107.64,38.42 104.71,35.64C101.78,32.86 98.32,30.72 94.3,29.23C90.29,27.74 85.9,26.99 81.14,26.99C76.38,26.99 72,27.74 67.98,29.23C63.97,30.72 60.5,32.86 57.57,35.64C54.95,38.13 52.85,41.1 51.27,44.54C51.04,42.07 50.46,39.93 49.53,38.13C48.3,35.75 46.63,33.86 44.54,32.45C42.45,31.05 40.01,30.04 37.23,29.44C34.45,28.84 31.51,28.54 28.42,28.54L4.87,28.54L4.87,89.42L18.28,89.42L18.28,65.08L24.9,65.08L37.63,89.42L53.71,89.42L38.24,63.71C42.54,62.91 45.81,61 48.04,57.99C48.14,57.85 48.23,57.7 48.33,57.56C48.31,58.03 48.3,58.5 48.3,58.98C48.3,63.85 49.12,68.27 50.75,72.22C52.38,76.17 54.66,79.54 57.59,82.32C60.51,85.1 63.98,87.24 68,88.73C72.01,90.22 76.4,90.97 81.16,90.97C85.92,90.97 90.3,90.22 94.32,88.73C98.33,87.24 101.8,85.1 104.73,82.32C107.65,79.54 109.93,76.17 111.57,72.22C111.79,71.69 111.99,71.14 112.18,70.59L112.18,89.42L125.59,89.42L125.59,65.08L132.21,65.08L144.94,89.42L161.02,89.42L145.53,63.71ZM36.39,50.81C35.67,51.73 34.77,52.4 33.68,52.83C32.59,53.26 31.37,53.52 30.03,53.6C28.68,53.69 27.41,53.73 26.2,53.73L18.29,53.73L18.29,39.89L27.06,39.89C28.26,39.89 29.5,39.98 30.76,40.15C32.02,40.32 33.14,40.65 34.11,41.14C35.08,41.63 35.89,42.33 36.52,43.25C37.15,44.17 37.47,45.4 37.47,46.95C37.47,48.6 37.11,49.89 36.39,50.81ZM98.74,66.85C97.85,69.23 96.58,71.29 94.91,73.04C93.25,74.79 91.26,76.15 88.93,77.13C86.61,78.11 84.01,78.59 81.15,78.59C78.28,78.59 75.69,78.1 73.37,77.13C71.05,76.16 69.06,74.79 67.39,73.04C65.73,71.29 64.45,69.23 63.56,66.85C62.67,64.47 62.23,61.85 62.23,58.98C62.23,56.17 62.67,53.56 63.56,51.15C64.45,48.74 65.72,46.67 67.39,44.92C69.05,43.17 71.04,41.81 73.37,40.83C75.69,39.86 78.28,39.37 81.15,39.37C84.02,39.37 86.61,39.86 88.93,40.83C91.25,41.8 93.24,43.17 94.91,44.92C96.57,46.67 97.85,48.75 98.74,51.15C99.63,53.56 100.07,56.17 100.07,58.98C100.07,61.85 99.63,64.47 98.74,66.85ZM143.68,50.81C142.96,51.73 142.06,52.4 140.97,52.83C139.88,53.26 138.66,53.52 137.32,53.6C135.97,53.69 134.7,53.73 133.49,53.73L125.58,53.73L125.58,39.89L134.35,39.89C135.55,39.89 136.79,39.98 138.05,40.15C139.31,40.32 140.43,40.65 141.4,41.14C142.37,41.63 143.18,42.33 143.81,43.25C144.44,44.17 144.76,45.4 144.76,46.95C144.76,48.6 144.4,49.89 143.68,50.81Z}; + } +} +% \end{macrocode} +% +% \begin{macro}{\@OrigHeightRecipROR} +%% The original height of the svg file is 119.27pt. The macro here uses 1/119.27 as unit. +% \begin{macrocode} +\newcommand{\@OrigHeightRecipROR}{0.008384338} +% \end{macrocode} +% \end{macro} +% +%% The logo is adjusted to the used font size +% \begin{macrocode} +\newlength{\@curXheightROR} +\DeclareRobustCommand\rorlink[1]{% +\texorpdfstring{% +\setlength{\@curXheightROR}{\fontcharht\font`X}% +\href{#1}{\XeTeXLinkBox{\mbox{% +\begin{tikzpicture}[yscale=-\@OrigHeightRecipROR*\@curXheightROR, +xscale=\@OrigHeightRecipROR*\@curXheightROR,transform shape] +\pic{rorlogo}; +\end{tikzpicture}% +}}}}{}} +\endinput% \end{macrocode} + +% +% \iffalse +%</package> +% \fi +% +% \Finale +\endinput |