Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mari kita bincangkan tentang cara menggunakan ueditor untuk memuat naik gambar dan menambah tera air

Mari kita bincangkan tentang cara menggunakan ueditor untuk memuat naik gambar dan menambah tera air

青灯夜游
青灯夜游ke hadapan
2022-08-31 10:35:052995semak imbas

Bagaimana untuk memuat naik gambar dengan ueditor dan menambah tera air? Artikel berikut akan memperkenalkan kepada anda cara menggunakan ueditor untuk memuat naik gambar dan menambah tera air saya harap ia akan membantu anda!

Mari kita bincangkan tentang cara menggunakan ueditor untuk memuat naik gambar dan menambah tera air

Apabila blog memuat naik gambar, saya berharap untuk meletakkan tanda air pautan blog saya dan CSDN semua ini saya perlu belajar.

Muat naik gambar biasa tidak mengapa apabila mengedit artikel, menggunakan ueditor untuk memuat naik gambar dan menambah tera air memerlukan mengubah suai sebahagian daripada kod sumber PHP ueditor saya akan merakamnya secara ringkas di sini.

Buka Uploader.class.php pertama dalam folder php

Mari kita bincangkan tentang cara menggunakan ueditor untuk memuat naik gambar dan menambah tera air

Cari fungsi peribadi upFile(), yang merupakan kaedah pemprosesan utama untuk memuat naik fail,

Cari 122 baris: $this->stateInfo = $this->stateMap[0];

Tambah di bawah ini: $this->imageWaterMark($this->filePath,9,'logo.png');

imageWaterMark ialah fungsi tersuai,

akan disebut di bawah , $ this->filePath Ini ialah laluan untuk memuat naik imej, 9 mewakili lokasi tera air, di sudut kanan bawah, logo.png ialah imej tera air yang anda ingin tambah, ini berada dalam direktori yang sama /php/, jika anda mahu Sila gunakan laluan relatif apabila meletakkannya di laluan lain.

Mari kita bincangkan tentang cara menggunakan ueditor untuk memuat naik gambar dan menambah tera air

Berikut ialah fungsi tersuai, ditambahkan pada kelas Pemuat naik Semua parameter telah diterangkan dalam ulasan fungsi Anda perlu memberi perhatian apabila memanggil

/*
    * 功能: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_w<p> Okay, ini mudah digunakan. Sangat mudah untuk memuat naik gambar dan menambah tera air. </p><p>Sila ambil perhatian: Fungsi tera air memerlukan modul perpustakaan GD Sila semak sama ada PHP telah memasang modul perpustakaan GD. </p><p>Pembelajaran yang disyorkan: "<a href="https://www.php.cn/course/list/29/type/2.html" target="_blank">Tutorial Video PHP</a>"</p>

Atas ialah kandungan terperinci Mari kita bincangkan tentang cara menggunakan ueditor untuk memuat naik gambar dan menambah tera air. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:juejin.cn. Jika ada pelanggaran, sila hubungi admin@php.cn Padam