summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/ncctools/source/nccbbb.dtx
blob: 2337fdc20dbc536c008def73823c59196be137d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
% \iffalse
%%
%% File: nccbbb.dtx Copyright (C) 2002--2004 by Alexander I. Rozhenko
%%
%<package>\NeedsTeXFormat{LaTeX2e}
%<package>\ProvidesPackage{nccbbb}
%<package>         [2004/11/24 v1.1 Pure Black Board Bold (NCC)]
%
% \changes{v1.0}{2002/01/31}{This version was uploaded to CTAN}
% \changes{v1.1}{2004/11/24}{Bug in |\bbbz| command fixed}
% \changes{v1.1}{2004/11/24}{Documentation was prepared}
%
%<*driver>
\let\makeindex\relax
\documentclass{ltxdoc}
\usepackage{nccbbb}
\GetFileInfo{nccbbb.sty}
\begin{document}
\title{The \textsf{nccbbb} package\thanks{This file
        has version number \fileversion, last
        revised \filedate.}}
\author{Alexander I. Rozhenko\\rozhenko@oapmg.sscc.ru}
\date{\filedate}
\maketitle
\DocInput{nccbbb.dtx}
\end{document}
%</driver>
% \fi
% \section{User Interface}
%
% \DescribeMacro{\bbb...}
% The package implements the following poor black board bold math symbols:
% \begin{center}
% \begin{tabular}{l@{\qquad}c@{\qquad\vrule\qquad}l@{\qquad}c}
% Command & Symbol & Command & Symbol\\
% |\bbbb| & $\bbbb$ & |\bbbm| & $\bbbm$ \\
% |\bbbc| & $\bbbc$ & |\bbbn| & $\bbbn$ \\
% |\bbbd| & $\bbbd$ & |\bbbo| & $\bbbo$ \\
% |\bbbe| & $\bbbe$ & |\bbbp| & $\bbbp$ \\
% |\bbbf| & $\bbbf$ & |\bbbq| & $\bbbq$ \\
% |\bbbg| & $\bbbg$ & |\bbbr| & $\bbbr$ \\
% |\bbbh| & $\bbbh$ & |\bbbs| & $\bbbs$ \\
% |\bbbi| & $\bbbi$ & |\bbbz| & $\bbbz$ \\
% |\bbbk| & $\bbbk$ & |\bbbzero| & $\bbbzero$ \\
% |\bbbl| & $\bbbl$ & |\bbbone| & $\bbbone$ \\
% \end{tabular}
% \end{center}
% It was designed to provide the compatibility with old macros of NCC-\LaTeX.
% We recommend use the |\mathbb| command from the |amsfonts| package
% instead.
% \StopEventually{}
%
% \section{The Implementation}
% Declare commands of the user interface:
%    \begin{macrocode}
%<*package>
\newcommand\bbbb{\NCC@bbb{B}}
\newcommand\bbbc{{\NCC@bbbz{C{\NCC@bbbr{.03}{.35}{.9}{.1}}}}}
\newcommand\bbbd{\NCC@bbb{D}}
\newcommand\bbbe{\NCC@bbb{E}}
\newcommand\bbbf{\NCC@bbb{F}}
\newcommand\bbbg{{\NCC@bbbz{G{\NCC@bbbr{.05}{.3}{.88}{.09}}}}}
\newcommand\bbbh{\NCC@bbb{H}}
\newcommand\bbbi{\NCC@bbb{I}}
\newcommand\bbbk{\NCC@bbb{K}}
\newcommand\bbbl{\NCC@bbb{L}}
\newcommand\bbbm{\NCC@bbbi{M}}
\newcommand\bbbn{\NCC@bbbi{N}}
\newcommand\bbbo{{\NCC@bbbz{O{\NCC@bbbr{.05}{.3}{.9}{.09}}}}}
\newcommand\bbbp{\NCC@bbb{P}}
\newcommand\bbbq{{\NCC@bbbz{Q{\NCC@bbbr{.05}{.3}{.9}{.09}}}}}
\newcommand\bbbr{\NCC@bbb{R}}
\newcommand\bbbs{{\NCC@bbbz{S{\NCC@bbbr{.5}{.3}{.45}{.07}%
  \NCC@bbbr{0}{.55}{.5}{.07}}}}}
\newcommand\bbbz{{\NCC@bbbz{{\mathsf Z}{\@tempdima\wd\z@\wd\z@ 0.33\@tempdima}}%
  \mathsf Z}}
\newcommand\bbbzero{{\NCC@bbbz{O{\NCC@bbbr{.05}{.3}{.9}{.06}%
  \NCC@bbbr{.05}{.6}{.9}{.06}}}}}
\newcommand\bbbone{\mathrm{1\NCC@bbbz{l{\kern -0.88\wd\z@}}}}
%    \end{macrocode}
%
% Define base commands:
%    \begin{macrocode}
\def\NCC@bbb#1{\mathrm{I\mskip -3.5mu#1}}
\def\NCC@bbbi#1{\mathrm{I\NCC@bbbz{{\mskip -3.5mu I}{\wd\z@\z@}}%
  \mskip -3mu#1}}
\def\NCC@bbbz{\mathpalette\NCC@bbbz@}
\def\NCC@bbbz@#1#2{\NCC@bbbz@@{#1}#2}
\def\NCC@bbbz@@#1#2#3{\setbox\z@\hbox{$\m@th#1{\mathrm{#2}}$}#3\box\z@}
\def\NCC@bbbr#1#2#3#4{\raise #1\ht\z@\hbox to \z@{\kern #2\wd\z@
  \vrule \@height #3\ht\z@ \@width #4\wd\z@\hss}}
%</package>
%    \end{macrocode}
\endinput