Heim >Backend-Entwicklung >PHP-Tutorial >Ausführliche Erklärung der Lösung für die Verzerrung und Unschärfe von DedeCMS-Miniaturansichten

Ausführliche Erklärung der Lösung für die Verzerrung und Unschärfe von DedeCMS-Miniaturansichten

黄舟
黄舟Original
2017-04-01 09:41:161534Durchsuche

Dieser Artikel stellt hauptsächlich die perfekte Lösung für DedeCMS vorThumbnailVerzerrungsunschärfe, da nur Dede generiert standardmäßig Miniaturansichten in einer Größe, die den Anforderungen der meisten Websites nicht gerecht werden. Dieser Artikel bietet eine ultimative und perfekte Lösung. Freunde in Not können darauf verweisen.

Da dede standardmäßig nur Miniaturansichten in verschiedenen Größen generiert sind auf verschiedenen Seiten einer Website oft inkonsistent in Größe und Proportionen, was zu unklaren und verzerrten Miniaturansichten führt. Die unten bereitgestellte Methode löst dieses Problem perfekt: www.php.cn/xiazai/ code/dedecms

Verwendung:

1. Um klare Miniaturansichten zu erhalten, müssen sie groß genug sein

Bild

und es genau zuschneiden. Die folgende Methode besteht darin, es basierend auf dem Bild zuzuschneiden auf dem Miniaturbild (da einige Websites des Originalbilds Wasserzeichen aufweisen), müssen Sie daher sicherstellen, dass das Original-Miniaturbild groß genug ist. Daher müssen Sie einige Einstellungen vornehmen: System – Anhangeinstellungen, legen Sie die Standardbreite und -höhe der Miniaturansichten fest größer oder gleich der maximalen Größe aller aufgerufenen Miniaturansichten auf Ihrer gesamten Website sein. Bitte schneiden Sie es auch auf eine Größe zu, die für das manuelle Zuschneiden ausreicht (kein manuelles Zuschneiden erforderlich) 2. Öffnen Sie

include

/extend.func.php (Hinweis: Diese Datei ist für die sekundäre Entwicklung vorbereitet und wird für die Erweiterung funktionaler Methoden verwendet)Fügen Sie den folgenden Code vor dem letzten ?> hinzu.

Der Code lautet wie folgt:

Aufrufmethode:
function thumb($imgurl, $
width
, $
height
, $bg = true)
 {
 global $cfg_
main
site,$cfg_multi_site;
 $thumb = eregi("http://",$imgurl)?
str_replace
($cfg_mainsite,'',$imgurl):$imgurl;
 
list
($thumbname,$extname) = 
explode
('.',$thumb);
 $
new
thumb = $thumbname.'_'.$width.'_'.$height.'.'.$extname;
if
(!$thumbname || !$extname || !
file_exists
(DEDEROOT.$thumb)) 
return
 $imgurl;
 if(!file_exists(DEDEROOT.$newthumb))
{
 
include_once
 DEDEINC.'/image.func.php';
 if($bg==true)
 {
 ImageResizeNew(DEDEROOT.$thumb, $width, $height, DEDEROOT.$newthumb);
 }
 
else
 {
 ImageResize(DEDEROOT.$thumb, $width, $height, DEDEROOT.$newthumb);
 }
 }
 return $cfg_multi_site=='Y'?$cfg_mainsite.$newthumb:$newthumb;
 }

Tag:

Parameterbeschreibung:
 [field:picname function='thumb(@me,$width,$height,$bg)'/]

$width: Miniaturansicht Breite (

Ganzzahl

)$height: Miniaturbildhöhe (Ganzzahl)$bg: ob mit Leerzeichen gefüllt werden soll, standardmäßig automatisch gefüllt, Hintergrundfüllfarbe ist in den Systemzubehöreinstellungen (wahr/falsch)

Beispiel:

Ein Miniaturbild mit einer Länge und Breite von 100 Pixeln aufrufen:

Originalproportionen beibehalten und nicht automatisch füllen (nicht empfohlen):
[field:picname function='thumb(@me,100,100)'/]

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung der Lösung für die Verzerrung und Unschärfe von DedeCMS-Miniaturansichten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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