Bild spiegeln
Spiegeln kehrt ein Bild entlang der senkrechten oder waagerechten Achse um, sodass links und rechts oder oben und unten vertauscht werden. Anders als beim Drehen bleibt die Ausrichtung des Bildrahmens erhalten – nur der Inhalt erscheint spiegelverkehrt, während Breite und Höhe unverändert bleiben.
Online ausführen
Führen Sie dies mit Ihrem Konto auf unseren Servern aus. Kostenlose Tools laufen in Ihrem Browser; dieses wird zum oben genannten Preis von Ihrem KIT-Guthaben abgebucht.
Horizontal oder vertikal – der Unterschied
Horizontales Spiegeln vertauscht links und rechts, wie bei einem Blick in den Spiegel; vertikales Spiegeln stellt das Bild auf den Kopf, mit vertauschtem oben und unten. Beide Richtungen lassen sich unabhängig voneinander wählen, je nachdem, welches Ergebnis Sie brauchen, und auch gemeinsam in derselben Anfrage anwenden, ohne dass sich beide Effekte gegenseitig beeinflussen oder das Ergebnis auf unerwartete Weise verändern.
Unterschied zum Drehen
Drehen bewegt das Bild um einen Winkel, ohne den Inhalt seitenverkehrt darzustellen. Spiegeln dagegen kehrt den Inhalt um, während die Bildabmessungen unverändert bleiben. Für ein auf dem Kopf stehendes Foto ist meist Drehen die richtige Wahl, für ein seitenverkehrtes Motiv Spiegeln, auch wenn beide Ergebnisse auf den ersten Blick ähnlich wirken können, sich in der Wirkung aber deutlich unterscheiden und selten dasselbe Bild liefern.
Typischer Anlass: die Frontkamera
Viele Frontkameras zeigen ein Selfie im Sucher spiegelverkehrt an; gespeichert wird es dann oft mit vertauschter Seite, sodass Text oder Logos im Bild seitenverkehrt erscheinen. Horizontales Spiegeln stellt die ursprüngliche, korrekte Ausrichtung wieder her, ohne dass Sie das Foto erneut aufnehmen müssen oder auf ein anderes Gerät, eine zusätzliche App oder ein separates Bildbearbeitungsprogramm am heimischen Rechner angewiesen sind, um das Ergebnis zu erhalten.
Was unverändert bleibt
Farben, Schärfe und Bildinformation ändern sich beim Spiegeln nicht, ebenso wenig die Dateigröße nennenswert. Es handelt sich um eine reine Umkehrung der Pixelanordnung, ohne dass Bildinhalt hinzukommt oder verloren geht. Auch das ursprüngliche Dateiformat bleibt dabei vollständig erhalten, sofern Sie keine zusätzliche Umwandlung anfordern, ebenso wie die Farbtiefe, die Auflösung und die eingebetteten Metadaten der Originaldatei, etwa das Aufnahmedatum der Kamera.
Anwendungsfälle
Ein Selfie mit seitenverkehrtem Logo korrigieren
Anna Hoffmann bemerkt, dass ein Selfie mit einem Firmenschild im Hintergrund seitenverkehrt gespeichert wurde. Horizontales Spiegeln stellt Schrift und Logo wieder richtig herum dar.
Ein im Spiegel fotografiertes Werkstück begradigen
Weber Metallbau GmbH fotografiert ein Werkstück versehentlich über einen Spiegel und spiegelt das Foto anschließend zurück, um die tatsächliche Ausrichtung zu zeigen.
Ein symmetrisches Motiv für eine Broschüre erstellen
Katrin Baumann spiegelt ein Foto vertikal, um daraus ein symmetrisches Gestaltungselement für eine Broschüre zu erzeugen.
Häufige Fragen
Was ist der Unterschied zwischen Spiegeln und Drehen?
Drehen bewegt das Bild um einen Winkel, Spiegeln kehrt den Inhalt entlang einer Achse um. Für ein auf dem Kopf stehendes Foto ist meist Drehen die richtige Wahl, für ein seitenverkehrtes Motiv Spiegeln.
Kann ich horizontal und vertikal gleichzeitig spiegeln?
Ja, beide Richtungen lassen sich unabhängig voneinander anwenden, auch gemeinsam in einer Anfrage.
Ändert sich die Dateigröße durch das Spiegeln?
Nur geringfügig. Es handelt sich um eine reine Umkehrung der Pixelanordnung ohne zusätzliche Bildinformation.
Welche Formate werden unterstützt?
JPG, PNG und WebP, bis zu 15 MB und 12 Megapixel je Datei.
Was kostet das Spiegeln?
$0.002 pro Anfrage und $0.005 pro Bild.
Wird meine Datei danach gespeichert?
Nein. Sie wird ausschließlich für die Dauer der Verarbeitung übertragen und danach nicht aufbewahrt.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/image/flip \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"image":"https://ejemplo.com/imagen.jpg"}'const res = await fetch("https://api.kit.forhosting.com/image/flip", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"image": "https://ejemplo.com/imagen.jpg"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/flip",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"image": "https://ejemplo.com/imagen.jpg"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/flip", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"image":"https://ejemplo.com/imagen.jpg"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"image":"https://ejemplo.com/imagen.jpg"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/flip", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"image": "https://ejemplo.com/imagen.jpg"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.flip",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_mb | 15 |
max_megapixels | 12 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |