
| Current Path : /var/www/web-klick.de/dsh/50_dev2017/1300__perllib/Utility/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/web-klick.de/dsh/50_dev2017/1300__perllib/Utility/cdh |
#!/usr/bin/perl
my $file = shift;
my $seite = shift;
my $zahl = shift;
my $offset = shift;
if ( ! ( defined($zahl) ) ) { $zahl = "1"; }
if ( ! ( defined($offset) ) ) { $offset = "1"; }
$preview = 0;
if ( substr($seite,1,1) eq "s" ) {
$seite = substr($seite,0,1);
$preview = 1;
}
my $ppx = "-14mm";
my $ppy = "-8mm";
#my @PosX = ( " 1.7", "10.3", " 1.7");
#my @PosY = ( "29.3", "21.1", "12.9");
my @PosX = ( " 5.9", " 5.9", " 1.7");
my @PosY = ( "27.7", "14.0", "12.9");
my $PosNr = $#PosX+1;
my $text = <<'TEXT_ENDE';
\documentclass[10pt]{article}
\usepackage{german}
\usepackage[latin1]{inputenc}
\usepackage[dvips]{graphics}
\newcommand{\fiverm}{\rm}
\input prepictex
\input pictex
\input postpictex
\textwidth 210mm
\textheight 320mm
\oddsidemargin XMARGIN
\evensidemargin XMARGIN
\topmargin YMARGIN
\parindent 0mm
\newcommand{\Xvorne}{\mbox{\ }}
\newcommand{\Xinnen}{\mbox{\ }}
\newcommand{\Xrueck}{\mbox{\ }}
\newcommand{\Xlseit}{\mbox{\ }}
\newcommand{\Xrseit}{\Xlseit}
\newcommand{\Xoben}{\mbox{\ }}
\newcommand{\Xlinks}{\mbox{\ }}
\newcommand{\Xrechts}{\mbox{\ }}
\newcommand{\Xunten}{\mbox{\ }}
TEXT_ENDE
my $zeile;
open(FILE,"<".$file);
while ( $zeile = <FILE> ) {
$text = $text . $zeile;
}
close(FILE);
$text = $text . <<'TEXT_ENDE';
TEXT_ENDE
#****************************************************
if ( $seite eq "1" ) {
$text =~ s/XMARGIN/10mm/g;
$text =~ s/YMARGIN/0mm/g;
$text = $text . <<'TEXT_ENDE';
\newcommand{\CDPageA}{
\mbox{\beginpicture
\setcoordinatesystem units <1cm,1cm>
\unitlength=1cm
\linethickness=1pt
\setplotsymbol ({\Large\bf .})
\setshadesymbol ({\rm .})
\setlinear
\linethickness 0.5pt
\putrectangle corners at 0.1 23.9 and 11.9 12.1
\putrectangle corners at 0.1 11.9 and 11.9 0.1
\put{\rotatebox{270}{\makebox[0pt][c]{\smash{\Xvorne}}}} [cB] at 6 18
\put{\rotatebox{270}{\makebox[0pt][c]{\smash{\Xinnen}}}} [cB] at 6 6
\linethickness 0pt
\putrectangle corners at -2 26 and 14 -2
\endpicture}
}
\begin{document}
TEXT_ENDE
my $zaehler = 0;
while (0 == 0) {
$zaehler = $zaehler + 1;
last if ($zaehler > $zahl);
$text = $text . "\\CDPageA";
if ($zaehler != $zahl) {
$text = $text . "\\newpage\n";
}
}
$text = $text . "\n";
}
#****************************************************
if ( $seite eq "2" ) {
$text =~ s/XMARGIN/10mm/g;
$text =~ s/YMARGIN/0mm/g;
$text = $text . <<'TEXT_ENDE';
\newcommand{\CDPageB}{
\mbox{\beginpicture
\setcoordinatesystem units <1cm,1cm>
\unitlength=1cm
\linethickness=1pt
\setplotsymbol ({\Large\bf .})
\setshadesymbol ({\rm .})
\setlinear
\linethickness 0.5pt
\putrectangle corners at -0.8 11.5 and -0.7 0.1
\putrectangle corners at -0.1 11.5 and 13.4 0.1
\putrectangle corners at 14.1 11.5 and 14.2 0.1
\put{\rotatebox{90}{\makebox[0pt][c]{\smash{\Xlseit}}}} [cB] at -0.3 5.7
\put{\makebox[0pt][c]{\smash{\Xrueck}}} [cB] at 6.65 5.7
\put{\rotatebox{90}{\makebox[0pt][c]{\smash{\Xrseit}}}} [cB] at 13.85 5.7
\linethickness 0pt
\putrectangle corners at -2 16 and 15 -2
\endpicture}
}
\begin{document}
TEXT_ENDE
my $zaehler = 0;
while (0 == 0) {
$zaehler = $zaehler + 1;
last if ($zaehler > $zahl);
$text = $text . "\\CDPageB";
if ($zaehler != $zahl) {
$text = $text . " \\newpage\n";
}
}
}
#****************************************************
if ( $seite eq "3" ) {
$text =~ s/XMARGIN/$ppx/g;
$text =~ s/YMARGIN/$ppy/g;
$text = $text . <<'TEXT_ENDE';
\newcommand{\CDLabel}{
\mbox{\beginpicture
\setcoordinatesystem units <1cm,1cm>
\unitlength=1cm
\linethickness=1pt
\setplotsymbol ({\Large\bf .})
\setshadesymbol ({\rm .})
\setlinear
\setplotsymbol ({\rm .})
\linethickness= 0.500pt
\ellipticalarc axes ratio 1:1 360 degrees from 0.2 6 center at 6 6
\ellipticalarc axes ratio 1:1 360 degrees from 4.3 6 center at 6 6
\ellipticalarc axes ratio 1:1 360 degrees from 5.9 6 center at 6 6
\put{\makebox[0pt][c]{\smash{\Xoben}}} [cB] at 6.0 9.6
\put{\makebox[0pt][c]{\smash{\Xrechts}}} [cB] at 2.4 6.0
\put{\makebox[0pt][c]{\smash{\Xlinks}}} [cB] at 9.6 6.0
\put{\makebox[0pt][c]{\smash{\Xunten}}} [cB] at 6.0 2.2
\linethickness=0pt
\putrectangle corners at 0 0 and 12 12
\endpicture}
}
\begin{document}
TEXT_ENDE
if ( $preview == 0 ) {
$text =~ s/\\ellipticalarc/\%\\ellipticalarc/g;
}
my $zaehler = 0;
my $z1 = $offset;
my $AnfBed = 0;
my $EndBed = 0;
my $newpage = 0;
my $px; my $py; my $z2;
while (0 == 0) {
$AnfBed = 0;
$EndBed = 0;
$newpage = 0;
$zaehler = $zaehler + 1;
last if ( $zaehler > $zahl );
if ( $zaehler == 1 ) { $AnfBed = 1; }
if ( $zaehler == $zahl ) { $EndBed = 1; }
if ( ( $z1 == 1 ) && ( $zaehler > 1 ) ) { $newpage = 1;
$AnfBed = 1; }
if ( $z1 == $PosNr ) { $EndBed = 1; }
if ( $newpage == 1 ) {
$text = $text . "\n\\newpage\n\n";
}
if ( $AnfBed == 1 ) {
$text = $text . <<'TEXT_ENDE';
\mbox{\beginpicture
\setcoordinatesystem units <1cm,1cm>
\unitlength=1cm
\linethickness=1pt
\setplotsymbol ({\Large\bf .})
\setshadesymbol ({\rm .})
\setlinear
\linethickness=0pt
\putrectangle corners at 0 0 and 21 29
TEXT_ENDE
}
$z2 = $z1 - 1;
$px = $PosX[$z2];
$py = $PosY[$z2];
$text = $text . "\\put\{\\CDLabel\} \[lt\] at " .
$px . " " . $py . "\n";
if ( $EndBed == 1 ) {
$text = $text . "\\endpicture\}\n\n";
}
$z1 = $z1 + 1;
if ( $z1 > $PosNr ) { $z1 = $z1 - $PosNr; }
}
}
#***************************************************
$text = $text . <<'TEXT_ENDE';
\end{document}
TEXT_ENDE
my $vornexxa = <<'TEXT_ENDE';
\renewcommand{\Xvorne}{
\begin{minipage}{112mm}
TEXT_ENDE
chop($vornexxa);
my $vorneyya = <<'TEXT_ENDE';
\end{minipage}
}
TEXT_ENDE
chop($vorneyya);
my $innenxxa = <<'TEXT_ENDE';
\renewcommand{\Xinnen}{
\begin{minipage}{112mm}
TEXT_ENDE
chop($innenxxa);
my $innenyya = <<'TEXT_ENDE';
\end{minipage}
}
TEXT_ENDE
chop($innenyya);
my $rueckxxa = <<'TEXT_ENDE';
\renewcommand{\Xrueck}{
\begin{minipage}{130mm}
TEXT_ENDE
chop($rueckxxa);
my $rueckyya = <<'TEXT_ENDE';
\end{minipage}
}
TEXT_ENDE
chop($rueckyya);
my $lseitxxa = <<'TEXT_ENDE';
\renewcommand{\Xlseit}{
\begin{minipage}{112mm}
TEXT_ENDE
chop($lseitxxa);
my $lseityya = <<'TEXT_ENDE';
\end{minipage}
}
TEXT_ENDE
chop($lseityya);
my $rseitxxa = <<'TEXT_ENDE';
\renewcommand{\Xrseit}{
\begin{minipage}{112mm}
TEXT_ENDE
chop($rseitxxa);
my $rseityya = <<'TEXT_ENDE';
\end{minipage}
}
TEXT_ENDE
chop($rseityya);
my $obenxxa = <<'TEXT_ENDE';
\renewcommand{\Xoben}{
\begin{minipage}{112mm}
TEXT_ENDE
chop($obenxxa);
my $obenyya = <<'TEXT_ENDE';
\end{minipage}
}
TEXT_ENDE
chop($obenyya);
my $linksxxa = <<'TEXT_ENDE';
\renewcommand{\Xlinks}{
\begin{minipage}{112mm}
TEXT_ENDE
chop($linksxxa);
my $linksyya = <<'TEXT_ENDE';
\end{minipage}
}
TEXT_ENDE
chop($linksyya);
my $rechtsxxa = <<'TEXT_ENDE';
\renewcommand{\Xrechts}{
\begin{minipage}{112mm}
TEXT_ENDE
chop($rechtsxxa);
my $rechtsyya = <<'TEXT_ENDE';
\end{minipage}
}
TEXT_ENDE
chop($rechtsyya);
my $untenxxa = <<'TEXT_ENDE';
\renewcommand{\Xunten}{
\begin{minipage}{112mm}
TEXT_ENDE
chop($untenxxa);
my $untenyya = <<'TEXT_ENDE';
\end{minipage}
}
TEXT_ENDE
chop($untenyya);
my $bca = "XXA\n\\begin{center}";
my $bcb = "XXA\n\\begin{center}";
my $bcc = "XXA\n\\begin{center}";
my $eee = "\\end{center}\n";
$text =~ s/XXXXA/$bca/g;
$text =~ s/XXXXB/$bcb/g;
$text =~ s/XXXXC/$bcc/g;
$text =~ s/QQQ/$eee/g;
$text =~ s/VORNEXXA/$vornexxa/;
$text =~ s/VORNEYYA/$vorneyya/;
$text =~ s/INNENXXA/$innenxxa/;
$text =~ s/INNENYYA/$innenyya/;
$text =~ s/RUECKXXA/$rueckxxa/;
$text =~ s/RUECKYYA/$rueckyya/;
$text =~ s/LSEITXXA/$lseitxxa/;
$text =~ s/LSEITYYA/$lseityya/;
$text =~ s/RSEITXXA/$rseitxxa/;
$text =~ s/RSEITYYA/$rseityya/;
$text =~ s/OBENXXA/$obenxxa/;
$text =~ s/OBENYYA/$obenyya/;
$text =~ s/LINKSXXA/$linksxxa/;
$text =~ s/LINKSYYA/$linksyya/;
$text =~ s/RECHTSXXA/$rechtsxxa/;
$text =~ s/RECHTSYYA/$rechtsyya/;
$text =~ s/UNTENXXA/$untenxxa/;
$text =~ s/UNTENYYA/$untenyya/;
open(FILE,">cd".$seite.".tex");
print FILE $text;
close(FILE);
system("latex cd".$seite);
system("dvips -O -1in,-1in cd".$seite);
# if ( $preview == 0 ) { system("lpr cd".$seite.".ps"); }
1;