Biblioteka JavaScript, która przerysowuje DOM strony na canvas w przeglądarce odwiedzającego — bez serwera i bez prawdziwego zrzutu ekranu.
html2canvas nic nie kosztuje, nie potrzebuje serwera ani klucza API i jako jedyna opcja na tej liście uchwyci to, co odwiedzający naprawdę widzi: wypełniony formularz, panel po zalogowaniu, wykres, który sam ustawił. Obrazek nie opuszcza jego przeglądarki, dopóki go gdzieś nie wyślesz. Do przycisku „pobierz jako PNG" przy prostych, raczej płaskich układach to właściwe narzędzie.
| Co | html2canvas | Shareglint |
|---|---|---|
| Cena | Za darmo, licencja MIT | 100 renderów miesięcznie za darmo (ze znakiem wodnym), potem $9 za 2 000 |
| Jak powstaje obrazek | Przerysowuje DOM własną implementacją CSS; dokumentacja ostrzega, że wynik „może nie być w 100% dokładny" | Chrome renderuje stronę albo szablon i robi prawdziwy zrzut |
| Gdzie działa | W przeglądarce odwiedzającego | Na naszych serwerach, jedno żądanie HTTP z dowolnego języka |
| Obsługa CSS | Opublikowana lista; box-shadow, filter, object-fit, mix-blend-mode, writing-mode i powtarzane gradienty nie są obsługiwane | Wszystko, co renderuje Chrome |
| Obrazki z innych domen | Potrzebują CORS albo proxy, inaczej canvas jest „skażony" | Prawdziwa przeglądarka wczytuje je jak na każdej stronie |
| Ekran samego użytkownika | Tak — wypełnione formularze, widoki po zalogowaniu, cokolwiek jest na stronie | Nie — tylko publiczne adresy i dane, które wyślesz |
| Udostępnianie i og:image | Obrazek istnieje w przeglądarce, dopóki go gdzieś nie wyślesz | Stały adres pliku, który wstawiasz prosto do og:image |
| Utrzymanie | Ostatnie wydanie 1.4.1, styczeń 2022 | Usługa, którą utrzymujemy |
Ceny html2canvas (za darmo (licencja MIT), działa w przeglądarce odwiedzającego; ostatnie wydanie 1.4.1, styczeń 2022) pochodzą z ich publicznego cennika, sprawdzone 2026-11. Jeśli coś się zmieniło — napisz, poprawimy.
Chcesz przycisku „zapisz jako obrazek" po stronie klienta dla bieżącego widoku użytkownika, układ trzyma się CSS z ich listy obsługiwanych właściwości, a kopia obrazka na serwerze nie jest potrzebna.
Obrazek ma wyglądać dokładnie tak, jak renderuje go Chrome, ma powstawać bez przeglądarki odwiedzającego (obrazki OG, e-maile, generowanie hurtowe) albo ma być udostępniany przez adres URL.
Zamień wywołanie ich API (albo własny kod przeglądarki) na jedno żądanie do endpointu zrzutów: adres strony i opcje, których używasz — cała strona, viewport albo urządzenie, selektor elementu, blokowanie banerów cookie i reklam. Zrzut viewportu zużywa 1 z miesięcznego limitu obrazków, cała strona 2.
curl -X POST "https://shareglint.com/v1/screenshots?wait=true" \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com","full_page":true,"block_cookie_banners":true}'
Bannerbear · Placid · HTMLCSStoImage · Orshot · @vercel/og · Cloudinary · ScreenshotOne · Urlbox · ApiFlash · Templated · APITemplate.io · RenderForm · Imejis.io · Abyssale · Puppeteer