백엔드 개발 PHP 튜토리얼 PHP 图片处理种

PHP 图片处理种

Jun 13, 2016 am 11:01 AM
gt img mask src this

PHP 图片处理类

<?php /** *   images.php  图片处理类 */class ThumbHandler{    var $dst_img;// 目标文件    var $h_src; // 图片资源句柄    var $h_dst;// 新图句柄    var $h_mask;// 水印句柄    var $img_create_quality = 100;// 图片生成质量    var $img_display_quality = 80;// 图片显示质量,默认为75    var $img_scale = 0;// 图片缩放比例    var $src_w = 0;// 原图宽度    var $src_h = 0;// 原图高度    var $dst_w = 0;// 新图总宽度    var $dst_h = 0;// 新图总高度    var $fill_w;// 填充图形宽    var $fill_h;// 填充图形高    var $copy_w;// 拷贝图形宽    var $copy_h;// 拷贝图形高    var $src_x = 0;// 原图绘制起始横坐标    var $src_y = 0;// 原图绘制起始纵坐标    var $start_x;// 新图绘制起始横坐标    var $start_y;// 新图绘制起始纵坐标    var $mask_word;// 水印文字    var $mask_img;// 水印图片    var $mask_pos_x = 0;// 水印横坐标    var $mask_pos_y = 0;// 水印纵坐标    var $mask_offset_x = 5;// 水印横向偏移    var $mask_offset_y = 5;// 水印纵向偏移    var $font_w;// 水印字体宽    var $font_h;// 水印字体高    var $mask_w;// 水印宽    var $mask_h;// 水印高    var $mask_font_color = "#ffffff";// 水印文字颜色    var $mask_font = 2;// 水印字体    var $font_size;// 尺寸    var $mask_position = 0;// 水印位置    var $mask_img_pct = 50;// 图片合并程度,值越大,合并程序越低    var $mask_txt_pct = 50;// 文字合并程度,值越小,合并程序越低    var $img_border_size = 0;// 图片边框尺寸    var $img_border_color;// 图片边框颜色    var $_flip_x=0;// 水平翻转次数    var $_flip_y=0;// 垂直翻转次数    var $cut_type=0;// 剪切类型    var $img_type;// 文件类型// 文件类型定义,并指出了输出图片的函数    var $all_type = array(       				 "jpg"  => array("output"=>"imagejpeg"),       				 "gif"  => array("output"=>"imagegif"),       				 "png"  => array("output"=>"imagepng"),       				 "wbmp" => array("output"=>"image2wbmp"),       				 "jpeg" => array("output"=>"imagejpeg"));    function ThumbHandler()    {        $this->mask_font_color = "#ffffff";        $this->font = 2;        $this->font_size = 12;    }    function getImgWidth($src)    {        return imagesx($src);    }    function getImgHeight($src)    {        return imagesy($src);    }    /**     *  设置图片生成路径     */    function setSrcImg($src_img, $img_type=null)    {        if(!file_exists($src_img))        {            die("图片不存在");        }        if(!empty($img_type))        {            $this->img_type = $img_type;        }        else        {            $this->img_type = $this->_getImgType($src_img);        }        $this->_checkValid($this->img_type);   // file_get_contents函数要求php版本>4.3.0        $src = '';        if(function_exists("file_get_contents"))        {            $src = file_get_contents($src_img);        }        else        {            $handle = fopen ($src_img, "r");            while (!feof ($handle))            {                $src .= fgets($fd, 4096);            }            fclose ($handle);        }        if(empty($src))        {            die("图片源为空");        }        $this->h_src = @ImageCreateFromString($src);        $this->src_w = $this->getImgWidth($this->h_src);        $this->src_h = $this->getImgHeight($this->h_src);    }        function setDstImg($dst_img)    {        $arr  = explode('/',$dst_img);        $last = array_pop($arr);        $path = implode('/',$arr);        $this->_mkdirs($path);        $this->dst_img = $dst_img;    }        /**     * 设置图片显路径     */    function setImgDisplayQuality($n)    {        $this->img_display_quality = (int)$n;    }        function setImgCreateQuality($n)    {        $this->img_create_quality = (int)$n;    }     function setMaskWord($word)    {        $this->mask_word .= $word;    }    function setMaskFontColor($color="#ffffff")    {        $this->mask_font_color = $color;    }     /**     *  水印文件     */    function setMaskFont($font=2)    {        if(!is_numeric($font) && !file_exists($font))        {            die("字体文件不存在");        }        $this->font = $font;    }        /**     * 字体大写     */    function setMaskFontSize($size = "12")    {        $this->font_size = $size;    }     //水印    function setMaskImg($img)    {        $this->mask_img = $img;    }           function setMaskOffsetX($x)    {        $this->mask_offset_x = (int)$x;    }       function setMaskOffsetY($y)    {        $this->mask_offset_y = (int)$y;    }    function setMaskPosition($position=0)    {        $this->mask_position = (int)$position;    }        function setMaskImgPct($n)    {        $this->mask_img_pct = (int)$n;    }       function setMaskTxtPct($n)    {        $this->mask_txt_pct = (int)$n;    }       function setDstImgBorder($size=1, $color="#000000")    {        $this->img_border_size  = (int)$size;        $this->img_border_color = $color;    }    function flipH()    {        $this->_flip_x;    }    function flipV()    {        $this->_flip_y;    }       function setCutType($type)    {        $this->cut_type = (int)$type;    }    function setRectangleCut($width, $height)    {        $this->fill_w = (int)$width;        $this->fill_h = (int)$height;    }      function setSrcCutPosition($x, $y)    {        $this->src_x  = (int)$x;        $this->src_y  = (int)$y;    }    function createImg($a, $b=null)    {        $num = func_num_args();        if(1 == $num)        {            $r = (int)$a;            if($r img_scale = $r;            $this->_setNewImgSize($r);        }        if(2 == $num)        {            $w = (int)$a;            $h = (int)$b;            if(0 == $w)            {                die("目标宽度不能为0");            }            if(0 == $h)            {                die("目标高度不能为0");            }            $this->_setNewImgSize($w, $h);        }        if($this->_flip_x%2!=0)        {            $this->_flipH($this->h_src);        }        if($this->_flip_y%2!=0)        {            $this->_flipV($this->h_src);        }        $this->_createMask();        $this->_output();        if(imagedestroy($this->h_src) && imagedestroy($this->h_dst))        {            Return true;        }        else        {            Return false;        }    }    /**     * 生成水印,调用了生成水印文字和水印图片两个方法     */    function _createMask()    {        if($this->mask_word)        {            // 获取字体信息            $this->_setFontInfo();            if($this->_isFull())            {                die("水印文字过大");            }            else            {                $this->h_dst = imagecreatetruecolor($this->dst_w, $this->dst_h);                $white = ImageColorAllocate($this->h_dst,255,255,255);                imagefilledrectangle($this->h_dst,0,0,$this->dst_w,$this->dst_h,$white);// 填充背景色                $this->_drawBorder();                imagecopyresampled( $this->h_dst, $this->h_src,                                    $this->start_x, $this->start_y,                                    $this->src_x, $this->src_y,                                    $this->fill_w, $this->fill_h,                                    $this->copy_w, $this->copy_h);                $this->_createMaskWord($this->h_dst);            }        }if($this->mask_img)        {            $this->_loadMaskImg();	//加载时,取得宽高            if($this->_isFull())            {                // 将水印生成在原图上再拷                $this->_createMaskImg($this->h_src);                $this->h_dst = imagecreatetruecolor($this->dst_w, $this->dst_h);                $white = ImageColorAllocate($this->h_dst,255,255,255);                imagefilledrectangle($this->h_dst,0,0,$this->dst_w,$this->dst_h,$white);// 填充背景色                $this->_drawBorder();                imagecopyresampled( $this->h_dst, $this->h_src,                                    $this->start_x, $this->start_y,                                    $this->src_x, $this->src_y,                                    $this->fill_w, $this->start_y,                                    $this->copy_w, $this->copy_h);            }            else            {                // 创建新图并拷贝                $this->h_dst = imagecreatetruecolor($this->dst_w, $this->dst_h);                $white = ImageColorAllocate($this->h_dst,255,255,255);                imagefilledrectangle($this->h_dst,0,0,$this->dst_w,$this->dst_h,$white);// 填充背景色                $this->_drawBorder();                imagecopyresampled( $this->h_dst, $this->h_src,                                    $this->start_x, $this->start_y,                                    $this->src_x, $this->src_y,                                    $this->fill_w, $this->fill_h,                                    $this->copy_w, $this->copy_h);                $this->_createMaskImg($this->h_dst);            }        }if(empty($this->mask_word) && empty($this->mask_img))        {            $this->h_dst = imagecreatetruecolor($this->dst_w, $this->dst_h);            $white = ImageColorAllocate($this->h_dst,255,255,255);            imagefilledrectangle($this->h_dst,0,0,$this->dst_w,$this->dst_h,$white);// 填充背景色            $this->_drawBorder();            imagecopyresampled( $this->h_dst, $this->h_src,$this->start_x, $this->start_y,$this->src_x, $this->src_y,$this->fill_w, $this->fill_h,$this->copy_w, $this->copy_h);        }    }    function _drawBorder()    {        if(!empty($this->img_border_size))        {            $c = $this->_parseColor($this->img_border_color);            $color = ImageColorAllocate($this->h_src,$c[0], $c[1], $c[2]);            imagefilledrectangle($this->h_dst,0,0,$this->dst_w,$this->dst_h,$color);// 填充背景色        }    }    function _createMaskWord($src)    {        $this->_countMaskPos();        $this->_checkMaskValid();        $c = $this->_parseColor($this->mask_font_color);        $color = imagecolorallocatealpha($src, $c[0], $c[1], $c[2], $this->mask_txt_pct);        if(is_numeric($this->font))        {            imagestring($src,$this->font,$this->mask_pos_x, $this->mask_pos_y,$this->mask_word,$color);        }        else        {            imagettftext($src,$this->font_size, 0,$this->mask_pos_x, $this->mask_pos_y,$color,$this->font,$this->mask_word);        }    }    function _createMaskImg($src)    {        $this->_countMaskPos();        $this->_checkMaskValid();        imagecopymerge($src,$this->h_mask,$this->mask_pos_x ,$this->mask_pos_y0, 0,$this->mask_w, $this->mask_h,$this->mask_img_pct);        imagedestroy($this->h_mask);    }    function _loadMaskImg()    {        $mask_type = $this->_getImgType($this->mask_img);        $this->_checkValid($mask_type);		// file_get_contents函数要求php版本>4.3.0        $src = '';        if(function_exists("file_get_contents"))        {            $src = file_get_contents($this->mask_img);        }        else        {            $handle = fopen ($this->mask_img, "r");            while (!feof ($handle))            {                $src .= fgets($fd, 4096);            }            fclose ($handle);        }        if(empty($this->mask_img))        {            die("水印图片为空");        }        $this->h_mask = ImageCreateFromString($src);        $this->mask_w = $this->getImgWidth($this->h_mask);        $this->mask_h = $this->getImgHeight($this->h_mask);    }    function _output()    {        $img_type  = $this->img_type;        $func_name = $this->all_type[$img_type]['output'];        if(function_exists($func_name))        {            // 判断浏览器,若是IE就不发送头            if(isset($_SERVER['HTTP_USER_AGENT']))            {                $ua = strtoupper($_SERVER['HTTP_USER_AGENT']);                if(!preg_match('/^.*MSIE.*\)$/i',$ua))                {                    header("Content-type:$img_type");                }            }            $func_name($this->h_dst, $this->dst_img, $this->img_display_quality);        }        else        {            Return false;        }    }    function _parseColor($color)    {        $arr = array();        for($ii=1; $ii<strlen hexdec return function _countmaskpos if>_isFull())        {            switch($this->mask_position)            {                case 1:                    $this->mask_pos_x = $this->mask_offset_x + $this->img_border_size;                    $this->mask_pos_y = $this->mask_offset_y + $this->img_border_sizebreak;                case 2:                    $this->mask_pos_x = $this->mask_offset_x + $this->img_border_size;                    $this->mask_pos_y = $this->src_h - $this->mask_h - $this->mask_offset_ybreak;                case 3:                    $this->mask_pos_x = $this->src_w - $this->mask_w - $this->mask_offset_x;                    $this->mask_pos_y = $this->mask_offset_y + $this->img_border_sizebreak;                case 4:                    $this->mask_pos_x = $this->src_w - $this->mask_w - $this->mask_offset_x;                    $this->mask_pos_y = $this->src_h - $this->mask_h - $this->mask_offset_ybreak;                default:// 默认将水印放到右下,偏移指定像素                    $this->mask_pos_x = $this->src_w - $this->mask_w - $this->mask_offset_x;                    $this->mask_pos_y = $this->src_h - $this->mask_h - $this->mask_offset_ybreak;            }        }        else        {            switch($this->mask_position)            {                case 1:// 左上                    $this->mask_pos_x = $this->mask_offset_x + $this->img_border_size;                    $this->mask_pos_y = $this->mask_offset_y + $this->img_border_sizebreak;                case 2:// 左下                    $this->mask_pos_x = $this->mask_offset_x + $this->img_border_size;                    $this->mask_pos_y = $this->dst_h - $this->mask_h - $this->mask_offset_y - $this->img_border_sizebreak;                case 3:// 右上                    $this->mask_pos_x = $this->dst_w - $this->mask_w - $this->mask_offset_x - $this->img_border_size;                    $this->mask_pos_y = $this->mask_offset_y + $this->img_border_sizebreak;                case 4:// 右下                    $this->mask_pos_x = $this->dst_w - $this->mask_w - $this->mask_offset_x - $this->img_border_size;                    $this->mask_pos_y = $this->dst_h - $this->mask_h - $this->mask_offset_y - $this->img_border_sizebreak;                default:// 默认将水印放到右下,偏移指定像素                    $this->mask_pos_x = $this->dst_w - $this->mask_w - $this->mask_offset_x - $this->img_border_size;                    $this->mask_pos_y = $this->dst_h - $this->mask_h - $this->mask_offset_y - $this->img_border_sizebreak;            }        }    }    function _setFontInfo()    {        if(is_numeric($this->font))        {            $this->font_w  = imagefontwidth($this->font);            $this->font_h  = imagefontheight($this->font);// 计算水印字体所占宽高            $word_length   = strlen($this->mask_word);            $this->mask_w  = $this->font_w*$word_length;            $this->mask_h  = $this->font_h;        }        else        {            $arr = imagettfbbox ($this->font_size,0, $this->font,$this->mask_word);            $this->mask_w  = abs($arr[0] - $arr[2]);            $this->mask_h  = abs($arr[7] - $arr[1]);        }    }    //新图片大小    function _setNewImgSize($img_w, $img_h=null)    {        $num = func_num_args();        if(1 == $num)        {            $this->img_scale = $img_w;// 宽度作为比例            $this->fill_w = round($this->src_w * $this->img_scale / 100) - $this->img_border_size*2;            $this->fill_h = round($this->src_h * $this->img_scale / 100) - $this->img_border_size*2;// 源文件起始坐标            $this->src_x  = 0;            $this->src_y  = 0;            $this->copy_w = $this->src_w;            $this->copy_h = $this->src_h;// 目标尺寸            $this->dst_w   = $this->fill_w + $this->img_border_size*2;            $this->dst_h   = $this->fill_h + $this->img_border_size*2;        }        if(2 == $num)        {            $fill_w   = (int)$img_w - $this->img_border_size*2;            $fill_h   = (int)$img_h - $this->img_border_size*2;            if($fill_w src_w/$fill_w;            $rate_h = $this->src_h/$fill_h;            switch($this->cut_type)            {                case 0:// 如果原图大于缩略图,产生缩小,否则不缩小                    if($rate_w fill_w = (int)$this->src_w;                        $this->fill_h = (int)$this->src_h;                    }                    else                    {                        if($rate_w >= $rate_h)                        {                            $this->fill_w = (int)$fill_w;                            $this->fill_h = round($this->src_h/$rate_w);                        }                        else                        {                            $this->fill_w = round($this->src_w/$rate_h);                            $this->fill_h = (int)$fill_h;                        }                    }                    $this->src_x  = 0;                    $this->src_y  = 0;                    $this->copy_w = $this->src_w;                    $this->copy_h = $this->src_h;// 目标尺寸                    $this->dst_w  = $this->fill_w + $this->img_border_size*2;                    $this->dst_h   = $this->fill_h + $this->img_border_size*2;                    break;// 自动裁切                case 1:// 如果图片是缩小剪切才进行操作                    if($rate_w >= 1 && $rate_h >=1)                    {                        if($this->src_w > $this->src_h)                        {                            $src_x = round($this->src_w-$this->src_h)/2;                            $this->setSrcCutPosition($src_x, 0);                            $this->setRectangleCut($fill_h, $fill_h);                            $this->copy_w = $this->src_h;                            $this->copy_h = $this->src_h;                                                    }                        elseif($this->src_w src_h)                        {                            $src_y = round($this->src_h-$this->src_w)/2;                            $this->setSrcCutPosition(0, $src_y);                            $this->setRectangleCut($fill_w, $fill_h);                            $this->copy_w = $this->src_w;                            $this->copy_h = $this->src_w;                        }                        else                        {                            $this->setSrcCutPosition(0, 0);                            $this->copy_w = $this->src_w;                            $this->copy_h = $this->src_w;                            $this->setRectangleCut($fill_w, $fill_h);                        }                    }                    else                    {                        $this->setSrcCutPosition(0, 0);                        $this->setRectangleCut($this->src_w, $this->src_h);                        $this->copy_w = $this->src_w;                        $this->copy_h = $this->src_h;                    }	// 目标尺寸                    $this->dst_w   = $this->fill_w + $this->img_border_size*2;                    $this->dst_h   = $this->fill_h + $this->img_border_size*2;                                        break;	// 手工裁切                case 2:$this->copy_w = $this->fill_w;                	$this->copy_h = $this->fill_h;		// 目标尺寸                    $this->dst_w   = $this->fill_w + $this->img_border_size*2;                    $this->dst_h   = $this->fill_h + $this->img_border_size*2;                                                       break;                default:                    break;            }        }// 目标文件起始坐标        $this->start_x = $this->img_border_size;        $this->start_y = $this->img_border_size;    }     /**     * 检查水印图是否大于生成后的图片宽高     */    function _isFull()    {        Return (   $this->mask_w + $this->mask_offset_x > $this->fill_w                || $this->mask_h + $this->mask_offset_y > $this->fill_h)                   ?true:false;    }    function _checkMaskValid()    {        if(    $this->mask_w + $this->mask_offset_x > $this->src_w            || $this->mask_h + $this->mask_offset_y > $this->src_h)        {            die("水印图片尺寸大于原图,请缩小水印图");        }    }        /**     * 取得图片类型     */    function _getImgType($file_path)    {        $type_list = array("1"=>"gif","2"=>"jpg","3"=>"png","4"=>"swf","5" => "psd","6"=>"bmp","15"=>"wbmp");        if(file_exists($file_path))        {            $img_info = @getimagesize ($file_path);            if(isset($type_list[$img_info[2]]))            {                Return $type_list[$img_info[2]];            }        }        else        {            die("文件不存在,不能取得文件类型!");        }    }    /**     * 检查图片类型是否合法,调用了array_key_exists函数,此函数要求     * php版本大于4.1.0     *     * @param     */    function _checkValid($img_type)    {        if(!array_key_exists($img_type, $this->all_type))        {            Return false;        }    }        /**     * 按指定路径生成目录     *     * @param     */    function _mkdirs($path)    {        $adir = explode('/',$path);        $dirlist = '';        $rootdir = array_shift($adir);        if(($rootdir!='.'||$rootdir!='..')&&!file_exists($rootdir))        {            @mkdir($rootdir);        }        foreach($adir as $key=>$val)        {            if($val!='.'&&$val!='..')            {                $dirlist .= "/".$val;                $dirpath = $rootdir.$dirlist;                if(!file_exists($dirpath))                {                    @mkdir($dirpath);                    chmod($dirpath,0777);                }            }        }    }    function _flipV($src)    {        $src_x = $this->getImgWidth($src);        $src_y = $this->getImgHeight($src);        $new_im = imagecreatetruecolor($src_x, $src_y);        for ($y = 0; $y h_src = $new_im;    }    function _flipH($src)    {        $src_x = $this->getImgWidth($src);        $src_y = $this->getImgHeight($src);        $new_im = imagecreatetruecolor($src_x, $src_y);        for ($x = 0; $x h_src = $new_im;    }}</strlen>
로그인 후 복사

?

??? 测试代码:

?

??? test.php

?

<?phprequire_once ('images.php');$t = new ThumbHandler();$t->setSrcImg("test.gif");$t->setDstImg("new_test.jpg");$t->setMaskPosition(1);$t->setMaskImgPct(80);$t->setDstImgBorder(4,"#dddddd");// 指定缩放比例$t->createImg(300,200);
로그인 후 복사
?

?

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

img 파일을 여는 방법 img 파일을 여는 방법 Sep 18, 2023 am 09:40 AM

img 파일을 여는 방법에는 가상 광학 드라이브 소프트웨어 사용, 압축 소프트웨어 사용 및 특수 도구 사용이 포함됩니다. 자세한 소개: 1. 가상 광학 드라이브 소프트웨어를 사용하여 가상 광학 드라이브 소프트웨어를 열고, 다운로드하고, img 파일을 마우스 오른쪽 버튼으로 클릭하고, "다음 프로그램으로 열기" 또는 "관련 프로그램"을 선택하고, 팝업에서 설치된 가상 광학 드라이브 소프트웨어를 선택합니다. -up 대화 상자, 가상 광학 드라이브 소프트웨어는 img 파일을 자동으로 로드하고 가상 광학 드라이브에서 디스크 이미지로 사용합니다. 가상 광학 드라이브에서 디스크 아이콘을 두 번 클릭하면 img 파일을 열고 해당 콘텐츠에 액세스할 수 있습니다. 등.

화웨이 GT3 Pro와 GT4의 차이점은 무엇입니까? 화웨이 GT3 Pro와 GT4의 차이점은 무엇입니까? Dec 29, 2023 pm 02:27 PM

많은 사용자들이 스마트 시계를 선택할 때 Huawei 브랜드를 선택하게 됩니다. 그 중 Huawei GT3pro와 GT4가 가장 인기 있는 선택입니다. 두 제품의 차이점을 궁금해하는 사용자가 많습니다. Huawei GT3pro와 GT4의 차이점은 무엇입니까? 1. 외관 GT4: 46mm와 41mm, 재질은 유리 거울 + 스테인레스 스틸 본체 + 고해상도 섬유 후면 쉘입니다. GT3pro: 46.6mm 및 42.9mm, 재질은 사파이어 유리 + 티타늄 본체/세라믹 본체 + 세라믹 백 쉘입니다. 2. 건강한 GT4: 최신 Huawei Truseen5.5+ 알고리즘을 사용하면 결과가 더 정확해집니다. GT3pro: ECG 심전도, 혈관 및 안전성 추가

src와 href는 무엇을 의미합니까? src와 href는 무엇을 의미합니까? Aug 16, 2023 pm 05:00 PM

src와 href는 각각 1. src는 source의 약자로 외부 리소스의 경로를 지정하는 데 사용되며 일반적으로 사진, 오디오, 비디오 등 외부 파일을 삽입하는 데 사용됩니다. src 속성은 일반적으로 img, script, iframe 및 기타 태그에 사용됩니다. 2. href는 하이퍼링크의 대상 리소스 경로를 지정하는 데 사용되는 하이퍼텍스트 참조입니다. 일반적으로 외부 문서나 다른 페이지에 연결하는 데 사용됩니다. href 속성은 일반적으로 a 및 link와 같은 태그에 사용됩니다.

img 파일을 여는 방법 img 파일을 여는 방법 Jul 06, 2023 pm 04:17 PM

img 파일을 여는 방법: 1. img 파일 경로를 확인합니다. 2. img 파일 오프너를 사용합니다. 3. 열기 방법을 선택합니다. 4. 사진을 봅니다. img 파일은 일반적으로 사진 데이터를 저장하는 데 사용되는 일반적으로 사용되는 이미지 파일 형식입니다.

수정: Windows 11에서 캡처 도구가 작동하지 않음 수정: Windows 11에서 캡처 도구가 작동하지 않음 Aug 24, 2023 am 09:48 AM

Windows 11에서 캡처 도구가 작동하지 않는 이유 문제의 근본 원인을 이해하면 올바른 솔루션을 찾는 데 도움이 될 수 있습니다. 캡처 도구가 제대로 작동하지 않는 주요 이유는 다음과 같습니다. 초점 도우미가 켜져 있습니다. 이렇게 하면 캡처 도구가 열리지 않습니다. 손상된 응용 프로그램: 캡처 도구가 실행 시 충돌하는 경우 응용 프로그램이 손상되었을 수 있습니다. 오래된 그래픽 드라이버: 호환되지 않는 드라이버가 캡처 도구를 방해할 수 있습니다. 다른 응용 프로그램의 간섭: 실행 중인 다른 응용 프로그램이 캡처 도구와 충돌할 수 있습니다. 인증서가 만료되었습니다. 업그레이드 프로세스 중 오류로 인해 이 문제가 발생할 수 있습니다. 이 문제는 대부분의 사용자에게 적합하며 특별한 기술 지식이 필요하지 않습니다. 1. Windows 및 Microsoft Store 앱 업데이트

img의 형식은 무엇입니까? img의 형식은 무엇입니까? Mar 17, 2023 am 10:33 AM

img는 주로 플로피 디스크 이미지 파일을 생성하는 데 사용되는 파일 압축 형식입니다. 전체 플로피 디스크 또는 전체 CD의 내용을 압축하는 데 사용할 수 있으며 확장자가 ".IMG"인 파일은 이 파일 형식을 사용하여 생성됩니다. img 파일에는 "Ehfa_HeaderTag", "Ehfa_File" 및 "Ehfa_Entry"라는 3개의 기본 노드가 포함되어 있습니다.

iPhone에서 App Store 오류에 연결할 수 없는 문제를 해결하는 방법 iPhone에서 App Store 오류에 연결할 수 없는 문제를 해결하는 방법 Jul 29, 2023 am 08:22 AM

1부: 초기 문제 해결 단계 Apple 시스템 상태 확인: 복잡한 솔루션을 살펴보기 전에 기본 사항부터 시작해 보겠습니다. 문제는 귀하의 기기에 있는 것이 아닐 수도 있습니다. Apple 서버가 다운되었을 수도 있습니다. Apple의 시스템 상태 페이지를 방문하여 AppStore가 제대로 작동하는지 확인하세요. 문제가 있는 경우 Apple이 문제를 해결하기를 기다리는 것뿐입니다. 인터넷 연결 확인: "AppStore에 연결할 수 없음" 문제는 때때로 연결 불량으로 인해 발생할 수 있으므로 인터넷 연결이 안정적인지 확인하십시오. Wi-Fi와 모바일 데이터 간을 전환하거나 네트워크 설정을 재설정해 보세요(일반 > 재설정 > 네트워크 설정 재설정 > 설정). iOS 버전을 업데이트하세요.

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

See all articles