国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Heim Backend-Entwicklung PHP-Tutorial Dynamische Bildverarbeitung – PHP (34)

Dynamische Bildverarbeitung – PHP (34)

Aug 08, 2016 am 09:23 AM
image resource string

1 Verwendung der GD-Bibliothek in PHP

PHP ist nicht nur auf die Generierung von HTML-Ausgaben beschr?nkt, sondern kann auch Bilddateien in verschiedenen Formaten erstellen und bearbeiten. PHP bietet einige integrierte Bildinformationsfunktionen. Sie k?nnen die GD-Funktionsbibliothek auch verwenden, um neue Bilder zu erstellen oder vorhandene Bilder zu verarbeiten. Derzeit unterstützt die GD2-Bibliothek die Formate JPEG, PNG und WBMP. Das GIF-Format wird jedoch nicht mehr unterstützt.

? JPEG ist der Name eines Komprimierungsstandards, der üblicherweise zum Speichern von Fotos oder Bildern mit satten Farben und Farbabstufungen verwendet wird. Dieses Format verwendet verlustbehaftete Komprimierung.

? PNG ist ein tragbares Webbild, das einen verlustfreien Komprimierungsstandard für Bilder verwendet.

? WBMP ist ein Dateiformat, das speziell für drahtlose Kommunikationsger?te entwickelt wurde. Aber es wurde nicht weit verbreitet verwendet.

2 Schritte zur Bildgenerierung

Das Erstellen eines Bildes in PHP sollte die 4 unten gezeigten Schritte abschlie?en:
1. Erstellen Sie ein Hintergrundbild (auch Leinwand genannt). Alle nachfolgenden Vorg?nge basieren auf diesem Hintergrundbild.
2. Zeichnen Sie einen Bildumriss oder geben Sie Text auf den Hintergrund ein.
3. Ausgabe der endgültigen Grafik
4. Ressourcen freigeben

<span><?<span>php
</span><span>//</span><span> 創(chuàng)建背景圖像</span>$height = <span>200</span><span>;
$width </span>= <span>200</span><span>;
$im </span>= ImageCreateTrueColor($width, $height); <span>//</span><span>建立空白背景</span>$white = ImageColorAllocate ($im, <span>255</span>, <span>255</span>, <span>255</span>);<span>//</span><span>設(shè)置繪圖顏色</span>$blue = ImageColorAllocate ($im, <span>0</span>, <span>0</span>, <span>64</span><span>);
imageFill($im, </span><span>0</span>, <span>0</span>, $blue);<span>//</span><span>繪制背景</span>imageLine($im, <span>0</span>, <span>0</span>, $width, $height, $white); <span>//</span><span>畫(huà)線</span>imageString($im, <span>4</span>, <span>50</span>, <span>150</span>, <span>'</span><span>Sales</span><span>'</span>, $white); <span>//</span><span>添加字串</span>header(<span>'</span><span>Content-type: image/png</span><span>'</span><span>);
imagePng($im); </span><span>//</span><span>以PNG 格式將圖像輸出</span><span>imageDestroy($im);
</span>?></span>

3 Canvas-Verwaltung

imagecreate – Erstellen Sie ein neues palettenbasiertes Bild
??resource imagecreate(intx_size, inty_size)
??Diese Funktion wird verwendet, um eine leere neue Leinwand zu erstellen. Der Parameter ist die Bildgr??e und die Einheit ist Pixel. Unterstützt 256 Farben.
??imagecreatetruecolor--Erstellen Sie ein neues Echtfarbenbild
??resource imagecreatetruecolor(intx_size, inty_size)
??Erstellen eine neue Truecolor-Bildleinwand, erfordert GD 2.0.1 oder h?her, kann nicht mit dem GIF-Dateiformat verwendet werden.
??imagedestroy – Ein Bild zerst?ren
??boolimagedestroy( Ressourcenbild )
??imagedestroy() Release und Image zugeh?riges Ged?chtnis.

Andere Funktionen

