
% \iffalse meta-comment
%
% Copyright (C) 2010-2013 by Daniel Majoros
%
% This file may be distributed and/or modified 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.
%
% \fi
%
%\iffalse
%<package>\NeedsTeXFormat{LaTeX2e}
%<package>\ProvidesPackage{simplecd}
%<package>    [2013/02/28 v1.4 Simple CD, DVD covers and many more]
%
%<*driver>
\documentclass{ltxdoc}
\usepackage{simplecd}
\usepackage{graphicx}
\usepackage{float}
\usepackage{listings}

%Provides clickable links in content tables, references
\usepackage[hyperindex=false,%
	pdftitle={simplecd},%
	pdfauthor={Daniel Majoros},%
	pdfsubject={CD, DVD and other media covers and labels},%
	pdfkeywords={cover,cd,dvd,bluray,sheet,keepcase,layout,disk,zip,VHS}]{hyperref}
\EnableCrossrefs
\CodelineIndex
\RecordChanges
            
\begin{document}
	\lstset{language=[LaTeX]Tex}
	\lstset{numbers=left, numberstyle=\tiny, stepnumber=1, numbersep=5pt}
	\lstset{gobble=1,float,frame=tb}
	\lstset{tabsize=2}
    \DocInput{./simplecd.dtx} 
