2026-05-15 17:02:49 +08:00
import type { TranslationKeys } from "./en.js" ;
export const it : TranslationKeys = {
common : {
upload : "Carica dal computer" ,
process : "Elabora" ,
download : "Scarica" ,
cancel : "Annulla" ,
save : "Salva" ,
delete : "Elimina" ,
settings : "Impostazioni" ,
search : "Cerca strumenti..." ,
dropFiles : "Trascina i file qui o fai clic sul pulsante di caricamento" ,
loading : "Caricamento..." ,
error : "Si e verificato un errore" ,
confirm : "Conferma" ,
close : "Chiudi" ,
back : "Indietro" ,
next : "Avanti" ,
clear : "Cancella" ,
copy : "Copia" ,
copied : "Copiato!" ,
noResults : "Nessun risultato trovato" ,
showLess : "Mostra meno" ,
showMore : "Mostra altri {count}" ,
experimental : "Sperimentale" ,
enabled : "Attivato" ,
disabled : "Disattivato" ,
rename : "Rinomina" ,
edit : "Modifica" ,
actions : "Azioni" ,
create : "Crea" ,
or : "o" ,
2026-06-04 21:44:56 +08:00
goHome : "Vai alla Home" ,
2026-05-15 17:02:49 +08:00
somethingWentWrong : "Qualcosa e andato storto" ,
unexpectedError : "Si e verificato un errore imprevisto." ,
retry : "Riprova" ,
privacyPolicy : "Informativa sulla privacy" ,
2026-06-08 14:44:16 +08:00
pageNotFound : "Pagina non trovata" ,
pageNotFoundDescription : "La pagina che stai cercando non esiste o e stata spostata." ,
2026-06-06 20:47:08 +08:00
},
2026-05-15 17:02:49 +08:00
categories : {
essentials : "Essenziali" ,
optimization : "Ottimizzazione" ,
adjustments : "Regolazioni" ,
watermark : "Filigrana e sovrapposizione" ,
utilities : "Utilita" ,
layout : "Layout e composizione" ,
format : "Formato e conversione" ,
2026-06-13 10:18:49 +08:00
video : "Video" ,
audio : "Audio" ,
documents : "PDF & Documents" ,
data : "Data Files" ,
2026-06-04 21:44:56 +08:00
ai : "Strumenti IA" ,
2026-05-15 17:02:49 +08:00
},
2026-06-13 10:18:39 +08:00
modalities : {
image : "Image" ,
video : "Video" ,
audio : "Audio" ,
documentsAndFiles : "Documents & Files" ,
},
2026-05-15 17:02:49 +08:00
tools : {
resize : {
name : "Ridimensiona" ,
description : "Ridimensiona per pixel, percentuale o preset per social media" ,
},
crop : {
name : "Ritaglia" ,
description : "Ritaglio libero, rapporti d'aspetto preimpostati, ritaglio a forma" ,
},
rotate : {
name : "Ruota e capovolgi" ,
description : "Ruota, capovolgi e raddrizza le immagini" ,
},
convert : { name : "Converti" , description : "Converti tra formati di immagine" },
compress : {
name : "Comprimi" ,
description : "Riduci la dimensione del file per qualita o dimensione obiettivo" ,
},
"optimize-for-web" : {
name : "Ottimizza per il web" ,
description :
"Ottimizza le immagini per il web con conversione del formato, controllo della qualita e anteprima in tempo reale" ,
},
"strip-metadata" : {
name : "Rimuovi metadati" ,
description : "Rimuovi EXIF, GPS e informazioni della fotocamera" ,
},
"edit-metadata" : {
name : "Modifica metadati" ,
description : "Modifica EXIF, IPTC, XMP, GPS, parole chiave e date" ,
},
"bulk-rename" : {
name : "Rinomina in blocco" ,
description : "Rinomina piu file con modelli" ,
},
"image-to-pdf" : {
name : "Immagine a PDF" ,
description : "Combina immagini in un documento PDF" ,
},
"pdf-to-image" : {
name : "PDF a immagine" ,
description : "Converti le pagine PDF in immagini" ,
},
favicon : {
name : "Generatore di Favicon" ,
description : "Genera tutte le dimensioni di favicon e icone dell'app" ,
},
"adjust-colors" : {
name : "Regola colori" ,
description :
"Luminosita, contrasto, esposizione, saturazione, temperatura, nitidezza ed effetti" ,
},
sharpening : {
name : "Nitidezza" ,
description : "Nitidezza adattiva, maschera di contrasto e passa-alto con preset" ,
},
"replace-color" : {
name : "Sostituisci e inverti colore" ,
description : "Sostituisci colori specifici o inverti" ,
},
"color-blindness" : {
name : "Simulazione daltonismo" ,
description :
"Simula come appaiono le immagini con diversi tipi di deficit della visione dei colori" ,
},
"remove-background" : {
name : "Rimuovi sfondo" ,
2026-06-04 21:44:56 +08:00
description : "Rimozione dello sfondo con IA" ,
2026-05-15 17:02:49 +08:00
},
upscale : {
name : "Ingrandimento immagine" ,
2026-06-04 21:44:56 +08:00
description : "Miglioramento con super-risoluzione IA" ,
2026-05-15 17:02:49 +08:00
},
"erase-object" : {
name : "Cancella oggetti" ,
2026-06-04 21:44:56 +08:00
description : "Rimuovi oggetti indesiderati con l'IA" ,
2026-05-15 17:02:49 +08:00
},
ocr : {
name : "OCR / Estrazione testo" ,
2026-06-04 21:44:56 +08:00
description : "Estrai testo dalle immagini con precisione basata sull'IA" ,
2026-05-15 17:02:49 +08:00
},
"blur-faces" : {
name : "Sfocatura volti / dati sensibili" ,
description : "Rileva e sfoca automaticamente volti e informazioni sensibili" ,
},
"enhance-faces" : {
name : "Miglioramento volti" ,
2026-06-04 21:44:56 +08:00
description : "Restaura e migliora i volti con l'IA" ,
2026-05-15 17:02:49 +08:00
},
"smart-crop" : {
name : "Ritaglio intelligente" ,
description : "Ritaglio intelligente per soggetto, volto o bordi" ,
},
"image-enhancement" : {
name : "Miglioramento immagine" ,
description :
"Miglioramento automatico con un clic: esposizione, contrasto, colore e nitidezza intelligenti" ,
},
"noise-removal" : {
name : "Rimozione rumore" ,
2026-06-04 21:44:56 +08:00
description : "Rimozione del rumore e della grana con IA" ,
2026-05-15 17:02:49 +08:00
},
"red-eye-removal" : {
name : "Rimozione occhi rossi" ,
2026-06-04 21:44:56 +08:00
description : "Rilevamento e correzione degli occhi rossi con IA per foto con flash" ,
2026-05-15 17:02:49 +08:00
},
"restore-photo" : {
name : "Restauro fotografico" ,
2026-06-04 21:44:56 +08:00
description : "Ripara graffi, strappi e danni nelle vecchie foto con l'IA" ,
2026-05-15 17:02:49 +08:00
},
"content-aware-resize" : {
name : "Ridimensionamento intelligente" ,
description :
"Ridimensiona le immagini in modo intelligente preservando il contenuto importante" ,
},
"ai-canvas-expand" : {
2026-06-04 21:44:56 +08:00
name : "Espansione canvas IA" ,
description : "Espandi il canvas con riempimento generato dall'IA" ,
2026-05-15 17:02:49 +08:00
},
colorize : {
2026-06-04 21:44:56 +08:00
name : "Colorizzazione IA" ,
description : "Converti le foto in bianco e nero a colori usando modelli di deep learning IA" ,
2026-05-15 17:02:49 +08:00
},
"passport-photo" : {
name : "Foto tessera" ,
description :
"Crea foto per passaporto, visto e documenti d'identita conformi ai requisiti ufficiali con rilevamento automatico del volto" ,
},
"transparency-fixer" : {
name : "Correttore trasparenza PNG" ,
description : "Correggi PNG con falsa trasparenza in un clic" ,
},
"watermark-text" : {
name : "Filigrana testo" ,
description : "Aggiungi una filigrana di testo in sovrapposizione" ,
},
"watermark-image" : {
name : "Filigrana immagine" ,
description : "Sovrapponi un logo come filigrana" ,
},
"text-overlay" : {
name : "Testo in sovrapposizione" ,
description : "Aggiungi testo stilizzato alle immagini" ,
},
compose : {
name : "Composizione immagine" ,
description : "Sovrapponi immagini con posizione e opacita" ,
},
"meme-generator" : {
name : "Generatore di Meme" ,
description :
"Crea meme con modelli popolari o le tue immagini. Testo classico stile Impact con caratteri, colori e posizionamento personalizzabili." ,
},
info : {
name : "Info immagine" ,
description : "Visualizza tutti i metadati e le proprieta dell'immagine" ,
},
compare : {
name : "Confronta immagini" ,
description : "Confronto affiancato di due immagini" ,
},
"find-duplicates" : {
name : "Trova duplicati" ,
description : "Rileva immagini duplicate e quasi duplicate" ,
},
"color-palette" : {
name : "Palette colori" ,
description : "Estrai i colori dominanti da un'immagine" ,
},
"qr-generate" : {
name : "Generatore codici QR" ,
description : "Genera codici QR stilizzati con colori, motivi e loghi personalizzati" ,
},
2026-06-06 20:47:08 +08:00
"html-to-image" : {
2026-06-08 14:44:16 +08:00
name : "HTML in Immagine" ,
description : "Cattura pagine web come immagini di alta qualita" ,
2026-06-06 20:47:08 +08:00
},
2026-05-15 17:02:49 +08:00
"barcode-read" : {
name : "Lettore codici a barre" ,
description : "Scansiona immagini alla ricerca di codici QR, codici a barre e codici 2D" ,
},
collage : {
name : "Collage / Griglia" ,
description : "Combina immagini in bellissimi collage con oltre 25 modelli" ,
},
stitch : {
name : "Unisci / Combina" ,
description : "Unisci immagini affiancate, impilate o in griglia" ,
},
split : {
name : "Divisione immagine" ,
description :
"Dividi immagini in griglia o per dimensione in pixel con anteprima in tempo reale" ,
},
border : {
name : "Bordo e cornice" ,
description : "Aggiungi bordi, spaziatura, angoli arrotondati e ombre con preset in un clic" ,
},
beautify : {
name : "Abbellisci screenshot" ,
description :
"Aggiungi sfondi sfumati, cornici per dispositivi, ombre e dimensioni per social media agli screenshot" ,
},
"svg-to-raster" : {
name : "SVG a raster" ,
description :
"Converti SVG in PNG, JPEG, WebP, AVIF, TIFF, GIF o HEIF a scala e DPI personalizzati" ,
},
vectorize : {
name : "Immagine a SVG" ,
description : "Converti immagini in grafica vettoriale scalabile" ,
},
"gif-tools" : {
name : "Strumenti GIF" ,
description :
"Ridimensiona, ottimizza, cambia velocita, inverti, estrai fotogrammi e ruota GIF animate" ,
},
"image-to-base64" : {
name : "Immagine a Base64" ,
description : "Converti immagini in stringhe Base64 per incorporarle in HTML, CSS e altro" ,
},
2026-06-13 10:18:49 +08:00
"convert-video" : {
name : "Convert Video" ,
description : "Convert videos between MP4, MOV, and WebM" ,
},
"compress-video" : {
name : "Compress Video" ,
description : "Shrink video file size with quality control" ,
},
"trim-video" : {
name : "Trim Video" ,
description : "Cut a clip out of a video" ,
},
"mute-video" : {
name : "Mute Video" ,
description : "Remove the audio track from a video" ,
},
"video-to-gif" : {
name : "Video to GIF" ,
description : "Turn a video clip into an animated GIF" ,
},
2026-06-13 10:19:00 +08:00
"resize-video" : {
name : "Resize Video" ,
description : "Scale a video to a new resolution or preset size" ,
},
"crop-video" : {
name : "Crop Video" ,
description : "Crop a region out of a video" ,
},
"rotate-video" : {
name : "Rotate Video" ,
description : "Rotate or flip a video" ,
},
"change-fps" : {
name : "Change FPS" ,
description : "Change the frame rate of a video" ,
},
"video-color" : {
name : "Video Color" ,
description : "Adjust brightness, contrast, saturation, and gamma" ,
},
"video-speed" : {
name : "Video Speed" ,
description : "Speed up or slow down a video" ,
},
"reverse-video" : {
name : "Reverse Video" ,
description : "Play a video clip backwards" ,
},
"video-loudnorm" : {
name : "Normalize Audio" ,
description : "Normalize video audio volume to broadcast standard" ,
},
"aspect-pad" : {
name : "Aspect Pad" ,
description : "Add solid-color bars to fit a target aspect ratio" ,
},
"blur-pad" : {
name : "Blur Pad" ,
description : "Fill bars with a blurred copy of the video" ,
},
"watermark-video" : {
name : "Watermark Video" ,
description : "Burn a text watermark onto video frames" ,
},
"stabilize-video" : {
name : "Stabilize Video" ,
description : "Reduce camera shake with two-pass stabilization" ,
},
"gif-to-video" : {
name : "GIF to Video" ,
description : "Convert an animated GIF into an MP4 or WebM video" ,
},
"video-to-webp" : {
name : "Video to WebP" ,
description : "Convert a video clip into an animated WebP image" ,
},
"video-to-frames" : {
name : "Video to Frames" ,
description : "Extract frames from a video as a ZIP of images" ,
},
"merge-videos" : {
name : "Merge Videos" ,
description : "Join multiple video clips into one file" ,
},
"replace-audio" : {
name : "Replace Audio" ,
description : "Swap the audio track of a video with another file" ,
},
"burn-subtitles" : {
name : "Burn Subtitles" ,
description : "Permanently render subtitles onto video frames" ,
},
"embed-subtitles" : {
name : "Embed Subtitles" ,
description : "Mux a subtitle track into the video container" ,
},
"extract-subtitles" : {
name : "Extract Subtitles" ,
description : "Pull the subtitle track out of a video as an SRT file" ,
},
"images-to-video" : {
name : "Images to Video" ,
description : "Turn a set of images into a slideshow video" ,
},
"video-metadata" : {
name : "Clean Video Metadata" ,
description : "Strip metadata from a video and report what was found" ,
},
2026-06-13 10:18:49 +08:00
"convert-audio" : {
name : "Convert Audio" ,
description : "Convert audio between MP3, WAV, OGG, and more" ,
},
"trim-audio" : {
name : "Trim Audio" ,
description : "Cut a section out of an audio file" ,
},
"extract-audio" : {
name : "Extract Audio" ,
description : "Pull the audio track out of a video" ,
},
2026-06-13 10:19:06 +08:00
"volume-adjust" : {
name : "Volume Adjust" ,
description : "Increase or decrease audio volume by a fixed gain" ,
},
"normalize-audio" : {
name : "Normalize Audio" ,
description : "Even out loudness to broadcast standard levels" ,
},
"fade-audio" : {
name : "Fade Audio" ,
description : "Add fade-in and fade-out effects to audio" ,
},
"reverse-audio" : {
name : "Reverse Audio" ,
description : "Play audio backwards" ,
},
"audio-speed" : {
name : "Audio Speed" ,
description : "Speed up or slow down audio playback" ,
},
"pitch-shift" : {
name : "Pitch Shift" ,
description : "Raise or lower pitch by semitones without changing speed" ,
},
"audio-channels" : {
name : "Audio Channels" ,
description : "Convert between mono, stereo, or swap left and right channels" ,
},
"silence-removal" : {
name : "Silence Removal" ,
description : "Strip silent sections from audio" ,
},
"noise-reduction" : {
name : "Noise Reduction" ,
description : "Reduce background noise with FFT-based denoising" ,
},
"merge-audio" : {
name : "Merge Audio" ,
description : "Combine multiple audio files into one" ,
},
"split-audio" : {
name : "Split Audio" ,
description : "Split audio by time, equal parts, or silence detection" ,
},
"ringtone-maker" : {
name : "Ringtone Maker" ,
description : "Create a ringtone clip from any audio file" ,
},
"waveform-image" : {
name : "Waveform Image" ,
description : "Generate a waveform visualization as a PNG image" ,
},
"audio-metadata" : {
name : "Audio Metadata" ,
description : "View, edit, or strip audio tags (ID3)" ,
},
2026-06-13 10:18:49 +08:00
"merge-pdf" : {
name : "Merge PDFs" ,
description : "Combine multiple PDFs into one" ,
},
"split-pdf" : {
name : "Split PDF" ,
description : "Extract pages or split into parts" ,
},
"compress-pdf" : {
name : "Compress PDF" ,
description : "Shrink PDF file size" ,
},
"rotate-pdf" : {
name : "Rotate PDF" ,
description : "Rotate pages in a PDF" ,
},
2026-06-13 10:19:11 +08:00
"convert-document" : {
name : "Convert Document" ,
description : "Convert between Word, OpenDocument, RTF, and plain text formats" ,
},
"convert-presentation" : {
name : "Convert Presentation" ,
description : "Convert between PowerPoint and OpenDocument presentation formats" ,
},
"convert-spreadsheet" : {
name : "Convert Spreadsheet" ,
description :
"Convert between Excel, OpenDocument, and CSV formats. Multi-sheet workbooks export the first sheet to CSV." ,
},
"excel-to-pdf" : {
name : "Excel to PDF" ,
description : "Convert spreadsheets to PDF. Wide sheets may paginate across multiple pages." ,
},
2026-06-13 10:18:49 +08:00
"word-to-pdf" : {
name : "Word to PDF" ,
description : "Convert Word documents to PDF" ,
},
2026-06-13 10:18:55 +08:00
"extract-pages" : {
name : "Extract Pages" ,
description : "Pull selected pages into a new PDF" ,
},
"remove-pages" : {
name : "Remove Pages" ,
description : "Delete specific pages from a PDF" ,
},
"organize-pdf" : {
name : "Organize PDF" ,
description : "Reorder pages with an explicit page order" ,
},
"protect-pdf" : {
name : "Protect PDF" ,
description : "Add password protection (AES-256 encryption)" ,
},
"unlock-pdf" : {
name : "Unlock PDF" ,
description : "Remove password protection from a PDF" ,
},
"repair-pdf" : {
name : "Repair PDF" ,
description : "Attempt to repair a damaged or corrupted PDF" ,
},
"linearize-pdf" : {
name : "Web-Optimize PDF" ,
description : "Linearize a PDF for fast web viewing" ,
},
"grayscale-pdf" : {
name : "Grayscale PDF" ,
description : "Convert all colors to grayscale" ,
},
"pdfa-convert" : {
name : "PDF/A Convert" ,
description : "Convert to archival PDF/A-2" ,
},
"crop-pdf" : {
name : "Crop PDF" ,
description : "Crop all pages with a uniform margin" ,
},
"nup-pdf" : {
name : "N-up PDF" ,
description : "Arrange multiple pages per sheet" ,
},
"booklet-pdf" : {
name : "Booklet PDF" ,
description : "Arrange pages for folding into a booklet" ,
},
"watermark-pdf" : {
name : "Watermark PDF" ,
description : "Add a text watermark to every page" ,
},
"pdf-page-numbers" : {
name : "PDF Page Numbers" ,
description : "Add page numbers to every page" ,
},
"flatten-pdf" : {
name : "Flatten PDF" ,
description : "Bake forms and annotations into page content" ,
},
"redact-pdf" : {
name : "Redact PDF" ,
description : "Permanently remove text occurrences (verified true redaction)" ,
},
"pdf-to-text" : {
name : "PDF to Text" ,
description : "Extract plain text from a PDF" ,
},
"pdf-to-word" : {
name : "PDF to Word" ,
description : "Best for text-based PDFs; scanned pages need OCR" ,
},
"pdf-metadata" : {
name : "PDF Metadata" ,
description : "Read and write PDF document metadata" ,
},
2026-06-13 10:19:11 +08:00
"powerpoint-to-pdf" : {
name : "PowerPoint to PDF" ,
description : "Convert presentations to PDF" ,
},
2026-06-13 10:18:55 +08:00
"html-to-pdf" : {
name : "HTML to PDF" ,
description : "Convert an HTML file to PDF. Remote resources are disabled for privacy." ,
},
2026-06-13 10:19:11 +08:00
"markdown-to-docx" : {
name : "Markdown to Word" ,
description : "Convert a Markdown file to a Word document (DOCX)" ,
},
"markdown-to-html" : {
name : "Markdown to HTML" ,
description :
"Convert a Markdown file to a standalone HTML page. Remote images in the source are left as-is in the output." ,
},
2026-06-13 10:18:55 +08:00
"markdown-to-pdf" : {
name : "Markdown to PDF" ,
description :
"Convert a Markdown file to a styled PDF. Remote resources are disabled for privacy." ,
},
2026-06-13 10:19:11 +08:00
"epub-convert" : {
name : "Convert EPUB" ,
description :
"Convert an EPUB to PDF, DOCX, HTML, or Markdown. Remote resources inside the book are not fetched." ,
},
"to-epub" : {
name : "Convert to EPUB" ,
description : "Convert Word, Markdown, HTML, or plain text files to EPUB" ,
},
2026-06-13 10:18:49 +08:00
"csv-excel" : {
name : "CSV to Excel" ,
description : "Convert between CSV and Excel (XLSX), both directions" ,
},
"csv-json" : {
name : "CSV to JSON" ,
description : "Convert between CSV and JSON, both directions" ,
},
"json-xml" : {
name : "JSON to XML" ,
description : "Convert between JSON and XML, both directions" ,
},
"split-csv" : {
name : "Split CSV" ,
description : "Split a CSV into smaller files by row count" ,
},
2026-06-13 10:19:11 +08:00
"merge-csvs" : {
name : "Merge CSVs" ,
description : "Combine multiple CSV or TSV files with matching columns into one" ,
},
"yaml-json" : {
name : "YAML / JSON" ,
description : "Convert between YAML and JSON, both directions" ,
},
"xml-to-csv" : {
name : "XML to CSV" ,
description : "Extract repeating elements from XML into a CSV table" ,
},
"create-zip" : {
name : "Create ZIP" ,
description : "Bundle multiple files into a single ZIP archive" ,
},
"extract-zip" : {
name : "Extract ZIP" ,
description :
"Safely extract files from a ZIP archive with bomb protection. Single-file archives return the file directly." ,
},
2026-05-15 17:02:49 +08:00
pipeline : {
name : "Costruttore di Pipeline" ,
description : "Concatena piu strumenti in un flusso di lavoro" ,
},
2026-06-13 10:17:13 +08:00
processing : { canceled : "Processing canceled" },
2026-06-13 10:18:39 +08:00
mediaPlayer : {
unsupported : "Your browser does not support this media format." ,
},
documentView : {
loadFailed : "Failed to load document." ,
previousPage : "Previous page" ,
nextPage : "Next page" ,
},
2026-05-15 17:02:49 +08:00
},
toolSettings : {
compress : {
compressionMode : "Modalita di compressione" ,
targetSize : "Dimensione obiettivo" ,
quality : "Qualita" ,
smallestFile : "File piu piccolo" ,
bestQuality : "Qualita migliore" ,
submit : "Comprimi" ,
submitBatch : "Comprimi ({count} file)" ,
progressLabel : "Compressione in corso" ,
original : "Originale: {size} KB" ,
processed : "Elaborato: {size} KB" ,
saved : "Risparmiato: {percent}%" ,
},
resize : {
customSize : "Dimensione personalizzata" ,
scale : "Scala" ,
presets : "Preset" ,
contentAware : "Consapevole del contenuto" ,
widthPx : "Larghezza (px)" ,
heightPx : "Altezza (px)" ,
fitMode : "Modalita di adattamento" ,
cropToFit : "Ritaglia per adattare" ,
fitInside : "Adatta all'interno" ,
stretch : "Allunga" ,
limitToOriginalSize : "Limita alla dimensione originale" ,
limitToOriginalSizeHint :
"Se l'immagine e gia piu piccola dell'obiettivo, viene mantenuta cosi com'e invece di essere ingrandita" ,
scalePercent : "Scala (%)" ,
resizeToSquare : "Ridimensiona a quadrato" ,
protectFaces : "Proteggi volti" ,
smoothing : "Levigatura" ,
edgeSensitivity : "Sensibilita dei bordi" ,
submit : "Ridimensiona" ,
submitBatch : "Ridimensiona ({count} file)" ,
progressLabel : "Ridimensionamento in corso" ,
},
crop : {
aspectRatio : "Rapporto d'aspetto" ,
custom : "Personalizzato" ,
positionAndSize : "Posizione e dimensione" ,
ruleOfThirds : "Regola dei terzi" ,
leftOffsetPx : "Offset sinistro (px)" ,
topOffsetPx : "Offset superiore (px)" ,
submit : "Ritaglia" ,
submitBatch : "Ritaglia ({count} file)" ,
progressLabel : "Ritaglio in corso" ,
},
rotate : {
rotate : "Ruota" ,
angle : "Angolo" ,
straighten : "Raddrizza" ,
flip : "Capovolgi" ,
horizontal : "Orizzontale" ,
vertical : "Verticale" ,
resetAllChanges : "Ripristina tutte le modifiche" ,
submit : "Applica" ,
submitBatch : "Applica ({count} file)" ,
progressLabel : "Applicazione in corso" ,
},
convert : {
targetFormat : "Formato di destinazione" ,
sourceFormat : "Formato di origine" ,
quality : "Qualita" ,
submit : "Converti" ,
submitBatch : "Converti ({count} file)" ,
progressLabel : "Conversione in corso" ,
},
"optimize-for-web" : {
outputFormat : "Formato di output" ,
quality : "Qualita" ,
smallestFile : "File piu piccolo" ,
bestQuality : "Qualita migliore" ,
maxDimensions : "Dimensioni massime" ,
maxWidth : "Larghezza massima" ,
maxHeight : "Altezza massima" ,
stripMetadata : "Rimuovi metadati" ,
sizeComparison : "Confronto dimensioni" ,
optimized : "Ottimizzato:" ,
smaller : "{percent}% piu piccolo" ,
larger : "{percent}% piu grande" ,
submit : "Elabora e scarica" ,
submitBatch : "Elabora e scarica ({count} file)" ,
progressLabel : "Ottimizzazione in corso" ,
},
"strip-metadata" : {
currentMetadata : "Metadati attuali" ,
readingMetadata : "Lettura metadati..." ,
noMetadataFound : "Nessun metadato trovato in questa immagine." ,
removeAllMetadata : "Rimuovi tutti i metadati" ,
selectSpecific : "Oppure seleziona metadati specifici:" ,
stripExif : "Rimuovi EXIF (info fotocamera, data, esposizione)" ,
stripGps : "Rimuovi GPS (dati di posizione)" ,
stripIcc : "Rimuovi ICC (profilo colore)" ,
stripXmp : "Rimuovi XMP (metadati estensibili)" ,
locationFound : "posizione trovata" ,
locationWarning :
"Questa immagine contiene la tua posizione precisa. Considera di rimuovere i dati GPS prima di condividerla." ,
metadataSections : "{count} sezione di metadati trovata" ,
metadataSectionsPlural : "{count} sezioni di metadati trovate" ,
metadataRemoved : "Metadati rimossi: {size} KB" ,
submit : "Rimuovi metadati" ,
progressLabel : "Rimozione metadati" ,
},
"edit-metadata" : {
readingMetadata : "Lettura metadati..." ,
couldNotReadMetadata : "Impossibile leggere i metadati: i campi inizieranno vuoti." ,
basicInfo : "Informazioni di base" ,
description : "Descrizione" ,
artist : "Artista" ,
copyright : "Copyright" ,
software : "Software" ,
iptc : "IPTC" ,
title : "Titolo" ,
headline : "Titolo principale" ,
city : "Citta" ,
stateProvince : "Stato/Provincia" ,
country : "Paese" ,
dateAndTime : "Data e ora" ,
editDates : "Modifica date" ,
shiftAllDates : "Sposta tutte le date" ,
dateModified : "Data di modifica" ,
dateTaken : "Data dello scatto" ,
shiftHint : "Sposta tutti i campi data di un offset (utile per correzioni del fuso orario)" ,
direction : "Direzione" ,
forward : "+ Avanti" ,
backward : "- Indietro" ,
hoursMinutes : "Ore:Minuti" ,
locationGps : "Posizione (GPS)" ,
locationDataFound : "Dati di posizione trovati" ,
noGpsData : "Nessun dato GPS. Aggiungi le coordinate qui sotto." ,
latitude : "Latitudine" ,
longitude : "Longitudine" ,
altitudeMeters : "Altitudine (metri)" ,
removeAllGpsData : "Rimuovi tutti i dati GPS" ,
keywords : "Parole chiave" ,
addKeywordPlaceholder : "Aggiungi parola chiave e premi Invio" ,
addToExisting : "Aggiungi alle esistenti" ,
replaceAll : "Sostituisci tutte" ,
allMetadata : "Tutti i metadati" ,
templates : "Modelli" ,
templateNamePlaceholder : "Nome del modello" ,
uploadPrompt : "Carica un'immagine per modificarne i metadati." ,
changes : "{count} modifiche:" ,
modified : "{count} modificati" ,
removed : "{count} rimossi" ,
gpsCleared : "GPS cancellato" ,
gpsAdded : "GPS aggiunto" ,
datesShifted : "date spostate" ,
submit : "Applica metadati" ,
progressLabel : "Scrittura metadati" ,
},
"bulk-rename" : {
pattern : "Modello" ,
patternHint : "Variabili: {{index}}, {{padded}}, {{original}}" ,
startIndex : "Indice iniziale" ,
preview : "Anteprima" ,
andMore : "... e altri {count}" ,
renaming : "Rinomina in corso..." ,
submit : "Rinomina {count} file" ,
zipDownloaded : "ZIP scaricato con successo" ,
},
"image-to-pdf" : {
imageCount : "{count} immagine verra convertita in {mode}" ,
imageCountPlural : "{count} immagini verranno convertite in {mode}" ,
singlePdfMode : "un unico PDF, un'immagine per pagina" ,
separatePdfMode : "PDF separati, uno per immagine" ,
combineAllImages : "Combina tutte le immagini in un PDF" ,
pageSize : "Dimensione pagina" ,
orientation : "Orientamento" ,
portrait : "Verticale" ,
landscape : "Orizzontale" ,
margin : "Margine" ,
targetSizeLabel : "Dimensione file obiettivo (opzionale)" ,
targetSizePlaceholder : "es. 2" ,
targetSizeHint : "Lascia vuoto per la massima qualita" ,
targetSizeMet : "Obiettivo raggiunto" ,
targetSizeNotMet : "Impossibile raggiungere l'obiettivo. File compresso alla qualita minima." ,
targetSizeTooSmall : "L'obiettivo deve essere almeno 50KB" ,
jpegQualityLabel : "Qualita JPEG utilizzata" ,
noImage : "Nessuna immagine" ,
submitCollate : "Crea PDF ({count} pagine)" ,
submitSeparate : "Crea {count} PDF" ,
downloadPdf : "Scarica PDF" ,
downloadZip : "Scarica ZIP" ,
progressLabel : "Creazione PDF" ,
uploadingImages : "Caricamento immagini..." ,
processingPages : "Elaborazione di {count} pagine..." ,
},
"pdf-to-image" : {
dropPdf : "Trascina un PDF qui o fai clic per selezionare" ,
readingPdf : "Lettura PDF..." ,
pageCount : "{count} pagina" ,
pageCountPlural : "{count} pagine" ,
outputFormat : "Formato di output" ,
quality : "Qualita" ,
resolutionDpi : "Risoluzione (DPI)" ,
dpiScreen : "Schermo" ,
dpiStandard : "Standard" ,
dpiPrint : "Stampa" ,
dpiHighQuality : "Alta qualita" ,
colorMode : "Modalita colore" ,
colorModeColor : "Colore" ,
colorModeGrayscale : "Scala di grigi" ,
colorModeBw : "B&N" ,
pages : "Pagine" ,
allPages : "Tutte le pagine" ,
pagesHint : "es. 1-3, 5, 8-10 (il documento ha {count} pagine)" ,
converting : "Conversione in corso..." ,
submit : "Converti {count} pagina" ,
submitPlural : "Converti {count} pagine" ,
downloadAllZip : "Scarica tutto (ZIP)" ,
},
favicon : {
uploadHint :
"Carica immagini quadrate (consigliato 512x512 o superiore) per generare tutte le dimensioni di favicon e icone dell'app." ,
multipleHint : "Ciascuna delle {count} immagini ottiene la propria cartella nel ZIP." ,
generatedSizes : "Dimensioni generate (per immagine)" ,
plusManifest : "+ manifest.json + frammento HTML" ,
submit : "Genera Favicon ({count} immagine)" ,
submitPlural : "Genera Favicon ({count} immagini)" ,
downloadZip : "Scarica ZIP dei Favicon" ,
progressLabel : "Generazione Favicon" ,
},
"adjust-colors" : {
light : "Luce" ,
brightness : "Luminosita" ,
contrast : "Contrasto" ,
exposure : "Esposizione" ,
color : "Colore" ,
saturation : "Saturazione" ,
temperature : "Temperatura" ,
temperatureHint : "freddo / caldo" ,
tint : "Tinta" ,
tintHint : "verde / magenta" ,
hue : "Tonalita" ,
detail : "Dettaglio" ,
sharpness : "Nitidezza" ,
effects : "Effetti" ,
none : "nessuno" ,
grayscale : "scala di grigi" ,
sepia : "seppia" ,
invert : "inverti" ,
colorChannels : "Canali colore" ,
channelModified : "modificato" ,
red : "Rosso" ,
green : "Verde" ,
blue : "Blu" ,
resetAll : "Ripristina tutto" ,
submit : "Applica" ,
submitBatch : "Applica ({count} file)" ,
progressLabel : "Regolazione colori" ,
},
sharpening : {
method : "Metodo" ,
adaptive : "Adattivo" ,
unsharpMask : "Maschera di contrasto" ,
highPass : "Passa-alto" ,
presets : "Preset" ,
textureAmount : "Quantita texture" ,
amount : "Quantita" ,
strength : "Intensita" ,
noiseReduction : "Riduzione rumore" ,
off : "disattivato" ,
lightDenoise : "leggero" ,
mediumDenoise : "medio" ,
strongDenoise : "forte" ,
advancedControls : "Controlli avanzati" ,
radius : "Raggio" ,
flatProtection : "Protezione aree piatte" ,
detailThreshold : "Soglia dettaglio" ,
haloLimitLight : "Limite alone (chiaro)" ,
haloLimitDark : "Limite alone (scuro)" ,
threshold : "Soglia" ,
kernelSize : "Dimensione kernel" ,
submit : "Aumenta nitidezza" ,
submitBatch : "Aumenta nitidezza ({count} file)" ,
progressLabel : "Aumento nitidezza in corso" ,
},
"replace-color" : {
sourceColor : "Colore di origine (da sostituire)" ,
targetColor : "Colore di destinazione (sostituzione)" ,
makeTransparent : "Rendi trasparente invece" ,
tolerance : "Tolleranza" ,
exactMatch : "Corrispondenza esatta" ,
wideRange : "Intervallo ampio" ,
submit : "Sostituisci colore" ,
submitBatch : "Sostituisci colore ({count} file)" ,
progressLabel : "Sostituzione colore" ,
},
"color-blindness" : {
simulationType : "Tipo di simulazione" ,
redGreen : "Rosso-Verde" ,
blueYellow : "Blu-Giallo" ,
monochromatic : "Monocromatico" ,
submit : "Simula" ,
submitBatch : "Simula ({count} file)" ,
progressLabel : "Simulazione daltonismo" ,
},
"remove-background" : {
subject : "Soggetto" ,
people : "Persone" ,
products : "Prodotti" ,
general : "Generale" ,
passportIdPhoto : "Foto tessera / documento" ,
quality : "Qualita" ,
fast : "Veloce" ,
hd : "HD" ,
max : "Max" ,
ultra : "Ultra" ,
background : "Sfondo" ,
transparent : "Trasparente" ,
bgColor : "Colore" ,
gradient : "Sfumatura" ,
image : "Immagine" ,
gradientDirection : "Direzione" ,
chooseBackgroundImage : "Scegli immagine di sfondo" ,
effectsSection : "Effetti" ,
effectsActive : "attivi" ,
blurBackground : "Sfoca sfondo" ,
intensity : "Intensita" ,
addShadow : "Aggiungi ombra" ,
opacity : "Opacita" ,
2026-06-08 14:44:16 +08:00
outputFormat : "Formato di output" ,
edgeSmoothing : "Antialiasing bordi" ,
edgeSmoothingOff : "Disattivato" ,
edgeSmoothingLight : "Leggero" ,
edgeSmoothingMedium : "Intermedio" ,
edgeSmoothingStrong : "Forte" ,
colorDecontamination : "Decontaminazione colore" ,
rendering : "Rendering in corso..." ,
2026-05-15 17:02:49 +08:00
submit : "Rimuovi sfondo" ,
submitBatch : "Rimuovi sfondo ({count} file)" ,
progressLabel : "Rimozione sfondo" ,
},
upscale : {
scaleFactor : "Fattore di scala" ,
quality : "Qualita" ,
enhanceFaces : "Migliora volti" ,
noiseReduction : "Riduzione rumore" ,
noiseReductionHint :
"Leviga grana e rumore. Valori piu alti rimuovono piu rumore ma possono ammorbidire i dettagli." ,
outputFormat : "Formato di output" ,
submit : "Ingrandisci {scale}x" ,
submitBatch : "Ingrandisci {scale}x ({count} file)" ,
progressLabel : "Ingrandimento immagine" ,
progressLabelBatch : "Ingrandimento di {count} immagini" ,
},
"erase-object" : {
brushSize : "Dimensione pennello" ,
fine : "Fine" ,
wide : "Largo" ,
undo : "Annulla" ,
clear : "Cancella" ,
outputFormat : "Formato di output" ,
quality : "Qualita" ,
paintHint : "Dipingi sopra gli oggetti che vuoi rimuovere. Usa Ctrl+Z per annullare." ,
submit : "Cancella oggetto" ,
submitBatch : "Cancella tutti ({count})" ,
progressLabel : "Cancellazione oggetto" ,
},
ocr : {
quality : "Qualita" ,
enhanceBeforeScanning : "Migliora prima della scansione" ,
enhanceHint :
"Raddrizza, migliora il contrasto, rimuove il rumore e ingrandisce automaticamente l'immagine prima della scansione per una migliore precisione." ,
language : "Lingua" ,
autoDetect : "Rilevamento automatico" ,
extractedText : "Testo estratto" ,
noTextDetected : "Nessun testo rilevato in questa immagine" ,
characters : "{count} caratteri" ,
submit : "Estrai testo" ,
submitBatch : "Estrai testo ({count} file)" ,
progressLabel : "Estrazione testo" ,
},
"blur-faces" : {
blurRadius : "Raggio sfocatura" ,
blurLight : "Leggero" ,
blurHeavy : "Forte" ,
detectionSensitivity : "Sensibilita rilevamento" ,
moreFaces : "Piu volti" ,
fewerFaces : "Meno volti" ,
submit : "Sfoca volti" ,
progressLabel : "Sfocatura volti" ,
},
"enhance-faces" : {
quality : "Qualita" ,
enhancementStrength : "Intensita del miglioramento" ,
onlyCenterFace : "Solo il volto centrale" ,
detectionSensitivity : "Sensibilita rilevamento" ,
submit : "Migliora volti" ,
submitBatch : "Migliora volti ({count} file)" ,
progressLabel : "Miglioramento volti" ,
},
"smart-crop" : {
subjectFocus : "Focus sul soggetto" ,
faceFocus : "Focus sul volto" ,
autoTrim : "Ritaglio automatico" ,
customSize : "Dimensione personalizzata" ,
socialPresets : "Preset social media" ,
detectionStrategy : "Strategia di rilevamento" ,
detectionStrategyHint :
"L'attenzione trova la regione visivamente piu rilevante. L'entropia trova l'area con piu dettagli e informazioni." ,
attention : "Attenzione" ,
entropy : "Entropia" ,
padding : "Spaziatura" ,
paddingHint : "Spazio extra attorno all'area di focus" ,
outputQuality : "Qualita di output" ,
outputQualityHint : "Per output JPEG e WebP. PNG e sempre senza perdita." ,
subjectDescription :
"Rileva la regione piu interessante tramite analisi della rilevanza e ritaglia alla dimensione desiderata." ,
framing : "Inquadratura" ,
facePadding : "Spazio attorno al volto" ,
facePaddingHint : "Spazio extra attorno ai volti rilevati" ,
fewerFalsePositives : "Meno falsi positivi" ,
faceDescription :
2026-06-08 14:44:16 +08:00
"Usa il rilevamento facciale IA per mantenere i volti ben inquadrati. Se non vengono rilevati volti, usa il focus sul soggetto." ,
2026-05-15 17:02:49 +08:00
trimTolerance : "Tolleranza" ,
trimDescription :
"Quanto un pixel del bordo puo differire dal colore del bordo ed essere comunque ritagliato. Piu alto = piu aggressivo." ,
padToSquare : "Riempi a quadrato" ,
targetSizePx : "Dimensione obiettivo (px)" ,
padColor : "Colore di riempimento" ,
trimHint :
'Rimuove i bordi di colore uniforme attorno al soggetto. Attiva "Riempi a quadrato" per immagini pronte per l\'e-commerce.' ,
submitSubject : "Ritaglio intelligente" ,
submitFace : "Ritaglio per volto" ,
submitTrim : "Ritaglia bordi" ,
},
imageEnhancement : {
enhancementMode : "Modalita di miglioramento" ,
auto : "Automatico" ,
portrait : "Ritratto" ,
landscape : "Paesaggio" ,
lowLight : "Scarsa luminosita" ,
food : "Cibo" ,
document : "Documento" ,
intensity : "Intensita" ,
2026-06-08 14:44:16 +08:00
deepEnhance : "Miglioramento profondo (IA)" ,
deepEnhanceDescription : "Rimuove rumore e artefatti usando l'IA" ,
2026-05-15 17:02:49 +08:00
deepEnhanceRequires : "Richiede il pacchetto Ingrandimento e miglioramento" ,
analyzingImage : "Analisi immagine..." ,
detectedIssues : "Problemi rilevati" ,
imageLooksGood : "L'immagine sembra buona. Regola con il cursore di intensita." ,
issueUnderexposed : "Bassa esposizione" ,
issueOverexposed : "Sovraesposta" ,
issueLowContrast : "Contrasto piatto" ,
issueColorCast : "Dominante di colore" ,
issueDesaturated : "Desaturata" ,
issueSoftFocus : "Fuoco morbido" ,
issueNoisy : "Rumorosa" ,
submit : "Migliora" ,
submitDeep : "Miglioramento profondo" ,
submitBatch : "Migliora ({count} file)" ,
submitDeepBatch : "Miglioramento profondo ({count} file)" ,
progressLabel : "Miglioramento immagine" ,
progressLabelBatch : "Miglioramento di {count} immagini" ,
},
"noise-removal" : {
denoisingTier : "Livello di riduzione rumore" ,
quick : "Veloce" ,
balanced : "Bilanciato" ,
quality : "Qualita" ,
maximum : "Massimo" ,
quickDesc : "Veloce e leggero" ,
balancedDesc : "Buona qualita, velocita moderata" ,
2026-06-08 14:44:16 +08:00
qualityDesc : "Basato su IA, lento" ,
maximumDesc : "Miglior modello IA, il piu lento" ,
2026-05-15 17:02:49 +08:00
strength : "Intensita" ,
subtle : "Sottile" ,
aggressive : "Aggressivo" ,
detailPreservation : "Preservazione dettagli" ,
smooth : "Morbido" ,
sharp : "Nitido" ,
colorNoise : "Rumore di colore" ,
heavy : "Intenso" ,
outputFormat : "Formato di output" ,
gifAiWarning :
2026-06-08 14:44:16 +08:00
"La riduzione del rumore IA sui file GIF elabora solo il primo fotogramma. Per GIF animate, usa il livello Veloce o Bilanciato." ,
2026-05-15 17:02:49 +08:00
submit : "Rimuovi rumore" ,
submitBatch : "Rimuovi rumore ({count} file)" ,
progressLabel : "Rimozione rumore" ,
progressLabelBatch : "Rimozione rumore da {count} immagini" ,
},
"red-eye-removal" : {
sensitivity : "Sensibilita" ,
strict : "Rigorosa" ,
aggressive : "Aggressiva" ,
correctionStrength : "Intensita correzione" ,
subtle : "Sottile" ,
dark : "Scuro" ,
outputFormat : "Formato di output" ,
quality : "Qualita" ,
submit : "Correggi occhi rossi" ,
submitBatch : "Correggi occhi rossi ({count} file)" ,
progressLabel : "Correzione occhi rossi" ,
progressLabelBatch : "Correzione occhi rossi in {count} immagini" ,
},
"restore-photo" : {
scratchRemoval : "Rimozione graffi" ,
scratchRemovalDesc : "Rileva e ripara graffi, strappi e macchie" ,
faceEnhancement : "Miglioramento volti" ,
2026-06-04 21:44:56 +08:00
faceEnhancementDesc : "Restaura volti degradati con CodeFormer IA" ,
2026-05-15 17:02:49 +08:00
faceFidelity : "Fedelta del volto" ,
enhanced : "Migliorato" ,
faithful : "Fedele" ,
noiseReduction : "Riduzione rumore" ,
noiseReductionDesc : "Rimuovi grana e rumore dalle vecchie foto" ,
denoiseStrength : "Intensita riduzione rumore" ,
autoColorize : "Colorizza automaticamente" ,
2026-06-04 21:44:56 +08:00
autoColorizeDesc : "Aggiungi colore alle foto B&N usando DDColor IA" ,
2026-05-15 17:02:49 +08:00
colorizeStrength : "Intensita colorizzazione" ,
vivid : "Vivido" ,
submit : "Restaura foto" ,
submitBatch : "Restaura foto ({count})" ,
progressLabel : "Restauro foto" ,
progressLabelBatch : "Restauro di {count} foto" ,
},
"content-aware-resize" : {
widthPx : "Larghezza (px)" ,
heightPx : "Altezza (px)" ,
resizeToSquare : "Ridimensiona a quadrato" ,
protectFaces : "Proteggi volti" ,
protectFacesHint :
"Rileva e protegge le aree del volto dalla rimozione delle cuciture tramite rilevamento facciale" ,
smoothing : "Levigatura" ,
edgeSensitivity : "Sensibilita dei bordi" ,
submit : "Ridimensiona" ,
submitBatch : "Ridimensiona ({count} file)" ,
progressLabel : "Ridimensionamento intelligente" ,
},
"ai-canvas-expand" : {
quality : "Qualita" ,
fast : "Veloce" ,
balanced : "Bilanciato" ,
highQuality : "Alta qualita" ,
2026-06-04 21:44:56 +08:00
fastDesc : "Anteprima veloce, meno passaggi IA" ,
2026-05-15 17:02:49 +08:00
balancedDesc : "Buona qualita, velocita moderata" ,
highQualityDesc : "Migliori risultati, piu lento" ,
extendToAspectRatio : "Estendi al rapporto d'aspetto" ,
extendByPixels : "Estendi di (pixel)" ,
top : "Alto" ,
right : "Destra" ,
bottom : "Basso" ,
left : "Sinistra" ,
newSize : "Nuova dimensione: {width} x {height}" ,
submit : "Estendi canvas" ,
submitBatch : "Estendi ({count} file)" ,
progressLabel : "Estensione canvas" ,
},
colorize : {
2026-06-04 21:44:56 +08:00
aiModel : "Modello IA" ,
2026-05-15 17:02:49 +08:00
fast : "Veloce" ,
fastDesc : "Risultati rapidi" ,
balanced : "Bilanciato" ,
balancedDesc : "Il migliore disponibile" ,
best : "Ottimo" ,
bestDesc : "La massima qualita" ,
colorIntensity : "Intensita colore" ,
grayscaleLabel : "Scala di grigi" ,
subtleLabel : "Sottile" ,
naturalLabel : "Naturale" ,
vividLabel : "Vivido" ,
intensityHint : "Valori piu bassi producono colori piu tenui, stile vintage." ,
strength : "Intensita colorizzazione" ,
submit : "Colorizza" ,
submitBatch : "Colorizza ({count} file)" ,
progressLabel : "Colorizzazione in corso" ,
progressLabelBatch : "Colorizzazione di {count} immagini" ,
},
"passport-photo" : {
country : "Paese" ,
searchCountries : "Cerca paesi..." ,
noCountriesFound : "Nessun paese trovato" ,
customDimensions : "Dimensioni personalizzate" ,
documentType : "Tipo di documento" ,
dimensionsMm : "Dimensioni (mm)" ,
dpi : "DPI" ,
pixelsPerInch : "pixel per pollice" ,
backgroundColor : "Colore di sfondo" ,
maxFileSize : "Dimensione massima file" ,
noLimit : "Nessun limite" ,
customKb : "Personalizzato KB..." ,
uploadPortrait : "Carica una foto tipo ritratto" ,
uploadHint :
"Trascina o carica un'immagine nel pannello sinistro per visualizzare l'anteprima della foto tessera" ,
analyzingPhoto : "Analisi foto" ,
detectingLandmarks : "Rilevamento punti del volto e rimozione sfondo..." ,
generatePassportPhoto : "Genera foto tessera" ,
generating : "Generazione..." ,
downloadPhoto : "Scarica foto" ,
faceCentered : "Volto centrato" ,
headLevel : "Testa dritta" ,
lookingStraight : "Sguardo dritto" ,
faceSize : "Dimensione del volto" ,
whatYouSee : "Quello che vedi e quello che scarichi" ,
dragToAdjust : "Trascina per regolare" ,
scrollToZoom : "Scorri per ingrandire" ,
photoGenerated : "Foto generata. Scaricala dal pannello sinistro." ,
},
"transparency-fixer" : {
description : "Carica un PNG con sfondo trasparente falso e lo correggiamo in un clic." ,
removeWatermark : "Rimuovi filigrana" ,
removeWatermarkHelp : "Rileva e rimuove filigrane semitrasparenti" ,
requiresEraser : "Richiede il pacchetto Cancella oggetti" ,
advanced : "Avanzato" ,
defringe : "Rimuovi alone" ,
outputFormat : "Formato di output" ,
submit : "Correggi trasparenza" ,
submitBatch : "Correggi trasparenza ({count} file)" ,
progressLabel : "Correzione trasparenza" ,
},
"watermark-text" : {
watermarkText : "Testo della filigrana" ,
fontSize : "Dimensione carattere" ,
color : "Colore" ,
opacity : "Opacita" ,
position : "Posizione" ,
rotation : "Rotazione" ,
center : "Centro" ,
topLeft : "In alto a sinistra" ,
topRight : "In alto a destra" ,
bottomLeft : "In basso a sinistra" ,
bottomRight : "In basso a destra" ,
tiled : "A mosaico" ,
submit : "Aggiungi filigrana" ,
submitBatch : "Aggiungi filigrana ({count} file)" ,
progressLabel : "Aggiunta filigrana" ,
},
"watermark-image" : {
uploadWatermark : "Carica immagine filigrana" ,
position : "Posizione" ,
opacity : "Opacita" ,
scale : "Scala" ,
submit : "Applica filigrana" ,
submitBatch : "Applica filigrana ({count} file)" ,
},
"text-overlay" : {
text : "Testo" ,
fontSize : "Dimensione carattere" ,
color : "Colore" ,
position : "Posizione" ,
top : "Alto" ,
center : "Centro" ,
bottom : "Basso" ,
backgroundBox : "Riquadro di sfondo" ,
backgroundColor : "Colore di sfondo" ,
shadow : "Ombra" ,
submit : "Aggiungi testo" ,
submitBatch : "Aggiungi testo ({count} file)" ,
progressLabel : "Aggiunta testo in sovrapposizione" ,
2026-06-08 14:44:16 +08:00
download : "Scarica" ,
defaultText : "Il tuo testo qui" ,
2026-05-15 17:02:49 +08:00
},
compose : {
uploadOverlay : "Carica immagine di sovrapposizione" ,
xPosition : "Posizione X" ,
yPosition : "Posizione Y" ,
opacity : "Opacita" ,
blendMode : "Metodo di fusione" ,
submit : "Componi" ,
},
"meme-generator" : {
selectTemplate : "Seleziona un modello dalla galleria o carica la tua immagine per iniziare." ,
chooseLayout : "Scegli un layout di testo per la tua immagine personalizzata." ,
textContent : "Contenuto del testo" ,
textStyle : "Stile del testo" ,
font : "Carattere" ,
fontSize : "Dimensione carattere" ,
textColor : "Colore del testo" ,
strokeColor : "Colore del contorno" ,
allCaps : "MAIUSCOLE" ,
generate : "Genera Meme" ,
generating : "Generazione..." ,
downloadMeme : "Scarica Meme" ,
backToGallery : "Torna alla galleria" ,
},
info : {
loadingInfo : "Caricamento informazioni..." ,
filename : "Nome file" ,
fileSize : "Dimensione file" ,
dimensions : "Dimensioni" ,
format : "Formato" ,
channels : "Canali" ,
colorSpace : "Spazio colore" ,
density : "Densita" ,
bitDepth : "Profondita di bit" ,
progressive : "Progressivo" ,
pages : "Pagine" ,
hasAlpha : "Canale alfa" ,
hasProfile : "Profilo" ,
hasExif : "EXIF" ,
hasIcc : "ICC" ,
hasXmp : "XMP" ,
2026-06-08 14:44:16 +08:00
readInfo : "Leggi informazioni" ,
reading : "Lettura..." ,
channelStats : "Statistiche canali" ,
yes : "Si" ,
2026-06-07 18:27:09 +08:00
no : "No" ,
2026-06-08 14:44:16 +08:00
na : "N/D" ,
failedToRead : "Impossibile leggere le informazioni" ,
2026-05-15 17:02:49 +08:00
},
compare : {
uploadSecondImage : "Carica seconda immagine" ,
similarity : "Somiglianza: {percent}%" ,
submit : "Confronta" ,
downloadDiff : "Scarica differenza" ,
},
"find-duplicates" : {
preset : "Preset" ,
exact : "Esatto" ,
similar : "Simile" ,
loose : "Ampio" ,
exactDesc : "Copie identiche pixel per pixel, stessa immagine in formati diversi." ,
similarDesc : "Copie ridimensionate, ricompresse o leggermente modificate." ,
looseDesc : "Immagini visivamente correlate, ritagli leggeri, esposizioni diverse." ,
threshold : "Soglia" ,
submit : "Cerca duplicati" ,
scanning : "Scansione..." ,
},
"color-palette" : {
submit : "Estrai palette" ,
extracting : "Estrazione..." ,
dominantColors : "Colori dominanti" ,
clickToCopy : "Fai clic per copiare" ,
},
"qr-generate" : {
contentType : "Tipo di contenuto" ,
url : "URL" ,
text : "Testo" ,
wifi : "WiFi" ,
vcard : "vCard" ,
email : "Email" ,
phone : "Telefono" ,
sms : "SMS" ,
styling : "Stile" ,
dotStyle : "Stile dei punti" ,
cornerSquareStyle : "Stile quadrato d'angolo" ,
cornerDotStyle : "Stile punto d'angolo" ,
foregroundColor : "Colore primo piano" ,
bgColor : "Colore di sfondo" ,
logo : "Logo" ,
downloadFormat : "Formato di download" ,
submit : "Genera codice QR" ,
download : "Scarica codice QR" ,
},
2026-06-06 20:47:08 +08:00
"html-to-image" : {
2026-06-06 21:31:05 +08:00
modeUrl : "URL" ,
2026-06-08 14:44:16 +08:00
modeHtml : "File HTML" ,
htmlFile : "File HTML" ,
2026-06-06 20:47:08 +08:00
url : "URL" ,
2026-06-06 21:29:06 +08:00
urlPlaceholder : "https://snapotter.com" ,
2026-06-08 14:44:16 +08:00
format : "Formato di output" ,
quality : "Qualita" ,
devicePreset : "Dispositivo" ,
viewportWidth : "Larghezza" ,
viewportHeight : "Altezza" ,
fullPage : "Pagina intera" ,
submit : "Cattura" ,
download : "Scarica lo screenshot" ,
capturing : "Acquisizione della pagina web..." ,
errorTimeout : "La pagina ha impiegato troppo tempo a caricarsi" ,
errorBlocked : "Impossibile acquisire questo URL" ,
errorUnavailable : "Il servizio di screenshot non e disponibile" ,
errorFailed : "Impossibile acquisire la pagina" ,
placeholder : "Inserisci un URL e fai clic su Acquisisci" ,
2026-06-06 20:47:08 +08:00
presets : {
desktop : "Desktop" ,
tablet : "Tablet" ,
mobile : "Mobile" ,
2026-06-08 14:44:16 +08:00
custom : "Personalizzato" ,
2026-06-06 20:47:08 +08:00
},
},
2026-05-15 17:02:49 +08:00
"barcode-read" : {
submit : "Scansiona codici a barre" ,
submitBatch : "Scansiona ({count} file)" ,
scanning : "Scansione..." ,
noBarcodesFound : "Nessun codice a barre trovato" ,
barcodesFound : "{count} codice a barre trovato" ,
barcodesFoundPlural : "{count} codici a barre trovati" ,
},
collage : {
template : "Modello" ,
aspectRatio : "Rapporto d'aspetto" ,
gap : "Spaziatura" ,
cornerRadius : "Raggio d'angolo" ,
backgroundColor : "Colore di sfondo" ,
outputFormat : "Formato di output" ,
quality : "Qualita" ,
submit : "Crea collage" ,
downloadCollage : "Scarica collage" ,
},
stitch : {
direction : "Direzione" ,
horizontal : "Orizzontale" ,
vertical : "Verticale" ,
grid : "Griglia" ,
gridColumns : "Colonne griglia" ,
resizeMode : "Modalita ridimensionamento" ,
fit : "Adatta" ,
original : "Originale" ,
stretchMode : "Allunga" ,
cropMode : "Ritaglia" ,
alignment : "Allineamento" ,
start : "Inizio" ,
center : "Centro" ,
end : "Fine" ,
gap : "Spaziatura" ,
border : "Bordo" ,
cornerRadius : "Raggio d'angolo" ,
backgroundColor : "Colore di sfondo" ,
outputFormat : "Formato di output" ,
quality : "Qualita" ,
submit : "Unisci immagini" ,
},
split : {
modeGrid : "Griglia" ,
modeTileSize : "Dimensione tessera" ,
presets : "Preset" ,
columns : "Colonne" ,
rows : "Righe" ,
tileWidth : "Larghezza tessera" ,
tileHeight : "Altezza tessera" ,
outputFormat : "Formato di output" ,
quality : "Qualita" ,
submit : "Dividi immagine" ,
downloadAll : "Scarica tutto (ZIP)" ,
},
border : {
presets : "Preset" ,
borderWidth : "Larghezza bordo" ,
borderColor : "Colore bordo" ,
padding : "Spaziatura" ,
paddingColor : "Colore spaziatura" ,
cornerRadius : "Raggio d'angolo" ,
shadow : "Ombra" ,
shadowBlur : "Sfocatura ombra" ,
shadowOffsetX : "Offset X ombra" ,
shadowOffsetY : "Offset Y ombra" ,
shadowColor : "Colore ombra" ,
shadowOpacity : "Opacita ombra" ,
submit : "Aggiungi bordo" ,
submitBatch : "Aggiungi bordo ({count} file)" ,
progressLabel : "Aggiunta bordo" ,
},
beautify : {
preset : "Preset" ,
backgroundType : "Tipo di sfondo" ,
solidColor : "Colore pieno" ,
linearGradient : "Sfumatura lineare" ,
radialGradient : "Sfumatura radiale" ,
customImage : "Immagine personalizzata" ,
gradientAngle : "Angolo sfumatura" ,
padding : "Spaziatura" ,
borderRadius : "Raggio del bordo" ,
shadowPreset : "Preset ombra" ,
deviceFrame : "Cornice dispositivo" ,
submit : "Abbellisci" ,
submitBatch : "Abbellisci ({count} file)" ,
progressLabel : "Abbellimento screenshot" ,
},
"svg-to-raster" : {
outputFormat : "Formato di output" ,
sizing : "Dimensionamento" ,
scaleMode : "Scala" ,
customMode : "Personalizzato" ,
scalePresets : "Preset di scala" ,
dpiPresets : "Preset DPI" ,
customWidth : "Larghezza (px)" ,
customHeight : "Altezza (px)" ,
background : "Sfondo" ,
bgTransparent : "Trasparente" ,
bgColor : "Colore" ,
quality : "Qualita" ,
submit : "Converti SVG" ,
submitBatch : "Converti ({count} file)" ,
progressLabel : "Conversione SVG" ,
},
vectorize : {
preset : "Preset" ,
logo : "Logo" ,
illustration : "Illustrazione" ,
photo : "Foto" ,
sketch : "Bozzetto" ,
customPreset : "Personalizzato" ,
colorMode : "Modalita colore" ,
bw : "B&N" ,
colorModeColor : "Colore" ,
threshold : "Soglia" ,
colorPrecision : "Precisione colore" ,
layerDifference : "Differenza livelli" ,
filterSpeckle : "Filtra macchie" ,
pathMode : "Modalita tracciato" ,
cornerThreshold : "Soglia angolo" ,
invertColors : "Inverti colori" ,
submit : "Vettorializza" ,
submitBatch : "Vettorializza ({count} file)" ,
progressLabel : "Vettorializzazione in corso" ,
},
"gif-tools" : {
mode : "Modalita" ,
resize : "Ridimensiona" ,
optimize : "Ottimizza" ,
speed : "Velocita" ,
reverse : "Inverti" ,
extract : "Estrai" ,
rotateMode : "Ruota" ,
pixel : "Pixel" ,
percentage : "Percentuale" ,
colors : "Colori" ,
dither : "Dithering" ,
effort : "Sforzo" ,
speedFactor : "Fattore velocita" ,
loopControl : "Controllo ciclo" ,
infinite : "Infinito" ,
once : "Una volta" ,
customLoop : "Personalizzato" ,
loopCount : "Numero cicli" ,
extractSingle : "Singolo" ,
extractRange : "Intervallo" ,
extractAll : "Tutti" ,
frameNumber : "Numero fotogramma" ,
frameStart : "Fotogramma iniziale" ,
frameEnd : "Fotogramma finale" ,
extractFormat : "Formato" ,
submit : "Elabora GIF" ,
submitBatch : "Elabora ({count} file)" ,
progressLabel : "Elaborazione GIF" ,
},
"image-to-base64" : {
outputFormat : "Formato di output" ,
keepOriginal : "Mantieni originale" ,
quality : "Qualita" ,
maxWidth : "Larghezza massima" ,
maxHeight : "Altezza massima" ,
submit : "Converti in Base64" ,
submitBatch : "Converti ({count} file)" ,
copyBase64 : "Copia Base64" ,
copyDataUri : "Copia Data URI" ,
copyImgTag : "Copia tag <img>" ,
copyCssUrl : "Copia CSS url()" ,
},
"enhance-faces-standalone" : {
model : "Modello" ,
fast : "Veloce" ,
balanced : "Bilanciato" ,
best : "Ottimo" ,
},
2026-06-13 10:18:49 +08:00
"convert-video" : {
format : "Output format" ,
quality : "Quality" ,
high : "High" ,
balanced : "Balanced" ,
small : "Smallest" ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"compress-video" : {
quality : "Compression" ,
light : "Light" ,
balanced : "Balanced" ,
strong : "Strong" ,
resolution : "Resolution" ,
original : "Original" ,
submit : "Compress" ,
submitBatch : "Compress ({count} files)" ,
progressLabel : "Compressing" ,
},
"trim-video" : {
start : "Start (seconds)" ,
end : "End (seconds)" ,
precise : "Frame-accurate (re-encodes)" ,
submit : "Trim" ,
submitBatch : "Trim ({count} files)" ,
progressLabel : "Trimming" ,
},
"mute-video" : {
submit : "Remove audio" ,
submitBatch : "Remove audio ({count} files)" ,
progressLabel : "Muting" ,
},
"video-to-gif" : {
fps : "Frames per second" ,
width : "Width (px)" ,
start : "Start (seconds)" ,
duration : "Duration (seconds)" ,
submit : "Create GIF" ,
submitBatch : "Create GIFs ({count} files)" ,
progressLabel : "Creating GIF" ,
},
2026-06-13 10:19:00 +08:00
"resize-video" : {
preset : "Preset" ,
width : "Width (px)" ,
height : "Height (px)" ,
hint : "Leave one dimension empty to keep aspect ratio" ,
submit : "Resize" ,
submitBatch : "Resize ({count} files)" ,
progressLabel : "Resizing" ,
},
"crop-video" : {
width : "Width (px)" ,
height : "Height (px)" ,
x : "X offset" ,
y : "Y offset" ,
submit : "Crop" ,
submitBatch : "Crop ({count} files)" ,
progressLabel : "Cropping" ,
},
"rotate-video" : {
transform : "Transform" ,
cw90 : "Rotate 90 clockwise" ,
ccw90 : "Rotate 90 counter-clockwise" ,
rotate180 : "Rotate 180" ,
hflip : "Flip horizontal" ,
vflip : "Flip vertical" ,
submit : "Rotate" ,
submitBatch : "Rotate ({count} files)" ,
progressLabel : "Rotating" ,
},
"change-fps" : {
fps : "Frames per second" ,
submit : "Change FPS" ,
submitBatch : "Change FPS ({count} files)" ,
progressLabel : "Changing FPS" ,
},
"video-color" : {
brightness : "Brightness" ,
contrast : "Contrast" ,
saturation : "Saturation" ,
gamma : "Gamma" ,
submit : "Apply" ,
submitBatch : "Apply ({count} files)" ,
progressLabel : "Adjusting color" ,
},
"video-speed" : {
factor : "Speed factor" ,
keepPitch : "Keep original pitch" ,
submit : "Change speed" ,
submitBatch : "Change speed ({count} files)" ,
progressLabel : "Changing speed" ,
},
"reverse-video" : {
hint : "Limited to clips up to 5 minutes" ,
submit : "Reverse" ,
submitBatch : "Reverse ({count} files)" ,
progressLabel : "Reversing" ,
},
"video-loudnorm" : {
hint : "Normalizes audio to EBU R128 broadcast standard" ,
submit : "Normalize" ,
submitBatch : "Normalize ({count} files)" ,
progressLabel : "Normalizing" ,
},
"aspect-pad" : {
target : "Target ratio" ,
color : "Background color" ,
colorHint : "Hex color, e.g. #000000" ,
submit : "Pad" ,
submitBatch : "Pad ({count} files)" ,
progressLabel : "Padding" ,
},
"blur-pad" : {
target : "Target ratio" ,
blur : "Blur strength" ,
submit : "Pad" ,
submitBatch : "Pad ({count} files)" ,
progressLabel : "Padding" ,
},
"watermark-video" : {
text : "Watermark text" ,
position : "Position" ,
fontSize : "Font size" ,
opacity : "Opacity" ,
color : "Color" ,
colorHint : "Hex color, e.g. #ffffff" ,
submit : "Watermark" ,
submitBatch : "Watermark ({count} files)" ,
progressLabel : "Watermarking" ,
},
"stabilize-video" : {
smoothing : "Smoothing" ,
hint : "Runs two passes and takes longer than most tools" ,
submit : "Stabilize" ,
submitBatch : "Stabilize ({count} files)" ,
progressLabel : "Stabilizing" ,
},
"gif-to-video" : {
format : "Output format" ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"video-to-webp" : {
fps : "Frames per second" ,
width : "Width (px)" ,
quality : "Quality" ,
loop : "Loop animation" ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"video-to-frames" : {
mode : "Extraction mode" ,
modeAll : "All frames" ,
modeNth : "Every Nth frame" ,
modeTimestamps : "Specific timestamps" ,
n : "Take every Nth frame" ,
timestamps : "Timestamps (seconds)" ,
timestampsHint : "Comma-separated, e.g. 0.5, 2, 4.5" ,
format : "Image format" ,
submit : "Extract Frames" ,
submitBatch : "Extract Frames ({count} files)" ,
progressLabel : "Extracting frames" ,
},
"merge-videos" : {
hint : "Files are joined in upload order" ,
submit : "Merge" ,
submitBatch : "Merge ({count} files)" ,
progressLabel : "Merging" ,
},
"replace-audio" : {
hint : "Upload the video first, then the audio" ,
submit : "Replace Audio" ,
submitBatch : "Replace Audio ({count} files)" ,
progressLabel : "Replacing audio" ,
},
"burn-subtitles" : {
fontSize : "Font size" ,
hint : "Upload a video and a subtitle file (.srt or .vtt)" ,
submit : "Burn Subtitles" ,
submitBatch : "Burn Subtitles ({count} files)" ,
progressLabel : "Burning subtitles" ,
},
"embed-subtitles" : {
language : "Language code" ,
languageHint : "Three-letter ISO 639-2 code, e.g. eng, spa, fra" ,
submit : "Embed Subtitles" ,
submitBatch : "Embed Subtitles ({count} files)" ,
progressLabel : "Embedding subtitles" ,
},
"extract-subtitles" : {
submit : "Extract Subtitles" ,
submitBatch : "Extract Subtitles ({count} files)" ,
progressLabel : "Extracting subtitles" ,
},
"images-to-video" : {
secondsPerImage : "Seconds per image" ,
resolution : "Resolution" ,
fps : "Frames per second" ,
submit : "Create Video" ,
submitBatch : "Create Video ({count} files)" ,
progressLabel : "Creating slideshow" ,
},
"video-metadata" : {
hint : "Metadata report appears in the result" ,
submit : "Strip Metadata" ,
submitBatch : "Strip Metadata ({count} files)" ,
progressLabel : "Stripping metadata" ,
},
2026-06-13 10:18:49 +08:00
"convert-audio" : {
format : "Output format" ,
bitrate : "Bitrate (kbps)" ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"trim-audio" : {
start : "Start (seconds)" ,
end : "End (seconds)" ,
submit : "Trim" ,
submitBatch : "Trim ({count} files)" ,
progressLabel : "Trimming" ,
},
"extract-audio" : {
format : "Output format" ,
submit : "Extract" ,
submitBatch : "Extract ({count} files)" ,
progressLabel : "Extracting" ,
},
2026-06-13 10:19:06 +08:00
"volume-adjust" : {
"gain-db" : "Gain (dB)" ,
submit : "Adjust Volume" ,
submitBatch : "Adjust Volume ({count} files)" ,
progressLabel : "Adjusting volume" ,
},
"normalize-audio" : {
hint : "EBU R128 loudness normalization" ,
submit : "Normalize" ,
submitBatch : "Normalize ({count} files)" ,
progressLabel : "Normalizing" ,
},
"fade-audio" : {
"fade-in-s" : "Fade in (seconds)" ,
"fade-out-s" : "Fade out (seconds)" ,
submit : "Apply Fade" ,
submitBatch : "Apply Fade ({count} files)" ,
progressLabel : "Applying fade" ,
},
"reverse-audio" : {
submit : "Reverse" ,
submitBatch : "Reverse ({count} files)" ,
progressLabel : "Reversing" ,
},
"audio-speed" : {
factor : "Speed factor" ,
submit : "Change Speed" ,
submitBatch : "Change Speed ({count} files)" ,
progressLabel : "Changing speed" ,
},
"pitch-shift" : {
semitones : "Semitones" ,
hint : "0 semitones is not allowed" ,
submit : "Shift Pitch" ,
submitBatch : "Shift Pitch ({count} files)" ,
progressLabel : "Shifting pitch" ,
},
"audio-channels" : {
mode : "Channel mode" ,
"stereo-to-mono" : "Stereo to mono" ,
"mono-to-stereo" : "Mono to stereo" ,
swap : "Swap left/right" ,
submit : "Convert Channels" ,
submitBatch : "Convert Channels ({count} files)" ,
progressLabel : "Converting channels" ,
},
"silence-removal" : {
"threshold-db" : "Silence threshold (dB)" ,
"min-silence-s" : "Minimum silence duration (seconds)" ,
submit : "Remove Silence" ,
submitBatch : "Remove Silence ({count} files)" ,
progressLabel : "Removing silence" ,
},
"noise-reduction" : {
strength : "Strength" ,
light : "Light" ,
medium : "Medium" ,
strong : "Strong" ,
submit : "Reduce Noise" ,
submitBatch : "Reduce Noise ({count} files)" ,
progressLabel : "Reducing noise" ,
},
"merge-audio" : {
format : "Output format" ,
mp3 : "MP3" ,
wav : "WAV" ,
flac : "FLAC" ,
m4a : "M4A" ,
"order-hint" : "Files will be joined in upload order" ,
submit : "Merge Audio" ,
submitBatch : "Merge Audio ({count} files)" ,
progressLabel : "Merging audio" ,
},
"split-audio" : {
mode : "Split mode" ,
time : "By time" ,
parts : "Equal parts" ,
silence : "By silence" ,
"segment-s" : "Segment length (seconds)" ,
"num-parts" : "Number of parts" ,
"threshold-db" : "Silence threshold (dB)" ,
"min-silence-s" : "Minimum silence duration (seconds)" ,
submit : "Split Audio" ,
submitBatch : "Split Audio ({count} files)" ,
progressLabel : "Splitting audio" ,
},
"ringtone-maker" : {
"start-s" : "Start time (seconds)" ,
"duration-s" : "Duration (seconds)" ,
"max-hint" : "Maximum 30 seconds" ,
submit : "Create Ringtone" ,
submitBatch : "Create Ringtone ({count} files)" ,
progressLabel : "Creating ringtone" ,
},
"waveform-image" : {
width : "Width (px)" ,
height : "Height (px)" ,
color : "Waveform color" ,
submit : "Generate Waveform" ,
submitBatch : "Generate Waveform ({count} files)" ,
progressLabel : "Generating waveform" ,
},
"audio-metadata" : {
strip : "Strip all metadata" ,
title : "Title" ,
artist : "Artist" ,
album : "Album" ,
submit : "Apply Metadata" ,
submitBatch : "Apply Metadata ({count} files)" ,
progressLabel : "Applying metadata" ,
},
2026-06-13 10:18:49 +08:00
"merge-pdf" : {
addFiles : "Add PDFs to merge" ,
needTwo : "At least two PDFs are required" ,
orderHint : "{count} PDFs will merge in this order" ,
submit : "Merge" ,
submitBatch : "Merge ({count} files)" ,
progressLabel : "Merging" ,
},
"split-pdf" : {
mode : "Split mode" ,
range : "Page range" ,
rangeHint : "e.g. 1-3, 5, 7-z" ,
everyN : "Pages per part" ,
submit : "Split" ,
submitBatch : "Split ({count} files)" ,
progressLabel : "Splitting" ,
},
"compress-pdf" : {
preset : "Quality preset" ,
screen : "Screen (smallest)" ,
ebook : "Ebook (balanced)" ,
printer : "Printer (best quality)" ,
submit : "Compress" ,
submitBatch : "Compress ({count} files)" ,
progressLabel : "Compressing" ,
},
"rotate-pdf" : {
angle : "Rotation angle" ,
range : "Page range" ,
rangeHint : "e.g. 1-3, 5, 1-z (all pages)" ,
submit : "Rotate" ,
submitBatch : "Rotate ({count} files)" ,
progressLabel : "Rotating" ,
},
2026-06-13 10:19:11 +08:00
"convert-document" : {
format : "Output format" ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"convert-presentation" : {
format : "Output format" ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"convert-spreadsheet" : {
format : "Output format" ,
hint : "Multi-sheet workbooks export the first sheet to CSV." ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"excel-to-pdf" : {
submit : "Convert to PDF" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"powerpoint-to-pdf" : {
submit : "Convert to PDF" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
2026-06-13 10:18:49 +08:00
"word-to-pdf" : {
submit : "Convert to PDF" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
2026-06-13 10:18:55 +08:00
"extract-pages" : {
range : "Page range" ,
rangeHint : "e.g. 1-3, 5, 7-z" ,
submit : "Extract" ,
submitBatch : "Extract ({count} files)" ,
progressLabel : "Extracting" ,
},
"remove-pages" : {
pages : "Pages to remove" ,
pagesHint : "e.g. 2, 4-6, z (last page)" ,
submit : "Remove" ,
submitBatch : "Remove ({count} files)" ,
progressLabel : "Removing" ,
},
"organize-pdf" : {
order : "Page order" ,
orderHint : "e.g. 3,1,2 or 1-z (identity)" ,
submit : "Reorder" ,
submitBatch : "Reorder ({count} files)" ,
progressLabel : "Reordering" ,
},
"protect-pdf" : {
userPassword : "User password" ,
ownerPassword : "Owner password (optional)" ,
ownerPasswordHint : "Defaults to user password if empty" ,
submit : "Protect" ,
submitBatch : "Protect ({count} files)" ,
progressLabel : "Encrypting" ,
},
"unlock-pdf" : {
password : "Password" ,
submit : "Unlock" ,
submitBatch : "Unlock ({count} files)" ,
progressLabel : "Decrypting" ,
},
"repair-pdf" : {
submit : "Repair" ,
submitBatch : "Repair ({count} files)" ,
progressLabel : "Repairing" ,
},
"linearize-pdf" : {
submit : "Optimize" ,
submitBatch : "Optimize ({count} files)" ,
progressLabel : "Linearizing" ,
},
"grayscale-pdf" : {
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"pdfa-convert" : {
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"crop-pdf" : {
margin : "Margin (points)" ,
submit : "Crop" ,
submitBatch : "Crop ({count} files)" ,
progressLabel : "Cropping" ,
},
"nup-pdf" : {
perSheet : "Pages per sheet" ,
submit : "Arrange" ,
submitBatch : "Arrange ({count} files)" ,
progressLabel : "Arranging" ,
},
"booklet-pdf" : {
perSheet : "Pages per sheet" ,
submit : "Create Booklet" ,
submitBatch : "Create Booklet ({count} files)" ,
progressLabel : "Creating booklet" ,
},
"watermark-pdf" : {
text : "Watermark text" ,
position : "Position" ,
fontSize : "Font size" ,
opacity : "Opacity" ,
rotation : "Rotation" ,
submit : "Watermark" ,
submitBatch : "Watermark ({count} files)" ,
progressLabel : "Watermarking" ,
},
"pdf-page-numbers" : {
position : "Position" ,
fontSize : "Font size" ,
submit : "Add Numbers" ,
submitBatch : "Add Numbers ({count} files)" ,
progressLabel : "Numbering" ,
},
"flatten-pdf" : {
submit : "Flatten" ,
submitBatch : "Flatten ({count} files)" ,
progressLabel : "Flattening" ,
},
"redact-pdf" : {
terms : "Terms to redact" ,
termsHint : "One term per line (max 50)" ,
caseSensitive : "Case sensitive" ,
submit : "Redact" ,
submitBatch : "Redact ({count} files)" ,
progressLabel : "Redacting" ,
},
"pdf-to-text" : {
submit : "Extract Text" ,
submitBatch : "Extract Text ({count} files)" ,
progressLabel : "Extracting" ,
},
"pdf-to-word" : {
hint : "Best for text-based PDFs; scanned pages need OCR" ,
submit : "Convert to Word" ,
submitBatch : "Convert to Word ({count} files)" ,
progressLabel : "Converting" ,
},
"pdf-metadata" : {
title : "Title" ,
author : "Author" ,
subject : "Subject" ,
keywords : "Keywords" ,
submit : "Set Metadata" ,
submitBatch : "Set Metadata ({count} files)" ,
progressLabel : "Setting metadata" ,
},
"html-to-pdf" : {
hint : "Remote resources are disabled for privacy." ,
submit : "Convert to PDF" ,
submitBatch : "Convert to PDF ({count} files)" ,
progressLabel : "Converting" ,
},
2026-06-13 10:19:11 +08:00
"markdown-to-docx" : {
submit : "Convert to DOCX" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"markdown-to-html" : {
hint : "Remote images in the source are left as-is in the output." ,
submit : "Convert to HTML" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
2026-06-13 10:18:55 +08:00
"markdown-to-pdf" : {
hint : "Remote resources are disabled for privacy." ,
submit : "Convert to PDF" ,
submitBatch : "Convert to PDF ({count} files)" ,
progressLabel : "Converting" ,
},
2026-06-13 10:19:11 +08:00
"epub-convert" : {
format : "Output format" ,
hint : "Remote resources inside the book are not fetched." ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"to-epub" : {
submit : "Convert to EPUB" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
2026-06-13 10:18:49 +08:00
"csv-excel" : {
sheet : "Worksheet number" ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"csv-json" : {
pretty : "Pretty print" ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"json-xml" : {
pretty : "Pretty print" ,
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"split-csv" : {
rowsPerFile : "Rows per file" ,
keepHeader : "Keep header in each file" ,
submit : "Split" ,
submitBatch : "Split ({count} files)" ,
progressLabel : "Splitting" ,
},
2026-06-13 10:19:11 +08:00
"merge-csvs" : {
submit : "Merge" ,
submitBatch : "Merge ({count} files)" ,
progressLabel : "Merging" ,
},
"yaml-json" : {
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"xml-to-csv" : {
submit : "Convert" ,
submitBatch : "Convert ({count} files)" ,
progressLabel : "Converting" ,
},
"create-zip" : {
submit : "Create ZIP" ,
submitBatch : "Create ZIP ({count} files)" ,
progressLabel : "Zipping" ,
},
"extract-zip" : {
submit : "Extract" ,
submitBatch : "Extract ({count} files)" ,
progressLabel : "Extracting" ,
},
2026-05-15 17:02:49 +08:00
},
urlImport : {
title : "Importa da URL" ,
placeholder : "Incolla URL di immagini, uno per riga..." ,
importButton : "Importa URL" ,
addButton : "Aggiungi {count} file" ,
adding : "Aggiunta in corso..." ,
retryButton : "Riprova" ,
cancelButton : "Annulla" ,
readyCount : "{count} pronti" ,
failedStatus : "Non riuscito" ,
},
comparison : {
original : "Originale" ,
processed : "Elaborato" ,
before : "Prima" ,
after : "Dopo" ,
savings : "Risparmio" ,
},
toolPage : {
emptyPrompt : "Trascina o carica un'immagine per iniziare" ,
filesCount : "File ({count})" ,
addMore : "+ Aggiungi altri" ,
clearAll : "Cancella tutto" ,
acceptDescription : "Solo file {exts}" ,
notFound : "Strumento non trovato" ,
configureAndGenerate : "Configura le impostazioni e genera." ,
processingFailed : "Elaborazione non riuscita per questo file" ,
conversionComplete : "Conversione completata" ,
cannotPreviewDownload :
"I file {type} non possono essere visualizzati nel browser. Usa il pulsante di download per salvare il file." ,
generatingPreview : "Generazione anteprima..." ,
cannotPreviewWillProcess :
"I file {ext} non possono essere visualizzati nel browser. Lo strumento elaborera comunque questo file normalmente." ,
previousImage : "Immagine precedente" ,
nextImage : "Immagine successiva" ,
imageCounter : "{current} / {total}" ,
settingsLabel : "Impostazioni" ,
downloadAllZip : "Scarica tutto (ZIP)" ,
hideSettings : "Nascondi impostazioni" ,
imageArea : "Area immagine" ,
},
homePage : {
generatingPreview : "Generazione anteprima..." ,
loadingPreview : "Caricamento anteprima..." ,
changeFile : "Cambia file" ,
quickActions : "Azioni rapide" ,
allTools : "Tutti gli strumenti" ,
},
fullscreenGrid : {
searchPlaceholder : "Cerca strumenti..." ,
hideDetails : "Nascondi dettagli" ,
showDetails : "Mostra dettagli" ,
switchToSidebar : "Passa alla vista barra laterale" ,
sidebarButton : "Barra laterale" ,
noToolsFound : "Nessuno strumento trovato" ,
tryDifferent : "Prova con un termine di ricerca diverso" ,
},
editor : {
menu : {
file : {
label : "File" ,
new : "Nuovo" ,
open : "Apri" ,
save : "Salva" ,
exportAs : "Esporta come..." ,
quickExportPng : "Esportazione rapida come PNG" ,
close : "Chiudi" ,
},
edit : {
label : "Modifica" ,
undo : "Annulla" ,
redo : "Ripeti" ,
cut : "Taglia" ,
copy : "Copia" ,
copyMerged : "Copia con unione" ,
paste : "Incolla" ,
pasteInPlace : "Incolla sul posto" ,
delete : "Elimina" ,
freeTransform : "Trasformazione libera" ,
transform : {
label : "Trasforma" ,
scale : "Scala" ,
rotate : "Ruota" ,
skew : "Inclina" ,
flipHorizontal : "Capovolgi orizzontale" ,
flipVertical : "Capovolgi verticale" ,
},
},
image : {
label : "Immagine" ,
imageSize : "Dimensione immagine..." ,
canvasSize : "Dimensione canvas..." ,
rotation : {
label : "Rotazione immagine" ,
cw90 : "90 in senso orario" ,
ccw90 : "90 in senso antiorario" ,
r180 : "180" ,
flipHorizontal : "Capovolgi orizzontale" ,
flipVertical : "Capovolgi verticale" ,
},
trim : "Ritaglia" ,
adjustments : {
label : "Regolazioni" ,
brightnessContrast : "Luminosita/Contrasto" ,
hueSaturation : "Tonalita/Saturazione" ,
colorBalance : "Bilanciamento colore" ,
levels : "Livelli" ,
curves : "Curve" ,
},
},
layer : {
label : "Livello" ,
newLayer : "Nuovo livello" ,
duplicateLayer : "Duplica livello" ,
deleteLayer : "Elimina livello" ,
arrange : {
label : "Disponi" ,
bringToFront : "Porta in primo piano" ,
bringForward : "Porta avanti" ,
sendBackward : "Porta indietro" ,
sendToBack : "Porta sullo sfondo" ,
},
mergeDown : "Unisci in basso" ,
flattenImage : "Appiattisci immagine" ,
},
select : {
label : "Selezione" ,
all : "Tutto" ,
deselect : "Deseleziona" ,
inverse : "Inverti" ,
colorRange : "Intervallo colore..." ,
},
filter : {
label : "Filtro" ,
blur : {
label : "Sfocatura" ,
gaussian : "Sfocatura gaussiana" ,
motion : "Sfocatura di movimento" ,
radial : "Sfocatura radiale" ,
surface : "Sfocatura di superficie" ,
},
sharpen : {
label : "Nitidezza" ,
sharpen : "Nitidezza" ,
unsharpMask : "Maschera di contrasto" ,
},
noise : {
label : "Rumore" ,
addNoise : "Aggiungi rumore" ,
reduceNoise : "Riduci rumore" ,
},
pixelate : {
label : "Pixelizzazione" ,
pixelate : "Pixelizza" ,
mosaic : "Mosaico" ,
},
stylize : {
label : "Stilizza" ,
emboss : "Rilievo" ,
solarize : "Solarizza" ,
posterize : "Posterizza" ,
},
grayscale : "Scala di grigi" ,
sepia : "Seppia" ,
invert : "Inverti" ,
},
view : {
label : "Visualizza" ,
zoomIn : "Ingrandisci" ,
zoomOut : "Riduci" ,
fitOnScreen : "Adatta allo schermo" ,
actualPixels : "Pixel reali" ,
rulers : "Righelli" ,
grid : "Griglia" ,
guides : "Guide" ,
snap : "Aggancia" ,
panels : "Pannelli" ,
},
},
menuBar : {
backTitle : "Torna a SnapOtter" ,
},
welcome : {
ariaLabel : "Area di rilascio immagine" ,
heading : "Editor di immagini" ,
dropDescription : "Trascina un'immagine qui per iniziare" ,
openImageButton : "Apri immagine" ,
newDocumentButton : "Nuovo documento" ,
pasteHint : "Oppure incolla dagli appunti (Ctrl+V)" ,
},
mobile : {
heading : "Si consiglia il desktop" ,
description :
"L'editor di immagini funziona al meglio su schermi desktop. Passa a un dispositivo con uno schermo piu grande per l'esperienza di modifica completa." ,
},
errors : {
serverDecodeFailed : "Decodifica del server non riuscita" ,
},
2026-06-05 16:40:57 +08:00
shapes : {
2026-06-08 14:44:16 +08:00
shape : "Forma" ,
fill : "Riempimento" ,
stroke : "Tratto" ,
strokeWidth : "Spessore" ,
cornerRadius : "Raggio" ,
sides : "Lati" ,
points : "Punti" ,
dashStyle : "Stile tratto" ,
solid : "Continuo" ,
dashed : "Tratteggiato" ,
dotted : "Puntinato" ,
none : "Nessuno" ,
opacity : "Opacita" ,
rectangle : "Rettangolo" ,
ellipse : "Ellisse" ,
line : "Linea" ,
arrow : "Freccia" ,
polygon : "Poligono" ,
star : "Stella" ,
2026-06-05 16:40:57 +08:00
},
2026-05-15 17:02:49 +08:00
},
settings : {
heading : "Impostazioni" ,
nav : {
general : "Generali" ,
systemSettings : "Impostazioni di sistema" ,
security : "Sicurezza" ,
people : "Persone" ,
teams : "Team" ,
roles : "Ruoli" ,
auditLog : "Registro di audit" ,
2026-06-13 10:17:13 +08:00
usage : "Usage" ,
2026-05-15 17:02:49 +08:00
apiKeys : "Chiavi API" ,
aiFeatures : "Funzionalita AI" ,
tools : "Strumenti" ,
productAnalytics : "Analisi del prodotto" ,
about : "Informazioni" ,
},
general : {
heading : "Generali" ,
description : "Preferenze utente e impostazioni di visualizzazione." ,
loading : "Caricamento..." ,
logOut : "Esci" ,
defaultToolViewLabel : "Vista predefinita degli strumenti" ,
defaultToolViewDescription : "Come vengono visualizzati gli strumenti nella pagina iniziale" ,
sidebarOption : "Barra laterale" ,
fullscreenGridOption : "Griglia a schermo intero" ,
appVersionLabel : "Versione dell'app" ,
appVersionDescription : "Versione attuale di SnapOtter" ,
saveButton : "Salva impostazioni" ,
saveSuccess : "Impostazioni salvate." ,
saveFailed : "Salvataggio delle impostazioni non riuscito." ,
},
system : {
heading : "Impostazioni di sistema" ,
description : "Configurazione lato server e limiti." ,
fileUploadLimitLabel : "Limite caricamento file (MB)" ,
fileUploadLimitDescription : "Dimensione massima del file per caricamento" ,
defaultThemeLabel : "Tema predefinito" ,
defaultThemeDescription : "Tema applicato per le nuove sessioni" ,
lightOption : "Chiaro" ,
darkOption : "Scuro" ,
systemOption : "Sistema" ,
languageLabel : "Lingua" ,
languageDescription : "Lingua dell'interfaccia" ,
loginAttemptLimitLabel : "Limite tentativi di accesso" ,
loginAttemptLimitDescription :
"Numero massimo di tentativi di accesso falliti al minuto prima del blocco" ,
fileManagementHeading : "Gestione file" ,
maxFileAgeLabel : "Eta massima file (ore)" ,
maxFileAgeDescription :
"Per quanto tempo i file elaborati vengono conservati prima della pulizia automatica" ,
startupCleanupLabel : "Pulizia all'avvio" ,
startupCleanupDescription : "Pulisce i vecchi file temporanei all'avvio del server" ,
saveButton : "Salva impostazioni" ,
saveSuccess : "Impostazioni salvate." ,
saveFailed : "Salvataggio delle impostazioni non riuscito." ,
limitsAndResources : "Limiti e risorse" ,
maxFileSize : "Dimensione massima file" ,
maxBatchSize : "Dimensione massima batch" ,
concurrentJobs : "Lavori simultanei" ,
workerThreads : "Thread di lavoro" ,
maxPipelineSteps : "Passaggi Pipeline massimi" ,
processingTimeout : "Timeout elaborazione" ,
rateLimitPerMin : "Limite richieste (req/min)" ,
unlimited : "Illimitato" ,
auto : "Automatico" ,
envOverride : "Impostato da variabile d'ambiente" ,
maxCanvasPixels : "Pixel canvas massimi" ,
maxSvgSize : "Dimensione SVG massima" ,
maxSplitGrid : "Griglia divisione massima" ,
maxPdfPages : "Pagine PDF massime" ,
sessionDuration : "Durata della sessione" ,
2026-06-13 10:17:13 +08:00
supportBundleButton : "Download Support Bundle" ,
supportBundleDescription :
"Download a diagnostic zip with redacted config, logs, and job data for troubleshooting." ,
supportBundleFailed : "Failed to download support bundle." ,
2026-05-15 17:02:49 +08:00
},
security : {
heading : "Sicurezza" ,
description : "Impostazioni di password e autenticazione." ,
changePasswordHeading : "Cambia password" ,
currentPasswordPlaceholder : "Password attuale" ,
newPasswordPlaceholder : "Nuova password" ,
confirmPasswordPlaceholder : "Conferma nuova password" ,
passwordsMismatch : "Le password non corrispondono" ,
passwordTooShort : "La password deve contenere almeno 4 caratteri" ,
changeSuccess : "Password modificata con successo" ,
changeFailed : "Modifica della password non riuscita" ,
currentPasswordIncorrect : "La password attuale non e corretta" ,
changePasswordButton : "Cambia password" ,
loginAttemptLimitNote :
"I limiti dei tentativi di accesso possono essere configurati nelle Impostazioni di sistema." ,
},
people : {
heading : "Persone" ,
description : "Gestisci i membri dell'area di lavoro e i loro permessi" ,
userCount : "{count} utente" ,
userCountPlural : "{count} utenti" ,
searchPlaceholder : "Cerca membri..." ,
addMembersButton : "Aggiungi membri" ,
newMemberHeading : "Nuovo membro" ,
usernamePlaceholder : "Nome utente" ,
passwordPlaceholder : "Password" ,
roleUserOption : "Utente" ,
roleEditorOption : "Editor" ,
roleAdminOption : "Admin" ,
roleUserDescription : "Accesso base agli strumenti" ,
roleEditorDescription : "Tutti i file e le pipeline" ,
roleAdminDescription : "Accesso completo" ,
noDescription : "Nessuna descrizione" ,
defaultTeamOption : "Predefinito" ,
createButton : "Crea" ,
cancelButton : "Annulla" ,
createSuccess : "Utente creato con successo" ,
createFailed : "Creazione dell'utente non riuscita" ,
userLimitReached : "Limite utenti raggiunto ({max} massimo)" ,
deleteConfirm : 'Eliminare l\'utente "{username}"? Questa azione non puo essere annullata.' ,
deleteSuccess : 'Utente "{username}" eliminato' ,
deleteFailed : "Eliminazione dell'utente non riuscita" ,
editHeading : "Modifica {username}" ,
updateSuccess : "Utente aggiornato" ,
updateFailed : "Aggiornamento dell'utente non riuscito" ,
cannotRemoveOwnAdmin : "Non e possibile rimuovere il proprio ruolo di amministratore" ,
resetPasswordHeading : "Reimposta password per {username}" ,
newPasswordLabel : "Nuova password (min. 8 caratteri)" ,
resetPasswordButton : "Reimposta password" ,
resetPasswordWarning :
"Questa operazione invalidera tutte le sessioni e le chiavi API di questo utente." ,
resetSuccess : "Password reimpostata con successo" ,
resetFailed : "Reimpostazione della password non riuscita" ,
tableHeaderUser : "Utente" ,
tableHeaderRole : "Ruolo" ,
tableHeaderTeam : "Team" ,
noSearchResults : "Nessun membro corrisponde alla ricerca." ,
noUsersFound : "Nessun utente trovato." ,
authBadgeLocalOidc : "Locale + OIDC" ,
authBadgeOidc : "OIDC" ,
editRoleTeamAction : "Modifica ruolo / team" ,
resetPasswordAction : "Reimposta password" ,
deleteUserAction : "Elimina utente" ,
saveButton : "Salva" ,
2026-05-16 23:08:19 +08:00
copyPasswordButton : "Copia password" ,
passwordCopied : "Copiato!" ,
copyPasswordWarning :
"Copia questa password adesso. Non potrai vederla dopo aver creato l'utente." ,
2026-05-15 17:02:49 +08:00
},
teams : {
heading : "Team" ,
description : "Organizza i membri in team per una gestione migliore." ,
createButton : "Crea nuovo team" ,
newTeamHeading : "Nuovo team" ,
teamNamePlaceholder : "Nome del team" ,
createSubmitButton : "Crea" ,
cancelButton : "Annulla" ,
createSuccess : "Team creato con successo" ,
createFailed : "Creazione del team non riuscita" ,
duplicateTeamError : "Un team con questo nome esiste gia" ,
renameSuccess : "Team rinominato" ,
renameFailed : "Rinomina del team non riuscita" ,
deleteConfirm : 'Eliminare il team "{name}"? I membri verranno rimossi dall\'assegnazione.' ,
deleteSuccess : 'Team "{name}" eliminato' ,
deleteFailed : "Eliminazione del team non riuscita" ,
cannotDeleteDefault : "Impossibile eliminare il team predefinito o un team con membri" ,
tableHeaderTeamName : "Nome del team" ,
tableHeaderMembers : "Membri" ,
emptyState : "Nessun team trovato." ,
renameSaveButton : "Salva" ,
renameCancelButton : "Annulla" ,
renameAction : "Rinomina" ,
deleteAction : "Elimina" ,
totalMembers : "Totale membri" ,
nameRequired : "Il nome del team e obbligatorio" ,
nameTooLong : "Il nome del team deve avere al massimo 50 caratteri" ,
duplicateName : "Un team con questo nome esiste gia" ,
},
roles : {
heading : "Ruoli" ,
description :
"Gestisci i ruoli e i loro permessi. I ruoli predefiniti non possono essere modificati." ,
createButton : "Crea ruolo personalizzato" ,
newRoleHeading : "Nuovo ruolo" ,
roleNamePlaceholder : "Nome del ruolo" ,
descriptionPlaceholder : "Descrizione (opzionale)" ,
permissionsLabel : "Permessi" ,
createSubmitButton : "Crea" ,
cancelButton : "Annulla" ,
createSuccess : "Ruolo creato con successo" ,
createFailed : "Creazione del ruolo non riuscita" ,
duplicateRoleError : "Un ruolo con questo nome esiste gia" ,
editHeading : "Modifica ruolo: {name}" ,
editSaveButton : "Salva" ,
editCancelButton : "Annulla" ,
updateSuccess : "Ruolo aggiornato" ,
updateFailed : "Aggiornamento del ruolo non riuscito" ,
deleteConfirm : 'Eliminare il ruolo "{name}"? {count} utente/i dovranno essere riassegnati.' ,
deleteConfirmSimple : 'Eliminare il ruolo "{name}"?' ,
deleteSuccess : 'Ruolo "{name}" eliminato' ,
deleteFailed : "Eliminazione del ruolo non riuscita" ,
emptyState : "Nessun ruolo trovato." ,
builtInBadge : "Predefinito" ,
userCountBadge : "{count} utente/i" ,
editRoleTitle : "Modifica ruolo" ,
deleteRoleTitle : "Elimina ruolo" ,
permGroup : {
tools : "Strumenti" ,
files : "File" ,
apiKeys : "Chiavi API" ,
pipelines : "Pipeline" ,
settings : "Impostazioni" ,
users : "Utenti" ,
teams : "Team" ,
system : "Sistema" ,
},
},
auditLog : {
heading : "Registro di audit" ,
allActionsFilter : "Tutte le azioni" ,
emptyState : "Nessuna voce nel registro di audit." ,
tableHeaderTime : "Ora" ,
tableHeaderUser : "Utente" ,
tableHeaderAction : "Azione" ,
tableHeaderTarget : "Obiettivo" ,
paginationInfo : "Pagina {page} di {totalPages} ({total} voci)" ,
previousButton : "Precedente" ,
nextButton : "Successivo" ,
justNow : "adesso" ,
minutesAgo : "{mins}min fa" ,
hoursAgo : "{hrs}h fa" ,
daysAgo : "{days}g fa" ,
},
2026-06-13 10:17:13 +08:00
usage : {
heading : "Usage" ,
description : "Local usage statistics from jobs and file storage." ,
periodLabel : "Period" ,
days7 : "7 days" ,
days30 : "30 days" ,
days90 : "90 days" ,
jobsPerDayHeading : "Jobs per day" ,
topToolsHeading : "Top tools" ,
perUserHeading : "Per-user volume" ,
durationsHeading : "Duration percentiles" ,
noData : "No data for this period." ,
dayColumn : "Day" ,
totalColumn : "Total" ,
completedColumn : "Completed" ,
failedColumn : "Failed" ,
toolColumn : "Tool" ,
runsColumn : "Runs" ,
userColumn : "User" ,
bytesInColumn : "Bytes in" ,
poolColumn : "Pool" ,
p50Column : "p50" ,
p95Column : "p95" ,
storageHeading : "Library storage" ,
storageFiles : "{count} files" ,
unknownUser : "(unknown)" ,
},
2026-05-15 17:02:49 +08:00
apiKeys : {
heading : "Chiavi API" ,
description : "Gestisci le chiavi API per l'accesso programmatico a SnapOtter." ,
keyNamePlaceholder : "Nome della chiave (opzionale)" ,
generateButton : "Genera chiave API" ,
removeScopingLabel : "Rimuovi restrizione dei permessi" ,
restrictPermissionsLabel : "Limita permessi (opzionale)" ,
expiresLabel : "Scadenza:" ,
clearButton : "Cancella" ,
copyTitle : "Copia" ,
keyWarning : "Conserva questa chiave in modo sicuro. Non verra piu visualizzata." ,
existingKeysHeading : "Chiavi esistenti" ,
createdPrefix : "Creata il {date}" ,
scopedPrefix : "Ambito:" ,
expiresPrefix : "Scade il {date}" ,
deleteKeyTitle : "Elimina chiave" ,
deleteConfirm :
"Eliminare questa chiave API? Le integrazioni che la utilizzano smetteranno di funzionare." ,
emptyState : "Nessuna chiave API ancora. Generane una per iniziare." ,
},
tools : {
heading : "Strumenti" ,
description :
"Attiva o disattiva i singoli strumenti. Gli strumenti disattivati sono nascosti a tutti gli utenti." ,
restartBanner : "E necessario un riavvio per applicare le modifiche." ,
searchPlaceholder : "Cerca strumenti..." ,
noSearchResults : "Nessuno strumento corrisponde alla ricerca." ,
loadFailedError :
"Caricamento delle impostazioni degli strumenti non riuscito. Il salvataggio e disattivato per prevenire la perdita di dati." ,
saveButton : "Salva impostazioni strumenti" ,
disabledCount : "{count} strumento/i disattivato/i" ,
},
experimental : {
label : "Attiva strumenti sperimentali" ,
description : "Mostra gli strumenti ancora in fase di sviluppo. Potrebbero essere instabili." ,
},
fileManagement : {
title : "Gestione file" ,
maxAge : "Eta massima file (ore)" ,
maxAgeDescription :
"Per quanto tempo i file elaborati vengono conservati prima della pulizia automatica" ,
startupCleanup : "Pulizia all'avvio" ,
startupCleanupDescription : "Pulisce i vecchi file temporanei all'avvio del server" ,
},
analytics : {
heading : "Analisi del prodotto" ,
description : "Condividi dati di utilizzo anonimi per contribuire a migliorare SnapOtter." ,
privacyNote : "Le tue immagini non lasciano mai il tuo dispositivo." ,
disabledByAdmin : "L'analisi del prodotto e stata disattivata dall'amministratore del server." ,
enabledLabel : "Analisi attivata" ,
disabledLabel : "Analisi disattivata" ,
learnMore : "Scopri di piu" ,
},
aiFeatures : {
2026-05-18 10:19:55 +08:00
title : "Funzionalità IA" ,
description :
"Gestisci pacchetti di modelli di IA per l'elaborazione avanzata delle immagini." ,
installAll : "Installa tutto" ,
diskUsage : "Utilizzo del disco:" ,
installed : "Installato" ,
notInstalled : "Non installato" ,
queued : "Code" ,
install : "Installa" ,
repair : "Ripara" ,
uninstall : "Disinstalla" ,
installing : "Installazione..." ,
2026-06-13 10:17:13 +08:00
importBundle : "Import Bundle" ,
importDescription : "Upload a .tar.gz bundle archive exported from another installation." ,
importButton : "Import from file" ,
importing : "Importing..." ,
importSuccess : "Bundle imported successfully." ,
importError : "Bundle import failed: {error}" ,
2026-05-15 17:02:49 +08:00
},
about : {
heading : "Informazioni" ,
appName : "SnapOtter" ,
appDescription :
2026-06-13 10:18:49 +08:00
"Una suite di elaborazione immagini self-hosted e orientata alla privacy, con 70+ strumenti. Ridimensiona, comprimi, converti, aggiungi filigrane e automatizza i tuoi flussi di lavoro senza inviare dati al cloud." ,
2026-05-15 17:02:49 +08:00
versionLabel : "Versione:" ,
linksHeading : "Link" ,
githubLink : "Repository GitHub" ,
docsLink : "Documentazione" ,
apiRefLink : "Riferimento API (Swagger)" ,
2026-06-05 22:31:28 +08:00
licenseLabel : "License:" ,
2026-06-05 23:14:57 +08:00
licenseDescription :
2026-06-08 14:44:16 +08:00
"SnapOtter e un software open-source distribuito con licenza GNU Affero General Public License v3 (AGPLv3)." ,
2026-05-15 17:02:49 +08:00
},
},
auth : {
login : "Accedi" ,
logout : "Esci" ,
username : "Nome utente" ,
password : "Password" ,
loginButton : "Accedi" ,
loggingIn : "Accesso in corso..." ,
invalidCredentials : "Nome utente o password non validi" ,
connectionError : "Errore di connessione" ,
signInWith : "Accedi con {provider}" ,
signInWithSso : "Accedi con SSO" ,
or : "o" ,
methodLocal : "Locale" ,
methodOidc : "OIDC" ,
methodBoth : "Locale + OIDC" ,
oidcAuthFailed : "Autenticazione non riuscita. Riprova." ,
oidcProviderUnreachable : "Impossibile raggiungere il provider di identita. Riprova piu tardi." ,
oidcSessionExpired : "La sessione di accesso e scaduta. Riprova." ,
oidcUserNotAuthorized :
"Il tuo account non e autorizzato ad accedere a questa applicazione. Contatta l'amministratore." ,
oidcUserLimitReached : "Limite utenti raggiunto. Contatta l'amministratore." ,
oidcGenericError : "Errore di autenticazione. Riprova." ,
passwordManagedByProvider :
"Le modifiche alla password sono gestite dal tuo provider di identita." ,
enterUsername : "Inserisci il nome utente" ,
enterPassword : "Inserisci la password" ,
heroTitle : "Le tue immagini. Restano tue." ,
heroSubtitle : "Tutti gli strumenti per le immagini di cui hai bisogno." ,
rotatingPhrases : [
"Nessuna registrazione. Nessun account." ,
"Nessun caricamento sul cloud. Mai." ,
"Elaborazione 100% locale." ,
"Gratuito. Per sempre." ,
"Nessun limite. Nessun tetto nascosto." ,
"Funziona completamente offline." ,
"Elaborazione in blocco illimitata." ,
2026-06-13 10:18:49 +08:00
"70+ strumenti per le immagini." ,
2026-06-04 21:44:56 +08:00
"15 modelli IA. Il tuo hardware." ,
2026-05-15 17:02:49 +08:00
"Velocissimo. Basato su Sharp." ,
"Pronto per reti isolate." ,
"Un solo contenitore Docker." ,
"Open source. Sempre." ,
"Ogni pixel resta sul tuo hardware." ,
"Il tuo server. Le tue regole." ,
"Si installa con un solo docker pull." ,
"L'alternativa self-hosted." ,
"Ridimensiona, comprimi, converti. Localmente." ,
"Editor di immagini gratuito. Senza filigrane." ,
"Elaborazione immagini in blocco. Illimitata." ,
"Rimuovi sfondi offline." ,
"Alternativa self-hosted a Canva." ,
"Nessuna chiave API necessaria." ,
"Conforme al GDPR fin dalla progettazione." ,
"Funziona senza internet." ,
],
},
changePassword : {
title : "Cambia la tua password" ,
description :
"Devi impostare una nuova password prima di continuare. La password deve contenere almeno 8 caratteri con maiuscole, minuscole e un numero." ,
usernameLabel : "Nome utente" ,
currentPasswordLabel : "Password attuale" ,
currentPasswordPlaceholder : "Inserisci la password attuale" ,
newPasswordLabel : "Nuova password" ,
generateButton : "Genera password sicura" ,
newPasswordPlaceholder : "Almeno 8 caratteri" ,
confirmPasswordLabel : "Conferma nuova password" ,
confirmPasswordPlaceholder : "Ripeti la nuova password" ,
passwordsMismatch : "Le password non corrispondono" ,
failedError : "Modifica della password non riuscita" ,
connectionError : "Errore di connessione" ,
changingButton : "Modifica in corso..." ,
changeButton : "Cambia password" ,
sidebarTitle : "Ci siamo quasi" ,
sidebarDescription :
"Imposta una password sicura per proteggere il tuo account, poi sarai pronto." ,
},
automate : {
title : "Automatizza" ,
invalidPipelineFile : "Non e un file Pipeline di SnapOtter valido" ,
newerVersion : "Questo Pipeline e stato creato con una versione piu recente di SnapOtter" ,
missingName : "Il file Pipeline non ha un nome" ,
noSteps : "Il file Pipeline non ha passaggi" ,
importFailed : "Importazione non riuscita" ,
couldNotRead : "Impossibile leggere il file Pipeline" ,
fileCount : "{count} file" ,
fileCountPlural : "{count} file" ,
importFromLibrary : "Importa dalla libreria" ,
addButton : "+ Aggiungi" ,
libraryButton : "Libreria" ,
clearButton : "Cancella" ,
processingFailed : "Elaborazione non riuscita per questo file" ,
processingMultiple : "Elaborazione di {count} file..." ,
processingPipeline : "Elaborazione Pipeline..." ,
processButton : "Elabora" ,
processButtonMultiple : "Elabora ({count})" ,
processAllButton : "Elabora tutti ({count})" ,
addTool : "Aggiungi strumento" ,
toolPalette : "Palette strumenti" ,
clickToAdd : "Fai clic per aggiungere al Pipeline" ,
savedLabel : "Salvato" ,
importButton : "Importa" ,
noSavedPipelines : "Nessun Pipeline salvato" ,
stepCount : "({count} passaggio)" ,
stepCountPlural : "({count} passaggi)" ,
exportPipeline : "Esporta Pipeline" ,
deletePipeline : "Elimina Pipeline" ,
moreCount : "+{count} altri" ,
pipelineBuilder : "Costruttore di Pipeline" ,
addToolsPrompt : "Aggiungi strumenti dalla palette per iniziare" ,
stepsConfigured : "{count} passaggio configurato" ,
stepsConfiguredPlural : "{count} passaggi configurati" ,
noFilesLoaded : "Nessun file caricato" ,
downloadZip : "Scarica ZIP" ,
saveButton : "Salva" ,
pipelineNamePlaceholder : "Nome del Pipeline" ,
descriptionPlaceholder : "Descrizione" ,
savingIndicator : "..." ,
cancelButton : "Annulla" ,
preview : "Anteprima" ,
previousImage : "Immagine precedente" ,
nextImage : "Immagine successiva" ,
imageCounter : "{current} / {total}" ,
imageArea : "Area immagine" ,
templateSocialMedia : "Pronto per i social" ,
templatePrivacyClean : "Pulizia privacy" ,
templateWebOptimization : "Ottimizzazione web" ,
templateProfilePicture : "Foto profilo" ,
templateWatermarkBatch : "Filigrana in blocco" ,
createNew : "Crea nuova automazione" ,
savedAutomations : "Automazioni salvate" ,
templates : "Modelli" ,
addStep : "Aggiungi passaggio" ,
removeStep : "Rimuovi" ,
moveUp : "Sposta su" ,
moveDown : "Sposta giu" ,
savePipeline : "Salva Pipeline" ,
runPipeline : "Elabora" ,
pipelineName : "Nome del Pipeline" ,
pipelineDescription : "Descrizione (opzionale)" ,
noStepsPrompt : "Aggiungi passaggi per costruire la tua automazione" ,
2026-06-08 14:44:16 +08:00
noStepsHeading : "Nessun passaggio" ,
searchToolsPlaceholder : "Cerca strumenti..." ,
2026-06-06 20:47:08 +08:00
step : "Passaggio" ,
2026-05-15 17:02:49 +08:00
},
nav : {
tools : "Strumenti" ,
reader : "Lettore" ,
automate : "Automatizza" ,
editor : "Editor" ,
files : "File" ,
help : "Guida" ,
settings : "Impostazioni" ,
grid : "Griglia" ,
},
files : {
2026-06-08 14:44:16 +08:00
myFiles : "I miei file" ,
recentTab : "Recenti" ,
uploadTab : "Carica file" ,
fileDetailsAriaLabel : "Dettagli file" ,
fileDetailsHeading : "Dettagli file" ,
searchPlaceholder : "Cerca file..." ,
selectedCount : "{count} selezionati" ,
fileCount : "{count} file" ,
2026-06-05 22:31:28 +08:00
fileCountSingular : "{count} file" ,
2026-06-08 14:44:16 +08:00
noFilesFound : "Nessun file trovato" ,
selectFilePrompt : "Seleziona un file per visualizzare i dettagli" ,
openFile : "Apri file" ,
openInPipeline : "Apri nella pipeline" ,
name : "Nome" ,
format : "Formato" ,
size : "Dimensione" ,
dimensions : "Dimensioni" ,
version : "Versione" ,
toolsUsed : "Strumenti utilizzati" ,
none : "Nessuno" ,
delete : "Elimina" ,
2026-06-05 22:31:28 +08:00
pipeline : "Pipeline" ,
2026-06-08 14:44:16 +08:00
download : "Scarica" ,
2026-05-15 17:02:49 +08:00
},
dropzone : {
unsupportedFileType : "Questo tipo di file non e supportato da questo strumento" ,
urlFetchFailed : "Impossibile recuperare l'immagine dall'URL" ,
ariaLabel : "Area di rilascio file" ,
dropPrompt : "Trascina le tue immagini qui" ,
browseOrPaste : "fai clic ovunque per sfogliare, oppure incolla dagli appunti" ,
uploadButton : "Carica" ,
defaultFormats : "PNG, JPG, WebP, HEIC, RAW, PSD e oltre 65 formati" ,
orSeparator : "o" ,
urlPlaceholder : "Incolla l'URL dell'immagine..." ,
urlLoadingIndicator : "..." ,
addUrlButton : "Aggiungi" ,
importMultipleUrls : "Importa piu URL..." ,
filesSelected : "{count} file selezionati" ,
},
reviewPanel : {
processedResultAlt : "Risultato elaborato" ,
sizeLabel : "Dimensione: {size}" ,
typeLabel : "Tipo: {type}" ,
processedLabel : "Elaborato: {time}" ,
undoButton : "Annulla" ,
downloadButton : "Scarica" ,
openInEditor : "Apri nell'editor" ,
reviewHeading : "Revisione" ,
continueEditing : "Continua a modificare" ,
},
features : {
notEnabledTitle : "Funzionalita non attivata" ,
notEnabledDescription :
"Questa funzionalita non e attivata. Chiedi all'amministratore di attivarla nelle Impostazioni." ,
requiresDownload : "Questa funzionalita richiede un download aggiuntivo (~{size})" ,
retryButton : "Riprova" ,
queued : "In coda per l'installazione..." ,
enableButton : "Attiva {name}" ,
2026-06-09 23:09:34 +08:00
repairRequired : "Repair Required" ,
repairDescription : "Some model files are missing or corrupted. Repair will re-download them." ,
repairButton : "Repair {name}" ,
2026-05-15 17:02:49 +08:00
lessThanMinute : "Meno di un minuto rimanente" ,
oneMinuteLeft : "~1 minuto rimanente" ,
minutesLeft : "~{mins} minuti rimanenti" ,
progressMessages : [
"Ci siamo quasi... forse..." ,
"Le cose belle richiedono tempo..." ,
"Sempre piu veloce che guardare asciugare la vernice..." ,
"La tua pazienza e davvero ammirevole..." ,
"Sta lavorando piu di quanto sembri..." ,
"Questa e la parte entusiasmante, fidati..." ,
"Operazioni importanti dietro le quinte..." ,
"Se stai leggendo questo, funziona..." ,
"Preparando qualcosa di fantastico..." ,
"Ne vale ogni secondo, promesso..." ,
"La suspense fa parte dell'esperienza..." ,
"Insegnando nuovi trucchi al tuo computer..." ,
"Configurazione dei tuoi superpoteri..." ,
"Le tue immagini ti ringrazieranno dopo..." ,
"Caricamento... ma con stile..." ,
"Ottimo momento per un caffe..." ,
"Neanche Roma e stata costruita in un giorno..." ,
"Shhh... genio al lavoro..." ,
"Le tue foto diventeranno gelose di quello che arriva..." ,
"Assemblaggio del dream team..." ,
"Spacchettamento di meraviglie..." ,
"Quasi finito di pensare di iniziare... scherzo..." ,
"Colpo di scena: sta davvero facendo qualcosa..." ,
"Riscaldamento dei motori creativi..." ,
"Immaginazione in caricamento..." ,
"Non e un salvaschermo, promesso..." ,
"La grande arte ha bisogno di tempo per installarsi..." ,
"Il te stesso del futuro ti ringraziera..." ,
"Recupero di file molto intelligenti..." ,
"Tieni duro, il meglio deve ancora venire..." ,
],
},
help : {
heading : "Guida" ,
gettingStarted : {
heading : "Per iniziare" ,
description :
"Seleziona uno strumento dalla barra laterale o cercane uno. Carica un'immagine trascinandola sulla pagina o facendo clic sull'area di caricamento. Regola le impostazioni e scarica il risultato." ,
},
keyboardShortcuts : {
heading : "Scorciatoie da tastiera" ,
focusSearchBar : "Focus sulla barra di ricerca" ,
goToTools : "Vai agli strumenti" ,
toggleTheme : "Cambia tema" ,
goToResize : "Vai a Ridimensiona" ,
goToCrop : "Vai a Ritaglia" ,
goToCompress : "Vai a Comprimi" ,
goToConvert : "Vai a Converti" ,
goToRemoveBackground : "Vai a Rimuovi sfondo" ,
goToWatermarkText : "Vai a Filigrana testo" ,
goToStripMetadata : "Vai a Rimuovi metadati" ,
goToImageInfo : "Vai a Info immagine" ,
},
resources : {
heading : "Risorse" ,
githubLink : "Repository GitHub" ,
reportIssueLink : "Segnala un problema" ,
docsLink : "Documentazione" ,
apiRefLink : "Riferimento API (Swagger)" ,
},
versionLabel : "SnapOtter v{version}" ,
},
errors : {
generic : "Si e verificato un errore" ,
offline : "Sei offline" ,
reconnecting : "Riconnessione al server..." ,
connected : "Connesso" ,
processingFailed : "Elaborazione non riuscita per questo file" ,
timeout : "Richiesta scaduta. Il server potrebbe essere sovraccarico. Riprova." ,
networkError : "Errore di rete. Verifica la tua connessione." ,
invalidCredentials : "Nome utente o password non validi" ,
connectionError : "Errore di connessione" ,
},
analytics : {
consentTitle : "Aiuta a migliorare SnapOtter" ,
consentDescription :
"Le statistiche d'uso anonime ci aiutano a correggere bug e creare gli strumenti di cui hai davvero bisogno. Le tue immagini e i tuoi file restano sul tuo dispositivo." ,
consentChangeable : "Puoi disattivare questa opzione in qualsiasi momento nelle Impostazioni." ,
acceptButton : "Certo, va bene" ,
declineButton : "Non ora" ,
settingsTitle : "Analisi del prodotto" ,
settingsDescription :
"Condividi dati di utilizzo anonimi per contribuire a migliorare SnapOtter." ,
settingsPrivacy : "Le tue immagini non lasciano mai il tuo dispositivo." ,
settingsDisabledByAdmin :
"L'analisi del prodotto e stata disattivata dall'amministratore del server." ,
learnMore : "Scopri di piu" ,
},
sidebar : {
tools : "Strumenti" ,
grid : "Griglia" ,
automate : "Automatizza" ,
editor : "Editor" ,
files : "File" ,
help : "Guida" ,
settings : "Impostazioni" ,
},
toolCard : {
addToFavourites : "Aggiungi ai preferiti" ,
},
appLayout : {
mobileNavTools : "Strumenti" ,
mobileNavAutomate : "Automatizza" ,
mobileNavEditor : "Editor" ,
mobileNavFiles : "File" ,
mobileNavSettings : "Impostazioni" ,
},
2026-06-07 21:48:08 +08:00
a11y : {
2026-06-08 14:44:16 +08:00
skipToContent : "Vai al contenuto principale" ,
openSidebar : "Apri barra laterale" ,
closeSidebar : "Chiudi barra laterale" ,
closeSettings : "Chiudi impostazioni" ,
closeHelp : "Chiudi guida" ,
closeDialog : "Chiudi finestra di dialogo" ,
zoomIn : "Ingrandisci" ,
zoomOut : "Riduci" ,
fitToView : "Adatta alla vista" ,
actualSize : "Dimensione reale" ,
previousImage : "Immagine precedente" ,
nextImage : "Immagine successiva" ,
imageArea : "Area immagine" ,
imageViewer : "Visualizzatore immagini" ,
fileDropZone : "Zona di rilascio file" ,
imageDropZone : "Zona di rilascio immagini" ,
beforeAfterSlider : "Cursore confronto prima/dopo" ,
imageControls : "Controlli immagine" ,
zoomControls : "Controlli zoom" ,
dragToReorder : "Trascina per riordinare" ,
whiteBackground : "Sfondo bianco" ,
blackBackground : "Sfondo nero" ,
expandPanel : "Espandi pannello" ,
collapsePanel : "Comprimi pannello" ,
swapDimensions : "Scambia dimensioni" ,
applyCrop : "Applica ritaglio" ,
cancelCrop : "Annulla ritaglio" ,
fontFamily : "Famiglia di caratteri" ,
textColor : "Colore del testo" ,
flipHorizontal : "Capovolgi orizzontalmente" ,
flipVertical : "Capovolgi verticalmente" ,
hexColorValue : "Valore colore esadecimale" ,
backgroundColor : "Colore di sfondo" ,
foregroundColor : "Colore di primo piano" ,
swapColors : "Scambia colori primo piano e sfondo" ,
resetColors : "Ripristina bianco e nero predefiniti" ,
foregroundHex : "Valore esadecimale colore primo piano" ,
undo : "Annulla" ,
redo : "Ripeti" ,
layers : "Livelli" ,
addLayer : "Aggiungi livello" ,
deleteLayer : "Elimina livello" ,
cancelOperation : "Annulla operazione" ,
fill : "Riempimento" ,
fileDetails : "Dettagli file" ,
language : "Lingua" ,
selected : "Selezionato" ,
deleteKey : "Tasto Elimina" ,
editRole : "Modifica ruolo" ,
deleteRole : "Elimina ruolo" ,
notInstalled : "Non installato" ,
queued : "In coda per l'installazione" ,
installing : "Installazione in corso" ,
imageNOfTotal : "Immagine {n} di {total}" ,
processingComplete : "Immagine elaborata con successo" ,
processingFailed : "Elaborazione non riuscita" ,
settingsDialog : "Impostazioni" ,
helpDialog : "Guida" ,
navigationMenu : "Menu di navigazione" ,
2026-06-07 21:48:08 +08:00
},
2026-05-15 17:02:49 +08:00
} as const ;