Ressource imagecreatefrompng( string filename )
Erstellen Sie ein neues Bild aus einer PNG-Datei oder URL
??resource imagecreatefromjpeg( string filename )
??Neues Bild aus einer JPEG-Datei oder URL erstellen
?? resources imagecreatefromgif( string filename
??Erstellen Sie ein Bild aus einer GIF-Datei oder URL
??resource imagecreatefromwbmp( string filename )
Aus einer WBMP-Datei oder URL ein neues Bild erstellen
??intimagesx( Ressourcenbild ) --- Bildbreite ermitteln
??ntimagesy( Ressourcenbild ) --- Ermitteln Sie die Bildh?he

4 Farbe festlegen

imagecolorallocate – Weisen Sie einem Bild eine Farbe zu
?? Syntax: intimagecolorallocate( resources image, intred, intgreen, intblue)
??imagecolorallocate() gibt einen Bezeichner zurück, der die Farbe aus den angegebenen RGB-Komponenten darstellt. Der Bildparameter ist
??Der Rückgabewert der Funktion imagecreatetruecolor() sind die roten, grünen und blauen Komponenten der erforderlichen Farbe. Diese Parameter sind ganze Zahlen von 0 bis 255 oder hexadezimal 0x00 bis 0xFF . ) muss aufgerufen werden, um jede Farbe zu erstellen, die in dem durch image dargestellten Bild verwendet wird.

5 generiert das Bild

imagegif-- Gibt das Bild aus in einen Browser oder eine Datei im GIF-Format
?? Syntax: boolimagegif(resource image [, string filename] )
??imagejpeg – als Ausgabebild im JPEG-Format in Browser oder Datei
?? Syntax: boolimagejpeg(resource image [, string filename [, intquality]] )
??imagepng-- Das Bild in a ausgeben Browser oder Datei im PNG-Format
?? Syntax: boolimagepng(resource image [, string filename] )
??imagewbmp – im WBMP-Format Ausgabebild an den Browser oder Datei
?? Syntax: boolimagewbmp(resource image [, string filename [, intforeground]] )

6 Draw Image

imagefill – Bereichsfüllung
?? Syntax: boolimagefill(resourceimage,intx,inty, intcolor)
??imagefill() führt Bereich aus Füllen Sie die Koordinaten x, y des Bildes mit Farbe (die obere linke Ecke des Bildes ist 0, 0) (dh Punkte mit derselben Farbe wie der x-, y-Punkt und benachbarte Punkte werden gefüllt).
??imagesetpixel – ein einzelnes Pixel zeichnen
?? Syntax: boolimagesetpixel( resources image, intx, inty, intcolor )
??imagesetpixel() Verwenden Sie Farbe, um einen Punkt im Bild an den x- und y-Koordinaten zu zeichnen (die obere linke Ecke des Bildes ist 0, 0).
??imageline – Ein Liniensegment zeichnen
?? Syntax: boolimageline( resources image, intx1, inty1, intx2, inty2, intcolor )
??imageline() verwendet Farbe, um im Bild ein Liniensegment von den Koordinaten x1, y1 bis x2, y2 zu zeichnen (die obere linke Ecke des Bildes ist 0, 0).

imagerectangle – ein Rechteck zeichnen

??Syntax: boolimagerectangle(resource image, intx1, inty1, intx2, inty2, intcol)
??imagerectangle() Zeichne ein Rechteck im Bildbild mit Col-Farbe, Die Koordinaten seiner oberen linken Ecke sind x1, y1 und die Koordinaten seiner unteren rechten Ecke sind x2, y2. Die Koordinaten der oberen linken Ecke des Bildes sind 0, 0.
??imagefilledrectangle – Zeichne ein Rechteck und fülle es
?? Syntax: boolimagefilledrectangle( resources image, intx1, inty1, intx2, inty2, intcolor )
??imagefilledrectangle() zeichnet ein mit Farbe gefülltes Rechteck. Die Koordinaten der oberen linken Ecke sind x1, y1 und die Koordinaten der unteren rechten Ecke sind x2, y2 ist die obere linke Ecke des Bildes.

imagepolygon – Zeichne ein Polygon
?? , intcolor)
??imagepolygon() Erstellt ein Polygon in einem Bild. Punkte ist ein PHP-Array, das die Koordinaten jedes Scheitelpunkts des Polygons enth?lt, d. h. Punkte[0] = x0, Punkte[1] = y0, Punkte[2] = x1, Punkte[3] = y1 usw . num_points ist die Gesamtzahl der Scheitelpunkte.
??imagefilledpolygon – Zeichne ein Polygon und fülle es
?? Syntax: boolimagefilledpolygon( Ressourcenbild, Array-Punkte, intnum_points, intcolor)
??imagefilledpolygon() Zeichnet ein gefülltes Polygon im Bild. Der Punkteparameter ist ein Array, das die x- und y-Koordinaten jedes Scheitelpunkts des Polygons der Reihe nach enth?lt. Der Parameter ?num_points“ ist die Gesamtzahl der Scheitelpunkte und muss gr??er als 3 sein.

imageellipse – Eine Ellipse zeichnen
?? Syntax: boolimageellipse( resources image, intcx, intcy, intw, inth, intcolor )
??imageellipse() Zeichnen Sie eine Ellipse mit den Mittelpunkten cx, cy (die obere linke Ecke des Bildes ist 0, 0) in dem durch image dargestellten Bild. w und h geben die Breite bzw. H?he der Ellipse an, und die Farbe der Ellipse wird durch Farbe angegeben.
??imagefilledellipse – eine Ellipse zeichnen und ausfüllen
??Syntax: boolimagefilledellipse( resources image, intcx, intcy, intw, inth, intcolor )
??imagefilledellipse() Zeichnen Sie eine Ellipse mit der Mitte auf cx, cy (die obere linke Ecke des Bildes ist 0, 0) in dem durch image dargestellten Bild. w und h geben die Breite bzw. H?he der Ellipse an. Die Ellipse ist mit Farbe gefüllt. Gibt TRUE zurück, wenn erfolgreich, FALSE, wenn fehlgeschlagen.

imagearc – elliptischen Bogen zeichnen
??boolimagearc( resources image, intcx, intcy, intw, inth, ints, inte, intcolor )
??imagearc() Zeichnen Sie einen elliptischen Bogen in das durch image dargestellte Bild mit cx, cy (die obere linke Ecke des Bildes ist 0, 0) als Mittelpunkt. w und h geben die Breite bzw. H?he der Ellipse an, und die Start- und Endpunkte werden in Winkeln mit den Parametern s und e angegeben. 0° liegt bei drei Uhr und wird im Uhrzeigersinn gezeichnet.
??imagefilledarc – Einen elliptischen Bogen zeichnen und ausfüllen
??boolimagefilledarc( resources image, intcx, intcy, intw, inth, ints, inte, intcolor , intstyle )
??imagefilledarc() Zeichnen Sie einen elliptischen Bogen mit cx, cy (die obere linke Ecke des Bildes ist 0, 0) in dem durch image dargestellten Bild. Gibt TRUE zurück, wenn erfolgreich, FALSE, wenn fehlgeschlagen. w und h geben die Breite bzw. H?he der Ellipse an, und die Parameter s und e geben die Start- und Endpunkte in Winkeln an. Der Stil kann das bitweise ODER (OR) der folgenden Werte sein: IMG_ARC_PIE, IMG_ARC_CHORD, IMG_ARC_NOFILL, IMG_ARC_EDGED. Unter diesen schlie?en sich IMG_ARC_PIE und IMG_ARC_CHORD gegenseitig aus; IMG_ARC_CHORD verbindet lediglich die Start- und Endpunkte mit einer geraden Linie, w?hrend IMG_ARC_PIE eine kreisf?rmige Grenze erzeugt (wenn beide verwendet werden, wird IMG_ARC_CHORD wirksam). IMG_ARC_NOFILL gibt an, dass der Bogen oder die Sehne nur einen Umriss und keine Füllung hat. IMG_ARC_EDGED gibt eine gerade Linie an, die den Start- und Endpunkt mit dem Mittelpunkt verbindet. In Verbindung mit IMG_ARC_NOFILL ist dies eine gute M?glichkeit, den Umriss des Kreisdiagramms zu zeichnen (ohne Füllung)

