Heim  >  Artikel  >  Backend-Entwicklung  >  Lassen Sie uns darüber sprechen, wie Sie mit ueditor Bilder hochladen und Wasserzeichen hinzufügen

Lassen Sie uns darüber sprechen, wie Sie mit ueditor Bilder hochladen und Wasserzeichen hinzufügen

青灯夜游
青灯夜游nach vorne
2022-08-31 10:35:052995Durchsuche

Wie lade ich mit ueditor Bilder hoch und füge Wasserzeichen hinzu? Im folgenden Artikel erfahren Sie, wie Sie mit ueditor Bilder hochladen und Wasserzeichen hinzufügen.

Lassen Sie uns darüber sprechen, wie Sie mit ueditor Bilder hochladen und Wasserzeichen hinzufügen

Wenn der Blog Bilder hochlädt, hoffe ich, dass ich das Wasserzeichen meines Blog-Links setzen kann.

Das übliche Hochladen von Bildern ist in Ordnung. Wenn Sie mit ueditor Bilder hochladen und Wasserzeichen hinzufügen, müssen Sie einen Teil des PHP-Quellcodes von ueditor ändern.

Öffnen Sie zunächst Uploader.class.php im PHP-Ordner.

Lassen Sie uns darüber sprechen, wie Sie mit ueditor Bilder hochladen und Wasserzeichen hinzufügen

Suchen Sie die private Funktion upFile(), die die Hauptverarbeitungsmethode zum Hochladen von Dateien darstellt.

Suchen Sie Zeile 122: $this-> stateInfo = $this->stateMap[0];$this->stateInfo = $this->stateMap[0];

在这个下面加入:$this->imageWaterMark($this->filePath,9,'logo.png');

Fügen Sie unten hinzu: $this->imageWaterMark($this->filePath,9,'logo.png'); Code> Code>

imageWaterMark ist eine benutzerdefinierte Funktion,

wird unten erwähnt, $this->filePath ist der Pfad zum Hochladen des Bildes, 9 stellt die Position des Wasserzeichens dar, in der unteren rechten Ecke logo.png gehört Ihnen. Das hinzuzufügende Wasserzeichenbild befindet sich im selben Verzeichnis /php/. Wenn Sie es in einem anderen Pfad ablegen möchten, verwenden Sie bitte einen relativen Pfad.

Lassen Sie uns darüber sprechen, wie Sie mit ueditor Bilder hochladen und Wasserzeichen hinzufügen

Das Folgende ist eine benutzerdefinierte Funktion, die der Uploader-Klasse hinzugefügt wurde Alle Parameter wurden in den Funktionskommentaren beschrieben. Sie müssen beim Aufruf aufpassen

/*
    * 功能:PHP图片水印 (水印支持图片或文字)
    * 参数:
    
    *$groundImage 背景图片,即需要加水印的图片,暂只支持GIF,JPG,PNG格式;
    
    *$waterPos水印位置,有10种状态,0为随机位置;
    
    *1为顶端居左,2为顶端居中,3为顶端居右;
    *4为中部居左,5为中部居中,6为中部居右;
    *7为底端居左,8为底端居中,9为底端居右;
    
    *$waterImage图片水印,即作为水印的图片,暂只支持GIF,JPG,PNG格式;
    
    *$waterText文字水印,即把文字作为为水印,支持ASCII码,不支持中文;
    
    *$textFont文字大小,值为1、2、3、4或5,默认为5;
    
    *$textColor文字颜色,值为十六进制颜色值,默认为#FF0000(红色);
    
    * 注意:Support GD 2.0,Support FreeType、GIF Read、GIF Create、JPG 、PNG
    
    *$waterImage 和 $waterText 最好不要同时使用,选其中之一即可,优先使用 $waterImage。
    
    *当$waterImage有效时,参数$waterString、$stringFont、$stringColor均不生效。
    
    *加水印后的图片的文件名和 $groundImage 一样。
    */
    private function imageWaterMark($groundImage,$waterPos=0,$waterImage="",$waterText="",$textFont=5,$textColor="#FF0000")
    {
        $isWaterImage = FALSE;
        $formatMsg = "暂不支持该文件格式,请用图片处理软件将图片转换为GIF、JPG、PNG格式。";
        //读取水印文件
        if(!empty($waterImage) && file_exists($waterImage))
        {
            $isWaterImage = TRUE;
            $water_info = getimagesize($waterImage);
            $water_w = $water_info[0];//取得水印图片的宽
            $water_h = $water_info[1];//取得水印图片的高 
            switch($water_info[2])//取得水印图片的格式
            {
                case 1:$water_im = imagecreatefromgif($waterImage);break;
                case 2:$water_im = imagecreatefromjpeg($waterImage);break;
                case 3:$water_im = imagecreatefrompng($waterImage);break;
                default:die($formatMsg);
            }
        }
        //读取背景图片
        if(!empty($groundImage) && file_exists($groundImage))
        {
            $ground_info = getimagesize($groundImage);
            $ground_w = $ground_info[0];//取得背景图片的宽
            $ground_h = $ground_info[1];//取得背景图片的高
            switch($ground_info[2])//取得背景图片的格式
            {
                case 1:$ground_im = imagecreatefromgif($groundImage);break;
                case 2:$ground_im = imagecreatefromjpeg($groundImage);break;
                case 3:$ground_im = imagecreatefrompng($groundImage);break;
                default:die($formatMsg);
            }
        }
        else
        {
            die("需要加水印的图片不存在!");
        }
        //水印位置
        if($isWaterImage)//图片水印
        {
            $w = $water_w;
            $h = $water_h;
            $label = "图片的";
        }
        else//文字水印
        {
            $temp = imagettfbbox(ceil($textFont*5),0,"./cour.ttf",$waterText);//取得使用 TrueType 字体的文本的范围
            $w = $temp[2] - $temp[6];
            $h = $temp[3] - $temp[7];
            unset($temp);
            $label = "文字区域";
        }
        if( ($ground_wOkay, das ist einfach zu verwenden. Es ist einfach, Bilder hochzuladen und Wasserzeichen hinzuzufügen. <p></p>Bitte beachten Sie: Für die Wasserzeichenfunktion ist das GD-Bibliotheksmodul erforderlich. Bitte prüfen Sie, ob PHP das GD-Bibliotheksmodul installiert hat. <p><a href="https://www.php.cn/course/list/29/type/2.html" target="_blank">Empfohlenes Lernen: „</a>PHP-Video-Tutorial</p>“🎜

Das obige ist der detaillierte Inhalt vonLassen Sie uns darüber sprechen, wie Sie mit ueditor Bilder hochladen und Wasserzeichen hinzufügen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:juejin.cn. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen