No rek bych ze minimalne tri.
Mam takovy dojem ze kdyz nekdo delal z vysledku ty dva soubory v zipu, ze mu nejkde par pixelu uklouzlo ... vetsinou ze zacatku radku a zrovna v usecich, kde nejdou moc dobre odhadnout .... no doufam ze se tam casem objevi opraveny zip ....
Ja uz jim na to dlabu... vyzkousel jsem vsechny mozne zpusoby prokladani a furt je z toho jen takova mazanina. Pokud by slo o brejlouna, cert to pal, ale dokud tu chybu neopravi, tak to nikdy neslozim tak, aby napisy sedely pixel na pixelu. Takhle mi to tam lita +- 5 pixelu a veskere pismo vypada jak rosypana rejze.
IMHO by za tohle byla dobra pomsta, kdyby jim vsichni lidi pak poslali vysledky nejak zakryptovane (na nejake takovehle urovni pochopitelne, ale co kus, to original).
Kdyz by to udelal jen nekdo, tak se na to vykaslou, ale kdyz by vysledky zakryptili vsichni, museli by to rozlouskat, aby mohli vyhlasit viteze. Sice budou louskat jen prvni tri, ale tak dlouho, dokud nenajdou prvni tri spravne... coz by se dalo take zaridit, aby se aspon tyden nenudili, ze :-)
rcpt to: gep Ale to jsem delal, nicmene vysledek stoji za kulovy. Kdyz se o tom teda bavime, vytahal jsem veci z .bash_history, co jsem vlastne provadel, sesypal to do skriptu, takze to muzes zkusit, uvidis, ze vysledek stoji za prd, napisy jsou rozjebany.
Ja sem to puvodne jen pro overeni napsal tak, ze mi to pres font color obarvovalo znak "#". Kdyz jsem videl, ze to asi fakt dela to, co chci, predelal jsem to tak, ze mi to kresli tabulku s jednopixelovyma okynkama, kterym to obarvuje pozadi.
Vystup se sype na stdout, takze nezapomen na naky >pokus.html. Napsal jsem tam par komentaru, aby to bylo krapet prehlednejsi.
------------------ cut here ----------------
#!/bin/bash
cat 1.txt |sed s/u/A/g |sed s/v/B/g |sed s/w/C/g |sed s/x/D/g |sed s/y/E/g |sed s/z/F/g |tr ' ' '\n' >1.fmt
cat 2.txt |sed s/u/A/g |sed s/v/B/g |sed s/w/C/g |sed s/x/D/g |sed s/y/E/g |sed s/z/F/g |tr ' ' '\n' >2.fmt
LINES1=`wc -l 1.fmt |awk '{print $1}'`
LINES2=`wc -l 2.fmt |awk '{print $1}'`
if (( $LINES1 > $LINES2 ));
then
MAX=$LINES1;
FILE1=1.fmt FILE2=2.fmt;
else
MAX=$LINES2;
FILE1=2.fmt; FILE2=1.fmt;
fi
# Nastavene poradi vychazi z predpokladu, ze vetsi soubor obsahuje vice radku,
#tudiz mensi by se mel vmezerovat do nej.
# Netvrdim, ze to tak je, ale zdalo se mi to logicke
while [ "$COUNT" != "$MAX" ]; do
let ++COUNT
head -$COUNT $FILE1 |tail -1 >>interlaced.dat
head -$COUNT $FILE2 |tail -1 >>interlaced.dat
done
echo "<html><head><body><style type=\"text/css\">"
echo "table {empty-cells:show;border-collapse:collapse;border-spacing:0}"
echo "td {padding:0;border:none;width:1px;height:1px}"
echo "col {width:1px}</style></head><body>"
echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">"
echo "<col width=\"1\">"
echo "<tbody>"
echo "<tr>"
# Kreslim tabulku s obarvenym backgroundem a polickama 1x1 pixel
cat interlaced.dat |while read; do
let ++NO
if [ "$REPLY" != "X" ];
then
echo "<td bgcolor=\"#$REPLY\"></td>"
else
# Dopocitavaci bastl, co dopocita, obarvuje na cerveno
if (( $NO < 527 ));
then
while (( $NO < 527 )); do
echo "
Ano chyb tam je vic (asi sest radek se rozpadlo). Moje reseni:
1. Ze dvou souboru udelam jeden se spravnymi barevnymi hodnotami
perl -e 'open D1, "<$ARGV[0]" || die; open D2, "<$ARGV[1]" || die; $k=
2. Vytvorim 'HTML obrazek' pomoci nasledujiciho kodu. S nejakou optimalizaci jsem se neobtezoval ;-)
#!/usr/bin/perl
my @radek = ();
my $cell = 1;
open (IN1, '<root4.hex') || die "failed to open root4.hex";
print < @_) {
push @_, @p[scalar(@_)..527-1];
if ($l==121) {
$_[448] = $_[447]; $_[450] = $_[449]; $_[452] = $_[453];
} elsif ($l==124) {
$_[454] = $_[453];
}
}
print "\t<tr>\n";
for my $i (0..527) {
print "\t\t<td bgcolor='#$_[$i]'></td>\n";
}
print "\t</tr>\n";
}
sub adj {
if (@_ < 527) {
my $p = 210;
$p = 2 if($l > 100);
my $i = $_[$p];
my @a = ();
push @a, $i for (scalar(@_)..526);
splice @_, $p, 0, @a;
} elsif(@_ > 527) {
my $i = $_[0];
my $b = 0;
my $c = 0;
my $d = 0;
my @a1;
for $c (0..$#_) {
if ($_[$c] eq $i && $_[$c+1] eq $i && $_[$c+2] eq $i && $_[$c+3] eq $i && $_[$c+4] eq $i) {
if($b) {
$d = $c;
last;
}
} else {
$b = 1;
}
}
prn(splice @_, 0, $d);
$l++;
adj(@_);
return;
}
@p = @_;
prn(@_);
}
while (<IN1>) {
chomp;
next if(!length $_);
for my $item (split /\s+/) {
next if(!length $_);
if ($item eq 'X') {
$l ++;
adj(@radek);
@radek = ();
} else {
next if(!length $item);
push @radek, $item;
}
}
}
print <<"EOFOOT";
>
</table>
</body>
</html>
EOFOOT
close IN1;
Hasismarja, to ma phpko v kazde verzi jine commandlinove parametry? To je teda solidni prasecina, inu neda se zaprit, ze je to potomek perlu :-) Jinak dik za radu a z toho tvyho reseni leze fakt hezkej obrazek, o hodne lepsi, nezli se povedl me, takovy vysledek bych skutecne necekal...