\end{document}
%</driver>
%\fi
% 
% \CheckSum{1464}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%     Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%     Digits \0\1\2\3\4\5\6\7\8\9
%     Exclamation         \!     Double quote    \"     Hash (number)   \#
%     Dollar              \$     Percent         \%     Ampersand       \&
%     Acute accent        \'     Left paren      \(     Right paren     \)
%     Asterisk            \*     Plus            \+     Comma           \,
%     Minus               \-     Point           \.     Solidus         \/
%     Colon               \:     Semicolon       \;     Less than       \<
%     Equals              \=     Greater than    \>     Question mark   \?
%     Commercial at       \@     Left bracket    \[     Backslash       \\
%     Right bracket       \]     Circumflex      \^     Underscore      \_
%     Grave accent        \`     Left brace      \{     Vertical bar    \|
%     Right brace         \}     Tilde           \~}
%
% \changes{v1.0}{2010/07/01}{Initial version}
% \changes{v1.1}{2012/11/04}{Rewrote drawing mechanism, added layouts, disk images, additional covers}
% \changes{v1.2}{2012/12/21}{Added new layouts and many new covers, labels}
% \changes{v1.3}{2013/01/26}{Added nohcenter option, more layouts and singlesheet}
% \changes{v1.4}{2013/02/28}{Made unitlength setting local}
%
% \DoNotIndex{\newline,\\,\space,\begin,\end,\rule,\cline,\hspace,\vspace,\centering,\DeclareRobustCommand,\{,\},\ }
% \DoNotIndex{\newcommand,\newlength,\setlength,\parbox,\line,\putline,\resizebox,\unitlength}
% \DoNotIndex{\put,\RequirePackage,\vrule,\DeclareOption,\fontsize,\ProcessOptions,\relax}
% \DoNotIndex{\renewcommand,\selectfont,\multicolumn,\framebox,\usebox,\put,\line,\value,\rotatebox,\setcounter,\newcounter,\!,!\!,!\,! ,\! ,!\! ,!\ , }
% \DoNotIndex{\Large,\Huge,\huge,\footnotesize,\underline,\savebox,\equal,\boolean,\newboolean,\setboolean,\baselineskip,\ifthenelse}
% \DoNotIndex{\scalebox,\makebox,\OR,\AND,\newsavebox,\qbezier,\circle,\space,\textless,\textgreater,\csname,\endcsname}
% \begingroup
%   \makeatletter
%   \lccode`9=32\relax
%   \lowercase{%^^A
%     \edef\x{\noexpand\DoNotIndex{\@backslashchar9}}%^^A
%   }%^^A
% \expandafter\endgroup\x
%
% \GetFileInfo{simplecd.sty}
%
% \title{The \textsf{simplecd} package\thanks{This document
%  corresponds to \textsf{simplecd}~\fileversion,
%  dated~\filedate.}}
% \author{D\'aniel Majoros}
%
% \maketitle
%
% \begin{abstract}
%     The simplecd package provides printable cut-outs for various CD, DVD and other data storage holders.
%     The name of the package comes form it's implementation and ease of use.
% \end{abstract}
%
% \newlength{\orig}
% \setlength{\orig}{\baselineskip}
% \setlength{\baselineskip}{0.9\baselineskip}
% \tableofcontents
% \setlength{\baselineskip}{\orig}
%
% \section{Introduction}
% The \textsf{simplecd} package was created for producing cut-outs for creating covers, inlays(inlets) for 
% optical disc packaging such as jewel cases, keepcases. Additional data storage cover support were added for
% VHS, audio cassette and gramophone records. The covers were aimed for containing only 
% simple text with different font sizes, but since everything is placed inside a |\parbox| environment, it can
% contain a wide range of things.
%
% There are also macros which can resize ready-to-print images to the appropriate size.
%
% The layout macros provide ready-to-use formatting for the covers.
%
% \section{Installation}
%
% The install procedure is the usual. Run \texttt{(pdf)latex} on the \texttt{simplecd.ins} file to obtain the necessary \texttt{simplecd.sty} file: \\
% 
% \texttt{pdflatex ./simplecd.ins --output-directory=./} \\
%
% Then place the \texttt{simplecd.sty} file in a directory that is searched by \TeX.
% If you use some kind of \LaTeX\ distribution, like MiKTeX, see it's documentation.
%
% \section{Usage}
%
% To use the package, put this in the document preamble: |\usepackage{simplecd}|.
% This section gives a detailed information on macros, lists their parameters also. 
%
% It is worth to decrease the document's margins, so the covers can fit onto
% an A4 sized paper. For this, use the \textsf{geometry} package, for example like this: \\
% |\usepackage[left=1cm, top=1cm, right=1cm, bottom=1cm]{geometry}|
%
% All examples in this document were resized, for full size output, see the \texttt{examples.pdf} file.
%
% \vspace{0.3cm}
%
% \begin{lstlisting}
% LaTeX example source codes in this document are placed in 
% listings like this. They are usually followed by output 
% produced with the code samples.
% \end{lstlisting}
%
% \vspace{0.3cm}
%
% Please note that not all the covers were tested ( printed and placed on actual media ) as the appropriate media was not available.
%
% \subsection{Cut-outs}
%
% \subsubsection{Jewel cases}
%
% \DescribeMacro{\covers}
% The first and foremost macro is for the standard jewel case and it's backsheet with two spines.
% The parameters of the |\covers| macro are as follows:
% |\covers| \oarg{backsheet text} \marg{cover title} \marg{spine text}. The first two can be
% whole paragraphs with different font sized texts. For a new line, you can use |\\|,
% and for a skip, use |\vspace{length to skip}| in the text after a new line. 
% The spine text will be printed on both spines. The spine
% text should be short enough to fit into the desired space.
%
% Example: 
% \begin{lstlisting}
% \covers
% 	[{\Large Backsheet text}]
%  	{{\Huge Jewelcase Title} \\ \vspace{1cm} Subtitle}
%  	{Spine Text}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 	\resizebox{0.95\textwidth}{!}{\covers[{\Large Backsheet text}]{{\Huge Jewelcase Title} \\ \vspace{1cm} Subtitle}{Spine Text}} 
%	\caption{Jewel case covers}
% \end{figure}
% 
% \vspace*{0.5cm}
%
% \DescribeMacro{\frontcover} 
% The |\frontcover|, which is called in the previously mentioned macro, produces the front cover for
% the jewel case. It's mandatory argument is the cover text: |\frontcover| \marg{cover text}.
%
% \DescribeMacro{\LXfrontcover} \DescribeMacro{\LXXXfrontcover} The |\LXfrontcover| and |\LXXXfrontcover| macros work just the same as
% |\frontcover| but they produce covers for jewel cases that holds 60 or 80 millimeter disks (LX and LXXX are roman numbers, their values are 60 and 80).
%
% \DescribeMacro{\backsheet}
% The |\backsheet| macro is also called from the |\covers| macro. It produces the backsheet with two
% identical spines. The usage is |\backsheet| \oarg{backsheet middle text} \marg{spine text}.
%
% \DescribeMacro{\jewelspine}
% The |\jewelspine| macro creates a single spine for the jewelcase. It's usage is |\jewelspine| \marg{spine text}.
%
% \DescribeMacro{\singlesheet} The |\singlesheet| macro creates a single sheet for a special jewel case. The \marg{front side}
% argument makes it possible to put content beside the jewel case sized front content.
% Usage: |\singlesheet| \marg{front} \marg{front side} \marg{spine} \marg{back}
%
% \begin{lstlisting}
% \singlesheet
%   {\huge Front}
%   {Front side}
%   {Spine}
%   {Back}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 	\resizebox{0.8\textwidth}{!}{
%		\singlesheet
%   		{\huge Front}
%			{Front side}
%   		{Spine}
%   		{Back}}
%	\caption{Single sheet}
% \end{figure}
%
% \DescribeMacro{\djewel}
% The |\djewel| macro creates a double page jewel case cover. Text can be put on one side, then it should be folded
% in half. The usage is: |\djewel| \marg{first page text} \marg{second page text}.
%
% \begin{lstlisting}
% \djewel
%   {\fontsize{70}{36}\selectfont Big Title}
%   {Second page}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 	\rotatebox{270}{\resizebox{0.48\textwidth}{!}{\djewel{\fontsize{70}{36}\selectfont Big Title}{Second page}}}
%	\caption{Double page jewel book}
% \end{figure}
%
% \vspace*{0.5cm}
%
% This is also an example of using fix sized fonts with the \textsf{fix-cm} package.
%
% \subsubsection{Keepcases}
%
% \DescribeMacro{\slimdvd} \DescribeMacro{\dvd}
% The |\slimdvd| and |\dvd| macros creates a slim and a simple DVD keepcase. Text can be put on both 
% sides plus on the spine area. \DescribeMacro{\bluray} The |\bluray| macro creates a keepcase for Blu-Ray disks.
% Their usage is: |\dvd| \oarg{backside text} \marg{cover text} \marg{spine text}.
%
% \begin{lstlisting}
% \slimdvd
%   [{\Large Backsheet text}]                                  
%   {{\Huge \underline{SlimDVD Title}}%
%     \\ \vspace{1cm} Subtitle}   
%   {Spine Text}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 	\rotatebox{270}{\resizebox{0.65\textwidth}{!}{\slimdvd[{\Large Backsheet text}]%
% 		{{\Huge \underline{SlimDVD Title}} \\ \vspace{1cm} Subtitle}{Spine Text}} }
%	\caption{Slim DVD keepcase cover}
% \end{figure}
%
% \vspace*{0.5cm}
%
% \subsubsection{Sleeves}
%
% \DescribeMacro{\sleeve}
% The |\sleeve| macro creates a disk-sleeve which requires some glue after cutting it out. The upper part 
% can be used to close the sleeve. Text can be put on 
% it's cover and back. The usage is: |\sleeve| \oarg{back text} \marg{cover text}.
%
% \begin{lstlisting}
% \sleeve[Back text]{{\Huge Sleeve text}}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 	\resizebox{0.7\textwidth}{!}{\sleeve[Back text]{{\Huge Sleeve text}}}
%	\caption{Paper sleeve}
% \end{figure}
%
% \DescribeMacro{\sleeveLX} \DescribeMacro{\sleeveLXXX} The |\sleeveLX| and |\sleeveLXXX| macros produce sleeves for 
% the 60 and the 80 millimeter sized disks, respectively. Their use is the same as |\sleeve|.
%
% \begin{lstlisting}
% \sleeveLX[Back text]{\large Front text}
% \sleeveLXXX[Back text]{\large Front text}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\begin{minipage}[b]{0.45\textwidth}
%		\centering
%		\resizebox{0.8\textwidth}{!}{\sleeveLX[Back text]{\large Front text}}
%		\caption{60 millimeter disk sleeve}
%	\end{minipage}
%	\hspace{0.5cm}
%	\begin{minipage}[b]{0.45\textwidth}
%		\centering
%		\resizebox{0.8\textwidth}{!}{\sleeveLXXX[Back text]{\large Front text}}
%		\caption{80 millimeter disk sleeve}
%	\end{minipage}
% \end{figure}
%
% \DescribeMacro{\sleevela} The |\sleevela| macro creates a sleeve that can be used in lever arch files. 
% The small circles must be cut out, they are for the levers. The distance between the circle centers is 8 centimeter.
%
% \begin{lstlisting}
% \sleevela[Back text]{\scalebox{4}{Front text}}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	\resizebox{0.8\textwidth}{!}{\sleevela[Back text]{\scalebox{4}{Front text}}}
%	\caption{Sleeve for lever arch files}
% \end{figure}
% 
% \vspace*{0.5cm}
%
% \subsubsection{Image as cover}
%
% \DescribeMacro{\coverimg} \DescribeMacro{\backsheetimg} \DescribeMacro{\dvdimg} \DescribeMacro{\slimdvdimg}
% \DescribeMacro{\blurayimg}
% The macros width the \emph{img} ending are expecting an image, and resizing this image to the appropriate cover
% size. The macros are |\coverimg|, |\backsheetimg|, |\dvdimg|, |\slimdvdimg|, |\blurayimg|. Their usage is 
% |\coverimg| \parg{picture}. No image macro for 
% the sleeve. These macros does not keep the aspect ratio of the given image, thus it should already be at the 
% correct ratio.
%
% An example without the result: 
% \begin{lstlisting}
% \dvdimg{includegraphics{coverpic}}
% \end{lstlisting}
%
% \vspace*{0.5cm}
%
% \subsubsection{Inlays}
%
% \DescribeMacro{\dvdinlay} \DescribeMacro{\blurayinlay}
% The |\dvdinlay| and |\blurayinlay| macros create a one sided inlay for the appropriate keepcases.
% Their usage is |\dvdinlay| \marg{text}. 
%
% \begin{lstlisting}
% \dvdinlay
%   {{\Large DVD Inlay}
%  
%   \vspace{5cm} TextTextText
%   
%   \vspace{1cm} {\fontsize{20}{36}\selectfont TextText}}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 		\resizebox{0.5\textwidth}{!}{%
% 			\dvdinlay{{\Large DVD Inlay
%
% 			\vspace{5cm} TextTextText 
%
% 			\vspace{1cm} {\fontsize{20}{36}\selectfont TextText}}}}
%	\caption{DVD keepcase inlay}
% \end{figure}
%
% \vspace*{0.5cm}
%
% \subsubsection{Floppy covers}
%
% These macros can be used to produce covers that can be glued to floppy disks at the appropriate place.
%
% \DescribeMacro{\floppyIIIV} The |\floppyIIIV| macro creates cover for the 3.5-inch (89 mm) disks. The cover 
% should be glued to both sides of the disk. Usage: |\floppyIIIV| \marg{front} \marg{back}
%
% \begin{lstlisting}
% \floppyIIIV{Front content}{Back content}}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	  \resizebox{0.5\textwidth}{!}{%
%       \floppyIIIV{Front content}{Back content}}%
%   \caption{The 3.5-inch floppy disk cover}
% \end{figure}
%
% \subsubsection{Zip disks}
%
% \DescribeMacro{\zipdisk} The |\zipdisk| macro provides a cover label for zip disks. 
% Cover dimensions: 98 millimeter wide, 120 millimeter high. Usage: |\zipdisk| \marg{front} \marg{back}
%
% \begin{lstlisting}
% \zipdisk{Front content}{Back content}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	  \resizebox{0.5\textwidth}{!}{%
%       \zipdisk{Front content}{Back content}}%
%   \caption{Cover label for zip disks}
% \end{figure}
%
% \DescribeMacro{\zipdiskII} The |\zipdiskII| macro provides a cover label for zip disks. 
% Cover dimensions: 60 millimeter wide, 51 millimeter high. Usage: |\zipdiskII| \marg{content}
%
% \begin{lstlisting}
% \zipdiskII{Content}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	  \resizebox{0.4\textwidth}{!}{%
%       \zipdiskII{Content}}%
%   \caption{Cover label for zip disks}
% \end{figure}
%
% \subsubsection{Disk covers}
%
% Macros presented below can be used to create images like actual disks. The results can be used for example for top cover of a cake box. 
% For printing directly on the disks themselves, use a printing software especially designed for this task.
%
% Content can be placed anywhere in the rectangle which is always defined by the largest circle in the picture.
% \begin{figure}[H]
%	\centering
%		\resizebox{0.5\textwidth}{!}{%
%			\setlength{\unitlength}{1mm}%
%			\cdrdisk{\begin{picture}(116,116)\framebox(116,116){}\end{picture}}%
%		}
%	\caption{The rectangle that is the boundary for the content}
% \end{figure}
%
% \DescribeMacro{\cdrdisk} The |\cdrdisk| macro creates an image of a CD-R disk. It's inner circle leaves space for the transparent part of the disk.
% Usage: |\cddvddisk| \marg{content}
%
% \begin{lstlisting}
% \cdrdisk{
% 	{\Huge Title} \\ \vspace{3cm}
%	Left \hspace{7cm} Right \\ \vspace{3cm}
%	TextText}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%		\resizebox{0.5\textwidth}{!}{%
%			\cdrdisk{%
%				{\Huge Title} \\ \vspace{3cm}%
%				Left \hspace{7cm} Right \\ \vspace{3cm}%
%				TextText}%
%		}
%	\caption{CD-R image with positioned texts}
% \end{figure}
%
% \DescribeMacro{\cddvddisk} The |\cddvddisk| macro is slightly bigger than the |\cdrdisk|, and has a smaller inner circle. This smaller inner cicrle 
% is nearly as small as the center hole in the disks.
%
% \begin{lstlisting}
% \cddvddisk{
% 	{\Huge Title} \\ \vspace{3cm}
%	Left \hspace{7cm} Right \\ \vspace{3cm}
%	TextText}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 	\resizebox{0.5\textwidth}{!}{%
%		\cddvddisk{
% 			{\Huge Title} \\ \vspace{3cm}
%			Left \hspace{7cm} Right \\ \vspace{3cm}
%			TextText}
%	}
%	\caption{CD, DVD image with positioned texts}
% \end{figure}
%
% \DescribeMacro{\disk} The |\disk| macro provides the picture of a standard compact disk with all the circles indicating the different parts. 
% The innermost circle is the size of the center hole in the disks.
%
% \begin{lstlisting}
% \disk{
% 	{\Huge Title} \\ \vspace{3cm}
%	Left \hspace{7cm} Right \\ \vspace{3cm}
%	TextText}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%		\resizebox{0.5\textwidth}{!}{%
%			\disk{%
%				{\Huge Title} \\ \vspace{3cm}%
%				Left \hspace{7cm} Right \\ \vspace{3cm}%
%				TextText}%
%		}
%	\caption{Disk image with positioned texts}
% \end{figure}
%
% \DescribeMacro{\emptydisk} The |\emptydisk| macro provides the picture of a standard compact disk without all the circles indicating the different parts. 
% The innermost circle is the size of the center hole in the disks.
%
% \begin{lstlisting}
% \emptydisk{
% 	{\Huge Title} \\ \vspace{3cm}
%	Left \hspace{7cm} Right \\ \vspace{3cm}
%	TextText}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%		\resizebox{0.5\textwidth}{!}{%
%			\emptydisk{%
%				{\Huge Title} \\ \vspace{3cm}%
%				Left \hspace{7cm} Right \\ \vspace{3cm}%
%				TextText}%
%		}
%	\caption{Empty disk image with positioned texts}
% \end{figure}
%
% \DescribeMacro{\LXXXdisk} The |\LXXXdisk| macro is the disk image of a 80 millimeter disk.
%
% \begin{lstlisting}
% \LXXXdisk{Title \\ \vsapce{4cm} Text}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	\resizebox{0.4\textwidth}{!}{%
%		\LXXXdisk{{\large Title } \\ \vspace{4cm} Text}
%	}
%	\caption{80 millimeter disk image with positioned texts}
% \end{figure}
%
% \subsubsection{VHS covers}
%
% \DescribeMacro{\vhsfront} The |\vhsfront| macro creates the label that can be placed on the front middle part of a VHS cassette. 
% Usage: |\vhsfront| \marg{content} \\
%
% \begin{lstlisting}
% \vhsfront{\huge Text}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	\resizebox{0.5\textwidth}{!}{%
%		\vhsfront{\huge Text}
%	}
%	\caption{VHS front label}
% \end{figure}
%
% \DescribeMacro{\vhsspine} The |\vhsspine| macro creates the spine that can be placed on the side of a VHS cassette. 
% Usage: |\vhsspine| \marg{content} \\
%
% \begin{lstlisting}
% \vhsspine{\huge Text}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	\resizebox{0.8\textwidth}{!}{%
%		\vhsspine{\huge Text}
%	}
%	\caption{VHS front label}
% \end{figure}
%
% \DescribeMacro{\CCCvhscover} \DescribeMacro{\CCCCvhscover} The |\CCCvhscover| and |\CCCvhscover| macros
% create a cover for a 300 series and 400 series VHS cassette, respectively. To differentiate between the two: 
% the 300 series cover is 257 millimeter wide, the 400 series cover is 296 millimeter wide. 
% Their usage is the same: |\CCCvhscover| \marg{front} \marg{spine} \marg{back} \\
%
% \begin{lstlisting}
% \CCCvhscover
%   {\scalebox{6}{Front}}
%   {\scalebox{4}{Spine}}
%   {\scalebox{4}{Back}}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	\resizebox{0.9\textwidth}{!}{%
%		\CCCvhscover{\scalebox{6}{Front}}{\scalebox{4}{Spine}}{\scalebox{4}{Back}}
%	}
%	\caption{Cover for a 300 series VHS case}
% \end{figure}
%
% \subsubsection{Audio cassette covers}
%
% \DescribeMacro{\cassettecover} The |\cassettecover| macro creates cover label for an audio cassette. Many types of cassettes exist with more or less
% different labels, so the provided label may need adjustments, like cutting off the corners or a rectangular inner part.
% Usage: |\cassettecover| \marg{content} \\
%
% \begin{lstlisting}
% \cassettecover
%   {{\huge Upper text} \\ \vspace{2cm}  Lower text}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	\resizebox{0.7\textwidth}{!}{%
%		\cassettecover{{\huge Upper text} \\ \vspace{2cm}  Lower text}
%	}
%	\caption{Cover label for an audio cassette}
% \end{figure}
%
% \DescribeMacro{\cassetteinlay} The |\cassetteinlay| macro provides an inlay for the standard cassette case.
% Usage: |\cassetteinlay| \marg{front} \marg{spine} \marg{back} \\
%
% \begin{lstlisting}
% \cassetteinlay
%   {\huge Front}
%   {Spine}
%   {Back}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	\resizebox{0.7\textwidth}{!}{%
% 	\cassetteinlay
%   	{\huge Front}
%   	{Spine}
%   	{Back}
%	}
%	\caption{Cover label for an audio cassette}
% \end{figure}
%
% \subsubsection{Gramophone records}
%
% \DescribeMacro{\vinylcdcover} The |\vinylcdcover| macro provides a cover label for vinyl CDs. 
% The vinyl CDs have the same size as standard CDs, they just look like old gramophone records. The outer circle is 65 millimeter in diameter,
% the inner circle is 16.7 milimeter in diameter. Usage: |\vinylcdcover| \marg{content} \\
%
% \begin{lstlisting}
% \vinylcdcover
%   {{\huge Upper text} \\ \vspace{3cm}  Lower text}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	\resizebox{0.7\textwidth}{!}{%
% 		\vinylcdcover{{\huge Upper text} \\ \vspace{3cm}  Lower text}
%	}
%	\caption{Cover label for a vinyl CD}
% \end{figure}
%
% \DescribeMacro{\recordcover} The |\recordcover| macro creates cover label for a 30 centimeter record. The outer circle is 99 millimeter in diameter,
% the inner circle is 8 milimeter in diameter. Usage: |\recordcover| \marg{content} \\
%
% \begin{lstlisting}
% \recordcover
%   {{\huge Upper text} \\ \vspace{3cm}  Lower text}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%	\resizebox{0.7\textwidth}{!}{%
% 		\recordcover{{\huge Upper text} \\ \vspace{3cm}  Lower text}
%	}
%	\caption{Cover label for a gramophone record}
% \end{figure}
%
% \subsection{Layouts}
%
% The layouts are pre-set cover layouts for ease of use. Similar content can be produced and used in the cover macros.
%
% Some layouts contain preconfigured text. The texts are always
% in English and represent a personal preference. All layouts have a macro suffixed with the \texttt{empty} word that
% only contains the frames with no text, so one can insert any content.
%
% A layout can be used on various cover types. The first word in the layout's name decides the type.
% \begin{description}
%	\item[jewel] type layouts are compatible with: |\covers| |\frontcover| |\sleeve| |\djewel| |\sleevela| |\singlesheet|
%	\item[LX] type layouts are compatible with: |\LXfrontcover| |\sleeveLX|
%	\item[LXXX] type layouts are compatible with: |\LXXXfrontcover| |\sleeveLXXX|
%	\item[dvd] type layouts are compatible with: |\dvd| |\slimdvd|
%	\item[bluray] type layouts are compatible with: |\bluray|
% \end{description}
% Note that this compatibility is not checked in the macros. The layouts were designed to be centered on the covers.
% If the |nohcenter| package option is used, they could get misplaced.
%
% Any parameter in a layout can be empty. It means that no content will be put in the appropriate cell. For example |\jewelflaglempty {} {Middle} {}|
%
% The numbers in the parentheses in the below examples marks the number of the parameter which will be placed there. For example (3) means the 
% third parameter of the macro.
%
% Many layouts have a meaningful name, like driver, movie or music. 
% These names indicate a sugessted usage and they are easier to remeber than layoutA, layoutB etc.
%
% \subsubsection{Jewel case layouts}
%
% \DescribeMacro{\jeweldriverl} \DescribeMacro{\jeweldriverlempty} The |\jeweldriverl| can be used to create cover for driver disks that are supplied with
% PC hardware elements. 
% Usage: |\jeweldriverl| \marg{title} \marg{subtitle} \marg{date} \marg{serial} \marg{disk version} \marg{right middle cell} \marg{bottom cell} 
%
% \begin{lstlisting}
% \frontcover
%   {\jeweldriverl
%	  {Motherboard(1)}
%	  {Model XYZ (2)}
%	  {2012.20.12 (3)}
%	  {123456789 (4)}
%	  {12-ABC (5)}
%	  {Driver \\ Manual (6)}
%	  {Driver not compatible with ZYX operating system (7)}}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 	\scalebox{0.6}{\frontcover{\jeweldriverl{Motherboard(1)}{Model XYZ (2)}{2012.20.12 (3)}{123456789 (4)}%
% 		{12-ABC (5)}{Driver \\ Manual (6)}{Driver not compatible with ZYX operating system (7)}}}
%	\caption{Driver CD layout on a jewel case fronrcover}
% \end{figure}
%
% \vspace*{0.5cm}
%
% \DescribeMacro{\jewellempty} The |\jewellempty| macro provides the same border as in the other layouts, just with one cell with centered content.
%  Usage: |\jewellempty| \marg{content} \\
% 
% \DescribeMacro{\jewelmusiclempty} The |\jewelmusiclempty| macro is for music disks. There is no non-empty version as there isn't any text to be left out.
% Usage: |\jewelmusiclempty| \marg{title} \marg{performer} \marg{year} \marg{style} \\
%
% \begin{lstlisting}
% \sleeve
%   [\jewellempty
%	  {\begin{enumerate} 
%       \item Track One 
%       \item Track Two 
%     \end{enumerate}}]
%   {\jewelmusiclempty
%	  {Album X (1)}
%	  {XYZ band(2)}
%	  {2222 (3)}
%	  {Styles (4)}}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 		\resizebox{0.5\textwidth}{!}{\sleeve[\jewellempty{\begin{enumerate} \item Track One \item Track Two \end{enumerate}}]%
% 			{\jewelmusiclempty{Album X (1)}{XYZ band(2)}{2222 (3)}{Styles (4)}}}
%	\caption{Music layout on front, empty layout on back}
% \end{figure}
%
% \DescribeMacro{\jewelbacklempty}\DescribeMacro{\jewelbackIIlempty} 
% The |\jewelbacklempty| macro is the pair of the |\jewellempty| macro. This is for the backsheet of a jewel case. The |\jewelbackIIlempty| macro is
% the same, without the layout border and centering. Their usage is the same.
% Usage: |\jewelbacklempty| \marg{content} \\
%
% \begin{lstlisting}
% \backsheet
%   [\jewelbacklempty
%	  {Backsheet content}]
%   {Spine text}
% \backsheet
%   [\jewelbackIIlempty
%	  {Backsheet content}]
%   {Spine text}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\begin{minipage}[b]{0.45\textwidth}
%		\centering
% 		\resizebox{0.9\textwidth}{!}{\backsheet[\jewelbacklempty{Backsheet content}]{Spine text}}
%		\caption{Empty jewel backsheet layout}
%	\end{minipage}
%	\hspace{0.5cm}
%	\begin{minipage}[b]{0.45\textwidth}
%		\centering
%		\resizebox{0.9\textwidth}{!}{\backsheet[\jewelbackIIlempty{Backsheet content}]{Spine text}}
%		\caption{Empty jewel backsheet layout without border and centering}
%	\end{minipage}
% \end{figure}
%
% \DescribeMacro{\LXlempty} \DescribeMacro{\LXXXlempty} \DescribeMacro{\LXemptydriverl} \DescribeMacro{\LXXXemptydriverl} %
% \DescribeMacro{\LXdriverl} \DescribeMacro{\LXXXdriverl}  The empty, empty driver and driver layouts for the 60
% and 80 millimeter disk covers: |\LXlempty|, |\LXXXlempty|, |\LXemptydriverl|, |\LXXXemptydriverl|, |\LXdriverl| and |\LXXXdriverl| macros.
%
% \begin{lstlisting}
% \LXfrontcover{\LXlempty{\scalebox{3}{Title}}}
% \LXXXfrontcover
%   {\LXXXdriverl
%     {Motherboard(1)}
%     {Model XYZ (2)}
%     {2012.20.12 (3)}
%     {123456789 (4)}
%     {12-ABC (5)}
%     {Driver \\ Manual (6)}
%     {Driver not compatible with ZYX operating system (7)}}
% \end{lstlisting}
%	
% \begin{figure}[H]
%	\begin{minipage}[b]{0.45\textwidth}
%		\centering
%		\resizebox{0.7\textwidth}{!}{\LXfrontcover{\LXlempty{\scalebox{3}{Title}}}}
%		\caption{The \texttt{\textbackslash LXlempty} layout}
%	\end{minipage}
%	\hspace{0.5cm}
%	\begin{minipage}[b]{0.45\textwidth}
%		\centering
%		\resizebox{0.75\textwidth}{!}{\LXXXfrontcover{\LXXXdriverl{Motherboard(1)}{Model XYZ (2)}{2012.20.12 (3)}{123456789 (4)}%
% 			{12-ABC (5)}{Driver \\ Manual (6)}{Driver not compatible with ZYX operating system (7)}}}
%		\caption{The \texttt{\textbackslash LXXXdriverl} layout}
%	\end{minipage}
% \end{figure}
%
% \DescribeMacro{\jewelstripeslempty} The |\jewelstripeslempty| macro provides a layout of a stiped jewel cover. If the second or 
% the third parameters are empty, then the appropriate diagonal stripe will not be drawn. 
% Usage: |\jewelstripeslempty| \marg{center content} \marg{upper right content} \marg{lower left content}  \\
%
% \begin{lstlisting}
% \frontcover
%   {\jewelstripeslempty
%     {Main Title (1)}
%     {Right upper text (2)}
%     {Left lower text (3)}}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%   \scalebox{0.6}{\frontcover
%     {\jewelstripeslempty
%       {Main Title (1)}
%       {Right upper text (2)}
%       {Left lower text (3)}}}
%	\caption{Striped jewel cover with missing upper right stripe}
% \end{figure}
%
% \DescribeMacro{\jewelgamel} \DescribeMacro{\jewelgamelempty} The |\jewelgamel| and the |\jewelgamelempty| macros provide a layout for game disks. 
% As usual, the empty version does not contain the preset texts. 
% Usage: |\jewelgamel| \marg{title} \marg{release year} \marg{genres} \marg{developer} \marg{publisher} \marg{serial} \marg{comment} \\
%
% \begin{lstlisting}
% \frontcover
%   {\jewelgamel
%     {Title (1)}
%     {<release year> (2)}
%     {<genre list> (3)}
%     {<developer> (4)}
%     {<publisher> (5)}
%     {<serial> (6)}
%     {<comment> (7)}}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%   \scalebox{0.6}{\frontcover
%     {\jewelgamel
%       {Title (1)}
%       {\textless release year\textgreater (2)}
%       {\textless genre list\textgreater (3)}
%       {\textless developer\textgreater (4)}
%       {\textless publisher\textgreater (5)}
%       {\textless serial\textgreater (6)}
%       {\textless comment\textgreater (7)}}}
%	\caption{The \texttt{\textbackslash jewelgamel} layout}
% \end{figure}
%
% \DescribeMacro{\jewelflaglempty} The |\jewelflaglempty| macro creates a cover layout in a 3-striped flag format. Content can be put in each stripe.
% Usage: |\jewelflaglempty| \marg{upper content} \marg{middle content} \marg{lower content} \\
%
% \begin{lstlisting}
% \frontcover
%   {\jewelflaglempty
%     {Upper (1)}
%     {\scalebox{3}{Middle (2)}}
%     {Lower (3)}}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
%   \scalebox{0.6}{\frontcover
%     {\jewelflaglempty
%     {Upper (1)}
%     {\scalebox{3}{Middle (2)}}
%     {Lower (3)}}}
%	\caption{The \texttt{\textbackslash jewelflaglempty} layout}
% \end{figure}
%
% \DescribeMacro{\jewellineslempty} The |\jewellineslempty| macro creates horizontal lines. The main purpose of these is 
% to be written onto them by hand after printing. Nevertheless, content can be placed onto it with the first parameter.
% The content text must not be resized and it must contain odd number of lines. After even number of lines, add |\\ \ | like in 
% the below example.
% Usage: |\jewellineslempty| \marg{content} \\
%
% \begin{lstlisting}
% \frontcover
%   {\jewellineslempty
%     {Text line 1 \\ Text line 2 \\ \ }}
% \end{lstlisting}
% 
% \begin{figure}[H]
%	\centering
%   \scalebox{0.6}{
%     \frontcover
%     {\jewellineslempty
%       {Text line 1 \\ Text line 2 \\ \ }}}
%	\caption{The \texttt{\textbackslash jewellineslempty} layout}
% \end{figure}
%
% \DescribeMacro{\jeweltitledlempty} The |\jeweltitledlempty| macro creates a layout with an upper title part and a large lower part for content.
% Usage: |\jeweltitledlempty| \marg{title} \marg{content} \\
%
% \begin{lstlisting}
% \singlesheet
%   {\jeweltitledlempty
%     {Title}
%     {Lots of content \\ More\dots \\ Even more\dots}}
%   {}{}{}
% \end{lstlisting}
% 
% \begin{figure}[H]
%	\centering
%   \scalebox{0.6}{
%     \singlesheet
%     	{\jeweltitledlempty
%       	{Title}
%			{Lots of content \\ More\dots \\ Even more\dots}}
%		{}{}{}}
%	\caption{The \texttt{\textbackslash jeweltitledlempty} layout}
% \end{figure}
%
% \subsubsection{Keepcase layouts}
%
% \DescribeMacro{\dvdlempty} The |\dvdlempty| macro provides the mandatory empty layout 
% for the standard keepcases. It's usage is |\dvdlempty| \marg{content}.
%
% \DescribeMacro{\dvdmovielempty} \DescribeMacro{\dvdmoviel} The |\dvdmoviel| macro is for a movie disk cover.
% Usage: |\dvdmoviel| \marg{title} \marg{original title} \marg{release year} \marg{director} 
% \marg{languages} \marg{subtitles} \marg{actors} \marg{comment} \\
%
% \begin{lstlisting}
% \dvd
%   [\dvdlempty{\Large Back text}]
%   {\dvdmoviel
%	  {Movie title (1)}
%	  {Original title (2)}
%	  {Release year (3)}
%	  {Director (4)}
%	  {Language1 \\ Language2 (5)}
%	  {Subtitle1 \\ Subtitle2 (6)}
%	  {Actor1 \\ Actor2 \\ Actor3 \\ Actor4 (7)}
%	  {Comment, rating, etc. (8)}}
%   {spinetext}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 	\scalebox{0.45}{\rotatebox{270}{\dvd[\dvdlempty{\Large Back text}]{\dvdmoviel{Movie title (1)}%
%		{Original title (2)}{2012 (3)}{Director (4)}{Language1 \\ Language2 (5)}%
% 		{Subtitle1 \\ Subtitle2 (6)}{Actor1 \\ Actor2 \\ Actor3 \\ Actor4 (7)}{Comment, rating, etc. (8)}}{spinetext}} }
%	\caption{Front movie and empty back layouts for DVD keepcase}
% \end{figure}
%
% \DescribeMacro{\bluraylempty} The |\bluraylempty| macro provides the mandatory empty 
% layout for the Blu-ray keepcases. It's usage is |\bluraylempty| \marg{content}.
%
% \DescribeMacro{\bluraymovielempty} \DescribeMacro{\bluraymoviel} The |\bluraymoviel| macro is for a Blu-ray movie disk cover.
% Usage: |\bluraymoviel| \marg{title} \marg{original title} \marg{release year} 
% \marg{director} \marg{languages} \marg{subtitles} \marg{actors} \marg{comment} \\
%
% \begin{lstlisting}
% \bluray
%   [\bluraylempty{\Large Back text}]
%   {\bluraymoviel
%	  {Movie title (1)}
%	  {Original title (2)}
%	  {Release year (3)}
%	  {Director (4)}
%	  {Language1 \\ Language2 (5)}
%	  {Subtitle1 \\ Subtitle2 (6)}
%	  {Actor1 \\ Actor2 \\ Actor3 \\ Actor4 (7)}
%	  {Comment, rating, etc. (8)}}
%   {spinetext}
% \end{lstlisting}
%
% \begin{figure}[H]
%	\centering
% 	\scalebox{0.45}{\rotatebox{270}{\bluray[\bluraylempty{\Large Back text}]{\bluraymoviel{Movie title (1)}%
%		{Original title (2)}{2012 (3)}{Director (4)}{Language1 \\ Language2 (5)}%
% 		{Subtitle1 \\ Subtitle2 (6)}{Actor1 \\ Actor2 \\ Actor3 \\ Actor4 (7)}{Comment, rating, etc. (8)}}{spinetext}} }
%	\caption{Front movie and empty back layouts for Blu-ray keepcase}
% \end{figure}
%
% \subsection{General macros}
%
% These macros are used behind the macros described above. They are made public, with one note: 
% keep in mind that these can change during package development, so
% do not be suprised when after a package update, they work differently. 
%
% Those parameters that require a length, expect a single, positive integer, for example a counter value.
% The numbers represent length in millimeters.
%
% \DescribeMacro{\keepcase} With |\keepcase|, one can create
% a custom sized keepcase in the format of cover, spine and a backside. It's usage is: 
% |\keepcase| \oarg{backtext} \marg{cover text} \marg{spinetext} \marg{cover height} \marg{cover width} \marg{spine width}.
% The cover width refers to one side's width without the spine.
%
% \DescribeMacro{\inlay} With the general |\inlay| macro, one can create
% a custom sized inlay. It's usage is: |\inlay| \marg{text} \marg{inlay width} \marg{inlay height}.
%
% \vspace*{0.5cm}
%
% \subsection{Package Options}
%
% Use package options at the package loading as usual, for example: \\ |\usepackage[nofold,noalign]{simplecd}|.
% 
% \begin{description}
% \item[noalign:] Many cover macros are containing some text alignment lengths. Without them, the content would be 
% centered vertically in the frames. \label{opt:noalign}The |noalign| option sets these alignment lengths to zero, so one can align the 
% contents individually. This option does not affect layout placement.
%
% \item[nofold:] As default, many covers contain folding lines with the same line type as where the pieces must be cut out. 
% With the |nofold| option, the folding lines won't be drawn.
%
% \item[spiner:] The |spiner| option rotates all spine texts with $180^\circ$. 
%
% \item[nohcenter:] The |nohcenter| option disables the horizontal centering of the contents of all covers, labels and layouts.
% \end{description}
%
% \vspace*{0.5cm}
%
% \section{Font size}
%
% For covers, often a large font is desired. Here is a list of the standard \LaTeX\ sizing macros:
% \begin{itemize}
%	\item {\tiny |\tiny|}
%	\item {\scriptsize |\scriptsize|}
%	\item {\footnotesize |\footnotesize|}
%	\item {\small |\small|}
%	\item {\normalsize |\normalsize|}
%	\item {\large |\large|}
%	\item {\Large |\Large|}
%	\item {\LARGE |\LARGE|}
%	\item {\huge |\huge|}
%	\item {\Huge |\Huge|}
% \end{itemize}
% Their use is the same: |{\huge text to be resized}|.
%
% If the largest is still not enough, use the |\scalebox| \marg{ratio} \marg{text} macro:
% \begin{itemize}
%	\item \scalebox{4}{ratio is 4}
%	\item \scalebox{5}{ratio is 5}
%	\item \scalebox{7}{ratio is 7}
% \end{itemize}
% The |\scalebox| macro can be used on many other things, not just text.
%
% All of the above presented methods increase or decrease the font size relative to the document's default font size.
% To create fixed size fonts, use the \textsf{fix-cm} package's |\fontsize| macro.
%
% \section{Troubleshooting}
%
% \begin{description}
%	\item[Problem: the text won't fit into a frame.] Suggestions: try to break it into multiple lines, for example with the |\\| macro. 
%		Decrease the font size. Use scaling to shrink the content with the |\scalebox{ratio}{object}| macro. 
%	\item[Problem: printed pieces do not fit.] Suggestions: make sure the pieces are appropriate for the selected container. Make sure
%		the software used for viewing and printing result file (the PDF/DVI/PS viewer) does not resize the page before printing. 
%	\item[Problem: the cover won't fit onto one page.] Suggestions: use a large enough paper size. Decrease te margin of the paper with
%		the \texttt{geometry} package. An A4 paper with 1cm margins should be able to contain all cover types.
%	\item[Problem: the content is not in the vertical center of a cover.] Suggestion: see the \texttt{noalign} 
%		package option on page \pageref{opt:noalign}.
% \end{description}
% 
% \StopEventually{\PrintChanges\PrintIndex}
%
% \section{Implementation}
%
% Used for setting fix font size for spine texts.
%    \begin{macrocode}
\RequirePackage{fix-cm}
%    \end{macrocode}
%
% Used for calculating lengths
%    \begin{macrocode}
\RequirePackage{calc}
%    \end{macrocode}
%
% Used for the nofold option
%    \begin{macrocode}
\RequirePackage{ifthen}
%    \end{macrocode}

% Used for drawing, resizing, rotating
%    \begin{macrocode}
\RequirePackage{graphicx}
%    \end{macrocode}

%% The |noalign| option sets all text aligning lengths to zero.
%    \begin{macrocode}
\DeclareOption{noalign}{
    \setlength{\sc@jewelalign}{0cm}
    \setlength{\sc@keepcasealign}{0cm}
    \setlength{\sc@inalign}{0cm}
	\setboolean{sc@align}{false}
}
%    \end{macrocode}

%% Layouts should set this to true to indicate the containing cover 
%% to not use align spaces even if noalign is not used
%    \begin{macrocode}
\newboolean{sc@layout}
\setboolean{sc@layout}{false}
%    \end{macrocode}


%% The |nofold| option removes the folding lines on the cut-outs.
%    \begin{macrocode}
\DeclareOption{nofold}{
	\setboolean{sc@fold}{false}
}
%    \end{macrocode}


%% Redefines rotation degrees to rotate spine text with $180^\circ$.
%    \begin{macrocode}
\DeclareOption{spiner}{
    \renewcommand{\sc@spinerotone}{270}
    \renewcommand{\sc@spinerottwo}{90}
}
%    \end{macrocode}

%% Disables horizontal centering everywhere
%    \begin{macrocode}
\DeclareOption{nohcenter}{
    \renewcommand{\sc@centering}{}
}
%    \end{macrocode}

% \begin{macro}{\sc@spinerotone}
%    Default rotation degree. \\
%    Usage: |\sc@spinerotone|
%    \begin{macrocode}
\newcommand{\sc@spinerotone}{90}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@spinerottwo}
%    Default rotation degree. \\
%    Usage: |\sc@spinerottwo|
%    \begin{macrocode}
\newcommand{\sc@spinerottwo}{270}
%    \end{macrocode}
% \end{macro}

%% Boolean for indicating whether or not the folding lines need to be drawn. True value means to draw.
%    \begin{macrocode}
\newboolean{sc@fold}
\setboolean{sc@fold}{true}
%    \end{macrocode}

%% Boolean for indicating whether or not the default aligning is needed.
%    \begin{macrocode}
\newboolean{sc@align}
\setboolean{sc@align}{true}
%    \end{macrocode}

% \begin{macro}{\sc@truestr}
%    Stores the string that is used to indicate to always draw a border in |\sc@choicebox|. \\
%    Usage: |\sc@truestr|
%    \begin{macrocode}
\newcommand{\sc@truestr}{t}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@falsestr}
%    Stores the string that is used to indicate to not draw a border in |\sc@choicebox| if nofold option is set. \\
%    Usage: |\sc@falsestr|
%    \begin{macrocode}
\newcommand{\sc@falsestr}{f}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@centering}
%    Centering alias to allow disabling the centering, see novcenter package option
%    Usage: |\sc@centering|
%    \begin{macrocode}
\newcommand{\sc@centering}{\centering}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@unittype}
%    Unit type for all lengths. \\
%    Usage: |\sc@unittype|
%    \begin{macrocode}
\newcommand{\sc@unittype}{mm}
%    \end{macrocode}
% \end{macro}

