diff --git a/CHANGELOG.md b/CHANGELOG.md
index a7e2f87..b15cb3d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,13 +8,15 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
### Added
- The links to the embedded files (references) are typeset at the bottom of the paper.
+- Support for `a4paper` for LNCS papers.
### Changed
- Updated LNCS output to the requirements of [Springer's Consent to Publish v3](http://resource-cms.springer.com/springer-cms/rest/v1/content/731196/data/v3).
- If `nourl` is active, the DOI is used as link for the QR code.
- Text is centered if no QR code (`nourl` + no DOI) is generated.
-- File embedding is implemented using the [attachfilfe](https://ctan.org/pkg/attachfile) package.
+- File embedding is implemented using the [intopdf](https://www.ctan.org/pkg/intopdf) package. Links to the embedded files are shown in the generated PDF.
- ACM format adapted to [acmart](https://github.com/borisveytsman/acmart) v1.50.
+- Use [lastpage](https://ctan.org/pkg/lastpage) package instead of custom label.
## 1.0.0 - 2018-02-21
diff --git a/README.md b/README.md
index 8266a9b..d4e3ca1 100644
--- a/README.md
+++ b/README.md
@@ -18,11 +18,13 @@
## Installation
-Copy `authorarchive.sty` in a directory that is searched by LaTeX
-(e.g,. either your `texmf` tree or the local directory with your main
-LaTeX file.
+
+Copy `authorarchive.sty` and the directory `icons` in a directory that
+is searched by LaTeX (e.g,. either your `texmf` tree or the local
+directory with your main LaTeX file.
## Usage
+
A simple use for LNCS-formatted papers is as follows:
```tex
\usepackage[LNCS,
@@ -54,13 +56,16 @@ be adapted easily to other layouts. For example,
works nicely for Acta Informatica.
### Boolean Switches
-| Switch | Meaning |
-| -- | -- |
-| `nocopyright` | If present, no publisher's copyright notice is printed. Usual case for LNCS. |
-| `nourl` | If present, no link to the publication is inserted. |
-| `nobib` | If present, no embedding of bibliographic entries is made. |
+
+| Switch | Meaning |
+| -- | -- |
+| `nocopyright` | If present, no publisher's copyright notice is printed. Usual case for LNCS. |
+| `nourl` | If present, no link to the publication is inserted. |
+| `nobib` | If present, no embedding of bibliographic entries is made. |
+| `orcidicon` | For layouts displaying the author's ORCID identifiers as text, replace the ORCID identifier by the ORICD iD icon and a hyperlink (currently only supported for LNCS). |
### Key/Value Options
+
| Option | Default | Meaning |
| -- | -- | -- |
| `bibtexdir`| `.` | The directory where the bibliography entries are listed. |
@@ -82,6 +87,7 @@ loaded automatically. This allows for configuring defaults (e.g., the
baseurl) easily.
## Embedding Bibliography Entries
+
Mostly, it is hard for scientists to find the correct bibtex entry for
a paper. One solution to this issue is to embed the respective `.bib`
(BibTeX, for LaTeX users), `.enw` (Endnote), `.ris`, or `.word.xml`
@@ -96,18 +102,29 @@ references easily.
## Notes on Self-Archiving
Before using this package, please check with your signed copyright form,
-which rights you have. None of the authors might be hold liable for copyright
+which rights you have. Especially whether you may self-archive the preprint
+or the postprint. For more information on that, read on at
+.
+
+None of the authors might be hold liable for copyright
violations by using this package.
### LNCS
+
Sprinter states in his [Springer's Consent to Publish v3](http://resource-cms.springer.com/springer-cms/rest/v1/content/731196/data/v3):
-> Author may only post his/her own version, provided acknowledgment is given to the original source of publication and a link is inserted to the published article on Springer’s website.
-> The link must be provided by inserting the DOI number of the article in the following sentence:
-> "The final publication is available at Springer via `http://dx.doi.org/[insert DOI]`".
-The DOI (Digital Object Identifier) can be found at the bottom of the first page of the published paper.
+> Author may only post his/her own version, provided acknowledgment is given
+> to the original source of publication and a link is inserted to the published
+> article on Springer’s website.
+> The link must be provided by inserting the DOI number of the article in the
+> following sentence:
+> "The final publication is available at Springer via
+> `http://dx.doi.org/[insert DOI]`".
+The DOI (Digital Object Identifier) can be found at the bottom of the first
+ page of the published paper.
-This package uses `https://doi.org` as `http://dx.doi.org` [is deprecated](https://www.doi.org/factsheets/DOIIdentifierSpecs.html).
+This package uses `https://doi.org` as `http://dx.doi.org`
+[is deprecated](https://www.doi.org/factsheets/DOIIdentifierSpecs.html).
Thus, the proposed configuration for Springer is as follows:
@@ -115,7 +132,7 @@ Thus, the proposed configuration for Springer is as follows:
\usepackage[LNCS,
key=brucker-authorarchive-2016,
year=2016,
- publication={Anonymous et al. (eds). Proceedings of the International
+ publication={Anonymous et al.\ (eds). Proceedings of the International
Conference on LaTeX-Hacks, LNCS~42. Springer, 2016.}
startpage={42},
doi={10.1038/authorarchive},
@@ -124,14 +141,15 @@ Thus, the proposed configuration for Springer is as follows:
```
## Other publishers
-One does not need to specify a certain publisher. The default setting just
-prints the note centered at the bottom of the first page.
+
+In general, one does not need to specify a certain publisher (or LaTeX document class).
+The default setting just prints the note centered at the bottom of the first page.
```latex
\usepackage[
key=brucker-authorarchive-2017,
year=2017,
- publication={Anonymous et al. (eds). Proceedings of the International
+ publication={Anonymous et al.\ (eds). Proceedings of the International
Conference on LaTeX-Hacks, CEUR-WS Vol~42, 2017.}
startpage={42},
doi={10.1039/authorarchive},
@@ -139,8 +157,11 @@ prints the note centered at the bottom of the first page.
]{authorarchive}
```
+Still, for some used document classes (e.g., `acmart`) there are specific
+package options available hat produce an alternative layout.
## Alternative Packages
+
The package [coverpage](https://ctan.org/pkg/coverpage) prepends a
separate PDF page before the first page of the paper. That page
contains the bibliographic information as BibTeX entry. One is forced
@@ -158,14 +179,17 @@ publication states "intended-to-submit" and "submitted", but no QR
code and links to the author's archive URL.
## Authors
+
Main author: [Achim D. Brucker](http://www.brucker.ch/)
### Contributors
+
* [Oliver Kopp](https://github.com/koppor/)
-
-
## License
+
If not otherwise stated, all sub-projects are dual-licensed under a
-2-clause BSD-style license and/or the LPPL version 1 or any later
-version.
+2-clause BSD-style license and/or the LPPL version 1.3c or (at your
+opinion) any later version.
+
+SPDX-License-Identifier: LPPL-1.3c+ OR BSD-2-Clause
diff --git a/authorarchive.sty b/authorarchive.sty
index f6e7546..666f92d 100644
--- a/authorarchive.sty
+++ b/authorarchive.sty
@@ -4,11 +4,11 @@
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN
%% archives in directory macros/latex/base/lppl.txt; either
-%% version 1 of the License, or any later version.
+%% version 1.3c of the License, or (at your option) any later version.
%% OR
%% The 2-clause BSD-style license.
%%
-%% SPDX-License-Identifier: LPPL-1.0+ OR BSD-2-Clause
+%% SPDX-License-Identifier: LPPL-1.3c+ OR BSD-2-Clause
\NeedsTeXFormat{LaTeX2e}\relax
\ProvidesPackage{authorarchive}
[0000/00/00 Unreleased v1.0.0+%
@@ -20,7 +20,7 @@
\RequirePackage[inline]{enumitem}
\RequirePackage{graphicx}
\RequirePackage{eso-pic}
-\RequirePackage{attachfile}
+\RequirePackage{intopdf}
\RequirePackage{kvoptions}
\RequirePackage{hyperref}
\RequirePackage{calc}
@@ -58,6 +58,7 @@
\DeclareBoolOption{nocopyright}
\DeclareBoolOption{nourl}
\DeclareBoolOption{nobib}
+\DeclareBoolOption{orcidicon}
%\ProcessOptions\relax
@@ -136,10 +137,20 @@
%
%%%% LNCS
\ifAA@LNCS%
+ \ifAA@orcidicon%
+ \renewcommand{\orcidID}[1]{\href{https://orcid.org/#1}{%
+ \textsuperscript{\,\includegraphics[height=2\fontcharht\font`A]{vector_iD_icon}}}}
+ \else\relax\fi%
+%
\setkeys{AA}{publisher=Springer-Verlag}
- \renewcommand{\authorat}[1]{\put(\LenToUnit{\AA@x},23){#1}}
\renewcommand{\authorcrfont}{\scriptsize}
- \pdfpagesattr{/CropBox [92 65 523 731]}% LNCS page: 152x235 mm
+ \@ifclasswith{llncs}{a4paper}{%
+ \pdfpagesattr{/CropBox [92 114 523 780]}%
+ \renewcommand{\authorat}[1]{\put(\LenToUnit{\AA@x},40){#1}}%
+ }{%
+ \pdfpagesattr{/CropBox [92 65 523 731]}% LNCS page: 152x235 mm
+ \renewcommand{\authorat}[1]{\put(\LenToUnit{\AA@x},23){#1}}
+ }
\setlength{\AA@width}{\textwidth}
\setcounter{tocdepth}{2}
\fi
@@ -181,9 +192,12 @@
pdftitle = {\@title},
}
-\AtEndDocument{\label{LastPage}}
-
-
+\@ifpackageloaded{totpages}{%
+ \def\aa@lastpage{TotPages}
+}{%
+ \RequirePackage{lastpage}
+ \def\aa@lastpage{LastPage}
+}
\newsavebox{\AA@authoratBox}
\AddToShipoutPicture*{%
@@ -205,7 +219,7 @@
}%
\parbox{\AA@width-1.4cm}{\authorcrfont%
\ifAA@LNCS%
- \AA@publication, pp. \thepage--\pageref{LastPage}, \AA@year.
+ \AA@publication, pp. \thepage--\pageref{\aa@lastpage}, \AA@year.
\ifAA@nocopyright\relax\else
\textcopyright~\AA@year~\AA@publisher.
\fi
@@ -241,7 +255,7 @@
by permission of \AA@publisher{} %
\fi
for your personal use. Not for redistribution. The definitive
- version was published in \emph{\AA@publication}, pp.~\thepage--\pageref{LastPage}, \AA@year%
+ version was published in \emph{\AA@publication}, pp.~\thepage--\pageref{\aa@lastpage}, \AA@year%
\ifx\AA@doi\@empty%
\ifx\AA@publisherurl\@empty%
.%
@@ -259,59 +273,24 @@
\ifAA@nobib\relax\else%
\ifthenelse{\boolean{AA@bibExists}}{%
\hfill
- % We need "doubleprint", because the text of \textattachfile
- % is not printed when printing a PDF
- % We use the idea from
- % https://tex.stackexchange.com/a/19045/9075, accepting that
- % the pointers to the files are renderedin semi-bold way
- \newlength{\Urlname}
- \newcommand{\doubleprint}[1]{\setlength{\Urlname}{\widthof{#1}}\hspace{-\Urlname}#1}
\begin{itemize*}[label={}, itemjoin={,}]
\IfFileExists{\AA@bibBibTeX}{%
- \item \textattachfile[%
- print=true,%
- color=0 0 0,%
- icon=Paperclip,%
- description={BibTeX entry of this paper},%
- mimetype=application/x-bibtex%
- ]{\AA@bibBibTeX}{\BibTeX}%
- \doubleprint{\BibTeX}
+ \item \attachandlink{\AA@bibBibTeX}[application/x-bibtex]{BibTeX entry of this paper}{\BibTeX}%
}{
\typeout{No file \AA@bibBibTeX found. Not embedded reference in BibTeX format.}
}
\IfFileExists{\AA@bibWord}{%
- \item \textattachfile[%
- print=true,%
- color=0 0 0,%
- icon=Paperclip,%
- description={XML entry of this paper (e.g., for Word 2007 and later)},%
- mimetype=application/xml%
- ]{\AA@bibWord}{Word}%
- \doubleprint{Word}%
+ \item \attachandlink{\AA@bibWord}[application/xml]{XML entry of this paper (e.g., for Word 2007 and later)}{Word}%
}{
\typeout{No file \AA@bibWord found. Not embedded reference for Word 2007 and later.}
}
\IfFileExists{\AA@bibEndnote}{%
- \item \textattachfile[%
- print=true,%
- color=0 0 0,%
- icon=Paperclip,%
- description={Endnote entry of this paper},%
- mimetype=application/x-endnote-refer%
- ]{\AA@bibEndnote}{EndNote}%
- \doubleprint{EndNote}%
+ \item \attachandlink{\AA@bibEndnote}[application/x-endnote-refer]{Endnote entry of this paper}{EndNote}%
}{
\typeout{No file \AA@bibEndnote found. Not embedded reference in Endnote format.}
}
\IfFileExists{\AA@bibRIS}{%
- \item \textattachfile[%
- print=true,%
- color=0 0 0,%
- icon=Paperclip,%
- description={RIS entry of this paper},%
- mimetype=application/x-research-info-systems%
- ]{\AA@bibRIS}{RIS}%
- \doubleprint{RIS}%
+ \item \attachandlink{\AA@bibRIS}[application/x-research-info-systems]{RIS entry of this paper}{RIS}%
}{
\typeout{No file \AA@bibRIS found. Not embedded reference in RIS format.}
}
diff --git a/examples/brucker-authorarchive-2016-llncs-a4.tex b/examples/brucker-authorarchive-2016-llncs-a4.tex
new file mode 100644
index 0000000..bdffbef
--- /dev/null
+++ b/examples/brucker-authorarchive-2016-llncs-a4.tex
@@ -0,0 +1,20 @@
+\documentclass[final, runningheads, USenglish, a4paper, pdftex]{llncs}
+\usepackage[T1]{fontenc}
+\usepackage[LNCS,
+ key=brucker-authorarchive-2016,
+ year=2016,
+ publication={Anonymous et al.\ (eds). Proceedings of the International
+ Conference on LaTeX-Hacks, LNCS~42. Some Publisher, 2016},
+ startpage={42},
+ doi={00/00_00},
+ doiText={0/00\_00},
+ nocopyright
+ ]{../authorarchive}
+
+\usepackage{lipsum}
+
+\title{A Simple Example of the \texttt{authorarchive} Package for \LaTeX}
+\author{\protect\href{http://www.brucker.ch/}{Achim D. Brucker}}
+\institute{Some Departement, Somewhere}
+
+\input{input/body}
diff --git a/icons/README.md b/icons/README.md
new file mode 100644
index 0000000..7157466
--- /dev/null
+++ b/icons/README.md
@@ -0,0 +1,21 @@
+# Icons for the use with authorarchive
+
+This directory contains icons that might be used together with
+the authorarchive LaTeX style. The use of these icons is
+restricted by the respective copyright holders.
+
+## ORCID iD Icon
+
+The iD icon ([vector_iD_icon.svg](vector_iD_icon.svg)) was obtained in
+SVG format from
+ and converted
+to PDF ([vector_iD_icon.pdf](vector_iD_icon.pdf)) using
+[Inkscape](https://inkscape.org). According to the use and (display
+guidelines)[https://orcid.org/trademark-and-id-display-guidelines] of
+the ORCID iD icons, it can be used for displaying ORCID identifiers.
+
+An alternative to including the iD icon as PDF image is the
+[academicons](https://ctan.org/pkg/academicons) package. At the time
+of writing, this package requires xe(la)tex or lua(la)tex while the
+[authorarchive](https://ctan.org/pkg/authorarchive) packages requires
+pdf(la)tex.
diff --git a/icons/vector_iD_icon.pdf b/icons/vector_iD_icon.pdf
new file mode 100644
index 0000000..59824b1
Binary files /dev/null and b/icons/vector_iD_icon.pdf differ
diff --git a/icons/vector_iD_icon.svg b/icons/vector_iD_icon.svg
new file mode 100644
index 0000000..2bddf44
--- /dev/null
+++ b/icons/vector_iD_icon.svg
@@ -0,0 +1,17 @@
+
+
+
\ No newline at end of file