ImageResponse
Der ImageResponse
-Konstruktor ermöglicht die Generierung dynamischer Bilder mit JSX und CSS. Dies ist nützlich für die Erstellung von Social-Media-Bildern wie Open-Graph-Bilder, Twitter-Karten und mehr.
Referenz
Parameter
Für ImageResponse
stehen folgende Parameter zur Verfügung:
Beispiele sind im Vercel OG Playground verfügbar.
Unterstützte HTML- und CSS-Funktionen
ImageResponse
unterstützt gängige CSS-Eigenschaften inklusive Flexbox und absolute Positionierung, benutzerdefinierte Schriftarten, Textumbruch, Zentrierung und verschachtelte Bilder.
Eine Liste der unterstützten HTML- und CSS-Funktionen finden Sie in der Satori-Dokumentation.
Verhalten
ImageResponse
verwendet @vercel/og, Satori und Resvg, um HTML und CSS in PNG umzuwandeln.- Nur Flexbox und eine Teilmenge von CSS-Eigenschaften werden unterstützt. Erweiterte Layouts (z.B.
display: grid
) funktionieren nicht. - Maximale Bundle-Größe von
500KB
. Die Bundle-Größe umfasst Ihr JSX, CSS, Schriftarten, Bilder und andere Assets. Wenn Sie das Limit überschreiten, sollten Sie die Größe der Assets reduzieren oder sie zur Laufzeit abrufen. - Nur die Schriftformate
ttf
,otf
undwoff
werden unterstützt. Um die Geschwindigkeit der Schriftanalyse zu maximieren, sindttf
oderotf
gegenüberwoff
zu bevorzugen.
Beispiele
Route Handler
ImageResponse
kann in Route Handlern verwendet werden, um Bilder dynamisch zur Laufzeit einer Anfrage zu generieren.
Dateibasierte Metadaten
Sie können ImageResponse
in einer opengraph-image.tsx
-Datei verwenden, um Open-Graph-Bilder zur Build-Zeit oder dynamisch zur Laufzeit einer Anfrage zu generieren.
Benutzerdefinierte Schriftarten
Sie können benutzerdefinierte Schriftarten in Ihrem ImageResponse
verwenden, indem Sie ein fonts
-Array in den Optionen bereitstellen.
Versionsverlauf
Version | Änderungen |
---|---|
v14.0.0 | ImageResponse wurde von next/server nach next/og verschoben |
v13.3.0 | ImageResponse kann aus next/server importiert werden. |
v13.0.0 | ImageResponse wurde über das @vercel/og -Paket eingeführt. |