6 Zeichne den Bildtext ein

imagestring – zeichne eine Zeichenfolge horizontal

?? Syntax: boolimagestring( resources image, intfont, intx , inty, string s, intcol)
??imagestring() verwendet col color, um den String s in die x-, y-Koordinaten des durch image dargestellten Bildes zu zeichnen (dies ist die Koordinate des oberen). Linke Ecke der Zeichenfolge, das gesamte Bild Die obere linke Ecke ist 0,0). Wenn die Schriftart 1, 2, 3, 4 oder 5 ist, wird die integrierte Schriftart verwendet.
??imagestringup – eine Zeichenfolge vertikal zeichnen
??Syntax: boolimagestringup(resource image, intfont, intx, inty, string s, intcol)
??imagestring() verwendet col color, um die Zeichenfolge s vertikal zu den x- und y-Koordinaten des durch image dargestellten Bildes zu zeichnen (die obere linke Ecke des Bildes ist 0, 0). Wenn die Schriftart 1, 2, 3, 4 oder 5 ist, wird die integrierte Schriftart verwendet.

imagechar--水平地畫(huà)一個(gè)字符
??語(yǔ)法:boolimagechar( resource image, intfont, intx, inty, string c, intcolor )
??imagechar() 將字符串c的第一個(gè)字符畫(huà)在image指定的圖像中,其左上角位于x,y(圖像左上角為0, 0),顏色為color。如果font是1,2,3,4 或5,則使用內(nèi)置的字體(更大的數(shù)字對(duì)應(yīng)于更大的字體)。
??imagecharup--垂直地畫(huà)一個(gè)字符
??語(yǔ)法:boolimagecharup( resource image, intfont, intx, inty, string c, intcolor )
??imagecharup() 將字符c垂直地畫(huà)在image指定的圖像上,位于x,y(圖像左上角為0, 0),顏色為color。如果font為1,2,3,4 或5,則使用內(nèi)置的字體。
??imagettftext--用TrueType 字體向圖像寫(xiě)入文本
??語(yǔ)法:array imagettftext( resource image, float size, float angle, intx, inty, intcolor, string fontfile, string text )

例子:

<?<span>php
$im</span>= imagecreate(<span>150</span>,<span>150</span>); <span>//</span><span>創(chuàng)建一個(gè)150*150的畫(huà)布</span>$bg= imagecolorallocate($im, <span>255</span>, <span>255</span>, <span>255</span><span>);
</span><span>//</span><span>設(shè)置畫(huà)布的背景顏色為白色</span>$black = imagecolorallocate($im, <span>0</span>, <span>0</span>, <span>0</span>); <span>//</span><span>設(shè)置一個(gè)顏色變量為黑色</span>$<span>string</span>=<span>"</span><span>LAMPBrother</span><span>"</span>; <span>//</span><span>聲明一個(gè)用于在圖像中輸出的字符串</span>imageString($im, <span>3</span>, <span>28</span>, <span>70</span>, $<span>string</span><span>, $black);
</span><span>//</span><span>水平將字符串$string輸出到圖像中</span>imageStringUp($im, <span>3</span>, <span>59</span>, <span>115</span>, $<span>string</span><span>, $black);
</span><span>//</span><span>垂直由下而上輸出$string到圖像中</span><span>for</span>($i=<span>0</span>,$j=strlen($<span>string</span>); $i<strlen($<span>string</span>); $i++,$j--<span>){
</span><span>//</span><span>使用循環(huán)單個(gè)字符輸出到圖像中</span>imageChar($im, <span>3</span>, <span>10</span>*($i+<span>1</span>), <span>10</span>*($i+<span>2</span>), $<span>string</span><span>[$i], $black);
</span><span>//</span><span>向下傾斜輸出每個(gè)字符</span>imageCharUp($im, <span>3</span>, <span>10</span>*($i+<span>1</span>), <span>10</span>*($j+<span>2</span>), $<span>string</span>[$i], $black); <span>//</span><span>向上傾斜輸出每個(gè)字符</span><span>}
header(</span><span>'</span><span>Content-type: image/png</span><span>'</span>); <span>//</span><span>設(shè)置輸出的頭部標(biāo)識(shí)符</span>imagepng($im); <span>//</span><span>輸出PNG格式的圖片</span>?>

