织梦园模板网专注于织梦企业模板、DeDe整站模板、织梦Html5模板等织梦模板的下载,提供DEDE织梦模板相关服务。织梦园织梦模板交流群
用户名:
密码:
注册
注册后享受折扣价

织梦dedecms调用漂亮的头条图片标题

织梦园模板 / 2019-11-08 / 收藏
织梦dedecms调用漂亮的头条图片标题?
一直喜欢浏览一些大的门户网站,查阅新闻等。从来也没有注意过这些门户网站的设计风格什么的,但是今天一位朋友询问我,能不能在网站上用个漂亮的头条图片标题呢?就像人民网那样(如下图)。
织梦dedecms调用漂亮的头条图片标题
 
 
可以有些朋友会说为什么要用图片做呢,我们直接可以用文字和css做啊!但有时有一点要提醒大家,有时我们做标题时需要要一些字体特效,可是我们知道并不是每个人的电脑都安装有这些字体的。那么织梦模板可以生成这样的标题吗?其实还是很简单的,下面是我的实现方法。 
 
一、实现方法
1)标题图片字体定义
首先上传字体文件上传到include/data/fonts/下,并命名为 STXINGKA.TTF (字体下载),这个是用于生成标题图片的字体的。当然,你也可以自己定义更漂亮的字体,但字体必须命名为STXINGKA.TTF。
 
2)标题图片函数文件
打开include/extend.func.php (注意:本文件为自定义函数接口,如果你没有这个文件,请自己创建一个),在最后面的?>的前面以上开始插入以下代码:
 
class DeDeTitle   
{   
    var $text = '暂无标题';   
    var $bg = '#F0F0F0';   
    var $color = '#30F';   
    var $width = 500;   
    var $height = 50;   
    var $size = 30;   
    var $font;   
    var $path;   
    function __construct($t)   
    {   
        if($t)   
        {   
            $this->text = $t;   
        }   
        $this->font = DEDEINC.'/data/fonts/STXINGKA.TTF';   
    }   
    function DeDeTitle($t)   
    {   
        $this->__construct($t);   
    }   
    function TextConv()   
    {   
        global $cfg_soft_lang;   
        if($cfg_soft_lang!='utf-8')   
        {   
            return gb2utf8($this->text);   
        }   
        return $this->text;   
    }   
    function C($color,$rgb)   
    {      
        if(strlen($color)==4)   
        {   
            for($i=1;$i<4;$i++)   
            {   
                $str .= str_repeat($color[$i],2);   
            }   
            $color = '#'.$str;   
        }   
        switch($rgb)   
        {   
            case 'R':    return hexdec(substr($color, 1, 2));   
            case 'B':    return hexdec(substr($color, 3, 2));   
            case 'G':    return hexdec(substr($color, 5, 2));   
        }   
    }   
    function Titlepath()   
    {   
        global $cfg_medias_dir;   
        $name = GetPinyin($this->text).'.gif';   
        $path = $cfg_medias_dir.'/title/';   
        if(!is_dir($path))   
        {   
            CreateDir($path);   
        }   
        return $path.$name;   
    }   
    function Show()   
    {   
        if(!file_exists(DEDEROOT.$this->Titlepath()))   
        {   
            $this->Make();   
        }   
        global $cfg_cmsurl;   
        return  '<img src="'.$cfg_cmsurl.$this->Titlepath().'"/>';   
    }   
    function Make()   
    {   
        $image = imagecreatetruecolor($this->width,$this->height);   
        $bg = ImageColorAllocate($image,$this->C($this->bg,'R'),$this->C($this->bg,'B'),$this->C($this->bg,'G'));   
        $color = ImageColorAllocate($image,$this->C($this->color,'R'),$this->C($this->color,'B'),$this->C($this->color,'G'));   
        ImageFilledRectangle($image,0,0,$this->width,$this->height,$bg);   
        imagettftext($image,$this->size, 0, $this->size/2, ($this->height+$this->size)/2, $color, $this->font,$this->TextConv());   
        imagegif($image,DEDEROOT.$this->Titlepath());   
        imagedestroy($image);   
    }   
}  

相关标签调用

收缩