它是這樣工作的,將一個RTF文件上傳,然后轉成HTML顯示出來,代碼有點復雜,teaman還要好好研究,好象中文版有點問題。

<html>
<body>
<?
if(!($userfil " /> 国产精品亚洲AV毛片一区二区三区,久青草影院,久久视频这里只精品99热在线

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

將RTF格式的文件轉成HTML并在網頁中顯示的代碼

將RTF格式的文件轉成HTML并在網頁中顯示的代碼
它是這樣工作的,將一個RTF文件上傳,然后轉成HTML顯示出來,代碼有點復雜,teaman還要好好研究,好象中文版有點問題。

    <html>
    <body>
    <?
    if(!($userfile)) {
    ?>
    <form enctype="multipart/form-data" action="<?print($php_SELF);?>" method=post>
    <input type=hidden name="max_file_size" value=2000>
    Send this file: <input name=userfile type=file>
    <input type=submit value=Upload>
    </form>
    </body>
    </html>
    <?
    exit;
    }
    function ProcessTags($tags, $line) {
    $html = "";
    global $color;
    global $size;
    global $bullets;
    // Remove spaces.
    $tags = trim($tags);
    // Found the beginning of the bulleted l
    //     ist.
    if(ereg("///pnindent", $tags)) {
    $html .= "<ul><li>";
    $bullets += $line;
    $tags = ereg_replace("///par", "", $tags);
    $tags = ereg_replace("///(tab)", "", $tags);
    }
    if($line - $bullets == 0) {
    $tags = ereg_replace("///par", "", $tags);
    }
    elseif($line - $bullets == 1) {
    if(ereg("///pntext", $tags)) {
    $html .= "<li>";
    $tags = ereg_replace("///par", "", $tags);
    $tags = ereg_replace("///(tab)", "", $tags);
    $bullets++;
    }
    else {
    $html .= "</ul>";
    $bullets = 0;
    }
    }
    // Convert Bold.
    if(ereg("///b0", $tags)){ $html .= "</b>"; }
    elseif(ereg("///b", $tags)) { $html .= "<b>"; }
    // Convert Italic.
    if(ereg("///i0", $tags)){ $html .= "</i>"; }
    elseif(ereg("///i", $tags)) { $html .= "<i>"; }
    // Convert Underline.
    if(ereg("///ulnone", $tags)){ $html .= "</u>"; }
    elseif(ereg("///ul", $tags)){ $html .= "<u>"; }
    // Convert Alignments.
    if(ereg("///pard///qc", $tags)) { $html .= "<div align=center>"; }
    elseif(ereg("///pard///qr", $tags)) { $html .= "<div align=right>"; }
    elseif(ereg("///pard", $tags)){ $html .= "<div align=left>"; }
    // Remove /pard from the tags so it does
    //     n't get confused with /par.
    $tags = ereg_replace("///pard", "", $tags);
    // Convert line breaks.
    if(ereg("///par", $tags)){ $html .= "<br>"; }
    // Use the color table to capture the fo
    //     nt color changes.
    if(ereg("///cf[0-9]", $tags)) {
    global $fcolor;
    $numcolors = count($fcolor);
    for($i = 0; $i < $numcolors; $i++) {
    $test = "///cf" . ($i + 1);
    if(ereg($test, $tags)) {
    $color = $fcolor[$i];
    }
    }
    }
    // Capture font size changes.
    if(ereg("///fs[0-9][0-9]", $tags, $temp)) {
    $size = ereg_replace("///fs", "", $temp[0]);
    $size /= 2;
    if($size <= 10) { $size = 1; }
    elseif($size <= 12) { $size = 2; }
    elseif($size <= 14) { $size = 3; }
    elseif($size <= 16) { $size = 4; }
    elseif($size <= 18) { $size = 5; }
    elseif($size <= 20) { $size = 6; }
    elseif($size <= 22) { $size = 7; }
    else{ $size = 8; }
    }
    // If there was a font color or size cha
    //     nge, change the font tag now.
    if(ereg("(///cf[0-9])||(///fs[0-9][0-9])", $tags)) {
    $html .= "</font><font size=$size color=$color>";
    }
    // Replace /tab with alternating spaces  
    //     and nonbreakingwhitespaces.
    if(ereg("///(tab)", $tags)) { $html .= "        "; }
    return $html;
    }
    function ProcessWord($word) {
    // Replace // with /
    $word = ereg_replace("[//]{2,}", "//", $word);
    // Replace /{ with {
    $word = ereg_replace("[//][/{]", "/{", $word);
    // Replace /} with }
    $word = ereg_replace("[//][/}]", "/}", $word);
    // Replace 2 spaces with one space.
    $word = ereg_replace(" ", "  ", $word);
    return $word;
    }
    $color = "000000";
    $size = 1;
    $bullets = 0;
    // Read the uploaded file into an array.
    //      
    $rtfile = file($userfile);
    $fileLength = count($rtfile);
    // Loop through the rest of the array
    for($i = 1; $i < $fileLength; $i++) {
    /*
    ** If the line contains "/colortbl" then we found the color table.
    ** We'll have to split it up into each individual red, green, and blue
    ** Convert it to hex and then put the red, green, and blue back together.
    ** Then store each into an array called fcolor.
    */
    if(ereg("^/{///colortbl", $rtfile[$i])) {
    // Split the line by the backslash.
    $colors = explode("//", $rtfile[$i]);
    $numOfColors = count($colors);
    for($k = 2; $k < $numOfColors; $k++) {
    // Find out how many different colors th
    //     ere are.
    if(ereg("[0-9]+", $colors[$k], $matches)) {
    $match[] = $matches[0];
    }
    }

    // For each color, convert it to hex.
    $numOfColors = count($match);
    for($k = 0; $k < $numOfColors; $k += 3) {
    $red = dechex($match[$k]);
    $red = $match[$k] < 16 ? "0$red" : $red;
    $green = dechex($match[$k + 1]);
    $green = $match[$k +1] < 16 ? "0$green" : $green;
    $blue = dechex($match[$k + 2]);
    $blue = $match[$k + 2] < 16 ? "0$blue" : $blue;
    $fcolor[] = "$red$green$blue";
    }
    $numOfColors = count($fcolor);
    }
    // Or else, we parse the line, pulling o
    //     ff words and tags.
    else {
    $token = "";
    $start = 0;
    $lineLength = strlen($rtfile[$i]);
    for($k = 0; $k < $lineLength; $k++) {
    if($rtfile[$i][$start] == "//" && $rtfile[$i][$start + 1] != "//") {
    // We are now dealing with a tag.
    $token .= $rtfile[$i][$k];
    if($rtfile[$i][$k] == " ") {
    $newFile[$i] .= ProcessTags($token, $i);
    $token = "";
    $start = $k + 1;
    }
    elseif($rtfile[$i][$k] == "/n") {
    $newFile[$i] .= ProcessTags($token, $i);
    $token = "";
    }
    }
    elseif($rtfile[$i][$start] == "{") {
    // We are now dealing with a tag.
    $token .= $rtfile[$i][$k];
    if($rtfile[$i][$k] == "}") {
    $newFile[$i] .= ProcessTags($token, $i);
    $token = "";
    $start = $k + 1;
    }
    }  
    else {
    // We are now dealing with a word.
    if($rtfile[$i][$k] == "//" && $rtfile[$i][$k + 1] != "//" && $rtfile[$i][$k - 1] != "//") {
    $newFile[$i] .= ProcessWord($token);
    $token = $rtfile[$i][$k];
    $start = $k;
    }
    else {
    $token .= $rtfile[$i][$k];
    }
    }
    }
    }
    }
    $limit = sizeof($newFile);
    for($i = 0; $i < $limit; $i++) {
    print("$newFile[$i]/n");
    }
    ?>
    </body>
    </html>

                 
  

php技術將RTF格式的文件轉成HTML并在網頁中顯示的代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 日韩精品真人荷官无码 | 亚洲一区在线观看视频 | 午夜DJ国产精华日本无码 | 日本全彩黄漫无遮挡 | 亚洲不卡视频在线观看 | 欧美国产一区二区三区激情无套 | 久久三级视频 | 97人摸人人澡人人人超一碰 | 如懿传免费观看在线全集 | 扒开双腿疯进出爽爽爽动态图 | 国产精品亚洲视频在线观看 | 99在线在线视频观看 | 95国产精品人妻无码久 | 99国产亚洲精品无码成人 | 忘忧草日本在线社区WWW电影 | 小学生偷拍妈妈视频遭性教育 | 免费国产成人高清在线看软件 | 2020国产成人精品视频人 | 99九九免费热在线精品 | 99re6久久热在线播放 | 91交换论坛 | 久久国产视频网 | 欧美日韩亚洲成人 | 日本xxxxx按摩19 | 超碰人人草在线视频 | 好妞操 | 荡公乱妇HD中文字幕 | 国产婷婷一区二区在线观看 | 邻家美姨在线观看全集免费 | 久久全国免费久久青青小草 | 久久热精品18国产 | 肉动漫无码无删减在线观看 | 好大好硬好爽好深好硬视频 | 一个人看的HD免费高清视频 | 日本经典片免费看 | 欧美s00老人| 性欧美金发洋妞xxxxbbbb | 亚洲 自拍 欧洲 视频二区 | 欧美日韩中文国产一区发布 | 永久adc视频年龄确认 | 69夫妇交友群 |