以上就介紹了動(dòng)態(tài)圖像處理 — php(34),包括了方面的內(nèi)容,希望對(duì)PHP教程有興趣的朋友有所幫助。

Erkl?rung dieser Website
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

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

PHP-Tutorial
1502
276
Konvertieren Sie grundlegende Datentypen mit der Java-Funktion String.valueOf() in Strings Konvertieren Sie grundlegende Datentypen mit der Java-Funktion String.valueOf() in Strings Jul 24, 2023 pm 07:55 PM

Konvertieren Sie grundlegende Datentypen mit der Java-Funktion String.valueOf() in Strings. Wenn wir in der Java-Entwicklung grundlegende Datentypen in Strings konvertieren müssen, ist eine g?ngige Methode die Verwendung der Funktion valueOf() der String-Klasse. Diese Funktion kann Parameter grundlegender Datentypen akzeptieren und die entsprechende Zeichenfolgendarstellung zurückgeben. In diesem Artikel untersuchen wir, wie die Funktion String.valueOf() für grundlegende Datentypkonvertierungen verwendet wird, und stellen einige Codebeispiele dafür bereit

So konvertieren Sie ein Char-Array in einen String So konvertieren Sie ein Char-Array in einen String Jun 09, 2023 am 10:04 AM

Methode zum Konvertieren eines char-Arrays in einen String: Dies kann durch Zuweisung erreicht werden. Verwenden Sie die Syntax {char a[]=" abc d\0efg ";string s=a;}, damit das char-Array dem String direkt einen Wert zuweisen und ausführen kann Der Code zum Abschlie?en der Konvertierung.

Verwenden Sie die String.replace()-Funktion von Java, um Zeichen (Strings) in einem String zu ersetzen Verwenden Sie die String.replace()-Funktion von Java, um Zeichen (Strings) in einem String zu ersetzen Jul 25, 2023 pm 05:16 PM

Ersetzen Sie Zeichen (Strings) in einem String mit der Java-Funktion String.replace(). In Java sind Strings unver?nderliche Objekte, was bedeutet, dass der Wert eines String-Objekts nach der Erstellung nicht mehr ge?ndert werden kann. Es kann jedoch vorkommen, dass Sie bestimmte Zeichen oder Zeichenfolgen in einer Zeichenfolge ersetzen müssen. Zu diesem Zeitpunkt k?nnen wir die Methode replace () in der String-Klasse von Java verwenden, um das Ersetzen von Zeichenfolgen zu implementieren. Die Methode replace() der Klasse String hat zwei Typen:

Verwenden Sie die String.length()-Funktion von Java, um die L?nge einer Zeichenfolge zu ermitteln Verwenden Sie die String.length()-Funktion von Java, um die L?nge einer Zeichenfolge zu ermitteln Jul 25, 2023 am 09:09 AM

