summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/xsavebox/README.md
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/xsavebox/README.md
Initial commit
Diffstat (limited to 'macros/latex/contrib/xsavebox/README.md')
-rw-r--r--macros/latex/contrib/xsavebox/README.md50
1 files changed, 50 insertions, 0 deletions
diff --git a/macros/latex/contrib/xsavebox/README.md b/macros/latex/contrib/xsavebox/README.md
new file mode 100644
index 0000000000..61d91bfa99
--- /dev/null
+++ b/macros/latex/contrib/xsavebox/README.md
@@ -0,0 +1,50 @@
+# The `xsavebox` LaTeX Package
+
+© 2016--`\today` Alexander Grahn
+
+https://gitlab.com/agrahn/xsavebox
+
+## Description
+
+This package defines commands for saving content that can be repeatedly placed into the document without replicating DVI/PDF code in the output file, allowing for smaller file size of the final PDF and improved content caching for faster display in certain PDF viewers. The method makes use of "Form XObjects" defined in the PDF specification.
+
+The user commands are modelled after the standard LaTeX commands `\savebox`, `\sbox`, `\usebox` and the `lrbox` environment.
+
+All common TeX engines and back-ends are supported:
+* pdfLaTeX, LuaLaTeX
+* LaTeX &rArr; dvips &rArr; ps2pdf/Distiller
+* (Xe)LaTeX &rArr; (x)dvipdfmx
+
+## User commands
+
+* content saving:
+
+````latex
+\xsavebox{<name>}[<width>][<position>]{...}
+\xsavebox*{<name>}[<width>][<position>]{...}
+
+\xsbox{<name>}{...}
+
+\begin{xlrbox}{<name>}...\end{xlrbox}
+\begin{xlrbox*}{<name>}...\end{xlrbox*}
+````
+
+`<name>` is an identifier (not a command!) composed of arbitrary non-active characters, including spaces and numbers. A command for the declaration of `<name>` does not exist.
+
+Starred (`*`) variants allow for colour injection (pdfLaTeX/LuaLaTeX only).
+
+* content insertion (referencing):
+
+````latex
+\xusebox{<name>}
+\the<name>
+````
+
+The second, short form is useable if `<name>` is composed of `[a-zA-Z]`.
+
+
+The package was written in the LaTeX3 syntax.
+
+## License
+
+This material is subject to the [LaTeX Project Public License](http://mirrors.ctan.org/macros/latex/base/lppl.txt).