feat: add html-to-image tool definition and i18n strings

Add tool metadata to shared constants and i18n entries across all 21
locales for the new HTML to Image screenshot tool.
This commit is contained in:
SnapOtter
2026-06-06 21:45:38 +08:00
parent 10a85cf37e
commit d1b0afd2e6
22 changed files with 676 additions and 80 deletions
+8
View File
@@ -347,6 +347,14 @@ export const TOOLS: Tool[] = [
icon: "QrCode",
route: "/qr-generate",
},
{
id: "html-to-image",
name: "HTML to Image",
description: "Capture webpages as high-quality images",
category: "utilities",
icon: "Globe",
route: "/html-to-image",
},
{
id: "barcode-read",
name: "Barcode Reader",
+28
View File
@@ -220,6 +220,10 @@ export const ar: TranslationKeys = {
name: "مولّد رمز QR",
description: "إنشاء رموز QR مخصصة بألوان وأنماط وشعارات مميزة",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "قارئ الباركود",
description: "مسح الصور بحثًا عن رموز QR والباركود والرموز ثنائية الأبعاد",
@@ -1001,6 +1005,30 @@ export const ar: TranslationKeys = {
submit: "إنشاء رمز QR",
download: "تحميل رمز QR",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "مسح الباركود",
submitBatch: "مسح ({count} ملف)",
+28
View File
@@ -222,6 +222,10 @@ export const de: TranslationKeys = {
name: "QR-Code-Generator",
description: "QR-Codes mit individuellen Farben, Mustern und Logos erstellen",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Barcode-Leser",
description: "Bilder nach QR-Codes, Barcodes und 2D-Codes scannen",
@@ -1014,6 +1018,30 @@ export const de: TranslationKeys = {
submit: "QR-Code generieren",
download: "QR-Code herunterladen",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Barcodes scannen",
submitBatch: "Scannen ({count} Dateien)",
+28
View File
@@ -179,6 +179,10 @@ export const en = {
name: "QR Code Generator",
description: "Generate styled QR codes with custom colors, patterns, and logos",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Barcode Reader",
description: "Scan images for QR codes, barcodes, and 2D codes",
@@ -959,6 +963,30 @@ export const en = {
submit: "Generate QR Code",
download: "Download QR Code",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Scan Barcodes",
submitBatch: "Scan ({count} files)",
+28
View File
@@ -209,6 +209,10 @@ export const es: TranslationKeys = {
name: "Generador de codigos QR",
description: "Genera codigos QR con estilos, colores personalizados, patrones y logos",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Lector de codigos de barras",
description: "Escanea imagenes en busca de codigos QR, codigos de barras y codigos 2D",
@@ -996,6 +1000,30 @@ export const es: TranslationKeys = {
submit: "Generar codigo QR",
download: "Descargar codigo QR",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Escanear codigos de barras",
submitBatch: "Escanear ({count} archivos)",
+28
View File
@@ -223,6 +223,10 @@ export const fr: TranslationKeys = {
name: "Generateur de codes QR",
description: "Generez des codes QR stylises avec couleurs, motifs et logos personnalises",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Lecteur de codes-barres",
description: "Scannez les images pour detecter les codes QR, codes-barres et codes 2D",
@@ -1015,6 +1019,30 @@ export const fr: TranslationKeys = {
submit: "Generer le code QR",
download: "Telecharger le code QR",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Scanner les codes-barres",
submitBatch: "Scanner ({count} fichiers)",
+28
View File
@@ -219,6 +219,10 @@ export const hi: TranslationKeys = {
name: "QR कोड जनरेटर",
description: "कस्टम रंगों, पैटर्न और लोगो के साथ स्टाइल्ड QR कोड जनरेट करें",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "बारकोड रीडर",
description: "इमेज में QR कोड, बारकोड और 2D कोड स्कैन करें",
@@ -997,6 +1001,30 @@ export const hi: TranslationKeys = {
submit: "QR कोड जनरेट करें",
download: "QR कोड डाउनलोड करें",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "बारकोड स्कैन करें",
submitBatch: "स्कैन करें ({count} फाइलें)",
+28
View File
@@ -222,6 +222,10 @@ export const id: TranslationKeys = {
name: "Generator Kode QR",
description: "Buat kode QR bergaya dengan warna, pola, dan logo kustom",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Pembaca Barcode",
description: "Pindai gambar untuk kode QR, barcode, dan kode 2D",
@@ -1009,6 +1013,30 @@ export const id: TranslationKeys = {
submit: "Buat Kode QR",
download: "Unduh Kode QR",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Pindai Barcode",
submitBatch: "Pindai ({count} file)",
+28
View File
@@ -222,6 +222,10 @@ export const it: TranslationKeys = {
name: "Generatore codici QR",
description: "Genera codici QR stilizzati con colori, motivi e loghi personalizzati",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Lettore codici a barre",
description: "Scansiona immagini alla ricerca di codici QR, codici a barre e codici 2D",
@@ -1008,6 +1012,30 @@ export const it: TranslationKeys = {
submit: "Genera codice QR",
download: "Scarica codice QR",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Scansiona codici a barre",
submitBatch: "Scansiona ({count} file)",
+28
View File
@@ -189,6 +189,10 @@ export const ja: TranslationKeys = {
name: "QRコードジェネレーター",
description: "カスタムカラー、パターン、ロゴ付きのQRコードを生成",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "バーコードリーダー",
description: "画像からQRコード、バーコード、二次元コードをスキャン",
@@ -967,6 +971,30 @@ export const ja: TranslationKeys = {
submit: "QRコード生成",
download: "QRコードをダウンロード",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "バーコードスキャン",
submitBatch: "スキャン({count}ファイル)",
+28
View File
@@ -177,6 +177,10 @@ export const ko: TranslationKeys = {
name: "QR 코드 생성기",
description: "맞춤 색상, 패턴, 로고가 포함된 QR 코드 생성",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "바코드 리더",
description: "이미지에서 QR 코드, 바코드 및 2D 코드 스캔",
@@ -952,6 +956,30 @@ export const ko: TranslationKeys = {
submit: "QR 코드 생성",
download: "QR 코드 다운로드",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "바코드 스캔",
submitBatch: "스캔 ({count}개 파일)",
+28
View File
@@ -224,6 +224,10 @@ export const nl: TranslationKeys = {
name: "QR-code generator",
description: "QR-codes maken met aangepaste kleuren, patronen en logo's",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Barcodelezer",
description: "Afbeeldingen scannen op QR-codes, barcodes en 2D-codes",
@@ -1011,6 +1015,30 @@ export const nl: TranslationKeys = {
submit: "QR-code genereren",
download: "QR-code downloaden",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Barcodes scannen",
submitBatch: "Scannen ({count} bestanden)",
+28
View File
@@ -223,6 +223,10 @@ export const pl: TranslationKeys = {
description:
"Generowanie stylizowanych kodów QR z konfigurowalnymi kolorami, wzorami i logotypami",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Czytnik kodów kreskowych",
description: "Skanowanie obrazów w poszukiwaniu kodów QR, kreskowych i 2D",
@@ -1012,6 +1016,30 @@ export const pl: TranslationKeys = {
submit: "Generuj kod QR",
download: "Pobierz kod QR",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Skanuj kody kreskowe",
submitBatch: "Skanuj ({count} plików)",
+28
View File
@@ -221,6 +221,10 @@ export const ptBR: TranslationKeys = {
name: "Gerador de codigos QR",
description: "Gere codigos QR estilizados com cores, padroes e logos personalizados",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Leitor de codigos de barras",
description: "Escaneie imagens em busca de codigos QR, codigos de barras e codigos 2D",
@@ -1008,6 +1012,30 @@ export const ptBR: TranslationKeys = {
submit: "Gerar codigo QR",
download: "Baixar codigo QR",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Escanear codigos de barras",
submitBatch: "Escanear ({count} arquivos)",
+28
View File
@@ -223,6 +223,10 @@ export const ru: TranslationKeys = {
description:
"Генерация стилизованных QR-кодов с настраиваемыми цветами, узорами и логотипами",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Сканер штрихкодов",
description: "Сканирование изображений на наличие QR-кодов, штрихкодов и 2D-кодов",
@@ -1010,6 +1014,30 @@ export const ru: TranslationKeys = {
submit: "Сгенерировать QR-код",
download: "Скачать QR-код",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Сканировать штрихкоды",
submitBatch: "Сканировать ({count} файлов)",
+28
View File
@@ -222,6 +222,10 @@ export const sv: TranslationKeys = {
name: "QR-kodsgenerator",
description: "Skapa QR-koder med anpassade farger, monster och logotyper",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Streckkodslasare",
description: "Skanna bilder efter QR-koder, streckkoder och 2D-koder",
@@ -1007,6 +1011,30 @@ export const sv: TranslationKeys = {
submit: "Generera QR-kod",
download: "Ladda ner QR-kod",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Skanna streckkoder",
submitBatch: "Skanna ({count} filer)",
+28
View File
@@ -219,6 +219,10 @@ export const th: TranslationKeys = {
name: "สร้างคิวอาร์โค้ด",
description: "สร้างคิวอาร์โค้ดพร้อมสไตล์ สี ลวดลาย และโลโก้ที่กำหนดเอง",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "อ่านบาร์โค้ด",
description: "สแกนภาพเพื่อหาคิวอาร์โค้ด บาร์โค้ด และโค้ด 2D",
@@ -990,6 +994,30 @@ export const th: TranslationKeys = {
submit: "สร้างคิวอาร์โค้ด",
download: "ดาวน์โหลดคิวอาร์โค้ด",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "สแกนบาร์โค้ด",
submitBatch: "สแกน ({count} ไฟล์)",
+28
View File
@@ -223,6 +223,10 @@ export const tr: TranslationKeys = {
name: "QR Kod Oluşturucu",
description: "Özel renkler, desenler ve logolarla stilize QR kodlar oluşturun",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Barkod Okuyucu",
description: "Görüntülerde QR kodu, barkod ve 2D kodları tarayın",
@@ -1012,6 +1016,30 @@ export const tr: TranslationKeys = {
submit: "QR Kodu Oluştur",
download: "QR Kodunu İndir",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Barkodları Tara",
submitBatch: "Tara ({count} dosya)",
+28
View File
@@ -222,6 +222,10 @@ export const uk: TranslationKeys = {
description:
"Генерація стилізованих QR-кодів з налаштовуваними кольорами, візерунками та логотипами",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Сканер штрихкодів",
description: "Сканування зображень на наявність QR-кодів, штрихкодів та 2D-кодів",
@@ -1010,6 +1014,30 @@ export const uk: TranslationKeys = {
submit: "Згенерувати QR-код",
download: "Завантажити QR-код",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Сканувати штрихкоди",
submitBatch: "Сканувати ({count} файлів)",
+28
View File
@@ -223,6 +223,10 @@ export const vi: TranslationKeys = {
name: "Tạo mã QR",
description: "Tạo mã QR có kiểu dáng với màu sắc, hoa văn và logo tùy chỉnh",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "Đọc mã vạch",
description: "Quét hình ảnh để tìm mã QR, mã vạch và mã 2D",
@@ -1009,6 +1013,30 @@ export const vi: TranslationKeys = {
submit: "Tạo mã QR",
download: "Tải xuống mã QR",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "Quét mã vạch",
submitBatch: "Quét ({count} tệp)",
+28
View File
@@ -177,6 +177,10 @@ export const zhCN: TranslationKeys = {
name: "QR 码生成器",
description: "生成自定义颜色、图案和 Logo 的 QR 码",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "条码识别",
description: "扫描图片中的 QR 码、条形码和二维码",
@@ -944,6 +948,30 @@ export const zhCN: TranslationKeys = {
submit: "生成 QR 码",
download: "下载 QR 码",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "扫描条码",
submitBatch: "扫描({count} 个文件)",
+28
View File
@@ -176,6 +176,10 @@ export const zhTW: TranslationKeys = {
name: "QR碼產生器",
description: "產生自訂色彩、圖案和Logo的QR碼",
},
"html-to-image": {
name: "HTML to Image",
description: "Capture webpages as high-quality images",
},
"barcode-read": {
name: "條碼讀取器",
description: "掃描影像中的QR碼、條碼和二維碼",
@@ -942,6 +946,30 @@ export const zhTW: TranslationKeys = {
submit: "產生QR碼",
download: "下載QR碼",
},
"html-to-image": {
url: "URL",
urlPlaceholder: "https://example.com",
format: "Output Format",
quality: "Quality",
devicePreset: "Device",
viewportWidth: "Width",
viewportHeight: "Height",
fullPage: "Full Page",
submit: "Capture",
download: "Download Screenshot",
capturing: "Capturing webpage...",
errorTimeout: "Page took too long to load",
errorBlocked: "This URL cannot be captured",
errorUnavailable: "Screenshot service is not available",
errorFailed: "Failed to capture the page",
placeholder: "Enter a URL and click Capture",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
custom: "Custom",
},
},
"barcode-read": {
submit: "掃描條碼",
submitBatch: "掃描({count}個檔案)",