Heim >Backend-Entwicklung >PHP-Tutorial >phpimageeditor für den persönlichen Gebrauch modifiziert

phpimageeditor für den persönlichen Gebrauch modifiziert

WBOY
WBOYOriginal
2016-08-08 09:27:331018Durchsuche

下载电影phpimageeditor;
$ vim phpimageeditor/lite/shared/classes/phpimageeditor.php
因标
    class PHPImageEditor {
    var $srcEdit = "";
var $name = "";
    var $srcOriginal = "";
    var $srcPng = "";
    var $srcWorkWith = "";
    var $urlWorkWith = "";
var $resourceWorkWith = false;
    var $mimeType = "";
    var $actionSaveAndClose = "save";
    var $actionRotateLeft = "rotate:90";
    var $actionRotateRight = "rotate: - 90";
    var $actionGrayscale = "grayscale";
    var $actionContrast = "contrast";
    var $actionBrightness = "brightness";
    var $actionUndo = "undo";
var $actionUpdate = "update";
    var $actionRotateIsSelected = false;
    var $actionRotate = "";
    var $actionSeparatorSign = "#";
    var $fieldNameKeepProportions = "keepproportions";
🎜>    var $errorMessages = array();
    var $formName = "phpimageeditor";
    var $inputWidth = -1;
    var $inputHeight = -1;
    var $inputCropLeft = 0; var $inputCropRight = 0; inputCropKeepProportionsRatio = 1;
    var $inputPanel = PIE_START_PANEL;
    var $inputLanguage = PIE_DEFAULT_LANGUAGE;
    var $inputContrast = 0;
    var $inputBright ness = 0;
    var $inputContrastLast = 0;
🎜>    var $inputBrightnessLast = 0;
    var $inputGrayscale = false;
    var $httpImageKey = "imagesrc";
    var $texts = array();
    var $actions = "";
    var $isPostBack = false;
    var $isAjaxPost = false;
    var $finalWidth = -1;
    var $finalHeight = -1;
    var $widthKeepProportions = -1;
var $heightKeepProportions = -1;
    var $userId = "";
    var $fonts = array();
    var $doSave = false;
    var $contrastMax = 100;
    var $brightnessMax = 255;
//    var $photoInfo = array();
   
    function PHPImageEditor() {
        $this->LoadLanguage() ;
        if (version_compare(phpversion() , PIE_PHP_VERSION_MINIMUM, "            $this->errorMessages[] = phpversion() . " " . $this->texts["OLD PHP VERSION"] . " " . PIE_PHP_VERSION_MINIMUM;
            return;
        das ->httpImageKey] != NULL) {
            $l = DIRECTORY_SEPARATOR;
            $file = dirname(dirname(dirname(dirname(__FILE__)))) . "{$l}tmp{$l}{$_GET[$this->httpImageKey]}";
            #$srcEdit = strip_tags($_GET[$this->httpImageKey]);            $srcEdit = strip_tags ($file);
        }
        if ($srcEdit == "") {
            $this->errorMessages[] = $this->texts["NO PROVIDED IMAGE"];
            return ;
        }
        $this->srcEdit = urldecode($srcEdit);
        if (isset($_POST["userid"]))
            $this->userId = $_POST["userid " "];
        else {
            $this->userId = "_" . str_replace(".", "_", $_SERVER['REMOTE_ADDR']);
            #In meiner virtuellen Box in Windows Vista erhalte ich :: als IP.
            #Entfernen Sie es, um Fehler zu vermeiden.
            $this->userId = str_replace("_::", "", $this->userId);
        }
        $this->SetSrcOriginal();
        $this->SetSrcPng( );
        $this->SetSrcWorkWith();
        if (!file_exists($this->srcEdit)) {
            $this->errorMessages[] = $this->texts["BILD NICHT EXIST"];
            return;
        }
        $info = getimagesize($this->srcEdit);
        if (!$info) {
            $this->errorMessages[] = $ this->texts["INVALID IMAGE TYPE"];
            return;
        }
        $this->mimeType = image_type_to_mime_type($info[2]);
// echo image_type_to_mime_type($info[ 2])."===".image_type_to_mime_type(IMAGETYPE_JPEG);exit;
        if ($this->mimeType == image_type_to_mime_type(IMAGETYPE_JPEG) || $this->mimeType == image_type_to_mime_type(IMAGETYPE_GIF) || $this ->mimeType == image_type_to_mime_type(IMAGETYPE_PNG)) {
            if (!$this->isPostBack)
                $this->SaveOriginal();
            $this->resourceWorkWith = $this->CreateImage($ this->srcOriginal);
            $this->SavePng();
            copy($this->srcPng, $this->srcWorkWith);
            $this->resourceWorkWith = $this->CreateImage( $this->srcPng);
        }
        else {
           🎜>        $this->finalWidth = $this->GetWidth();
        $this->finalHeight = $this->GetHeight();
        $this->widthKeepProportions = $this->GetWidth();
        $this->heightKeepProportions = $this->GetHeight();
//        $this->photoInfo = $this->GetUserData();
        if ($this->isPostBack) {
            $this->actionRotateIsSelected = (strip_tags($_POST["rotate"]) != "-1");
            $this->actionRotate = strip_tags($_POST["rotate"]);
            $ this->actions = strip_tags($_POST["actions"]);
            $this->isAjaxPost = (strip_tags($_POST["isajaxpost"]) == "true");
            $this-> inputWidth = (int) strip_tags($_POST["width"]);
            $this->inputHeight = (int) strip_tags($_POST["height"]);
            $this->inputCropLeft = (int ) strip_tags($_POST["cropright"]);
            $this->inputCropRight = (int) strip_tags($_POST["cropright"]);
            $this->inputCropTop = (int) strip_tags($ _POST["croptop"]);
            $this->inputCropBottom = (int) strip_tags($_POST["cropbottom"]);
            $this->inputPanel = (int) strip_tags($_POST["panel "]);
            $this->inputLanguage = strip_tags($_POST["sprache"]);
            $this->inputKeepProportions = (strip_tags($_POST["keepproportionsval"]) == "1");
           >inputCropKeepProportions = (strip_tags($_POST["cropkeepproportionsval"]) == "1");
            $this->inputCropKeepProportionsRatio = (float) strip_tags($_POST["cropkeepproportionsratio"]);
            $this- >inputGrayscale = (strip_tags($_POST["grayscaleval"]) == "1");
            $this->inputBrightness = (int) strip_tags($_POST["brightness"]);
            $this- >inputContrast = (int) strip_tags($_POST["contrast"]);
            $this->inputBrightnessLast = (int) strip_tags($_POST["brightnesslast"]);
           int) strip_tags($_POST["contrastlast"]);
            $this->Action(strip_tags($_POST["actiontype"]));
        }
    }
    function LoadLanguage() { this->inputLanguage;
        } else if (isset($_GET["Sprache"])) {
            $this->inputLanguage = $_GET["Sprache"];
            $Sprache = $this- >inputLanguage;
        } else
            $Sprache = PIE_DEFAULT_LANGUAGE;
        $tryLanguage = "Sprache/" . $Sprache . ".ini";
        if (file_exists($tryLanguage))
            $this->texts = PIE_GetTexts("Sprache/" . $Sprache . ".ini");
        sonst
            $this ->texts = PIE_GetTexts("Sprache/" . PIE_DEFAULT_LANGUAGE . ".ini");
        //Die Texte, die in der aktuellen Sprache nicht vorhanden sind, aus Englisch laden.
        $texts = PIE_GetTexts("Sprache/en- GB.ini");
        foreach ($texts as $key => $text) {
            if (array_key_exists($key, $this->texts) === false)
                $this-> texts[$key] = $text;
        }
    }
    function SetSrcOriginal() {
        $arr = explosion("/", $this->srcEdit);
        $this- >srcOriginal = PIE_IMAGE_ORIGINAL_PATH . $this->AddUserIdToImageSrc($arr[count($arr) - 1]);
    }
    function SetSrcWorkWith() {
        $arr = explosion("/", $this->srcEdit);
        $srcWorkWith = PIE_IMAGE_WORK_WITH_PATH . $this->AddUserIdToImageSrc($arr[count($arr) - 1]);
        $srcWorkWith = substr($srcWorkWith, 0, strripos($srcWorkWith, ".")) . ".png";
        $this->srcWorkWith = $srcWorkWith;
        //         $this->urlWorkWith = $this->isAjaxPost && $_POST['actiontype'] == $this->actionSaveAndClose
        //             ? "http://".str_replace(DIRECTORY_SEPARATOR,"/",str_replace(DOC_ROOT,$_SERVER['SERVER_NAME'],$this->srcEdit))
        //             : "http://".str_replace(DIRECTORY_SEPARATOR ,"/",str_replace(DOC_ROOT,$_SERVER['SERVER_NAME'],$srcWorkWith))
        //             ;
        if ($_POST['actiontype'] == $this->actionSaveAndClose) {
            $this->urlWorkWith = "http://" . str_replace(DIRECTORY_SEPARATOR, "/", str_replace(DOC_ROOT, $_SERVER['SERVER_NAME'], $this->srcEdit));
            #               echo "Ajax:{$this->urlWorkWith}";
        } else {
            $this->urlWorkWith = "http://" . str_replace(DIRECTORY_SEPARATOR, "/", str_replace(DOC_ROOT, $_SERVER['SERVER_NAME'], $srcWorkWith));
            #             echo "noAjax:{$this->urlWorkWith}";
       . }
   }
    function SetSrcPng() {
        $arr = explosion("/", $this->srcEdit);
        $srcPng = PIE_IMAGE_PNG_PATH . $this->AddUserIdToImageSrc($arr[count($arr) - 1]);
        $srcPng = substr($srcPng, 0, strripos($srcPng, ".")) . ".png";
        $this->srcPng = $srcPng;
    }
    function SaveOriginal() {
        copy($this->srcEdit, $this->srcOriginal);
#Ändern Sie die Größe, um sie an die maximale Breite/Höhe anzupassen.
        $imageTmp = $this->CreateImage($this->srcOriginal);
        $finalWidth = $this->GetWidthFromImage($imageTmp);
        $finalHeight = $this->GetHeightFromImage($imageTmp);
        $doSave = false;
        if ($finalWidth > PIE_IMAGE_MAX_WIDTH) {
            $widthProp = PIE_IMAGE_MAX_WIDTH / $finalWidth;
            $finalWidth = PIE_IMAGE_MAX_WIDTH;
            $finalHeight =round($finalHeight * $widthProp);
           $heightProp = PIE_IMAGE_MAX_HEIGHT / $finalHeight;
             $finalHeight = PIE_IMAGE_MAX_HEIGHT;
           ) {
            $imageTmp = $this ->ActionResize($finalWidth, $finalHeight, $imageTmp);
            $this->SaveImage($imageTmp, $this->srcOriginal);
        }
    }
    function SavePng() {
        $this->SaveImage($this->resourceWorkWith, $this->srcPng, image_type_to_mime_type(IMAGETYPE_PNG));
    }
    function ErrorHasOccurred() {
        return (count($this->errorMessages ). 🎜> { )
            return (int) $_POST["widthlast"];
        return $this->GetWidth();
    }
    function GetHeight() {
        return $this->GetHeightFromImage($this->resourceWorkWith);
    }
    function GetHeightLast() {
        if ($this->isPostBack)
            return ( int) $_POST["heightlast"];
        return $this->GetWidth();
    }
    function GetWidthFromImage($image) {
        return imagesx($image);
    }
    function GetHeightFromImage($image) {
        return imagesy($image);
    }
    function Action($actionType) {
        $this->doSave = false;
        if ( $actionType == $this->actionUndo) {
            $this->ActionUndo();
            $this->doSave = true;
        }
        if ($actionType == $this-> actionUpdate ||. $actionType == $this->actionSaveAndClose) {
            if ($this->inputWidth != $this->GetWidthLast() || $this->inputHeight != $this->GetHeightLast())
                $this->actions .= $this->GetActionSeparator() . "Größe ändern:". $this->inputWidth . "," . $this->inputHeight;
            if ($this->inputCropLeft != 0 || $this->inputCropRight != 0 || $this->inputCropTop != 0 || $this->inputCropBottom != 0)
                $this->actions .= $this->GetActionSeparator() . "Ernte:" . $this->inputCropLeft . "," . $this->inputCropRight . "," . $this->inputCropTop . "," . $this->inputCropBottom;
            $this->doSave = true;
        }
        if ($actionType == $this->actionUpdate && $this->inputGrayscale) {
            if (strpos( $this->actions, $this->actionGrayscale) === false) {
                $this->actions .= $this->GetActionSeparator() . $this->actionGrayscale . ":0";
                $this->doSave = true;
            }
        } else if ($actionType == $this->actionUpdate && !$this->inputGrayscale) {
            if ( !(strpos($this->actions, $this->actionGrayscale) === false)) {
                $this->actions = str_replace($this->actionGrayscale . ":0" . $this->GetActionSeparator (), "", $this->actions);
                $this->actions = str_replace($this->GetActionSeparator() . $this->actionGrayscale . ":0", "", $this-> Aktionen);
                $this->actions = str_replace($this->actionGrayscale . ":0", "", $this->actions);
                $this->doSave = true;
            }
        }
        if ($this->inputContrast != $this->inputContrastLast) {
            $this->actions .= $this->GetActionSeparator() . $this->actionContrast . :: . $this->inputContrast;
            $this->doSave = true;
        } $this->GetActionSeparator() . $this->actionBrightness . :: . $this->inputBrightness;
            $this->doSave = true;
        }
        if ($this->actionRotateIsSelected) {
            if ($this->actionRotate == $this->actionRotateLeft) {
                $this->actions .= $this->GetActionSeparator() . $this->actionRotateLeft;
                $this->doSave = true;
            } else if ($this->actionRotate == $this->actionRotateRight) {
                $this->actions .= $this ->GetActionSeparator() . $this->actionRotateRight;
                $this->doSave = true;
                   $finalContrastFound = false;
        $finalBrightnessFound = false;
        $finalGrayscale = false;
        if ($this->doSave && $this->actions !="") {
           , $this->actions);
            $finalRotate = 0;
            $finalCropLeft = 0;
            $finalCropRight = 0;
                    $finalCropBottom = 0;
            $doSwitch = false;
            foreach ($allActions as $loopAction) {
               1 ]);
                if ($actionDetail[0] == "resize") {
                   ) $actionValues[1];
                } else if ($actionDetail[0] == "crop") {
                   $actionValueLeft = (int) $actionValues[0];
                  . $ actionValueRight = (int) $ actionValues[1];
                    $actionValueTop = (int) $actionValues[2];
                     $widthProp = 1;
                    $heightProp = 1 ;
                   if ($doSwitch) {
                       $widthProp = (($this->GetHeight() - ($finalCropTop $finalCropBottom)) / $this->finalWidth);
                        $heightProp = (($ this->GetWidth() - ($finalCropLeft $finalCropRight)) / $this->finalHeight);
                    } else {
                        $widthProp = (($this->GetWidth() - ($finalCropLeft $finalCropRight)) / $this->finalWidth);
                        $heightProp = (($this->GetHeight() - ($finalCropTop $finalCropBottom) ) / $this->finalHeight);
                   }
                  thProp;
                    $cropTop = $actionValueTop * $heightProp;
                   $cropBottom = $actionValueBottom * $heightProp;
                   $cropValues ​​= array();
                   $cropValues[] =. $cropRight ;
                    $cropValues[] = $cropBottom;
                    $cropValues[] = $cropLeft;
                    $cropValues[] = $cropTop;
                    if ($finalRotate != 0)
                       $cropValues ​​=. $ this->RotateArray(($finalRotate / -90), $cropValues);
                    $finalCropRight = $cropValues[0];
                   $finalCropBottom = $cropValues[1];
                    $finalCropLeft = alues[2];
                    $finalCropTop = $cropValues[3];
                   $this->finalWidth -= ($actionValueLeft $actionValueRight);
                  $this->finalHeight -= ($actionValueTop $actionValueBottom);
               >                else if ($actionDetail[0] == $ this->actionGrayscale && $this->inputGrayscale) {
                    $finalGrayscale = true;
               } else if ($actionDetail[0] == "contrast") {
                  . $finalCon trastFound = true;
$finalContrast = $actionValues[0];
                } else if ($actionDetail[0] == "brightness") {
                   $finalBrightnessFound = true;
                  . $finalBright ness = $actionValues[0];
                } else if ($actionDetail[0] == "rotate") {
                    $finalRotate = (int) $actionValues[0];
                    $finalWidthTmp = $this->finalWidth;
                   $this->finalWidth = $this->finalHeight;
                  }
                if ($finalRotate == - 360 ||. $finalRotate == 360)
                   $finalRotate = 0;
              90 ||. $finalRotate == -270));
            }
            //1. Alle Effekte.
            if ($finalGrayscale)
                $this->ActionGrayscale();
            if ($finalBrightnessFound)
              . $this->ActionBrightness($finalB Richtigkeit);
            if ($finalContrastFound )
                $this->ActionContrast($finalContrast * -1);
            //2. Zuschneiden.
            $finalCropLeft = Round($finalCropLeft);
            $finalCropRight = Round($finalCropRight);
            $finalCropTop = Round($finalCropTop);
           . $finalCropBotto m = rund($finalCropBottom) ;
            if ($finalCropLeft != 0 || $finalCropRight != 0 || $finalCropTop != 0 || $finalCropBottom != 0)
                $this->ActionCrop($finalCropLeft, $finalCropRight, $finalCropTop , $finalCropBottom);
            //3. Drehen ->finalHeight, 1) == Round($this->GetWidth() / $this->GetHeight(), 1)) {
                //Es scheint die gleichen Proportionen wie das Original zu haben. Verwenden Sie den ursprünglichen Proportionswert.
                $this->widthKeepProportions = $this->GetWidth();
                $this->heightKeepProportions = $this->GetHeight();
            } else {
                / /Die Proportionen wurden geändert. Stattdessen die neue Breite und Höhe verwenden        //4. Größe ändern
            if ($this->finalWidth > 0 && $this->finalHeight > 0)
                $this->resourceWorkWith = $this->ActionResize($this->finalWidth, $this->finalHeight, $ this->resourceWorkWith);
            $this->SaveImage($this->resourceWorkWith, $this->srcWorkWith, image_type_to_mime_type(IMAGETYPE_PNG));
        }
        $this->inputBrightness = $finalBrightness;
        $this->inputContrast = $ finalContrast;
        $this->inputGrayscale = $finalGrayscale;
        if ($actionType == $this->actionSaveAndClose) {
            $this->SaveImage($this->resourceWorkWith, $this->srcEdit , $this->mimeType);
            unlink($this->srcOriginal);
            unlink($this->srcPng);
            unlink($this->srcWorkWith);
           s(PIE_IMAGE_ORIGINAL_PATH );
            PIE_DeleteOldImages (PIE_IMAGE_PNG_PATH); _ON_SAVE ? 'window.opener.location.reload();' : '';
// PIE_Echo('
');
        }
    }
    function ActionResize($width, $height, $image) {
        $newImage = @imagecreatetruecolor ($width, $height);
        PIE_KeepTranspacecyCopyResampled($newImage, $this->mimeType);
        imagecopyresampled($newImage, $image, 0, 0, 0, 0, $width, $height, $this ->GetWidthFromImage($image), $this->GetHeightFromImage($image));
        return $newImage;
    }
    function ActionCrop($cropLeft, $cropRight, $cropTop, $cropBottom) {
        $cropWidth = $this->GetWidth() - $cropLeft - $cropRight;
        $cropHeight = $this->GetHeight() - $cropTop - $cropBottom;
        $newImageCropped = @imagecreatetruecolor($cropWidth , $cropHeight);
        PIE_KeepTranspacecyCopyResampled($newImageCropped, $this->mimeType);
        //imagecopy($newImageCropped, $this->resourceWorkWith, 0, 0, $cropLeft, $cropTop, $cropWidth, $ CropHeight);
        imagecopyresampled($newImageCropped, $this->resourceWorkWith, 0, 0, $cropLeft, $cropTop, $cropWidth, $cropHeight, $cropWidth, $cropHeight);
        $this->resourceWorkWith = $newImageCropped;
    }
    function ActionUndo() {
        $separatorPos = strrpos($this->actions, $this->actionSeparatorSign);
        if (!($separatorPos === false)) {
            $this->actions = substr($this->actions, 0, $separatorPos);
        } else {
            $this->actions = "";
        }
    }