% Setting unit length for drawing
%    \begin{macrocode}
\newcommand{\sc@picinit}{%
	\setlength{\unitlength}{1\sc@unittype}%
}
%    \end{macrocode}

%% Text aligning lengths
% These lengths ensure that the text is not in the vertical center of a cell,
% instead, they are little above of the center. 
%    \begin{macrocode}
\newlength{\sc@jewelalign}
\setlength{\sc@jewelalign}{15 \sc@unittype}
\newlength{\sc@keepcasealign}
\setlength{\sc@keepcasealign}{40 \sc@unittype}
\newlength{\sc@inalign}
\setlength{\sc@inalign}{30 \sc@unittype}
%    \end{macrocode}

% Dimension names are created as follows: prefixed with |sc@|, then some letters for
% identifying the case, then place, then width or height and the draw word.

%% CD jewel case dimensions 
%    \begin{macrocode}
\newcounter{sc@cdjccoverwidthdraw}
\setcounter{sc@cdjccoverwidthdraw}{120}
\newcounter{sc@cdjccoverheightdraw}
\setcounter{sc@cdjccoverheightdraw}{120}
\newcounter{sc@cdjcspinewidthdraw}
\setcounter{sc@cdjcspinewidthdraw}{6}
\newcounter{sc@cdjcbackheightdraw}
\setcounter{sc@cdjcbackheightdraw}{117}
\newcounter{sc@cdjcbackwidthdraw}
\setcounter{sc@cdjcbackwidthdraw}{151}
\newcounter{sc@cdjcbackinwidthdraw}
\setcounter{sc@cdjcbackinwidthdraw}{%
	\value{sc@cdjcbackwidthdraw} - 2*\value{sc@cdjcspinewidthdraw}}
