% \iffalse meta-comment
%
% Copyright (C) 2011-2017 by Michael Ummels <michael.ummels@rwth-aachen.de>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3c
% of this license or (at your option) any later version.
% The latest version of this license is in
%   http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of LaTeX
% version 2005/12/01 or later.
%
% This work has the LPPL maintenance status `maintained'.
% 
% The Current Maintainer of this work is Michael Ummels.
%
% This work consists of the files ccicons.dtx, ccicons.ins
% and the derived files ccicons.pdf and ccicons.sty.
%
% \fi
%
% \iffalse
%<*driver>
\ProvidesFile{ccicons.dtx}[2017/10/30 v1.6 LaTeX support for Creative Commons icons]
%</driver>
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{ccicons}[2017/10/30 v1.6 LaTeX support for Creative Commons icons]
%<*driver>
\documentclass{ltxdoc}

\usepackage[T1]{fontenc}
\usepackage{charter}
\usepackage[scaled=1.05]{inconsolata}
\usepackage{ccicons}
\usepackage{longtable}
\usepackage{hypdoc}
\usepackage{microtype}

\hypersetup{
  bookmarksnumbered,
  colorlinks=false,
  pdfborder={0 0 0},
  pdftitle={The ccicons package},
  pdfauthor={Michael Ummels}
}

\newcommand{\pkg}[1]{\mbox{#1}}
\newcommand{\typesetcc}[1]%
 {#1\,{\large #1}\,{\Large #1}\,{\LARGE #1}\,{\huge #1}\,{\Huge #1}}

\EnableCrossrefs         
\CodelineIndex
\RecordChanges

\begin{document}
\DocInput{ccicons.dtx}
\end{document}
%</driver>
% \fi
%
% \CheckSum{249}
% \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         \~}
%
% \GetFileInfo{ccicons.dtx}
%
% \DoNotIndex{\newcommand}
% 
% \title{\LaTeX\ support for Creative Commons Icons}
% \author{Michael Ummels \\ \texttt{michael.ummels@rwth-aachen.de}}
% \date{\fileversion\ -- \filedate}
% \maketitle
%
% \begin{abstract}
% \noindent
% This package offers authors who want to publish their documents under a
% Creative Commons license an easy way to include the relevant icons
% in their documents.
% \end{abstract}
%
% \section{Introduction}
%
% Creative Commons (\url{http://creativecommons.org}) licenses have become
% increasingly popular for authors who want to retain their copyright but give
% other people the possibility to share and build upon their work. For each
% of the licenses that Creative Commons offers, there exists a set of icons
% that can be used to identify the respective license. This package defines
% several commands that allow to typeset these icons. Since the icons are
% stored in a PostScript Type 1 font, they can be scaled freely without
% diminishing their visual appearance.
%
% Please note that all icons that can be typeset using this package are
% trademarks of Creative Commons and are subject to the Creative Commons
% trademark policy (see \url{http://creativecommons.org/policies}).
%
% \section{Usage}
%
% To use this package in your \LaTeX\ document, add
% \begin{quote}
% |\usepackage|\oarg{options}|{ccicons}|
% \end{quote}
% to the preamble of your document. For the available options see
% Section~\ref{sec:options}.
%
% After the package has been loaded, the following commands can
% be used to typeset the icons provided by CreativecCommons.
%
% \begin{longtable}[l]{ll}
%   |\ccLogo| & \typesetcc{\ccLogo} \\[1ex]
%   |\ccAttribution| & \typesetcc{\ccAttribution} \\[1ex]
%   |\ccShareAlike| & \typesetcc{\ccShareAlike} \\[1ex]
%   |\ccNoDerivatives| & \typesetcc{\ccNoDerivatives} \\[1ex]
%   |\ccNonCommercial| & \typesetcc{\ccNonCommercial} \\[1ex]
%   |\ccNonCommercialEU| & \typesetcc{\ccNonCommercialEU} \\[1ex]
%   |\ccNonCommercialJP| & \typesetcc{\ccNonCommercialJP} \\[1ex]
%   |\ccZero| & \typesetcc{\ccZero} \\[1ex]
%   |\ccPublicDomain| & \typesetcc{\ccPublicDomain} \\[1ex]
%   |\ccPublicDomainAlt| & \typesetcc{\ccPublicDomainAlt} \\[1ex]
%   |\ccSampling| & \typesetcc{\ccSampling} \\[1ex]
%   |\ccShare| & \typesetcc{\ccShare} \\[1ex]
%   |\ccRemix| & \typesetcc{\ccRemix} \\[1ex]
%   |\ccCopy| & \typesetcc{\ccCopy}
% \end{longtable}
%
% \noindent
% Additionally, for each of the common Creative Commons licenses there is a
% command to typeset the CC logo together with the icons applicable for that
% license (see \url{http://creativecommons.org/licenses}):
%
% \medskip\noindent
% \begin{tabular}{ll}
%  |\ccby| & \ccby \\
%  |\ccbysa| & \ccbysa \\
%  |\ccbynd| & \ccbynd \\
%  |\ccbync| & \ccbync \\
%  |\ccbynceu| & \ccbynceu \\
%  |\ccbyncjp| & \ccbyncjp \\
%  |\ccbyncsa| & \ccbyncsa \\
%  |\ccbyncsaeu| & \ccbyncsaeu \\
%  |\ccbyncsajp| & \ccbyncsajp \\
%  |\ccbyncnd| & \ccbyncnd \\
%  |\ccbyncndeu| & \ccbyncndeu \\
%  |\ccbyncndjp| & \ccbyncndjp \\
%  |\cczero| & \cczero \\
%  |\ccpd| & \ccpd
% \end{tabular}
%
% \section{Options}\label{sec:options}
%
% Currently, the \pkg{ccicons} package supports two options.
% First, the |scale=|\meta{factor} option allows to scale all
% icons by an arbitrary factor. For example, to typeset the icons
% at 90\% of their original size, load the package with the
% option |scale=0.9|. Second, if the |copyright| option is
% enabled, the command |\textcopyright| is redefined so that
% it behaves like |\ccCopy|.
%
% \StopEventually{}
%
% \section{Implementation}
%
% \iffalse
%<*package>
% \fi
%
% We use \pkg{xkeyval}'s key mechanism to declare all options.
% The first option controls whether |\textcopyright| is redefined.
%    \begin{macrocode}
\RequirePackage{xkeyval}
\define@boolkey{ccicons.sty}[ccicons@]{copyright}[true]{}
%    \end{macrocode}
% The next option allows to scale the font by an arbitrary factor.
%    \begin{macrocode}
\newcommand{\ccicons@scale}{1.0}
\define@key{ccicons.sty}{scale}{\renewcommand\ccicons@scale{#1}}
%    \end{macrocode}
% Process all options.
%    \begin{macrocode}
\ProcessOptionsX
%    \end{macrocode}
% We just declare one font family with one shape.
%    \begin{macrocode}
\DeclareFontFamily{U}{ccicons}{}
\DeclareFontShape{U}{ccicons}{m}{n}{
   <-> s * [\ccicons@scale] ccicons
}{}
%    \end{macrocode}
% We provide internal commands to access the characters of the font
% directly.
%    \begin{macrocode}
\newcommand{\ccicons@font}{\usefont{U}{ccicons}{m}{n}}
\newcommand{\ccicons@logo}{\char0}
\newcommand{\ccicons@by}{\char1}
\newcommand{\ccicons@sa}{\char2}
\newcommand{\ccicons@nd}{\char3}
\newcommand{\ccicons@nc}{\char4}
\newcommand{\ccicons@nceu}{\char5}
\newcommand{\ccicons@ncjp}{\char6}
\newcommand{\ccicons@pd}{\char7}
\newcommand{\ccicons@zero}{\char8}
\newcommand{\ccicons@sampling}{\char9}
\newcommand{\ccicons@share}{\char10}
\newcommand{\ccicons@remix}{\char11}
\newcommand{\ccicons@copy}{\char12}
\newcommand{\ccicons@pdalt}{\char13}
%    \end{macrocode}
% The following commands provide high-level access to to the font. We
% define a command for each character in the font.
%    \begin{macrocode}
\newcommand{\ccLogo}{{\ccicons@font\ccicons@logo}}
\newcommand{\ccAttribution}{{\ccicons@font\ccicons@by}}
\newcommand{\ccShareAlike}{{\ccicons@font\ccicons@sa}}
\newcommand{\ccNoDerivatives}{{\ccicons@font\ccicons@nd}}
\newcommand{\ccNonCommercial}{{\ccicons@font\ccicons@nc}}
\newcommand{\ccNonCommercialEU}{{\ccicons@font\ccicons@nceu}}
\newcommand{\ccNonCommercialJP}{{\ccicons@font\ccicons@ncjp}}
\newcommand{\ccPublicDomain}{{\ccicons@font\ccicons@pd}}
\newcommand{\ccPublicDomainAlt}{{\ccicons@font\ccicons@pdalt}}
\newcommand{\ccZero}{{\ccicons@font\ccicons@zero}}
\newcommand{\ccSampling}{{\ccicons@font\ccicons@sampling}}
\newcommand{\ccShare}{{\ccicons@font\ccicons@share}}
\newcommand{\ccRemix}{{\ccicons@font\ccicons@remix}}
\newcommand{\ccCopy}{{\ccicons@font\ccicons@copy}}
%    \end{macrocode}
% If the copyright option has been set, we redefine |\textcopyright|.
%    \begin{macrocode}
\ifccicons@copyright\renewcommand{\textcopyright}{\ccCopy}\fi
%    \end{macrocode}
% Finally, for each CC license we define a command that prints the CC logo
% together with the icons applicable for that license.
%    \begin{macrocode}
\newcommand{\ccby}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by}}
\newcommand{\ccbysa}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@sa}}
\newcommand{\ccbynd}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@nd}}
\newcommand{\ccbync}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@nc}}
\newcommand{\ccbynceu}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@nceu}}
\newcommand{\ccbyncjp}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@ncjp}}
\newcommand{\ccbyncsa}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@nc\kern0.1em\ccicons@sa}}
\newcommand{\ccbyncsaeu}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@nceu\kern0.1em\ccicons@sa}}
\newcommand{\ccbyncsajp}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@ncjp\kern0.1em\ccicons@sa}}
\newcommand{\ccbyncnd}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@nc\kern0.1em\ccicons@nd}}
\newcommand{\ccbyncndeu}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@nceu\kern0.1em\ccicons@nd}}
\newcommand{\ccbyncndjp}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@by%
  \kern0.1em\ccicons@ncjp\kern0.1em\ccicons@nd}}
\newcommand{\cczero}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@zero}}
\newcommand{\ccpd}%
  {\mbox{\ccicons@font\ccicons@logo\kern0.1em\ccicons@pd}}
%    \end{macrocode}
%
% \iffalse
%</package>
% \fi
%
% \section{Version history}
%
% Version 1.0 (2009/11/29): Initial version \\
% Version 1.1 (2009/12/14): New font with additional glyphs \\
% Version 1.2 (2011/05/22): Optimised some glyphs \\
% Version 1.3 (2011/09/18): Merged font definitions into style file \\
% Version 1.4 (2012/05/22): Added copyright logo, adjusted vertical
% alignment, and added scale option \\
% Version 1.5 (2013/04/16): Relicensed font components and included
% OpenType font. \\
% Version 1.6 (2017/10/30): Incorporated new Public Domain icon
%
%
% \Finale
% \endinput
%
% \iffalse
%<*test>
% \fi
%    \begin{macrocode}
\documentclass[a4paper]{article}

\usepackage[copyright]{ccicons}

\setlength{\parindent}{0pt}
\pagestyle{empty}

\begin{document}
\ccLogo
\ccAttribution
\ccShareAlike
\ccNoDerivatives
\ccNonCommercial
\ccNonCommercialJP
\ccZero
\ccPublicDomain
\ccPublicDomainAlt
\ccSampling
\ccShare
\ccRemix
\ccCopy

\textcopyright

\ccby

\ccbysa

\ccbynd

\ccbync

\ccbynceu

\ccbyncjp

\ccbyncsa

\ccbyncsaeu

\ccbyncsajp

\ccbyncnd

\ccbyncndeu

\ccbyncndjp

\cczero

\ccpd
\end{document}
%    \end{macrocode}
%
% \iffalse
%</test>
% \fi
