################################## # ASCII Art Stereogram Generator # # Ported by aNNiMON from aa3d # # http://annimon.com/ # ################################## define('_IN_JOHNCMS', 1); $stdin = trim($_POST['stdin']); if(empty($stdin)) $stdin = "11111111111111111111111111111111111\n11111111111111111111111111111111111\n11112222222222222222222222222211111\n11112222222222222222222222222211111\n11112222222222222222222222222211111\n11112222233333333333333322222211111\n11112222233333333333333322222211111\n11112222233334444433333322222211111\n11112222233334444433333322222211111\n11112222233334444433333322222211111\n11112222233333333333333322222211111\n11112222233333333333333322222211111\n11112222222222222222222222222211111\n11112222222222222222222222222211111\n11112222222222222222222222222211111\n11111111111111111111111111111111111\n11111111111111111111111111111111111"; //Выводим готовый текст if (isset($_POST['submit'])) { //Получаем данные POST $width = intval(abs($_POST['width'])); $skip = intval(abs($_POST['skip'])); $rnd = intval(abs($_POST['rnd'])); $digit = intval(abs($_POST['digit'])); //Проверка правильности if(empty($width)) $width = 80; if(empty($skip)) $skip = 12; if(empty($rnd)) $rnd = 1; if(empty($digit)) $digit = 0; //Дополнительные переменные $data = ''; $x = 0; $y = 0; $l = 0; $l2 = 0; $shift = 0; $s = ''; $letter = ''; $str = ''; //Обработка $stdin_idx = 0; $std_eof = false; for ($y = 0; !$std_eof; $y++) { $l = 0; $l2 = 0; if ($rnd == 1) $shift = rand(1, 256); for ($x = 0; $x < $width; $x++) { $letter = chr($digit == 0 ? rand(65, 96) : rand(48, 57)); if ($l == 0 && $x > $skip) { $s = ord($stdin[$stdin_idx]); $stdin_idx++; if ($s == 32) $s = 0; else if ( $s == 10 || ($stdin_idx+1 >= strlen($stdin)) ) { if($s != 10) $std_eof = true; $s = 0; $l = 1; } else if ($s >= 48 && $s <= 57) $s = 48 - $s; else $s = -2; } else $s = 0; $s += $skip; $s = $x - $s; if ($s < 0) $ss = empty($str) ? $letter : $str[($x + $shift) % strlen($str)]; else $ss = $data[$s]; $data[$x] = $ss; $stdout .= $ss; } $stdout .= "\n"; $s = 97; } header("Content-Type: text/plain"); echo $stdout; exit; } $headmod = 'xaos'; $textl = 'ASCII Art Stereogram Generator'; require_once ("../incfiles/core.php"); require_once ("../incfiles/head.php"); echo '