function CreateImage($srcEdit) {
        $info = getimagesize($srcEdit);
        if (!$info)
            return NULL;
        $mimeType = image_type_to_mime_type($info[2]);
        if ($mimeType == image_type_to_mime_type(IMAGETYPE_JPEG)) {
            return imagecreatefromjpeg($srcEdit);
        } else if ($mimeType == image_type_to_mime_type(IMAGETYPE_GIF)) {
            return imagecreatefromgif($srcEdit) ;
        } else if ($mimeType == image_type_to_mime_type(IMAGETYPE_PNG)) {
            return imagecreatefrompng($srcEdit);
        }
        return NULL;
    }
    function ActionRotate($Degrees) {
        if (function_exists('imagerotate'))
            $this->resourceWorkWith = imagerotate($this->resourceWorkWith, $Degrees, 0);
        else
            $this->resourceWorkWith = PIE_ImageRotate($this->resourceWorkWith, $Degrees);
        if ($this->mimeType == image_type_to_mime_type(IMAGETYPE_GIF) || $this->mimeType == image_type_to_mime_type(IMAGETYPE_PNG) ). >    Funktion ActionGrayscale () {
        if (function_exists('imagefilter'))
            imagefilter($this->resourceWorkWith, IMG_FILTER_GRAYSCALE);
        else
           . PIE_Grayscale($this->resourceWorkWith);
    }
    function ActionContrast($contrast) {
        //-100 = maximaler Kontrast, 0 = keine Änderung, 100 = minimaler Kontrast
        if (function_exists('imagefilter'))
            imagefilter($this-> resourcesWorkWith, IMG_FILTER_CONTRAST, $contrast);
        else
            PIE_Contrast($this->resourceWorkWith, $contrast);
    }
    function ActionBrightness($light) {
        //-255 = min Helligkeit, 0 = keine Änderung, 255 = maximale Helligkeit ($ this->resourceWorkWith, $light);
    }
    function GetErrorMessages() {
        if (count($this->errorMessages)) {
            PIE_Echo('
');
            PIE_Echo('
');
            foreach ($this->errorMessages as $errorMessage)
                PIE_Echo('
' . $errorMessage . '
');
            PIE_Echo("
");
            PIE_Echo('

');
        }
    }
    function GetActions() {
        PIE_Echo($this->actions);
    }
    function GetActionSeparator() {
        if ($this ->actions != "")
            return $this->actionSeparatorSign;
        return "";
    }
    function SaveImage($image, $toSrc, $mimeType = -1) {
        if ($mimeType == -1)
            $mimeType = $this->mimeType;
        if ($mimeType == image_type_to_mime_type(IMAGETYPE_JPEG)) {
            imagejpeg($image, $toSrc);
        } else if ($mimeType == image_type_to_mime_type(IMAGETYPE_GIF)) {
            imagegif($image, $toSrc);
        } else if ($mimeType == image_type_to_mime_type(IMAGETYPE_PNG)) {
            // Transparenz bewahren.
            imagesavealpha($image, true);
            imagepng($image, $toSrc);
        }
    }
    function CleanUp() {
        if ($this- >resourceWorkWith)
            imagedestroy($this->resourceWorkWith);
    }
    function RotateArray($numberOfSteps, $arr) {
        $finalArray = array();
        //-3 to 3
        $finalArray[] = $arr[$this->NumberOfStepsCalculator($numberOfSteps 0)];
        $finalArray[] = $arr[$this->NumberOfStepsCalculator($numberOfSteps 1)];
$finalArray[] = $arr[$this->NumberOfStepsCalculator($numberOfSteps 2)];
        $finalArray[] = $arr[$this->NumberOfStepsCalculator($numberOfSteps 3)];
        return $finalArray;
    }
    function NumberOfStepsCalculator($sum) {
        $maxIndex = 3;
        if ($sum > $maxIndex)
            return ($sum - $maxIndex) - 1;
else if ($sum             return ($sum $maxIndex) 1;
        }
        return $sum;
    }
    function AddUserIdToImageSrc($imageSrc) {
        $ name = end(explode(DIRECTORY_SEPARATOR, $imageSrc));
        $this->name = $name;
        $ext = end(explode('.', $name));
        $p = strlen($ext) 1;
        $f = str_replace(substr($imageSrc, -$p), "{$this->userId}.{$ext}", $name);
        return $f ;
    }
    function GetFormAction() {
        $joomlaIsAdmin = isset($_GET['isadmin']) ? 'isadmin=' . $_GET['isadmin'] . '&' : '';
        #return "index.php?".$joomlaIsAdmin.$this->httpImageKey."=".urlencode($this->srcEdit);
        return "index.php? " . $joomlaIsAdmin . $this->httpImageKey . "=" . urlencode ($this->name); >heightKeepProportions;
    }
$ vim phpimageeditor/lite/shared/index.php
覆盖:
    ini_set('default_charset', 'utf-8');
   
header("Cache-Control: no-store");
header('content-type: text/html; charset: utf-8');
include 'lite/shared/config.php';
include 'lite/shared/includes/constants.php';
include 'lite/shared/includes/functions.php';
include 'lite/shared/classes/phpimageeditor.php';
global $objPHPImageEditor;
$objPHPImageEditor = new PHPImageEditor();
    if (!$objPHPImageEditor->isAjaxPost) { ?>



PHP Image Editor
   
   
       
   
       
       
   
   
   
   
   
   

       





ErrorHasOccurred()) { ?>



">

texts["RESIZE IMAGE"]); ?>





">

texts["ROTATE IMAGE"]); ?>








">

texts["EFFECTS"]); ?>











                                                                                                     














inputKeepProportions ? 'checked="checked"' : ''); ?>/>





texts["INSTRUCTIONS"]); ?>

texts["RESIZE HELP"]); ?>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn