Die Images API bietet die Möglichkeit, Bilder direkt aus Google Cloud Storage oder Blobstore bereitzustellen und ohne Unterbrechung direkt zu bearbeiten. Informationen zum Inhalt des Pakets image
finden Sie in der image
-Paketreferenz.
Cloud Storage-Buckets müssen detaillierte Access Control Lists verwenden, damit die Images API funktioniert. Bei Buckets, die für den einheitlichen Zugriff auf Bucket-Ebene konfiguriert wurden, kann die Images API keine Images in diesem Bucket abrufen und gibt die Fehlermeldung TransformationError
aus. Wenn Ihr Bucket auf diese Weise konfiguriert ist, können Sie den einheitlichen Zugriff auf Bucket-Ebene deaktivieren.
Bildformate
Der Dienst akzeptiert Bilddaten in den Formaten JPEG, PNG, WEBP, GIF (einschließlich animierter GIFs), BMP, TIFF und ICO. Transformierte Bilder können in den Formaten JPEG, WEBP und PNG zurückgegeben werden.
Wenn die Ein- und Ausgabeformate unterschiedlich sind, konvertiert der Dienst die Eingabedaten vor der Transformation in das Ausgabeformat.
Bilder bereitstellen und vergrößern oder verkleinern
Mit der Funktion image.ServingURL
können Sie eine stabile dedizierte URL für die Bereitstellung webfähiger Miniaturbilder generieren.
Dabei haben Sie die Möglichkeit, eine einzelne Kopie Ihres Originalbilds in Blobstore zu speichern und anschließend eine leistungsstarke URL pro Bild anzufordern, mit der das Bild automatisch vergrößert/verkleinert und/oder zugeschnitten werden kann. Die Bereitstellung von dieser URL beeinflusst nicht die CPU-Auslastung und führt zu keiner dynamischen Arbeitslast für Ihre Anwendung (die Bandbreite wird wie üblich berechnet).
Die von der Funktion zurückgegebene URL ist immer öffentlich, kann aber nicht erraten werden. Private URLs werden derzeit nicht unterstützt. Wenn Sie die Bereitstellung der URL beenden möchten, löschen Sie diese mit der Funktion image.DeleteServingURL
.
Wenn Sie einen Wert für image.ServingURLOptions
an die Funktion übergeben, wird eine URL mit diesen Optionen zurückgegeben. Wenn Sie nil
übergeben, gibt die Funktion die Standard-URL für das Bild zurück. Beispiel:
http://lhx.ggpht.com/randomStringImageId
Sie können die Größe des Bildes dynamisch ändern und zuschneiden, wenn Sie die Argumente in der URL angeben. Folgende Argumente sind verfügbar:
=sxx
, wobeixx
eine Ganzzahl von 0 bis 2.560 ist, die die Länge der längsten Seite des Bildes in Pixel angibt. Wenn Sie beispielsweise=s32
hinzufügen, wird die Größe des Bildes so geändert, dass die längste Dimension 32 Pixel beträgt.=sxx-c
, wobei xx eine Ganzzahl von 0 bis 2.560 ist, die die Größe des zugeschnittenen Bildes in Pixel angibt. Mit-c
wird das System angewiesen, das Bild zuzuschneiden.
# Resize the image to 32 pixels (aspect-ratio preserved) http://lhx.ggpht.com/randomStringImageId=s32 # Crop the image to 32 pixels http://lhx.ggpht.com/randomStringImageId=s32-c
Bilder aus Cloud Storage mithilfe der Blobstore API bereitstellen
Wenn Sie Cloud Storage als Datenspeicher verwenden und die Bilder mit der Blobstore API bereitstellen, müssen Sie einen Blob-Schlüssel für das Cloud Storage-Objekt erstellen.
Hinweis zum Löschen
Wenn Sie die Bereitstellung eines in Cloud Storage oder Blobstore gespeicherten Bildes beenden möchten, rufen Sie die Funktion image.DeleteServingURL
auf.
Sie sollten vermeiden, Bilder in Cloud Storage oder Blobstore direkt zu löschen, da sie dann möglicherweise nicht mehr über die Bereitstellungs-URL zugänglich sind.
Bereitstellungs-URLs funktionieren nicht mehr, wenn die Anwendung, mit der sie erstellt wurden, deaktiviert oder gelöscht ist, selbst wenn das zugrunde liegende Bild weiterhin verfügbar ist.