%    \end{macrocode}

%% Mini disk dimensions
%    \begin{macrocode}
\newcounter{sc@cdLXXXjccoverwidthdraw}
\setcounter{sc@cdLXXXjccoverwidthdraw}{80}
\newcounter{sc@cdLXXXjccoverheightdraw}
\setcounter{sc@cdLXXXjccoverheightdraw}{80}
\newcounter{sc@cdLXjccoverwidthdraw}
\setcounter{sc@cdLXjccoverwidthdraw}{60}
\newcounter{sc@cdLXjccoverheightdraw}
\setcounter{sc@cdLXjccoverheightdraw}{60}
%    \end{macrocode}

%% Jewelcase spine fixed text font size
% \begin{macro}{\sc@cdjfontsize}
%    Usage: |\sc@cdjfontsize|
%    \begin{macrocode}
\newcommand{\sc@cdjfontsize}{15}
%    \end{macrocode}
% \end{macro}

%% DVD keepcase dimensions
%    \begin{macrocode}
\newcounter{sc@dvdkccoverwidthdraw}
\setcounter{sc@dvdkccoverwidthdraw}{128}
\newcounter{sc@dvdkccoverheightdraw}
\setcounter{sc@dvdkccoverheightdraw}{183}
\newcounter{sc@dvdkcspinewidthdraw}
\setcounter{sc@dvdkcspinewidthdraw}{14}
\newcounter{sc@dvdkcinletwidthdraw}
\setcounter{sc@dvdkcinletwidthdraw}{115}
\newcounter{sc@dvdkcinletheightdraw}
\setcounter{sc@dvdkcinletheightdraw}{175}
%    \end{macrocode}

% Slim DVD keepcase dimensions
%    \begin{macrocode}
\newcounter{sc@sdvdkcspinewidthdraw}
\setcounter{sc@sdvdkcspinewidthdraw}{7}
%    \end{macrocode}

%% Blu-ray keepcase dimensions
%    \begin{macrocode}
\newcounter{sc@brcoverheightdraw}
\setcounter{sc@brcoverheightdraw}{149}
\newcounter{sc@brinletwidthdraw}
\setcounter{sc@brinletwidthdraw}{115}
\newcounter{sc@brinletheightdraw}
\setcounter{sc@brinletheightdraw}{140}
%    \end{macrocode}

%% Dimensions for drawing the sleeves
%    \begin{macrocode}
\newcounter{sc@dssleeve}
\setcounter{sc@dssleeve}{15}
\newcounter{sc@dssleeveLXXXmm}
\setcounter{sc@dssleeveLXXXmm}{10}
\newcounter{sc@dssleeveLXmm}
\setcounter{sc@dssleeveLXmm}{8}
%    \end{macrocode}

%    \begin{macrocode}
\ProcessOptions\relax 
%    \end{macrocode}

%% Temporary counters for the implementation.
%    \begin{macrocode}
\newcounter{sc@tempa}
\newcounter{sc@tempb}
\newcounter{sc@tempc}
\newcounter{sc@tempd}
\newcounter{sc@tempe}
\newcounter{sc@tempf}
\newcounter{sc@tempg}
\newcounter{sc@layouttempa}
\newcounter{sc@layouttempb}
\newcounter{sc@layouttempc}
\newcounter{sc@resizertempa}
%    \end{macrocode}

