You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
164 lines
5.5 KiB
164 lines
5.5 KiB
%%
|
|
%% This is file `lwarp-common-multimedia.sty',
|
|
%% generated with the docstrip utility.
|
|
%%
|
|
%% The original source files were:
|
|
%%
|
|
%% lwarp.dtx (with options: `common-multimedia')
|
|
%% This is a generated file.
|
|
%% Copyright 2016-2020 Brian Dunn
|
|
%%
|
|
%% 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.3 or later is part of all distributions of LaTeX
|
|
%% version 2005/12/01 or later.
|
|
\ProvidesPackage{lwarp-common-multimedia}[2019/04/22]
|
|
\RequirePackage{xkeyval}
|
|
|
|
\define@key{LWR@multimedia}{width}{\setlength{\LWR@multimedia@width}{#1}}
|
|
\define@key{LWR@multimedia}{height}{\setlength{\LWR@multimedia@height}{#1}}
|
|
\define@key{LWR@multimedia}{totalheight}{\setlength{\LWR@multimedia@height}{#1}}
|
|
\newlength{\LWR@multimedia@width}
|
|
\newlength{\LWR@multimedia@height}
|
|
\newlength{\LWR@multimedia@maxdimension}
|
|
\newcommand*{\LWR@multimedia@printsize}{%
|
|
\setlength{\LWR@multimedia@maxdimension}{%
|
|
\maxof%
|
|
{\linewidth}%
|
|
{\maxof{\LWR@multimedia@width}{\LWR@multimedia@height}}%
|
|
}%
|
|
\setlength{\LWR@multimedia@maxdimension}{1.1\LWR@multimedia@maxdimension}%
|
|
\ifdimgreater{\LWR@multimedia@width}{0pt}{%
|
|
width:%
|
|
\LWR@printpercentlength%
|
|
{\LWR@multimedia@width}%
|
|
{\LWR@multimedia@maxdimension}vmin ; % space
|
|
}{}%
|
|
\ifdimgreater{\LWR@multimedia@height}{0pt}{%
|
|
height:%
|
|
\LWR@printpercentlength%
|
|
{\LWR@multimedia@height}%
|
|
{\LWR@multimedia@maxdimension}vmin ; % space
|
|
}{}%
|
|
}
|
|
\newcommand*{\LWR@multimedia@fileAV}[4]{%
|
|
\IfFileExists{#2}{% also sets \@filef@und
|
|
\StrSubstitute[100]{\@filef@und}{"}{}[\LWR@parsedfilename]%
|
|
\ifstrequal{#3}{audio}{%
|
|
\begin{BlockClass}{AVviewport}
|
|
}{%
|
|
\begin{BlockClass}[\LWR@multimedia@printsize\ margin:auto]{AVviewport}
|
|
}
|
|
\LWR@stoppars
|
|
\LWR@htmltag{%
|
|
#3\ % space
|
|
\ifstrequal{#3}{audio}{}{%
|
|
width=\textquotedbl{}100\%\textquotedbl\ % space
|
|
height=\textquotedbl{}100\%\textquotedbl\ % space
|
|
}%
|
|
controls%
|
|
}\LWR@orignewline
|
|
\LWR@htmltag{%
|
|
source % space
|
|
src=\textquotedbl%
|
|
\LWR@parsedfilename\unskip\textquotedbl\ % space
|
|
type=\textquotedbl{}#4\textquotedbl}
|
|
\LWR@startpars
|
|
\LWR@href{\LWR@parsedfilename}{#1}
|
|
\LWR@stoppars
|
|
\LWR@htmltag{/#3}\LWR@orignewline
|
|
\end{BlockClass}
|
|
}{%
|
|
\PackageError{lwarp-common-multimedia}
|
|
{File '#2' not found}
|
|
{Perhaps an incorrect path?}
|
|
}%
|
|
}
|
|
\newcommand*{\LWR@multimedia@httpAV}[4]{%
|
|
\ifstrequal{#3}{audio}{%
|
|
\begin{BlockClass}{AVviewport}
|
|
}{%
|
|
\begin{BlockClass}[\LWR@multimedia@printsize\ margin:auto]{AVviewport}
|
|
}
|
|
\LWR@stoppars
|
|
\LWR@htmltag{%
|
|
#3\ % space
|
|
\ifstrequal{#3}{audio}{}{%
|
|
width=\textquotedbl{}100\%\textquotedbl\ % space
|
|
height=\textquotedbl{}100\%\textquotedbl\ controls%
|
|
}%
|
|
}\LWR@orignewline
|
|
\LWR@htmltag{%
|
|
source % space
|
|
src=\textquotedbl#2\textquotedbl\ % space
|
|
type=\textquotedbl#4\textquotedbl}
|
|
\LWR@startpars
|
|
\LWR@href{#2}{#1}
|
|
\LWR@stoppars
|
|
\LWR@htmltag{/#3}\LWR@orignewline
|
|
\end{BlockClass}
|
|
}
|
|
\newcommand*{\LWR@multimedia@AV}[4]{%
|
|
\IfBeginWith{#2}{http}%
|
|
{\LWR@multimedia@httpAV{#1}{#2}{#3}{#4}}%
|
|
{%
|
|
\IfBeginWith{#2}{HTTP}%
|
|
{\LWR@multimedia@httpAV{#1}{#2}{#3}{#4}}%
|
|
{\LWR@multimedia@fileAV{#1}{#2}{#3}{#4}}%
|
|
}%
|
|
}
|
|
\newcommand*{\LWR@multimedia@embed}[3]{%
|
|
\begin{BlockClass}[width:100\%]{AVviewport}%
|
|
\LWR@stoppars
|
|
\LWR@htmltag{%
|
|
embed % space
|
|
\ifblank{#3}{}{type=\textquotedbl#3\textquotedbl\ }%
|
|
style=\textquotedbl\LWR@multimedia@printsize\ margin:auto\textquotedbl\ % space
|
|
src=\textquotedbl#2\textquotedbl\ % space
|
|
}%
|
|
\LWR@startpars
|
|
\end{BlockClass}
|
|
}
|
|
\newcommand*{\LWR@multimedia@percenterror}{%
|
|
\PackageError{lwarp-media9}
|
|
{%
|
|
Do not use a percent comment between\MessageBreak
|
|
\protect\includemedia\space arguments%
|
|
}
|
|
{%
|
|
Percent is changed to a regular character\MessageBreak
|
|
to allow its use inside a URL.%
|
|
}
|
|
}
|
|
\newcommand*{\LWR@multimediab}[3][]{%
|
|
\if#1\@percentchar\LWR@multimedia@percenterror\fi%
|
|
\if#2\@percentchar\LWR@multimedia@percenterror\fi%
|
|
\if#3\@percentchar\LWR@multimedia@percenterror\fi%
|
|
\LWR@stoppars%
|
|
\setlength{\LWR@multimedia@width}{0pt}%
|
|
\setlength{\LWR@multimedia@height}{0pt}%
|
|
\setkeys*{LWR@multimedia}{#1}%
|
|
\IfEndWith{#3}{.mp4}{\LWR@multimedia@AV{#2}{#3}{video}{video/mp4}}{%
|
|
\IfEndWith{#3}{.MP4}{\LWR@multimedia@AV{#2}{#3}{video}{video/mp4}}{%
|
|
\IfEndWith{#3}{.mp3}{\LWR@multimedia@AV{#2}{#3}{audio}{audio/mpeg}}{%
|
|
\IfEndWith{#3}{.MP3}{\LWR@multimedia@AV{#2}{#3}{audio}{audio/mpeg}}{%
|
|
\IfBeginWith{#3}{http}{\LWR@multimedia@embed{#2}{#3}{}}{%
|
|
\IfBeginWith{#3}{HTTP}{\LWR@multimedia@embed{#2}{#3}{}}{%
|
|
\IfBeginWith{#3}{ftp}{\LWR@multimedia@embed{#2}{#3}{}}{%
|
|
\IfBeginWith{#3}{FTP}{\LWR@multimedia@embed{#2}{#3}{}}{%
|
|
\LWR@href{#3}{#2}% unknown format
|
|
}}}}}}}}%
|
|
\LWR@startpars%
|
|
\endgroup%
|
|
}
|
|
\newrobustcmd*{\LWR@multimedia}{%
|
|
\begingroup%
|
|
\LWR@linkmediacatcodes%
|
|
\LWR@multimediab%
|
|
}
|
|
\endinput
|
|
%%
|
|
%% End of file `lwarp-common-multimedia.sty'.
|
|
|