Eine PHP-Klasse, die die Arbeit mit Bildern so einfach wie möglich macht.
Entwickelt und gepflegt von Cory LaViska.
Wenn Sie sich bei diesem Projekt wieder für PHP-Bildmanipulation interessieren, denken Sie bitte darüber nach, mich zu sponsern, um seine Entwicklung zu unterstützen.
<?php
try {
// Create a new SimpleImage object
$ image = new claviska SimpleImage ();
// Magic !
$ image
-> fromFile ( ' image.jpg ' ) // load image . jpg
-> autoOrient () // adjust orientation based on exif data
-> resize ( 320 , 200 ) // resize to 320 x200 pixels
-> flip ( ' x ' ) // flip horizontally
-> colorize ( ' DarkBlue ' ) // tint dark blue
-> border ( ' black ' , 10 ) // add a 10 pixel black border
-> overlay ( ' watermark.png ' , ' bottom right ' ) // add a watermark image
-> toFile ( ' new-image.png ' , ' image/png ' ) // convert to PNG and save a copy to new-image . png
-> toScreen (); // output to the screen
// And much more !
} catch ( Exception $ err ) {
// Handle errors
echo $ err -> getMessage ();
}
LightBlue
), als Hex-Farbe oder als RGB(A)-Array übergeben werden.Mit Composer installieren:
composer require claviska/simpleimage
Oder schließen Sie die Bibliothek manuell ein:
<?php
require ' src/claviska/SimpleImage.php ' ;
SimpleImage wird von Cory LaViska entwickelt und gepflegt. Copyright A Beautiful Site, LLC.
Wenn Sie SimpleImage gerne verwenden, insbesondere in kommerziellen Anwendungen, denken Sie bitte darüber nach, mich zu sponsern, um seine Entwicklung zu unterstützen.
Danke!
Lizenziert unter der MIT-Lizenz.
Reihenfolge der Großartigkeit:
API-Tipps:
fromFile
oder fromDataUri
zu vermeiden.$image::methodName()
oder claviskaSimpleImage::methodName()
aufgerufen werden.white
), eine Hex-Zeichenfolge (z. B. „#ffffff“) oder ein RGBA-Array sein.normalizeColor
weiterleiten, wenn Sie eine CSS-Farbe oder einen Hex-String übergeben: white|0.25
fromDataUri($uri)
Lädt ein Bild von einem Daten-URI.
$uri
* (Zeichenfolge) – Ein Daten-URI.Gibt ein SimpleImage-Objekt zurück.
fromFile($file)
Lädt ein Bild aus einer Datei.
$file
* (String) – Die zu ladende Bilddatei.Gibt ein SimpleImage-Objekt zurück.
fromNew($width, $height, $color)
Erstellt ein neues Bild.
$width
* (int) – Die Breite des Bildes.$height
* (int) – Die Höhe des Bildes.$color
(string|array) – Optionale Füllfarbe für das neue Bild (Standard: „transparent“).Gibt ein SimpleImage-Objekt zurück.
fromString($string)
Erstellt ein neues Bild aus einer Zeichenfolge.
$string
* (string) – Die Rohbilddaten als String. Beispiel: $string = file_get_contents('image.jpg');
Gibt ein SimpleImage-Objekt zurück.
toDataUri($mimeType, $options)
Erzeugt einen Daten-URI.
$mimeType
(string) – Das Bildformat, das als MIME-Typ ausgegeben werden soll (standardmäßig der ursprüngliche MIME-Typ).$options
(array|int) – Array von Optionen oder Bildqualität als Prozentsatz (Standard 100).Gibt eine Zeichenfolge zurück, die einen Daten-URI enthält.
toDownload($filename, $mimeType, $options)
Erzwingt das Herunterladen des Bildes auf den Clientcomputer. Muss aufgerufen werden, bevor eine Ausgabe an den Bildschirm gesendet wird.
$filename
* (string) – Der Dateiname (ohne Pfad), der an den Client gesendet werden soll (z. B. „image.jpeg“).$mimeType
(string) – Das Bildformat, das als MIME-Typ ausgegeben werden soll (standardmäßig der ursprüngliche MIME-Typ).$options
(array|int) – Array von Optionen oder Bildqualität als Prozentsatz (Standard 100).Gibt ein SimpleImage-Objekt zurück.
toFile($file, $mimeType, $options)
Schreibt das Bild in eine Datei.
$mimeType
(string) – Das Bildformat, das als MIME-Typ ausgegeben werden soll (standardmäßig der ursprüngliche MIME-Typ).$options
(array|int) – Array von Optionen oder Bildqualität als Prozentsatz (Standard 100).Gibt ein SimpleImage-Objekt zurück.
toScreen($mimeType, $options)
Gibt das Bild auf dem Bildschirm aus. Muss aufgerufen werden, bevor eine Ausgabe an den Bildschirm gesendet wird.
$mimeType
(string) – Das Bildformat, das als MIME-Typ ausgegeben werden soll (standardmäßig der ursprüngliche MIME-Typ).$options
(array|int) – Array von Optionen oder Bildqualität als Prozentsatz (Standard 100).Gibt ein SimpleImage-Objekt zurück.
toString($mimeType, $options)
Erzeugt eine Bildzeichenfolge.
$mimeType
(string) – Das Bildformat, das als MIME-Typ ausgegeben werden soll (standardmäßig der ursprüngliche MIME-Typ).$options
(array|int) – Array von Optionen oder Bildqualität als Prozentsatz (Standard 100).Gibt ein SimpleImage-Objekt zurück.
generate($mimeType, $options)
Erzeugt ein Bild.
$mimeType
(string) – Das Bildformat, das als MIME-Typ ausgegeben werden soll (standardmäßig der ursprüngliche MIME-Typ).$options
(array|int) – Array von Optionen oder Bildqualität als Prozentsatz (Standard 100).Gibt ein Array zurück: [mimeType, data]
Anstatt die Qualität als Ganzzahl als letzten Funktionsparameter anzugeben, können Sie auch mithilfe eines assoziativen Arrays verschiedene Optionen abhängig vom angestrebten Mime-Typ festlegen.
$ image -> toFile ( $ file , ' image/avif ' , [
// JPG , WEBP , AVIF ( default 100 )
' quality ' => 100 ,
// AVIF ( default - 1 which is 6 )
// range of slow and small file 0 to 10 fast but big file
' speed ' => - 1 ,
]);
$ image -> toFile ( $ file , ' image/bmp ' , [
// BMP : boolean ( default true )
' compression ' => true ,
// BMP , JPG ( default null , keep the same )
' interlace ' => null ,
]);
$ image -> toFile ( $ file , ' image/gif ' , [
// GIF , PNG ( default true )
' alpha ' => true ,
]);
$ image -> toFile ( $ file , ' image/jpeg ' , [
// BMP , JPG ( default null , keep the same )
' interlace ' => null ,
// JPG , WEBP , AVIF ( default 100 )
' quality ' => 100 ,
]);
$ image -> toFile ( $ file , ' image/png ' , [
// GIF , PNG ( default true )
' alpha ' => true ,
// PNG : 0 - 10 , defaults to zlib ( default 6 )
' compression ' => - 1 ,
// PNG ( default - 1 )
' filters ' => - 1 ,
// has no effect on PNG images , since the format is lossless
// ' quality' = > 100 ,
]);
$ image -> toFile ( $ file , ' image/webp ' , [
// JPG , WEBP , AVIF ( default 100 )
' quality ' => 100 ,
]);
getAspectRatio()
Ruft das aktuelle Seitenverhältnis des Bildes ab.
Gibt das Seitenverhältnis als Float zurück.
getExif()
Ruft die Exif-Daten des Bildes ab.
Gibt ein Array von Exif-Daten oder Null zurück, wenn keine Daten verfügbar sind.
getHeight()
Ruft die aktuelle Höhe des Bildes ab.
Gibt die Höhe als Ganzzahl zurück.
getMimeType()
Ruft den MIME-Typ des geladenen Bildes ab.
Gibt einen MIME-Typ-String zurück.
getOrientation()
Ruft die aktuelle Ausrichtung des Bildes ab.
Gibt eine Zeichenfolge zurück: „Querformat“, „Hochformat“ oder „Quadrat“.
getResolution()
Ruft die aktuelle Auflösung des Bildes in DPI ab.
Gibt ein Array von Ganzzahlen zurück: [0 => 96, 1 => 96]
getWidth()
Ruft die aktuelle Breite des Bildes ab.
Gibt die Breite als Ganzzahl zurück.
hasImage()
Überprüft, ob das SimpleImage-Objekt ein Bild geladen hat.
Gibt einen booleschen Wert zurück.
reset()
Zerstört die Bildressource.
Gibt ein SimpleImage-Objekt zurück.
autoOrient()
Dreht ein Bild so, dass die Ausrichtung basierend auf seinen Exif-Daten korrekt ist. Es ist sicher, diese Methode für Bilder aufzurufen, die keine Exif-Daten haben (es werden keine Änderungen vorgenommen). Gibt ein SimpleImage-Objekt zurück.
bestFit($maxWidth, $maxHeight)
Passen Sie die Größe des Bildes proportional an, sodass es in eine bestimmte Breite und Höhe passt.
$maxWidth
* (int) – Die maximale Breite, die das Bild haben kann.$maxHeight
* (int) – Die maximale Höhe, die das Bild haben kann.Gibt ein SimpleImage-Objekt zurück.
crop($x1, $y1, $x2, $y2)
Beschneiden Sie das Bild.
Gibt ein SimpleImage-Objekt zurück.
fitToHeight($height)
(VERALTET)Passen Sie die Größe des Bildes proportional auf eine bestimmte Höhe an.
Diese Methode war in Version 3.2.2 veraltet und wird in Version 4.0 entfernt. Bitte verwenden Sie stattdessen resize(null, $height)
.
$height
* (int) – Die Höhe, auf die die Bildgröße geändert werden soll.Gibt ein SimpleImage-Objekt zurück.
fitToWidth($width)
(VERALTET)Passen Sie die Größe des Bildes proportional auf eine bestimmte Breite an.
Diese Methode war in Version 3.2.2 veraltet und wird in Version 4.0 entfernt. Bitte verwenden Sie stattdessen resize($width, null)
.
$width
* (int) – Die Breite, auf die die Größe des Bildes geändert werden soll.Gibt ein SimpleImage-Objekt zurück.
flip($direction)
Spiegeln Sie das Bild horizontal oder vertikal.
$direction
* (String) – Die Richtung, die umgedreht werden soll: x|y|bothGibt ein SimpleImage-Objekt zurück.
maxColors($max, $dither)
Reduziert das Bild auf die maximale Anzahl an Farben.
$max
* (int) – Die maximale Anzahl der zu verwendenden Farben.$dither
(bool) – Ob ein Dithering-Effekt verwendet werden soll oder nicht (Standard: true).Gibt ein SimpleImage-Objekt zurück.
overlay($overlay, $anchor, $opacity, $xOffset, $yOffset)
Platzieren Sie ein Bild über dem aktuellen Bild.
$overlay
* (string|SimpleImage) – Das zu überlagernde Bild. Dies kann ein Dateiname, ein Daten-URI oder ein SimpleImage-Objekt sein.$anchor
(Zeichenfolge) – Der Ankerpunkt: „Mitte“, „oben“, „unten“, „links“, „rechts“, „oben links“, „oben rechts“, „unten links“, „unten rechts“ ( Standardeinstellung: „Mitte“)$opacity
(float) – Die Deckkraftstufe des Overlays 0-1 (Standard 1).$xOffset
(int) – Horizontaler Versatz in Pixel (Standard 0).$yOffset
(int) – Vertikaler Versatz in Pixel (Standard 0).$calculateOffsetFromEdge
(bool) – Berechnet den Offset bezogen auf die Ränder des Bildes. $xOffset und $yOffset haben im Mittelanker keine Auswirkung. (Standard: falsch).Gibt ein SimpleImage-Objekt zurück.
resize($width, $height)
Ändern Sie die Größe eines Bildes auf die angegebenen Abmessungen. Wenn nur eine Dimension angegeben wird, wird die Größe des Bildes proportional geändert.
$width
* (int) – Die neue Bildbreite.$height
* (int) – Die neue Bildhöhe.Gibt ein SimpleImage-Objekt zurück.
resolution($res_x, $res_y)
Ändert die Auflösung (DPI) eines Bildes.
$res_x
* (int) – Die horizontale Auflösung in DPI.$res_y
(int) – Die vertikale Auflösung in DPI.Gibt ein SimpleImage-Objekt zurück.
rotate($angle, $backgroundColor)
Dreht das Bild.
$angle
* (int) – Der Drehwinkel (-360 – 360).$backgroundColor
(string|array) – Die Hintergrundfarbe, die nach der Drehung für den nicht abgedeckten Zonenbereich verwendet werden soll (Standard: „transparent“).Gibt ein SimpleImage-Objekt zurück.
text($text, $options, &$boundary)
Fügt dem Bild Text hinzu.
$text*
(String) – Der gewünschte Text.$options
(array) – Ein Array von Optionen.fontFile
* (Zeichenfolge) – Die zu verwendende TrueType-Schriftartdatei (oder eine kompatible Schriftart).size
(int) – Die Größe der Schriftart in Pixel (Standard 12).color
(string|array) – Die Textfarbe (Standard Schwarz).anchor
(Zeichenfolge) – Der Ankerpunkt: „Mitte“, „oben“, „unten“, „links“, „rechts“, „oben links“, „oben rechts“, „unten links“, „unten rechts“ (Standard). 'Center').xOffset
(int) – Der horizontale Versatz in Pixel (Standard 0).yOffset
(int) – Der vertikale Versatz in Pixel (Standard 0).shadow
(Array) – Textschattenparameter.x
* (int) – Horizontaler Versatz in Pixel.y
* (int) – Vertikaler Versatz in Pixel.color
* (string|array) – Die Textschattenfarbe.calculateOffsetFromEdge
(bool) – Berechne den Offset bezogen auf die Kanten des Bildes (Standard: falsch).baselineAlign
(bool) – Richtet die Textschriftart an der Grundlinie aus. (Standard: wahr).$boundary
(array) – Bei Übergabe enthält diese Variable ein Array mit Koordinaten, die den Text umgeben: [x1, y1, x2, y2, Breite, Höhe]. Dies kann zur Berechnung der Textposition verwendet werden, nachdem er dem Bild hinzugefügt wurde.Gibt ein SimpleImage-Objekt zurück.
thumbnail($width, $height, $anchor)
Erstellt ein Miniaturbild. Diese Funktion versucht, das Bild so nah wie möglich an die angegebenen Abmessungen zu bringen und schneidet dann den verbleibenden Überlauf ab, um die gewünschte Größe zu erzwingen. Nützlich zum Generieren von Miniaturbildern.
$width
* (int) – Die Breite der Miniaturansicht.$height
* (int) – Die Höhe der Miniaturansicht.$anchor
(Zeichenfolge) – Der Ankerpunkt: „Mitte“, „oben“, „unten“, „links“, „rechts“, „oben links“, „oben rechts“, „unten links“, „unten rechts“ ( standardmäßig „Mitte“).Gibt ein SimpleImage-Objekt zurück.
arc($x, $y, $width, $height, $start, $end, $color, $thickness)
Zeichnet einen Bogen.
$x
* (int) – Die x-Koordinate des Mittelpunkts des Bogens.$y
* (int) – Die y-Koordinate des Mittelpunkts des Bogens.$width
* (int) – Die Breite des Bogens.$height
* (int) – Die Höhe des Bogens.$start
* (int) – Der Anfang des Bogens in Grad.$end
* (int) – Das Ende des Bogens in Grad.$color
* (string|array) – Die Bogenfarbe.$thickness
(int|string) – Linienstärke in Pixeln oder „gefüllt“ (Standard 1).Gibt ein SimpleImage-Objekt zurück.
border($color, $thickness)
Zeichnet einen Rahmen um das Bild.
$color
* (string|array) – Die Rahmenfarbe.$thickness
(int) – Die Dicke des Randes (Standard 1).Gibt ein SimpleImage-Objekt zurück.
dot($x, $y, $color)
Zeichnet einen einzelnen Pixelpunkt.
$x
* (int) – Die x-Koordinate des Punktes.$y
* (int) – Die y-Koordinate des Punktes.$color
* (string|array) – Die Punktfarbe.Gibt ein SimpleImage-Objekt zurück.
ellipse($x, $y, $width, $height, $color, $thickness)
Zeichnet eine Ellipse.
$x
* (int) – Die x-Koordinate des Mittelpunkts.$y
* (int) – Die y-Koordinate des Mittelpunkts.$width
* (int) – Die Ellipsenbreite.$height
* (int) – Die Ellipsenhöhe.$color
* (string|array) – Die Ellipsenfarbe.$thickness
(int|string) – Linienstärke in Pixeln oder „gefüllt“ (Standard 1).Gibt ein SimpleImage-Objekt zurück.
fill($color)
Füllt das Bild mit einer Volltonfarbe.
$color
(string|array) – Die Füllfarbe.Gibt ein SimpleImage-Objekt zurück.
line($x1, $y1, $x2, $y2, $color, $thickness)
Zeichnet eine Linie.
$x1
* (int) – Die x-Koordinate für den ersten Punkt.$y1
* (int) – Die y-Koordinate für den ersten Punkt.$x2
* (int) – Die x-Koordinate für den zweiten Punkt.$y2
* (int) – Die y-Koordinate für den zweiten Punkt.$color
(string|array) – Die Linienfarbe.$thickness
(int) – Die Linienstärke (Standard 1).Gibt ein SimpleImage-Objekt zurück.
polygon($vertices, $color, $thickness)
Zeichnet ein Polygon.
$vertices
* (array) – Die Eckpunkte des Polygons in einem Array von x/y-Arrays. Beispiel: [
['x' => x1, 'y' => y1],
['x' => x2, 'y' => y2],
['x' => xN, 'y' => yN]
]
$color
* (string|array) – Die Polygonfarbe.$thickness
(int|string) – Linienstärke in Pixeln oder „gefüllt“ (Standard 1).Gibt ein SimpleImage-Objekt zurück.
rectangle($x1, $y1, $x2, $y2, $color, $thickness)
Zeichnet ein Rechteck.
$x1
* (int) – Die obere linke x-Koordinate.$y1
* (int) – Die obere linke Y-Koordinate.$x2
* (int) – Die untere rechte x-Koordinate.$y2
* (int) – Die y-Koordinate unten rechts.$color
* (string|array) – Die Rechteckfarbe.$thickness
(int|string) – Linienstärke in Pixeln oder „gefüllt“ (Standard 1).Gibt ein SimpleImage-Objekt zurück.
roundedRectangle($x1, $y1, $x2, $y2, $radius, $color, $thickness)
Zeichnet ein abgerundetes Rechteck.
$x1
* (int) – Die obere linke x-Koordinate.$y1
* (int) – Die obere linke Y-Koordinate.$x2
* (int) – Die untere rechte x-Koordinate.$y2
* (int) – Die y-Koordinate unten rechts.$radius
* (int) – Der Randradius in Pixel.$color
* (string|array) – Die Rechteckfarbe.$thickness
(int|string) – Linienstärke in Pixeln oder „gefüllt“ (Standard 1).Gibt ein SimpleImage-Objekt zurück.
blur($type, $passes)
Wendet den Unschärfefilter an.
$type
(string) – Der zu verwendende Unschärfealgorithmus: „selective“, „gaußian“ (Standard „gaußian“).$passes
(int) – Die Zeitspanne, in der der Filter angewendet wird, um den Effekt zu verstärken (Standard 1).Gibt ein SimpleImage-Objekt zurück.
brighten($percentage)
Wendet den Helligkeitsfilter an, um das Bild aufzuhellen.
$percentage
* (int) – Prozentsatz, um den das Bild aufgehellt wird (0 – 100).Gibt ein SimpleImage-Objekt zurück.
colorize($color)
Wendet den Farbfilter an.
$color
* (string|array) – Die Filterfarbe.Gibt ein SimpleImage-Objekt zurück.
contrast($percentage)
Wendet den Kontrastfilter an.
$percentage
* (int) – Prozentsatz zum Anpassen (-100 – 100).Gibt ein SimpleImage-Objekt zurück.
darken($percentage)
Wendet den Helligkeitsfilter an, um das Bild abzudunkeln.
$percentage
* (int) – Prozentsatz, um den das Bild abgedunkelt wird (0 – 100).Gibt ein SimpleImage-Objekt zurück.
desaturate()
Wendet den Entsättigungsfilter (Graustufenfilter) an.
Gibt ein SimpleImage-Objekt zurück.
duotone($lightColor, $darkColor)
Wendet den Duotone-Filter auf das Bild an.
$lightColor
* (string|array) – Die hellste Farbe im Duoton.$darkColor
* (string|array) – Die dunkelste Farbe im Duoton.Gibt ein SimpleImage-Objekt zurück.
edgeDetect()
Wendet den Kantenerkennungsfilter an.
Gibt ein SimpleImage-Objekt zurück.
emboss()
Wendet den Prägefilter an.
Gibt ein SimpleImage-Objekt zurück.
invert()
Kehrt die Farben des Bildes um.
Gibt ein SimpleImage-Objekt zurück.
opacity()
Ändert die Deckkraftstufe des Bildes.
$opacity
* (float) – Die gewünschte Deckkraftstufe (0 – 1).Gibt ein SimpleImage-Objekt zurück.
pixelate($size)
Wendet den Pixelfilter an.
$size
(int) – Die Größe der Blöcke in Pixel (Standard 10).Gibt ein SimpleImage-Objekt zurück.
sepia()
Simuliert einen Sepia-Effekt, indem das Bild entsättigt und ein Sepia-Ton angewendet wird.
Gibt ein SimpleImage-Objekt zurück.
sharpen($amount)
Schärft das Bild.
$amount
(int) – Schärfungsbetrag (1 – 100, Standard 50)Gibt ein SimpleImage-Objekt zurück.
sketch()
Wendet den Mittelwertentfernungsfilter an, um einen Skizzeneffekt zu erzeugen.
Gibt ein SimpleImage-Objekt zurück.
(static) adjustColor($color, $red, $green, $blue, $alpha)
Passt eine Farbe durch unabhängiges Erhöhen/Verringern der Rot-/Grün-/Blau-/Alpha-Werte an.
$color
* (string|array) – Die anzupassende Farbe.$red
* (int) – Rot-Anpassung (-255 – 255).$green
* (int) – Grüne Anpassung (-255 – 255).$blue
* (int) – Blaue Anpassung (-255 – 255).$alpha
* (float) – Alpha-Anpassung (-1 – 1).Gibt ein RGBA-Farbarray zurück.
(static) darkenColor($color, $amount)
Verdunkelt eine Farbe.
$color
* (string|array) – Die abzudunkelnde Farbe.$amount
* (int) – Abzudunkelnder Betrag (0 – 255).Gibt ein RGBA-Farbarray zurück.
extractColors($count = 10, $backgroundColor = null)
Extrahiert Farben aus einem Bild, wie es ein Mensch tun würde.™ Diese Methode erfordert die Drittanbieterbibliothek LeagueColorExtractor. Wenn Sie Composer verwenden, wird es automatisch für Sie installiert.
$count
(int) – Die maximale Anzahl der zu extrahierenden Farben (Standard 5).$backgroundColor
(string|array) – Standardmäßig werden alle Pixel mit einem Alphawert größer als Null verworfen. Dies liegt daran, dass transparente Farben nicht so wahrgenommen werden, wie sie sind. Beispielsweise würde vollständig transparentes Schwarz auf weißem Hintergrund als Weiß gesehen werden. Wenn Sie also Transparenz berücksichtigen möchten, müssen Sie eine Standardhintergrundfarbe angeben.Gibt ein Array von RGBA-Farbarrays zurück.
getColorAt($x, $y)
Ruft den RGBA-Wert eines einzelnen Pixels ab.
$x
* (int) – Die horizontale Position des Pixels.$y
* (int) – Die vertikale Position des Pixels.Gibt ein RGBA-Farbarray oder „false“ zurück, wenn die x/y-Position außerhalb der Leinwand liegt.
(static) lightenColor($color, $amount)
Hellt eine Farbe auf.
$color
* (string|array) – Die aufzuhellende Farbe.$amount
* (int) – Abzudunkelnder Betrag (0 – 255).Gibt ein RGBA-Farbarray zurück.
(static) normalizeColor($color)
Normalisiert einen Hex- oder Array-Farbwert in ein gut formatiertes RGBA-Array.
$color
* (string|array) – Ein CSS-Farbname, eine Hex-Zeichenfolge oder ein Array [rot, grün, blau, Alpha].Sie können Alpha-Transparenz über Hex-Strings und Farbnamen weiterleiten. Zum Beispiel:
#fff|0,50 <-- 50 % Weißrot|0,25 <-- 25 % Rot
Gibt ein Array zurück: [rot, grün, blau, Alpha]
SimpleImage löst Standardausnahmen aus, wenn etwas schief geht. Sie sollten immer einen Try/Catch-Block um Ihren Code herum verwenden, um sie ordnungsgemäß zu verarbeiten.
<?php
try {
$ image = new claviska SimpleImage( ' image.jpeg ' )
// ...
} catch ( Exception $ err ) {
echo $ err -> getMessage ();
}
Um nach bestimmten Fehlern zu suchen, vergleichen Sie $err->getCode()
mit den definierten Fehlerkonstanten.
<?php
try {
$ image = new claviska SimpleImage( ' image.jpeg ' )
// ...
} catch ( Exception $ err ) {
if ( $ err -> getCode () === $ image :: ERR_FILE_NOT_FOUND ) {
echo ' File not found! ' ;
} else {
echo $ err -> getMessage ();
}
}
Als bewährte Vorgehensweise verwenden Sie immer die definierten Konstanten anstelle ihrer ganzzahligen Werte. Die Werte werden sich wahrscheinlich in zukünftigen Versionen ändern und WERDEN NICHT als bahnbrechende Änderung betrachtet.
ERR_FILE_NOT_FOUND
– Die angegebene Datei konnte aus irgendeinem Grund nicht gefunden oder geladen werden.ERR_FONT_FILE
– Die angegebene Schriftartdatei konnte nicht geladen werden.ERR_FREETYPE_NOT_ENABLED
– Freetype-Unterstützung ist in Ihrer PHP-Version nicht aktiviert.ERR_GD_NOT_ENABLED
– Die GD-Erweiterung ist in Ihrer PHP-Version nicht aktiviert.ERR_LIB_NOT_LOADED
– Eine erforderliche Bibliothek wurde nicht geladen.ERR_INVALID_COLOR
– Als Argument wurde ein ungültiger Farbwert übergeben.ERR_INVALID_DATA_URI
– Der angegebene Daten-URI ist ungültig.ERR_INVALID_IMAGE
– Das angegebene Bild ist ungültig.ERR_UNSUPPORTED_FORMAT
– Das angegebene Bildformat ist ungültig.ERR_WEBP_NOT_ENABLED
– WEBP-Unterstützung ist in Ihrer PHP-Version nicht aktiviert.ERR_WRITE
– Es konnte nicht in das Dateisystem geschrieben werden.ERR_INVALID_FLAG
– Der angegebene Flag-Schlüssel ist nicht vorhanden. Farbargumente können ein CSS-Farbname (z. B. LightBlue
), eine hexadezimale Farbzeichenfolge (z. B. #0099dd
) oder ein RGB(A)-Array (z. B. ['red' => 255, 'green' => 0, 'blue' => 0, 'alpha' => 1]
sein. ['red' => 255, 'green' => 0, 'blue' => 0, 'alpha' => 1]
).
Wenn $thickness
> 1 ist, zeichnet GD Linien mit der gewünschten Dicke vom zentralen Ursprung aus. Beispielsweise wird ein bei [10, 10, 20, 20] gezeichnetes Rechteck mit einer Dicke von 3 tatsächlich bei [9, 9, 21, 21] gezeichnet. Dies gilt für alle Formen und ist kein Fehler in der SimpleImage-Bibliothek.
Optimieren Sie das Verhalten einer SimpleImage-Instanz, indem Sie Instanzflagwerte mit der Methode setFlag($key, $value)
festlegen.
$ image = new claviska SimpleImage ( ' image.jpeg ' )-> setFlag ( " foo " , " bar " );
Sie können auch ein assoziatives Array an den SimpleImage-Konstruktor übergeben, um Instanzflags festzulegen.
$ image = new claviska SimpleImage ( ' image.jpeg ' , [ ' foo ' => ' bar ' ]);
// . . or without an $ image
$ image = new claviska SimpleImage (flags: [ ' foo ' => ' bar ' ]);
Hinweis: setFlag()
löst eine ERR_INVALID_FLAG
-Ausnahme aus, wenn der Schlüssel nicht existiert (kein Standardwert).
sslVerify
Wenn Sie sslVerify
auf false
(standardmäßig „ true
“) setzen, wird bei allen über HTTPS geladenen Bildern auf die Peer-Validierung des Zertifikats verzichtet. Dies ist besonders nützlich für selbstsignierte Zertifikate.
$ image = new claviska SimpleImage ( ' https://localhost/image.jpeg ' , [ ' sslVerify ' => false ]);
// Would normally throw an OpenSSL exception , but is ignored with the sslVerify flag set to false .
text
hinzugefügt.fromString()
hinzugefügt, um Bilder aus Strings zu laden.toString()
hinzugefügt, um Bildzeichenfolgen zu generieren.arc
-Methode zum Zeichnen von Bögen hinzugefügt.border
zum Zeichnen von Rändern hinzugefügt.dot
zum Zeichnen einzelner Pixel hinzugefügt.ellipse
zum Zeichnen von Ellipsen und Kreisen hinzugefügt.line
zum Zeichnen von Linien hinzugefügt.polygon
zum Zeichnen von Polygonen hinzugefügt.rectangle
zum Zeichnen von Rechtecken hinzugefügt.roundedRectangle
zum Zeichnen abgerundeter Rechtecke hinzugefügt.adjustColor
Methode zum Ändern von RGBA-Farbkanälen hinzugefügt, um relative Farbvariationen zu erzeugen.darkenColor
-Methode hinzugefügt, um eine Farbe abzudunkeln.extractColors
hinzugefügt, um die häufigsten Farben aus dem Bild zu erhalten.getColorAt
hinzugefügt, um die RGBA-Werte eines bestimmten Pixels abzurufen.lightenColor
hinzugefügt, um eine Farbe aufzuhellen.toDownload
-Methode hinzugefügt, um das Herunterladen des Bildes auf den Client-Computer zu erzwingen.duotone
Filter hinzugefügt, um Duotone-Bilder zu erstellen.sharpen
hinzugefügt, um das Bild zu schärfen.abeautifulsite
in claviska
geändert.create
wurde in fromNew
geändert.load
wurde in fromFile
geändert.load_base64
wurde in fromDataUri
geändert.output
in toScreen
.x geändertoutput_base64
wurde in toDataUri
geändert.save
in toFile
geändert.text
wurde geändert, um ein Array von Optionen anstelle von Unmengen von Argumenten zu akzeptieren.text
entfernt, da er fehlerhafte Ergebnisse lieferte und keine Transparenz unterstützte.smooth
-Methode entfernt, da ihre Argumente im PHP-Handbuch nicht gut dokumentiert sind.adaptive_resize
entfernt (stattdessen thumbnail
verwenden).get_meta_data
entfernt (verwenden Sie stattdessen getExif
, getHeight
, getMime
, getOrientation
und getWidth
).