summaryrefslogtreecommitdiff
path: root/texmf-dist/doc/latex/aeb-mlink/mlink_tst.tex
blob: 3e1f2f54e63a387637b77f4cdcce00dae0c5ad11 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
\documentclass{article}
\usepackage[fleqn]{amsmath}
\usepackage[designi]{web}
\usepackage{eforms}
\usepackage{aeb_mlink}
\usepackage{multicol}

\renewcommand\hproportionwebtitle{.75}
\renewcommand{\titleauthorproportion}{.5}


\title{Demonstrating the \textsf{aeb\_mlink} Package\texorpdfstring{\\[3pt]}{: }A member of AeB Pro}
\author{D. P. Story}
\subject{Multi-line links using the AcroTeX eDucation Bundle}
\keywords{AeB, multi-line links}

\university{NORTHWEST FLORIDA STATE COLLEGE\\
   Department of Mathematics}
\email{storyd@nwfsc.edu}
\version{1.0}
\revisionLabel{}

\newcommand{\cs}[1]{\texttt{\char`\\#1}}

\begin{document}

\maketitle

\section{Introduction}


This file tests and demonstrates new macros for creating hypertext
links that wrap around a line. Most of the text is nonsense, and was
created to fill the page, no offence taken I hope

This paragraph contains two links that go beyond the
\mlhypertext[\S{U}\W{1}\Color{0 .6 0}\A{\JS{app.alert("First
Link\\n\\nLet's try another!  J\\374rgen and with unicode J\\u00FCrgen")}}
]{margins of this text width} so it wraps around to the
next line. Now, I'll \mlhypertext[\A{\JS{app.alert("Second
Link")}}]{insert a multi-line link.}\footnote{Techniques by D. P.
Story} Can we continue with this? Yes, so says D. P. Story.


This paragraph contains two links that go beyond the
\mlhypertext[\A{\JS{app.alert("Third Link")}}]{margins of this text width},
so it wraps around to the next line. Let's try a numbered equation:
\begin{equation}
                \boxed{x + y = 1}
\end{equation}
Now, with your permission, I'll insert another one of these
\mlhypertext[\A{\JS{app.alert("Fourth Link")}}]{links of the
multiline type.}\footnote{D.P. Story is very nice fellow, but he has a rather
\mlhypertext[\A{\JS{app.alert("Footnote!")}}]{grand head; we must watch the
compliments} so we don't inflate his ego more.} Can we continue with
this? Yes, so says D. P. Story.


On the next page, we try multiple column format.

\mlhypertext[\S{U}\W{1}\Color{0 0.6 0}\A{\JS{app.alert("Success! Multi-line links with hyphenation!\\n\\nCongrats,
J\\u00FCrgen")}}]{Welcome my friends to my residence, humble as it is. The encyclopedia is a wonderful book.}
We shall study it closely during your visit.

Try this great link: \mlhypertext[\A{\JS{app.alert("Yes, they do!");}}]{J\"{u}rgen, \LaTeX{} and
math \mbox{\smash[b]{$\displaystyle\int_0^1 f(x)\,dx$}} work admirably.}


\parskip0pt

\begin{multicols}{2}
\noindent Being able to create multi-line links becomes important when the
\texttt{\string\linewidth} is narrow. On this page we create some
mindless text that will fill up all or part of the page, then create
some multi-line links.

Without a doubt, \textsl{this method will fail if the paragraph contains
multi-line links that crosses a \emph{page boundary} or a \emph{\mlhypertext[\A{\JS{app.alert("Wrong again! However, there are problems
with page boundaries.");}}]{column boundary}}}.

This paragraph contains two links that extend beyond the
\mlhypertext[\A{\JS{app.alert("Fifth Link")}}]{margins of this text
width} which causes it to wrap around to the next line. Note the
hyphenation of the link, this is due to the \textsf{soul} package.
As a further test, I'll \mlhypertext[\A{\JS{app.alert("Sixth
Link")}}]{insert a multi-line link} again. Can we continue with
this? Yes, so says D. P. Story.

\end{multicols}


\section{Second of Three Sections}\label{second}

Let us begin by having page filling mindless text,
then we'll force a page break, but before we break, a friend of
mine, asked if multi-line links work with math formulas. A very strange request,
\mlhypertext[\A{\JS{app.alert("I said, \\"No, they won't work.\\"...I'm wrong again.")}}]{$ x= f(t)$, $ x= g(t)$, $h(x) = e^x$}, very strange
indeed. Let's try.

Use \LaTeX/hyperref system of cross-referencing
\mlnameref{three}. The last link is a modification of
the \texttt{\string\nameref} command from hyperref.The
\texttt{\string\Nameref} command can be duplicated
\mlNameref{three} as well.

\newpage

\section{Third of Three Sections}\label{three}

The second section, oops, I've lost count. I have nothing to say in
this section. I take that back, below are problem areas multi-line
linking:

\begin{enumerate}
    \item This method cannot work across page boundaries
    \item See the \textsf{soul} package documentation for limitations on the arguments
          of the \cs{mlxx} commands.
    \item Works for footnotes
    \item Can use verbatim text in a paragraph, \verb!$#}^!,
          but cannot include verbatim in a multi-line link. Is
          there any real need to do so?
\end{enumerate}

\section{URLs}

Let us try a URL across lines: \mlhref[\S{U}\W{1}\Color{0.6 0 0}]{%
http://www.math.uakron.edu/~dpstory/acrotex.html#educational}
{See the educational offerings of the {Acro\negthinspace{\TeX}} Web
Site at the University of Akron}. This link plays off the
\texttt{\string\href} \hypertarget{command}{command}.

We can also call a local file, let's try: \mlhref{shameless_ad.pdf}{Here
is a shameless advertisement for Acro\!\TeX}.

Try launching  a file now, let's try a \LaTeX{} file:
\mlhref[\S{U}\W{1}\Color{.6 0 0}]{run:\jobname.tex}{This is the
source file of this document}.\footnote{Source document needs to be in the folder
containing this PDF file.}

Finally, let's try my own email address at Acro\!\TeX.Net,
\mlhref{mailto:dpstory@acrotex.net}{dpstory at acrotex dot net}.

\href{run:np_test.txt}{Launch Notepad}\footnote{Windows system required.}

\end{document}