From 68df63effba2e77fb0218b91a6722821355885cd Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Sun, 9 Aug 2020 03:02:03 +0000 Subject: CTAN sync 202008090302 --- obsolete/macros/latex/contrib/fldigigal/README.md | 27 ++ .../macros/latex/contrib/fldigigal/doc/fdg_man.pdf | Bin 0 -> 266688 bytes .../macros/latex/contrib/fldigigal/doc/fdg_man.tex | 429 +++++++++++++++++++ .../fldigigal/examples/digis/Chrysanthemum.jpg | Bin 0 -> 879394 bytes .../contrib/fldigigal/examples/digis/Desert.jpg | Bin 0 -> 845941 bytes .../fldigigal/examples/digis/Hydrangeas.jpg | Bin 0 -> 595284 bytes .../contrib/fldigigal/examples/digis/Jellyfish.jpg | Bin 0 -> 775702 bytes .../contrib/fldigigal/examples/digis/Koala.jpg | Bin 0 -> 780831 bytes .../fldigigal/examples/digis/Lighthouse.jpg | Bin 0 -> 558866 bytes .../contrib/fldigigal/examples/digis/Penguins.jpg | Bin 0 -> 777835 bytes .../contrib/fldigigal/examples/digis/Tulips.jpg | Bin 0 -> 620888 bytes .../latex/contrib/fldigigal/examples/fdg_demo.tex | 59 +++ .../contrib/fldigigal/examples/fdg_demo_fit.tex | 60 +++ .../latex/contrib/fldigigal/examples/fdg_min.tex | 63 +++ .../macros/latex/contrib/fldigigal/fldigigal.cfg | 7 + .../macros/latex/contrib/fldigigal/fldigigal.dtx | 471 +++++++++++++++++++++ .../macros/latex/contrib/fldigigal/fldigigal.ins | 60 +++ .../macros/latex/contrib/fldigigal/swf/fdg_ht1.swf | Bin 0 -> 78677 bytes .../macros/latex/contrib/fldigigal/swf/fdg_nt1.swf | Bin 0 -> 123787 bytes .../macros/latex/contrib/fldigigal/swf/fdg_vt1.swf | Bin 0 -> 138049 bytes 20 files changed, 1176 insertions(+) create mode 100644 obsolete/macros/latex/contrib/fldigigal/README.md create mode 100644 obsolete/macros/latex/contrib/fldigigal/doc/fdg_man.pdf create mode 100644 obsolete/macros/latex/contrib/fldigigal/doc/fdg_man.tex create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/digis/Chrysanthemum.jpg create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/digis/Desert.jpg create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/digis/Hydrangeas.jpg create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/digis/Jellyfish.jpg create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/digis/Koala.jpg create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/digis/Lighthouse.jpg create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/digis/Penguins.jpg create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/digis/Tulips.jpg create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/fdg_demo.tex create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/fdg_demo_fit.tex create mode 100644 obsolete/macros/latex/contrib/fldigigal/examples/fdg_min.tex create mode 100644 obsolete/macros/latex/contrib/fldigigal/fldigigal.cfg create mode 100644 obsolete/macros/latex/contrib/fldigigal/fldigigal.dtx create mode 100644 obsolete/macros/latex/contrib/fldigigal/fldigigal.ins create mode 100644 obsolete/macros/latex/contrib/fldigigal/swf/fdg_ht1.swf create mode 100644 obsolete/macros/latex/contrib/fldigigal/swf/fdg_nt1.swf create mode 100644 obsolete/macros/latex/contrib/fldigigal/swf/fdg_vt1.swf (limited to 'obsolete') diff --git a/obsolete/macros/latex/contrib/fldigigal/README.md b/obsolete/macros/latex/contrib/fldigigal/README.md new file mode 100644 index 0000000000..854ca72e9f --- /dev/null +++ b/obsolete/macros/latex/contrib/fldigigal/README.md @@ -0,0 +1,27 @@ +The fldigigal package +Dated: 2020-08-08 + +The fldigigal package uses the rmannot package (Adobe Distiller workflow +required) to create, what I am calling, an AcroTeX Flash Digital Gallery; +that is, a Flash slide show that displays a series of digitals (PNG, JPG, +GIF). The document author describes the digitals (path and caption) from +the LaTeX source, on compilation, fldigigal write an XML file, which +Distiller embeds in the PDF. The digitals may be embedded in the PDF, or +reside on the Internet (reducing filesize). Three layouts of are offered +at this time: vertical thumbnails, horizontal thumbnails, or no +thumbnails. + +What's New 2020-08-08: This package becomes obsolete after December 2020. +Following December 2020, Adobe no longer supports Flash player (SWF, FLV). +This package uses a custom SWF file (fdg_ht1.swf, eg); as a result this +package will no longer function in Adobe Acrobat Reader DC. The package will +continue to produce PDFs as designed, but only if built using Acrobat XI (or +a version Acrobat prior to 2021) and viewed in Adobe Acrobat Reader +XI (or a version of Reader prior 2021). + +Now, I simply must get back to my retirement. + +Dr. D. P. Story +www.acrotex.net +dpstory at uakron dot edu +dpstory at acrotex dot net diff --git a/obsolete/macros/latex/contrib/fldigigal/doc/fdg_man.pdf b/obsolete/macros/latex/contrib/fldigigal/doc/fdg_man.pdf new file mode 100644 index 0000000000..5e2fa539a3 Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/doc/fdg_man.pdf differ diff --git a/obsolete/macros/latex/contrib/fldigigal/doc/fdg_man.tex b/obsolete/macros/latex/contrib/fldigigal/doc/fdg_man.tex new file mode 100644 index 0000000000..81a1e0e51c --- /dev/null +++ b/obsolete/macros/latex/contrib/fldigigal/doc/fdg_man.tex @@ -0,0 +1,429 @@ +% makeindex < aebpro_man.idx > aebpro_man.ind +\documentclass{article} +\usepackage[fleqn]{amsmath} +\usepackage[% + web={centertitlepage,designv,tight,usetemplates,%usesf, + forcolorpaper,latextoc,pro}, + eforms,aebxmp,graphicxsp={showembeds} +]{aeb_pro} +\usepackage{rmannot} +\usepackage{fldigigal} + +%\usepackage{multicol} +\usepackage{aeb_mlink} +\usepackage{array} +\usepackage[altbullet]{lucidbry} +%\usepackage{myriadpro} + +\usepackage{makeidx} +\makeindex +\usepackage{acroman} + +\usepackage[inactive]{srcltx} + +\def\expath{../examples} +\let\app\textsf + +\urlstyle{tt} + +\makeatletter +\renewcommand{\paragraph} + {\@startsection{paragraph}{4}{0pt}{6pt}{-3pt}{\bfseries}} +\makeatother + +\DeclareDocInfo +{ + university={\AcroTeX.Net}, + title={The \texorpdfstring{\textsf{fldigigal} Package\\[1em]}{: } + Creating Flash Digital Galleries}, + author={D. P. Story}, + email={dpstory@acrotex.net}, + subject={Creating Flash Digital Galleries}, + talksite={\url{www.acrotex.net}}, + version={0.6, 2020/08/08}, + keywords={AcroTeX, PDF, Flash Photo Gallery, rmannot}, + copyrightStatus=True, + copyrightNotice={Copyright (C) \the\year, D. P. Story}, + copyrightInfoURL={http://www.acrotex.net} +} + +\def\dps{$\hbox{$\mathfrak D$\kern-.3em\hbox{$\mathfrak P$}% + \kern-.6em \hbox{$\mathcal S$}}$} + +\universityLayout{fontsize=Large} +\titleLayout{fontsize=LARGE} +\authorLayout{fontsize=Large} +\tocLayout{fontsize=Large,color=aeb} +\sectionLayout{indent=-40pt,fontsize=large,color=aeb,afterskip=1sp} +\subsectionLayout{indent=-20pt,color=aeb,afterskip=1sp} +\subsubsectionLayout{indent=0pt,color=aeb,afterskip=1sp} +\subsubDefaultDing{\texorpdfstring{$\bullet$}{\textrm\textbullet}} + +\newenvironment{eqComments}[1][\strut]{\smallskip\leftskip-\labelwidth +\item[]\textbf{\textcolor{blue}{#1}}}{\par\smallskip} + +%----------fldigigal-------------- +\definePath{\pathToSource}{% + C:/Users/Public/Documents/My TeX Files/tex/% + latex/aeb/aebpro/fldigigal/doc} +\definePath{\digisOnline}{% + http://www.math.uakron.edu/~dpstory/photos/pa_demo} +\definePath{\digisLocal}{\pathToSource/digis} + +\fdgXmlList{myDigis} +{% + \image{path=\digisOnline/Chrysanthemum.jpg,caption=Jürgen\'s Chrysanthemum,online} %\iso{252} + \image{path=\digisOnline/Desert.jpg,caption=Desert,online} + \image{path=\digisOnline/Hydrangeas.jpg,caption=Hydrangeas,online} + \image{path=\digisOnline/Jellyfish.jpg,caption=Jellyfish,online} + \image{path=\digisOnline/Koala.jpg,caption=Koala,online} + \image{path=\digisOnline/Lighthouse.jpg,caption=Lighthouse,online} + \image{path=\digisOnline/Penguins.jpg,caption=Penguins,online} + \image{path=\digisOnline/Tulips.jpg,caption=Tulips,online} +} +%---------fldigigal--------------------- + +\optionalPageMatter{\begin{center} +\fbox{\begin{minipage}{.67\linewidth} +\textbf{\color{red}End of Life of Software:} +After \textbf{December 2020}, Adobe no longer supports Flash Player (SWF, FLV files). +This package uses custom SWF files +(\texttt{fdg\_ht1.swf}, \texttt{fdg\_nt1.swf}, and \texttt{fd\_vt1.swf}); as a result this package will no longer function +in \app{Adobe Acrobat Reader DC} (dated Dec.~2020 or later). The package will continue to produce +PDFs as designed, \emph{but only if built using \emph{\textsf{Acrobat XI} (or a +version \textsf{Acrobat DC} prior to December 2020)} and viewed in \emph{\textsf{Adobe +Acrobat Reader XI} (or a version of \textsf{Reader DC} prior to December +2020)}.}\hfill\dps +\end{minipage}} +\end{center}} + +%\pagestyle{empty} +\parindent0pt\parskip\medskipamount + +\definePath\bgPath{"C:/Users/Public/Documents/ManualBGs/Manual_BG_Print_AeB.pdf"} +\begin{docassembly} +\addWatermarkFromFile({ + bOnTop:false, + cDIPath:\bgPath +}); +\executeSave(); +\end{docassembly} + +\begin{document} + +\maketitle + +\selectColors{linkColor=black} +\tableofcontents +\selectColors{linkColor=webgreen} + +\section{Introduction}\label{s:intro} + +The \textsf{fldigigal} package is the third application of \textsf{rmannot}; +the others are the {\AcroFLeX} and \textsf{yt4pdf} packages.\footnote{All packages mentioned here use +SWF files; they all become obsolete after Dec.\ 2020.} + +The \emph{Flash Digital Gallery} distribution consists of a {\LaTeX} +package, \textsf{fldigigal}, several \textsf{SWF} files, a small collection +of digital photos, and sample files. The purpose of this distribution is +to provide a convenient way to create a Flash slide show. The distribution +offers several design layouts of the slide show, called \emph{galleries}. +Below is an example of a slide show created by \textsf{fldigigal} using +source code from this document. +\begin{center}%\previewtrue +\resizebox{.9\linewidth}{!} +{% + \fgRmAnnot[galleryopts={gallery=vthumbs1,auto=false,captionalign=center}, + posternote={Flash Digital Gallery},enabled=pageopen + ]{myDigis} +} +\end{center} +The photos themselves may be embedded in the PDF file (increasing the +file size), or may be referenced with an URL. The gallery can be manually +operated, or set to change photos at a regular interval. + +There are steps for creating a flash digital gallery: +\begin{enumerate} + \item In the preamble of your document, specify the digitals (PNG, + JPG, GIF) you want displayed in you gallery. This is entered by + using the \cs{fdgXmlList} command. See the section + \Nameref{fdgXmlList} for details. + \item In the body of the document, create a Rich Media Annotation (RMA) + using the command \cs{fgRmAnnot}, defined in \textsf{fldigigal}. For + details of this command, see the section + \Nameref{fgRmAnnot}. +\end{enumerate} + + + +\section{Requirements} + +This package is part of \textsf{AeB Pro}, which means Acrobat Distiller is +used to create the PDF; the package requires \textsf{rmannot}, which +creates rich media annotations. Therefore, we require +\begin{equation*} + \boxed{\text{\large\bfseries Adobe Acrobat, version 9.0 or later}} +\end{equation*} +To use this package, the document author must have AeB and AeB Pro +installed, as well as \textsf{rmannot}. The manual for \textsf{rmannot} +needs to be read closely to install it properly and for it to function correctly. + +\section{Configuring your installation} + +In addition to configuring the \textsf{rmannot} package correctly, the +\textsf{fldigigal} package needs configuring as well. The \textsf{fldigigal} +comes with a configuration file \texttt{fldigigal.cfg}. Open this file in +your favorite editor to see +\begin{Verbatim}[fontsize=\small] +% fldigigal config file. Delete the \endinput below and replace the path +% provided with the path to the swf folder of your fldigigal installation. +% This path is used to locate the fldigigal SWF files. +\endinput +\renewcommand{\fdgFolder}{C:/Users/Public/Documents/My TeX Files/% + tex/latex/aeb/aebpro/fldigigal/swf} +\end{Verbatim} +Edit this file so that \cs{fdgFolder} points to the \texttt{swf} folder on +your computer. + +\section{In the Preamble: Populating the +\texorpdfstring{\protect\cs{fdgXmlList}}{\CMD{fdgXmlList}} +Command}\label{fdgXmlList} + +The {\AcroTeX} Flash Gallery SWF files take several arguments that are +passed to it using \texttt{FlashVars}; one such variable is a reference to +an XML file that contains the paths and captions to the digital files. +When I began developing the package, the XML file was just hand-written in +an editor; when I started to write the package, I included the +\cs{fdgXmlList} command which writes the XML file as the source file is +compiled. + +At the bare minimum, the preamble must include a definition for +\cs{pathToSource} and the \cs{fdgXmlList} command. + +The definition of \cs{pathToSource} should be made using the +\cs{definePath} command, defined in the \textsf{eforms} package. +Here is one such definition to a sample file in this distribution. +\begin{Verbatim}[xleftmargin=20pt,fontsize=\small] +\definePath{\pathToSource}{% + C:/Users/Public/Documents/My TeX Files/tex/% + latex/aeb/aebpro/fldigigal/doc} +\end{Verbatim} +The \textsf{fldigigal} uses the Adobe Distiller to create the PDF file. +Distiller only works with absolute file references; so, Distiller needs to +know the location of XML file that is to be written by the \cs{fdgXmlList} +command. \emph{This definition is required}. + +Another (optional, but recommended) definition is the path to the digital +files. The photos may reside on your local hard drive, or on the Internet. +In the example that follows, we illustrate the method of defining the +paths; one for a local hard drive, the other for photos found online. +\begin{Verbatim}[xleftmargin=20pt,fontsize=\small] +\definePath{\digisOnline}{% + http://www.math.uakron.edu/~dpstory/photos/pa_demo} +\definePath{\digisLocal}{\pathToSource/digis} +\end{Verbatim} +These paths may then be conveniently included in the \texttt{path} key +of the \cs{image} command, see below. + +\begin{dCmd*}{.67\linewidth} +\fdgXmlList[]{}{% + \image{...} + \image{...} + ... + \image{...} +} +\end{dCmd*} +\CmdDescription When the source document compiles, this command writes an +XML file to the source file's folder. The XML is later embedded in the PDF +file when the file is distilled. +\PD The command has three arguments, the first is optional. +\begin{itemize} + \item[\texttt{[\#1]}] The optional argument labeled above as + \texttt{[]} may include only two (Boolean) key-value + pairs: \texttt{showcounts} and \texttt{nowrite}. + \begin{itemize} + \item \texttt{showcounts} When this key appears as \texttt{showcount} or as + \texttt{showcount=true}, a count and a total count of the number of + photos appearing in the gallery is displayed in the title bar. + The count appears as (1 of 8), for example, but this can be + redefined by the command \cs{fdgcntOf}. The default definition + is\medskip +\begin{Verbatim}[xleftmargin=20pt,fontsize=\small] +\newcommand{\fdgcntOf}[1]{\space(#1 of \fdg@numDigis)} +\end{Verbatim} +\par\medskip The default is that no count is written to the title bar of the gallery. + \item \texttt{nowrite} You optionally include this key in the list + if the XML has already been written to your source folder; however, if + you change options, or change the key-value pairs of the \cs{image} + commands, you will need to re-write the XML by removing the \texttt{nowrite} + option. + \end{itemize} + \item[\texttt{\#2}] The second parameter, \texttt{}, is a + unique name for the gallery being created with the photos; for + example \texttt{myVacation2010}. The name should follow the + rules of a JavaScript variable. + \item[\texttt{\#3}] The third argument consists of a series of + \cs{image} commands, each command takes three key-value pairs. + \begin{itemize} + \item \texttt{path}: The path to the digital file, the path may be + that to a digital file on your hard drive, or on the Internet. + A digital file may be a \textsf{JPG}, \textsf{PNG}, or \textsf{GIF} file. + \emph{This key is required}. + \item \texttt{caption}: The (short) descriptive string to be + displayed along with the associated photo. This key is optional, + if not present, the filename of the digital file is displayed. See + the optional key-values \texttt{nocaptions} and \texttt{nocaptionstext} of + \cs{fgRmAnnot}. + \item \texttt{online}: Use this key to indicate that the + \texttt{path} key is an \textsf{URL}, and refers to a resource on the + Internet. If this key is not present, it is assumed that path + points to a file on the local hard drive, and Distiller will get + that file and embed it in the PDF. If Distiller does not find the + file, distillation is aborted and a message is written to the + distiller long which suggests that it cannot find the file. + \end{itemize} +\end{itemize} +Below is an example of the \cs{fdgXmlList} used for this document, I've +modified the first two entries by removing the \texttt{online} key, and +replacing \cs{digiOnline} with \cs{digisLocal} to demonstrate how you +reference each type. (The definitions of \cs{digiOnline} and +\cs{digisLocal} appeared earlier.) For this definition below, two files +will be embedded (the first two), all others are online and the gallery +will get them from the Internet. +\begin{Verbatim}[numbers=left,xleftmargin=20pt,fontsize=\small] +\fdgXmlList{myDigis} +{% + \image{path=\digisLocal/Chrysanthemum.jpg, + caption=Jürgen\'s Chrysanthemum} + \image{path=\digisLocal/Desert.jpg,caption=Desert} + \image{path=\digisOnline/Hydrangeas.jpg,caption=Hydrangeas,online} + \image{path=\digisOnline/Jellyfish.jpg,caption=Jellyfish,online} + \image{path=\digisOnline/Koala.jpg,caption=Koala,online} + \image{path=\digisOnline/Lighthouse.jpg,caption=Lighthouse,online} + \image{path=\digisOnline/Penguins.jpg,caption=Penguins,online} + \image{path=\digisOnline/Tulips.jpg,caption=Tulips,online} +} +\end{Verbatim} +One comment is needed, refer to line~(3). I've included my friend, +J\"{u}rgen, name value of the \texttt{caption} key to demonstrate how to +use special latin-1 characters. The u-umlaut (ü) may be entered by your +keyboard, as I have, or by special command \verb!\iso{252}!, +which expands to `\makeatletter\texttt{\fdg@iso{252}}\makeatother'. The +interested user is referred to these two online documents. +\begin{align*} +&\text{\footnotesize\url{http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references}}\\ +&\text{\footnotesize\url{http://www.html-entities.com/}} +\end{align*} +The \verb!\iso{}! command expands to \verb!&#;!, see above +\textsf{URLs} to determine the correct value of the \texttt{} to get +the desired glyph. + +The second comment concerns the single apostrophe (\texttt{'}). The +captions are enclosed in single quotes, so if you want an apostrophe, you +must use the the character entity `\verb!'!', or you can use +\verb!\'!, as I did above. This special command, redefined within a group, +expands to `\verb!'!'. Thus, we can write \verb!Jürgen\'s!, or +\verb!Jürgen's!, or \verb!J\iso{252}rgen's!, etc. If you want to +use an ampersand, use `\verb!&!'. + +OK, that's it for the preamble; on to \cs{fgRmAnnot}! + +\section{In the Body: Create a Gallery with +\texorpdfstring{\protect\cs{fgRmAnnot}}{\CMD{fgRmAnnot}}}\label{fgRmAnnot} + +To create a flash gallery of photos, use the command \cs{fgRmAnnot}, its definition +uses the command \cs{rmAnnot}, which is defined in the \textsf{rmannot} package. +\begin{dCmd*}{.5\linewidth} +\fgRmAnnot[]{} +\end{dCmd*} +\PD +\begin{enumerate} + \item The first (optional) parameter is used to pass the key-value pairs of the + \cs{rmAnnot} command. Additionally, the \texttt{galleryopts} key is + recognized by the \cs{fgRmAnnot} command. The value of the \texttt{galleryopts} key + consists of key-value pairs that customize the gallery. + \begin{itemize} + \item \texttt{gallery}: The value of this key determines the layout of the gallery. + Permissible choices are \texttt{vthumbs1} (vertical thumbnails on the left), + \texttt{hthumbs1} (horizontal thumbnails below digital), and + \texttt{nothumbs1} (no thumbnails, the caption bar is a multiline + text field so longer captions may be displayed). More designs are + possible, as my skill in \textsf{Flash Professional Pro CS5} increases. The default is + \texttt{vthumbs1}. + \item \texttt{trans}: This key determines the transition effects. + Possible values are \texttt{Blinds}, \texttt{Fade}, + \texttt{Fly}, \texttt{Iris}, \texttt{Photo}, + \texttt{PixelDissolve}, \texttt{Rotate}, \texttt{Squeeze}, + \texttt{Wipe}, \texttt{Zoom}, \texttt{Random}. The default is + \texttt{Random}. + \item \texttt{transOn}: A Boolean switch, which if \texttt{true} (the + default), transition effects are used to display the digital + images. If \texttt{transOn=false}, no transitions are used. + \item \texttt{auto}: If true, the gallery will automatically + display the list of photos at a regular interval. The user can + stop the automatic display by pressing the pause button. The + default is \texttt{auto=true}. + \item \texttt{delay}: The delay, in seconds, between the automatic display of + photos. The default is 6 (seconds). + \item \texttt{captionalign} The alignment of the text in the caption bar. Possible choces + are \texttt{left} (the default), \texttt{right}, and + \texttt{center}. This key-value pair is ignored for + \texttt{gallery=nothumbs1}. + \item \texttt{nocaptions}: A Boolean key, which if \texttt{true}, + the caption strings are not displayed in the caption bar. + \item \texttt{nocaptionstext}: If the \texttt{nocaptions} key is + passed, you can populate the caption bar with a static string. + Thus, \texttt{nocaptionstext=Hi Mom!} displays the string `Hi Mom' in + the caption bar for each and every photo. + \end{itemize} + + \item[] See the manual for the \textsf{rmannot} package for more details on the + key-value pairs that can be passed through the optional first + parameter. + + \item The \texttt{} argument matches the \texttt{} + argument of a \cs{fdgXmlList} declared in the preamble. +\end{enumerate} + +\goodbreak + +The example that appeared earlier in this manual has code + +\begin{Verbatim}[numbers=left,xleftmargin=20pt,fontsize=\small] +\resizebox{.9\linewidth}{!} +{% + \fgRmAnnot[% + galleryopts={gallery=vthumbs1,auto=false,captionalign=center}, + posternote={Flash Digital Gallery},enabled=pageopen + ]{myDigis} +} +\end{Verbatim} +Line~(1) shows how the gallery may be resized used using \cs{resizebox} +(or by using \cs{scalebox}). In line~(3) we have the \cs{fgRmAnnot} +command that creates the digital gallery. In line~(4), we specify some of the +\texttt{galleryopts} key-value pairs. The other key-value pairs (outside +the scope of \texttt{galleryopts} are \cs{rmAnnot} key-value pairs. +The second argument, the \texttt{} argument is shown in line~(6). +This name matches the name declared earlier in the preamble in an +\cs{fdgXmlList} command. + +\section{Sample files} + +The following are the sample files shipped with \textsf{fldigigal}: +\begin{itemize} + \item \texttt{fdg\_demo.tex} lays out the basic structure for creating + a \emph{{\AcroTeX} Flash Digital Gallery}. You can experiment with + this file by changing the options. + \item \texttt{fdg\_demo\_fit.tex} demonstrates how to have a one-page + gallery whose size matches the size of the page. + \item \texttt{fdg\_min.tex} uses the minimum set of packages to + generate an \textsl{{\AcroTeX} Flash Digital Gallery}. +\end{itemize} +Advanced examples may appear, in time, at the \href{http://www.math.uakron.edu/~dpstory/aebblog.html}{AeB Blog site}. + + +\bigskip + +That's all for now, I simply must get back to my retirement. {\dps} + +\end{document} diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/digis/Chrysanthemum.jpg b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Chrysanthemum.jpg new file mode 100644 index 0000000000..757c2a628d Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Chrysanthemum.jpg differ diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/digis/Desert.jpg b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Desert.jpg new file mode 100644 index 0000000000..0b88c91336 Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Desert.jpg differ diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/digis/Hydrangeas.jpg b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Hydrangeas.jpg new file mode 100644 index 0000000000..a587c9656d Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Hydrangeas.jpg differ diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/digis/Jellyfish.jpg b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Jellyfish.jpg new file mode 100644 index 0000000000..fa4fd41106 Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Jellyfish.jpg differ diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/digis/Koala.jpg b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Koala.jpg new file mode 100644 index 0000000000..78704a099b Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Koala.jpg differ diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/digis/Lighthouse.jpg b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Lighthouse.jpg new file mode 100644 index 0000000000..8277c0dc42 Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Lighthouse.jpg differ diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/digis/Penguins.jpg b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Penguins.jpg new file mode 100644 index 0000000000..030ab8a685 Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Penguins.jpg differ diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/digis/Tulips.jpg b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Tulips.jpg new file mode 100644 index 0000000000..54c51eb6a8 Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/examples/digis/Tulips.jpg differ diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/fdg_demo.tex b/obsolete/macros/latex/contrib/fldigigal/examples/fdg_demo.tex new file mode 100644 index 0000000000..6b2251f1d2 --- /dev/null +++ b/obsolete/macros/latex/contrib/fldigigal/examples/fdg_demo.tex @@ -0,0 +1,59 @@ +\documentclass{article} +\usepackage[% + web={pro,tight,usesf,designiv},eforms, + graphicxsp={showembeds} +]{aeb_pro} +\usepackage{rmannot} +\usepackage{fldigigal} + +\DeclareDocInfo +{ + title={An \texorpdfstring{\AcroTeX}{AcroTeX} Flash Digital Gallery}, + author=D. P. Story, + university=From the Desktop of One D. P. Story, + email=dpstory@acrotex.net, + subject={An example of the AcroTeX Flash Digital Gallery}, + keywords={AcroTeX, Adobe Flash, rmannot, fldigigal package}, + talksite=\url{http://www.acrotex.net}, + talkdate={\today}, + copyrightStatus=True, + copyrightNotice={Copyright (C) 2010, D. P. Story}, + copyrightInfoURL=http://www.acrotex.net +} +\talkdateLabel{Published:} + +\def\AcroTeX{Acro\!\TeX} + +\definePath{\pathToSource}{% + C:/Users/Public/Documents/My TeX Files/tex/% + latex/aeb/aebpro/fldigigal/examples} +\definePath{\digisOnline}{% + http://www.math.uakron.edu/~dpstory/photos/pa_demo} +\definePath{\digisLocal}{\pathToSource/digis} + +\fdgXmlList[showcount]{myDigis} +{% + \image{path=\digisOnline/Chrysanthemum.jpg, + caption=Jürgen\'s Chrysanthemum,online} + \image{path=\digisOnline/Desert.jpg,caption=Desert,online} + \image{path=\digisOnline/Hydrangeas.jpg,caption=Hydrangeas,online} + \image{path=\digisOnline/Jellyfish.jpg,caption=Jellyfish,online} + \image{path=\digisOnline/Koala.jpg,caption=Koala,online} + \image{path=\digisOnline/Lighthouse.jpg,caption=Lighthouse,online} + \image{path=\digisOnline/Penguins.jpg,caption=Penguins,online} + \image{path=\digisOnline/Tulips.jpg,caption=Tulips,online} +} + +\parindent=0pt\parskip6pt\pagestyle{empty} + +\begin{document} + +\begin{center} +\resizebox{.9\linewidth}{!} +{% + \fgRmAnnot[galleryopts={gallery=vthumbs1,captionalign=center}, + posternote={Flash Digital Gallery},enabled=pageopen + ]{myDigis} +} +\end{center} +\end{document} diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/fdg_demo_fit.tex b/obsolete/macros/latex/contrib/fldigigal/examples/fdg_demo_fit.tex new file mode 100644 index 0000000000..48e417c882 --- /dev/null +++ b/obsolete/macros/latex/contrib/fldigigal/examples/fdg_demo_fit.tex @@ -0,0 +1,60 @@ +\documentclass{article} +\usepackage[% + web={pro,tight,usesf}, + eforms,graphicxsp={showembeds} +]{aeb_pro} +\usepackage{rmannot} +\usepackage{fldigigal} + +\margins{0in}{0in}{0in}{0in} % left,right,top, bottom +\screensize{240bp}{320bp} % height, width + + +\DeclareDocInfo +{ + title={An \texorpdfstring{\AcroTeX}{AcroTeX} Flash Digital Gallery}, + author=D. P. Story, + university=From the Desktop of One D. P. Story, + email=dpstory@acrotex.net, + subject={An example of the AcroTeX Flash Digital Gallery}, + keywords={AcroTeX, Adobe Flash, rmannot, fldigigal package}, + talksite=\url{http://www.acrotex.net}, + talkdate={\today}, + copyrightStatus=True, + copyrightNotice={Copyright (C) 2010, D. P. Story}, + copyrightInfoURL=http://www.acrotex.net +} +\talkdateLabel{Published:} + +\def\AcroTeX{Acro\!\TeX} + +\definePath{\pathToSource}{% + C:/Users/Public/Documents/My TeX Files/tex/% + latex/aeb/aebpro/fldigigal/examples} +\definePath{\digisOnline}{% + http://www.math.uakron.edu/~dpstory/photos/pa_demo} +\definePath{\digisLocal}{\pathToSource/digis} + +\fdgXmlList{myDigis} +{% + \image{path=\digisOnline/Chrysanthemum.jpg, + caption=J\iso{252}rgen\'s Chrysanthemum,online} + \image{path=\digisOnline/Desert.jpg,caption=Desert,online} + \image{path=\digisOnline/Hydrangeas.jpg,caption=Hydrangeas,online} + \image{path=\digisOnline/Jellyfish.jpg,caption=Jellyfish,online} + \image{path=\digisOnline/Koala.jpg,caption=Koala,online} + \image{path=\digisOnline/Lighthouse.jpg,caption=Lighthouse,online} + \image{path=\digisOnline/Penguins.jpg,caption=Penguins,online} + \image{path=\digisOnline/Tulips.jpg,caption=Tulips,online} +} + +\parindent=0pt\parskip0pt\pagestyle{empty} + +\begin{document} + +\fgRmAnnot[% + galleryopts={gallery=vthumbs1,auto=false}, + posternote={Flash Digital Gallery},enabled=pageopen +]{myDigis} + +\end{document} diff --git a/obsolete/macros/latex/contrib/fldigigal/examples/fdg_min.tex b/obsolete/macros/latex/contrib/fldigigal/examples/fdg_min.tex new file mode 100644 index 0000000000..1c5e6ba59c --- /dev/null +++ b/obsolete/macros/latex/contrib/fldigigal/examples/fdg_min.tex @@ -0,0 +1,63 @@ +\documentclass{article} +\usepackage[showembeds]{graphicxsp} +\usepackage{eforms} +\usepackage{rmannot} +\usepackage{fldigigal} + +\definePath{\pathToSource}{% + C:/Users/Public/Documents/My TeX Files/tex/% + latex/aeb/aebpro/fldigigal/examples} +\definePath{\digisOnline}{% + http://www.math.uakron.edu/~dpstory/photos/pa_demo} +\definePath{\digisLocal}{\pathToSource/digis} + +\fdgXmlList[showcount]{myDigis} +{% + \image{path=\digisOnline/Chrysanthemum.jpg, + caption=Jürgen\'s Chrysanthemum,online} + \image{path=\digisOnline/Desert.jpg,caption=Desert,online} + \image{path=\digisOnline/Hydrangeas.jpg,caption=Hydrangeas,online} + \image{path=\digisOnline/Jellyfish.jpg,caption=Jellyfish,online} + \image{path=\digisOnline/Koala.jpg,caption=Koala,online} + \image{path=\digisOnline/Lighthouse.jpg,caption=Lighthouse,online} + \image{path=\digisOnline/Penguins.jpg,caption=Penguins,online} + \image{path=\digisOnline/Tulips.jpg,caption=Tulips,online} +} + +\parindent=0pt\parskip6pt\pagestyle{empty} + +\begin{document} + +This file shows the minimal requirement for the \textsf{fldigigal} +package: The \textsf{xkeyval} and \textsf{rmannot} packages are required by the +package; the \textsf{rmannot} package requires, in turn, the \textsf{graphicxsp} and \textsf{eforms} +packages. + +The preamble says, +\begin{verbatim} + \documentclass{article} + \usepackage[showembeds]{graphicxsp} + \usepackage{eforms} + \usepackage{rmannot} + \usepackage{fldigigal} +\end{verbatim} +Actually, this can be shortened to read +\begin{verbatim} + \documentclass{article} + \usepackage[showembeds]{graphicxsp} + \usepackage{eforms} +% \usepackage{rmannot} % <- rmannot may be removed + \usepackage{fldigigal} +\end{verbatim} +because the \textsf{rmannot} package is input by \textsf{fldigigal}. + +Here is the Flash Digital Gallery. +\begin{center} +\resizebox{\linewidth}{!} +{% + \fgRmAnnot[galleryopts={gallery=vthumbs1,captionalign=center}, + posternote={Flash Digital Gallery},enabled=pageopen + ]{myDigis} +} +\end{center} +\end{document} diff --git a/obsolete/macros/latex/contrib/fldigigal/fldigigal.cfg b/obsolete/macros/latex/contrib/fldigigal/fldigigal.cfg new file mode 100644 index 0000000000..8c5ba81602 --- /dev/null +++ b/obsolete/macros/latex/contrib/fldigigal/fldigigal.cfg @@ -0,0 +1,7 @@ +% fldigigal config file. Delete the \endinput below and replace the path +% provided with the path to the swf folder of your fldigigal installation. +% This path is used to locate the fldigigal SWF files. +\endinput +\renewcommand{\fdgFolder}{% + C:/Users/Public/Documents/My TeX Files/tex/latex/aeb/aebpro/fldigigal/swf} + diff --git a/obsolete/macros/latex/contrib/fldigigal/fldigigal.dtx b/obsolete/macros/latex/contrib/fldigigal/fldigigal.dtx new file mode 100644 index 0000000000..9c89257aad --- /dev/null +++ b/obsolete/macros/latex/contrib/fldigigal/fldigigal.dtx @@ -0,0 +1,471 @@ +%\iffalse +%<*copyright> +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% fldigigal.sty package, %% +%% Copyright (C) 2010--2020 %% +%% dpstory@uakron.edu %% +%% %% +%% This program can 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 (at your option) any later version. %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +%\NeedsTeXFormat{LaTeX2e}[1997/12/01] +%\ProvidesPackage{fldigigal} +% [2020/08/08 v0.6 fldigigal: Create a Flash Digital Gallery, Acrobat Distiller only (dps)] +%<*driver> +\documentclass{ltxdoc} +\usepackage[colorlinks,hyperindex]{hyperref} +%\pdfstringdefDisableCommands{\let\\\textbackslash} +%\EnableCrossrefs \CodelineIndex +\begin{document} +\def\CMD#1{\textbackslash#1} + \GetFileInfo{fldigigal.sty} + \title{\textsf{fldigigal}: Package for creating a Flash Digital Gallery} + \author{D. P. Story\\ + Email: \texttt{dpstory@uakron.edu}} + \date{processed \today} + \maketitle + \tableofcontents + \let\Email\texttt + \DocInput{fldigigal.dtx} + \PrintIndex +\end{document} +% +% \fi +% \MakeShortVerb{|} +% \StopEventually{} +% +% \DoNotIndex{\def,\edef,\gdef,\xdef,\global,\long,\let} +% \DoNotIndex{\expandafter,\string,\the,\ifx,\else,\fi} +% \DoNotIndex{\csname,\endcsname,\relax,\begingroup,\endgroup} +% \DoNotIndex{\DeclareTextCommand,\DeclareTextCompositeCommand} +% \DoNotIndex{\space,\@empty,\special} +% +% \begin{macrocode} +%<*package> +% \end{macrocode} +% \paragraph*{Required Packages:} \textsf{xkeyval} and \textsf{rmannot} +% \begin{macrocode} +\RequirePackage{xkeyval} +% \end{macrocode} +% The \textsf{rmannot} package requires the \textsf{graphicxsp} and \textsf{eforms} packages. +% \begin{macrocode} +\RequirePackage{rmannot}[2010/12/22] +% \end{macrocode} +% +% \section{Introduction} +% +% \changes{v0.6}{2020/08/08}{Package author declares this package is obsolete as of December 2020, +% this is the date Adobe withdraws support for Flash Player (FLV,SWF, etc).} +% +% It has long been a goal of mine to create a package for creating a digital slide show of +% of (family) pictures. Recently, I purchased \textsf{Adobe Flash Professional Pro, CS5} and +% with the distribution where was a template for doing just that, making a flash slide show. +% I adapted it for use with PDF, adding many options that could be passed to the SWF file +% to customize the presentation, and wrote this package, which I call \textsf{fldigigal} +% (\textsf{\underbar{fl}ash \underbar{digi}tal \underbar{gal}lery}) +% +% \section{History} +%\begin{itemize} +% \item \texttt{(2010/12/30 v0.5e)} Removed the custom option for \texttt{galleryopts} +% \item \texttt{(2010/12/29 v0.5d)} Added a new demo file \texttt{fdg\_min.tex} which uses only +% minimal required packages. +% \item \texttt{(2010/12/29 v0.5c)} the \texttt{auto} option did not have a default value, fixed +% \item \texttt{(2010/12/25 v0.5b)} version date referenced for the \textsf{rmannot} package was +% incorrect, should read 2010/12/22. +% \item \texttt{(2010/12/25 v0.5a)} remove some spurious spaces, and changed the size +% of \cs{fgRmAnnot} from \verb!640bp x 480bp! to \verb!320bp x 240bp! +% \item \texttt{(2010/12/23 v0.5)} First publication +%\end{itemize} +% \section{Implementation} +% This package offers the \LaTeX/Distiller user the ability to create +% \emph{Flash Photo Galleries}. There are several photo gallery layouts +% to select from, and some dynamic options that can be specified. The +% digital photographs (\textsf{JPG}, \textsf{PNG}, or \textsf{GIF}) may +% be embedded in the PDF document, or may reside online and referenced by +% an \textsf{URL}. +% +% \begin{macro}{\fdgFolder} The path to the folder containing +% the the \textsf{SWF} files of this distribution. This path is set through +% the \texttt{fldigigal.cfg} file. +% \begin{macrocode} +\newcommand{\fdgFolder}{C:/Users/Public/Documents/My TeX Files/% + tex/latex/aeb/aebpro/fldigigal/swf} +% \end{macrocode} +% \end{macro} +% We input the file \texttt{fldigigal.cfg} which should contain a re-definition +% of the command \cs{fdgFolder}, the path to the Flash Digital Gallery \textsf{SWFs}. +% \begin{macrocode} +\InputIfFileExists{fldigigal.cfg}{}{} +% \end{macrocode} +% \subsection{Main Code} +% In this section we define the \cs{fdgXmlList} and \cs{fgRmAnnot}, and their +% supporting cast of characters. +% \begin{macrocode} +% \end{macrocode} +% An internal command for getting the rma object based on the current page and the +% name of the annot. +% \begin{macrocode} +\def\fdg@namegdef#1{\expandafter\gdef\csname #1\endcsname} +\def\fdg@namexdef#1{\expandafter\xdef\csname #1\endcsname} +% \end{macrocode} +% We define \cs{fdg@iso}, which, within the \cs{image} command, we declare that +% \verb!\let\iso\fdg@iso!, defining the \cs{iso} command to enter special characters +% in the \texttt{caption} attribute. +% \begin{macrocode} +{\catcode`\#=12 \catcode`\&=12 \catcode`\!=6 + \gdef\fdg@iso!1{&#!1;} +} +% \end{macrocode} +% \begin{macro}{\fdgXmlList} +% The \cs{fdgXmlList} command describes the photos to be displayed in the +% digital gallery. Here is an example of the structure: +%\begin{verbatim} +%\fdgXmlList[showcount]{myDigis}{% +% \image{path=\myPhotosLocal/Chrysanthemum.jpg,caption=Chrysanthemum} +% \image{path=\myPhotosLocal/Desert.jpg,caption=Desert} +% \image{path=\myPhotosOnline/Hydrangeas.jpg,caption=Hydrangeas,online} +% \image{path=\myPhotosOnline/Jellyfish.jpg,caption=Jellyfish,online} +% \image{path=\myPhotosOnline/Koala.jpg,caption=Koala,online} +% \image{path=\myPhotosOnline/Lighthouse.jpg,caption=Lighthouse,online} +% \image{path=\myPhotosOnline/Penguins.jpg,caption=Penguins,online} +% \image{path=\myPhotosOnline/Tulips.jpg,caption=Tulips,online} +%} +%\end{verbatim} +% The first optional argument takes any optional arguments; at this time, the +% only option is \texttt{showcount}, where the photo number and total number of +% photos is displayed, e.g. \texttt{(2 of 8)}. The default is not to show the count. +% The second parameter is the unique name of the gallery. The third parameter consists +% of any number of image specifications. The \cs{image} command has three properties: +% \texttt{path}, \texttt{caption}, and \texttt{online}. These are describe +% in more detail below. +% \begin{macro}{path} The absolute path (url) to the photo; the path may be on a local +% hard drive, or on the Internet. Paths may (should) be defined using the +% the \cs{definePath}, defined in the \texttt{eforms} package. +%\begin{verbatim} +% \definePath{\myPhotosOnline}{% +% http://www.math.uakron.edu/~dpstory/photos/pa_demo} +% \definePath{\myPhotosLocal}{% +% C:/Users/Public/Pictures/Sample Pictures} +%\end{verbatim} +% \begin{macrocode} +\define@key{fdgxml}{path}[]{\def\fdg@pa@path{#1}} +% \end{macrocode} +% \end{macro} +% \DescribeMacro{caption} A (short) string that describes the photo. If the +% \texttt{caption} key is not present, the filename of the digital photo is used. +% \begin{macrocode} +\define@key{fdgxml}{caption}[]{\def\fdg@pa@caption{#1}} +% \end{macrocode} +% \DescribeMacro{online} A Boolean key, which if true, signals that the path +% to the photo is on the Internet (\texttt{http://}). If the \texttt{online} key is not +% present, the path is assumed to be local, and the photo will be embedded in the PDF. +% \begin{macrocode} +\define@boolkey{fdgxml}{online}[true]{} +% \end{macrocode} +% We set the global defaults of these key-value pairs. +% \begin{macrocode} +\setkeys{fdgxml}{path,caption,online=false} +% \end{macrocode} +% We use this counter to count the digis as they are defined by the \cs{image} +% macro. +% \begin{macrocode} +\newcount\cntdigis +% \end{macrocode} +% \DescribeMacro{\image} There are two definitions of the \cs{image} command: +% \cs{fdg@cnt@images} and \cs{fdg@image}.\par\medskip\noindent +% \cs{fdg@cnt@images} counts the number of images. +% \begin{macrocode} +\def\fdg@cnt@images#1{\advance\cntdigis1 } +% \end{macrocode} +% \cs{fdg@image} does all the work in writing the photo information to an XML file. +% \begin{macrocode} +\def\fdg@image#1{\begingroup + \let\Name\rma@resource\let\urlName\rma@urlresource + \setkeys{fdgxml}{#1}% + \global\advance\cntdigis1 +% \end{macrocode} +% We expand the internal name of the digital resource. The name has the form +% \texttt{Im()}. +% \begin{macrocode} + \edef\@digiImgName{Im\the\cntdigis(\fdg@CurrDigiName)}% +% \end{macrocode} +% Use \cs{saveNamedPath} to save this name and path. +% \begin{macrocode} + \saveNamedPath{\@digiImgName}{\fdg@pa@path}% +% \end{macrocode} +% Get the basename and extension using the \cs{Name} command. +% \begin{macrocode} + \edef\fdg@NamedExp{\expandafter\Name\expandafter{\@digiImgName}}% +% \end{macrocode} +% If the caption is empty, use the \texttt{basename.ext} +% \begin{macrocode} + \ifx\fdg@pa@caption\@empty\def\fdg@pa@caption{\fdg@NamedExp}\fi +% \end{macrocode} +% If \texttt{online} is true, write the full url path to the xml using +% the \cs{urlName} macro. +% \begin{macrocode} + \ifKV@fdgxml@online + \edef\fdg@urlNamedExp{% + \expandafter\urlName\expandafter{\@digiImgName}}% + \fdg@IWVO{\space\space\space\space + % + \fdg@urlNamedExp + }% + \else +% \end{macrocode} +% If online is not listed, or is set to \texttt{false} we embed. We +% accumulate all resources that are embedded in \cs{fdg@embededResources} +% \begin{macrocode} + \toks0=\expandafter{\fdg@embededResources}% + \ifx\fdg@embededResources\@empty + \xdef\fdg@embededResources{\@digiImgName}\else + \xdef\fdg@embededResources{\the\toks0,\@digiImgName}\fi + \fdg@IWVO{\space\space\space\space + % + \fdg@NamedExp + }% + \fi +\endgroup} +% \end{macrocode} +% Convenience macro for writing to the XML file +% \begin{macrocode} +\def\fdg@IWVO{\immediate\write\verbatim@out} +% \end{macrocode} +% A (internal) interface to the digi resources. The one argument +% is the name of the gallery these digis are associated with. +% \begin{macrocode} +\def\embededResources#1{\csname #1ERs\endcsname} +% \end{macrocode} +% The internal name of the xmlList. The argument is the name of the gallery. +% \begin{macrocode} +\def\xmlListiv#1{xmlList4#1} +% \end{macrocode} +% \begin{macro}{\fdgcntOf} +% The internal command for writing the photo count is \cs{fdg@cntOf}. Initially, +% we \cs{let} \cs{fdg@cntOf} to \cs{@gobble} +% \begin{macrocode} +\let\fdg@cntOf\@gobble +% \end{macrocode} +% \begin{macrocode} +\newcommand{\fdgcntOf}[1]{\space(#1 of \fdg@numDigis)} +% \end{macrocode} +% \end{macro} +% The options of \cs{fdgXmlList}. If \texttt{true} the photo number is displayed, if \texttt{false}, +% the default, no photo number is displayed.\par\medskip\noindent +% \DescribeMacro{showcount} When the \texttt{showcount} option is specified, we \cs{let} \cs{fdg@cntOf} +% to \cs{fdgcntOf}. The command may be redefined. The first argument is the photo +% number, the command \cs{fdg@numDigis} expands to the total number of photos. +% \begin{macrocode} +\define@boolkey{fdgXML}{showcount}[true]{% + \ifKV@fdgXML@showcount\let\fdg@cntOf\fdgcntOf\else + \let\fdg@cntOf\@gobble\fi +} +% \end{macrocode} +%\DescribeMacro{nowrite} When we set this switch, we \cs{let} +% \cs{fdg@IWVO} to \cs{@gobble}, and do not open a \cs{newwrite} stream. +% \begin{macrocode} +\define@boolkey{fdgXML}{nowrite}[true]{} +% \end{macrocode} +% Set the defaults for he \cs{fdgXML} family. +% \begin{macrocode} +\setkeys{fdgXML}{showcount=false,nowrite=false} +% \end{macrocode} +% Finally, we have the definition of \cs{fdgXmlList}. +% \begin{macrocode} +\newcommand{\fdgXmlList}[3][]{% +\begingroup + \setkeys{fdgXML}{#1}% + \ifKV@fdgXML@nowrite\let\fdg@IWVO\@gobble\fi + \cntdigis=0 \gdef\fdg@embededResources{}% + \ifKV@fdgXML@nowrite\else + \newwrite \fdg@writexmllist + \immediate\openout \fdg@writexmllist=#2.xml + \let\verbatim@out\fdg@writexmllist + \fi +% \end{macrocode} +% Open he photos xml file and write the top level +% \begin{macrocode} + \fdg@IWVO{}% + \@ifundefined{#2@fdgdigis}{% + \fdg@namegdef{#2@fdgdigis}{#2}% + \def\fdg@CurrDigiName{#2}% + }{\PackageError{fldigigal}{Name already chosen}}% +% \end{macrocode} +% The \texttt{\#3} parameter contains the \cs{image} listing. +% we first count the number of images using \cs{fdg@cnt@images}. +% \begin{macrocode} + \let\image\fdg@cnt@images#3% + \edef\fdg@numDigis{\the\cntdigis}% +% \end{macrocode} +% Now, we repeat, but this time with \cs{fdg@image}. +% \begin{macrocode} + \def\'{'}\let\iso\fdg@iso + \cntdigis=0 \let\image\fdg@image#3% +% \end{macrocode} +% Close out XML List +% \begin{macrocode} + \fdg@IWVO{}% + \ifKV@fdgXML@nowrite\else + \immediate\closeout \fdg@writexmllist + \fi +\endgroup +% \end{macrocode} +% Save the path to the newly created xml list under the name +% \texttt{xmlList4} +% \begin{macrocode} + \saveNamedPath{xmlList4#2}{\pathToSource/#2.xml}% +% \end{macrocode} +% Define a command to save the embedded resources. +% \begin{macrocode} + \fdg@namexdef{#2ERs}{\ifx\fdg@embededResources\@empty\else,\fi + \fdg@embededResources}% +} +\@onlypreamble{\fdgXmlList} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\fgRmannot} +% This is the command that actually places the SWF. It uses the \cs{rmAnnot} command +% from the \textsf{rmannot} package. +% \paragraph*{Define Key-Value Pairs.} We declare two keys for \cs{fgRmannot}: \texttt{gallery} and \texttt{flashvars}. +% We use gallery to select the gallery (layout), and flashvars to set some basic +% parameters of the SWF. +% \begin{macrocode} +\define@key{fgRmAnnot}{flashvars}[]{\def\fgRmAnnot@flashvars{}} +\let\fgRmAnnot@flashvars\@empty +\define@key{fgRmAnnot}{galleryopts}[]{\def\fgRmAnnot@galleryopts{#1}} +% \end{macrocode} +% The `\cs{saveNamePath}' definitions for the three supported galleries. +% I have a custom gallery for no apparent reason (actually, if I want to +% create and test a new gallery. +% \begin{macrocode} +\saveNamedPath{fdg_vt1}{\fdgFolder/fdg_vt1.swf} +\saveNamedPath{fdg_ht1}{\fdgFolder/fdg_ht1.swf} +\saveNamedPath{fdg_nt1}{\fdgFolder/fdg_nt1.swf} +% \end{macrocode} +% \paragraph*{fgGalleryOpts keys.}We now define the key value pairs for the \texttt{fgGalleryOpts} family. +% These are the keys as listed by \texttt{galleryopts}. +% +% \DescribeMacro{gallery} At this time, we offer four choices for a design, more to follow as I learn +% more about Flash Pro CS5. +% \begin{macrocode} +\define@choicekey+{fgGalleryOpts}{gallery}[\val\nr]% + {vthumbs1,hthumbs1,nothumbs1,custom}[vthumbs1]{% + \ifcase\nr\relax + \def\fgGalleryOpts@gallery{fdg_vt1}\or + \def\fgGalleryOpts@gallery{fdg_ht1}\or + \def\fgGalleryOpts@gallery{fdg_nt1}\or + \def\fgGalleryOpts@gallery{custom}\fi +}{} +% \end{macrocode} +% \DescribeMacro{trans} Some standard transitions for the photos. +% \begin{macrocode} +\define@choicekey+{fgGalleryOpts}{trans}[\val\nr]% + {Blinds,Fade,Fly,Iris,Photo,PixelDissolve,Rotate,% + Squeeze,Wipe,Zoom,Random}[Random]{% + \edef\fgGalleryOpts@trans{\val}% +}{} +\let\fgGalleryOpts@trans\@empty +% \end{macrocode} +% \DescribeMacro{delay} The amount of delay between the automatic display of +% a new photo. The default is 6 (seconds) +% \begin{macrocode} +\define@key{fgGalleryOpts}{delay}[6]{\def\fgGalleryOpts@delay{#1}} +\let\fgGalleryOpts@delay\@empty +% \end{macrocode} +% \DescribeMacro{auto} A Boolean switch, which if \texttt{true}, the photos are displayed +% automatically, the delay is determined by the \texttt{delay} key. The default is \texttt{auto=true}. +% \begin{macrocode} +\define@boolkey{fgGalleryOpts}{auto}[true]{% + \edef\fgGalleryOpts@auto{\ifKV@fgGalleryOpts@auto + true\else false\fi}} +% \end{macrocode} +% \DescribeMacro{transOn} A Boolean switch, which if \texttt{true}, a transition effect is used to transition +% between photos. +% \begin{macrocode} +\define@boolkey{fgGalleryOpts}{transOn}[true]{% + \edef\fgGalleryOpts@transOn{\ifKV@fgGalleryOpts@transOn + true\else false\fi}} +% \end{macrocode} +% \DescribeMacro{captionalign} For all galleries except for \texttt{fdg\_nt1} we can align +% the position of the caption: \texttt{left}, \texttt{right}, or \texttt{center}. The default is \texttt{left}. +% \begin{macrocode} +\define@choicekey+{fgGalleryOpts}{captionalign}[\val\nr]% + {left,right,center}[left]{% + \edef\fgGalleryOpts@captionalign{\val}% +}{} +\let\fgGalleryOpts@captionalign\@empty +% \end{macrocode} +% \DescribeMacro{nocaptions} A Boolean switch, which if \texttt{true}, no caption is written the the caption bar. +% The default is \texttt{false}, captions are written. +% \begin{macrocode} +\define@boolkey{fgGalleryOpts}{nocaptions}[true]{% + \edef\fgGalleryOpts@nocaptions{\ifKV@fgGalleryOpts@nocaptions + true\else false\fi}} +% \end{macrocode} +% \DescribeMacro{nocaptionstext} If \texttt{nocaptions} is set to \texttt{true}, the value of this +% key is used as the caption for all the photos. If \texttt{nocaptionstext} is not listed, or has not value, the empty +% string is used. +% \begin{macrocode} +\define@key{fgGalleryOpts}{nocaptionstext}[]{% + \def\fgGalleryOpts@nocaptionstext{#1}} +% \end{macrocode} +% Global defaults for the \texttt{fgGalleryOpts} family. +% \begin{macrocode} +\setkeys{fgGalleryOpts}{gallery,transOn,auto=true,% + nocaptions=false,nocaptionstext} +% \end{macrocode} +% \DescribeMacro{\fgRmAnnot} Now for the definition of \cs{fgRmAnnot}. +% \begin{macrocode} +\newcommand{\fgRmAnnot}[2][]{\begingroup + \@ifundefined{#2@fdgdigis}% + {\PackageError{fldigigal}{The name `#2' is not defined + for\MessageBreak this \string\fgRmAnnot}{Gallery names + are defined using \string\fdgXmlList}}% +% \end{macrocode} +% We get the key-value pairs for the \texttt{fgRmAnnot} family, then +% within the \texttt{galleryopts} key, we process those options as well. +% \begin{macrocode} + \setkeys*{fgRmAnnot}{#1}\edef\XKV@rm@saved{\XKV@rm}% + \edef\tmp@setkeysEx{\noexpand\setkeys{fgGalleryOpts}% + {\fgRmAnnot@galleryopts}}\tmp@setkeysEx +% \end{macrocode} +% We build part of the \texttt{flashvars} that correspond to this application. +% The macro \cs{merged@flashvars} merges the flash variables entered directly +% by the document author to control the \cs{rmAnnot}. +% \begin{macrocode} + \edef\merged@flashvars{\fgRmAnnot@flashvars% + \ifKV@fgGalleryOpts@auto\else&% + auto=\fgGalleryOpts@auto\fi + \ifx\fgGalleryOpts@delay\@empty\else&% + delay=\fgGalleryOpts@delay\fi + \ifx\fgGalleryOpts@trans\@empty\else&% + transitionType=\fgGalleryOpts@trans\fi + \ifKV@fgGalleryOpts@transOn\else&% + transitionOn=\fgGalleryOpts@transOn\fi + \ifx\fgGalleryOpts@captionalign\@empty\else&% + captionalign=\fgGalleryOpts@captionalign\fi + \ifKV@fgGalleryOpts@nocaptions&% + nocaptions=\fgGalleryOpts@nocaptions% + \ifx\gGalleryOpts@nocaptionstext\@empty\else&% + nocaptionstext=\fgGalleryOpts@nocaptionstext\fi\fi + }% +% \end{macrocode} +% OK, now we create an \cs{rmAnnot} with the desired parameters. +% We populate the \texttt{flashvars} key. +% \begin{macrocode} + \rmAnnot[\XKV@rm@saved, + flashvars={xmlPath=\Name{\xmlListiv{#2}}\merged@flashvars},% + resources={\xmlListiv{#2}\embededResources{#2}}% + ]{320bp}{240bp}{\fgGalleryOpts@gallery}% + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +% +% \end{macrocode} +\endinput diff --git a/obsolete/macros/latex/contrib/fldigigal/fldigigal.ins b/obsolete/macros/latex/contrib/fldigigal/fldigigal.ins new file mode 100644 index 0000000000..caeb7d5b5c --- /dev/null +++ b/obsolete/macros/latex/contrib/fldigigal/fldigigal.ins @@ -0,0 +1,60 @@ +%% +%% This file will generate fast loadable files and documentation +%% driver files from the doc files in this package when run through +%% LaTeX or TeX. +%% +%% Copyright 1999-2006 D. P. Story +%% +%% This file is part of the `AcroTeX eDucation Bundle'. +%% ------------------------------------------- +%% +%% It may be distributed under the conditions of the LaTeX Project Public +%% License, either version 1.2 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.2 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% --------------- start of docstrip commands ------------------ +%% +\def\filedate{2010/12/18} +\def\batchfile{fldigigal.ins} + +\input docstrip +\ifx\generate\undefined + \Msg{**********************************************} + \Msg{*} + \Msg{* This installation requires docstrip} + \Msg{* version 2.4 or later.} + \Msg{*} + \Msg{* An older version of docstrip has been input} + \Msg{*} + \Msg{**********************************************} + \errhelp{Move or rename old docstrip.tex and get a newer one.} + \errmessage{Old docstrip in input path} + \batchmode + \csname @@end\endcsname\end +\fi + +\keepsilent +\askforoverwritefalse +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\preamble +\endpreamble + +\generate +{% + \file{fldigigal.sty}{\from{fldigigal.dtx}{copyright,package}} +} + +\Msg{***************************************************************} +\Msg{*} +\Msg{* \space To finish the installation you have to copy the files } +\Msg{*} +\Msg{* \space *.sty, *.cfg and *.def into a directory searched by TeX} +\Msg{*} +\Msg{***************************************************************} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\endinput diff --git a/obsolete/macros/latex/contrib/fldigigal/swf/fdg_ht1.swf b/obsolete/macros/latex/contrib/fldigigal/swf/fdg_ht1.swf new file mode 100644 index 0000000000..baf098f090 Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/swf/fdg_ht1.swf differ diff --git a/obsolete/macros/latex/contrib/fldigigal/swf/fdg_nt1.swf b/obsolete/macros/latex/contrib/fldigigal/swf/fdg_nt1.swf new file mode 100644 index 0000000000..a081a07bbd Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/swf/fdg_nt1.swf differ diff --git a/obsolete/macros/latex/contrib/fldigigal/swf/fdg_vt1.swf b/obsolete/macros/latex/contrib/fldigigal/swf/fdg_vt1.swf new file mode 100644 index 0000000000..7f2db03dfb Binary files /dev/null and b/obsolete/macros/latex/contrib/fldigigal/swf/fdg_vt1.swf differ -- cgit v1.2.3