Verwenden Sie die String.length()-Funktion von Java, um die L?nge einer Zeichenfolge zu ermitteln. In der Java-Programmierung ist die Zeichenfolge ein sehr h?ufiger Datentyp. Wir müssen h?ufig die L?nge einer Zeichenfolge ermitteln, dh die Anzahl der Zeichen in der Zeichenfolge. In Java k?nnen wir die Funktion length() der String-Klasse verwenden, um die L?nge eines Strings zu ermitteln. Hier ist ein einfacher Beispielcode: publicclassStringLengthExample{publ

So nutzen Sie Bing Image Creator kostenlos So nutzen Sie Bing Image Creator kostenlos Feb 27, 2024 am 11:04 AM

In diesem Artikel werden sieben M?glichkeiten vorgestellt, mit dem kostenlosen BingImageCreator eine qualitativ hochwertige Ausgabe zu erhalten. BingImageCreator (jetzt bekannt als ImageCreator für Microsoft Designer) ist einer der gro?artigen Online-Kunstgeneratoren für künstliche Intelligenz. Es generiert ?u?erst realistische visuelle Effekte basierend auf Benutzereingaben. Je spezifischer, klarer und kreativer Ihre Aufforderungen sind, desto besser werden die Ergebnisse sein. BingImageCreator hat erhebliche Fortschritte bei der Erstellung hochwertiger Bilder gemacht. Es verwendet jetzt den Dall-E3-Trainingsmodus und zeigt ein h?heres Ma? an Detailgenauigkeit und Realismus. Allerdings h?ngt die F?higkeit, konsistent HD-Ergebnisse zu liefern, von mehreren Faktoren ab, unter anderem von der Geschwindigkeit

So l?schen Sie Bilder von Xiaomi-Telefonen So l?schen Sie Bilder von Xiaomi-Telefonen Mar 02, 2024 pm 05:34 PM

Wie l?sche ich Bilder auf Xiaomi-Handys? Sie k?nnen Bilder auf Xiaomi-Handys l?schen, aber die meisten Benutzer wissen nicht, wie man Bilder auf Xiaomi-Handys l?scht k?nnen Sie bei uns vorbeischauen. Mal sehen! So l?schen Sie Bilder auf dem Xiaomi-Mobiltelefon 1. ?ffnen Sie zun?chst die Funktion [Album] im Xiaomi-Mobiltelefon. 2. überprüfen Sie dann die nicht ben?tigten Bilder und klicken Sie auf die Schaltfl?che [L?schen] in der unteren rechten Ecke Um den Spezialbereich aufzurufen, w?hlen Sie oben [Papierkorb] aus. 4. Klicken Sie dann direkt auf [Papierkorb leeren], wie in der Abbildung unten gezeigt. 5. Klicken Sie abschlie?end direkt auf [Permanent l?schen].

Verwenden Sie die String.startsWith()-Funktion von Java, um zu bestimmen, ob eine Zeichenfolge mit einem angegebenen Pr?fix beginnt Verwenden Sie die String.startsWith()-Funktion von Java, um zu bestimmen, ob eine Zeichenfolge mit einem angegebenen Pr?fix beginnt Jul 25, 2023 pm 02:27 PM

Verwenden Sie die String.startsWith()-Funktion von Java, um zu bestimmen, ob eine Zeichenfolge mit einem bestimmten Pr?fix beginnt. In der Java-Programmierung müssen wir h?ufig Zeichenfolgen verarbeiten und bestimmen. Eine h?ufige Operation besteht darin, zu bestimmen, ob eine Zeichenfolge mit einem angegebenen Pr?fix beginnt. Java stellt die Funktion ?startsWith()“ der String-Klasse bereit, mit der diese Funktion problemlos implementiert werden kann. Die Funktion ?startsWith()“ von String Die String-Klasse ist die am h?ufigsten verwendete Klasse in Java

2w W?rter detaillierte Erkl?rung String, yyds 2w W?rter detaillierte Erkl?rung String, yyds Aug 24, 2023 pm 03:56 PM

Hallo zusammen, heute werde ich die Grundkenntnisse von Java: String mit Ihnen teilen. Unn?tig zu erw?hnen, wie wichtig die String-Klasse ist. Man kann sagen, dass sie die am h?ufigsten verwendete Klasse in unserer Back-End-Entwicklung ist, daher ist es notwendig, darüber zu sprechen.

See all articles