% Puts the desired vspace if the amount is not null and no layout is currently being used
%    \begin{macrocode}
\newcommand{\sc@doalign}[1]{%
	\ifthenelse{\equal{#1}{} \OR \boolean{sc@layout}}{}{\ \\ \vspace{#1}}%
	\setboolean{sc@layout}{false}%
}
%    \end{macrocode}

% The covers are drawed inside the \texttt{picture} environment. The text is always placed inside a |\parbox| .
%
% The space produced with the |\vspace| macros are for aligning purposes. Without them, the texts would be 
% vertically centered in the cell. 

% \begin{macro}{\covers}
%    Creates a jewel case cover with a front and a backsheet.
%    Usage: |\covers| \oarg{backsheet text} \marg{cover title} \marg{spine text}
%    \begin{macrocode}
\DeclareRobustCommand{\covers}[3][\ ]{%
    \frontcover{#2}
    
    \vspace*{0.5cm}%
    \backsheet[#1]{#3}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\frontcover}
%    Creates front cover for a jewel case.
%    Usage: |\frontcover| \marg{cover title}
%    \begin{macrocode}
\DeclareRobustCommand{\frontcover}[1]{%
    \sc@cell{#1}{\value{sc@cdjccoverwidthdraw}}%
		{\value{sc@cdjccoverheightdraw}}%
		{\sc@jewelalign}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\LXfrontcover}
%    Creates front cover for a 60 millimeter jewel case.
%    Usage: |\LXfrontcover| \marg{cover title}
%    \begin{macrocode}
\DeclareRobustCommand{\LXfrontcover}[1]{%
    \sc@cell{#1}{\value{sc@cdLXjccoverwidthdraw}}%
		{\value{sc@cdLXjccoverheightdraw}}%
		{\sc@jewelalign}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\LXXXfrontcover}
%    Creates front cover for a 80 millimeter jewel case.
%    Usage: |\LXXXfrontcover| \marg{cover title}
%    \begin{macrocode}
\DeclareRobustCommand{\LXXXfrontcover}[1]{%
    \sc@cell{#1}{\value{sc@cdLXXXjccoverwidthdraw}}%
		{\value{sc@cdLXXXjccoverheightdraw}}%
		{\sc@jewelalign}%
}
%    \end{macrocode}
% \end{macro}

% Rotating for one of the spine texts. Also used in |\singlesheet|
%    \begin{macrocode}
\newcounter{sc@backsheetspinerot}
\setcounter{sc@backsheetspinerot}{180+\sc@spinerotone}
%    \end{macrocode}

% \begin{macro}{\backsheet}
%    Creates backsheet for a jewel case with 2 spines.
%    Usage: |\backsheet| \oarg{backsheet middle text} \marg{spine text}
%    \begin{macrocode}
\DeclareRobustCommand{\backsheet}[2][\ ]{%
	\sc@picinit%
	\begin{picture}%
		(\value{sc@cdjcbackwidthdraw}, \value{sc@cdjcbackheightdraw})%
		\sc@choicebox{\value{sc@cdjcspinewidthdraw}}%
			{\value{sc@cdjcbackheightdraw}}%
			{\rotatebox{\sc@spinerotone}%
				{\fontsize{\sc@cdjfontsize}{36}\selectfont #2}}%
			{\sc@truestr}{\sc@truestr}{\sc@truestr}{\sc@falsestr}%
		\sc@choicebox{\value{sc@cdjcbackinwidthdraw}}%
			{\value{sc@cdjcbackheightdraw}}%
			{\parbox[c]{\value{sc@cdjcbackinwidthdraw} \sc@unittype}{%
				\sc@centering #1\sc@doalign{\sc@jewelalign}}}%
			{\sc@truestr}{\sc@truestr}{\sc@falsestr}{\sc@falsestr}%
		\sc@choicebox{\value{sc@cdjcspinewidthdraw}}%
			{\value{sc@cdjcbackheightdraw}}%
			{\rotatebox{\value{sc@backsheetspinerot}}{%
				\fontsize{\sc@cdjfontsize}{36}\selectfont #2}}%
			{\sc@truestr}{\sc@truestr}{\sc@falsestr}{\sc@truestr}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jewelspine}
%    Creates a single spine for a jewel case.
%    Usage: |\jewelspine| \marg{text}
%    \begin{macrocode}
\DeclareRobustCommand{\jewelspine}[1]{%
	\sc@picinit%
	\begin{picture}%
		(\value{sc@cdjccoverheightdraw}, \value{sc@cdjcspinewidthdraw})%
		\framebox%
			(\value{sc@cdjccoverheightdraw}, \value{sc@cdjcspinewidthdraw})%
			{\fontsize{\sc@cdjfontsize}{36}\selectfont #1}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\singlesheet}
%    Creates a single sheet for a special jewel case.
%    Usage: |\singlesheet| \marg{front} \marg{front side} \marg{spine} \marg{back}
%    \begin{macrocode}
\DeclareRobustCommand{\singlesheet}[4]{%
	\sc@picinit%
	\begin{picture}(155,120)%
		\put(0,2){%
			\sc@choicebox{15}{116}%
				{\rotatebox{90}{\parbox[c]{116\sc@unittype}{\sc@centering #4}}}%
				{\sc@truestr}{\sc@truestr}{\sc@truestr}{\sc@falsestr}}%
		\put(15,2){%
			\sc@choicebox{3}{116}%
				{\rotatebox{\value{sc@backsheetspinerot}}{\fontsize{9}{36}\selectfont #3}}%
				{\sc@truestr}{\sc@truestr}{\sc@falsestr}{\sc@falsestr}}%
		\put(36,0){%
			\makebox(120,120)[c]{%
				\parbox[c]{120\sc@unittype}{%
					\sc@centering #1\sc@doalign{\sc@jewelalign}}}}%
		\put(18,2){%
			\makebox(18,120)[c]{%
				\rotatebox{270}{\parbox[c]{18\sc@unittype}{\sc@centering #2}}}}%
		\put(18,2){\line(1,0){18}}%
		\put(18,118){\line(1,0){18}}%
		\put(36,0){\line(0,1){2}}%
		\put(36,118){\line(0,1){2}}%
		\put(36,0){\line(1,0){119}}%
		\put(36,120){\line(1,0){119}}%
		\put(155,0){\line(0,1){120}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@sleeve}
%    Creates a custom-sized sleeve for cutting out and glueing together.
%    Usage: |\sc@sleeve| \oarg{other side middle text} \marg{middle text} \marg{sleeve length} 
%    \marg{cover height} \marg{cover width} \marg{sleeve drawing}
%    \begin{macrocode}
\DeclareRobustCommand{\sc@sleeve}[6][]{%
	\setcounter{sc@tempc}{#5 + 2}%
	\setcounter{sc@tempd}{#4 + 2}%
	\setcounter{sc@tempe}{\value{sc@tempc} + #3 *2}%
	\setcounter{sc@tempf}{2 * \value{sc@tempd} + #3}%
	\setcounter{sc@tempg}{2 * \value{sc@tempd}}%
	\sc@picinit%
	\begin{picture}(\value{sc@tempe}, \value{sc@tempf})%
		\put(0,\value{sc@tempd}){#6}%
		\put(#3,\value{sc@tempf}){\rotatebox{270}{#6}}%
		\put(\value{sc@tempe},\value{sc@tempg}){\rotatebox{180}{#6}}%
		\put(#3,\value{sc@tempd}){%
			\sc@choicebox{\value{sc@tempc}}{\value{sc@tempd}}{%
				\parbox[c]{\value{sc@tempc} \sc@unittype}{%
					\sc@centering #2\sc@doalign{\sc@jewelalign}}%
			}{\sc@falsestr}{\sc@falsestr}{\sc@falsestr}{\sc@falsestr}%
		}%
		\put(#3,0){%
			\sc@choicebox{\value{sc@tempc}}{\value{sc@tempd}}{%
				\rotatebox{180}{\parbox[c]{\value{sc@tempc} \sc@unittype}{%
					\sc@centering #1\sc@doalign{\sc@jewelalign}}}%
			}{\sc@truestr}{\sc@falsestr}{\sc@truestr}{\sc@truestr}%
		}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@sleevebox}
%    Draws a fold part of the sleeve.
%    Usage: |\usebox{\sc@sleevebox}|
%    \begin{macrocode}
\newsavebox{\sc@sleevebox}
\savebox{\sc@sleevebox}{%
	\sc@picinit%
	\setcounter{sc@tempa}{\value{sc@cdjccoverheightdraw} + 2}%
	\put(\value{sc@dssleeve},0){\line(-1,1){\value{sc@dssleeve}}}%
	\put(0,\value{sc@dssleeve}){\line(0,1){92}}%
	\put(\value{sc@dssleeve},\value{sc@tempa}){%
		\line(-1,-1){\value{sc@dssleeve}}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@sleeveboxLXmm}
%    Draws a fold part of the 60 mm sleeve.
%    Usage: |\usebox{\sc@sleeveboxLXmm}|
%    \begin{macrocode}
\newsavebox{\sc@sleeveboxLXmm}
\savebox{\sc@sleeveboxLXmm}{%
	\sc@picinit%
	\setcounter{sc@tempa}{\value{sc@cdLXjccoverheightdraw} + 2}%
	\put(\value{sc@dssleeveLXmm},0)%
		{\line(-1,1){\value{sc@dssleeveLXmm}}}%
	\put(0,\value{sc@dssleeveLXmm}){\line(0,1){46}}%
	\put(\value{sc@dssleeveLXmm},\value{sc@tempa}){%
		\line(-1,-1){\value{sc@dssleeveLXmm}}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@sleeveboxLXXXmm}
%    Draws a fold part of the 80 mm sleeve.
%    Usage: |\usebox{\sc@sleeveboxLXXXmm}|
%    \begin{macrocode}
\newsavebox{\sc@sleeveboxLXXXmm}
\savebox{\sc@sleeveboxLXXXmm}{%
	\sc@picinit%
	\setcounter{sc@tempa}{\value{sc@cdLXXXjccoverheightdraw} + 2}%
	\put(\value{sc@dssleeveLXXXmm},0)%
		{\line(-1,1){\value{sc@dssleeveLXXXmm}}}%
	\put(0,\value{sc@dssleeveLXXXmm}){\line(0,1){62}}%
	\put(\value{sc@dssleeveLXXXmm},\value{sc@tempa}){%
		\line(-1,-1){\value{sc@dssleeveLXXXmm}}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sleeve}
%    Creates a disk sleeve for cutting out and glueing together.
%    Usage: |\sleeve| \oarg{other side middle text} \marg{middle text}
%    \begin{macrocode}
\DeclareRobustCommand{\sleeve}[2][]{%
	\sc@sleeve[#1]{#2}{\value{sc@dssleeve}}%
		{\value{sc@cdjccoverheightdraw}}%
		{\value{sc@cdjccoverwidthdraw}}%
		{\usebox{\sc@sleevebox}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sleeveLXXX}
%    Creates a 80 millimeter disk sleeve for cutting out and glueing together.
%    Usage: |\sleeveLXXX| \oarg{other side middle text} \marg{middle text}
%    \begin{macrocode}
\DeclareRobustCommand{\sleeveLXXX}[2][]{%
	\sc@sleeve[#1]{#2}{\value{sc@dssleeveLXXXmm}}%
		{\value{sc@cdLXXXjccoverheightdraw}}%
		{\value{sc@cdLXXXjccoverwidthdraw}}%
		{\usebox{\sc@sleeveboxLXXXmm}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sleeveLX}
%    Creates a 60 millimeter disk sleeve for cutting out and glueing together.
%    Usage: |\sleeveLX| \oarg{other side middle text} \marg{middle text}
%    \begin{macrocode}
\DeclareRobustCommand{\sleeveLX}[2][]{%
	\sc@sleeve[#1]{#2}{\value{sc@dssleeveLXmm}}%
		{\value{sc@cdLXjccoverheightdraw}}%
		{\value{sc@cdLXjccoverwidthdraw}}%
		{\usebox{\sc@sleeveboxLXmm}}%
}
%    \end{macrocode}
% \end{macro}



% \begin{macro}{\sleevela}
%    Creates a disk sleeve for lever arch files.
%    Usage: |\sleevela| \oarg{back text} \marg{front text}
%    \begin{macrocode}
\DeclareRobustCommand{\sleevela}[2][]{%
	\sc@picinit%
	\begin{picture}(165,248)%
		\put(13,0){\usebox{\sc@sleevebox}}%
		\put(165,122){\rotatebox{180}{\usebox{\sc@sleevebox}}}%
		\put(28,0){%
			\sc@choicebox{122}{122}{%
				\rotatebox{180}{%
					\parbox[c]{122\sc@unittype}{\sc@centering #1\sc@doalign{\sc@jewelalign}}%
			}}{\sc@truestr}{\sc@falsestr}{\sc@falsestr}{\sc@falsestr}%
		}%
		\put(28,122){%
			\sc@choicebox{122}{122}{%
				\parbox[c]{122\sc@unittype}{\sc@centering #2\sc@doalign{\sc@jewelalign}}%
			}{\sc@falsestr}{\sc@truestr}{\sc@falsestr}{\sc@truestr}%
		}%
		\put(0,122){%
			\sc@choicebox{28}{122}{}%
				{\sc@truestr}{\sc@truestr}{\sc@truestr}{\sc@falsestr}}%
		\put(14,142.5){\circle{6}}%
		\put(14,222.5){\circle{6}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}


% \begin{macro}{\keepcase}
%    Universal macro for creating keepcases in various sizes.
%    Usage: |\keepcase| \oarg{backtext} \marg{cover text} \marg{spinetext} \marg{cover height} 
%    \marg{cover width} \marg{spine width}
%    \begin{macrocode}
\DeclareRobustCommand{\keepcase}[6][]{%
	\setcounter{sc@tempa}{2*#5 + #6 }%
	\sc@picinit%
	\begin{picture}(#4, \value{sc@tempa})%
		\rotatebox{90}{%
			\sc@choicebox{#5}{#4}{%
				\parbox[c]{#5 \sc@unittype}{%
					\sc@centering #1\sc@doalign{\sc@keepcasealign}}%
			}{\sc@truestr}{\sc@truestr}{\sc@truestr}{\sc@falsestr}%
			\sc@choicebox{#6}{#4}{%
				\rotatebox{\sc@spinerottwo}{\parbox[c]{#4 \sc@unittype}{%
					\sc@centering #3}}%
			}{\sc@truestr}{\sc@truestr}{\sc@falsestr}{\sc@falsestr}%
			\sc@choicebox{#5}{#4}{%
				\parbox[c]{#5 \sc@unittype}{%
					\sc@centering #2\sc@doalign{\sc@keepcasealign}}%
			}{\sc@truestr}{\sc@truestr}{\sc@falsestr}{\sc@truestr}%
		}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\slimdvd}
%    Creates a slim dvd keepcase cover.
%    Usage: |\slimdvd| \oarg{back text} \marg{cover text} \marg{spine text}
%    \begin{macrocode}
\DeclareRobustCommand{\slimdvd}[3][]{%
    \keepcase[#1]{#2}{#3}{\value{sc@dvdkccoverheightdraw}}%
		{\value{sc@dvdkccoverwidthdraw}}%
        {\value{sc@sdvdkcspinewidthdraw}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\dvd}
%    Creates a dvd keepcase.
%    Usage: |\dvd| \oarg{back text} \marg{cover text} \marg{spine text}
%    \begin{macrocode}
\DeclareRobustCommand{\dvd}[3][]{%
    \keepcase[#1]{#2}{#3}{\value{sc@dvdkccoverheightdraw}}%
		{\value{sc@dvdkccoverwidthdraw}}%
        {\value{sc@dvdkcspinewidthdraw}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\bluray}
%    Creates a Blu-Ray keepcase.
%    Usage: |\bluray| \oarg{backtext} \marg{cover text} \marg{spine text}
%    \begin{macrocode}
\DeclareRobustCommand{\bluray}[3][]{%
    \keepcase[#1]{#2}{#3}{\value{sc@brcoverheightdraw}}%
		{\value{sc@dvdkccoverwidthdraw}}%
        {\value{sc@dvdkcspinewidthdraw}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\coverimg}
%    Resizes the image for a jewel case cover.
%    Usage: |\coverimg| \parg{picture}
%    \begin{macrocode}
\DeclareRobustCommand{\coverimg}[1]{%
    \resizebox{\value{sc@cdjccoverwidthdraw} \sc@unittype}{%
		\value{sc@cdjccoverheightdraw} \sc@unittype}{#1}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\backsheetimg}
%    Resizes the image for a jewel case backsheet with spines.
%    Usage: |\backsheetimg| \parg{picture}
%    \begin{macrocode}
\DeclareRobustCommand{\backsheetimg}[1]{%
    \resizebox{%
		\value{sc@cdjcbackwidthdraw}+\value{sc@cdjcspinewidthdraw}*2%
			\sc@unittype}%
		{\value{sc@cdjcbackheightdraw} \sc@unittype}{#1}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\slimdvdimg}
%    Resizes an image for the slim dvd keepcase.
%    Usage: |\slimdvdimg| \parg{picture}
%    \begin{macrocode}
\DeclareRobustCommand{\slimdvdimg}[1]{%
	\resizebox{\value{sc@dvdkcheightdraw} \sc@unittype}%
		{\value{sc@sdvdkccoverwidthdraw}*2+\value{sc@sdvdkcspinewidthdraw}%
			\sc@unittype}{#1}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\dvdimg}
%    Resizes an image for a dvd keepcase.
%    Usage: |\dvdimg| \parg{picture}
%    \begin{macrocode}
\DeclareRobustCommand{\dvdimg}[1]{%
	\resizebox{\value{sc@dvdkcheightdraw} \sc@unittype}%
	{\value{sc@dvdkccoverwidthdraw}*2+\value{sc@dvdkcspinewidthdraw}%
		\sc@unittype}{#1}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\blurayimg}
%    Resizes an image for the Blu-Ray keepcase.
%    Usage: |\blurayimg| \parg{picture}
%    \begin{macrocode}
\DeclareRobustCommand{\blurayimg}[1]{%
	\resizebox{\value{sc@brcoverheightdraw} \sc@unittype}%
		{\value{sc@dvdkccoverwidthdraw}*2+\value{sc@dvdkcspinewidthdraw}%
			\sc@unittype}{#1}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@cell}
%    Creates a single cell for a cover, inlay.
%    Usage: |\sc@cell| \marg{text} \marg{width} \marg{height} \marg{aligning space}
%    \begin{macrocode}
\DeclareRobustCommand{\sc@cell}[4]{%
	\sc@picinit%
	\begin{picture}(#2,#3)%
		\framebox(#2,#3)[c]{%
			\parbox[c]{#2 \sc@unittype}{\sc@centering #1\sc@doalign{#4}}%
		}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@choicebox}
%    Creates a box with configurable borders. If a parameter in 4-7 range is |\sc@truestr|, then
%    the appropriate border is drawn. If |\sc@falsestr| or nofold option is used, border is not drawn.
%    Usage: |\sc@choicebox| \marg{width} \marg{height} \marg{text} \marg{bottom border} 
%    \marg{top border} \marg{left border} \marg{right border}
%    \begin{macrocode}
\newcommand{\sc@choicebox}[7]{%
	\makebox(#1,#2)[c]{%
		\parbox[c]{#1 \sc@unittype}{\sc@centering #3}%
	}%
	\ifthenelse{\boolean{sc@fold} \OR \equal{#4}{\sc@truestr}}%
		{\put(-#1,0){\line(1,0){#1}}}{}%
	\ifthenelse{\boolean{sc@fold} \OR \equal{#5}{\sc@truestr}}%
		{\put(-#1,#2){\line(1,0){#1}}}{}%
	\ifthenelse{\boolean{sc@fold} \OR \equal{#6}{\sc@truestr}}%
		{\put(-#1,0){\line(0,1){#2}}}{}%
	\ifthenelse{\boolean{sc@fold} \OR \equal{#7}{\sc@truestr}}%
		{\put(0,0){\line(0,1){#2}}}{}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\inlay}
%    Creates a custom sized inlay.
%    Usage: |\inlay| \marg{text} \marg{width} \marg{height}
%    \begin{macrocode}
\DeclareRobustCommand{\inlay}[3]{%
	\sc@cell{#1}{#2}{#3}{\sc@inalign}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\dvdinlay}
%    Creates an inlay card for a dvd/slimdvd keepcase.
%    Usage: |\dvdinlay| \marg{text}
%    \begin{macrocode}
\DeclareRobustCommand{\dvdinlay}[1]{%
	\inlay{#1}{\value{sc@dvdkcinletwidthdraw}}%
		{\value{sc@dvdkcinletheightdraw}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\blurayinlay}
%    Creates an inlay for a Blu-Ray keepcase.
%    Usage: |\blurayinlay| \marg{text}
%    \begin{macrocode}
\DeclareRobustCommand{\blurayinlay}[1]{%
	\inlay{#1}{\value{sc@brinletwidthdraw}}%
		{\value{sc@brinletheightdraw}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\djewel}
%    Creates a two-page jewel case cover.
%    Usage: |\djewel| \marg{first page text} \marg{second page text}
%    \begin{macrocode}
\DeclareRobustCommand{\djewel}[2]{%
	\setcounter{sc@tempa}{2 * \value{sc@cdjccoverwidthdraw}}%
	\sc@picinit%
	\begin{picture}(\value{sc@cdjccoverheightdraw}, \value{sc@tempa})%
		\rotatebox{90}{%
			\sc@choicebox{\value{sc@cdjccoverwidthdraw}}%
				{\value{sc@cdjccoverheightdraw}}{%
				\parbox[c]{\value{sc@cdjccoverwidthdraw} \sc@unittype}{%
					\sc@centering #2\sc@doalign{\sc@jewelalign}}%
			}{\sc@truestr}{\sc@truestr}{\sc@truestr}{\sc@falsestr}%
			\sc@choicebox{\value{sc@cdjccoverwidthdraw}}%
				{\value{sc@cdjccoverheightdraw}}{%
				\parbox[c]{\value{sc@cdjccoverwidthdraw} \sc@unittype}{%
					\sc@centering #1\sc@doalign{\sc@jewelalign}}%
			}{\sc@truestr}{\sc@truestr}{\sc@falsestr}{\sc@truestr}%
		}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\floppyIIIV}
%    Cover for the 3.5-inch floppy.
%    Usage: |\floppyIIIV| \marg{front content} \marg{back content}
%    \begin{macrocode}
\DeclareRobustCommand{\floppyIIIV}[2]{%
	\sc@picinit%
	\begin{picture}(70,69.5)%
		\put(-2,66.5){\qbezier(3, 3)(2, 3)(2, 2)}%
		\put(1,69.5){\line(1,0){68}}%
		\put(66,66.5){\qbezier(4, 2)(4, 3)(3, 3)}%
		\put(0,56.5){%
			\makebox(70,13)[c]{\rotatebox{180}{\parbox[c]{70mm}{\sc@centering #2}}}}%
		\put(0,54){\sc@choicebox{70}{2.5}{}%
			{\sc@falsestr}{\sc@falsestr}{\sc@truestr}{\sc@truestr}}%
		\put(0,0){\makebox(70,54)[c]{\parbox[c]{70mm}{\sc@centering #1}}}%
		\put(0,1){\line(0,1){67.5}}%
		\put(70,1){\line(0,1){67.5}}%
		\put(1,0){\line(1,0){68}}%
		\put(-2,-1){\qbezier(2, 2)(2, 1)(3, 1)}%
		\put(66,-1){\qbezier(3, 1)(4, 1)(4, 2)}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\zipdisk}
%    Cover for a zip disk.
%    Usage: |\zipdisk| \marg{front content} \marg{back content}
%    \begin{macrocode}
\DeclareRobustCommand{\zipdisk}[2]{%
	\sc@picinit%
	\begin{picture}(98,120)%
		\put(0,20){\makebox(98,100)[c]{\parbox[c]{98\sc@unittype}{\sc@centering #1}}}%
		\put(0,13){\sc@choicebox{98}{7}{}%
			{\sc@falsestr}{\sc@falsestr}{\sc@truestr}{\sc@truestr}}%
		\put(0,0){%
			\makebox(98,13)[c]{%
				\rotatebox{180}{\parbox[c]{98\sc@unittype}{\sc@centering #2}}}}%
		\put(0,0){\framebox(98,120){}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\zipdiskII}
%    Cover for a zip disk.
%    Usage: |\zipdiskII| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\zipdiskII}[1]{%
	\sc@cell{#1}{60}{51}{}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\disk}
%    Creates a CD-R image.
%    Usage: |\disk| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\disk}[1]{%
	\sc@picinit%
	\begin{picture}(120,120)%
		% Ellipse: u = 60.0 v = 60.0 a = 60.0 b = 60.0 phi = 0.0 Grad
		\qbezier(120.0, 60.0)(120.0, 84.8528)(102.4264, 102.4264)%
		\qbezier(102.4264, 102.4264)(84.8528, 120.0)(60.0, 120.0)%
		\qbezier(60.0, 120.0)(35.1472, 120.0)(17.5736, 102.4264)%
		\qbezier(17.5736, 102.4264)(0.0, 84.8528)(0.0, 60.0)%
		\qbezier(0.0, 60.0)(0.0, 35.1472)(17.5736, 17.5736)%
		\qbezier(17.5736, 17.5736)(35.1472, 0.0)(60.0, 0.0)%
		\qbezier(60.0, 0.0)(84.8528, 0.0)(102.4264, 17.5736)%
		\qbezier(102.4264, 17.5736)(120.0, 35.1472)(120.0, 60.0)%
		% Ellipse: u = 60.0 v = 60.0 a = 58.0 b = 58.0 phi = 0.0 Grad
		\qbezier(118.0, 60.0)(118.0, 84.0244)(101.0122, 101.0122)%
		\qbezier(101.0122, 101.0122)(84.0244, 118.0)(60.0, 118.0)%
		\qbezier(60.0, 118.0)(35.9756, 118.0)(18.9878, 101.0122)%
		\qbezier(18.9878, 101.0122)(2.0, 84.0244)(2.0, 60.0)%
		\qbezier(2.0, 60.0)(2.0, 35.9756)(18.9878, 18.9878)%
		\qbezier(18.9878, 18.9878)(35.9756, 2.0)(60.0, 2.0)%
		\qbezier(60.0, 2.0)(84.0244, 2.0)(101.0122, 18.9878)%
		\qbezier(101.0122, 18.9878)(118.0, 35.9756)(118.0, 60.0)%
		% Ellipse: u = 60.0 v = 60.0 a = 23.0 b = 23.0 phi = 0.0 Grad
		\qbezier(83.0, 60.0)(83.0, 69.5269)(76.2635, 76.2635)%
		\qbezier(76.2635, 76.2635)(69.5269, 83.0)(60.0, 83.0)%
		\qbezier(60.0, 83.0)(50.4731, 83.0)(43.7365, 76.2635)%
		\qbezier(43.7365, 76.2635)(37.0, 69.5269)(37.0, 60.0)%
		\qbezier(37.0, 60.0)(37.0, 50.4731)(43.7365, 43.7365)%
		\qbezier(43.7365, 43.7365)(50.4731, 37.0)(60.0, 37.0)%
		\qbezier(60.0, 37.0)(69.5269, 37.0)(76.2635, 43.7365)%
		\qbezier(76.2635, 43.7365)(83.0, 50.4731)(83.0, 60.0)%
		% Ellipse: u = 60.0 v = 60.0 a = 11.5 b = 11.5 phi = 0.0 Grad
		\qbezier(71.5, 60.0)(71.5, 64.7635)(68.1317, 68.1317)%
		\qbezier(68.1317, 68.1317)(64.7635, 71.5)(60.0, 71.5)%
		\qbezier(60.0, 71.5)(55.2365, 71.5)(51.8683, 68.1317)%
		\qbezier(51.8683, 68.1317)(48.5, 64.7635)(48.5, 60.0)%
		\qbezier(48.5, 60.0)(48.5, 55.2365)(51.8683, 51.8683)%
		\qbezier(51.8683, 51.8683)(55.2365, 48.5)(60.0, 48.5)%
		\qbezier(60.0, 48.5)(64.7635, 48.5)(68.1317, 51.8683)%
		\qbezier(68.1317, 51.8683)(71.5, 55.2365)(71.5, 60.0)%
		% Ellipse: u = 60.0 v = 60.0 a = 7.5 b = 7.5 phi = 0.0 Grad
		\qbezier(67.5, 60.0)(67.5, 63.1066)(65.3033, 65.3033)%
		\qbezier(65.3033, 65.3033)(63.1066, 67.5)(60.0, 67.5)%
		\qbezier(60.0, 67.5)(56.8934, 67.5)(54.6967, 65.3033)%
		\qbezier(54.6967, 65.3033)(52.5, 63.1066)(52.5, 60.0)%
		\qbezier(52.5, 60.0)(52.5, 56.8934)(54.6967, 54.6967)%
		\qbezier(54.6967, 54.6967)(56.8934, 52.5)(60.0, 52.5)%
		\qbezier(60.0, 52.5)(63.1066, 52.5)(65.3033, 54.6967)%
		\qbezier(65.3033, 54.6967)(67.5, 56.8934)(67.5, 60.0)%
		\put(0,0){%
			\makebox(120,120)[c]{%
				\parbox[c]{120\sc@unittype}{\sc@centering #1}%
		}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\emptydisk}
%    Creates a CD-R image.
%    Usage: |\emptydisk| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\emptydisk}[1]{%
	\sc@picinit%
	\begin{picture}(120,120)%
		% Ellipse: u = 60.0 v = 60.0 a = 60.0 b = 60.0 phi = 0.0 Grad
		\qbezier(120.0, 60.0)(120.0, 84.8528)(102.4264, 102.4264)%
		\qbezier(102.4264, 102.4264)(84.8528, 120.0)(60.0, 120.0)%
		\qbezier(60.0, 120.0)(35.1472, 120.0)(17.5736, 102.4264)%
		\qbezier(17.5736, 102.4264)(0.0, 84.8528)(0.0, 60.0)%
		\qbezier(0.0, 60.0)(0.0, 35.1472)(17.5736, 17.5736)%
		\qbezier(17.5736, 17.5736)(35.1472, 0.0)(60.0, 0.0)%
		\qbezier(60.0, 0.0)(84.8528, 0.0)(102.4264, 17.5736)%
		\qbezier(102.4264, 17.5736)(120.0, 35.1472)(120.0, 60.0)%
		% Ellipse: u = 60.0 v = 60.0 a = 7.5 b = 7.5 phi = 0.0 Grad
		\qbezier(67.5, 60.0)(67.5, 63.1066)(65.3033, 65.3033)%
		\qbezier(65.3033, 65.3033)(63.1066, 67.5)(60.0, 67.5)%
		\qbezier(60.0, 67.5)(56.8934, 67.5)(54.6967, 65.3033)%
		\qbezier(54.6967, 65.3033)(52.5, 63.1066)(52.5, 60.0)%
		\qbezier(52.5, 60.0)(52.5, 56.8934)(54.6967, 54.6967)%
		\qbezier(54.6967, 54.6967)(56.8934, 52.5)(60.0, 52.5)%
		\qbezier(60.0, 52.5)(63.1066, 52.5)(65.3033, 54.6967)%
		\qbezier(65.3033, 54.6967)(67.5, 56.8934)(67.5, 60.0)%
		\put(0,0){%
			\makebox(120,120)[c]{%
				\parbox[c]{120\sc@unittype}{\sc@centering #1}%
		}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\cdrdisk}
%    Creates a CD-R image.
%    Usage: |\cdrdisk| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\cdrdisk}[1]{%
	\sc@picinit%
	\begin{picture}(116, 116)%
		% Ellipse: u = 58.0 v = 58.0 a = 58.0 b = 58.0 phi = 0.0 Grad
		\qbezier(116.0, 58.0)(116.0, 82.0244)(99.0122, 99.0122)%
		\qbezier(99.0122, 99.0122)(82.0244, 116.0)(58.0, 116.0)%
		\qbezier(58.0, 116.0)(33.9756, 116.0)(16.9878, 99.0122)%
		\qbezier(16.9878, 99.0122)(0.0, 82.0244)(0.0, 58.0)%
		\qbezier(0.0, 58.0)(0.0, 33.9756)(16.9878, 16.9878)%
		\qbezier(16.9878, 16.9878)(33.9756, 0.0)(58.0, 0.0)%
		\qbezier(58.0, 0.0)(82.0244, 0.0)(99.0122, 16.9878)%
		\qbezier(99.0122, 16.9878)(116.0, 33.9756)(116.0, 58.0)%
		% Ellipse: u = 58.0 v = 58.0 a = 19.0 b = 19.0 phi = 0.0 Grad
		\qbezier(77.0, 58.0)(77.0, 65.8701)(71.435, 71.435)%
		\qbezier(71.435, 71.435)(65.8701, 77.0)(58.0, 77.0)%
		\qbezier(58.0, 77.0)(50.1299, 77.0)(44.565, 71.435)%
		\qbezier(44.565, 71.435)(39.0, 65.8701)(39.0, 58.0)%
		\qbezier(39.0, 58.0)(39.0, 50.1299)(44.565, 44.565)%
		\qbezier(44.565, 44.565)(50.1299, 39.0)(58.0, 39.0)%
		\qbezier(58.0, 39.0)(65.8701, 39.0)(71.435, 44.565)%
		\qbezier(71.435, 44.565)(77.0, 50.1299)(77.0, 58.0)%
		\put(0,0){%
			\makebox(116,116)[c]{%
				\parbox[c]{116\sc@unittype}{\sc@centering #1}%
		}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\cddvddisk}
%    Creates a CD, DVD image.
%    Usage: |\cddvddisk| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\cddvddisk}[1]{%
	\sc@picinit%
	\begin{picture}(117, 117)%
		% Ellipse: u = 58.5 v = 58.5 a = 58.5 b = 58.5 phi = 0.0 Grad
		\qbezier(117.0, 58.5)(117.0, 82.7315)(99.8657, 99.8657)%
		\qbezier(99.8657, 99.8657)(82.7315, 117.0)(58.5, 117.0)%
		\qbezier(58.5, 117.0)(34.2685, 117.0)(17.1343, 99.8657)%
		\qbezier(17.1343, 99.8657)(0.0, 82.7315)(0.0, 58.5)%
		\qbezier(0.0, 58.5)(0.0, 34.2685)(17.1343, 17.1343)%
		\qbezier(17.1343, 17.1343)(34.2685, 0.0)(58.5, 0.0)%
		\qbezier(58.5, 0.0)(82.7315, 0.0)(99.8657, 17.1343)%
		\qbezier(99.8657, 17.1343)(117.0, 34.2685)(117.0, 58.5)%
		% Ellipse: u = 58.5 v = 58.5 a = 11.25 b = 11.25 phi = 0.0 Grad
		\qbezier(69.75, 58.5)(69.75, 63.1599)(66.455, 66.455)%
		\qbezier(66.455, 66.455)(63.1599, 69.75)(58.5, 69.75)%
		\qbezier(58.5, 69.75)(53.8401, 69.75)(50.545, 66.455)%
		\qbezier(50.545, 66.455)(47.25, 63.1599)(47.25, 58.5)%
		\qbezier(47.25, 58.5)(47.25, 53.8401)(50.545, 50.545)%
		\qbezier(50.545, 50.545)(53.8401, 47.25)(58.5, 47.25)%
		\qbezier(58.5, 47.25)(63.1599, 47.25)(66.455, 50.545)%
		\qbezier(66.455, 50.545)(69.75, 53.8401)(69.75, 58.5)%
		\put(0,0){%
			\makebox(117,117)[c]{%
				\parbox[c]{117\sc@unittype}{\sc@centering #1}%
		}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\LXXXdisk}
%    Creates a 80 millimeter disk image.
%    Usage: |\LXXXdisk| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\LXXXdisk}[1]{%
	\sc@picinit%
	\begin{picture}(76, 76)%
		% Ellipse: u = 38.0 v = 38.0 a = 38.0 b = 38.0 phi = 0.0 Grad
		\qbezier(76.0, 38.0)(76.0, 53.7401)(64.8701, 64.8701)%
		\qbezier(64.8701, 64.8701)(53.7401, 76.0)(38.0, 76.0)%
		\qbezier(38.0, 76.0)(22.2599, 76.0)(11.1299, 64.8701)%
		\qbezier(11.1299, 64.8701)(0.0, 53.7401)(0.0, 38.0)%
		\qbezier(0.0, 38.0)(0.0, 22.2599)(11.1299, 11.1299)%
		\qbezier(11.1299, 11.1299)(22.2599, 0.0)(38.0, 0.0)%
		\qbezier(38.0, 0.0)(53.7401, 0.0)(64.8701, 11.1299)%
		\qbezier(64.8701, 11.1299)(76.0, 22.2599)(76.0, 38.0)%
		% Ellipse: u = 38.0 v = 38.0 a = 9.0 b = 9.0 phi = 0.0 Grad
		\qbezier(47.0, 38.0)(47.0, 41.7279)(44.364, 44.364)%
		\qbezier(44.364, 44.364)(41.7279, 47.0)(38.0, 47.0)%
		\qbezier(38.0, 47.0)(34.2721, 47.0)(31.636, 44.364)%
		\qbezier(31.636, 44.364)(29.0, 41.7279)(29.0, 38.0)%
		\qbezier(29.0, 38.0)(29.0, 34.2721)(31.636, 31.636)%
		\qbezier(31.636, 31.636)(34.2721, 29.0)(38.0, 29.0)%
		\qbezier(38.0, 29.0)(41.7279, 29.0)(44.364, 31.636)%
		\qbezier(44.364, 31.636)(47.0, 34.2721)(47.0, 38.0)%
		\put(0,0){%
			\makebox(76,76)[c]{%
				\parbox[c]{76\sc@unittype}{\sc@centering #1}%
		}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\vhsfront}
%    Front label for a VHS cassette.
%    Usage: |\vhsfront| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\vhsfront}[1]{%
	\sc@cell{#1}{76}{44}{}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\vhsspine}
%    Side spine label for a VHS cassette.
%    Usage: |\vhsspine| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\vhsspine}[1]{%
	\sc@cell{#1}{145}{17}{}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\CCCvhscover}
%    Case for a 300 series VHS cassette.
%    Usage: |\CCCvhscover| \marg{front} \marg{spine} \marg{back} 
%    \begin{macrocode}
\DeclareRobustCommand{\CCCvhscover}[3]{%
	\keepcase[#3]{#1}{#2}{197}{115}{27}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\CCCCvhscover}
%    Case for a 400 series VHS cassette.
%    Usage: |\CCCCvhscover| \marg{front} \marg{spine} \marg{back}
%    \begin{macrocode}
\DeclareRobustCommand{\CCCCvhscover}[3]{%
	\keepcase[#3]{#1}{#2}{210}{134.5}{27}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\cassettecover}
%    Cover label for an audio cassette.
%    Usage: |\cassettecover| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\cassettecover}[1]{%
	\sc@picinit%
	\begin{picture}(88,39)%
		% Ellipse: u = 22.0 v = 16.5 a = 7.5 b = 7.5 phi = 0.0 Grad
		% \qbezier(29.5, 16.5)(29.5, 19.6066)(27.3033, 21.8033)%
		% \qbezier(27.3033, 21.8033)(25.1066, 24.0)(22.0, 24.0)%
		\qbezier(22.0, 24.0)(18.8934, 24.0)(16.6967, 21.8033)%
		\qbezier(16.6967, 21.8033)(14.5, 19.6066)(14.5, 16.5)%
		\qbezier(14.5, 16.5)(14.5, 13.3934)(16.6967, 11.1967)%
		\qbezier(16.6967, 11.1967)(18.8934, 9.0)(22.0, 9.0)%
		% \qbezier(22.0, 9.0)(25.1066, 9.0)(27.3033, 11.1967)%
		% \qbezier(27.3033, 11.1967)(29.5, 13.3934)(29.5, 16.5)%
		% Ellipse: u = 66.0 v = 16.5 a = 7.5 b = 7.5 phi = 0.0 Grad
		\qbezier(73.5, 16.5)(73.5, 19.6066)(71.3033, 21.8033)%
		\qbezier(71.3033, 21.8033)(69.1066, 24.0)(66.0, 24.0)%
		% \qbezier(66.0, 24.0)(62.8934, 24.0)(60.6967, 21.8033)%
		% \qbezier(60.6967, 21.8033)(58.5, 19.6066)(58.5, 16.5)%
		% \qbezier(58.5, 16.5)(58.5, 13.3934)(60.6967, 11.1967)%
		% \qbezier(60.6967, 11.1967)(62.8934, 9.0)(66.0, 9.0)%
		\qbezier(66.0, 9.0)(69.1066, 9.0)(71.3033, 11.1967)%
		\qbezier(71.3033, 11.1967)(73.5, 13.3934)(73.5, 16.5)%
		\put(22,9){\line(1,0){44}}%
		\put(22,24){\line(1,0){44}}%
		\framebox(88,39)[c]{\parbox[c]{88\sc@unittype}{\sc@centering #1}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\cassetteinlay}
%    Cover label for an audio cassette.
%    Usage: |\cassetteinlay| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\cassetteinlay}[3]{%
	\sc@picinit%
	\begin{picture}(102,104)%
		\put(0,38){%
			\sc@choicebox{102}{66}{\parbox[c]{102\sc@unittype}{\sc@centering #1}}%
				{\sc@falsestr}{\sc@truestr}{\sc@truestr}{\sc@truestr}}%
		\put(0,25){%
			\sc@choicebox{102}{13}{\parbox[c]{102\sc@unittype}{\sc@centering #2}}%
				{\sc@falsestr}{\sc@falsestr}{\sc@truestr}{\sc@truestr}}%
		\put(0,0){%
			\sc@choicebox{102}{25}{\parbox[c]{102\sc@unittype}{\sc@centering #3}}%
				{\sc@truestr}{\sc@falsestr}{\sc@truestr}{\sc@truestr}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}


% \begin{macro}{\vinylcdcover}
%    Cover label for a vinyl CD.
%    Usage: |\vinylcdcover| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\vinylcdcover}[1]{%
	\sc@picinit%
	\begin{picture}(65,65)%
		% Ellipse: u = 32.5 v = 32.5 a = 32.5 b = 32.5 phi = 0.0 Grad
		\qbezier(65.0, 32.5)(65.0, 45.9619)(55.481, 55.481)%
		\qbezier(55.481, 55.481)(45.9619, 65.0)(32.5, 65.0)%
		\qbezier(32.5, 65.0)(19.0381, 65.0)(9.519, 55.481)%
		\qbezier(9.519, 55.481)(0.0, 45.9619)(0.0, 32.5)%
		\qbezier(0.0, 32.5)(0.0, 19.0381)(9.519, 9.519)%
		\qbezier(9.519, 9.519)(19.0381, 0.0)(32.5, 0.0)%
		\qbezier(32.5, 0.0)(45.9619, 0.0)(55.481, 9.519)%
		\qbezier(55.481, 9.519)(65.0, 19.0381)(65.0, 32.5)%
		% Ellipse: u = 32.5 v = 32.5 a = 8.35 b = 8.35 phi = 0.0 Grad
		\qbezier(40.85, 32.5)(40.85, 35.9587)(38.4043, 38.4043)%
		\qbezier(38.4043, 38.4043)(35.9587, 40.85)(32.5, 40.85)%
		\qbezier(32.5, 40.85)(29.0413, 40.85)(26.5957, 38.4043)%
		\qbezier(26.5957, 38.4043)(24.15, 35.9587)(24.15, 32.5)%
		\qbezier(24.15, 32.5)(24.15, 29.0413)(26.5957, 26.5957)%
		\qbezier(26.5957, 26.5957)(29.0413, 24.15)(32.5, 24.15)%
		\qbezier(32.5, 24.15)(35.9587, 24.15)(38.4043, 26.5957)%
		\qbezier(38.4043, 26.5957)(40.85, 29.0413)(40.85, 32.5)%
		\put(0,0){%
			\makebox(65,65)[c]{\parbox[c]{65\sc@unittype}{\sc@centering #1}}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\recordcover}
%    Cover label for a 30 centimeter record.
%    Usage: |\recordcover| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\recordcover}[1]{%
	\sc@picinit%
	\begin{picture}(99,99)%
		% Ellipse: u = 49.5 v = 49.5 a = 49.5 b = 49.5 phi = 0.0 Grad
		\qbezier(99.0, 49.5)(99.0, 70.0036)(84.5018, 84.5018)%
		\qbezier(84.5018, 84.5018)(70.0036, 99.0)(49.5, 99.0)%
		\qbezier(49.5, 99.0)(28.9964, 99.0)(14.4982, 84.5018)%
		\qbezier(14.4982, 84.5018)(0.0, 70.0036)(0.0, 49.5)%
		\qbezier(0.0, 49.5)(0.0, 28.9964)(14.4982, 14.4982)%
		\qbezier(14.4982, 14.4982)(28.9964, 0.0)(49.5, 0.0)%
		\qbezier(49.5, 0.0)(70.0036, 0.0)(84.5018, 14.4982)%
		\qbezier(84.5018, 14.4982)(99.0, 28.9964)(99.0, 49.5)%
		% Ellipse: u = 49.5 v = 49.5 a = 4.0 b = 4.0 phi = 0.0 Grad
		\qbezier(53.5, 49.5)(53.5, 51.1569)(52.3284, 52.3284)%
		\qbezier(52.3284, 52.3284)(51.1569, 53.5)(49.5, 53.5)%
		\qbezier(49.5, 53.5)(47.8431, 53.5)(46.6716, 52.3284)%
		\qbezier(46.6716, 52.3284)(45.5, 51.1569)(45.5, 49.5)%
		\qbezier(45.5, 49.5)(45.5, 47.8431)(46.6716, 46.6716)%
		\qbezier(46.6716, 46.6716)(47.8431, 45.5)(49.5, 45.5)%
		\qbezier(49.5, 45.5)(51.1569, 45.5)(52.3284, 46.6716)%
		\qbezier(52.3284, 46.6716)(53.5, 47.8431)(53.5, 49.5)%
		\put(0,0){%
			\makebox(99,99)[c]{\parbox[c]{99\sc@unittype}{\sc@centering #1}}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@jewelemptyl}
%    Empty jewel layout.
%    Usage: |\sc@jewelemptyl| \marg{content} \marg{cover width} \marg{cover height}
%    \begin{macrocode}
\DeclareRobustCommand{\sc@jewelemptyl}[3]{%
	\setboolean{sc@layout}{true}%
	\setcounter{sc@layouttempa}{#2 - 10}%
	\setcounter{sc@layouttempb}{#3 - 10}%
	\sc@picinit%
	\begin{picture}(\value{sc@layouttempa}, \value{sc@layouttempb})%
		\framebox(\value{sc@layouttempa}, \value{sc@layouttempb})[c]{#1}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jewellempty}
%    Empty layout border.
%    Usage: |\jewellempty| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\jewellempty}[1]{%
	\setcounter{sc@layouttempa}{\value{sc@cdjccoverwidthdraw} - 10}%
	\setcounter{sc@layouttempb}{\value{sc@cdjccoverheightdraw} - 10}%
	\sc@jewelemptyl{
			\makebox(\value{sc@layouttempa},\value{sc@layouttempb})[c]{%
			\parbox[c]{\value{sc@layouttempa} \sc@unittype}{\sc@centering #1}}}%
		{\value{sc@cdjccoverwidthdraw}}%
		{\value{sc@cdjccoverheightdraw}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jeweldriverlempty}
%    Empty cover layout for a hardware driver disk.
%    Usage: |\jeweldriverlempty| \marg{title} \marg{subtitle} \marg{date} \marg{serial} 
%    \marg{disk version} \marg{right middle cell} \marg{bottom cell}
%    \begin{macrocode}
\DeclareRobustCommand{\jeweldriverlempty}[7]{%
	\sc@jewelemptyl{%
			\put(0,80){%
				\framebox(110,30){\parbox[c]{110mm}{\sc@centering\scalebox{4.5}{#1}}}}%
			\put(0,60){\framebox(110,20){\parbox[c]{110mm}{\sc@centering\huge #2}}}%
			\put(0,50){\framebox(55,10){\parbox[c]{55mm}{\sc@centering #3}}}%
			\put(0,40){\framebox(55,10){\parbox[c]{55mm}{\sc@centering #4}}}%
			\put(0,30){\framebox(55,10){\parbox[c]{55mm}{\sc@centering #5}}}%
			\put(55,30){\framebox(55,30)[t]{%
				\parbox[c]{4cm}{%
					\vspace{0.5cm}%
					\setlength{\baselineskip}{1.5\baselineskip} #6%
				}%
			}}%
			\put(0,0){\framebox(110,30)[t]{%
				\parbox[c]{10.5cm}{\vspace{0.5cm} #7}%
		}}}%
		{\value{sc@cdjccoverwidthdraw}}%
		{\value{sc@cdjccoverheightdraw}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jeweldriverl}
%    Cover layout for a hardware driver disk.
%    Usage: |\jeweldriverl| \marg{title} \marg{subtitle} \marg{date} \marg{serial} 
%    \marg{disk version} \marg{right middle cell} \marg{bottom cell}
%    \begin{macrocode}
\DeclareRobustCommand{\jeweldriverl}[7]{%
	\jeweldriverlempty{#1}{#2}{Acquisition date: #3}{Serial: #4}%
		{Disk version/ID: #5}{#6}{#7}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jewelmusiclempty}
%    Cover layout for music disks.
%    Usage: |\jewelmusiclempty| \marg{title} \marg{performer} \marg{year} \marg{style}
%    \begin{macrocode}
\DeclareRobustCommand{\jewelmusiclempty}[4]{%
	\sc@jewelemptyl{%
			\put(0,60){%
				\makebox(110,40)[c]{\parbox[c]{110mm}{\sc@centering\scalebox{4}{#1}}}}%
			\put(0,60){\makebox(110,10)[c]{\parbox[c]{110mm}{\sc@centering\Large #2}}}%
			\put(0,15){\makebox(110,20)[c]{\parbox[c]{110mm}{\sc@centering\Large #4}}}%
			\put(0,10){\makebox(110,10)[c]{\parbox[c]{110mm}{\sc@centering\Large #3}}}%
		}%
		{\value{sc@cdjccoverwidthdraw}}%
		{\value{sc@cdjccoverheightdraw}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\sc@jewelbackemptyl}
%    Empty jewel backsheet layout.
%    Usage: |\sc@jewelbackemptyl| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\sc@jewelbackemptyl}[2]{%
	\setboolean{sc@layout}{true}%
	\setcounter{sc@layouttempa}{\value{sc@cdjcbackinwidthdraw} - 10}%
	\setcounter{sc@layouttempb}{\value{sc@cdjcbackheightdraw} - 10}%
	\sc@picinit%
	\begin{picture}(\value{sc@layouttempa}, \value{sc@layouttempb})%
		\csname#2\endcsname(\value{sc@layouttempa}, \value{sc@layouttempb})[c]{#1}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jewelbacklempty}
%    Empty layout border.
%    Usage: |\jewelbacklempty| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\jewelbacklempty}[1]{%
	\setcounter{sc@layouttempa}{\value{sc@cdjcbackinwidthdraw} - 10}%
	\setcounter{sc@layouttempb}{\value{sc@cdjcbackheightdraw} - 10}%
	\sc@jewelbackemptyl{%
		\parbox[c]{\value{sc@layouttempa} \sc@unittype}{\sc@centering #1}}{framebox}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jewelbackIIlempty}
%    Empty layout without border.
%    Usage: |\jewelbackIIlempty| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\jewelbackIIlempty}[1]{%
	\setcounter{sc@layouttempa}{\value{sc@cdjcbackinwidthdraw} - 10}%
	\setcounter{sc@layouttempb}{\value{sc@cdjcbackheightdraw} - 10}%
	\sc@jewelbackemptyl{%
		\parbox[c]{\value{sc@layouttempa} \sc@unittype}{#1}}{makebox}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\LXlempty}
%    Empty layout border for 60 millimeter disk covers.
%    Usage: |\LXlempty| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\LXlempty}[1]{%
	\setboolean{sc@layout}{true}%
	\setcounter{sc@resizertempa}{\value{sc@cdLXjccoverwidthdraw} - 10}%
	\resizebox{\value{sc@resizertempa}\sc@unittype}{!}{%
		\sc@jewelemptyl{%
				\parbox[c]{\value{sc@resizertempa} \sc@unittype}{\sc@centering #1}}%
			{\value{sc@cdLXjccoverwidthdraw}}%
			{\value{sc@cdLXjccoverheightdraw}}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\LXXXlempty}
%    Empty layout border for 80 millimeter disk covers.
%    Usage: |\LXXXlempty| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\LXXXlempty}[1]{%
	\setboolean{sc@layout}{true}%
	\setcounter{sc@resizertempa}{\value{sc@cdLXXXjccoverwidthdraw} - 10}%
	\resizebox{\value{sc@resizertempa}\sc@unittype}{!}{%
		\sc@jewelemptyl{%
			\parbox[c]{\value{sc@resizertempa} \sc@unittype}{\sc@centering #1}}%
		{\value{sc@cdLXXXjccoverwidthdraw}}%
		{\value{sc@cdLXXXjccoverheightdraw}}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\LXdriverlempty}
%    Driver layout border for 60 millimeter disk covers.
%    Usage: |\LXdriverlempty| \marg{title} \marg{subtitle} \marg{date} \marg{serial} 
%    \marg{version} \marg{right middle cell} \marg{bottom cell}
%    \begin{macrocode}
\DeclareRobustCommand{\LXdriverlempty}[7]{%
	\setboolean{sc@layout}{true}%
	\setcounter{sc@resizertempa}{\value{sc@cdLXjccoverheightdraw} - 10}%
	\resizebox{\value{sc@resizertempa}\sc@unittype}{!}{%
		\jeweldriverlempty{#1}{#2}{#3}{#4}{#5}{#6}{#7}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\LXXXdriverlempty}
%    Driver layout border for 80 millimeter disk covers.
%    Usage: |\LXXXdriverlempty| \marg{title} \marg{subtitle} \marg{date} \marg{serial} 
%    \marg{disk version} \marg{right middle cell} \marg{bottom cell}
%    \begin{macrocode}
\DeclareRobustCommand{\LXXXdriverlempty}[7]{%
	\setboolean{sc@layout}{true}%
	\setcounter{sc@resizertempa}{\value{sc@cdLXXXjccoverheightdraw} - 10}%
	\resizebox{\value{sc@resizertempa}\sc@unittype}{!}{%
		\jeweldriverlempty{#1}{#2}{#3}{#4}{#5}{#6}{#7}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\LXdriverl}
%    Driver layout border for 60 millimeter disk covers.
%    Usage: |\LXdriverl| \marg{title} \marg{subtitle} \marg{date} \marg{serial} 
%    \marg{disk version} \marg{right middle cell} \marg{bottom cell}
%    \begin{macrocode}
\DeclareRobustCommand{\LXdriverl}[7]{%
	\LXdriverlempty{#1}{#2}{Acquisition date: #3}{Serial: #4}%
		{Disk version/ID: #5}{#6}{#7}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\LXXXdriverl}
%    Driver layout border for 80 millimeter disk covers.
%    Usage: |\LXXXdriverl| \marg{title} \marg{subtitle} \marg{date} \marg{serial} 
%    \marg{disk version} \marg{right middle cell} \marg{bottom cell}
%    \begin{macrocode}
\DeclareRobustCommand{\LXXXdriverl}[7]{%
	\LXXXdriverlempty{#1}{#2}{Acquisition date: #3}{Serial: #4}%
		{Disk version/ID: #5}{#6}{#7}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jewelstripeslempty}
%    One centered stripe and 2 optional diagonal stripes with content.
%    Usage: |\jewelstripeslempty| \marg{center content} \marg{upper right content} \marg{lower left content} 
%    \begin{macrocode}
\DeclareRobustCommand{\jewelstripeslempty}[3]{%
	\setboolean{sc@layout}{true}%
	\sc@picinit%
	\begin{picture}%
		(\value{sc@cdjccoverwidthdraw},\value{sc@cdjccoverheightdraw})%
		\put(0,75){\line(1,0){120}}%
		\put(0,45){\line(1,0){120}}%
		\put(0,45){\makebox(\value{sc@cdjccoverwidthdraw},30)[c]%
			{\parbox[c]{\value{sc@cdjccoverwidthdraw}\sc@unittype}{\sc@centering #1}}}%
		\ifthenelse{\equal{#2}{}}{}{%
			\put(62,117.5){\rotatebox{-40}{%
				\put(13.5,15){\line(1,0){49.8}}%
				\put(2.2,5){\line(1,0){69.8}}%
				\put(5,5){\makebox(60,10)[c]{\parbox[c]{50mm}{\sc@centering #2}}}}}}%
		\ifthenelse{\equal{#3}{}}{}{%
			\put(-5,29.5){\rotatebox{-40}{%
				\put(-6,15){\line(1,0){69.8}}%
				\put(2.2,5){\line(1,0){49.8}}%
				\put(0,5){\makebox(60,10)[c]{\parbox[c]{50mm}{\sc@centering #3}}}}}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jewelgamelempty}
%    Empty cover layout for a game disk.
%    Usage: |\jewelgamelempty| \marg{title} \marg{release year} \marg{genres} \marg{developer} 
%    \marg{publisher} \marg{serial} \marg{comment}
%    \begin{macrocode}
\DeclareRobustCommand{\jewelgamelempty}[7]{%
	\sc@jewelemptyl{%
			\put(0,70){%
				\framebox(110,40){\parbox[c]{110mm}{\sc@centering\scalebox{3}{#1}}}}%
			\put(0,60){\framebox(55,10){\parbox[c]{55mm}{\sc@centering #2}}}%
			\put(55,60){\framebox(55,10){\parbox[c]{55mm}{\sc@centering #3}}}%
			\put(0,50){\framebox(55,10){\parbox[c]{55mm}{\sc@centering #4}}}%
			\put(55,50){\framebox(55,10){\parbox[c]{55mm}{\sc@centering #5}}}%
			\put(0,40){\framebox(110,10){\parbox[c]{110mm}{\sc@centering #6}}}%%
			\put(0,0){\framebox(110,40)[t]{%
				\parbox[c]{105mm}{\vspace{5mm} #7}%
		}}}%
		{\value{sc@cdjccoverwidthdraw}}%
		{\value{sc@cdjccoverheightdraw}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jewelgamel}
%    Cover layout for a game disk.
%    Usage: |\jewelgamel| \marg{title} \marg{release year} \marg{genres} \marg{developer} 
%    \marg{publisher} \marg{serial} \marg{comment}
%    \begin{macrocode}
\DeclareRobustCommand{\jewelgamel}[7]{%
	\jewelgamelempty{#1}{Released: #2}{Genre(s): #3}{Developer: #4}%
		{Publisher: #5}{Serial: #6}{#7}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jewelflaglempty}
%    Empty cover layout in a 3-striped flag format.
%    Usage: |\jewelflaglempty| \marg{upper content} \marg{middle content} \marg{lower content} 
%    \begin{macrocode}
\DeclareRobustCommand{\jewelflaglempty}[3]{%
	\sc@jewelemptyl{%
			\put(0,73.33){%
				\framebox(110,36.66){\parbox[c]{110mm}{\sc@centering #1}}}%
			\put(0,36.66){\framebox(110,36.66){\parbox[c]{110mm}{\sc@centering #2}}}%
			\put(0,0){\framebox(110,36.66){\parbox[c]{110mm}{\sc@centering #3}}}%
		}%
		{\value{sc@cdjccoverwidthdraw}}%
		{\value{sc@cdjccoverheightdraw}}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jewellineslempty}
%    Cover with horizontal lines.
%    Usage: |\jewellineslempty| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\jewellineslempty}[1]{%
	\setboolean{sc@layout}{true}%
	\sc@picinit%
	\begin{picture}%
		(\value{sc@cdjccoverwidthdraw},\value{sc@cdjccoverheightdraw})%
		\put(5,110){\line(1,0){110}}%
		\put(5,100){\line(1,0){110}}%
		\put(5,90){\line(1,0){110}}%
		\put(5,80){\line(1,0){110}}%
		\put(5,70){\line(1,0){110}}%
		\put(5,60){\line(1,0){110}}%
		\put(5,50){\line(1,0){110}}%
		\put(5,40){\line(1,0){110}}%
		\put(5,30){\line(1,0){110}}%
		\put(5,20){\line(1,0){110}}%
		\put(5,10){\line(1,0){110}}%
		\put(5,10){%
			\makebox(110,110){%
				\parbox[c]{110mm}{\sc@centering \setlength\baselineskip{1cm} #1}}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\jeweltitledlempty}
%    Empty cover layout with a top title part and a larger bottom part.
%    Usage: |\jeweltitledlempty| \marg{title} \marg{content} 
%    \begin{macrocode}
\DeclareRobustCommand{\jeweltitledlempty}[2]{%
	\setboolean{sc@layout}{true}%
	\sc@picinit%
	\begin{picture}(\value{sc@cdjccoverwidthdraw}, \value{sc@cdjccoverheightdraw})
		\put(5,100){%
			\makebox(110,20){\parbox[c]{110mm}{\sc@centering\huge #1}}}%
		\put(5,0){\makebox(110,100){\parbox[c]{110mm}{#2}}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\dvdmovielempty}
%    Cover layout for movie DVDs.
%    Usage: |\dvdmovielempty| \marg{title} \marg{original title} \marg{release year} 
%    \marg{director} \marg{languages} \marg{subtitle} \marg{actors} \marg{comment}
%    \begin{macrocode}
\DeclareRobustCommand{\dvdmovielempty}[8]{%
	\setboolean{sc@layout}{true}%
	\setcounter{sc@layouttempa}{\value{sc@dvdkccoverwidthdraw} - 10}%
	\setcounter{sc@layouttempb}{\value{sc@dvdkccoverheightdraw} - 10}%
	\sc@picinit%
	\begin{picture}(\value{sc@layouttempa}, \value{sc@layouttempb})%
		\put(0,140){%
			\framebox(118,33)[c]{\parbox[c]{110mm}{\sc@centering\scalebox{3}{#1}}}}%
		\put(0,120){%
			\framebox(118,20)[c]{\parbox[c]{110mm}{\sc@centering\huge #2}}}%
		\put(0,110){\framebox(59,10)[c]{\parbox[c]{50mm}{\sc@centering #3}}}%
		\put(0,100){\framebox(59,10)[c]{\parbox[c]{50mm}{#4}}}%
		\put(0,70){\framebox(59,30)[c]{\parbox[c]{50mm}{#5}}}%
		\put(0,40){\framebox(59,30)[c]{\parbox[c]{50mm}{#6}}}%
		\put(59,40){\framebox(59,80)[c]{\parbox[c]{50mm}{#7}}}%
		\put(0,0){\framebox(118,40)[t]{\parbox[c]{108mm}{\vspace{0.5cm} #8}}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\dvdmoviel}
%    Cover layout for movie DVDs.
%    Usage: |\dvdmoviel| \marg{title} \marg{original title} \marg{release year} 
%    \marg{director} \marg{languages} \marg{subtitle} \marg{actors} \marg{comment}
%    \begin{macrocode}
\DeclareRobustCommand{\dvdmoviel}[8]{%
	\dvdmovielempty{#1}{#2}{Released: #3}{Directed by: #4}%
		{\underline{Spoken languages:} \\ #5}%
		{\underline{Subtitles:} \\ #6}{\underline{Starring:} \\ #7}{#8}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\dvdlempty}
%    Empty layout for DVD keepcases.
%    Usage: |\dvdlempty| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\dvdlempty}[1]{%
	\setboolean{sc@layout}{true}%
	\setcounter{sc@layouttempa}{\value{sc@dvdkccoverwidthdraw} - 10}%
	\setcounter{sc@layouttempb}{\value{sc@dvdkccoverheightdraw} - 10}%
	\sc@picinit%
	\begin{picture}(\value{sc@layouttempa}, \value{sc@layouttempb})%
		\put(0,0){%
			\framebox(\value{sc@layouttempa}, \value{sc@layouttempb})[c]{%
				\parbox[c]{\value{sc@layouttempa}\sc@unittype}{\sc@centering #1}}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\bluraymovielempty}
%    Cover layout for movie Blu-rays.
%    Usage: |\bluraymovielempty| \marg{title} \marg{original title} \marg{release year} 
%    \marg{director} \marg{languages} \marg{subtitles} \marg{actors} \marg{comment}
%    \begin{macrocode}
\DeclareRobustCommand{\bluraymovielempty}[8]{%
	\setboolean{sc@layout}{true}%
	\setcounter{sc@layouttempa}{\value{sc@dvdkccoverwidthdraw} - 10}%
	\setcounter{sc@layouttempb}{\value{sc@brcoverheightdraw} - 10}%
	\sc@picinit%
	\begin{picture}(\value{sc@layouttempa}, \value{sc@layouttempb})%
		\put(0,120){%
			\framebox(118,20)[c]{\parbox[c]{110mm}{\sc@centering\scalebox{3}{#1}}}}%
		\put(0,105){%
			\framebox(118,15)[c]{\parbox[c]{110mm}{\sc@centering\huge #2}}}%
		\put(0,95){\framebox(59,10)[c]{\parbox[c]{50mm}{\sc@centering #3}}}%
		\put(0,85){\framebox(59,10)[c]{\parbox[c]{50mm}{#4}}}%
		\put(0,55){\framebox(59,30)[c]{\parbox[c]{50mm}{#5}}}%
		\put(0,25){\framebox(59,30)[c]{\parbox[c]{50mm}{#6}}}%
		\put(59,25){\framebox(59,80)[c]{\parbox[c]{50mm}{#7}}}%
		\put(0,0){\framebox(118,25)[t]{\parbox[c]{108mm}{\vspace{0.5cm} #8}}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\bluraymoviel}
%    Cover layout for movie Blu-rays.
%    Usage: |\bluraymoviel| \marg{title} \marg{original title} \marg{release year} 
%    \marg{director} \marg{languages} \marg{subtitles} \marg{actors} \marg{comment}
%    \begin{macrocode}
\DeclareRobustCommand{\bluraymoviel}[8]{%
	\bluraymovielempty{#1}{#2}{Released: #3}{Directed by: #4}%
		{\underline{Spoken languages:} \\ #5}%
		{\underline{Subtitles:} \\ #6}{\underline{Starring:} \\ #7}{#8}%
}
%    \end{macrocode}
% \end{macro}

% \begin{macro}{\bluraylempty}
%    Empty layout for Blu-ray keepcases.
%    Usage: |\bluraylempty| \marg{content}
%    \begin{macrocode}
\DeclareRobustCommand{\bluraylempty}[1]{%
	\setboolean{sc@layout}{true}%
	\setcounter{sc@layouttempa}{\value{sc@dvdkccoverwidthdraw} - 10}%
	\setcounter{sc@layouttempb}{\value{sc@brcoverheightdraw} - 10}%
	\sc@picinit%
	\begin{picture}(\value{sc@layouttempa}, \value{sc@layouttempb})%
		\put(0,0){%
			\framebox(\value{sc@layouttempa}, \value{sc@layouttempb})[c]{%
				\parbox[c]{\value{sc@layouttempa}\sc@unittype}{\sc@centering #1}}}%
	\end{picture}%
}
%    \end{macrocode}
% \end{macro}
%
% \Finale
\endinput
