accessInvite = "Inviter"
addToDoc = "Ajouter au Document"
alphabet = "Alphabet"
apply = "Appliquer"
applyAndContinue = "Appliquer et continuer"
areYouSure = "Voulez-vous vraiment quitter ?"
back = "Retour"
black = "Noir"
blue = "Bleu"
bored = "Marre d'attendre ?"
cancel = "Annuler"
changedCredsMessage = "Les identifiants ont été mis à jour !"
chooseFile = "Choisir un fichier"
close = "Fermer"
color = "Couleur"
comingSoon = "Bientôt disponible"
confirm = "Confirmer"
confirmClose = "Confirmer la fermeture"
confirmCloseCancel = "Annuler"
confirmCloseConfirm = "Fermer le fichier"
confirmCloseDiscard = "Fermer sans enregistrer"
confirmCloseMessage = "Voulez-vous vraiment fermer ce fichier ?"
confirmCloseSave = "Enregistrer et fermer"
confirmCloseSaveFailed = "Enregistré avec des erreurs. Enregistrement impossible pour {{count}} fichier{{plural}}."
confirmCloseSaveFailedTitle = "Échec de l’enregistrement"
confirmCloseUnsaved = "Ce fichier contient des modifications non enregistrées."
confirmCloseUnsavedList = "Vous avez {{count}} fichier{{plural}} avec des modifications non enregistrées.\n\n{{fileList}}"
confirmPasswordErrorMessage = "Le nouveau mot de passe et sa confirmation doivent être identiques."
custom = "Personnalisé…"
customPosition = "Position personnalisée"
customTextTooltip = "Format personnalisé facultatif pour les numéros de page. Utilisez {n} comme espace réservé pour le numéro. Exemple : \"Page {n}\" affichera \"Page 1\", \"Page 2\", etc."
delete = "Supprimer"
deleteCurrentUserMessage = "Impossible de supprimer l'utilisateur actuellement connecté."
deleteUsernameExistsMessage = "Le nom d'utilisateur n'existe pas et ne peut pas être supprimé."
details = "Détails"
disabledCurrentUserMessage = "L'utilisateur actuel ne peut pas être désactivé"
discardChanges = "Ignorer les modifications"
discardRedactions = "Ignorer et quitter"
donate = "Faire un don"
downgradeCurrentUserLongMessage = "Impossible de rétrograder le rôle de l'utilisateur actuel. Par conséquent, l'utilisateur actuel ne sera pas affiché."
downgradeCurrentUserMessage = "Impossible de rétrograder le rôle de l'utilisateur actuel."
download = "Télécharger"
downloadComplete = "Téléchargement terminé"
downloadPdf = "Télécharger le PDF"
downloadUnavailable = "Téléchargement indisponible pour cet élément"
edit = "Modifier"
editSecret = "Modifier cette valeur"
editYourNewFiles = "Modifier votre/vos nouveau(x) fichier(s)"
encryptedFileBlocked = "Le fichier est protégé par mot de passe. Déverrouillez-le d'abord."
encryptedFilesBlocked = "{{count}} fichiers sont protégés par mot de passe. Déverrouillez-les d'abord."
exportAndContinue = "Exporter et continuer"
false = "Faux"
fileNotSavedToDisk = "Non enregistré sur le disque"
fileSavedToDisk = "Fichier enregistré sur le disque"
fileSelected = "Sélectionné : {{filename}}"
filesSelected = "fichiers sélectionnés"
font = "Police"
fontSizeTooltip = "Taille du texte du numéro de page en points. Une valeur plus élevée crée un texte plus grand."
fontTypeTooltip = "Famille de police pour les numéros de page. Choisissez selon le style de votre document."
genericSubmit = "Envoyer"
goHomepage = "Aller à la page d'accueil"
goToPage = "Aller"
green = "Vert"
help = "Aide"
imgPrompt = "Choisir une image"
incorrectPasswordMessage = "Le mot de passe actuel est incorrect."
info = "Informations"
insufficientCredits = "Insufficient credits. Required: {{requiredCredits}}, Available: {{currentBalance}}, Shortfall: {{shortfall}}"
invalidPasswordMessage = "Le mot de passe ne peut pas être vide et ne doit pas contenir d'espaces au début ou à la fin."
invalidUndoData = "Impossible d’annuler : données d’opération invalides"
invalidUsernameMessage = "Nom d'utilisateur invalide, le nom d'utilisateur ne peut contenir que des lettres, des chiffres et les caractères spéciaux suivants @._+- ou doit être une adresse e-mail valide."
joinDiscord = "Rejoignez notre serveur Discord"
keepWorking = "Continuer à travailler"
loading = "Chargement..."
loadingCredits = "Checking credits..."
loadingProStatus = "Checking subscription status..."
logOut = "Se déconnecter"
marginTooltip = "Distance entre le numéro de page et le bord de la page."
moreOptions = "Plus d’options"
multiPdfDropPrompt = "Sélectionnez (ou glissez-déposez) tous les PDF dont vous avez besoin"
multiPdfPrompt = "Sélectionnez les PDF"
never = "Jamais"
no = "Non"
noFavourites = "Aucun favori ajouté"
noFileSelected = "Aucun fichier sélectionné. Veuillez en télécharger un."
noFilesToUndo = "Impossible d’annuler : aucun fichier n’a été traité lors de la dernière opération"
noOperationToUndo = "Aucune opération à annuler"
notAuthenticatedMessage = "Utilisateur non authentifié."
nothingToUndo = "Rien à annuler"
noticeTopUpOrPlan = "Not enough credits, please top up or upgrade to a plan"
noValidFiles = "Aucun fichier valide à traiter"
oops = "Oups !"
openInViewer = "Ouvrir dans le lecteur"
operationCancelled = "Opération annulée"
page = "Page"
pageNum = "Numéro de page"
pageOrderPrompt = "Ordre des pages (entrez une liste de numéros de page séparés par des virgules ou des fonctions telles que 2n+1) :"
pages = "Pages"
pageSelectionPrompt = "Sélection des pages (entrez une liste de numéros de page séparés par des virgules ou des fonctions telles que 2n+1) :"
password = "Mot de passe"
pdfPrompt = "Sélectionnez le(s) PDF"
pendingRedactions = "Vous avez des caviardages non appliqués qui seront perdus."
pendingRedactionsTitle = "Caviardages non appliqués"
pin = "Épingler le fichier (le garder actif après l’exécution de l’outil)"
poweredBy = "Propulsé par"
pro = "Pro"
processingComplete = "Votre fichier est prêt."
processingCompleteMultiple = "{{count}} fichiers sont prêts."
processTimeWarning = "Attention, ce processus peut prendre jusqu'à une minute en fonction de la taille du fichier."
property = "Propriété"
quickPosition = "Position rapide"
red = "Rouge"
reset = "Réinitialiser"
review = "Examiner"
save = "Enregistrer"
saveToBrowser = "Enregistrer dans le navigateur"
saveUnavailable = "Enregistrement indisponible pour cet élément"
seeDockerHub = "Consulter le Docker Hub"
selectFillter = "-- Sélectionnez --"
size = "Taille"
sponsor = "Sponsoriser"
startingNumberTooltip = "Premier numéro à afficher. Les pages suivantes incrémentent à partir de ce nombre."
submit = "Valider"
success = "Succès"
termsAndConditions = "Conditions générales"
text = "Texte"
true = "Vrai"
undo = "Défaire"
undoDataMismatch = "Impossible d’annuler : données d’opération corrompues"
undoFailed = "Échec de l’annulation de l’opération"
undoOperationTooltip = "Cliquez pour annuler la dernière opération et restaurer les fichiers d’origine"
undoQuotaError = "Impossible d’annuler : espace de stockage insuffisant"
undoStorageError = "Annulation effectuée mais certains fichiers n’ont pas pu être enregistrés dans le stockage"
undoSuccess = "Opération annulée avec succès"
unknown = "Inconnu"
unpin = "Désépingler le fichier (remplacer après l’exécution de l’outil)"
unsavedChanges = "Vous avez des modifications non enregistrées sur votre PDF. Que souhaitez-vous faire ?"
unsavedChangesTitle = "Modifications non enregistrées"
unsupported = "Non pris en charge"
uploadLimit = "Taille maximale du fichier :"
uploadLimitExceededPlural = "sont trop grands. La taille maximale autorisée est de"
uploadLimitExceededSingular = "est trop grand. La taille maximale autorisée est de"
userAlreadyExistsOAuthMessage = "L'utilisateur existe déjà en tant qu'utilisateur OAuth2."
userAlreadyExistsWebMessage = "L'utilisateur existe déjà en tant qu'utilisateur Web."
username = "Nom d'utilisateur"
usernameExistsMessage = "Le nouveau nom d'utilisateur existe déjà."
userNotFoundMessage = "Utilisateur non trouvé."
visitGithub = "Visiter le dépôt Github"
welcome = "Bienvenue"
white = "Blanc"
WorkInProgess = "En cours de développement, merci de nous remonter les problèmes que vous pourriez constater!"
yes = "Oui"
[account]
accountSettings = "Paramètres du compte"
adminSettings = "Paramètres d'administration – Voir et ajouter des utilisateurs"
changePassword = "Modifier le mot de passe"
changeUsername = "Modifier le nom d'utilisateur"
changeUsernameDescription = "Mettre à jour votre nom d’utilisateur. Vous serez déconnecté après la mise à jour."
confirmNewPassword = "Confirmer votre nouveau mot de passe"
newPassword = "Nouveau mot de passe"
newUsername = "Nouveau nom d'utilisateur"
newUsernamePlaceholder = "Saisissez votre nouveau nom d’utilisateur"
oldPassword = "Ancien mot de passe"
password = "Mot de passe de confirmation"
property = "Propriété"
settingsCompare = "Comparaison des paramètres"
signOut = "Déconnexion"
syncTitle = "Synchroniser les paramètres du navigateur avec le compte"
syncToAccount = "Synchroniser : Compte ← Navigateur"
syncToBrowser = "Synchroniser : Compte → Navigateur"
title = "Paramètres du compte"
userControlSettings = "Contrôle des paramètres des utilisateurs"
webBrowserSettings = "Paramètres du navigateur"
yourApiKey = "Votre clé API"
[account.mfa]
codeLabel = "Code d'authentification"
codePlaceholder = "Saisir le code à 6 chiffres"
codeRequired = "Saisissez le code d'authentification pour continuer."
confirmDisable = "Désactiver"
confirmEnable = "Activer"
description = "Ajoutez une couche de sécurité supplémentaire à votre compte."
disableButton = "Désactiver l'authentification à deux facteurs"
disabled = "Authentification à deux facteurs désactivée."
disableDescription = "Saisissez un code d'authentification valide pour désactiver l'authentification à deux facteurs."
disableFailed = "Impossible de désactiver l'authentification à deux facteurs. Vérifiez le code et réessayez."
disableTitle = "Désactiver l'authentification à deux facteurs"
enableButton = "Activer l'authentification à deux facteurs"
enabled = "Authentification à deux facteurs activée."
enableFailed = "Impossible d'activer l'authentification à deux facteurs. Vérifiez le code et réessayez."
manualKey = "Clé de configuration manuelle"
secretWarning = "Conservez cette clé privée. Toute personne y ayant accès peut générer des codes d'authentification valides."
setupDescription = "Scannez le code QR avec votre application d'authentification, puis saisissez le code à 6 chiffres pour confirmer."
setupFailed = "Impossible de démarrer la configuration de l'authentification à deux facteurs. Veuillez réessayer."
setupTitle = "Configurer l'authentification à deux facteurs"
ssoDescription = "L'authentification à deux facteurs est gérée par votre fournisseur d'identité pour les comptes à authentification unique."
ssoManaged = "Configurez la MFA via votre fournisseur d'identité."
title = "Authentification à deux facteurs"
[add-page-numbers]
tags = "paginer,numéros,étiqueter,paginate,label,organize,index"
[addAttachments.error]
failed = "Une erreur s’est produite lors de l’ajout de pièces jointes au PDF."
[AddAttachmentsRequest]
addMoreFiles = "Ajouter d’autres fichiers…"
attachments = "Sélectionner des pièces jointes"
info = "Sélectionnez des fichiers à joindre à votre PDF. Ces fichiers seront intégrés et accessibles via le panneau des pièces jointes du PDF."
placeholder = "Choisir des fichiers…"
selectedFiles = "Fichiers sélectionnés"
selectFiles = "Sélectionner des fichiers à joindre"
submit = "Ajouter les pièces jointes"
[AddAttachmentsRequest.error]
failed = "Échec de l’ajout des pièces jointes"
[AddAttachmentsRequest.results]
title = "Résultats des pièces jointes"
[AddAttachmentsRequest.tooltip.description]
title = "Ce que fait l’outil"
[AddAttachmentsRequest.tooltip.header]
title = "À propos de l’ajout de pièces jointes"
[addImage]
applySignatures = "Appliquer les images"
header = "Ajouter une image"
tags = "img,jpg,image,photo"
title = "Ajouter une image"
[addImage.error]
failed = "Une erreur est survenue lors de l’ajout de l’image au PDF."
[addImage.image]
hint = "Supports PNG, JPEG, GIF, BMP, TIFF, and SVG files. SVG files will be converted to PNG for embedding."
label = "Fichier image"
name = "Image"
placeholder = "Téléverser une image"
[addImage.instructions]
noSignature = "Téléversez une image ci-dessus pour activer le placement."
paused = "Placement en pause"
resumeHint = "Reprenez le placement pour cliquer et ajouter votre image."
text = "Après avoir téléversé votre image ci-dessus, cliquez n’importe où sur le PDF pour la placer."
title = "Comment ajouter des images"
[addImage.mode]
move = "Déplacer l’image"
pause = "Suspendre le placement"
place = "Placer l’image"
resume = "Reprendre le placement"
[addImage.results]
title = "Résultats de l’ajout d’image"
[addImage.saved]
defaultImageLabel = "Image téléversée"
defaultLabel = "Image"
[addImage.step]
createDesc = "Téléversez l’image à ajouter"
place = "Placer l’image"
placeDesc = "Cliquez sur le PDF pour ajouter votre image"
[addImage.steps]
configure = "Configurer l’image"
[addPageNumbers]
configuration = "Configuration"
customize = "Personnaliser l’apparence"
customNumberDesc = "La valeur par défaut est '{n}', accepte également 'Page {n} sur {total}', 'Texte-{n}', '{filename}-{n}'"
customTextDesc = "Texte personnalisé"
fontName = "Nom de la Police"
fontSize = "Taille de Police"
header = "Ajouter des numéros de page"
numberPagesDesc = "Quelles pages numéroter, par défaut 'all' (toutes les pages), accepte également 1-5 ou 2,5,9, etc."
pagesAndStarting = "Pages et numéro de départ"
positionAndPages = "Position et pages"
preview = "Sélection de la position"
previewDisclaimer = "L’aperçu est approximatif. Le résultat final peut varier en raison des métriques de police du PDF."
submit = "Ajouter les numéros de page"
title = "Ajouter des numéros de page"
zeroPad = "Zero‑pad Width (Bates Stamping)"
zeroPadTooltip = "Zero‑pad (Bates Stamp) page numbers to this width (e.g., 3 ⇒ 001). Set 0 to disable."
[addPageNumbers.error]
failed = "Échec de l’ajout des numéros de page"
[addPageNumbers.results]
title = "Résultats des numéros de page"
[addPageNumbers.selectText]
1 = "Sélectionnez le fichier PDF"
2 = "Taille de la marge"
3 = "Position"
4 = "Numéro de départ"
5 = "Pages à numéroter"
6 = "Texte personnalisé"
[addPassword]
completed = "Protection par mot de passe appliquée"
desc = "Chiffrez votre document PDF avec un mot de passe."
filenamePrefix = "chiffré"
submit = "Chiffrer"
title = "Ajouter un mot de passe"
[addPassword.encryption.keyLength]
128bit = "128 bits (Standard)"
256bit = "256 bits (Élevé)"
40bit = "40 bits (Faible)"
label = "Longueur de clé de chiffrement"
[addPassword.error]
failed = "Une erreur est survenue lors du chiffrement du PDF."
[addPassword.passwords]
completed = "Mots de passe configurés"
stepTitle = "Mots de passe & chiffrement"
[addPassword.passwords.owner]
label = "Mot de passe propriétaire"
placeholder = "Saisir le mot de passe propriétaire"
[addPassword.passwords.user]
label = "Mot de passe utilisateur"
placeholder = "Saisir le mot de passe utilisateur"
[addPassword.results]
title = "PDF chiffrés"
[addPassword.tooltip.encryption]
bullet1 = "40 bits : Sécurité basique, compatible avec les anciens lecteurs"
bullet2 = "128 bits : Sécurité standard, largement prise en charge"
bullet3 = "256 bits : Sécurité maximale, nécessite des lecteurs modernes"
text = "Des niveaux de chiffrement plus élevés offrent une meilleure sécurité mais peuvent ne pas être pris en charge par d’anciens lecteurs PDF."
title = "Niveaux de chiffrement"
[addPassword.tooltip.header]
title = "Aperçu de la protection par mot de passe"
[addPassword.tooltip.passwords]
bullet1 = "Mot de passe utilisateur : requis pour ouvrir le PDF"
bullet2 = "Mot de passe propriétaire : contrôle les permissions du document (non pris en charge par tous les lecteurs PDF)"
text = "Les mots de passe utilisateur restreignent l’ouverture du document, tandis que les mots de passe propriétaire contrôlent ce qui peut être fait une fois le document ouvert. Vous pouvez définir les deux ou seulement l’un d’eux."
title = "Types de mots de passe"
[addPassword.tooltip.permissions]
text = "Ces permissions contrôlent ce que les utilisateurs peuvent faire avec le PDF. Le plus efficace lorsqu’elles sont combinées avec un mot de passe propriétaire."
title = "Modifier les permissions"
[AddStampRequest]
alphabet = "Alphabet"
clickToExpand = "Click to expand"
customColor = "Couleur de texte personnalisée"
customDateDesc = "Custom format"
customMargin = "Marge personnalisée"
customPosition = "Faites glisser le tampon à l’endroit souhaité dans la fenêtre d’aperçu."
dateDesc = "Current date"
datetimeDesc = "Date and time combined"
dateTimeVars = "Date & Time"
dynamicVariables = "Dynamic Variables"
examples = "Examples"
filenameDesc = "Filename without extension"
filenameFullDesc = "Filename with extension"
fileVars = "File Information"
fontSize = "Taille de fonte/image"
header = "Tampon PDF"
imageSize = "Taille de l’image"
margin = "Marge"
metadataDesc = "From PDF document properties"
metadataVars = "Document Metadata"
multiLine = "multi-line"
noStampSelected = "Aucun tampon sélectionné. Retour à l’étape 1."
opacity = "Opacité"
otherVars = "Other"
overrideX = "Définir coordonnées X"
overrideY = "Définir coordonnées Y"
pageNumberDesc = "Current page number"
pageVars = "Page Information"
position = "Position"
positionAndFormatting = "Position et mise en forme"
preview = "Preview:"
quickPosition = "Sélectionnez une position sur la page pour placer le tampon."
rotation = "Rotation"
selectTemplate = "Select a template..."
stampImage = "Tampon image"
stampSetup = "Configuration du tampon"
stampText = "Tampon texte"
stampTextDescription = "Use dynamic variables below. Use @@ for literal @. Use \\n for new lines."
stampType = "Type de tampon"
submit = "Soumettre"
tags = "Tampon,Ajouter,Stamp,Add image,center image,Watermark,PDF,Embed,Customize"
timeDesc = "Current time"
title = "Tampon PDF"
totalPagesDesc = "Total number of pages"
useTemplate = "Use Template"
uuidDesc = "Short unique identifier (8 chars)"
variablesHelp = "Click on any variable to insert it into your stamp text. Use @@ for literal @."
yearMonthDayDesc = "Individual date parts"
[AddStampRequest.error]
failed = "Une erreur s’est produite lors de l’ajout du tampon au PDF."
[AddStampRequest.results]
title = "Résultats du tampon"
[AddStampRequest.template]
custom = "Custom"
dateHeader = "Date Header"
doc-info = "Document Info"
draft = "Draft Watermark"
draftWatermark = "Draft Watermark"
european-date = "European Date (DD/MM/YYYY)"
europeanDate = "European Date"
legal-footer = "Legal Footer"
page-numbers = "Page Numbers"
pageNumberFooter = "Page Number Footer"
timestamp = "Timestamp"
[addText]
applySignatures = "Appliquer le texte"
header = "Ajouter du texte aux PDF"
tags = "texte,annotation,étiquette"
title = "Ajouter du texte"
[addText.error]
failed = "Une erreur est survenue lors de l'ajout de texte au PDF."
[addText.instructions]
noSignature = "Saisissez du texte ci-dessus pour activer le placement."
paused = "Placement en pause"
resumeHint = "Reprenez le placement pour cliquer et ajouter votre texte."
text = "Après avoir saisi votre texte ci-dessus, cliquez n'importe où sur le PDF pour le placer."
title = "Comment ajouter du texte"
[addText.mode]
move = "Déplacer le texte"
pause = "Mettre en pause le placement"
place = "Placer le texte"
resume = "Reprendre le placement"
[addText.results]
title = "Résultats de l'ajout de texte"
[addText.step]
createDesc = "Saisissez le texte à ajouter"
place = "Placer le texte"
placeDesc = "Cliquez sur le PDF pour ajouter votre texte"
[addText.steps]
configure = "Configurer le texte"
[addText.text]
colorLabel = "Couleur du texte"
fontLabel = "Police"
fontSizeLabel = "Taille de police"
fontSizePlaceholder = "Saisissez ou sélectionnez une taille (8-200)"
name = "Contenu du texte"
placeholder = "Saisissez le texte à ajouter"
[adjust-contrast]
tags = "ajuster,couleurs,amélioration,color-correction,tune,modify,enhance"
[adjustContrast]
adjustColors = "Ajuster les couleurs"
basic = "Ajustements de base"
blue = "Bleu"
brightness = "Luminosité"
confirm = "Confirmer"
contrast = "Contraste"
download = "Télécharger"
green = "Vert"
header = "Ajuster les couleurs"
noPreview = "Sélectionnez un PDF pour l’aperçu"
red = "Rouge"
saturation = "Saturation"
title = "Ajuster les couleurs"
[adjustContrast.error]
failed = "Échec de l’ajustement des couleurs/du contraste"
[adjustContrast.results]
title = "PDF ajusté"
[adjustPageScale]
header = "Ajuster l’échelle de page"
submit = "Ajuster l’échelle de page"
tags = "redimensionner,modifier,dimension,adapter"
title = "Ajuster l’échelle de page"
[adjustPageScale.error]
failed = "Une erreur est survenue lors de l’ajustement de l’échelle de page."
[adjustPageScale.pageSize]
keep = "Conserver la taille d’origine"
label = "Taille de page cible"
legal = "Légal"
letter = "Lettre"
[adjustPageScale.scaleFactor]
label = "Facteur d’échelle"
[adjustPageScale.tooltip.description]
text = "Ajustez la taille du contenu PDF et modifiez les dimensions de la page."
title = "Description"
[adjustPageScale.tooltip.header]
title = "Aperçu des paramètres d’échelle de page"
[adjustPageScale.tooltip.pageSize]
text = "Définit les dimensions des pages PDF en sortie. « Conserver la taille d’origine » maintient les dimensions actuelles, tandis que les autres options redimensionnent vers des formats standards."
title = "Taille de page cible"
[adjustPageScale.tooltip.scaleFactor]
bullet1 = "1,0 = Taille d’origine"
bullet2 = "0,5 = Demi-taille (50 % plus petit)"
bullet3 = "2,0 = Taille doublée (200 % plus grand, peut rogner)"
text = "Contrôle la taille d’affichage du contenu sur la page. Le contenu est mis à l’échelle et centré ; s’il dépasse la taille de la page, il peut être rogné."
title = "Facteur d’échelle"
[admin]
close = "Fermer"
error = "Erreur"
expand = "Développer"
success = "Succès"
[admin.settings]
discard = "Ignorer"
error = "Échec de l’enregistrement des paramètres"
fetchError = "Échec du chargement des paramètres"
loginRequired = "Le mode de connexion doit être activé pour modifier les paramètres d’administration"
restartError = "Échec du redémarrage du serveur. Veuillez redémarrer manuellement."
restarting = "Redémarrage du serveur"
restartingMessage = "Le serveur redémarre. Veuillez patienter..."
restartRequired = "Redémarrage requis"
save = "Enregistrer les modifications"
saved = "Paramètres enregistrés avec succès"
saveError = "Échec de l’enregistrement des paramètres"
saveSuccess = "Paramètres enregistrés avec succès"
success = "Paramètres enregistrés avec succès"
title = "Paramètres d’administration"
workspace = "Espace de travail"
[admin.settings.advanced]
description = "Configurer les fonctionnalités avancées et expérimentales."
features = "Indicateurs de fonctionnalités"
processing = "Traitement"
title = "Avancé"
[admin.settings.advanced.disableSanitize]
description = "AVERTISSEMENT : Risque de sécurité — désactiver la sanitisation HTML peut entraîner des vulnérabilités XSS"
label = "Désactiver la sanitisation HTML"
[admin.settings.advanced.enableAlphaFunctionality]
description = "Activer les fonctionnalités expérimentales et en phase alpha (peuvent être instables)"
label = "Activer les fonctionnalités alpha"
[admin.settings.advanced.enableUrlToPDF]
description = "Autoriser la conversion de pages web en documents PDF"
label = "Activer URL vers PDF"
[admin.settings.advanced.endpoints]
description = "La gestion des points de terminaison se configure via YAML. Voir la documentation pour les détails sur l’activation/la désactivation de points spécifiques."
label = "Points de terminaison"
manage = "Gérer les points de terminaison API"
[admin.settings.advanced.maxDPI]
description = "DPI maximum pour le traitement d’images (0 = illimité)"
label = "DPI maximum"
[admin.settings.advanced.processExecutor]
calibre = "Calibre"
description = "Configurer les limites de session et délais d’expiration pour chaque exécuteur de processus"
ghostscript = "Ghostscript"
installApp = "Installer l’application"
label = "Limites de l’exécuteur de processus"
libreOffice = "LibreOffice"
ocrMyPdf = "OCRmyPDF"
pdfToHtml = "PDF vers HTML"
pythonOpenCv = "Python OpenCV"
qpdf = "QPDF"
tesseract = "Tesseract OCR"
weasyPrint = "WeasyPrint"
[admin.settings.advanced.processExecutor.sessionLimit]
description = "Nombre maximal d’instances simultanées"
label = "Limite de sessions"
[admin.settings.advanced.processExecutor.timeout]
description = "Temps d’exécution maximal"
label = "Délai d’expiration (minutes)"
[admin.settings.advanced.tempFileManagement]
description = "Configurer le stockage des fichiers temporaires et le comportement de nettoyage"
label = "Gestion des fichiers temporaires"
[admin.settings.advanced.tempFileManagement.baseTmpDir]
description = "Répertoire de base pour les fichiers temporaires (laisser vide pour la valeur par défaut : java.io.tmpdir/stirling-pdf)"
label = "Répertoire temporaire de base"
[admin.settings.advanced.tempFileManagement.cleanupIntervalMinutes]
description = "Fréquence d’exécution du nettoyage (en minutes)"
label = "Intervalle de nettoyage (minutes)"
[admin.settings.advanced.tempFileManagement.cleanupSystemTemp]
description = "Indique s’il faut nettoyer un répertoire temporaire système plus large (à utiliser avec précaution)"
label = "Nettoyer le temporaire système"
[admin.settings.advanced.tempFileManagement.libreofficeDir]
description = "Répertoire des fichiers temporaires LibreOffice (laisser vide pour la valeur par défaut : baseTmpDir/libreoffice)"
label = "Répertoire temporaire LibreOffice"
[admin.settings.advanced.tempFileManagement.maxAgeHours]
description = "Âge maximal en heures avant le nettoyage des fichiers temporaires"
label = "Âge max (heures)"
[admin.settings.advanced.tempFileManagement.prefix]
description = "Préfixe pour les noms de fichiers temporaires"
label = "Préfixe des fichiers temporaires"
[admin.settings.advanced.tempFileManagement.startupCleanup]
description = "Nettoyer les anciens fichiers temporaires au démarrage de l’application"
label = "Nettoyage au démarrage"
[admin.settings.advanced.tempFileManagement.systemTempDir]
description = "Répertoire temporaire système à nettoyer (utilisé uniquement si cleanupSystemTemp est activé)"
label = "Répertoire temporaire système"
[admin.settings.advanced.tessdataDir]
description = "Chemin vers le répertoire tessdata pour les fichiers de langue OCR"
downloadButton = "Télécharger les langues sélectionnées"
downloadErrorGeneric = "Échec du téléchargement : {{message}}. Veuillez réessayer plus tard."
downloadErrorNetwork = "Échec du téléchargement en raison d’une erreur réseau. Veuillez vérifier votre connexion et réessayer."
downloadErrorPermission = "Le répertoire tessdata n’est pas accessible en écriture : {{message}}. Veuillez choisir un répertoire accessible en écriture (par exemple dans le dossier de données de l’application) ou ajuster les autorisations."
downloadErrorServer = "Le serveur a rencontré une erreur lors du téléchargement des langues tessdata. Veuillez réessayer plus tard."
downloadErrorTitle = "Échec du téléchargement"
downloadInvalidBody = "Certaines des langues sélectionnées ne sont pas disponibles au téléchargement. Veuillez actualiser et choisir dans la liste."
downloadInvalidTitle = "Sélection invalide"
downloadLabel = "Télécharger des langues tessdata supplémentaires"
downloadMissingBody = "Veuillez sélectionner au moins une langue à télécharger."
downloadMissingTitle = "Aucune langue sélectionnée"
downloadNothingFound = "Aucune langue supplémentaire trouvée"
downloadPlaceholder = "Sélectionner des langues"
downloadSuccessBody = "Les langues tessdata sélectionnées ont été enregistrées."
downloadSuccessTitle = "Langues téléchargées"
installedLanguages = "Langues tessdata installées"
label = "Répertoire tessdata"
loadingLanguages = "Chargement des langues tessdata installées..."
manualLinks = "Téléchargements manuels : cliquez sur les liens et placez les fichiers dans le dossier tessdata."
noLanguages = "Aucune langue tessdata trouvée dans le répertoire configuré."
permissionNotice = "Le chemin tessdata n’est pas accessible en écriture. Les téléchargements seront ouverts dans le navigateur ; veuillez enregistrer manuellement les fichiers .traineddata dans le dossier tessdata."
[admin.settings.badge]
clickToUpgrade = "Cliquez pour voir les détails de l’abonnement"
[admin.settings.connections]
connect = "Connecter"
description = "Configurer des fournisseurs d’authentification externes comme OAuth2 et SAML."
disconnect = "Déconnecter"
disconnected = "Fournisseur déconnecté avec succès"
disconnectError = "Échec de la déconnexion du fournisseur"
documentation = "Afficher la documentation"
imageResolutionFull = "Pleine (taille d’origine)"
imageResolutionReduced = "Réduite (Max 1200px)"
linkedServices = "Services liés"
mobileScannerConvertToPdf = "Convertir les images en PDF"
mobileScannerConvertToPdfDesc = "Convertir automatiquement les images téléversées en PDF. Si désactivé, les images sont conservées telles quelles."
mobileScannerImageResolution = "Résolution d’image"
mobileScannerImageResolutionDesc = "Résolution des images téléversées. « Réduite » redimensionne les images jusqu’à 1200px max pour réduire la taille du fichier."
mobileScannerPageFormat = "Format de page"
mobileScannerPageFormatDesc = "Taille de page PDF pour les images converties. « Conserver » utilise les dimensions d’origine de l’image."
mobileScannerStretchToFit = "Étirer pour remplir"
mobileScannerStretchToFitDesc = "Étirer les images pour remplir toute la page. Si désactivé, les images sont centrées avec ratio préservé."
pageFormatA4 = "A4 (210×297mm)"
pageFormatKeep = "Conserver (dimensions d’origine)"
pageFormatLetter = "Letter (8.5×11in)"
title = "Connexions"
unlinkedServices = "Services non liés"
[admin.settings.connections.mobileScanner]
description = "Permettre aux utilisateurs de téléverser des fichiers depuis des appareils mobiles en scannant un QR code"
enable = "Activer le téléversement par QR code"
imageResolutionFull = "Pleine (taille d’origine)"
imageResolutionReduced = "Réduite (Max 1200px)"
label = "Téléversement depuis mobile"
link = "Configurer dans les paramètres du système"
mobileScannerConvertToPdf = "Convertir les images en PDF"
mobileScannerConvertToPdfDesc = "Convertir automatiquement les images téléversées en PDF. Si désactivé, les images sont conservées telles quelles."
mobileScannerImageResolution = "Résolution d’image"
mobileScannerImageResolutionDesc = "Résolution des images téléversées. « Réduite » redimensionne les images jusqu’à 1200px max pour réduire la taille du fichier."
mobileScannerPageFormat = "Format de page"
mobileScannerPageFormatDesc = "Taille de page PDF pour les images converties. « Conserver » utilise les dimensions d’origine de l’image."
mobileScannerStretchToFit = "Étirer pour remplir"
mobileScannerStretchToFitDesc = "Étirer les images pour remplir toute la page. Si désactivé, les images sont centrées avec ratio préservé."
note = "Remarque : nécessite la configuration de l’URL du frontend. "
pageFormatA4 = "A4 (210×297mm)"
pageFormatKeep = "Conserver (dimensions d’origine)"
pageFormatLetter = "Letter (8.5×11in)"
[admin.settings.connections.oauth2]
label = "OAuth2"
[admin.settings.connections.oauth2.autoCreateUser]
description = "Créer automatiquement des comptes utilisateurs lors de la première connexion OAuth2"
label = "Créer automatiquement les utilisateurs"
[admin.settings.connections.oauth2.blockRegistration]
description = "Empêcher l’inscription de nouveaux utilisateurs via OAuth2"
label = "Bloquer l’inscription"
[admin.settings.connections.oauth2.clientId]
description = "Le client ID OAuth2 de votre fournisseur"
label = "ID client"
[admin.settings.connections.oauth2.clientSecret]
description = "Le client secret OAuth2 de votre fournisseur"
label = "Secret client"
[admin.settings.connections.oauth2.enabled]
description = "Autoriser les utilisateurs à s’authentifier via des fournisseurs OAuth2"
label = "Activer OAuth2"
[admin.settings.connections.oauth2.issuer]
description = "URL de l’issuer du fournisseur OAuth2"
label = "URL de l’issuer"
[admin.settings.connections.oauth2.provider]
description = "Le fournisseur OAuth2 à utiliser pour l’authentification"
label = "Fournisseur"
[admin.settings.connections.oauth2.scopes]
description = "Liste séparée par des virgules des scopes OAuth2 à demander (ex. : openid, profile, email)"
label = "Scopes OAuth2"
[admin.settings.connections.oauth2.useAsUsername]
description = "La revendication OAuth2 à utiliser comme nom d’utilisateur (ex. : email, sub)"
label = "Utiliser comme nom d’utilisateur"
[admin.settings.connections.saml2]
label = "SAML2"
[admin.settings.connections.saml2.autoCreateUser]
description = "Créer automatiquement des comptes utilisateurs lors de la première connexion SAML2"
label = "Créer automatiquement les utilisateurs"
[admin.settings.connections.saml2.blockRegistration]
description = "Empêcher l’inscription de nouveaux utilisateurs via SAML2"
label = "Bloquer l’inscription"
[admin.settings.connections.saml2.enabled]
description = "Autoriser les utilisateurs à s’authentifier via des fournisseurs SAML2"
label = "Activer SAML2"
[admin.settings.connections.saml2.provider]
description = "Nom du fournisseur SAML2"
label = "Fournisseur"
[admin.settings.connections.saml2.registrationId]
description = "Identifiant d’enregistrement SAML2"
label = "ID d’enregistrement"
[admin.settings.connections.ssoAutoLogin]
description = "Rediriger automatiquement vers la connexion SSO lorsque l’authentification est requise"
enable = "Activer la connexion automatique SSO"
label = "Connexion automatique SSO"
[admin.settings.database]
actions = "Actions"
backupCreated = "Sauvegarde créée avec succès"
backupDescription = "Gérez les sauvegardes H2 directement depuis la console d'administration."
backupFailed = "Échec de la création de la sauvegarde"
backupTitle = "Sauvegardes & restauration"
chooseFile = "Choisir un fichier de sauvegarde .sql"
codeMismatch = "Le code de confirmation ne correspond pas"
codeMismatchBody = "Veuillez saisir le code exactement tel qu’affiché pour continuer."
configuration = "Configuration de la base de données"
confirmCodeLabel = "Saisissez le code de confirmation pour continuer"
confirmImport = "Confirmer l’importation"
confirmImportTitle = "Confirmer l’importation de la base de données"
createBackup = "Créer une sauvegarde"
created = "Créé"
delete = "Supprimer"
deleteConfirm = "Supprimer cette sauvegarde ? Cette action est irréversible."
deleteConfirmAction = "Supprimer la sauvegarde"
deleteFailed = "Échec de la suppression de la sauvegarde"
deleteSuccess = "Sauvegarde supprimée"
deleteTitle = "Supprimer la sauvegarde"
description = "Configurer des paramètres de connexion à une base de données personnalisée pour les déploiements d’entreprise."
download = "Télécharger"
downloadFailed = "Échec du téléchargement de la sauvegarde"
embedded = "H2 intégré"
enterCode = "Saisissez le code affiché ci-dessus"
external = "Base de données externe"
fileName = "Fichier"
h2Hint = "Définissez le type de base de données sur H2 et désactivez la base de données personnalisée pour activer la sauvegarde et la restauration."
h2Only = "Les sauvegardes ne sont disponibles que pour la base de données H2 intégrée."
import = "Importer"
importFailed = "Échec de l’importation de la sauvegarde"
importFromUpload = "Importer le téléversement"
importSuccess = "Sauvegarde importée avec succès"
loadError = "Échec du chargement des sauvegardes de la base de données"
manageBackups = "Gérer les sauvegardes"
noBackups = "Aucune sauvegarde trouvée pour le moment."
overwriteWarning = "Avertissement : ceci écrasera la base de données actuelle."
overwriteWarningBody = "Toutes les données existantes seront remplacées par la sauvegarde téléversée. Cette action est irréversible."
refresh = "Actualiser"
selectFile = "Veuillez sélectionner un fichier .sql à importer"
size = "Taille"
title = "Base de données"
unavailable = "La liste des sauvegardes est indisponible pour la configuration actuelle de la base de données."
uploadTitle = "Téléversement & import"
version = "Version H2"
[admin.settings.database.customUrl]
description = "Chaîne de connexion JDBC complète (ex. : jdbc:postgresql://localhost:5432/postgres). Si fournie, les paramètres de connexion individuels ci-dessous ne sont pas utilisés."
label = "URL de base de données personnalisée"
[admin.settings.database.enableCustom]
description = "Utiliser votre propre configuration de base de données au lieu de la base embarquée par défaut"
label = "Activer la base de données personnalisée"
[admin.settings.database.hostName]
description = "Nom d’hôte du serveur de base de données (non utilisé si une URL personnalisée est fournie)"
label = "Nom d’hôte"
[admin.settings.database.name]
description = "Nom de la base de données (non utilisé si une URL personnalisée est fournie)"
label = "Nom de la base"
[admin.settings.database.password]
description = "Mot de passe pour l’authentification à la base de données"
label = "Mot de passe"
[admin.settings.database.port]
description = "Port du serveur de base de données (non utilisé si une URL personnalisée est fournie)"
label = "Port"
[admin.settings.database.type]
description = "Type de base de données (non utilisé si une URL personnalisée est fournie)"
label = "Type de base de données"
[admin.settings.database.username]
description = "Nom d’utilisateur pour l’authentification à la base de données"
label = "Nom d’utilisateur"
[admin.settings.endpoints]
description = "Contrôler quels points de terminaison API et groupes de points sont disponibles."
management = "Gestion des points de terminaison"
title = "Points de terminaison API"
userDefaults = "Valeurs par défaut des préférences utilisateur"
userDefaultsDescription = "Définissez les valeurs par défaut des préférences utilisateur. Les utilisateurs peuvent les remplacer dans leurs paramètres personnels."
[admin.settings.endpoints.defaultHideUnavailableConversions]
description = "Supprimer les options de conversion désactivées au lieu de les afficher en grisé"
label = "Masquer par défaut les conversions indisponibles"
[admin.settings.endpoints.defaultHideUnavailableTools]
description = "Supprimer les outils désactivés au lieu de les afficher en grisé"
label = "Masquer par défaut les outils indisponibles"
[admin.settings.endpoints.groupsToRemove]
description = "Sélectionner les groupes de points de terminaison à désactiver"
label = "Groupes de points de terminaison désactivés"
[admin.settings.endpoints.toRemove]
description = "Sélectionner les points de terminaison individuels à désactiver"
label = "Points de terminaison désactivés"
[admin.settings.enterpriseRequired]
message = "Une licence Entreprise est requise pour accéder à {{featureName}}. Vous consultez des données de démonstration à titre de référence."
title = "Licence Entreprise requise"
[admin.settings.features]
description = "Configurer les fonctionnalités optionnelles."
title = "Fonctionnalités"
[admin.settings.features.serverCertificate]
description = "Configurer la génération de certificat côté serveur pour la fonctionnalité \"Signer avec Stirling-PDF\""
label = "Certificat serveur"
[admin.settings.features.serverCertificate.enabled]
description = "Activer le certificat côté serveur pour l’option \"Signer avec Stirling-PDF\""
label = "Activer le certificat serveur"
[admin.settings.features.serverCertificate.organizationName]
description = "Nom de l’organisation pour les certificats générés"
label = "Nom de l’organisation"
[admin.settings.features.serverCertificate.regenerateOnStartup]
description = "Générer un nouveau certificat à chaque démarrage de l’application"
label = "Régénérer au démarrage"
[admin.settings.features.serverCertificate.validity]
description = "Nombre de jours pendant lesquels le certificat sera valide"
label = "Validité du certificat (jours)"
[admin.settings.general]
description = "Configurer les paramètres applicatifs à l’échelle du système, y compris l’image de marque et le comportement par défaut."
system = "Système"
title = "Paramètres système"
ui = "Interface utilisateur"
[admin.settings.general.appName]
description = "Nom affiché dans l’onglet du navigateur et sur la page d’accueil"
label = "Nom de l’application"
[admin.settings.general.appNameNavbar]
description = "Nom affiché dans la barre de navigation"
label = "Nom de la barre de navigation"
[admin.settings.general.customHTMLFiles]
description = "Autoriser la diffusion de fichiers HTML personnalisés depuis le répertoire customFiles"
label = "Fichiers HTML personnalisés"
[admin.settings.general.customMetadata]
label = "Métadonnées personnalisées"
[admin.settings.general.customMetadata.author]
description = "Auteur par défaut pour les métadonnées PDF (ex. : nom d’utilisateur)"
label = "Auteur par défaut"
[admin.settings.general.customMetadata.autoUpdate]
description = "Mettre automatiquement à jour les métadonnées PDF sur tous les documents traités"
label = "Mise à jour automatique des métadonnées"
[admin.settings.general.customMetadata.creator]
description = "Créateur par défaut pour les métadonnées PDF"
label = "Créateur par défaut"
[admin.settings.general.customMetadata.producer]
description = "Producteur par défaut pour les métadonnées PDF"
label = "Producteur par défaut"
[admin.settings.general.customPaths]
description = "Configurer des chemins de système de fichiers personnalisés pour le traitement par pipeline et les outils externes"
label = "Chemins personnalisés"
[admin.settings.general.customPaths.operations]
label = "Chemins des outils externes"
[admin.settings.general.customPaths.operations.unoconvert]
description = "Chemin vers LibreOffice unoconvert pour les conversions de documents (laisser vide pour la valeur par défaut : /opt/venv/bin/unoconvert)"
label = "Exécutable Unoconvert"
[admin.settings.general.customPaths.operations.weasyprint]
description = "Chemin vers l’exécutable WeasyPrint pour la conversion HTML vers PDF (laisser vide pour la valeur par défaut : /opt/venv/bin/weasyprint)"
label = "Exécutable WeasyPrint"
[admin.settings.general.customPaths.pipeline]
label = "Répertoires du pipeline"
[admin.settings.general.customPaths.pipeline.finishedFoldersDir]
description = "Répertoire où les PDF traités sont produits (laisser vide pour la valeur par défaut : /pipeline/finishedFolders)"
label = "Répertoire des dossiers terminés"
[admin.settings.general.customPaths.pipeline.pipelineDir]
description = "Base directory for pipeline resources (leave empty for default: /pipeline)"
label = "Pipeline Directory"
[admin.settings.general.customPaths.pipeline.watchedFoldersDir]
description = "Répertoire où le pipeline surveille les PDF entrants (laisser vide pour la valeur par défaut : /pipeline/watchedFolders)"
label = "Répertoire des dossiers surveillés"
[admin.settings.general.customPaths.pipeline.watchedFoldersDirs]
description = "Directories where pipeline monitors for incoming PDFs (one per line or comma-separated; leave empty for default: /pipeline/watchedFolders)"
label = "Watched Folders Directories"
[admin.settings.general.defaultLocale]
description = "Langue par défaut pour les nouveaux utilisateurs (ex. : en_US, es_ES)"
label = "Langue par défaut"
[admin.settings.general.fileUploadLimit]
description = "Taille maximale de téléversement de fichier (ex. : 100MB, 1GB)"
label = "Limite de téléversement"
[admin.settings.general.frontendUrl]
description = "URL de base du frontend (ex., https://pdf.example.com). Utilisée pour les liens d’invitation par e-mail et les téléversements mobiles via QR code. Laissez vide pour utiliser l’URL du backend."
label = "URL du frontend"
[admin.settings.general.hideDisabledTools]
description = "Masquer les outils désactivés de l’interface"
label = "Masquer les outils désactivés"
[admin.settings.general.hideDisabledTools.googleDrive]
description = "Masquer le bouton Google Drive lorsqu’il n’est pas activé"
label = "Masquer Google Drive"
[admin.settings.general.hideDisabledTools.mobileScanner]
description = "Masquer le bouton du scanner QR mobile lorsqu’il n’est pas activé"
label = "Masquer le scanner mobile"
[admin.settings.general.homeDescription]
description = "Texte de description affiché sur la page d’accueil"
label = "Description de l’accueil"
[admin.settings.general.languages]
description = "Langues parmi lesquelles les utilisateurs peuvent choisir (laisser vide pour activer toutes les langues)"
label = "Langues disponibles"
placeholder = "Sélectionner des langues"
[admin.settings.general.logoStyle]
classic = "Classique"
classicAlt = "Logo classique"
description = "Choisir entre le logo minimaliste moderne ou l’icône S classique"
label = "Style de logo"
modern = "Moderne"
modernAlt = "Logo moderne"
[admin.settings.general.showUpdate]
description = "Afficher des notifications lorsqu’une nouvelle version est disponible"
label = "Afficher les notifications de mise à jour"
[admin.settings.general.showUpdateOnlyAdmin]
description = "Limiter les notifications de mise à jour aux utilisateurs administrateurs uniquement"
label = "Afficher les mises à jour aux administrateurs uniquement"
[admin.settings.legal]
description = "Configurer les liens vers les documents et politiques juridiques."
title = "Documents juridiques"
[admin.settings.legal.accessibilityStatement]
description = "URL ou nom de fichier de la déclaration d’accessibilité"
label = "Déclaration d’accessibilité"
[admin.settings.legal.cookiePolicy]
description = "URL ou nom de fichier de la politique de cookies"
label = "Politique de cookies"
[admin.settings.legal.disclaimer]
message = "En personnalisant ces documents juridiques, vous assumez l’entière responsabilité de la conformité à toutes les lois et réglementations applicables, y compris, sans s’y limiter, au RGPD et autres exigences européennes en matière de protection des données. Ne modifiez ces paramètres que si : (1) vous exploitez une instance personnelle/privée, (2) vous êtes en dehors de la juridiction de l’UE et comprenez vos obligations légales locales, ou (3) vous avez obtenu un conseil juridique approprié et acceptez la responsabilité exclusive de toutes les données des utilisateurs et de la conformité légale. Stirling-PDF et ses développeurs n’assument aucune responsabilité quant à vos obligations légales."
title = "Avertissement de responsabilité légale"
[admin.settings.legal.impressum]
description = "URL ou nom de fichier de l’impressum (obligatoire dans certaines juridictions)"
label = "Mentions légales"
[admin.settings.legal.privacyPolicy]
description = "URL ou nom de fichier de la politique de confidentialité"
label = "Politique de confidentialité"
[admin.settings.legal.termsAndConditions]
description = "URL ou nom de fichier des conditions générales"
label = "Conditions générales"
[admin.settings.loginDisabled]
message = "Le mode de connexion doit être activé pour modifier les paramètres d’administration. Veuillez définir SECURITY_ENABLELOGIN=true dans votre environnement ou security.enableLogin: true dans settings.yml, puis redémarrer le serveur."
readOnly = "Les paramètres ci-dessous affichent des valeurs d’exemple à titre de référence. Activez le mode de connexion pour afficher et modifier la configuration réelle."
title = "Mode de connexion requis"
[admin.settings.mail]
description = "Configurer les paramètres SMTP pour l’envoi de notifications par e-mail."
smtp = "Configuration SMTP"
title = "Serveur de messagerie"
[admin.settings.mail.enabled]
description = "Activer les notifications par e-mail et la fonctionnalité SMTP"
label = "Activer l’e-mail"
[admin.settings.mail.enableInvites]
description = "Permettre aux administrateurs d’inviter des utilisateurs par e-mail avec des mots de passe générés automatiquement"
label = "Activer les invitations par e-mail"
[admin.settings.mail.from]
description = "Adresse e-mail à utiliser comme expéditeur"
label = "Adresse d’expéditeur"
[admin.settings.mail.frontendUrl]
description = "URL de base du frontend (ex. https://pdf.example.com). Utilisée pour générer les liens d’invitation dans les e-mails. Laisser vide pour utiliser l’URL du backend."
label = "URL du frontend"
[admin.settings.mail.frontendUrlNote]
link = "Configurer dans les paramètres du système"
note = "Remarque : nécessite la configuration de l’URL du frontend. "
[admin.settings.mail.host]
description = "Nom d’hôte ou adresse IP de votre serveur SMTP"
label = "Hôte SMTP"
[admin.settings.mail.password]
description = "Mot de passe pour l’authentification SMTP"
label = "Mot de passe SMTP"
[admin.settings.mail.port]
description = "Numéro de port pour la connexion SMTP (généralement 25, 465 ou 587)"
label = "Port SMTP"
[admin.settings.mail.username]
description = "Nom d’utilisateur pour l’authentification SMTP"
label = "Nom d’utilisateur SMTP"
[admin.settings.premium]
description = "Configurer votre clé de licence Premium ou Enterprise."
license = "Configuration de la licence"
noInput = "Veuillez fournir une clé de licence ou un fichier"
title = "Premium & Enterprise"
[admin.settings.premium.currentLicense]
file = "Source: Fichier de licence ({{path}})"
key = "Source: Clé de licence"
noInput = "Veuillez fournir une clé de licence ou téléverser un fichier de certificat"
success = "Succès"
title = "Licence active"
type = "Type : {{type}}"
[admin.settings.premium.enabled]
description = "Activer la vérification de la clé de licence pour les fonctionnalités Pro/Enterprise"
label = "Activer les fonctionnalités Premium"
[admin.settings.premium.file]
choose = "Choisir le fichier de licence"
description = "Téléversez votre fichier de licence .lic ou .cert issu d’achats hors ligne"
label = "Fichier de certificat de licence"
selected = "Sélectionné: {{filename}} ({{size}})"
successMessage = "Fichier de licence téléversé et activé avec succès. Aucun redémarrage requis."
[admin.settings.premium.inputMethod]
file = "Fichier de certificat"
text = "Clé de licence"
[admin.settings.premium.key]
description = "Saisissez votre clé de licence Premium ou Enterprise"
label = "Clé de licence"
success = "Clé de licence enregistrée"
successMessage = "Votre clé de licence a été activée avec succès. Aucun redémarrage requis."
[admin.settings.premium.key.overwriteWarning]
line1 = "Écraser votre clé de licence actuelle est irréversible."
line2 = "Votre licence précédente sera définitivement perdue, sauf si vous l’avez sauvegardée ailleurs."
line3 = "Important : gardez vos clés de licence privées et sécurisées. Ne les partagez jamais publiquement."
title = "⚠️ Avertissement : licence existante détectée"
[admin.settings.premium.licenseKey]
info = "Si vous avez une clé de licence ou un fichier de certificat suite à un achat direct, vous pouvez l’entrer ici pour activer les fonctionnalités Premium ou Enterprise."
toggle = "Vous avez une clé de licence ou un fichier de certificat ?"
[admin.settings.premium.movedFeatures]
message = "Les fonctionnalités Premium et Enterprise sont désormais organisées dans leurs sections respectives :"
title = "Fonctionnalités Premium réparties"
[admin.settings.privacy]
analytics = "Analyses et suivi"
description = "Configurer les paramètres de confidentialité et de collecte de données."
searchEngine = "Visibilité sur les moteurs de recherche"
title = "Confidentialité"
[admin.settings.privacy.enableAnalytics]
description = "Collecter des analyses d’utilisation anonymes pour aider à améliorer l’application"
label = "Activer les analyses"
[admin.settings.privacy.googleVisibility]
description = "Autoriser les moteurs de recherche à indexer cette application"
label = "Visibilité Google"
[admin.settings.privacy.metricsEnabled]
description = "Activer la collecte des métriques de performance et d’utilisation. Fournit un endpoint API permettant aux administrateurs d’accéder aux données de métriques"
label = "Activer les métriques"
[admin.settings.restart]
later = "Redémarrer plus tard"
message = "Les paramètres ont été enregistrés avec succès. Un redémarrage du serveur est requis pour que les changements prennent effet."
now = "Redémarrer maintenant"
question = "Souhaitez-vous redémarrer le serveur maintenant ou plus tard ?"
title = "Redémarrage requis"
[admin.settings.security]
authentication = "Authentification"
description = "Configurer l’authentification, le comportement de connexion et les politiques de sécurité."
title = "Sécurité"
[admin.settings.security.audit]
hideDetails = "Masquer les détails du niveau d’audit"
label = "Journal d’audit"
showDetails = "Afficher les détails du niveau d’audit"
[admin.settings.security.audit.advancedOptions]
description = "Les options suivantes augmentent le temps de traitement et l’utilisation mémoire. Activez-les uniquement si nécessaire."
title = "Options avancées"
[admin.settings.security.audit.captureFileHash]
description = "Extraire le hachage SHA-256 des fichiers PDF téléversés pour vérifier l’intégrité. Indépendant du niveau d’audit."
label = "Capturer le hachage de fichier (SHA-256)"
[admin.settings.security.audit.captureOperationResults]
description = "Capturer les valeurs de retour des méthodes. Non recommandé : augmente significativement le volume des journaux et l’utilisation du disque."
label = "Capturer les résultats de l’opération"
[admin.settings.security.audit.capturePdfAuthor]
description = "Extraire le champ auteur des documents PDF pendant le traitement. Nécessite l’analyse du PDF, augmente la latence. Indépendant du niveau d’audit."
label = "Capturer les métadonnées Auteur du PDF"
[admin.settings.security.audit.enabled]
description = "Suivre les actions des utilisateurs et les événements système pour la conformité et la surveillance de sécurité"
label = "Activer le journal d’audit"
[admin.settings.security.audit.level]
description = "0=OFF, 1=BASIC, 2=STANDARD, 3=VERBOSE"
label = "Niveau d’audit"
[admin.settings.security.audit.levelDetails]
basic = "Opérations sur les fichiers PDF (compress, split, merge, etc.) et modifications des paramètres. Capture : statut de l’opération (succès/échec), paramètres de méthode, temps. Volume de logs minimal."
off = "Aucune journalisation d’audit (sauf événements de sécurité critiques)"
standard = "Événements BASIC plus : connexion/déconnexion utilisateur, changements de compte, requêtes GET générales. Exclut les appels de sondage continus (/auth/me, /app-config, /health, etc.) pour réduire le bruit. Idéal pour la plupart des déploiements."
verbose = "Événements STANDARD plus : appels de sondage continus, toutes les requêtes GET, minutage détaillé. Avertissement : volume de journaux élevé et impact sur les performances."
[admin.settings.security.audit.retentionDays]
description = "Nombre de jours de conservation des journaux d’audit"
label = "Rétention des journaux (jours)"
[admin.settings.security.csrfDisabled]
description = "Désactiver la protection contre la falsification de requête intersites (non recommandé)"
label = "Désactiver la protection CSRF"
[admin.settings.security.enableLogin]
description = "Exiger que les utilisateurs se connectent avant d’accéder à l’application"
label = "Activer la connexion"
[admin.settings.security.htmlUrlSecurity]
advanced = "Paramètres avancés"
description = "Configurer les restrictions d’accès URL pour le traitement HTML afin de prévenir les attaques SSRF"
label = "Sécurité des URL HTML"
networkBlocking = "Blocage réseau"
[admin.settings.security.htmlUrlSecurity.allowedDomains]
description = "Un domaine par ligne (ex. : cdn.example.com). Seuls ces domaines sont autorisés lorsque le niveau est MAX"
label = "Domaines autorisés (liste blanche)"
[admin.settings.security.htmlUrlSecurity.blockCloudMetadata]
description = "Bloquer les endpoints de métadonnées des fournisseurs cloud (169.254.169.254)"
label = "Bloquer les endpoints de métadonnées cloud"
[admin.settings.security.htmlUrlSecurity.blockedDomains]
description = "Un domaine par ligne (ex. : malicious.com). Domaines supplémentaires à bloquer"
label = "Domaines bloqués (liste noire)"
[admin.settings.security.htmlUrlSecurity.blockLinkLocal]
description = "Bloquer les adresses link-local (169.254.x.x, fe80::/10)"
label = "Bloquer les adresses link-local"
[admin.settings.security.htmlUrlSecurity.blockLocalhost]
description = "Bloquer localhost et les adresses de bouclage (127.x.x.x, ::1)"
label = "Bloquer localhost"
[admin.settings.security.htmlUrlSecurity.blockPrivateNetworks]
description = "Bloquer les réseaux privés RFC 1918 (10.x.x.x, 192.168.x.x, 172.16-31.x.x)"
label = "Bloquer les réseaux privés"
[admin.settings.security.htmlUrlSecurity.enabled]
description = "Activer les restrictions de sécurité des URL pour les conversions HTML vers PDF"
label = "Activer la sécurité des URL"
[admin.settings.security.htmlUrlSecurity.internalTlds]
description = "Un TLD par ligne (ex. : .local, .internal). Bloquer les domaines avec ces motifs de TLD"
label = "TLD internes"
[admin.settings.security.htmlUrlSecurity.level]
description = "MAX : liste blanche uniquement, MEDIUM : blocage des réseaux internes, OFF : aucune restriction"
label = "Niveau de sécurité"
max = "Maximum (liste blanche uniquement)"
medium = "Moyen (bloquer l’interne)"
off = "Désactivé (aucune restriction)"
[admin.settings.security.initialLogin]
label = "Connexion initiale"
[admin.settings.security.initialLogin.password]
description = "Mot de passe du compte administrateur initial"
label = "Mot de passe initial"
[admin.settings.security.initialLogin.username]
description = "Nom d’utilisateur du compte administrateur initial"
label = "Nom d’utilisateur initial"
[admin.settings.security.jwt]
label = "Configuration JWT"
[admin.settings.security.jwt.allowedClockSkewSeconds]
description = "Tolérance de dérive horaire client/serveur lors de la validation du jeton (par défaut : 60 secondes)"
label = "Tolérance de dérive horaire (secondes)"
[admin.settings.security.jwt.desktopTokenExpiryMinutes]
description = "Durée de vie du jeton d’accès en minutes pour les clients de bureau. Les applications de bureau sont automatiquement détectées via l’User-Agent et reçoivent des sessions plus longues pour une meilleure expérience utilisateur (par défaut : 43200 = 30 jours)"
label = "Expiration du jeton de bureau (minutes)"
[admin.settings.security.jwt.enableKeyCleanup]
description = "Supprimer automatiquement les clés JWT expirées"
label = "Activer le nettoyage des clés"
[admin.settings.security.jwt.enableKeyRotation]
description = "Faire pivoter automatiquement les clés de signature JWT périodiquement"
label = "Activer la rotation des clés"
[admin.settings.security.jwt.persistence]
description = "Stocker les clés JWT de manière persistante pour survivre aux redémarrages du serveur"
label = "Activer la persistance des clés"
[admin.settings.security.jwt.refreshGraceMinutes]
description = "Autoriser l’actualisation du jeton pendant ce nombre de minutes après l’expiration (par défaut : 15 minutes, 3 tentatives maximum)"
label = "Période de grâce pour l’actualisation (minutes)"
[admin.settings.security.jwt.secureCookie]
description = "Exiger HTTPS pour les cookies JWT (recommandé en production)"
label = "Cookie sécurisé"
[admin.settings.security.jwt.tokenExpiryMinutes]
description = "Durée de vie du jeton d’accès en minutes pour les clients Web (par défaut : 1440 = 24 heures)"
label = "Expiration du jeton Web (minutes)"
[admin.settings.security.loginAttemptCount]
description = "Nombre maximal de tentatives de connexion échouées avant le verrouillage du compte"
label = "Limite de tentatives de connexion"
[admin.settings.security.loginMethod]
all = "Toutes les méthodes"
description = "Méthode d’authentification à utiliser pour la connexion des utilisateurs"
label = "Méthode de connexion"
normal = "Nom d’utilisateur/mot de passe uniquement"
oauth2 = "OAuth2 uniquement"
saml2 = "SAML2 uniquement"
[admin.settings.security.loginResetTimeMinutes]
description = "Délai avant la réinitialisation du compteur de tentatives de connexion échouées"
label = "Délai de réinitialisation (minutes)"
[admin.settings.security.ssoNotice]
message = "Les fournisseurs d’authentification OAuth2 et SAML2 ont été déplacés vers le menu Connexions pour une gestion facilitée."
title = "Vous cherchez les paramètres SSO/SAML ?"
[admin.settings.security.xFrameOptions]
deny = "Deny (Prevents all framing)"
description = "Controls whether the application can be embedded in iframes"
disabled = "Disabled (No X-Frame-Options header)"
label = "X-Frame-Options"
sameorigin = "Same Origin (Allow framing from same domain)"
[admin.settings.storage]
description = "Contrôler les options de stockage et de partage du serveur."
title = "Stockage et partage de fichiers"
[admin.settings.storage.enabled]
description = "Autoriser les utilisateurs à stocker des fichiers sur le serveur."
label = "Activer le stockage de fichiers sur le serveur"
[admin.settings.storage.sharing.email]
description = "Autoriser le partage avec des adresses e-mail."
label = "Activer le partage par e-mail"
mailLink = "Configurer les paramètres de messagerie"
mailNote = "Nécessite une configuration de messagerie. "
[admin.settings.storage.sharing.enabled]
description = "Autoriser les utilisateurs à partager les fichiers stockés."
label = "Activer le partage"
[admin.settings.storage.sharing.links]
description = "Autoriser le partage via des liens nécessitant une connexion."
frontendUrlLink = "Configurer dans les paramètres système"
frontendUrlNote = "Nécessite une Frontend URL. "
label = "Activer les liens de partage"
[admin.settings.storage.signing.enabled]
description = "Autoriser les utilisateurs à créer des sessions de signature multi-participants. Nécessite l’activation du stockage de fichiers sur le serveur."
label = "Activer la signature de groupe (Alpha)"
[admin.settings.telegram]
description = "Configurer la connectivité du bot Telegram, les contrôles d’accès et le comportement des retours."
title = "Bot Telegram"
[admin.settings.telegram.accessControl]
description = "Restreindre quels utilisateurs ou canaux peuvent interagir avec le bot."
title = "Contrôle d’accès"
[admin.settings.telegram.allowChannelIDs]
description = "Saisissez les ID de canal Telegram autorisés à interagir avec le bot."
label = "ID de canal autorisés"
placeholder = "Ajoutez un ID de canal et appuyez sur Entrée"
[admin.settings.telegram.allowUserIDs]
description = "Saisissez les ID utilisateur Telegram autorisés à interagir avec le bot."
label = "ID utilisateur autorisés"
placeholder = "Ajoutez un ID utilisateur et appuyez sur Entrée"
[admin.settings.telegram.botToken]
description = "Jeton API fourni par BotFather pour votre bot Telegram."
label = "Jeton du bot"
[admin.settings.telegram.botUsername]
description = "Le nom d’utilisateur public de votre bot Telegram."
label = "Nom d’utilisateur du bot"
[admin.settings.telegram.customFolderSuffix]
description = "Ajouter l’ID du chat aux dossiers des fichiers entrants pour isoler les téléversements par chat."
label = "Utiliser un suffixe de dossier personnalisé"
[admin.settings.telegram.enableAllowChannelIDs]
description = "Lorsque activé, seuls les ID de canal listés peuvent utiliser le bot."
label = "Autoriser des ID de canal spécifiques"
[admin.settings.telegram.enableAllowUserIDs]
description = "Lorsque activé, seuls les ID utilisateur listés peuvent utiliser le bot."
label = "Autoriser des ID utilisateur spécifiques"
[admin.settings.telegram.enabled]
description = "Permettre aux utilisateurs d’interagir avec Stirling PDF via votre bot Telegram configuré."
label = "Activer le bot Telegram"
[admin.settings.telegram.feedback]
description = "Choisissez quand le bot doit envoyer des retours aux utilisateurs et aux canaux."
title = "Messages de retour"
[admin.settings.telegram.feedback.channel]
title = "Règles de retour (canaux)"
[admin.settings.telegram.feedback.channel.errorMessage]
description = "Afficher des messages d’erreur détaillés pour les canaux."
label = "Afficher les messages d’erreur (Canal)"
[admin.settings.telegram.feedback.channel.errorProcessing]
description = "Envoyer les messages d’erreur de traitement aux canaux."
label = "Afficher les erreurs de traitement (Canal)"
[admin.settings.telegram.feedback.channel.noValidDocument]
description = "Supprimer la réponse « aucun document valide » pour les téléversements de canal."
label = "Afficher « Aucun document valide » (Canal)"
[admin.settings.telegram.feedback.general.enabled]
description = "Contrôler si le bot envoie des messages de retour ou non."
label = "Activer les retours"
[admin.settings.telegram.feedback.user]
title = "Règles de retour (utilisateurs)"
[admin.settings.telegram.feedback.user.errorMessage]
description = "Afficher des messages d’erreur détaillés pour les utilisateurs."
label = "Afficher les messages d’erreur (Utilisateur)"
[admin.settings.telegram.feedback.user.errorProcessing]
description = "Envoyer les messages d’erreur de traitement aux utilisateurs."
label = "Afficher les erreurs de traitement (Utilisateur)"
[admin.settings.telegram.feedback.user.noValidDocument]
description = "Supprimer la réponse « aucun document valide » pour les téléversements utilisateur."
label = "Afficher « Aucun document valide » (Utilisateur)"
[admin.settings.telegram.pipelineInboxFolder]
description = "Dossier sous le répertoire pipeline où sont stockés les fichiers Telegram entrants."
label = "Dossier de réception"
[admin.settings.telegram.pollingIntervalMillis]
description = "Intervalle entre les vérifications des nouvelles mises à jour Telegram."
label = "Intervalle d’interrogation (ms)"
[admin.settings.telegram.processing]
description = "Contrôler les intervalles d’interrogation et les délais de traitement pour les téléversements Telegram."
title = "Traitement"
[admin.settings.telegram.processingTimeoutSeconds]
description = "Temps d’attente maximal d’un job de traitement avant de signaler une erreur."
label = "Délai de traitement (secondes)"
[admin.settings.unsavedChanges]
cancel = "Continuer l’édition"
discard = "Ignorer les modifications"
hint = "Vous avez des modifications non enregistrées"
message = "Vous avez des modifications non enregistrées. Voulez-vous les ignorer ?"
title = "Modifications non enregistrées"
[admin.status]
active = "Actif"
inactive = "Inactif"
[adminOnboarding]
adminTools = "Enfin, nous disposons d’outils d’administration avancés comme l’Audit pour suivre l’activité du système et l’Analyse d’utilisation pour surveiller la façon dont vos utilisateurs interagissent avec la plateforme."
configButton = "Cliquez sur le bouton Config pour accéder à tous les paramètres système et aux contrôles d’administration."
connectionsSection = "La section Connexions prend en charge diverses méthodes de connexion, y compris des SSO personnalisés et des fournisseurs SAML comme Google et GitHub, ainsi que des intégrations e-mail pour les notifications et communications."
databaseSection = "Pour les environnements de production avancés, nous proposons des paramètres permettant des connexions à des bases de données externes afin de vous intégrer à votre infrastructure existante."
settingsOverview = "Voici le Panneau des paramètres. Les paramètres d’administration sont organisés par catégorie pour une navigation facile."
systemCustomization = "Nous offrons de nombreuses façons de personnaliser l’interface : les Paramètres système permettent de changer le nom de l’application et les langues, Fonctionnalités permet la gestion des certificats serveur, et Points de terminaison vous permet d’activer ou de désactiver des outils spécifiques pour vos utilisateurs."
teamsAndUsers = "Gérez ici les Équipes et les utilisateurs individuels. Vous pouvez inviter de nouveaux utilisateurs par e-mail, via des liens partageables ou créer vous-même des comptes personnalisés pour eux."
welcome = "Bienvenue dans la Visite Admin ! Explorons les puissantes fonctionnalités d’entreprise et les paramètres disponibles pour les administrateurs système."
wrapUp = "C’est la visite admin ! Vous avez vu les fonctionnalités d’entreprise qui font de Stirling PDF une solution puissante et personnalisable pour les organisations. Accédez à cette visite à tout moment depuis le menu Aide."
[adminUserSettings]
actions = "Actions"
activeUsers = "Utilisateurs actifs :"
addUser = "Ajouter un utilisateur"
admin = "Administrateur"
apiUser = "Utilisateur API limité"
authenticated = "Authentifié"
changeUserRole = "Changer le rôle de l'utilisateur"
confirmChangeUserStatus = "Voulez-vous vraiment désactiver/réactiver l'utilisateur ?"
confirmDeleteUser = "Voulez-vous vraiment supprimer l'utilisateur ?"
deleteUser = "Supprimer l'utilisateur"
demoUser = "Demo User (Paramètres par défaut)"
disabledUser = "Utilisateur désactivé"
disabledUsers = "Utilisateurs désactivés :"
editOwnProfil = "Éditer son propre profil"
enabledUser = "Utilisateur activé"
extraApiUser = "Utilisateur limité supplémentaire de l'API"
forceChange = "Forcer l'utilisateur à changer son nom d'utilisateur/mot de passe lors de la connexion"
header = "Administration des paramètres des utilisateurs"
internalApiUser = "Utilisateur de l'API interne"
lastRequest = "Dernière requête"
role = "Rôle"
roles = "Rôles"
submit = "Ajouter"
title = "Administration des paramètres des utilisateurs"
totalUsers = "Utilisateurs au total :"
usage = "Voir l'utilisation"
user = "Utilisateur"
usernameInfo = "Le nom d'utilisateur ne peut contenir que des lettres, des chiffres et les caractères spéciaux suivants @._+- ou doit être une adresse e-mail valide."
webOnlyUser = "Utilisateur Web uniquement"
[analytics]
disable = "Désactiver les analyses"
enable = "Activer les analyses"
learnMore = "En savoir plus"
paragraph1 = "Stirling PDF utilise des analyses volontaires pour nous aider à améliorer le produit. Nous ne suivons aucune information personnelle ni le contenu des fichiers."
paragraph2 = "Veuillez envisager d'activer les analyses pour aider Stirling-PDF à se développer et pour nous permettre de mieux comprendre nos utilisateurs."
privacyAssurance = "Nous ne suivons aucune information personnelle ni le contenu de vos fichiers."
settings = "Vous pouvez modifier les paramètres des analyses dans le fichier config/settings.yml"
title = "Souhaitez-vous améliorer Stirling PDF ?"
[annotation]
annotationStyle = "Style d'annotation"
applyChanges = "Appliquer les modifications"
backgroundColor = "Couleur d’arrière-plan"
borderOff = "Bordure : désactivée"
borderOn = "Bordure : activée"
changeColor = "Changer la couleur"
chooseColor = "Choisir une couleur"
circle = "Cercle"
clearBackground = "Supprimer l’arrière-plan"
color = "Couleur"
comment = "Commentaire"
comments = "Commentaires"
contents = "Texte"
delete = "Supprimer"
desc = "Utilisez surlignage, stylo, texte et notes. Les modifications restent actives—aucun aplatissement requis."
drawing = "Dessin"
duplicate = "Dupliquer"
editCircle = "Modifier le cercle"
editInk = "Modifier le stylo"
editLine = "Modifier la ligne"
editNote = "Modifier la note"
editPolygon = "Modifier le polygone"
editSelectDescription = "Cliquez une annotation existante pour en modifier la couleur, l’opacité, le texte ou la taille."
editSelected = "Modifier l’annotation"
editSquare = "Modifier le carré"
editStampHint = "Pour changer l’image, supprimez ce tampon et ajoutez-en un nouveau."
editSwitchToSelect = "Basculez sur Sélectionner et modifier pour modifier cette annotation."
editText = "Modifier la zone de texte"
editTextMarkup = "Modifier le marquage de texte"
ellipse = "Ellipse"
exit = "Quitter le mode d’annotation"
fillColor = "Couleur de remplissage"
fillOpacity = "Opacité de remplissage"
fontSize = "Taille de police"
freehandHighlighter = "Surligneur à main levée"
highlight = "Surligner"
imagePreview = "Aperçu"
inkHighlighter = "Surligneur à main levée"
insertText = "Insérer du texte"
line = "Ligne"
lineArrow = "Flèche"
noBackground = "Sans arrière-plan"
note = "Note"
noteIcon = "Icône de note"
notesStamps = "Notes et tampons"
opacity = "Opacité"
pen = "Stylo"
polygon = "Polygone"
polyline = "Ligne brisée"
properties = "Propriétés"
rectangle = "Rectangle"
redo = "Rétablir"
replaceText = "Remplacer le texte"
saveChanges = "Enregistrer les modifications"
saveFailed = "Impossible d’enregistrer une copie"
saveReady = "Téléchargement prêt"
savingCopy = "Préparation du téléchargement..."
select = "Sélectionner"
selectAndMove = "Sélectionner et modifier"
settings = "Paramètres"
shapes = "Formes"
square = "Carré"
squiggly = "Ondulé"
stamp = "Ajouter une image"
stampSettings = "Paramètres du tampon"
strikeout = "Barré"
strokeColor = "Couleur du trait"
strokeOpacity = "Opacité du trait"
strokeWidth = "Épaisseur"
text = "Zone de texte"
textAlignment = "Alignement du texte"
textMarkup = "Marquage de texte"
title = "Annoter"
underline = "Souligner"
undo = "Annuler"
unsupportedType = "Ce type d’annotation n’est pas entièrement pris en charge pour l’édition."
width = "Largeur"
[app]
description = "L’alternative gratuite à Adobe Acrobat (10M+ téléchargements)"
[attachments]
add = "Ajouter une pièce jointe"
convertToPdfA3b = "Convertir en PDF/A-3b"
convertToPdfA3bDescription = "Crée un PDF d’archivage avec pièces jointes intégrées"
convertToPdfA3bTooltip = "PDF/A-3b est un format d’archivage garantissant une conservation à long terme. Il permet d’intégrer des formats de fichiers arbitraires en tant que pièces jointes. La conversion nécessite Ghostscript et peut être plus longue pour les gros fichiers."
convertToPdfA3bTooltipHeader = "À propos de la conversion PDF/A-3b"
convertToPdfA3bTooltipTitle = "Ce que cela fait"
embed = "Intégrer la pièce jointe"
header = "Ajouter des pièces jointes"
remove = "Supprimer la pièce jointe"
submit = "Ajouter des pièces jointes"
tags = "intégrer,joindre,fichier,pièce,jointe,embed,attach,file,attachment,attachments"
title = "Ajouter des pièces jointes"
[audit]
configureAudit = "Configurer la journalisation d’audit"
configureAuditMessage = "Ajustez le niveau de journalisation d’audit, la période de rétention et autres paramètres dans la section Sécurité et authentification."
disabled = "La journalisation d’audit est désactivée"
disabledMessage = "Activez la journalisation d’audit dans la configuration de votre application pour suivre les événements du système."
enterpriseRequired = "Licence Enterprise requise"
enterpriseRequiredMessage = "Le système de journalisation d’audit est une fonctionnalité Enterprise. Veuillez passer à une licence Enterprise pour accéder aux journaux d’audit et aux analyses."
goToSettings = "Aller aux paramètres d’audit"
notAvailable = "Système d’audit non disponible"
notAvailableMessage = "Le système d’audit n’est pas configuré ou n’est pas disponible."
[audit.charts]
byTool = "Outils les plus utilisés"
byType = "Événements par type"
byUser = "Événements par utilisateur"
day = "Jour"
error = "Erreur lors du chargement des graphiques"
hourlyActivity = "Activité horaire"
month = "Mois"
noData = "Aucune donnée pour cette période"
overTime = "Événements dans le temps"
title = "Tableau de bord d’audit"
week = "Semaine"
[audit.clearData]
cancel = "Annuler"
codeDoesNotMatch = "Le code ne correspond pas"
codePlaceholder = "Saisissez le code ici"
confirmationCode = "Code de confirmation"
confirmationRequired = "Supprimer toutes les données d’audit"
confirmMessage = "Cela supprimera définitivement tous les journaux d’audit. Saisissez le code de confirmation ci-dessous pour continuer."
confirmTitle = "Veuillez confirmer que vous souhaitez supprimer"
deleteButton = "Supprimer"
enterCode = "Code de confirmation"
enterCodeBelow = "Entrez le code exactement tel qu’affiché ci-dessus (sensible à la casse)"
initiateDelete = "Supprimer toutes les données"
irreversible = "IRRÉVERSIBLE"
success = "Succès"
successMessage = "Toutes les données d’audit ont été supprimées avec succès"
warning1 = "Cette action est irréversible"
warning2 = "La suppression des données d’audit éliminera définitivement tous les journaux d’audit historiques, y compris les événements de sécurité, les activités des utilisateurs et les opérations sur fichiers de la base de données."
[audit.error]
title = "Erreur lors du chargement du système d’audit"
[audit.events]
actions = "Actions"
author = "Auteur"
clearFilters = "Effacer"
details = "Détails"
documentName = "Document"
endDate = "Date de fin"
error = "Erreur lors du chargement des événements"
eventDetails = "Détails de l’événement"
failure = "Échec"
fileHash = "Hachage de fichier"
filterByType = "Filtrer par type"
filterByUser = "Filtrer par utilisateur"
ipAddress = "Adresse IP"
noEvents = "Aucun événement trouvé"
outcome = "Statut"
sortAsc = "Trier par ordre croissant"
sortDesc = "Trier par ordre décroissant"
startDate = "Date de début"
success = "Succès"
timestamp = "Horodatage"
title = "Événements d’audit"
type = "Type"
user = "Utilisateur"
viewDetails = "Voir les détails"
[audit.export]
clearFilters = "Effacer"
description = "Exporter les événements d’audit au format CSV ou JSON. Utilisez des filtres pour limiter les données exportées."
endDate = "Date de fin"
error = "Échec de l’export des données"
exportButton = "Exporter les données"
fieldAuthor = "Auteur (depuis le PDF)"
fieldDate = "Date"
fieldDocumentName = "Nom du document"
fieldFileHash = "Hachage de fichier (SHA-256)"
fieldIpAddress = "Adresse IP"
fieldOperationResults = "Résultats de l’opération"
fieldOutcome = "Résultat (Succès/Échec)"
fieldTool = "Outil"
fieldUsername = "Nom d’utilisateur"
filterByType = "Filtrer par type"
filterByUser = "Filtrer par utilisateur"
filters = "Filtres (facultatif)"
format = "Format d’export"
selectFields = "Sélectionner les champs à inclure"
startDate = "Date de début"
title = "Exporter les données d’audit"
verboseRequired = "Nécessite le niveau d’audit VERBOSE"
[audit.filters]
allOutcomes = "Tous"
failureOnly = "Échecs uniquement"
last30Days = "30 derniers jours"
last7Days = "7 derniers jours"
outcomeFilter = "Résultat"
quickPresets = "Filtres rapides"
successOnly = "Succès uniquement"
thisMonth = "Ce mois-ci"
today = "Aujourd’hui"
[audit.stats]
activeUsers = "Utilisateurs actifs"
attention = "Attention requise"
avgLatency = "Latence moyenne"
error = "Erreur de chargement des statistiques"
errorLoadingStats = "Échec du chargement des statistiques"
excellent = "Excellent"
good = "Bon"
noData = "N/A"
successRate = "Taux de réussite"
title = "Résumé"
totalEvents = "Nombre total d’événements"
vsLastPeriod = "par rapport à la période précédente"
[audit.systemStatus]
autoRefresh = "Actualisation automatique"
autoRefreshLabel = "Actualisation automatique toutes les 30 s"
captureBySettings = "Activer dans les paramètres"
capturedFields = "Champs capturés"
date = "Date"
days = "jours"
disabled = "Désactivé"
documentName = "Nom du document"
enabled = "Activé"
fileHash = "Hachage de fichier"
level = "Niveau d’audit"
pdfAuthor = "Auteur PDF"
retention = "Période de rétention"
status = "Journalisation d’audit"
title = "État du système"
tool = "Outil"
totalEvents = "Nombre total d’événements"
username = "Nom d’utilisateur"
verboseOnly = "VERBOSE uniquement"
[audit.tabs]
clearData = "Effacer les données"
dashboard = "Tableau de bord"
events = "Événements d’audit"
export = "Exporter"
[auth]
accessDenied = "Accès refusé"
insufficientPermissions = "Vous n'avez pas l'autorisation d'effectuer cette action."
pleaseLoginAgain = "Veuillez vous reconnecter."
sessionExpired = "Session expirée"
[auto-rename]
description = "Trouve automatiquement le titre dans le contenu de votre PDF et l’utilise comme nom de fichier."
header = "Renommer automatiquement"
submit = "Renommer automatiquement"
tags = "renommer,détection automatique,réétiqueter,auto-detect,header-based,organize,relabel"
title = "Renommer automatiquement"
[auto-rename.error]
failed = "Une erreur est survenue lors du renommage automatique du PDF."
[auto-rename.files]
placeholder = "Sélectionnez un fichier PDF dans la vue principale pour commencer"
[auto-rename.results]
title = "Résultats du renommage automatique"
[auto-rename.settings]
title = "À propos"
[auto-rename.tooltip.description]
title = "Ce que fait l’outil"
[auto-rename.tooltip.header]
title = "Fonctionnement du renommage automatique"
[auto-rename.tooltip.howItWorks]
bullet1 = "Recherche du texte ressemblant à un titre ou un en-tête"
bullet2 = "Crée un nom de fichier propre et valide à partir du titre détecté"
bullet3 = "Conserve le nom d’origine si aucun titre adapté n’est trouvé"
text = "Trouve automatiquement le titre dans votre contenu PDF et l’utilise comme nom de fichier."
title = "Renommage intelligent"
[automate]
copyToSaved = "Copier vers Enregistré"
desc = "Créez des workflows multi-étapes en enchaînant des actions PDF. Idéal pour les tâches récurrentes."
export = "Exporter"
exportForFolderScanning = "Exporter pour l'analyse de dossier"
import = "Importer"
importPartialSuccess = "Importé avec {{count}} opération(s) non associée(s) : {{ops}}"
importSuccess = "Automatisation importée : {{name}}"
invalidStep = "Étape invalide"
reviewTitle = "Résultats de l’automatisation"
title = "Automatiser"
[automate.config]
cancel = "Annuler"
description = "Configurez les paramètres de cet outil. Ils seront appliqués lors de l’exécution de l’automatisation."
loading = "Chargement de la configuration de l’outil…"
noSettings = "Cet outil n’a pas de paramètres configurables."
save = "Enregistrer la configuration"
title = "Configurer {{toolName}}"
[automate.creation]
createTitle = "Créer une automatisation"
editTitle = "Modifier l’automatisation"
export = "Exporter"
exportForFolderScanning = "Exporter pour l'analyse de dossier"
intro = "Les automatisations exécutent les outils séquentiellement. Pour commencer, ajoutez les outils dans l’ordre d’exécution souhaité."
save = "Enregistrer l’automatisation"
[automate.creation.description]
label = "Description (facultatif)"
placeholder = "Décrivez ce que fait cette automatisation…"
[automate.creation.icon]
label = "Icône"
[automate.creation.name]
label = "Nom de l’automatisation"
placeholder = "Mon automatisation"
[automate.creation.tools]
add = "Ajouter un outil…"
addTool = "Ajouter l’outil"
configure = "Configurer l’outil"
notConfigured = " ! Non configuré"
remove = "Supprimer l’outil"
selected = "Outils sélectionnés"
selectTool = "Sélectionner un outil…"
[automate.creation.unsavedChanges]
cancel = "Annuler"
confirm = "Revenir en arrière"
message = "Vous avez des modifications non enregistrées. Êtes-vous sûr de vouloir revenir en arrière ? Toutes les modifications seront perdues."
title = "Modifications non enregistrées"
[automate.entryMenu]
label = "Ouvrir le menu pour {{title}}"
[automate.files]
placeholder = "Sélectionnez des fichiers à traiter avec cette automatisation"
[automate.importModal]
cancel = "Annuler"
confirm = "Importer"
detectedAutomation = "JSON Automate"
detectedFolderScan = "JSON de surveillance de dossier"
dropHint = "Déposez le JSON ici ou cliquez pour choisir un fichier"
dropSubhint = "Les configurations Automate et de surveillance de dossier sont acceptées"
dropzoneAriaLabel = "Déposez ici un fichier JSON d’automatisation"
intro = "Déposez un fichier JSON ou collez son contenu ci-dessous. Le format (Automate ou Surveillance de dossier) est détecté automatiquement."
opCount = "{{count}} opération(s)"
parseError = "Impossible d’analyser : {{message}}"
pasteLabel = "Ou collez le JSON"
pastePlaceholder = "Collez ici votre JSON d’automatisation…"
title = "Importer une automatisation"
unresolved = "Non associées : {{ops}}"
[automate.run]
title = "Exécuter l’automatisation"
[automate.selection]
title = "Sélection d’automatisation"
[automate.selection.createNew]
title = "Créer une nouvelle automatisation"
[automate.selection.saved]
title = "Enregistré"
[automate.selection.suggested]
title = "Suggéré"
[automate.sequence]
finish = "Terminer"
run = "Lancer l’automatisation"
running = "Exécution de l’automatisation…"
steps = "{{count}} étapes"
unnamed = "Automatisation sans nom"
[automation.suggested]
emailPreparation = "Préparation des e-mails"
emailPreparationDesc = "Optimise les PDF pour la distribution par e-mail en compressant les fichiers, en scindant les documents volumineux en blocs de 20 Mo pour la compatibilité e-mail et en supprimant les métadonnées pour la confidentialité."
prePublishSanitization = "Nettoyage avant publication"
prePublishSanitizationDesc = "Flux de nettoyage qui supprime toutes les métadonnées cachées, JavaScript, fichiers intégrés, annotations, et aplatit les formulaires pour éviter toute fuite de données avant de publier des PDF en ligne."
processImages = "Traiter les images"
processImagesDesc = "Convertit plusieurs fichiers image en un seul document PDF, puis applique la technologie OCR pour extraire un texte recherchable à partir des images."
securePdfIngestion = "Ingestion PDF sécurisée"
securePdfIngestionDesc = "Workflow complet de traitement PDF qui assainit les documents, applique l’OCR avec nettoyage, convertit en format PDF/A pour l’archivage à long terme et optimise la taille du fichier."
secureWorkflow = "Workflow de sécurité"
secureWorkflowDesc = "Sécurise les documents PDF en supprimant les contenus potentiellement malveillants comme JavaScript et les fichiers intégrés, puis ajoute une protection par mot de passe pour empêcher tout accès non autorisé. Par défaut, le mot de passe est « password »."
[autoRename]
description = "Cet outil renommera automatiquement les fichiers PDF en fonction de leur contenu. Il analyse le document pour trouver le titre le plus approprié à partir du texte."
[autoSizeSplitPDF]
tags = "pdf, découpage, document, organisation"
[autoSplitPDF]
description = "Imprimez, insérez, numérisez, téléchargez et laissez-nous séparer automatiquement vos documents. Aucun travail de tri manuel nécessaire."
dividerDownload2 = "Auto Splitter Divider (with instructions).pdf"
duplexMode = "Mode recto-verso"
formPrompt = "PDF contenant des feuilles de séparation de Stirling PDF :"
header = "Séparer automatiquement les pages"
submit = "Séparer"
tags = "séparer,QR-based,separate,scan-segment,organize"
title = "Séparer automatiquement les pages"
[autoSplitPDF.selectText]
1 = "Imprimez des feuilles de séparation ci-dessous (le mode noir et blanc convient)."
2 = "Numérisez tous vos documents en une seule fois en insérant les feuilles intercalaires entre eux."
3 = "Téléchargez le fichier PDF numérisé et laissez Stirling PDF s'occuper du reste."
4 = "Les feuilles de séparation sont automatiquement détectées et supprimées, garantissant un document final soigné."
[backendHealth]
checking = "Vérification de l’état du backend..."
offline = "Backend hors ligne"
online = "Backend en ligne"
starting = "Démarrage du backend..."
wait = "Veuillez attendre la fin du lancement du backend, puis réessayez."
[backendStartup]
notFoundTitle = "Backend introuvable"
retry = "Réessayer"
unreachable = "L’application ne peut actuellement pas se connecter au backend. Vérifiez l’état du backend et la connectivité réseau, puis réessayez."
[billing]
basedOnUsers = "(utilisateurs actuels)"
currentSeats = "Places actuelles"
manageBilling = "Gérer la facturation"
minimumSeats = "Places minimales"
newSeatCount = "Nouveau nombre de places"
newSeatCountDescription = "Sélectionnez le nombre de places pour votre licence Enterprise"
notEnterprise = "La gestion des places est réservée aux licences Enterprise"
preparingUpdate = "Préparation de la mise à jour des places…"
seatCountTooLow = "Le nombre de places doit être d’au moins {{minimum}} (nombre actuel d’utilisateurs)"
seatCountUnchanged = "Veuillez choisir un nombre de places différent"
seatsUpdated = "Places mises à jour"
seatsUpdatedMessage = "Vos places Enterprise ont été mises à jour à {{seats}}"
stripePortalRedirect = "Vous serez redirigé vers le portail de facturation Stripe pour vérifier et confirmer la modification du nombre de places. Le montant au prorata sera calculé automatiquement."
updateEnterpriseSeats = "Mettre à jour les places Enterprise"
updateProcessing = "Mise à jour en cours"
updateProcessingMessage = "Votre mise à jour des places est en cours de traitement. Veuillez actualiser dans quelques instants."
updateSeats = "Mettre à jour les places"
whatHappensNext = "Et ensuite ?"
[billing.portal]
error = "Échec de l’ouverture du portail de facturation"
[bookletImposition]
header = "Imposition en livret"
paperSizeNote = "La taille du papier est automatiquement dérivée de votre première page."
submit = "Créer le livret"
tags = "livret,imposition,impression,reliure,pliage,signature"
title = "Imposition en livret"
[bookletImposition.addBorder]
label = "Ajouter des bordures autour des pages"
tooltip = "Ajoute des bordures autour de chaque section de page pour faciliter la découpe et l’alignement"
[bookletImposition.addGutter]
label = "Ajouter une marge de reliure"
tooltip = "Ajoute un espace intérieur pour la reliure"
[bookletImposition.advanced]
toggle = "Options avancées"
[bookletImposition.doubleSided]
label = "Impression recto-verso"
tooltip = "Crée les faces avant et arrière pour une impression en livret correcte"
[bookletImposition.duplexPass]
first = "1re passe"
firstInstructions = "Imprime les faces avant → empilez face vers le bas → relancez avec la 2e passe"
label = "Passe d’impression"
second = "2e passe"
secondInstructions = "Chargez la pile imprimée face vers le bas → imprime les faces arrière"
[bookletImposition.error]
failed = "Une erreur est survenue lors de la création de l’imposition en livret."
[bookletImposition.flipOnShortEdge]
label = "Retourner sur le petit bord (duplex automatique uniquement)"
manualNote = "Inutile en mode manuel – vous retournez vous-même la pile"
tooltip = "Activer pour l’impression recto-verso sur le petit bord (duplex automatique uniquement – ignoré en mode manuel)"
[bookletImposition.gutterSize]
label = "Taille de marge (points)"
[bookletImposition.manualDuplex]
instructions = "Pour les imprimantes sans duplex automatique. Vous devrez lancer l’opération deux fois :"
title = "Mode duplex manuel"
[bookletImposition.rtlBinding]
label = "Reliure de droite à gauche"
tooltip = "Pour l’arabe, l’hébreu ou d’autres langues RTL"
[bookletImposition.spineLocation]
label = "Position de la reliure"
left = "Gauche (standard)"
right = "Droite (RTL)"
[bookletImposition.tooltip.advanced]
bullet1 = "Reliure de droite à gauche : pour les langues RTL"
bullet2 = "Bordures : affiche des traits de coupe pour le rognage"
bullet3 = "Marge de reliure : ajoute de l’espace pour relier/agrafer"
bullet4 = "Retour sur petit bord : seulement pour les imprimantes en duplex automatique"
text = "Ajustez finement votre livret :"
title = "Options avancées"
[bookletImposition.tooltip.description]
text = "Crée des livrets professionnels en arrangeant les pages dans le bon ordre d’impression. Vos pages PDF sont placées 2-par-page sur des feuilles paysage afin qu’une fois pliées et reliées, elles se lisent dans l’ordre correct comme un vrai livre."
title = "Qu’est-ce que l’imposition en livret ?"
[bookletImposition.tooltip.example]
bullet1 = "Feuille 1 Avant : Pages 8, 1 | Arrière : Pages 2, 7"
bullet2 = "Feuille 2 Avant : Pages 6, 3 | Arrière : Pages 4, 5"
bullet3 = "Une fois plié et empilé : lecture 1→2→3→4→5→6→7→8"
text = "Votre document de 8 pages devient 2 feuilles :"
title = "Exemple : livret de 8 pages"
[bookletImposition.tooltip.header]
title = "Guide de création de livret"
[bookletImposition.tooltip.manualDuplex]
bullet1 = "Désactivez « Impression recto-verso »"
bullet2 = "Sélectionnez « 1re passe » → Imprimez → Empilez face vers le bas"
bullet3 = "Sélectionnez « 2e passe » → Chargez la pile → Imprimez les dos"
bullet4 = "Pliez et assemblez normalement"
text = "Pour les imprimantes sans duplex automatique :"
title = "Duplex manuel (imprimantes simple face)"
[bookletImposition.tooltip.printing]
bullet1 = "Imprimez en recto-verso avec « Retour sur grand bord »"
bullet2 = "Empilez les feuilles dans l’ordre, pliez en deux"
bullet3 = "Agrafez ou reliez le long du pli"
bullet4 = "Pour les imprimantes sur petit bord : activez l’option « Retour sur petit bord »"
text = "Suivez ces étapes pour des livrets parfaits :"
title = "Comment imprimer et assembler"
[bulkSelection]
syntaxError = "Un problème de syntaxe est survenu. Consultez les conseils de sélection des pages pour obtenir de l’aide."
[bulkSelection.advanced]
title = "Avancé"
[bulkSelection.everyNthPage]
placeholder = "Pas"
title = "Toutes les N pages"
[bulkSelection.examples]
combineSets = "Combiner les ensembles"
every3rd = "Toutes les 3"
first50 = "Premières 50"
last50 = "Dernières 50"
oddWithinExcluding = "Impaires dans 1-20 en excluant 5-7"
title = "Exemples"
[bulkSelection.firstNPages]
placeholder = "Nombre de pages"
title = "Premières N pages"
[bulkSelection.header]
title = "Guide de sélection des pages"
[bulkSelection.keywords]
title = "Mots-clés"
[bulkSelection.lastNPages]
placeholder = "Nombre de pages"
title = "Dernières N pages"
[bulkSelection.operators]
and = "ET : & ou « and » — exige les deux conditions (p. ex. : 1-50 & even)"
comma = "Virgule : , ou | — combine les sélections (p. ex. : 1-10, 20)"
not = "NON : ! ou « not » — exclut des pages (p. ex. : 3n & not 30)"
text = "ET a une priorité plus élevée que la virgule. NON s’applique dans l’intervalle du document."
title = "Opérateurs"
[bulkSelection.range]
fromPlaceholder = "De"
title = "Plage"
toPlaceholder = "À"
[bulkSelection.syntax]
text = "Utilisez des nombres, des plages, des mots-clés et des progressions (n commence à 0). Les parenthèses sont prises en charge."
title = "Principes de base de la syntaxe"
[bulkSelection.syntax.bullets]
keywords = "Mots-clés : impair, pair"
numbers = "Nombres/plages : 5, 10-20"
progressions = "Progressions : 3n, 4n+1"
[certificateChoice.tooltip]
header = "Types de certificats"
[certificateChoice.tooltip.organization]
bullet1 = "Géré par les administrateurs système"
bullet2 = "Partagé entre les utilisateurs autorisés"
bullet3 = "Représente l’identité de l’entreprise, pas celle d’un individu"
bullet4 = "Idéal pour : documents officiels, signatures d’équipe"
description = "Un certificat partagé fourni par votre organisation. Utilisé pour l’autorité de signature à l’échelle de l’entreprise."
title = "Certificat d’organisation"
[certificateChoice.tooltip.personal]
bullet1 = "Généré automatiquement lors de la première utilisation"
bullet2 = "Lié à votre compte utilisateur"
bullet3 = "Ne peut pas être partagé avec d’autres utilisateurs"
bullet4 = "Idéal pour : documents personnels, responsabilité individuelle"
description = "Un certificat généré automatiquement et propre à votre compte utilisateur. Adapté aux signatures individuelles."
title = "Certificat personnel"
[certificateChoice.tooltip.upload]
bullet1 = "Nécessite un fichier P12/PFX et un mot de passe"
bullet2 = "Peut être délivré par des autorités de certification externes"
bullet3 = "Niveau de confiance supérieur pour les documents juridiques"
bullet4 = "Idéal pour : contrats juridiquement contraignants, validation externe"
description = "Utilisez votre propre fichier de certificat PKCS#12. Offre un contrôle total des propriétés du certificat."
title = "Téléverser un P12 personnalisé"
[certSign]
allSigned = "Tous les participants ont signé. Prêt à finaliser."
awaitingSignatures = "En attente de signatures"
chooseCertificate = "Choisir le fichier de certificat"
chooseJksFile = "Choisir le fichier JKS"
chooseP12File = "Choisir le fichier PKCS12"
choosePfxFile = "Choisir le fichier PFX"
choosePrivateKey = "Choisir le fichier de clé privée"
declined = "Refusé"
fetchFailed = "Échec du chargement des données de signature"
filenamePrefix = "signé"
finalized = "Finalisé"
location = "Emplacement"
logoTitle = "Logo"
name = "Nom"
noLogo = "Pas de logo"
notified = "En attente"
pageNumber = "Numéro de page"
partialNote = "Vous pouvez finaliser plus tôt avec les signatures actuelles. Les participants non signataires seront exclus."
password = "Mot de passe du certificat"
passwordOptional = "Laissez vide si aucun mot de passe"
pending = "En attente"
readyToFinalize = "Prêt à finaliser"
reason = "Raison"
serverCertMessage = "Utilisation du certificat du serveur — aucun fichier ni mot de passe requis"
showLogo = "Afficher le logo"
signatureProgress = "{{signedCount}}/{{totalCount}} signatures"
signed = "Signé"
tags = "signer,chiffrer,certificat,authenticate,PEM,P12,official,encrypt"
title = "Signer avec un certificat"
viewed = "Vu"
[certSign.appearance]
invisible = "Invisible"
stepTitle = "Apparence de la signature"
visibility = "Visibilité"
visible = "Visible"
[certSign.appearance.options]
title = "Détails de la signature"
[certSign.appearance.tooltip.header]
title = "À propos de l’apparence de la signature"
[certSign.appearance.tooltip.invisible]
bullet1 = "Fournit de la sécurité sans changement visuel"
bullet2 = "Répond aux exigences légales de signature numérique"
bullet3 = "N’affecte pas la mise en page ou le design du document"
text = "La signature est ajoutée au PDF pour la sécurité mais n’est pas visible à l’affichage. Parfait pour répondre aux exigences légales sans modifier l’apparence du document."
title = "Signatures invisibles"
[certSign.appearance.tooltip.visible]
bullet1 = "Affiche le nom du signataire et la date sur le document"
bullet2 = "Peut inclure la raison et le lieu de signature"
bullet3 = "Choisissez la page où placer la signature"
bullet4 = "Logo facultatif"
text = "Affiche un bloc de signature sur le PDF avec votre nom, la date et des détails optionnels. Utile lorsque vous voulez que les lecteurs voient clairement que le document est signé."
title = "Signatures visibles"
[certSign.certFiles]
stepTitle = "Fichiers de certificat"
[certSign.certType.tooltip.convert]
text = "Convertissez votre fichier en keystore Java (.jks) avec keytool, puis choisissez JKS."
title = "Clé non répertoriée ?"
[certSign.certType.tooltip.header]
title = "À propos des types de certificats"
[certSign.certType.tooltip.what]
text = "C’est une identité sécurisée pour votre signature qui prouve que vous avez signé. Sauf obligation de signer via certificat, nous recommandons d’utiliser une autre méthode sécurisée comme Taper, Dessiner ou Importer."
title = "Qu’est-ce qu’un certificat ?"
[certSign.certType.tooltip.which]
bullet1 = "PKCS#12 (.p12 / .pfx) – un fichier combiné (le plus courant)"
bullet2 = "PFX (.pfx) – version Microsoft de PKCS12"
bullet3 = "PEM – fichiers .pem séparés pour la clé privée et le certificat"
bullet4 = "JKS – keystore Java .jks pour les workflows dev / CI-CD"
text = "Choisissez le format correspondant à votre fichier de certificat :"
title = "Quelle option utiliser ?"
[certSign.certTypeStep]
stepTitle = "Format du certificat"
[certSign.collab.addParticipants]
add = "Ajouter {{count}} participant(s)"
back = "Retour"
configureSignatures = "Configurer les paramètres de signature"
continue = "Continuer vers les paramètres de signature"
reasonHelp = "Préconfigurer une raison de signature pour ces participants (optionnel, ils peuvent la modifier lors de la signature)"
reasonPlaceholder = "ex. : Approbation, Vérification…"
selectUsers = "Sélectionner des utilisateurs"
[certSign.collab.finalize]
button = "Finaliser et charger le PDF signé"
early = "Finaliser avec les signatures actuelles"
[certSign.collab.participant]
certInvalid = "✗ {{error}}"
certInvalidFallback = "Certificat invalide"
certNetworkError = "Impossible de valider le certificat"
certValid = "✓ Certificat valide"
certValidating = "Validation du certificat…"
certValidUntil = " jusqu’au {{date}}"
[certSign.collab.sessionCreation]
includeSummaryPage = "Inclure une page de synthèse des signatures"
includeSummaryPageHelp = "Une page récapitulative sera ajoutée à la fin avec toutes les métadonnées de signature. Les cadres de signature du certificat numérique sur les pages individuelles seront supprimés (les signatures manuscrites ne sont pas affectées)."
[certSign.collab.sessionDetail]
addButton = "Ajouter des participants"
addParticipants = "Ajouter des participants"
addParticipantsError = "Échec de l’ajout des participants"
backToList = "Retour aux sessions"
deleteConfirm = "Êtes-vous sûr ? Cette action est irréversible."
deleted = "Session supprimée"
deleteError = "Échec de la suppression de la session"
deleteSession = "Supprimer la session"
dueDate = "Date d’échéance"
finalizeError = "Échec de la finalisation de la session"
loadPdfError = "Échec du chargement du PDF signé"
loadSignedPdf = "Charger le PDF signé dans les fichiers actifs"
messageLabel = "Message"
noAdditionalInfo = "Aucune information supplémentaire"
owner = "Propriétaire"
participantRemoved = "Participant supprimé"
participants = "Participants"
participantsAdded = "Participants ajoutés avec succès"
removeParticipant = "Supprimer"
removeParticipantError = "Échec de la suppression du participant"
selectUsers = "Sélectionner des utilisateurs…"
sessionInfo = "Infos de la session"
workbenchTitle = "Gestion des sessions"
[certSign.collab.sessionList]
active = "Actives"
finalized = "Finalisées"
[certSign.collab.signatureSettings]
description = "Configurer l’apparence des signatures pour tous les participants"
title = "Apparence des signatures"
[certSign.collab.signRequest]
addedToFiles = "Document ajouté aux fichiers actifs"
addSignature = "Ajouter votre signature"
addToFiles = "Ajouter aux fichiers actifs"
advancedSettings = "Paramètres avancés"
backToList = "Retour aux demandes de signature"
certificateChoice = "Sélectionnez un certificat pour signer"
changeSignature = "Modifier la signature"
clearSignature = "Effacer la signature"
completeAndSign = "Terminer et signer"
createNewSignature = "Créer une nouvelle signature"
decline = "Refuser la demande"
declineButton = "Refuser"
deleteSelected = "Supprimer la signature sélectionnée"
drawSignature = "Dessinez votre signature ci-dessous"
dueDate = "Date d’échéance"
fileTooLarge = "La taille du fichier doit être inférieure à 5 Mo"
fontFamily = "Famille de police"
fontSize = "Taille de police : {{size}}px"
fontSizePlaceholder = "Taille"
from = "De"
invalidCertFile = "Veuillez sélectionner un fichier de certificat P12 ou PFX"
invalidFileType = "Veuillez sélectionner un fichier image"
location = "Emplacement (facultatif)"
locationPlaceholder = "D’où signez-vous ?"
message = "Message"
noCertificate = "Veuillez sélectionner un fichier de certificat"
noSignatures = "Veuillez placer au moins une signature sur le PDF"
p12File = "Fichier de certificat P12/PFX"
password = "Mot de passe du certificat"
passwordPlaceholder = "Saisissez le mot de passe…"
penColor = "Couleur du trait"
penSize = "Taille du trait : {{size}}px"
placementActive = "Cliquez sur le PDF pour placer"
placeSignatureButton = "Placer la signature sur le PDF"
reason = "Raison (facultatif)"
reasonPlaceholder = "Pourquoi signez-vous ?"
removeCertFile = "Supprimer le fichier"
removeImage = "Supprimer l’image"
savedSignatures = "Signatures enregistrées"
selectFile = "Sélectionner un fichier image"
selectSignatureTitle = "Sélectionner ou créer une signature"
signatureInfo = "Ces paramètres sont configurés par le propriétaire du document"
signaturePlaced = "Signature placée sur la page"
signatureSettings = "Paramètres de signature"
signatureText = "Texte de la signature"
signatureTextPlaceholder = "Saisissez votre nom…"
signatureTypeLabel = "Type de signature"
signButton = "Signer le document"
signingTitle = "Signature"
textColor = "Couleur du texte"
typeSignature = "Saisissez votre nom pour créer une signature"
uploadCert = "Certificat personnalisé"
uploadCertDesc = "Utilisez votre propre certificat P12/PFX"
uploadSignature = "Téléverser l’image de votre signature"
usePersonalCert = "Certificat personnel"
usePersonalCertDesc = "Généré automatiquement pour votre compte"
useServerCert = "Certificat d’organisation"
useServerCertDesc = "Certificat d’organisation partagé"
workbenchTitle = "Demande de signature"
[certSign.collab.signRequest.canvas]
colorPickerTitle = "Choisir la couleur du trait"
continue = "Continuer"
[certSign.collab.signRequest.certModal]
certInvalid = "Certificat invalide : {{error}}"
certInvalidFallback = "Certificat invalide"
certNetworkError = "Impossible de valider le certificat"
certValidating = "Validation du certificat…"
certValidUntil = "Certificat valide jusqu’au {{date}}"
description = "Vous avez placé {{count}} signature(s). Choisissez votre certificat pour terminer la signature."
sign = "Signer le document"
title = "Configurer le certificat"
[certSign.collab.signRequest.image]
hint = "Téléversez une image PNG ou JPG de votre signature"
[certSign.collab.signRequest.mode]
move = "Déplacer la signature"
place = "Placer la signature"
title = "Mode signature ou déplacement"
[certSign.collab.signRequest.modeTabs]
draw = "Dessiner"
image = "Téléverser"
text = "Saisir"
[certSign.collab.signRequest.placeSignature]
message = "Cliquez sur le PDF pour placer votre signature"
title = "Placer la signature"
[certSign.collab.signRequest.preview]
imageAlt = "Signature sélectionnée"
missing = "Aucun aperçu"
textFallback = "Signature"
[certSign.collab.signRequest.saved]
defaultCanvasLabel = "Signature dessinée"
defaultImageLabel = "Signature téléversée"
defaultLabel = "Signature"
defaultTextLabel = "Signature saisie"
delete = "Supprimer la signature"
none = "Aucune signature enregistrée"
[certSign.collab.signRequest.signatureType]
draw = "Dessiner"
type = "Saisir"
upload = "Téléverser"
[certSign.collab.signRequest.steps]
back = "Retour"
cancelPlacement = "Annuler le placement"
certificate = "Certificat"
clickMultipleTimes = "Cliquez plusieurs fois sur le PDF pour placer des signatures. Faites glisser une signature pour la déplacer ou la redimensionner."
clickToPlace = "Cliquez sur le PDF à l’endroit où vous souhaitez que votre signature apparaisse."
continue = "Continuer vers la sélection du certificat"
continueToPlacement = "Continuer vers le placement"
continueToReview = "Continuer vers la vérification"
createSignature = "Créer une signature"
invisible = "Invisible"
location = "Emplacement :"
multipleSignatures = "{{count}} signatures seront appliquées au PDF"
oneSignature = "1 signature sera appliquée au PDF"
placeOnPdf = "Placer sur le PDF"
reason = "Raison :"
reviewTitle = "Vérifier avant de signer"
signaturePlaced = "Signature placée sur la page {{page}}. Vous pouvez ajuster la position en recliquant ou continuer vers la vérification."
visibility = "Visibilité :"
visible = "Visible"
yourSignatures = "Vos signatures ({{count}})"
[certSign.collab.signRequest.text]
colorLabel = "Couleur"
fontLabel = "Police"
fontSizeLabel = "Taille"
fontSizePlaceholder = "16"
label = "Texte de la signature"
modalHint = "Saisissez votre nom, puis cliquez sur Continuer pour le placer sur le PDF."
placeholder = "Saisissez votre nom…"
[certSign.collab.userSelector]
inviteUsers = "Ajouter des utilisateurs"
loadError = "Échec du chargement des utilisateurs"
noTeam = "Pas d’équipe"
noUsers = "Aucun autre utilisateur trouvé."
placeholder = "Sélectionner des utilisateurs…"
[certSign.error]
failed = "Une erreur est survenue lors du traitement des signatures."
[certSign.mobile]
panelActions = "Actions"
panelDocument = "Document"
panelPeople = "Personnes"
[certSign.sessions]
deleted = "Session supprimée"
fetchFailed = "Échec du chargement des détails de la session"
finalized = "Session finalisée"
loaded = "PDF signé chargé"
pdfNotReady = "PDF non prêt"
pdfNotReadyDesc = "Le PDF signé est en cours de génération. Veuillez réessayer dans un instant."
[certSign.sign]
results = "PDF signé"
submit = "Signer le PDF"
[certSign.signMode]
stepTitle = "Mode de signature"
[certSign.signMode.tooltip.auto]
text = "Signe avec un certificat auto-signé par le serveur. Même sceau anti-altération et journal d’audit ; s’affiche généralement comme Non vérifié dans les lecteurs."
title = "Auto – Sceau système instantané, sans configuration"
use = "À utiliser lorsque : vous avez besoin de rapidité et d’une identité interne cohérente pour les revues et dossiers."
[certSign.signMode.tooltip.header]
title = "À propos des signatures PDF"
[certSign.signMode.tooltip.manual]
text = "Utilisez vos propres fichiers de certificat pour une identité alignée à votre marque. Peut afficher Fiable lorsque votre AC/chaîne est reconnue."
title = "Manuel – Utiliser votre certificat"
use = "À utiliser pour : relation client, juridique, conformité."
[certSign.signMode.tooltip.overview]
text = "Les deux modes scellent le document (toute modification est signalée comme une altération) et enregistrent qui/quand/comment pour l’audit. La confiance affichée par le lecteur dépend de la chaîne de certificats."
title = "Fonctionnement des signatures"
[certSign.signMode.tooltip.rule]
text = "Besoin du statut Fiable côté destinataire ? Manuel. Besoin d’un sceau anti-altération rapide avec traçabilité sans configuration ? Auto."
title = "Règle générale"
[certSign.tooltip.header]
title = "À propos de la gestion des signatures"
[certSign.tooltip.overview]
bullet1 = "Vérifiez les signatures existantes et leur validité"
bullet2 = "Affichez des informations détaillées sur les signataires et certificats"
bullet3 = "Ajoutez de nouvelles signatures numériques pour sécuriser vos documents"
bullet4 = "Plusieurs fichiers pris en charge avec navigation facilitée"
text = "Cet outil vous permet de vérifier si vos PDF sont signés numériquement et d’ajouter de nouvelles signatures. Les signatures numériques prouvent l’auteur ou l’approbateur d’un document et indiquent s’il a été modifié depuis la signature."
title = "Que peut faire cet outil ?"
[certSign.tooltip.signing]
bullet1 = "Prend en charge les formats PEM, PKCS12, JKS et le certificat serveur"
bullet2 = "Option pour afficher ou masquer la signature sur le PDF"
bullet3 = "Ajoutez la raison, le lieu et le nom du signataire"
bullet4 = "Choisissez la page où placer les signatures visibles"
bullet5 = "Utilisez le certificat serveur pour l’option simple « Signer avec Stirling-PDF »"
text = "Pour signer un PDF, vous avez besoin d’un certificat numérique (comme PEM, PKCS12 ou JKS). Vous pouvez choisir d’afficher la signature sur le document ou de la garder invisible pour la sécurité uniquement."
title = "Ajout de signatures"
[certSign.tooltip.validation]
bullet1 = "Indique si les signatures sont valides ou invalides"
bullet2 = "Affiche les informations sur le signataire et la date de signature"
bullet3 = "Vérifie si le document a été modifié après la signature"
bullet4 = "Peut utiliser des certificats personnalisés pour la vérification"
text = "Lors de la vérification des signatures, l’outil indique si elles sont valides, qui a signé le document, quand il a été signé et s’il a été modifié depuis."
title = "Vérification des signatures"
[changeCreds]
changePassword = "Vous utilisez les identifiants de connexion par défaut. Veuillez saisir un nouveau mot de passe"
changeUsername = "Mettre à jour votre nom d’utilisateur. Vous serez déconnecté après la mise à jour."
confirmNewPassword = "Confirmer le nouveau mot de passe"
credsUpdated = "Compte mis à jour"
description = "Modifications enregistrées. Veuillez vous reconnecter."
error = "Impossible de mettre à jour le nom d’utilisateur. Veuillez vérifier votre mot de passe et réessayer."
header = "Mettez à jour vos identifiants de connexion"
newPassword = "Nouveau mot de passe"
newUsername = "Nouveau nom d'utilisateur"
oldPassword = "Mot de passe actuel"
ssoManaged = "Votre compte est géré par votre fournisseur d’identité."
submit = "Soumettre les modifications"
title = "Modifiez vos identifiants"
[changeMetadata]
filenamePrefix = "métadonnées"
header = "Modifier les métadonnées"
submit = "Modifier"
[changeMetadata.advanced]
title = "Options avancées"
[changeMetadata.author]
label = "Auteur"
placeholder = "Auteur du document"
[changeMetadata.creationDate]
label = "Date de création"
placeholder = "Date de création"
[changeMetadata.creator]
label = "Créateur"
placeholder = "Créateur du document"
[changeMetadata.customFields]
add = "Ajouter un champ"
description = "Ajoutez des champs de métadonnées personnalisés au document"
key = "Clé"
keyPlaceholder = "Clé personnalisée"
remove = "Supprimer"
title = "Métadonnées personnalisées"
value = "Valeur"
valuePlaceholder = "Valeur personnalisée"
[changeMetadata.dates]
title = "Champs de date"
[changeMetadata.deleteAll]
checkbox = "Supprimer toutes les métadonnées"
label = "Supprimer les métadonnées existantes"
[changeMetadata.error]
failed = "Une erreur est survenue lors de la modification des métadonnées du PDF."
[changeMetadata.keywords]
label = "Mots-clés"
placeholder = "Mots-clés du document"
[changeMetadata.modificationDate]
label = "Date de modification"
placeholder = "Date de modification"
[changeMetadata.producer]
label = "Producteur"
placeholder = "Producteur du document"
[changeMetadata.results]
title = "PDF mis à jour"
[changeMetadata.settings]
title = "Paramètres des métadonnées"
[changeMetadata.standardFields]
title = "Champs standard"
[changeMetadata.subject]
label = "Sujet"
placeholder = "Sujet du document"
[changeMetadata.title]
label = "Titre"
placeholder = "Titre du document"
[changeMetadata.tooltip.advanced]
title = "Options avancées"
[changeMetadata.tooltip.advanced.trapped]
bullet1 = "True : le document a été piégé pour l’impression"
bullet2 = "False : le document n’a pas été piégé"
bullet3 = "Unknown : l’état de piégeage n’est pas spécifié"
description = "Indique si le document est préparé pour une impression de haute qualité."
title = "État de piégeage"
[changeMetadata.tooltip.customFields]
bullet1 = "Ajoutez tous les champs personnalisés utiles à votre document"
bullet2 = "Exemples : Département, Projet, Version, Statut"
bullet3 = "La clé et la valeur sont requises pour chaque entrée"
text = "Ajoutez vos propres paires clé-valeur de métadonnées."
title = "Métadonnées personnalisées"
[changeMetadata.tooltip.dates]
bullet1 = "Date de création : quand le document original a été créé"
bullet2 = "Date de modification : quand il a été modifié pour la dernière fois"
text = "Quand le document a été créé et modifié."
title = "Champs de date"
[changeMetadata.tooltip.deleteAll]
text = "Suppression complète des métadonnées pour garantir la confidentialité."
title = "Supprimer les métadonnées existantes"
[changeMetadata.tooltip.header]
title = "Aperçu des métadonnées PDF"
[changeMetadata.tooltip.options]
bullet1 = "Métadonnées personnalisées : ajoutez vos propres paires clé-valeur"
bullet2 = "État de piégeage : réglage d’impression haute qualité"
bullet3 = "Tout supprimer : supprime toutes les métadonnées pour la confidentialité"
text = "Champs personnalisés et contrôles de confidentialité."
title = "Options supplémentaires"
[changeMetadata.tooltip.standardFields]
bullet1 = "Titre : nom ou en-tête du document"
bullet2 = "Auteur : personne ayant créé le document"
bullet3 = "Sujet : brève description du contenu"
bullet4 = "Mots-clés : termes de recherche du document"
bullet5 = "Créateur/Producteur : logiciel utilisé pour créer le PDF"
text = "Champs de métadonnées PDF courants décrivant le document."
title = "Champs standard"
[changeMetadata.trapped]
false = "Faux"
label = "État de piégeage"
true = "Vrai"
unknown = "Inconnu"
[changePermissions]
completed = "Permissions modifiées"
desc = "Modifier les restrictions et permissions du document."
submit = "Modifier les permissions"
title = "Modifier les permissions"
[changePermissions.error]
failed = "Une erreur est survenue lors de la modification des permissions du PDF."
[changePermissions.permissions.preventAssembly]
label = "Empêcher l'assemblage du document"
[changePermissions.permissions.preventExtractContent]
label = "Empêcher l'extraction de contenu"
[changePermissions.permissions.preventExtractForAccessibility]
label = "Empêcher l'extraction pour l'accessibilité"
[changePermissions.permissions.preventFillInForm]
label = "Empêcher de remplir les formulaires"
[changePermissions.permissions.preventModify]
label = "Empêcher la modification"
[changePermissions.permissions.preventModifyAnnotations]
label = "Empêcher la modification des annotations"
[changePermissions.permissions.preventPrinting]
label = "Empêcher l'impression"
[changePermissions.permissions.preventPrintingFaithful]
label = "Empêcher l'impression des différents formats"
[changePermissions.results]
title = "PDF modifiés"
[changePermissions.tooltip.description]
text = "Modifie les permissions du document, autorisant/interdisant l’accès à différentes fonctions dans les lecteurs PDF."
[changePermissions.tooltip.header]
title = "Modifier les permissions"
[changePermissions.tooltip.warning]
text = "Pour rendre ces permissions non modifiables, utilisez l’outil Ajouter un mot de passe pour définir un mot de passe propriétaire."
[chat.progress]
analyzing = "Analyse de votre demande..."
calling_engine = "L'IA réfléchit..."
executing_tool_generic = "Exécution de l'outil..."
executing_tool_generic_step = "Exécution de l'outil (étape {{step}} sur {{total}})..."
executing_tool_single = "Exécution de {{tool}}..."
executing_tool_step = "Exécution de {{tool}} (étape {{step}} sur {{total}})..."
extracting_content = "Extraction du contenu de vos documents..."
processing = "Traitement du contenu extrait..."
thinking = "Réflexion..."
whole_doc_compression_round = "Consolidation des notes..."
whole_doc_read_done = "Lecture du document terminée..."
whole_doc_read_started = "Lecture du document..."
whole_doc_slice_done = "Lecture du document... ({{percent}} % terminé)"
[chat.toolsUsed]
summary = "{{count}} outils exécutés"
summary_one = "1 outil exécuté"
summary_other = "{{count}} outils exécutés"
unknownTool = "Outil inconnu"
[cloudBadge]
tooltip = "Cette opération utilisera vos crédits cloud"
[colorPicker]
title = "Choisir la couleur"
[common]
available = "disponible"
back = "Retour"
cancel = "Annuler"
close = "Fermer"
collapse = "Réduire"
collapsed = "réduit"
continue = "Continuer"
copied = "Copié !"
copy = "Copier"
done = "Terminé"
error = "Erreur"
expand = "Développer"
learnMore = "En savoir plus"
lines = "lignes"
loading = "Chargement…"
next = "Suivant"
operation = "cette opération"
preview = "Aperçu"
previous = "Précédent"
refresh = "Actualiser"
remaining = "restant"
retry = "Réessayer"
save = "Enregistrer"
used = "utilisé"
[compare]
addFilesHint = "Ajoutez des PDF à l’étape Fichiers pour activer la sélection."
clearSelected = "Effacer la sélection"
clearSlot = "Retirer le fichier"
cta = "Comparer"
header = "Comparer"
loading = "Comparaison en cours…"
newLine = "nouvelle-ligne"
noFiles = "Aucun PDF disponible pour le moment"
pages = "Pages"
tags = "comparer,analyser,differentiate,contrast,changes,analysis"
title = "Comparer"
[compare.actions]
linkScroll = "Lier le défilement"
linkScrollPan = "Lier défilement et panoramique"
placeSideBySide = "Aligner côte à côte"
resetView = "Réinitialiser la vue"
stackVertically = "Empiler verticalement"
unlinkScroll = "Dissocier le défilement"
unlinkScrollPan = "Dissocier défilement et panoramique"
zoomIn = "Zoomer"
zoomOut = "Dézoomer"
[compare.base]
label = "Document original"
placeholder = "Sélectionnez le PDF original"
[compare.clear]
confirm = "Effacer et revenir"
confirmBody = "Cela fermera la comparaison en cours et vous ramènera aux fichiers actifs."
confirmTitle = "Effacer les PDF sélectionnés ?"
[compare.comparison]
label = "Document modifié"
placeholder = "Sélectionnez le PDF modifié"
[compare.complex]
message = "Un ou les deux documents fournis sont des fichiers volumineux, l'exactitude de la comparaison peut être réduite"
[compare.dropdown]
additions = "Ajouts ({{count}})"
additionsLabel = "Ajouts"
deletions = "Suppressions ({{count}})"
deletionsLabel = "Suppressions"
noResults = "Aucune modification trouvée"
searchPlaceholder = "Rechercher des modifications…"
[compare.earlyDissimilarity]
body = "Nous constatons très peu de similitudes pour l’instant. Vous pouvez arrêter la comparaison s’il ne s’agit pas de documents liés."
stopButton = "Arrêter la comparaison"
title = "Ces PDF semblent très différents"
[compare.edited]
label = "PDF modifié"
placeholder = "Select the edited PDF"
selectBaseFirst = "Sélectionnez d’abord le PDF d’origine"
[compare.error]
filesMissing = "Impossible de localiser les fichiers sélectionnés. Veuillez les sélectionner à nouveau."
generic = "Impossible de comparer ces fichiers."
selectRequired = "Sélectionnez un document original et un document modifié."
[compare.large.file]
message = "Un ou les deux documents fournis sont trop volumineux pour être traités"
[compare.longJob]
body = "Ces PDF dépassent ensemble 2 000 pages. Le traitement peut prendre plusieurs minutes."
title = "Comparaison volumineuse en cours"
[compare.mode]
pixel = "Comparaison de pixels"
text = "Comparaison de texte"
[compare.no.text]
message = "L'un ou les deux documents PDF sélectionnés ne contiennent aucun contenu textuel. Veuillez choisir des documents PDF avec du texte pour la comparaison."
[compare.original]
label = "PDF original"
[compare.pixel]
base = "Original"
changed = "modifié"
comparison = "Modifié"
diff = "Différences"
diffOnly = "Uniquement les différences"
missingInBase = "Manquant dans l'original"
missingInComparison = "Manquant dans la version modifiée"
overall = "global"
overlay = "Superposition"
pageLabel = "Page"
pagesChanged = "pages modifiées"
sideBySide = "Côte à côte"
sizeMismatch = "Incompatibilité de taille"
summaryTitle = "Comparaison de pixels"
[compare.pixel.errors]
canvasContextUnavailable = "Impossible d'obtenir le contexte canvas 2D pour la comparaison de pixels."
[compare.pixel.warnings]
noPages = "Un ou les deux documents n'ont aucune page."
pageCountMismatch = "Incohérence du nombre de pages : l'original compte {{base}} page(s), la version modifiée en compte {{comparison}}. Les pages supplémentaires sont affichées d'un seul côté et marquées comme entièrement supprimées/ajoutées."
[compare.rendering]
complete = "Rendu des pages terminé"
inProgress = "Au moins l’un de ces PDF est très volumineux ; le défilement ne sera pas fluide tant que le rendu n’est pas terminé."
pageNotReadyBody = "Certaines pages sont encore en cours de rendu. La navigation sera ajustée dès qu’elles seront prêtes."
pageNotReadyTitle = "Page non encore rendue"
pagesRendered = "pages rendues"
rendering = "rendu"
[compare.review]
actionsHint = "Examiner la comparaison, inverser les rôles des documents ou exporter le résumé."
exportSummary = "Exporter le résumé"
switchOrder = "Inverser l’ordre"
title = "Résultat de la comparaison"
[compare.selection]
originalEditedTitle = "Sélectionnez les PDF original et modifié"
[compare.slowOperation]
body = "Cette comparaison est plus longue que d’habitude. Vous pouvez la laisser continuer ou l’annuler."
cancel = "Annuler la comparaison"
title = "Toujours en cours…"
[compare.status]
complete = "Comparaison prête"
extracting = "Extraction du texte…"
processing = "Analyse des différences…"
[compare.summary]
baseHeading = "Document original"
comparisonHeading = "Document modifié"
pageLabel = "Page"
[compare.swap]
confirm = "Intervertir et relancer"
confirmBody = "Cela relancera l’outil. Voulez-vous vraiment intervertir l’ordre d’Original et Modifié ?"
confirmTitle = "Relancer la comparaison ?"
label = "Permuter"
[compare.toasts]
unlinkedBody = "Astuce : les flèches Haut/Bas font défiler les deux volets ; le panoramique ne déplace que le volet actif."
unlinkedTitle = "Défilement et panoramique indépendants activés"
[compare.too.dissimilar]
message = "Ces documents semblent très différents. La comparaison a été arrêtée pour gagner du temps."
[compress]
credit = "Ce service utilise qpdf pour la compression et l'optimisation des PDF."
desc = "Compressez les PDF pour réduire leur taille."
header = "Compresser un PDF (lorsque c'est possible!)"
submit = "Compresser"
title = "Compresser un PDF"
[compress.compressionLevel]
range1to3 = "Des valeurs faibles préservent la qualité mais donnent des fichiers plus volumineux"
range4to6 = "Compression moyenne avec réduction modérée de la qualité"
range7to9 = "Des valeurs élevées réduisent fortement la taille du fichier mais peuvent diminuer la netteté des images"
[compress.error]
failed = "Une erreur est survenue lors de la compression du PDF."
[compress.grayscale]
label = "Appliquer l'échelle de gris pour la compression"
[compress.linearize]
label = "Linéariser le PDF pour une lecture web rapide"
[compress.lineArt]
description = "Utilise ImageMagick pour réduire les pages en noir et blanc à fort contraste afin de maximiser la réduction de taille."
detailLevel = "Niveau de détail"
edgeEmphasis = "Accentuation des contours"
edgeHigh = "Forte"
edgeLow = "Douce"
edgeMedium = "Équilibrée"
label = "Convertir les images en dessin au trait"
unavailable = "ImageMagick n’est pas installé ou activé sur ce serveur"
[compress.method]
filesize = "Taille du Fichier"
quality = "Qualité"
title = "Méthode de compression"
[compress.selectText]
2 = "Niveau d'optimisation"
4 = "Mode automatique – ajuste automatiquement la qualité pour obtenir le PDF à la taille exacte"
5 = "Taille PDF attendue (par exemple, 25 MB, 10,8 MB, 25 KB)"
[compress.selectText.1]
1 = "1-3 compression PDF, 4-6 compression d'image légère, 7-9 compression d'image intense qui réduira considérablement la qualité de l'image"
_value = "Paramètres de compression"
[compress.tooltip.description]
text = "La compression est un moyen simple de réduire la taille de votre fichier. Choisissez Taille de fichier pour saisir une taille cible et nous ajusterons la qualité pour vous. Choisissez Qualité pour régler manuellement la force de compression."
title = "Description"
[compress.tooltip.grayscale]
text = "Sélectionnez cette option pour convertir toutes les images en noir et blanc, ce qui peut réduire significativement la taille, en particulier pour les PDF scannés ou riches en images."
title = "Niveaux de gris"
[compress.tooltip.header]
title = "Aperçu des paramètres de compression"
[compress.tooltip.lineArt]
text = "Convertit les pages en noir et blanc à fort contraste à l’aide d’ImageMagick. Utilisez le niveau de détail pour contrôler la quantité de contenu qui devient noir, et l’accentuation des contours pour contrôler l’agressivité de la détection des contours."
title = "Dessin au trait"
[compress.tooltip.qualityAdjustment]
bullet1 = "Des valeurs faibles préservent la qualité"
bullet2 = "Des valeurs élevées réduisent la taille du fichier"
text = "Faites glisser le curseur pour ajuster la force de compression. Des valeurs basses (1-3) préservent la qualité mais produisent des fichiers plus volumineux. Des valeurs hautes (7-9) réduisent davantage la taille mais diminuent la netteté des images."
title = "Réglage de la qualité"
[compressPdfs]
tags = "compresser,réduire,taille,squish,small,tiny"
[config]
plan = "Plan"
[config.account.overview]
confirmDelete = "Delete My Account"
deleteAccount = "Delete Account"
deleteAccountTitle = "Delete Account"
deleteFailed = "Failed to delete account."
deleteFailedTitle = "Unable to delete account"
deleteWarning = "This action is permanent and cannot be undone. All your data will be deleted."
enterEmailConfirm = "To confirm deletion, please type your email address ({{email}}) below:"
guestDescription = "Vous êtes connecté en tant qu’invité. Envisagez de mettre à niveau votre compte ci-dessus."
label = "Overview"
manageAccountPreferences = "Gérer les préférences de votre compte"
signedInAs = "Signed in as"
title = "Paramètres du compte"
[config.account.profilePicture]
description = "Upload an image to personalize your account."
help = "PNG, JPG, or WebP up to 2MB."
remove = "Remove"
sizeError = "Please select an image smaller than 2MB."
switchedToCustom = "Switched to custom picture. You can now upload your own."
title = "Profile picture"
upload = "Upload"
useCustom = "Use custom picture"
usingProvider = "Using {{provider}} profile picture"
[config.account.profilePicture.cropper]
cropError = "Failed to crop image. Please try again."
invalidImage = "Invalid image file. Please select a valid PNG, JPG, or WebP file."
processing = "Processing crop..."
save = "Save Cropped Image"
sizeErrorAfterCrop = "Cropped image is too large. Please zoom out or crop a smaller area."
title = "Crop Profile Picture"
zoom = "Zoom"
[config.account.security]
changePassword = "Change password"
description = "Manage your password and security settings."
title = "Passwords & Security"
update = "Update password"
[config.account.upgrade]
description = "Liez votre compte pour préserver votre historique et accéder à davantage de fonctionnalités !"
email = "E-mail"
emailPassword = "ou saisissez votre e-mail et mot de passe"
emailPlaceholder = "Saisissez votre e-mail"
linkWith = "Lier avec"
password = "Mot de passe (facultatif)"
passwordNote = "Laissez vide pour utiliser uniquement la vérification par e-mail"
passwordPlaceholder = "Définir un mot de passe"
socialLogin = "Mettre à niveau avec un compte social"
title = "Mettre à niveau le compte invité"
upgradeButton = "Mettre à niveau le compte"
[config.apiKeys]
chartAriaLabel = "Utilisation des crédits : inclus {{includedUsed}} sur {{includedTotal}}, achetés {{purchasedUsed}} sur {{purchasedTotal}}"
copyKeyAriaLabel = "Copier la clé API"
creditsRemaining = "Crédits restant"
description = "Votre clé API pour accéder à la suite d’outils PDF de Stirling. Copiez-la dans votre projet ou actualisez pour en générer une nouvelle."
docsDescription = "En savoir plus sur l’intégration avec Stirling PDF :"
docsLink = "Documentation API"
docsTitle = "Documentation API"
generateError = "Nous n’avons pas pu générer votre clé API."
goToAccount = "Aller au compte"
guestInfo = "Les utilisateurs invités ne reçoivent pas de clés API. Créez un compte pour obtenir une clé API à utiliser dans vos applications."
includedCredits = "Crédits inclus"
intro = "Utilisez votre clé API pour accéder de manière programmatique aux capacités de traitement de Stirling PDF."
label = "Clé API"
lastApiUse = "Dernière utilisation de l’API"
nextReset = "Prochaine réinitialisation"
overlayMessage = "Générez une clé pour voir les crédits et les crédits disponibles"
publicKeyAriaLabel = "Clé API publique"
purchasedCredits = "Crédits achetés"
refreshAriaLabel = "Actualiser la clé API"
schemaLink = "Référence du schéma API"
totalCredits = "Crédits totaux"
usage = "Incluez cette clé dans l’en-tête X-API-KEY pour toutes les requêtes API."
[config.apiKeys.alert]
apiKeyErrorTitle = "Erreur de clé API"
apiKeyRefreshed = "Clé API actualisée"
apiKeyRefreshedBody = "Votre clé API a été actualisée avec succès."
failedToCreateApiKey = "Échec de création de la clé API."
failedToFetchApiKey = "Échec de récupération de la clé API."
failedToRefreshApiKey = "Échec d’actualisation de la clé API."
failedToRetrieveApiKey = "Échec de récupération de la clé API depuis la réponse."
[config.apiKeys.refreshModal]
confirmCta = "Actualiser les clés"
confirmPrompt = "Êtes-vous sûr de vouloir continuer ?"
impact = "Toute application ou service utilisant actuellement ces clés cessera de fonctionner jusqu’à leur mise à jour avec les nouvelles clés."
title = "Actualiser les clés API"
warning = "⚠️ Avertissement : cette action générera de nouvelles clés API et rendra vos clés précédentes invalides."
[config.overview]
description = "Paramètres actuels de l’application et détails de configuration."
error = "Erreur"
loading = "Chargement de la configuration..."
title = "Configuration de l’application"
warning = "Avertissement de configuration"
[config.overview.sections]
basic = "Configuration de base"
integration = "Configuration d'intégration"
security = "Configuration de sécurité"
system = "Configuration système"
[connectionMode.status]
localOffline = "Mode offline"
localOnline = "Mode offline"
saas = "Connecté au Cloud Stirling"
selfhostedChecking = "Connection en cours à un serveur auto-hébergé"
selfhostedOffline = "Serveur auto-hébergé inaccessible"
selfhostedOnline = "Connecté à un serveur auto-hébergé"
[convert]
autoRotate = "Rotation automatique"
autoRotateDescription = "Fait pivoter automatiquement les images pour mieux s’adapter à la page PDF"
blackwhite = "Noir et blanc"
cbrDpi = "DPI pour le rendu des images"
cbrOptions = "Options CBR"
cbrOutputOptions = "Options PDF vers CBR"
cbrToPdf = "CBR → PDF"
cbzDpi = "DPI pour le rendu des images"
cbzOptions = "Options CBZ vers PDF"
cbzOutputOptions = "Options PDF vers CBZ"
cbzToPdf = "CBZ → PDF"
color = "Couleur"
colorType = "Type de couleur"
combineImages = "Combiner les images"
combineImagesDescription = "Combiner toutes les images dans un seul PDF, ou créer des PDF séparés pour chaque image"
combineSvgs = "Combine SVGs into single PDF"
combineSvgsDescription = "Combine all SVG files into one PDF with multiple pages, or create separate PDFs for each SVG"
conversionCompleted = "Conversion terminée"
conversionResults = "Résultats de la conversion"
convertFiles = "Convertir les fichiers"
convertFrom = "Convertir depuis"
converting = "Conversion…"
convertTo = "Convertir vers"
defaultFilename = "fichier_converti"
desc = "Convertir des fichiers entre différents formats"
downloadConverted = "Télécharger le fichier converti"
downloadHtml = "Télécharger le fichier HTML intermédiaire au lieu du PDF"
dpi = "DPI"
ebookToPdf = "eBook → PDF"
emailOptions = "Options e-mail vers PDF"
emlToPdf = "Email → PDF"
errorConversion = "Une erreur s’est produite lors de la conversion du fichier."
errorNoFiles = "Veuillez sélectionner au moins un fichier à convertir."
errorNoFormat = "Veuillez sélectionner à la fois les formats source et cible."
errorNotSupported = "La conversion de {{from}} vers {{to}} n’est pas prise en charge."
fileFormat = "Format de fichier"
files = "Fichiers"
fileToPdf = "Office/Document → PDF"
fillPage = "Remplir la page"
fitDocumentToPage = "Ajuster le document à la page"
fitOption = "Option d’ajustement"
grayscale = "Niveaux de gris"
greyscale = "Niveaux de gris"
imageOptions = "Options d’image"
images = "Images"
imagesExt = "Images (JPG, PNG, etc.)"
includeAllRecipients = "Inclure les destinataires CC et CCI dans l’en-tête"
includeAttachments = "Inclure les pièces jointes de l’e-mail"
maintainAspectRatio = "Conserver les proportions"
markdown = "Markdown"
maxAttachmentSize = "Taille maximale de pièce jointe (Mo)"
multiple = "Multiple"
noFileSelected = "Aucun fichier sélectionné. Utilisez le panneau de fichiers pour ajouter des fichiers."
odpExt = "Présentation OpenDocument (.odp)"
odtExt = "Texte OpenDocument (.odt)"
officeDocs = "Documents Office (Word, Excel, PowerPoint)"
optimizeForEbook = "Optimiser le PDF pour les liseuses (utilise Ghostscript)"
output = "Sortie"
outputFormat = "Format de sortie"
outputOptions = "Options de sortie"
pdfaDigitalSignatureWarning = "Le PDF contient une signature numérique. Elle sera supprimée dans l'étape suivante."
pdfaFormat = "Format PDF/A"
pdfaNote = "PDF/A-1b est plus compatible, PDF/A-2b prend en charge davantage de fonctionnalités."
pdfaOptions = "Options PDF/A"
pdfOptions = "Options PDF"
pdfToCbr = "PDF → CBR"
pdfToCbz = "PDF → CBZ"
pdfToEpub = "PDF → EPUB"
pdfxDescription = "PDF/X est un sous-ensemble PDF conforme à l'ISO pour une impression fiable et un échange graphique."
pdfxDigitalSignatureWarning = "Le PDF contient une signature numérique. Elle sera supprimée à l'étape suivante."
pptExt = "PowerPoint (.pptx)"
results = "Résultats"
rtfExt = "Rich Text Format (.rtf)"
selectedFiles = "Fichiers sélectionnés"
selectFilesPlaceholder = "Sélectionnez des fichiers dans la vue principale pour commencer"
selectSourceFormatFirst = "Sélectionnez d’abord un format source"
settings = "Paramètres"
single = "Unique"
sourceFormatPlaceholder = "Format source"
strictMode = "Strict Mode"
strictModeDesc = "Error if conversion is not perfect (uses VeraPDF verification)"
svgPdfOptions = "SVG to PDF Options"
svgToPdf = "SVG → PDF"
svgVectorNote = "SVG files are rendered as vector graphics for crisp output at any resolution. Dimensions from the SVG determine the PDF page size."
targetFormatPlaceholder = "Format cible"
textRtf = "Texte/RTF"
title = "Convertir"
txtExt = "Texte brut (.txt)"
webOptions = "Options Web vers PDF"
wordDoc = "Document Word"
wordDocExt = "Document Word (.docx)"
zoomLevel = "Niveau de zoom"
[convert.ebookOptions]
ebookOptions = "Options eBook vers PDF"
ebookOptionsDesc = "Options de conversion des eBooks en PDF"
embedAllFonts = "Incorporer toutes les polices"
embedAllFontsDesc = "Incorporer toutes les polices de l’eBook dans le PDF généré"
includePageNumbers = "Inclure les numéros de page"
includePageNumbersDesc = "Ajouter des numéros de page au PDF généré"
includeTableOfContents = "Inclure la table des matières"
includeTableOfContentsDesc = "Ajouter une table des matières générée au PDF résultant"
optimizeForEbookPdf = "Optimiser pour les liseuses"
optimizeForEbookPdfDesc = "Optimiser le PDF pour la lecture d’eBook (taille de fichier réduite, meilleur rendu sur appareils eInk)"
[convert.epubOptions]
detectChapters = "Détecter les chapitres"
detectChaptersDesc = "Détecter les titres ressemblant à des chapitres et insérer des sauts de page EPUB"
epubOptions = "Options PDF vers eBook"
epubOptionsDesc = "Options de conversion de PDF vers EPUB/AZW3"
kindleEink = "Kindle e-Ink (texte optimisé)"
outputFormat = "Format de sortie"
outputFormatDesc = "Choisissez le format de sortie de l’eBook"
tabletPhone = "Tablette/Téléphone (avec images)"
targetDevice = "Appareil cible"
targetDeviceDesc = "Choisissez un profil de sortie optimisé pour l’appareil de lecture"
[cookieBanner.popUp]
acceptAllBtn = "D'accord"
acceptNecessaryBtn = "Non merci"
showPreferencesBtn = "Gérer les préférences"
title = "Comment nous utilisons les cookies"
[cookieBanner.popUp.description]
1 = "Nous utilisons des cookies et d'autres technologies pour améliorer Stirling PDF pour vous — cela nous aide à perfectionner nos outils et à créer des fonctionnalités que vous allez adorer."
2 = "If you’d rather not, clicking 'No Thanks' will only enable the essential cookies needed to keep things running smoothly."
[cookieBanner.preferencesModal]
acceptAllBtn = "Tout accepter"
acceptNecessaryBtn = "Tout refuser"
closeIconLabel = "Fermer la fenêtre"
savePreferencesBtn = "Enregistrer les préférences"
serviceCounterLabel = "Service|Services"
subtitle = "Utilisation des cookies"
title = "Centre de préférences de consentement"
[cookieBanner.preferencesModal.analytics]
description = "Ces cookies nous aident à comprendre comment nos outils sont utilisés, afin que nous puissions nous concentrer sur les fonctionnalités les plus appréciées par notre communauté. Soyez rassuré — Stirling PDF ne peut pas et ne suivra jamais le contenu des documents que vous utilisez."
title = "Analyse"
[cookieBanner.preferencesModal.description]
1 = "Stirling PDF utilise des cookies et des technologies similaires pour améliorer votre expérience et comprendre comment nos outils sont utilisés. Cela nous aide à améliorer les performances, développer les fonctionnalités qui vous tiennent à cœur et offrir un support continu."
2 = "Stirling PDF ne peut pas — et ne pourra jamais — suivre ou accéder au contenu des documents que vous utilisez."
3 = "Votre vie privée et votre confiance sont au cœur de notre démarche."
[cookieBanner.preferencesModal.necessary]
description = "These cookies are essential for the website to function properly. They enable core features like setting your privacy preferences, logging in, and filling out forms—which is why they can’t be turned off."
[cookieBanner.preferencesModal.necessary.title]
1 = "Cookies strictement nécessaires"
2 = "Toujours activés"
[cookieBanner.services]
posthog = "PostHog Analytics"
scarf = "Scarf Pixel"
[credits]
enableOverageBilling = "Activer la facturation de dépassement"
maybeLater = "Peut-être plus tard"
upgrade = "Mettre à niveau"
[credits.insufficient]
brief = "Crédits insuffisants. Il vous faut {{required}} crédits mais vous en avez {{current}}."
freeTier = "Passez à Team pour 10x plus de crédits et une facturation de dépassement illimitée."
managedMember = "Veuillez contacter votre chef d’équipe pour obtenir de l’aide."
message = "Vous n’avez pas assez de crédits pour exécuter {{tool}}. Vous avez actuellement {{current}} crédits."
messageWithAmount = "Il vous faut {{required}} crédits pour exécuter {{tool}}, mais vous n’avez que {{current}}."
teamMember = "Activez la facturation de dépassement pour ne jamais être à court de crédits."
title = "Crédits insuffisants"
[credits.modal]
advancedMonitoring = "Surveillance avancée"
allInOneWorkspace = "Espace de travail PDF tout-en-un (visionneuse, outils et agent)"
apiSandbox = "Bac à sable API"
contactSales = "Contacter l’équipe commerciale"
creditsRemaining = "{{current}} sur {{total}} restants"
creditsThisMonth = "Crédits mensuels"
current = "Offre actuelle"
customPricing = "Personnalisé"
customSmartFolders = "Dossiers intelligents personnalisés"
dedicatedSupportSlas = "Support dédié et SLA"
enterpriseSubscription = "Enterprise"
everythingInCredits = "Tout ce qui est dans Credits, plus :"
everythingInFree = "Tout ce qui est dans Free, plus :"
fasterThroughput = "Débit 10x plus rapide"
forRegularWork = "Pour un usage PDF régulier :"
freeTier = "Offre Free"
fullyPrivateFiles = "Fichiers entièrement privés"
largeFileProcessing = "Traitement de gros fichiers"
managedMemberMessage = "Vous avez un accès illimité aux crédits via votre équipe. Si vous avez besoin d’aide, contactez votre chef d’équipe."
managedMemberTitle = "Crédits illimités"
meteringBillingNote = "Les crédits de dépassement sont facturés mensuellement avec votre abonnement Team. Suivez votre utilisation à tout moment dans les paramètres de votre compte."
meteringExplanation = "Votre offre Team inclut {{credits}} crédits par mois. Lorsque vous n’en avez plus, la facturation de dépassement fournit automatiquement des crédits supplémentaires pour ne jamais vous arrêter."
meteringIncluded = "{{credits}} crédits/mois inclus avec Team"
meteringNeverRunOut = "Ne soyez jamais à court de crédits"
meteringNoCommitment = "Sans engagement, résiliation à tout moment"
meteringPayAsYouGo = "Payez uniquement ce que vous utilisez"
meteringPrice = "Crédits supplémentaires à {{price}}/crédit"
meteringTitle = "Facturation de dépassement à l’usage"
monthlyCredits = "crédits mensuels"
orgWideAccess = "Contrôles d’accès à l’échelle de l’organisation"
overage = "dépassement"
perMonth = "/mois"
popular = "Populaire"
premiumAiModels = "Modèles IA premium"
prioritySupport = "Support prioritaire"
privateDocCloud = "Cloud de documents privé"
ragFineTuning = "RAG + fine-tuning"
secureApiAccess = "Accès API sécurisé"
selfHostLink = "Consulter la documentation et les offres"
selfHostPrompt = "Vous souhaitez auto-héberger ?"
standardThroughput = "Débit standard"
subtitle = "Passez à Team pour 10x plus de crédits et un traitement plus rapide."
subtitlePro = "Activez la facturation de dépassement automatique pour ne jamais être à court de crédits."
teamLeaderOnly = "Seuls les chefs d’équipe peuvent activer la facturation de dépassement"
teamSubscription = "Team"
titleExhausted = "Vous avez utilisé vos crédits gratuits"
titleExhaustedPro = "Vous n’avez plus de crédits"
unlimitedApiAccess = "Accès API illimité"
unlimitedMonthlyCredits = "Licence site"
unlimitedSeats = "Postes illimités"
[credits.modal.features]
everythingInCredits = "Tout ce qui est dans Credits, plus :"
everythingInFree = "Tout ce qui est dans Free, plus :"
forRegularWork = "Pour un usage PDF régulier :"
[crop]
autoCrop = "Recadrer automatiquement les marges blanches"
header = "Redimensionner"
noFileSelected = "Sélectionnez un fichier PDF pour commencer le recadrage"
reset = "Réinitialiser au PDF complet"
submit = "Envoyer"
title = "Redimensionner"
[crop.automation]
info = "Saisissez les coordonnées de rognage en points PDF. L’origine (0,0) est en bas à gauche. Ces valeurs seront appliquées à tous les PDF traités dans cette automatisation."
reference = "Référence : une page A4 fait 595,28 × 841,89 points (210 mm × 297 mm). 1 pouce = 72 points."
[crop.coordinates]
title = "Position et taille"
[crop.coordinates.height]
desc = "Hauteur de rognage (points)"
label = "Hauteur"
[crop.coordinates.width]
desc = "Largeur de rognage (points)"
label = "Largeur"
[crop.coordinates.x]
desc = "Bord gauche (points)"
label = "Position X"
[crop.coordinates.y]
desc = "Bord inférieur (points)"
label = "Position Y"
[crop.error]
failed = "Échec du recadrage du PDF"
invalidArea = "La zone de recadrage dépasse les limites du PDF"
[crop.preview]
title = "Sélection de la zone de recadrage"
[crop.results]
title = "Résultats du recadrage"
[crop.steps]
selectArea = "Sélectionner la zone de recadrage"
[crop.tooltip]
description = "Sélectionnez la zone à recadrer dans votre PDF en faisant glisser et en redimensionnant la superposition bleue sur la vignette."
drag = "Faites glisser la superposition pour déplacer la zone de recadrage"
precision = "Utilisez les champs de coordonnées pour un positionnement précis"
resize = "Faites glisser les poignées d’angle et de bord pour redimensionner"
title = "Comment recadrer des PDF"
[database]
backupCreated = "Sauvegarde de la base de donnée réussie"
createBackupFile = "Créer un fichier de sauvegarde"
creationDate = "Date de Création"
deleteBackupFile = "Supprimer le fichier de sauvegarde"
downloadBackupFile = "Télécharger le fichier de sauvegarde"
failedImportFile = "Échec de l'imporation du fichier"
fileName = "Nom du Fichier"
fileNotFound = "Fichier introuvable"
fileNullOrEmpty = "Fichier ne peut pas être null ou vide"
fileSize = "Taille du Fichier"
header = "Import/Export de la Base de Données"
importBackupFile = "Importer le fichier de sauvegarde"
importIntoDatabaseSuccessed = "Importation dans la base de données réussie"
info_1 = "Lors de l'importation des données, il est crucial de garantir la structure correcte. Si vous n'êtes pas sûr de ce que vous faites, sollicitez un avis et un soutien d'un professionnel. Une erreur dans la structure peut entraîner des dysfonctionnements de l'application, allant jusqu'à l'incapacité totale d'exécuter l'application."
info_2 = "Le nom du fichier ne fait pas de différence lors de l'upload. Il sera renommé ultérieurement selon le format backup_user_yyyyMMddHHmm.sql, assurant ainsi une convention de nommage cohérente."
notSupported = "Cette fonctionnalité n'est pas supportée avec votre base de donnée"
submit = "Importer la sauvegarde"
title = "Import/Export de la Base de Données"
[decrypt]
cancelled = "Operation annulée pour le PDF: {0}"
invalidPassword = "Veuillez réessayer avec le bon mot de passe"
invalidPasswordHeader = "Mauvais mot de passe ou chiffrement non supporté pour le PDF : {0}"
noPassword = "Pas de mot de passe fourni pour le PDF chiffré : {0}"
passwordPrompt = "Ce fichier est protégé par un mot de passe. Veuillez saisir le mot de passe :"
serverError = "Erreur du serveur lors du déchiffrement : {0}"
success = "Fichier déchiffré avec succès."
unexpectedError = "Une erreur est survenue lors de traitement du fichier. Veuillez essayer de nouveau."
[defaultApp]
description = "Vous pourrez modifier ce réglage ultérieurement dans les paramètres système."
dismiss = "Ignorer"
message = "Souhaitez-vous définir Stirling PDF comme éditeur PDF par défaut ?"
notNow = "Pas maintenant"
setDefault = "Définir par défaut"
title = "Définir comme application PDF par défaut"
[defaultApp.error]
message = "Échec de la définition du gestionnaire PDF par défaut"
title = "Erreur"
[defaultApp.prompt]
message = "Définissez Stirling PDF comme application par défaut pour ouvrir les fichiers PDF."
title = "Définir comme éditeur PDF par défaut"
[defaultApp.settingsOpened]
message = "Veuillez sélectionner Stirling PDF dans vos paramètres système"
title = "Paramètres ouverts"
[defaultApp.success]
message = "Stirling PDF est désormais votre éditeur PDF par défaut"
title = "Application par défaut définie"
[editTableOfContents]
submit = "Appliquer la table des matières"
[editTableOfContents.actions]
clipboardUnavailable = "L’accès au presse-papiers n’est pas disponible dans ce navigateur."
export = "Exporter les signets"
exportClipboard = "Copier le JSON dans le presse-papiers"
exportJson = "Télécharger le JSON"
importClipboard = "Coller le JSON depuis le presse-papiers"
importJson = "Importer JSON"
loadFromPdf = "Charger depuis le PDF sélectionné"
noFile = "Sélectionnez un PDF pour extraire les signets existants."
selectedFile = "Chargé depuis {{file}}"
source = "Charger les signets"
[editTableOfContents.editor]
addTopLevel = "Ajouter un signet de premier niveau"
childBadge = "Enfant"
confirmRemove = "Supprimer ce signet et tous ses enfants ?"
defaultChildTitle = "Signet enfant"
defaultSiblingTitle = "Nouveau signet"
defaultTitle = "Nouveau signet"
description = "Ajoutez, imbriquez et réorganisez des signets pour créer le plan de votre PDF."
heading = "Éditeur de signets"
pagePreview = "Page {{page}}"
untitled = "Signet sans titre"
[editTableOfContents.editor.actions]
addChild = "Ajouter un signet enfant"
addSibling = "Ajouter un signet frère"
remove = "Supprimer le signet"
toggle = "Afficher/Masquer les enfants"
[editTableOfContents.editor.empty]
action = "Ajouter un premier signet"
description = "Importez des signets existants ou commencez par ajouter votre premier élément."
title = "Aucun signet pour l’instant"
[editTableOfContents.editor.field]
page = "Numéro de page cible"
title = "Titre du signet"
[editTableOfContents.error]
failed = "Échec de la mise à jour de la table des matières"
[editTableOfContents.info]
line1 = "Chaque signet doit avoir un titre descriptif et la page à ouvrir."
line2 = "Utilisez des signets enfants pour construire une hiérarchie de chapitres, sections ou sous-sections."
line3 = "Importez des signets depuis le PDF sélectionné ou un fichier JSON pour gagner du temps."
[editTableOfContents.messages]
copied = "Copié dans le presse-papiers"
copiedBody = "JSON des signets copié avec succès."
copyFailed = "Échec de la copie"
exported = "Téléchargement du JSON prêt"
imported = "Signets importés"
importedBody = "Votre plan JSON a remplacé le contenu actuel de l’éditeur."
importedClipboard = "Les données du presse-papiers ont remplacé la liste de signets actuelle."
invalidJson = "Structure JSON invalide"
invalidJsonBody = "Veuillez fournir un fichier JSON de signets valide et réessayer."
loadedBody = "Les signets existants du PDF ont été chargés dans l’éditeur."
loadedTitle = "Signets extraits"
loadFailed = "Impossible d’extraire les signets du PDF sélectionné."
noBookmarks = "Aucun signet trouvé dans le PDF sélectionné."
[editTableOfContents.results]
subtitle = "Téléchargez le fichier traité ou annulez l’opération ci-dessous."
title = "PDF mis à jour avec signets"
[editTableOfContents.settings]
replaceExisting = "Remplacer les signets existants (décocher pour ajouter à la suite)"
replaceExistingHint = "Lorsqu’il est désactivé, le nouveau plan est ajouté après les signets actuels."
title = "Signets et plan"
[editTableOfContents.workbench]
changeFile = "Changer de PDF"
fileLabel = "Les modifications seront appliquées au PDF actuellement sélectionné."
filePrompt = "Choisissez un PDF de votre bibliothèque ou téléversez-en un nouveau pour commencer."
noFile = "Aucun PDF sélectionné"
selectFile = "Sélectionner un PDF"
subtitle = "Importez des signets, créez des hiérarchies et appliquez le plan sans panneaux latéraux encombrés."
tabTitle = "Espace de travail du plan"
[editTableOfContents.workbench.empty]
description = "Sélectionnez l’outil Modifier la table des matières pour charger son espace de travail."
title = "Ouvrez l’outil pour commencer l’édition"
[encryptedPdfUnlock]
description = "Ce PDF est protégé par mot de passe. Saisissez le mot de passe pour continuer à travailler dessus."
emptyResponse = "La suppression du mot de passe n’a produit aucun fichier."
incorrectPassword = "Mot de passe incorrect"
missingFile = "Le fichier sélectionné n’est plus disponible."
required = "Entrez le mot de passe pour continuer."
skip = "Passer pour l’instant"
successBody = "Mot de passe supprimé avec succès."
successBodyWithName = "Mot de passe supprimé de {{fileName}}"
successTitle = "Mot de passe supprimé"
title = "Supprimer le mot de passe pour continuer"
unlock = "Déverrouiller et continuer"
unlockAll = "Utiliser pour tous ({{count}})"
unlockAllPartialFail = "Mot de passe incorrect pour : {{names}}"
unlockAllSuccess = "Déverrouillé {{count}} fichier(s)."
unlockPrompt = "Déverrouillez le PDF pour continuer"
viewerLocked = "Ce PDF est protégé par mot de passe"
viewerUnlock = "Déverrouiller"
[encryptedPdfUnlock.password]
label = "Mot de passe PDF"
placeholder = "Entrez le mot de passe du PDF"
[endpointStatistics]
all = "Tout"
dataTypeAll = "Tous"
dataTypeApi = "API"
dataTypeLabel = "Type de données :"
dataTypeUi = "UI"
endpoint = "Point de terminaison"
failedToLoad = "Échec du chargement des données des points de terminaisons. Veuillez réessayer."
header = "Statistiques des points de terminaison"
home = "Accueil"
loading = "Chargement..."
login = "Connexion"
numberOfVisits = "Nombre de visites"
percentage = "Pourcentage"
refresh = "Rafraîchir"
retry = "Réessayer"
selectedVisits = "Visites sélectionnées"
showing = "Affichage"
title = "Statistiques des points de terminaison"
top = "Top"
top10 = "Top 10"
top20 = "Top 20"
totalEndpoints = "Nombre total de points de terminaison"
totalVisits = "Nombre total de visites"
visits = "Visites"
visitsTooltip = "Visites : {0} ({1}% du total)"
[enterpriseEdition]
button = "Passer à Pro"
ssoAdvert = "Vous cherchez plus de fonctionnalités de gestion des utilisateurs ? Découvrez Stirling PDF Pro"
warning = "Cette fonctionnalité est uniquement disponible pour les utilisateurs Pro."
yamlAdvert = "Stirling PDF Pro prend en charge les fichiers de configuration YAML et d'autres fonctionnalités SSO."
[error]
_value = "Erreur"
contactTip = "Si vous avez encore des problèmes, n'hésitez pas à nous contacter pour obtenir de l'aide. Vous pouvez soumettre un ticket sur notre page GitHub ou nous contacter via Discord :"
copyStack = "Copier la Stack Trace"
discordSubmit = "Discord - Poster un message de demande d'assistance"
dismissAllErrors = "Ignorer toutes les erreurs"
encryptedPdfMustRemovePassword = "Ce PDF est chiffré ou protégé par mot de passe. Veuillez le déverrouiller avant de convertir en PDF/A."
generic = "Une erreur s’est produite"
github = "Créer un ticket sur GitHub"
githubSubmit = "GitHub - Créer un ticket"
incorrectPasswordProvided = "Le mot de passe du PDF est incorrect ou non fourni."
needHelp = "Besoin d'aide / Vous avez trouvé un problème ?"
pdfPassword = "Le document PDF est protégé par un mot de passe qui n'a pas été fourni ou était incorrect"
showStack = "Afficher la Stack Trace"
sorry = "Désolé pour ce problème !"
[error.404]
1 = "Nous ne parvenons pas à trouver la page que vous recherchez."
2 = "Quelque chose n'a pas fonctionné"
head = "404 - Page non trouvée | oups on s'est foiré !"
[extractImages]
allowDuplicates = "Enregistrer les images dupliquées"
header = "Extraire les images"
selectText = "Format d'image dans lequel convertir les images extraites"
submit = "Extraire"
tags = "image,photo,save,archive,zip,capture,grab"
title = "Extraire les images"
[extractImages.error]
failed = "Une erreur est survenue lors de l’extraction des images du PDF."
[extractImages.settings]
title = "Paramètres"
[extractPage]
tags = "extraire,extract"
[extractPages]
submit = "Extraire des pages"
title = "Extraire des pages"
[extractPages.error]
failed = "Échec de l’extraction des pages"
[extractPages.pageNumbers]
label = "Pages à extraire"
placeholder = "p. ex., 1,3,5-8 ou odd & 1-10"
[extractPages.results]
title = "Pages extraites"
[extractPages.settings]
title = "Paramètres"
[extractPages.tooltip]
description = "Extrait les pages sélectionnées dans un nouveau PDF, en conservant l’ordre."
[fileChooser]
click = "Cliquez"
dragAndDrop = "Glisser & Déposer"
dragAndDropImage = "Glisser & Déposer une image"
dragAndDropPDF = "Glisser & Déposer un PDF"
extractPDF = "Extraction en cours..."
hoveredDragAndDrop = "Glisser & Déposer le(s) fichier(s) ici"
or = "ou"
[fileEditor]
addFiles = "Ajouter des fichiers"
pageCount = "{{count}} pages"
pageCount_one = "{{count}} page"
pageCount_other = "{{count}} pages"
[fileManager]
active = "Actif"
addToUpload = "Ajouter au téléversement"
changesNotUploaded = "Modifications non téléversées"
clearAll = "Tout effacer"
clearSelection = "Effacer la sélection"
clickToUpload = "Cliquez pour téléverser des fichiers"
closeAllFiles = "Fermer tous les fichiers"
closeFile = "Fermer le fichier"
cloudFile = "Fichier cloud"
copyCreated = "Copie enregistrée sur cet appareil."
copyFailed = "Impossible de créer une copie."
delete = "Supprimer"
deleteAll = "Tout supprimer"
deleteSelected = "Supprimer la sélection"
deselectAll = "Tout déselectionner"
details = "Détails du fichier"
download = "Télécharger"
downloadSelected = "Télécharger la sélection"
dragDrop = "Glissez-déposez des fichiers ici"
dropFilesHere = "Déposez les fichiers ici"
failedToLoad = "Échec du chargement du fichier dans l’ensemble actif."
failedToOpen = "Échec de l’ouverture du fichier. Il a peut-être été supprimé du stockage."
fileFormat = "Format"
fileHistory = "Historique du fichier"
fileName = "Nom"
fileSize = "Taille"
filesSelected = "fichiers sélectionnés"
filesStored = "fichiers stockés"
fileVersion = "Version"
filterAll = "Tous"
filterLocal = "Local"
filterSharedByMe = "Partagé par moi"
filterSharedWithMe = "Partagé avec moi"
googleDrive = "Google Drive"
googleDriveNotAvailable = "Intégration Google Drive non disponible"
googleDriveShort = "Drive"
hideHistory = "Masquer l’historique"
lastModified = "Dernière modification"
lastSynced = "Dernière synchronisation"
leaveShare = "Retirer de ma liste"
leaveShareFailed = "Impossible de retirer le fichier partagé."
leaveShareSuccess = "Retiré de votre liste de partages."
loadingFiles = "Chargement des fichiers..."
loadingHistory = "Chargement de l’historique…"
localFiles = "Fichiers locaux"
localOnly = "Local uniquement"
makeCopy = "Faire une copie"
mobileShort = "Mobile"
mobileUpload = "Téléversement mobile"
mobileUploadNotAvailable = "Téléversement mobile non activé"
myFiles = "Mes fichiers"
noFiles = "Aucun fichier disponible"
noFileSelected = "Aucun fichier sélectionné"
noFilesFound = "Aucun fichier correspondant à votre recherche"
noRecentFiles = "Aucun fichier récent trouvé"
openFile = "Ouvrir le fichier"
openFiles = "Ouvrir des fichiers"
openInFileEditor = "Ouvrir dans l’éditeur de fichiers"
openInPageEditor = "Ouvrir dans l’Éditeur de pages"
owner = "Propriétaire"
ownerUnknown = "Inconnu"
recent = "Récents"
reloadFiles = "Recharger les fichiers"
removeBoth = "Supprimer des deux"
removeFilePrompt = "Ce fichier est enregistré sur cet appareil et sur votre serveur. D’où souhaitez-vous le supprimer ?"
removeFileTitle = "Supprimer le fichier"
removeLocalOnly = "Cet appareil uniquement"
removeServerFailed = "Impossible de supprimer le fichier du serveur."
removeServerOnly = "Serveur uniquement"
removeServerOnlyPrompt = "Ce fichier est stocké uniquement sur votre serveur. Souhaitez-vous le supprimer du serveur ?"
removeServerSuccess = "Supprimé du serveur."
removeSharedPrompt = "Ce fichier est partagé avec vous. Vous pouvez le retirer de cet appareil ou de votre liste de partages."
removeSharedServerOnlyBlockedPrompt = "Ce fichier est partagé avec vous et stocké uniquement sur le serveur."
removeSharedServerOnlyPrompt = "Ce fichier est partagé avec vous et stocké uniquement sur le serveur. Le retirer de votre liste ?"
restore = "Restaurer"
saveSelected = "Enregistrer la sélection"
searchFiles = "Rechercher des fichiers…"
selectAll = "Tout sélectionner"
selectedCount = "{{count}} sélectionné(s)"
selectedFiles = "Fichiers sélectionnés"
share = "Partager"
shared = "Partagé"
sharedByYou = "Partagé par vous"
sharedEditNoticeBody = "Vous n’avez pas de droits d’édition sur la version serveur de ce fichier. Toute modification sera enregistrée comme copie locale."
sharedEditNoticeConfirm = "Compris"
sharedEditNoticeTitle = "Copie serveur en lecture seule"
sharedWithYou = "Partagé avec vous"
shareSelected = "Partager la sélection"
sharing = "Partage"
showAll = "Tout afficher"
showHistory = "Afficher l’historique"
sortByDate = "Trier par date"
sortByName = "Trier par nom"
sortBySize = "Trier par taille"
storage = "Stockage"
storageCleared = "Le navigateur a effacé le stockage. Les fichiers ont été supprimés. Veuillez téléverser de nouveau."
storageError = "Une erreur de stockage est survenue"
storageLow = "Le stockage est presque plein. Envisagez de supprimer d’anciens fichiers."
storageState = "Stockage"
subtitle = "Ajoutez des fichiers à votre stockage pour un accès facile dans tous les outils"
supportMessage = "Alimenté par le stockage de la base de données du navigateur pour une capacité illimitée"
synced = "Synchronisé"
title = "Téléverser des fichiers PDF"
toolChain = "Outils appliqués"
totalSelected = "Total sélectionné"
unsupported = "Non pris en charge"
unzip = "Décompresser"
updateOnServer = "Mettre à jour sur le serveur"
uploadError = "Échec du téléversement de certains fichiers."
uploadSelected = "Téléverser la sélection"
uploadToServer = "Téléverser sur le serveur"
[files]
addFiles = "Ajouter des fichiers"
created = "Créé"
selectFromWorkbench = "Sélectionnez des fichiers depuis l’espace de travail ou "
selectMultipleFromWorkbench = "Sélectionnez au moins {{count}} fichiers depuis l’espace de travail ou "
size = "Taille du fichier"
title = "Fichiers"
upload = "Téléverser"
uploadFiles = "Téléverser des fichiers"
[fileSelectorPicker]
empty = "Aucun fichier disponible"
placeholder = "Sélectionner un fichier"
search = "Filtrer les fichiers…"
tabListLabel = "Fichiers enregistrés, espace de travail, téléversement"
upload = "Téléverser depuis l’ordinateur"
[fileSelectorPicker.sort]
dateAsc = "Plus anciens en premier"
dateDesc = "Plus récents en premier"
dateLabel = "Récents"
nameAsc = "A à Z"
nameDesc = "Z à A"
nameLabel = "A–Z"
[fileSelectorPicker.tabs]
saved = "Fichiers enregistrés"
upload = "Téléversement"
workbench = "Espace de travail"
[fileSidebar]
addFiles = "Ajouter des fichiers"
collapse = "Réduire la barre latérale"
dropHint = "Ouvrez des fichiers pour commencer"
expand = "Développer la barre latérale"
files = "Fichiers"
googleDrive = "Google Drive"
googleDriveDisabled = "Google Drive n’est pas configuré"
noFiles = "Aucun fichier pour le moment"
openFileManager = "Ouvrir le gestionnaire de fichiers"
openFromComputer = "Ouvrir depuis l’ordinateur"
openSettings = "Ouvrir les paramètres"
search = "Rechercher"
searchPlaceholder = "Rechercher des fichiers..."
[fileToPDF]
credit = "Ce service utilise LibreOffice et Unoconv pour la conversion de fichiers."
header = "Convertir un fichier en PDF"
submit = "Convertir"
supportedFileTypes = "Les types de fichiers pris en charge doivent inclure les éléments ci-dessous, mais pour une liste complète et mise à jour des formats pris en charge, veuillez vous reporter à la documentation de LibreOffice."
supportedFileTypesInfo = "Types de fichiers pris en charge"
tags = "convertion,transformation,format,document,image,slide,texte,conversion,office,docs,word,excel,powerpoint"
title = "Fichier en PDF"
[fileUpload]
addFiles = "Ajouter des fichiers"
backToTools = "Retour aux outils"
chooseFromStorage = "Choisissez un fichier depuis le stockage ou téléversez un nouveau PDF"
chooseFromStorageMultiple = "Choisissez des fichiers depuis le stockage ou téléversez de nouveaux PDF"
dragFilesInOrClick = "Glissez des fichiers ou cliquez sur « Ajouter des fichiers » pour parcourir"
dropFileHere = "Déposez un fichier ici ou cliquez pour téléverser"
dropFilesHere = "Déposez des fichiers ici ou cliquez sur le bouton de téléversement"
dropFilesHereOpen = "Déposez des fichiers ici ou cliquez sur le bouton Ouvrir"
filesAvailable = "fichiers disponibles"
loadFromStorage = "Charger depuis le stockage"
loading = "Chargement..."
noFilesInStorage = "Aucun fichier disponible dans le stockage. Téléversez d’abord des fichiers."
noFilesInStorageOpen = "Aucun fichier disponible dans le stockage. Ouvrez d’abord des fichiers."
open = "Ouvrir"
openFile = "Ouvrir un fichier"
openFiles = "Ouvrir des fichiers"
or = "ou"
pdfFilesOnly = "Fichiers PDF uniquement"
selectFile = "Sélectionner un fichier"
selectFiles = "Sélectionner des fichiers"
selectFromStorage = "Sélectionner depuis le stockage"
selectPdfToEdit = "Sélectionnez un PDF à modifier"
selectPdfToView = "Sélectionnez un PDF à afficher"
supportedFileTypes = "Types de fichiers pris en charge"
upload = "Téléverser"
uploadFile = "Téléverser un fichier"
uploadFiles = "Téléverser des fichiers"
[firstLogin]
allFieldsRequired = "Tous les champs sont obligatoires"
changePassword = "Changer le mot de passe"
confirmPassword = "Confirmez le nouveau mot de passe"
currentPassword = "Mot de passe actuel"
enterCurrentPassword = "Saisissez votre mot de passe actuel"
enterNewPassword = "Saisissez un nouveau mot de passe (8 caractères minimum)"
error = "Erreur"
loggedInAs = "Connecté en tant que"
newPassword = "Nouveau mot de passe"
passwordChangedSuccess = "Mot de passe modifié avec succès ! Veuillez vous reconnecter."
passwordChangeFailed = "Échec de la modification du mot de passe. Veuillez vérifier votre mot de passe actuel."
passwordMustBeDifferent = "Le nouveau mot de passe doit être différent du mot de passe actuel"
passwordsDoNotMatch = "Les nouveaux mots de passe ne correspondent pas"
passwordTooShort = "Le mot de passe doit comporter au moins 8 caractères"
reEnterNewPassword = "Saisissez à nouveau le nouveau mot de passe"
title = "Première connexion"
welcomeMessage = "Pour des raisons de sécurité, vous devez changer votre mot de passe lors de votre première connexion."
welcomeTitle = "Bienvenue !"
[flatten]
filenamePrefix = "aplati"
flattenOnlyForms = "Aplatir uniquement les formulaires"
header = "Rendre inerte"
submit = "Rendre inerte"
title = "Rendre inerte"
[flatten.error]
failed = "Une erreur est survenue lors de l’aplatissement du PDF."
[flatten.files]
placeholder = "Sélectionnez un fichier PDF dans la vue principale pour commencer"
[flatten.options]
note = "L’aplatissement supprime les éléments interactifs du PDF, les rendant non modifiables."
stepTitle = "Options d’aplatissement"
title = "Options d’aplatissement"
[flatten.options.flattenOnlyForms]
desc = "Aplatir uniquement les champs de formulaire, en laissant les autres éléments interactifs intacts"
label = "Aplatir uniquement les formulaires"
[flatten.renderDpi]
help = "Laissez vide pour utiliser la valeur par défaut du système. Un DPI plus élevé améliore la netteté mais augmente le temps de traitement et la taille du fichier."
label = "DPI de rendu (optionnel, 150 DPI recommandé)"
placeholder = "ex. 150"
[flatten.results]
title = "Résultats de l’aplatissement"
[flatten.steps]
settings = "Paramètres"
[flatten.tooltip.description]
bullet1 = "Les zones de texte deviennent du texte normal (non modifiable)"
bullet2 = "Les cases à cocher et boutons deviennent des images"
bullet3 = "Idéal pour les versions finales que vous ne voulez pas modifier"
bullet4 = "Assure une apparence cohérente sur tous les appareils"
text = "L’aplatissement rend votre PDF non modifiable en transformant les formulaires remplissables et les boutons en texte et images ordinaires. Le PDF aura exactement le même aspect, mais personne ne pourra plus modifier ou remplir les formulaires. Parfait pour partager des formulaires complétés, créer des documents finaux pour archivage, ou garantir un rendu identique partout."
title = "Que fait l’aplatissement ?"
[flatten.tooltip.formsOnly]
bullet1 = "Les formulaires deviennent non modifiables"
bullet2 = "Les liens fonctionnent toujours au clic"
bullet3 = "Les commentaires et notes restent visibles"
bullet4 = "Les signets aident toujours à naviguer"
text = "Cette option supprime uniquement la possibilité de remplir des formulaires, mais conserve les autres fonctionnalités comme les liens cliquables, les signets et les commentaires."
title = "Que signifie « Aplatir uniquement les formulaires » ?"
[flatten.tooltip.header]
title = "À propos de l’aplatissement des PDF"
[footer]
discord = "Discord"
issues = "GitHub"
[getPdfInfo]
downloadJson = "Télécharger le JSON"
downloads = "Téléchargements"
header = "Récupérer les informations"
indexTitle = "Index"
noneDetected = "Aucun détecté"
noResults = "Exécutez l'outil pour générer un rapport."
processing = "Extraction des informations..."
results = "Résultats"
submit = "Récupérer les informations"
tags = "récupérer,infomation,data,stats,statistics"
title = "Récupérer les informations"
[getPdfInfo.compliance]
compliant = "Conforme"
failed = "Échec"
failedCount = "échoués"
nonCompliant = "Non conforme"
none = "Aucune norme détectée"
notDetected = "Non détecté"
noVerification = "Aucune vérification effectuée"
noVerificationDesc = "La conformité aux normes PDF n'a pas été vérifiée pour ce document."
passed = "Réussi"
passedCount = "réussis"
[getPdfInfo.error]
partial = "Certains fichiers n'ont pas pu être traités."
unexpected = "Erreur inattendue lors de l'extraction."
[getPdfInfo.other]
attachments = "Pièces jointes"
embeddedFiles = "Fichiers intégrés"
javaScript = "JavaScript"
layers = "Calques"
structureTree = "StructureTree"
xmp = "XMPMetadata"
[getPdfInfo.perPage]
annotations = "Annotations"
fonts = "Polices"
images = "Images"
links = "Liens"
multimedia = "Multimédia"
size = "Taille"
xobjects = "Nombre d'objets XObject"
[getPdfInfo.report]
entryLabel = "Résumé complet des informations"
shortTitle = "Informations PDF"
[getPdfInfo.sections]
basicInfo = "Informations de base"
compliance = "Conformité"
documentInfo = "Informations sur le document"
encryption = "Chiffrement"
formFields = "Champs de formulaire"
metadata = "Métadonnées"
other = "Autre"
permissions = "Autorisations"
perPageInfo = "Informations par page"
tableOfContents = "Table des matières"
[getPdfInfo.status]
complete = "Extraction terminée"
[getPdfInfo.summary]
author = "Auteur"
basic = "Informations de base"
complianceChecked = "Normes vérifiées ({{failed}} échoués)"
compliancePassed = "Conforme à {{standards}}"
created = "Créé"
documentInfo = "Informations sur le document"
fileSize = "Taille du fichier"
hasCompliance = "Respecte des normes de conformité"
language = "Langue"
modified = "Modifié"
noCompliance = "Aucune norme de conformité"
overviewTitle = "Aperçu du PDF"
pages = "Pages"
pdfVersion = "Version PDF"
permsAll = "Toutes les autorisations accordées"
permsMixed = "Certaines autorisations sont restreintes"
permsRestricted = "{{count}} restrictions"
securityTitle = "État de sécurité"
technical = "Technique"
title = "Résumé PDF"
[getPdfInfo.summary.overview]
text = "Ceci est un PDF de {{pages}} pages intitulé {{title}} créé par {{author}} (version PDF {{version}})."
unknown = "Auteur inconnu"
untitled = "un document sans titre"
[getPdfInfo.summary.security]
encrypted = "PDF chiffré - Protection par mot de passe présente"
unencrypted = "PDF non chiffré - Aucune protection par mot de passe"
[getPdfInfo.summary.tech]
bookmarks = "Signets"
embeddedFiles = "Fichiers intégrés"
fonts = "Polices"
formFields = "Champs de formulaire"
images = "Images"
javaScript = "JavaScript"
layers = "Calques"
multimedia = "Multimédia"
[groupSigning.steps]
back = "Retour"
completed = "Terminé"
current = "En cours"
stepLabel = "Étape {{number}}"
[groupSigning.steps.configureDefaults]
continue = "Continuer vers la vérification"
invisible = "Les signatures seront invisibles (métadonnées uniquement)"
locationLabel = "Emplacement :"
preview = "Aperçu"
reasonLabel = "Raison :"
title = "Configurer les paramètres de signature"
visible = "Les signatures seront visibles à la page {{page}}"
[groupSigning.steps.review]
document = "Document"
dueDate = "Date d’échéance (optionnelle)"
dueDatePlaceholder = "Sélectionner une date d’échéance…"
invisible = "Invisible (métadonnées uniquement)"
location = "Emplacement :"
logo = "Logo :"
logoHidden = "Pas de logo"
logoShown = "Logo Stirling PDF affiché"
participantCount = "{{count}} participant(s) signeront dans l’ordre"
participants = "Participants"
reason = "Raison :"
send = "Envoyer les demandes de signature"
signatureSettings = "Paramètres de signature"
title = "Vérifier les détails de la session"
titleShort = "Vérifier et envoyer"
visibility = "Visibilité :"
visible = "Visible à la page {{page}}"
[groupSigning.steps.selectDocument]
continue = "Continuer vers la sélection des participants"
noFile = "Veuillez sélectionner un seul fichier PDF parmi vos fichiers actifs pour créer une session de signature."
selectedFile = "Document sélectionné"
title = "Sélectionner un document"
[groupSigning.steps.selectParticipants]
continue = "Continuer vers les paramètres de signature"
count = "{{count}} participant(s) sélectionné(s)"
label = "Sélectionner des participants"
placeholder = "Choisissez des participants pour signer…"
title = "Choisir des participants"
[groupSigning.tooltip]
header = "À propos de la signature de groupe"
[groupSigning.tooltip.finalization]
bullet1 = "Toutes les signatures sont appliquées dans l’ordre des participants que vous avez défini"
bullet2 = "Vous pouvez finaliser avec des signatures partielles si nécessaire"
bullet3 = "Une fois finalisée, la session ne peut plus être modifiée"
description = "Une fois que tous les participants ont signé (ou si vous choisissez de finaliser plus tôt), vous pouvez générer le PDF final signé."
title = "Processus de finalisation"
[groupSigning.tooltip.roles]
bullet1 = "Propriétaire (vous) : crée la session, configure les paramètres par défaut des signatures, finalise le document"
bullet2 = "Participants : créent leur signature, choisissent le certificat, la placent sur le PDF"
bullet3 = "Les participants ne peuvent pas modifier la visibilité, la raison ou l’emplacement de la signature"
description = "Vous contrôlez les paramètres d’apparence des signatures pour tous les participants."
title = "Rôles des participants"
[groupSigning.tooltip.sequential]
bullet1 = "Le premier participant doit signer avant que le second puisse accéder au document"
bullet2 = "Garantit un ordre de signature conforme aux exigences légales"
bullet3 = "Vous pouvez réorganiser les participants en les faisant glisser dans la liste"
description = "Les participants signent les documents dans l’ordre que vous spécifiez. Chaque signataire reçoit une notification quand c’est son tour."
title = "Signature séquentielle"
[guestBanner]
dismiss = "Masquer la bannière"
message = "Créez un compte gratuit pour enregistrer votre travail, accéder à plus de fonctionnalités et soutenir le projet."
signUp = "S’inscrire gratuitement"
title = "Vous utilisez Stirling PDF en tant qu’invité !"
[home]
alphabetical = "Alphabétique"
desc = "Votre application Web hébergée localement pour répondre à tous vos besoins PDF."
globalPopularity = "Popularité globale"
hideFavorites = "Cacher les favoris"
legacyHomepage = "Ancienne Homepage"
newHomePage = "Essayez notre nouvelle Homepage !"
searchBar = "Rechercher des fonctionnalités..."
setFavorites = "Ajouter des favoris"
showFavorites = "Montrer les favoris"
sortBy = "Trier par :"
[home.addAttachments]
desc = "Ajouter ou supprimer des fichiers intégrés (pièces jointes) dans un PDF"
tags = "intégrer,joindre,inclure"
title = "Ajouter des pièces jointes"
[home.addImage]
desc = "Ajoutez une image à un emplacement défini sur un PDF."
tags = "insérer,intégrer,placer"
title = "Ajouter une image"
[home.addPageNumbers]
desc = "Ajoutez des numéros de page dans un PDF à un emplacement défini."
tags = "numéro,pagination,compter"
title = "Numéroter pages"
[home.addPassword]
desc = "Chiffrez votre PDF avec un mot de passe."
tags = "encrypt,password,lock,secure,protect,security,encryption,safeguard,confidential,private,restrict access"
title = "Ajouter un mot de passe"
[home.addStamp]
desc = "Ajouter des tampons de texte ou d’image à des emplacements définis"
tags = "tampon,marque,sceau"
title = "Ajouter un tampon au PDF"
[home.addText]
desc = "Ajouter du texte personnalisé n’importe où dans votre PDF"
tags = "texte,annotation,étiquette"
title = "Ajouter du texte"
[home.adjustContrast]
desc = "Ajustez le contraste, la saturation et la luminosité d'un PDF."
tags = "contraste,luminosité,saturation"
title = "Ajuster couleurs et contraste"
[home.annotate]
desc = "Surlignez, dessinez, ajoutez des notes et des formes dans la visionneuse"
tags = "annoter,surligner,dessiner"
title = "Annoter"
[home.automate]
desc = "Créez des workflows multi-étapes en enchaînant des actions PDF. Idéal pour les tâches récurrentes."
tags = "workflow,séquence,automatisation"
title = "Automatiser"
[home.autoRename]
desc = "Renomme automatiquement un fichier PDF sur la base de son en-tête détecté"
tags = "détection automatique,basé-en-tête,organiser,renommer"
title = "Renommer PDF auto"
[home.autoSizeSplitPDF]
desc = "Séparer un PDF unique en plusieurs documents en fonction de la taille, du nombre de pages ou du nombre de documents."
tags = "auto,diviser,taille"
title = "Scinder auto taille/pages"
[home.autoSplitPDF]
desc = "Séparez automatiquement le PDF numérisé avec le code QR du diviseur de page numérisé."
tags = "auto,diviser,QR"
title = "Scinder pages auto"
[home.bookletImposition]
desc = "Créer des livrets avec un ordre de pages correct et une mise en page multi-pages pour l’impression et la reliure"
tags = "livret,imprimer,reliure"
title = "Imposition en livret"
[home.certSign]
desc = "Signez un PDF avec un certificat ou une clé (PEM/P12)."
tags = "authentifier,PEM,P12,officiel,chiffrer,signer,certificat,PKCS12,JKS,serveur,manuel,auto"
title = "Signer avec un certificat"
[home.changeMetadata]
desc = "Modifiez, supprimez ou ajoutez des métadonnées à un PDF."
tags = "éditer,modifier,mettre à jour"
title = "Modifier les métadonnées"
[home.changePermissions]
desc = "Modifier les restrictions et permissions du document"
tags = "permissions,restrictions,rights,access control,allow,deny,printing,copying,editing,modify permissions,security settings,user rights"
title = "Modifier les permissions"
[home.compare]
desc = "Comparez et visualisez les différences entre deux PDF."
tags = "différence"
title = "Comparer"
[home.compress]
desc = "Compressez les PDF pour réduire leur tailles."
tags = "réduire,compresser,optimiser"
title = "Compresser"
[home.convert]
desc = "Convertir des fichiers entre différents formats"
tags = "transformer,changer"
title = "Convertir"
[home.crop]
desc = "Redimensionnez un PDF pour réduire sa taille (en conservant le texte !)."
tags = "rogner,couper,redimensionner"
title = "Redimensionner"
[home.devAirgapped]
desc = "Lien vers le guide d’installation isolée (air-gapped)"
tags = "air-gapped,offline,isolated,no internet,disconnected,secure,network isolation,standalone"
title = "Installation isolée"
[home.devApi]
desc = "Lien vers la documentation de l’API"
tags = "API,développement,documentation"
title = "API"
[home.devFolderScanning]
desc = "Lien vers le guide d’analyse de dossier automatisée"
tags = "automatisation,dossier,analyse"
title = "Scan auto de dossiers"
[home.devSsoGuide]
desc = "Lien vers le guide SSO"
tags = "SSO,single sign-on,authentication,SAML,OAuth,OIDC,login,enterprise,identity provider,IdP"
title = "Guide SSO"
[home.editTableOfContents]
desc = "Ajouter ou modifier les signets et la table des matières dans les documents PDF"
tags = "signets,contenu,éditer"
title = "Modifier sommaire"
[home.extractImages]
desc = "Extrayez toutes les images d'un PDF et enregistrez-les dans un ZIP."
tags = "extraire,sauver,exporter"
title = "Extraire les images"
[home.extractPages]
desc = "Extraire des pages spécifiques d’un document PDF"
tags = "extraire,sélectionner,copier"
title = "Extraire des pages"
[home.flatten]
desc = "Supprimez tous les éléments et formulaires interactifs d'un PDF."
tags = "simplifier,retirer,interactif"
title = "Rendre inerte"
[home.formFill]
desc = "Remplissez les champs de formulaire PDF de manière interactive avec un éditeur visuel"
title = "Remplir un formulaire"
[home.getPdfInfo]
desc = "Récupérez toutes les informations possibles sur un PDF."
tags = "info,métadonnées,détails"
title = "Récupérer les informations"
[home.manageCertificates]
desc = "Importer, exporter ou supprimer des fichiers de certificats numériques utilisés pour signer des PDF."
tags = "certificats,importer,exporter"
title = "Gérer les certificats"
[home.merge]
desc = "Fusionnez facilement plusieurs PDF en un seul."
tags = "fusionner,joindre,unir"
title = "Fusionner"
[home.mobile]
brandAlt = "Logo Stirling PDF"
openFiles = "Ouvrir des fichiers"
swipeHint = "Balayez vers la gauche ou la droite pour changer de vue"
tools = "Outils"
toolsSlide = "Panneau de sélection des outils"
viewSwitcher = "Changer la vue de l’espace de travail"
workbenchSlide = "Panneau d’espace de travail"
workspace = "Espace de travail"
[home.multiTool]
desc = "Fusionnez, faites pivoter, réorganisez et supprimez des pages."
tags = "multiple,outils"
title = "Outil multifonction PDF"
[home.ocr]
desc = "Utilisez l'OCR pour analyser et détecter le texte des images d'un PDF et le rajouter en tant que tel."
tags = "extraire,scanner"
title = "OCR / Nettoyage des numérisations"
[home.overlay-pdfs]
desc = "Superposer un PDF sur un autre"
tags = "overlay,combine,merge,layer,superimpose,overlay PDF,layer PDFs,combine PDFs,stack,overlay pages,background,foreground,composite"
title = "Superposer des PDF"
[home.pageLayout]
desc = "Fusionnez plusieurs pages d'un PDF en une seule."
tags = "mise en page,arranger,combiner"
title = "Fusionner des pages"
[home.pdfCommentAgent]
desc = "Demandez à l’IA d’annoter un PDF avec des commentaires sous forme de notes autocollantes selon votre consigne"
tags = "AI,agent,commentaire,annoter,note autocollante,révision,retour,notes"
title = "Ajouter des commentaires IA"
[home.pdfOrganiser]
desc = "Supprimez ou réorganisez les pages dans n'importe quel ordre."
tags = "organiser,réorganiser,réordonner"
title = "Organiser"
[home.pdfTextEditor]
desc = "Afficher et modifier les exports JSON de Stirling PDF avec édition de texte groupée et régénération du PDF"
tags = "edit text,modify text,change text,edit content,update text,rewrite,correct,amend,redline,revise,text editor,content editor"
title = "Éditeur de texte PDF"
[home.pdfToSinglePage]
desc = "Fusionnez toutes les pages PDF en une seule grande page."
tags = "combiner,fusionner,unique"
title = "Fusionner en une seule page"
[home.read]
desc = "Afficher et annoter des PDF. Surlignez du texte, dessinez ou insérez des commentaires pour l’examen et la collaboration."
tags = "voir,ouvrir,afficher"
title = "Lire"
[home.redact]
desc = "Caviarder un PDF en fonction de texte sélectionné, formes dessinées et/ou des pages sélectionnées."
tags = "censurer,noircir,masquer"
title = "Caviardage manuel"
[home.removeAnnotations]
desc = "Supprimer tous les commentaires/annotations d'un PDF."
tags = "supprimer,nettoyer,retirer"
title = "Supprimer les annotations"
[home.removeBlanks]
desc = "Détectez et supprimez les pages vierges d'un PDF."
tags = "supprimer,nettoyer,vider"
title = "Supprimer les pages vierges"
[home.removeCertSign]
desc = "Supprimez la signature par certificat d'un PDF"
tags = "retirer,supprimer,déverrouiller"
title = "Retirer signature certifiée"
[home.removeImage]
desc = "Supprimez les images d'un PDF pour réduire sa taille"
tags = "retirer,supprimer,nettoyer"
title = "Supprimer les images"
[home.removePages]
desc = "Supprimez les pages inutiles de votre PDF."
tags = "supprimer,extraire,exclure"
title = "Supprimer"
[home.removePassword]
desc = "Supprimez la protection par mot de passe de votre PDF."
tags = "déverrouiller"
title = "Supprimer le mot de passe"
[home.reorganizePages]
desc = "Réorganisez, dupliquez ou supprimez des pages PDF avec un contrôle visuel par glisser-déposer."
tags = "réarranger,réordonner,organiser"
title = "Réorganiser les pages"
[home.repair]
desc = "Essayez de réparer un PDF corrompu ou cassé."
tags = "corriger,restaurer"
title = "Réparer"
[home.replaceColor]
desc = "Remplacer ou inverser les couleurs dans les documents PDF"
tags = "replace color,invert color,color replacement,swap colors,change color,invert,negative,color swap,find and replace color,convert color,color change"
title = "Remplacer & inverser couleurs"
[home.rotate]
desc = "Faites pivoter facilement vos PDF."
tags = "tourner,retourner,orienter"
title = "Pivoter"
[home.sanitize]
desc = "Supprimer les éléments potentiellement nuisibles des fichiers PDF"
tags = "nettoyer,purger,retirer"
title = "Assainir"
[home.scalePages]
desc = "Modifiez la taille ou l'échelle d'une page et/ou de son contenu."
tags = "redimensionner,ajuster,mettre à l’échelle"
title = "Régler taille/échelle page"
[home.scannerEffect]
desc = "Créer un PDF qui ressemble à un document scanné"
tags = "scanner,simuler,créer"
title = "Effet scanner"
[home.scannerImageSplit]
desc = "Détecter et scinder des photos scannées en pages séparées"
tags = "détecter,diviser,photos"
title = "Séparer photos scannées"
[home.showJS]
desc = "Recherche et affiche tout JavaScript injecté dans un PDF."
tags = "javascript,code,script"
title = "Afficher le JavaScript"
[home.sign]
desc = "Ajoutez une signature au PDF avec un dessin, du texte ou une image."
tags = "signature,autographe"
title = "Signer"
[home.split]
desc = "Divisez un PDF en plusieurs documents."
tags = "diviser,séparer,scinder"
title = "Diviser"
[home.splitByChapters]
desc = "Séparez un PDF en fichiers multiples en fonction de sa structure par chapitres."
tags = "diviser,chapitres,structure"
title = "Séparer un PDF par chapitres"
[home.splitBySections]
desc = "Diviser chaque page d’un PDF en plus petites sections horizontales et verticales"
tags = "diviser,sections,scinder"
title = "Diviser le PDF par sections"
[home.swagger]
desc = "Voir la documentation de l’API et tester les points de terminaison"
tags = "API,documentation,test"
title = "Documentation de l’API"
[home.timestampPdf]
desc = "Ajoutez un horodatage RFC 3161 pour prouver la date d'existence de votre PDF"
tags = "horodatage,RFC 3161,TSA,autorité de timestamp,horodatage de document,preuve d'existence,jeton d'horodatage,timestamp de confiance,signer horodatage,notariser"
title = "Horodater le PDF"
[home.unlockPDFForms]
desc = "Supprimer la propriété lecture seule des champs de formulaire dans un document PDF"
tags = "déverrouiller,activer,modifier"
title = "Déverrouiller les formulaires PDF"
[home.validateSignature]
desc = "Vérifier les signatures numériques et les certificats des documents PDF"
tags = "valider,vérifier,certificat"
title = "Valider signature PDF"
[home.viewPdf]
desc = "Visionner, annoter, ajouter du texte ou des images."
title = "Visionner/Modifier des PDF"
[home.watermark]
desc = "Ajoutez un filigrane personnalisé à votre PDF."
tags = "tampon,marque,superposition"
title = "Ajouter un filigrane"
[HTMLToPDF]
credit = "Utilise WeasyPrint."
cssMediaType = "Modifier le type de média CSS de la page."
defaultHeader = "Activer l'entête par défaut (Nom et numéro de page)"
header = "HTML en PDF"
help = "Accepte les fichiers HTML et les ZIP contenant du HTML, du CSS, des images, etc. (requis)."
marginBottom = "Marge inférieure de la page en millimètres. (Vide par défaut)"
marginLeft = "Marge gauche de la page en millimètres. (Vide par défaut)"
marginRight = "Marge droite de la page en millimètres. (Vide par défaut)"
marginTop = "Marge supérieure de la page en millimètres. (Vide par défaut)"
none = "Aucun"
pageHeight = "Hauteur de la page en centimètres. (Vide par défaut)"
pageWidth = "Largeur de la page en centimètres. (Vide par défaut)"
print = "Imprimer"
printBackground = "Restituer l'image de fond des sites web."
screen = "Écran"
submit = "Convertir"
tags = "html,markup,contenu Web,transformation,convert"
title = "HTML en PDF"
zoom = "Niveau de zoom pour l'affichage du site web."
[imageToPdf]
tags = "pdf,conversion,img,jpg,image,photo"
[imageToPDF]
fillPage = "Remplir la page"
fitDocumentToImage = "Ajuster la page à l'image"
header = "Image en PDF"
maintainAspectRatio = "Maintenir les proportions"
selectLabel = "Options d'ajustement de l'image"
submit = "Convertir"
title = "Image en PDF"
[imageToPDF.selectText]
2 = "Rotation automatique du PDF"
3 = "Logique multi-fichiers (uniquement activée si vous travaillez avec plusieurs images)"
4 = "Fusionner en un seul PDF"
5 = "Convertir en PDF séparés"
[invite]
acceptError = "Échec de la création du compte"
accountFor = "Création du compte pour"
alreadyHaveAccount = "Vous avez déjà un compte ?"
choosePassword = "Choisissez un mot de passe"
confirmPassword = "Confirmez le mot de passe"
confirmPasswordPlaceholder = "Saisissez à nouveau votre mot de passe"
createAccount = "Créer le compte"
creating = "Création du compte..."
email = "Adresse e-mail"
emailPlaceholder = "Saisissez votre adresse e-mail"
emailRequired = "L’adresse e-mail est requise"
goToLogin = "Aller à la connexion"
invalidEmail = "Adresse e-mail invalide"
invalidInvitation = "Invitation invalide"
invalidToken = "Lien d’invitation invalide"
linkExpires = "Le lien expire"
passwordMismatch = "Les mots de passe ne correspondent pas"
passwordPlaceholder = "Saisissez votre mot de passe"
passwordRequired = "Le mot de passe est requis"
passwordTooShort = "Le mot de passe doit comporter au moins 6 caractères"
signIn = "Se connecter"
validating = "Validation de l’invitation..."
validationError = "Échec de la validation du lien d’invitation"
welcome = "Bienvenue sur Stirling PDF"
welcomeSubtitle = "Terminez la configuration de votre compte pour commencer"
welcomeTitle = "Vous avez été invité !"
[landing]
addFiles = "Ajouter des fichiers"
heroSubtitle = "Déposez ou ajoutez un PDF existant pour commencer."
heroTitle = "Stirling PDF"
mobileUpload = "Téléverser depuis un mobile"
openFromComputer = "Ouvrir depuis l’ordinateur"
uploadFromComputer = "Téléverser depuis l’ordinateur"
[language]
direction = "ltr"
[legal]
accessibility = "Accessibilité"
cookie = "Politique des Cookies"
iAgreeToThe = "J’accepte l’ensemble des"
impressum = "Mentions Légales"
privacy = "Politique de Confidentialité"
showCookieBanner = "Préférences pour les cookies"
terms = "Conditions Générales"
[licenses]
header = "Licences tierces"
license = "Licence"
module = "Module"
nav = "Licences"
title = "Licences tierces"
version = "Version"
[localMode]
toolUnavailable = "This tool requires an account. Sign in to Stirling Cloud or connect to a self-hosted server to use it."
[localMode.banner]
message = "Sign in to unlock all tools."
signIn = "Sign In"
title = "Running locally"
[localMode.toolPicker]
message = "Sign in to unlock all tools."
signIn = "Sign In"
[login]
accountCreatedSuccess = "Compte créé avec succès ! Vous pouvez maintenant vous connecter."
alreadyLoggedIn = "Vous êtes déjà connecté sur"
alreadyLoggedIn2 = "appareils. Veuillez vous déconnecter des appareils et réessayer."
backToSignIn = "Retour à la connexion"
cancel = "Annuler"
changePasswordWarning = "Veuillez changer votre mot de passe après votre première connexion"
credentialsUpdated = "Vos identifiants ont été mis à jour. Veuillez vous reconnecter."
debug = "Déboguer"
defaultCredentials = "Identifiants de connexion par défaut"
dontHaveAccount = "Vous n’avez pas de compte ? Inscrivez-vous"
email = "E-mail"
enterEmail = "Saisissez votre e-mail"
enterEmailForMagicLink = "Saisissez votre e-mail pour le lien magique"
enterMfaCode = "Saisir le code à 6 chiffres"
enterPassword = "Saisissez votre mot de passe"
enterUsername = "Saisissez le nom d’utilisateur"
failedToSignIn = "Échec de connexion avec {{provider}} : {{message}}"
forgotPassword = "Mot de passe oublié ?"
header = "Connexion"
home = "Accueil"
invalid = "Nom d'utilisateur ou mot de passe invalide."
locked = "Votre compte a été verrouillé."
loggingIn = "Connexion…"
logIn = "Se connecter"
login = "Se connecter"
logoutMessage = "Vous avez été déconnecté."
magicLinkSent = "Lien magique envoyé à {{email}} ! Consultez votre e-mail et cliquez sur le lien pour vous connecter."
maxUsersReached = "Nombre maximal d’utilisateurs atteint pour votre licence actuelle. Veuillez contacter l’administrateur pour mettre à niveau votre plan ou ajouter des places."
mfaCode = "Code d'authentification"
mfaPromptBody = "Saisissez le code d'authentification provenant de votre application d'authentification pour continuer."
mfaPromptTitle = "Authentification à deux facteurs"
mfaRequired = "Code à deux facteurs requis"
oauth2AccessDenied = "Accès refusé"
oAuth2AdminBlockedUser = "La création ou l'authentification d'utilisateurs non enregistrés est actuellement bloquée. Veuillez contacter l'administrateur."
oAuth2AutoCreateDisabled = "OAUTH2 Création automatique d'utilisateur désactivée"
oauth2InvalidIdToken = "Jeton d'identification invalide"
oauth2invalidRequest = "Requête invalide"
oauth2InvalidTokenResponse = "Réponse contenant le jeton est invalide"
oauth2InvalidUserInfoResponse = "Réponse contenant les informations de l'utilisateur est invalide"
oauth2RequestNotFound = "Demande d'autorisation introuvable"
oAuth2RequiresLicense = "La connexion OAuth/SSO nécessite une licence payante (Server ou Enterprise). Veuillez contacter l’administrateur pour mettre à niveau votre plan."
or = "Ou"
password = "Mot de passe"
passwordChangedSuccess = "Mot de passe modifié avec succès ! Veuillez vous connecter avec votre nouveau mot de passe."
passwordResetSent = "Lien de réinitialisation envoyé à {{email}} ! Consultez votre e-mail et suivez les instructions."
passwordUpdatedSuccess = "Your password has been updated successfully."
pleaseEnterBoth = "Veuillez saisir l’e-mail et le mot de passe"
pleaseEnterEmail = "Veuillez saisir votre adresse e-mail"
relyingPartyRegistrationNotFound = "Aucun enregistrement de partie de confiance trouvé"
rememberme = "Se souvenir de moi"
resetHelp = "Saisissez votre email pour recevoir un lien de réinitialisation de votre mot de passe. Si le lien a expiré, veuillez en demander un nouveau."
resetYourPassword = "Réinitialisation de mot de passe"
saml2RequiresLicense = "La connexion SAML nécessite une licence payante (Server ou Enterprise). Veuillez contacter l’administrateur pour mettre à niveau votre plan."
sending = "Envoi…"
sendMagicLink = "Envoyer le lien magique"
sendResetLink = "Envoyer le lien de réinitialisation"
sessionExpired = "Votre session a expiré. Veuillez vous reconnecter."
signin = "Connexion"
signInAnonymously = "S’inscrire en tant qu’invité"
signingIn = "Connexion en cours…"
signinTitle = "Veuillez vous connecter"
signInWith = "Se connecter avec"
signOut = "Se déconnecter"
ssoSignIn = "Se connecter via l'authentification unique"
subtitle = "Se reconnecter à Stirling PDF"
title = "Connexion"
toManySessions = "Vous avez trop de sessions actives."
unexpectedError = "Erreur inattendue : {{message}}"
updatePassword = "Mise à jour du mot de passe"
useEmailInstead = "Se connecter avec l’e‑mail"
useMagicLink = "Utiliser plutôt le lien magique"
userIsDisabled = "L'utilisateur est désactivé, la connexion est actuellement bloquée avec ce nom d'utilisateur. Veuillez contacter l'administrateur."
username = "Nom d’utilisateur"
verifyingMfa = "Vérification..."
verifyMfa = "Vérifier le code"
youAreLoggedIn = "Vous êtes connecté !"
[login.slides.edit]
alt = "Modifier des PDF"
subtitle = "Avec plus d’une douzaine d’outils pour caviarder, signer, lire et manipuler des PDF, vous trouverez forcément ce que vous cherchez."
title = "Modifiez des PDF pour afficher/sécuriser les informations que vous souhaitez"
[login.slides.overview]
alt = "Aperçu de Stirling PDF"
subtitle = "Une suite cloud axée sur la confidentialité pour les PDF, qui vous permet de convertir, signer, caviarder et gérer des documents, avec plus de 50 autres outils puissants."
title = "Votre solution tout-en-un pour tous vos besoins PDF."
[login.slides.secure]
alt = "Sécuriser des PDF"
subtitle = "Ajoutez des mots de passe, caviardez du contenu et gérez des certificats en toute simplicité."
title = "Protégez les informations sensibles de vos PDF"
[margin]
large = "Grande"
medium = "Moyenne"
small = "Petite"
xLarge = "Très grande"
[MarkdownToPDF]
credit = "Utilise WeasyPrint."
header = "Markdown en PDF"
help = "(Travail en cours)."
submit = "Convertir"
tags = "markdown,markup,contenu Web,transformation,convert"
title = "Markdown en PDF"
[merge]
goToFileEditor = "Aller à l'éditeur de fichiers"
submit = "Fusionner"
tags = "fusionner,opérations sur les pages,backend,server side,merge"
title = "Fusionner"
viewerModeHint = "La fusion nécessite 2 fichiers ou plus. Rendez-vous dans l'éditeur de fichiers pour les sélectionner."
[merge.error]
failed = "Une erreur est survenue lors de la fusion des PDF."
[merge.generateTableOfContents]
label = "Générer une table des matières dans le fichier fusionné ?"
[merge.generateTableOfContents.tooltip]
description = "Crée automatiquement une table des matières cliquable dans le PDF fusionné à partir des noms de fichiers d’origine et des numéros de page."
title = "Générer une table des matières"
[merge.removeDigitalSignature]
label = "Supprimer la signature numérique dans le fichier fusionné ?"
[merge.removeDigitalSignature.tooltip]
description = "Les signatures numériques seront invalidées lors de la fusion. Cochez ceci pour les supprimer du PDF final."
title = "Supprimer la signature numérique"
[merge.sortBy]
ascending = "Croissant"
dateModified = "Date de modification"
descending = "Décroissant"
description = "Les fichiers seront fusionnés dans l’ordre de sélection. Faites glisser pour réorganiser ou triez ci-dessous."
filename = "Nom du Fichier"
label = "Trier par"
sort = "Trier"
[merge.tooltip.header]
title = "Aperçu des paramètres de fusion"
[mobileScanner]
addToBatch = "Ajouter au lot"
back = "Retour"
batchImages = "Lot"
camera = "Appareil photo"
cameraAccessDenied = "Accès à la caméra refusé. Veuillez activer l’accès à la caméra."
cameraDescription = "Scanner des documents avec l’appareil photo de votre appareil avec détection automatique des bords"
capture = "Prendre la photo"
chooseMethod = "Choisir la méthode de téléversement"
chooseMethodDescription = "Sélectionnez comment vous souhaitez scanner et téléverser des documents"
clearBatch = "Effacer"
connected = "Connecté"
connecting = "Connexion..."
edgeDetection = "Détection des bords"
fileDescription = "Téléverser des photos ou documents existants depuis votre appareil"
fileUpload = "Téléversement de fichier"
flash = "Flash"
flashlight = "Lampe torche"
httpsRequired = "L’accès à la caméra nécessite HTTPS ou localhost. Veuillez utiliser HTTPS ou accéder via localhost."
noSession = "Session invalide"
noSessionMessage = "Veuillez scanner un QR code valide pour accéder à cette page."
preview = "Aperçu"
processing = "Traitement..."
retake = "Reprendre"
selectFilesPrompt = "Sélectionnez des fichiers à téléverser"
selectImage = "Sélectionner une image"
sessionExpired = "Cette session a expiré. Veuillez actualiser et réessayer."
sessionInvalid = "Erreur de session"
sessionNotFound = "Session introuvable. Veuillez actualiser et réessayer."
sessionValidationError = "Impossible de vérifier la session. Veuillez réessayer."
settings = "Paramètres"
title = "Scanner mobile"
upload = "Téléverser"
uploadAll = "Tout téléverser"
uploadFailed = "Échec du téléversement. Veuillez réessayer."
uploading = "Téléversement..."
uploadSuccess = "Téléversement réussi !"
uploadSuccessMessage = "Vos images ont été transférées."
validating = "Validation de la session..."
[mobileUpload]
connected = "Appareil mobile connecté"
description = "Scannez pour téléverser des photos. Les images se convertissent automatiquement en PDF."
descriptionNoConvert = "Scannez pour téléverser des photos depuis votre appareil mobile."
error = "Erreur de connexion"
expiryWarning = "Expiration de la session imminente"
expiryWarningMessage = "Ce QR code expirera dans {{seconds}} secondes. Un nouveau code sera généré automatiquement."
filesReceived = "{{count}} fichier(s) reçu(s)"
instructions = "Scannez avec l’appareil photo de votre téléphone. Les images sont automatiquement converties en PDF."
instructionsNoConvert = "Scannez avec l’appareil photo de votre téléphone pour téléverser des fichiers."
pollingError = "Erreur lors de la vérification des fichiers"
sessionCreateError = "Échec de création de session"
sessionId = "ID de session"
title = "Téléverser depuis un mobile"
[multiTool]
addFile = "Ajouter un fichier"
delete = "Supprimer"
deleteSelected = "Supprimer la sélection"
deselectAll = "Tout déselectionner"
downloadAll = "Exporter"
downloadSelected = "Exporter la sélection"
dragDropMessage = "Page(s) sélectionnées"
header = "Outil multifonction PDF"
insertPageBreak = "Insérer un saut de page"
moveLeft = "Déplacer vers la gauche"
moveRight = "Déplacer vers la droite"
page = "Page"
redo = "Redo"
rotateLeft = "Rotation vers la gauche"
rotateRight = "Rotation vers la droite"
selectAll = "Tout sélectionner"
selectedPages = "Pages sélectionnées"
selectPages = "Sélection des pages"
split = "Diviser"
tags = "outil multifonction,opération multifonction,interface utilisateur,glisser déposer,front-end,client side,interactif,intransigeant,déplacer,multi tool"
title = "Outil multifonction PDF"
undo = "Undo"
uploadPrompts = "Nom du fichier"
[multiTool-advert]
message = "Cette fonctionnalité est aussi disponible dans la page de l'outil multifonction. Allez-y pour une interface page par page améliorée et des fonctionnalités additionnelles !"
[navbar]
allTools = "Outils"
darkmode = "Mode sombre"
favorite = "Favoris"
language = "Langues"
multiTool = "Outils Multiples"
recent = "Nouveau et mise à jour"
search = "Rechercher"
settings = "Paramètres"
[navbar.sections]
advance = "Mode avancé"
convertFrom = "Convertir depuis PDF"
convertTo = "Convertir en PDF"
edit = "Voir et modifier"
organize = "Organisation"
popular = "Populaire"
security = "Signature et sécurité"
[oauth.error]
message = "L'authentification n'a pas abouti. Vous pouvez fermer cette fenêtre et réessayer."
title = "Échec de l'authentification"
[oauth.success]
message = "Vous pouvez fermer cette fenêtre et revenir à Stirling PDF."
title = "Authentification réussie"
[ocr]
credit = "Ce service utilise qpdf et Tesseract pour l'OCR."
desc = "Utilisez l'OCR pour analyser et détecter le texte des images d'un PDF et le rajouter en tant que tel."
header = "OCR (Reconnaissance optique de caractères) / Nettoyage des numérisations"
help = "Veuillez lire cette documentation pour savoir comment utiliser l'OCR pour d'autres langues ou une utilisation hors Docker :"
submit = "Traiter"
tags = "ocr,reconnaissance,texte,image,numérisation,scan,read,identify,detection,editable"
title = "OCR / Nettoyage des numérisations"
[ocr.error]
failed = "Échec de l’opération d’OCR"
[ocr.languagePicker]
additionalLanguages = "Vous cherchez d’autres langues ?"
viewSetupGuide = "Voir le guide d’installation →"
[ocr.operation]
submit = "Traiter l’OCR et relire"
[ocr.results]
title = "Résultats OCR"
[ocr.selectText]
1 = "Langues à détecter dans le PDF (celles listées sont celles actuellement détectées)"
10 = "Mode OCR"
11 = "Supprimer les images après l'OCR (Supprime TOUTES les images, utile uniquement si elles font partie de l'étape de conversion)"
12 = "Type de rendu (avancé)"
2 = "Produire un fichier texte contenant le texte détecté à côté du PDF"
3 = "Corriger les pages qui ont été numérisées à un angle oblique en les remettant en place"
4 = "Nettoyer la page afin qu'il soit moins probable que l'OCR trouve du texte dans le bruit de fond, sans modifier la sortie"
5 = "Nettoyer la page afin qu'il soit moins probable que l'OCR trouve du texte dans le bruit de fond, en modifiant la sortie"
6 = "Ignorer les pages contenant du texte interactif, n'analyser que les pages qui sont des images"
7 = "Forcer l'OCR, analyser chaque page et supprimer tous les éléments de texte d'origine"
8 = "Normal (génère une erreur si le PDF contient du texte)"
9 = "Paramètres additionnels"
[ocr.settings]
title = "Paramètres"
[ocr.settings.advancedOptions]
clean = "Nettoyer le fichier d’entrée"
cleanFinal = "Nettoyer la sortie finale"
deskew = "Redresser les pages"
label = "Options de traitement"
sidecar = "Créer un fichier texte"
[ocr.settings.compatibilityMode]
label = "Mode de compatibilité"
[ocr.settings.languages]
label = "Langues"
placeholder = "Sélectionner des langues"
[ocr.settings.ocrMode]
auto = "Auto (ignorer les calques de texte)"
force = "Forcer (re-OCR de tout, remplacer le texte)"
label = "Mode OCR"
strict = "Strict (abandonner si du texte est trouvé)"
[ocr.tooltip.advanced.clean]
text = "Prétraite l’entrée en supprimant le bruit, en améliorant le contraste et en optimisant l’image pour une meilleure reconnaissance OCR avant traitement."
title = "Nettoyer le fichier d’entrée"
[ocr.tooltip.advanced.cleanFinal]
text = "Post-traite le PDF final en supprimant les artefacts d’OCR et en optimisant le calque de texte pour une meilleure lisibilité et une taille de fichier plus petite."
title = "Nettoyer la sortie finale"
[ocr.tooltip.advanced.compatibility]
text = "Utilise le mode OCR « sandwich PDF » : produit des fichiers plus volumineux, mais plus fiables avec certaines langues et anciens logiciels PDF. Par défaut nous utilisons hOCR pour des PDF modernes plus légers."
title = "Mode de compatibilité"
[ocr.tooltip.advanced.deskew]
text = "Corrige automatiquement les pages inclinées pour améliorer la précision de l’OCR. Utile pour les documents scannés mal alignés."
title = "Redresser les pages"
[ocr.tooltip.advanced.header]
title = "Traitement OCR avancé"
[ocr.tooltip.advanced.sidecar]
text = "Génère un fichier .txt séparé à côté du PDF contenant tout le texte extrait pour un accès et un traitement facilités."
title = "Créer un fichier texte"
[ocr.tooltip.header]
title = "Aperçu des paramètres OCR"
[ocr.tooltip.languages]
text = "Améliorez la précision de l’OCR en spécifiant les langues attendues. Choisissez une ou plusieurs langues pour guider la détection."
title = "Langues"
[ocr.tooltip.mode]
bullet1 = "Auto ignore les pages contenant déjà des calques de texte."
bullet2 = "Forcer ré-exécute l’OCR sur chaque page et remplace tout le texte."
bullet3 = "Strict s’arrête si du texte sélectionnable est trouvé."
text = "La reconnaissance optique de caractères (OCR) vous aide à transformer des pages scannées ou capturées en texte que vous pouvez rechercher, copier ou surligner."
title = "Mode OCR"
[ocr.tooltip.output]
bullet1 = "Le PDF consultable intègre le texte derrière l’image d’origine."
bullet2 = "HOCR XML renvoie un fichier structuré lisible par machine."
bullet3 = "Le sidecar texte crée un fichier .txt séparé avec le contenu brut."
text = "Décidez du format de sortie du texte :"
title = "Sortie"
[onboarding]
activeFiles = "La vue Fichiers actifs affiche tous les PDF chargés dans l’outil et vous permet de choisir ceux à traiter."
allTools = "This is the All Tools panel, where you can browse and select from all available PDF tools."
cropSettings = "Maintenant que nous avons sélectionné le fichier que nous voulons rogner, nous pouvons configurer l’outil Rogner pour définir la zone de rognage du PDF."
fileCheckbox = "Cliquer sur l’un des fichiers le sélectionne pour le traitement. Vous pouvez en sélectionner plusieurs pour des opérations par lots."
fileReplacement = "Le fichier modifié remplacera automatiquement le fichier d’origine dans le Workbench, ce qui vous permettra de le faire passer facilement par d’autres outils."
filesButton = "Le bouton Fichiers de la barre d’accès rapide vous permet de téléverser des PDF à utiliser avec les outils."
fileSources = "Vous pouvez téléverser de nouveaux fichiers ou accéder à des fichiers récents depuis ici. Pour la visite, nous utiliserons un fichier d’exemple."
finish = "Terminer"
next = "Suivant"
pageEditor = "L’Éditeur de pages vous permet de réaliser diverses opérations sur les pages de vos PDF, comme réorganiser, faire pivoter et supprimer."
pinButton = "Vous pouvez utiliser le bouton Épingler si vous préférez que vos fichiers restent actifs après l’exécution des outils."
previous = "Précédent"
results = "Après l’exécution de l’outil, l’étape de Revue affichera un aperçu des résultats dans ce panneau et vous permettra d’annuler l’opération ou de télécharger le fichier."
runButton = "Une fois l’outil configuré, ce bouton vous permet d’exécuter l’outil sur tous les PDF sélectionnés."
selectControls = "Le volet droit contient des boutons pour sélectionner/désélectionner rapidement tous vos PDF actifs, ainsi que des boutons pour changer le thème ou la langue de l’application."
selectCropTool = "Sélectionnons l’outil Rogner pour montrer comment utiliser l’un des outils."
startTour = "Commencer la visite"
startTourDescription = "Suivez une visite guidée des fonctionnalités clés de Stirling PDF"
toolInterface = "Voici l’interface de l’outil Rogner. Comme vous pouvez le voir, il n’y a pas grand-chose pour l’instant car nous n’avons pas encore ajouté de fichiers PDF sur lesquels travailler."
viewer = "La Visionneuse vous permet de lire et d’annoter vos PDF."
viewSwitcher = "Utilisez ces commandes pour choisir comment afficher vos PDF."
workbench = "Voici le Workbench - la zone principale où vous visualisez et modifiez vos PDF."
wrapUp = "Tout est prêt ! Vous avez appris les principales zones de l’application et comment les utiliser. Cliquez sur le bouton Aide quand vous le souhaitez pour revoir cette visite."
[onboarding.buttons]
back = "Retour"
download = "Télécharger →"
next = "Suivant →"
showMeAround = "Faites-moi faire le tour"
skipForNow = "Passer pour l’instant"
skipTheTour = "Passer la visite"
[onboarding.desktopInstall]
body = "Stirling fonctionne mieux en application de bureau. Vous pouvez l’utiliser hors ligne, accéder plus rapidement aux documents et effectuer des modifications en local sur votre ordinateur."
title = "Télécharger"
titleWithOs = "Télécharger pour {{osLabel}}"
[onboarding.freeTrial]
afterTrialWithoutPayment = "À la fin de la période d'essai, vous basculerez en mode gratuit. Ajoutez une méthode de paiement pour garder l'accès Pro."
afterTrialWithPayment = "Votre abonnement Pro commencera immédiatement à la fin de la période d'essai."
body = "Vous avez accès à toutes les fonctionnalité Pro de Stirling PDF pendant la période d'essai. Profitez de conversion ilimitées, de tailles de fichier plus importantes et de la priorité des tâches."
daysRemaining = "{{days}} jours restants"
daysRemainingSingular = "{{days}} jour restant"
title = "Votre période d'essai Pro de 30 jours"
trialEnds = "La période d'essai fini le {{date}}"
[onboarding.planOverview]
adminBodyLoginDisabled = "Une fois le mode connexion activé, vous pourrez gérer les utilisateurs, configurer les paramètres et surveiller la santé du serveur. Les {{freeTierLimit}} premières personnes sur votre serveur utilisent Stirling gratuitement."
adminBodyLoginEnabled = "En tant qu’admin, vous pouvez gérer les utilisateurs, configurer les paramètres et surveiller la santé du serveur. Les {{freeTierLimit}} premières personnes sur votre serveur utilisent Stirling gratuitement."
adminTitle = "Aperçu admin"
userBody = "Invitez des coéquipiers, assignez des rôles et gardez vos documents organisés dans un espace de travail sécurisé. Activez le mode connexion quand vous êtes prêt à aller au‑delà d’un usage solo."
userTitle = "Aperçu du plan"
[onboarding.securityCheck]
message = "L’application a subi des changements importants récemment. L’attention de l’administrateur du serveur peut être requise. Veuillez confirmer votre rôle pour continuer."
[onboarding.serverLicense]
freeBody = "Notre licence Open-Core autorise jusqu’à {{freeTierLimit}} utilisateurs gratuits par serveur. Pour évoluer sans interruption et accéder en avant-première à notre nouvel outil d’édition de texte PDF, nous recommandons le plan Stirling Server — édition complète et places illimitées pour 99 $/serveur/mois."
freeTitle = "Licence serveur"
overLimitBody = "Notre licence autorise jusqu’à {{freeTierLimit}} utilisateurs gratuits par serveur. Vous avez {{overLimitUserCopy}} utilisateurs Stirling. Pour continuer sans interruption, passez au plan Stirling Server — places illimitées, édition de texte PDF et contrôle d’administration complet pour 99 $/serveur/mois."
overLimitTitle = "Licence serveur requise"
seePlans = "Voir les offres →"
skip = "Passer pour l’instant"
upgrade = "Mettre à niveau maintenant →"
[onboarding.tourOverview]
body = "Stirling PDF V2 est livré avec des dizaines d’outils et une interface renouvelée. Faites une visite rapide pour voir ce qui a changé et où trouver les fonctionnalités dont vous avez besoin."
title = "Aperçu de la visite"
[onboarding.welcomeModal]
description = "Souhaitez-vous suivre une visite guidée d’une minute pour découvrir les fonctionnalités clés et comment démarrer ?"
dontShowAgain = "Ne plus afficher"
helpHint = "Vous pouvez toujours accéder à cette visite plus tard via le bouton Aide en bas à gauche."
maybeLater = "Peut-être plus tard"
startTour = "Commencer la visite"
title = "Bienvenue dans Stirling PDF !"
[onboarding.welcomeSlide]
body = "Stirling PDF est désormais prêt pour des équipes de toutes tailles. Cette mise à jour inclut une nouvelle interface, de puissantes fonctionnalités d’administration et notre fonctionnalité la plus demandée — Modifier le texte."
title = "Bienvenue dans Stirling"
[onboarding.whatsNew]
activeFilesView = "Utilisez Fichiers actifs pour voir tout ce que vous avez ouvert et choisir sur quoi travailler."
fileUpload = "Utilisez le bouton Fichiers pour téléverser ou choisir un PDF récent. Nous chargerons un exemple pour vous montrer l’espace de travail."
leftPanel = "Le panneau Outils à gauche liste tout ce que vous pouvez faire. Parcourez les catégories ou recherchez pour trouver un outil rapidement."
pageEditorView = "Passez à l’Éditeur de pages pour réorganiser, pivoter ou supprimer des pages."
quickAccess = "Commencez par le rail Accès rapide pour passer entre Lecteur, Automatiser, vos fichiers et toutes les visites."
topBar = "La barre supérieure permet de basculer entre la Visionneuse, l’Éditeur de pages et les fichiers actifs."
wrapUp = "Voilà les nouveautés de la V2. Ouvrez le menu Visites guidées à tout moment pour rejouer ceci, le parcours des outils ou le parcours Admin."
[overlay-pdfs]
desc = "Superposer un PDF sur un autre"
header = "Incrustation de PDF"
submit = "Soumettre"
tags = "Overlay,incrustation"
title = "Superposer des PDF"
[overlay-pdfs.baseFile]
label = "Sélectionner le fichier PDF de base"
[overlay-pdfs.counts]
item = "Nombre pour le fichier"
label = "Nombre de superpositions (pour le mode de répétition fixe)"
noFiles = "Ajoutez des fichiers de superposition pour configurer les nombres"
placeholder = "Compteurs (séparés par des virgules, exemple : 2,3,1)"
[overlay-pdfs.error]
failed = "Une erreur s’est produite lors de la superposition des PDF."
[overlay-pdfs.mode]
fixedRepeat = "Superposition à répétition fixe"
interleaved = "Superposition entrelacée"
label = "Sélectionner le mode d'incrustation"
sequential = "Superposition séquentielle"
[overlay-pdfs.overlayFiles]
addMore = "Ajouter d’autres PDF…"
label = "Sélectionner les fichiers PDF à superposer"
placeholder = "Choisir un(des) PDF…"
[overlay-pdfs.position]
background = "Arrière-plan"
foreground = "Premier plan"
label = "Définir la position de l'incrustation"
[overlay-pdfs.results]
title = "Résultats de superposition"
[overlay-pdfs.settings]
title = "Paramètres"
[overlay-pdfs.tooltip.counts]
text = "Fournissez un nombre positif pour chaque fichier de superposition indiquant combien de pages prendre avant de passer au suivant. Obligatoire lorsque le mode est Répétition fixe."
title = "Nombres (Répétition fixe uniquement)"
[overlay-pdfs.tooltip.description]
text = "Combinez un PDF de base avec un ou plusieurs PDF de superposition. Les superpositions peuvent être appliquées page par page selon différents modes et placées au premier plan ou en arrière‑plan."
title = "Description"
[overlay-pdfs.tooltip.header]
title = "Aperçu de la superposition de PDF"
[overlay-pdfs.tooltip.mode]
fixedRepeat = "Superposition à répétition fixe : prenez un nombre défini de pages de chaque superposition avant de passer à la suivante. Utilisez Nombres pour définir les valeurs."
interleaved = "Superposition entrelacée : prenez une page de chaque superposition à tour de rôle."
sequential = "Superposition séquentielle : utilisez les pages du premier PDF de superposition jusqu’à la fin, puis passez au suivant."
text = "Choisissez comment répartir les pages de superposition sur les pages du PDF de base."
title = "Mode de superposition"
[overlay-pdfs.tooltip.overlayFiles]
text = "Sélectionnez un ou plusieurs PDF à superposer sur la base. L’ordre de ces fichiers influe sur l’application des pages en modes Séquentiel et Répétition fixe."
title = "Fichiers de superposition"
[overlay-pdfs.tooltip.position]
text = "Le premier plan place la superposition au-dessus de la page. L’arrière‑plan la place derrière."
title = "Position de superposition"
[pageEdit]
deselectAll = "Ne rien sélectionner"
selectAll = "Tout sélectionner"
[pageEditor]
actualSize = "Taille réelle"
addFileNotImplemented = "Ajout de fichier non implémenté dans la démo"
closePdf = "Fermer le PDF"
deleted = "Supprimé :"
fitToWidth = "Ajuster à la largeur"
insertedPageBreak = "Saut de page inséré à :"
movedLeft = "Déplacé à gauche :"
movedRight = "Déplacé à droite :"
noPdfLoaded = "Aucun PDF chargé. Veuillez téléverser un PDF à modifier."
reset = "Réinitialiser les modifications"
rotatedLeft = "Tourné à gauche :"
rotatedRight = "Tourné à droite :"
save = "Enregistrer les modifications"
splitAt = "Scindé à :"
title = "Éditeur de pages"
zoomIn = "Zoom avant"
zoomOut = "Zoom arrière"
[pageExtracter]
header = "Extraire des pages"
placeholder = "(par exemple : 1,2,8 ou 4,7,12-16 ou 2n-1)"
submit = "Extraire"
title = "Extraire des pages"
[pageLayout]
addBorder = "Ajouter des bordures"
borderWidth = "Épaisseur de la bordure"
bottom = "Marge inférieure"
cols = "Colonnes"
header = "Fusionner des pages"
innerMargin = "Marge intérieure"
left = "Marge gauche"
pagesPerSheet = "Pages par feuille"
right = "Marge droite"
rows = "Lignes"
submit = "Fusionner"
tags = "fusionner,merge,composite,single-view,organize"
title = "Fusionner des pages"
top = "Marge supérieure"
[pageLayout.advanced.tooltip.arrangement]
bullet1 = "Par lignes : Remplit chaque ligne en premier."
bullet2 = "Par colonnes : Remplit chaque colonne en premier."
text = "Détermine si les pages remplissent la grille ligne par ligne ou colonne par colonne."
title = "Agencement des pages"
[pageLayout.advanced.tooltip.header]
title = "Options avancées de mise en page"
[pageLayout.advanced.tooltip.orientation]
text = "Choisissez l'orientation finale de la feuille. Le mode portrait convient mieux au contenu vertical, tandis que le mode paysage s'adapte aux mises en page plus larges."
title = "Orientation"
[pageLayout.advanced.tooltip.readingDirection]
bullet1 = "LTR : Ordre de gauche à droite."
bullet2 = "RTL : Ordre de droite à gauche."
text = "Définit l'ordre horizontal dans la grille, utile selon les conventions de documents de gauche à droite ou de droite à gauche."
title = "Sens de lecture"
[pageLayout.arrangement]
byColumns = "Par colonnes"
byRows = "Par lignes"
label = "Agencement des pages :"
[pageLayout.desc]
16 = "Placer 16 pages sur une seule feuille (grille 4 × 4)."
2 = "Placer 2 pages côte à côte sur une seule feuille."
4 = "Placer 4 pages sur une seule feuille (grille 2 × 2)."
9 = "Placer 9 pages sur une seule feuille (grille 3 × 3)."
[pageLayout.error]
failed = "Une erreur s’est produite lors de la création de la mise en page multi‑pages."
innerMarginTooLarge = "La marge intérieure est trop grande pour la mise en page sélectionnée."
outerHorizontalMarginsTooLarge = "Les marges gauche/droite sont trop grandes pour ce format de page."
outerVerticalMarginsTooLarge = "Les marges supérieure/inférieure sont trop grandes pour ce format de page."
[pageLayout.marginsBorders.tooltip.borders]
text = "Activez les bordures pour tracer des lignes autour de chaque page placée. Cela peut aider à la séparation visuelle ou à la découpe."
title = "Ajouter des bordures"
[pageLayout.marginsBorders.tooltip.borderWidth]
text = "L'épaisseur de la bordure n'est appliquée que lorsque les bordures sont activées. Des valeurs plus élevées produisent des lignes plus épaisses."
title = "Épaisseur de la bordure"
[pageLayout.marginsBorders.tooltip.header]
title = "Marges et bordures"
[pageLayout.marginsBorders.tooltip.innerMargin]
text = "La marge intérieure ajoute un espacement entre les cellules de la grille de pages afin d'améliorer la séparation et la lisibilité."
title = "Marge intérieure"
[pageLayout.marginsBorders.tooltip.margins]
text = "Utilisez les marges supérieure, inférieure, gauche et droite pour contrôler l'espacement autour de l'ensemble de la feuille de sortie."
title = "Marges"
[pageLayout.mode]
custom = "Personnalisé"
default = "Par défaut"
label = "Mode :"
[pageLayout.orientation]
label = "Orientation :"
landscape = "Paysage"
portrait = "Portrait"
[pageLayout.readingDirection]
label = "Sens de lecture :"
ltr = "De gauche à droite"
rtl = "De droite à gauche"
[pageLayout.tooltip.addBorder]
text = "Trace des lignes de bordure autour de chaque cellule de page pour servir de repères de découpe ou de séparation visuelle."
title = "Ajouter des bordures"
[pageLayout.tooltip.arrangement]
bullet1 = "Par lignes : Remplit ligne par ligne (de gauche à droite ou de droite à gauche)."
bullet2 = "Par colonnes : Remplit de haut en bas, colonne par colonne."
text = "Contrôle l'ordre dans lequel les pages remplissent la grille :"
title = "Agencement des pages"
[pageLayout.tooltip.header]
title = "Guide de mise en page"
[pageLayout.tooltip.mode]
bullet1 = "Par défaut : Choisissez un préréglage et la grille est calculée automatiquement."
bullet2 = "Personnalisé : Définissez manuellement les lignes et les colonnes."
text = "Choisissez la configuration de la grille :"
title = "Mode"
[pageLayout.tooltip.orientation]
bullet1 = "Portrait : Plus haut que large."
bullet2 = "Paysage : Plus large que haut."
text = "Définit l'orientation de la feuille de sortie :"
title = "Orientation"
[pageLayout.tooltip.overview]
text = "Ajustez plusieurs pages sur une seule feuille pour des documents à distribuer ou pour économiser du papier."
title = "Qu'est-ce que la mise en page ?"
[pageLayout.tooltip.pagesPerSheet]
text = "Choisissez le nombre de pages par feuille (p. ex. 4 → 2×2, 9 → 3×3)."
title = "Pages par feuille (mode par défaut)"
[pageLayout.tooltip.readingDirection]
bullet1 = "LTR : De gauche à droite."
bullet2 = "RTL : De droite à gauche."
text = "Contrôle l'ordre horizontal des pages :"
title = "Sens de lecture"
[pageLayout.tooltip.rowsCols]
text = "Définissez les dimensions exactes de la grille. Nombre total de pages par feuille = lignes × colonnes."
title = "Lignes et colonnes (mode personnalisé)"
[pageRemover]
header = "Supprimer des pages"
pagesToDelete = "Pages à supprimer (entrez une liste de numéros de pages séparés par des virgules) :"
placeholder = "(par exemple 1,2,6 ou 1-10,15-30)"
submit = "Supprimer les pages"
title = "Supprimer des pages"
[pageSelection.tooltip]
description = "Choisissez les pages à utiliser pour l’opération. Prend en charge les pages simples, les plages, les formules et le mot-clé all."
[pageSelection.tooltip.advanced]
title = "Fonctionnalités avancées"
[pageSelection.tooltip.basic]
bullet1 = "Pages individuelles : 1,3,5"
bullet2 = "Plages de pages : 3-6 ou 10-15"
bullet3 = "Toutes les pages : all"
text = "Sélectionnez des pages spécifiques de votre PDF à l’aide d’une syntaxe simple."
title = "Utilisation de base"
[pageSelection.tooltip.complex]
bullet1 = "1,3-5,8,2n → pages 1, 3–5, 8, plus les paires"
bullet2 = "10-,2n-1 → de la page 10 à la fin + pages impaires"
description = "Mélanger différents types."
title = "Combinaisons complexes"
[pageSelection.tooltip.examples]
title = "Exemples"
[pageSelection.tooltip.header]
title = "Guide de sélection des pages"
[pageSelection.tooltip.individual]
bullet1 = "1,3,5 → sélectionne les pages 1, 3, 5"
bullet2 = "2,7,12 → sélectionne les pages 2, 7, 12"
description = "Entrez des nombres séparés par des virgules."
title = "Pages individuelles"
[pageSelection.tooltip.mathematical]
bullet1 = "2n → toutes les pages paires (2, 4, 6…)"
bullet2 = "2n-1 → toutes les pages impaires (1, 3, 5…)"
bullet3 = "3n → chaque 3e page (3, 6, 9…)"
bullet4 = "4n-1 → pages 3, 7, 11, 15…"
description = "Utilisez n dans des formules pour définir des motifs."
title = "Fonctions mathématiques"
[pageSelection.tooltip.operators]
and = "ET : & ou « and » — exige les deux conditions (p. ex. : 1-50 & even)"
comma = "Virgule : , ou | — combine les sélections (p. ex. : 1-10, 20)"
not = "NON : ! ou « not » — exclut des pages (p. ex. : 3n & not 30)"
text = "ET a une priorité plus élevée que la virgule. NON s’applique dans l’intervalle du document."
title = "Opérateurs"
[pageSelection.tooltip.ranges]
bullet1 = "3-6 → sélectionne les pages 3–6"
bullet2 = "10-15 → sélectionne les pages 10–15"
bullet3 = "5- → sélectionne les pages de 5 à la fin"
description = "Utilisez - pour des pages consécutives."
title = "Plages de pages"
[pageSelection.tooltip.special]
bullet1 = "all → sélectionne toutes les pages"
title = "Mots-clés spéciaux"
[pageSelection.tooltip.syntax]
text = "Utilisez des nombres, des plages, des mots-clés et des progressions (n commence à 0). Les parenthèses sont prises en charge."
title = "Principes de base de la syntaxe"
[pageSelection.tooltip.syntax.bullets]
keywords = "Mots-clés : odd, even"
numbers = "Nombres/plages : 5, 10-20"
progressions = "Progressions : 3n, 4n+1"
[pageSelection.tooltip.tips]
bullet1 = "Les numéros de page commencent à 1 (pas 0)"
bullet2 = "Les espaces sont automatiquement supprimés"
bullet3 = "Les expressions invalides sont ignorées"
text = "Gardez ces consignes à l’esprit :"
title = "Conseils"
[payment]
autoClose = "Cette fenêtre se fermera automatiquement..."
billingPeriod = "Période de facturation"
canCloseWindow = "Vous pouvez maintenant fermer cette fenêtre."
checkoutInstructions = "Finalisez votre achat dans la fenêtre de navigateur qui vient de s’ouvrir. Après le paiement, revenez ici et cliquez sur le bouton ci-dessous pour actualiser vos informations de facturation."
checkoutOpened = "Paiement ouvert dans le navigateur"
closeLater = "Je le ferai plus tard"
emailInvalid = "Veuillez saisir une adresse e‑mail valide"
enterpriseNote = "Les places peuvent être ajustées au paiement (1–1000)."
error = "Erreur de paiement"
generatingLicense = "Génération de votre clé de licence…"
installationId = "ID d’installation"
licenseActivated = "Licence activée ! Votre clé de licence a été enregistrée. Un e‑mail de confirmation a été envoyé à l’adresse enregistrée."
licenseDelayed = "Paiement réussi ! Votre licence est en cours de génération. Vous recevrez bientôt un e‑mail avec votre clé de licence. Si vous ne la recevez pas sous 10 minutes, veuillez contacter le support."
licenseDelayedMessage = "Votre clé de licence est en cours de génération. Veuillez consulter votre e‑mail prochainement ou contacter le support."
licenseInstructions = "Ceci a été ajouté à votre installation. Vous en recevrez aussi une copie par e‑mail."
licenseKey = "Votre clé de licence"
licenseKeyProcessing = "Traitement de la clé de licence"
licensePollingError = "Paiement réussi mais nous n’avons pas pu récupérer votre clé de licence automatiquement. Veuillez vérifier votre e‑mail ou contacter le support avec votre confirmation de paiement."
licenseRetrievalError = "Paiement réussi mais l’obtention de la licence a échoué. Vous recevrez votre clé de licence par e‑mail. Veuillez contacter le support si vous ne la recevez pas sous 10 minutes."
licenseSaveError = "Échec de l’enregistrement de la clé de licence. Veuillez contacter le support avec votre clé pour finaliser l’activation."
monthly = "Mensuel"
paymentCanceled = "Le paiement a été annulé. Aucun débit effectué."
paymentSuccess = "Paiement réussi ! Récupération de votre clé de licence…"
perMonth = "/mois"
perYear = "/an"
preparing = "Préparation de votre paiement..."
redirecting = "Redirection vers le paiement sécurisé..."
refreshBilling = "J’ai effectué le paiement - Actualiser la facturation"
stripeNotConfigured = "Stripe non configuré"
stripeNotConfiguredMessage = "L’intégration de paiement Stripe n’est pas configurée. Veuillez contacter votre administrateur."
success = "Paiement réussi !"
successMessage = "Votre abonnement a été activé avec succès. Vous recevrez un e-mail de confirmation sous peu."
syncError = "Paiement réussi mais la synchronisation de la licence a échoué. Votre licence sera mise à jour sous peu. Veuillez contacter le support si le problème persiste."
syncingLicense = "Synchronisation de votre licence mise à niveau…"
upgradeComplete = "Mise à niveau terminée"
upgradeCompleteMessage = "Votre abonnement a été mis à niveau avec succès. Votre clé de licence existante a été mise à jour."
upgradeSuccess = "Paiement réussi ! Votre abonnement a été mis à niveau. La licence a été mise à jour sur votre serveur. Vous recevrez bientôt un e‑mail de confirmation."
upgradeTitle = "Mettre à niveau vers {{planName}}"
yearly = "Annuel"
[payment.emailStage]
continue = "Continuer"
description = "Nous l’utiliserons pour vous envoyer votre clé de licence et vos reçus."
emailLabel = "Adresse e‑mail"
emailPlaceholder = "votre@email.com"
modalTitle = "Commencer — {{planName}}"
title = "Entrez votre e‑mail"
[payment.paymentStage]
backToPlan = "Retour à la sélection du plan"
modalTitle = "Finaliser le paiement — {{planName}}"
selectedPlan = "Plan sélectionné"
[payment.planStage]
basePrice = "Prix de base"
billedYearly = "Facturé annuellement {{currency}}{{amount}}"
modalTitle = "Sélectionner la période de facturation — {{planName}}"
savePercent = "Économisez {{percent}} %"
savingsAmount = "Vous économisez {{amount}}"
savingsNote = "Économisez {{percent}} % avec la facturation annuelle"
seatPrice = "Par place"
selectMonthly = "Choisir Mensuel"
selectYearly = "Choisir Annuel"
title = "Choisissez votre période de facturation"
totalForSeats = "Total ({{count}} places)"
[pdfCommentAgent]
submit = "Générer les commentaires"
[pdfCommentAgent.error]
emptyPrompt = "Veuillez décrire sur quoi l’IA doit commenter"
failed = "Échec de la génération des commentaires"
tooLong = "La consigne est trop longue (maximum {{max}} caractères)"
[pdfCommentAgent.prompt]
label = "Sur quoi l’IA doit-elle commenter ?"
placeholder = "ex. Signaler toute date ambiguë et proposer des clarifications"
[pdfCommentAgent.results]
title = "PDF commenté"
[pdfCommentAgent.settings]
title = "Consignes de commentaire"
[pdfOrganiser]
header = "Organiser les pages"
placeholder = "(par exemple 1,3,2 ou 4-8,2,10-12 ou 2n-1)"
submit = "Organiser"
tags = "organiser,recto-verso,duplex,even,odd,sort,move"
title = "Organiser"
[pdfOrganiser.desc]
BOOKLET_SORT = "Arranger les pages pour l’impression en livret (dernière, première, deuxième, avant-dernière, …)."
CUSTOM = "Utiliser une séquence personnalisée de numéros de page ou d’expressions pour définir un nouvel ordre."
DUPLEX_SORT = "Entrelacer faces avant puis faces arrière comme si un scanner duplex avait scanné toutes les faces avant, puis toutes les faces arrière (1, n, 2, n-1, …)."
DUPLICATE = "Dupliquer chaque page en fonction du nombre indiqué dans l’ordre personnalisé (p. ex., 4 duplique chaque page 4×)."
ODD_EVEN_MERGE = "Fusionner deux PDF en alternant les pages : impaires du premier, paires du second."
ODD_EVEN_SPLIT = "Scinder le document en deux sorties : toutes les pages impaires et toutes les pages paires."
REMOVE_FIRST = "Supprimer la première page du document."
REMOVE_FIRST_AND_LAST = "Supprimer la première et la dernière pages du document."
REMOVE_LAST = "Supprimer la dernière page du document."
REVERSE_ORDER = "Inverser le document afin que la dernière page devienne la première, et ainsi de suite."
SIDE_STITCH_BOOKLET_SORT = "Arranger les pages pour l’impression de livret à piqûre latérale (optimisé pour une reliure sur le côté)."
[pdfOrganiser.mode]
1 = "Ordre des pages personnalisé"
10 = "Fusionner Impair-Pair"
11 = "Dupliquer toutes les pages"
2 = "Ordre inverse"
3 = "Tri recto verso"
4 = "Tri des livrets"
5 = "Tri de livrets à points latéraux"
6 = "Partage impair-pair"
7 = "Supprimer le premier"
8 = "Supprimer le dernier"
9 = "Supprimer le premier et le dernier"
_value = "Mode"
[pdfOrganiser.mode.desc]
BOOKLET_SORT = "Organiser les pages pour l’impression en livret (dernière, première, deuxième, avant-dernière, …)."
CUSTOM = "Utiliser une séquence personnalisée de numéros de page ou d’expressions pour définir un nouvel ordre."
DUPLEX_SORT = "Entrelacer rectos puis versos comme si un scanner recto verso avait numérisé tous les rectos, puis tous les versos (1, n, 2, n-1, …)."
DUPLICATE = "Dupliquer chaque page selon le nombre défini dans l’ordre personnalisé (par ex. 4 duplique chaque page 4×)."
ODD_EVEN_MERGE = "Fusionner deux PDF en alternant les pages : impaires du premier, paires du second."
ODD_EVEN_SPLIT = "Diviser le document en deux sorties : toutes les pages impaires et toutes les pages paires."
REMOVE_FIRST = "Supprimer la première page du document."
REMOVE_FIRST_AND_LAST = "Supprimer la première et la dernière page du document."
REMOVE_LAST = "Supprimer la dernière page du document."
REVERSE_ORDER = "Inverser l’ordre du document pour que la dernière page devienne la première, et ainsi de suite."
SIDE_STITCH_BOOKLET_SORT = "Organiser les pages pour l’impression en livret agrafé sur le côté (optimisé pour une reliure latérale)."
[pdfTextEditor]
conversionFailed = "Échec de la conversion du PDF. Veuillez réessayer."
converting = "Conversion du PDF en format modifiable..."
currentFile = "Fichier actuel : {{name}}"
imageLabel = "Image placée"
noTextOnPage = "Aucun texte modifiable n'a été détecté sur cette page."
pagePreviewAlt = "Aperçu de la page"
pageSummary = "Page {{number}} sur {{total}}"
title = "Éditeur JSON de PDF"
viewLabel = "Éditeur PDF"
[pdfTextEditor.actions]
applyChanges = "Appliquer les modifications"
downloadCopy = "Télécharger une copie"
downloadJson = "Télécharger le JSON"
generatePdf = "Générer le PDF"
reset = "Réinitialiser les modifications"
saveChanges = "Enregistrer les modifications"
[pdfTextEditor.badges]
earlyAccess = "Accès anticipé"
modified = "Modifié"
unsaved = "Modifié"
[pdfTextEditor.disclaimer]
alpha = "Ce visualiseur alpha évolue encore — certaines polices, couleurs, effets de transparence et détails de mise en page peuvent légèrement varier. Veuillez vérifier le PDF généré avant de le partager."
heading = "Limites de l'aperçu"
previewVariance = "Certains éléments visuels (tels que les bordures de tableaux, formes ou apparences d'annotations) peuvent ne pas s'afficher exactement dans l'aperçu. Le PDF exporté conserve les commandes de dessin originales lorsque c'est possible."
textFocus = "Cet espace de travail se concentre sur l'édition du texte et le repositionnement des images intégrées. Les éléments graphiques complexes, widgets de formulaires et couches sont conservés pour l'export, mais ne sont pas entièrement modifiables ici."
[pdfTextEditor.empty]
dropzone = "Glissez-déposez un fichier PDF ou JSON ici, ou cliquez pour parcourir"
dropzoneWithFiles = "Sélectionnez un fichier depuis l'onglet Fichiers, ou glissez-déposez un fichier PDF ou JSON ici, ou cliquez pour parcourir"
subtitle = "Chargez un fichier PDF ou JSON pour commencer à modifier le texte."
title = "Aucun document chargé"
[pdfTextEditor.errors]
invalidJson = "Impossible de lire le fichier JSON. Assurez-vous qu'il a été généré par l'outil PDF vers JSON."
pdfConversion = "Impossible de convertir le JSON modifié en PDF."
[pdfTextEditor.fontAnalysis]
allFonts = "Toutes les polices"
currentPageFonts = "Polices sur cette page"
details = "Détails de la police"
embedded = "Intégrée"
fallback = "remplacement"
infoMessage = "Informations sur la reproduction des polices disponibles."
missing = "manquante"
perfect = "parfait"
perfectMessage = "Toutes les polices peuvent être reproduites parfaitement."
subset = "sous-ensemble"
suggestions = "Notes"
type = "Type"
warningMessage = "Certaines polices peuvent ne pas s'afficher correctement."
warnings = "Avertissements"
webFormat = "Format Web"
[pdfTextEditor.groupingMode]
auto = "Auto"
paragraph = "Paragraphe"
singleLine = "Ligne unique"
[pdfTextEditor.manual]
expandWidth = "Étendre jusqu'au bord de la page"
merge = "Fusionner la sélection"
mergeTooltip = "Fusionner les boîtes sélectionnées"
resetWidth = "Réinitialiser la largeur"
resizeHandle = "Ajuster la largeur du texte"
ungroup = "Dissocier la sélection"
ungroupTooltip = "Scinder le paragraphe en lignes"
widthMenu = "Options de largeur"
[pdfTextEditor.modeChange]
cancel = "Annuler"
confirm = "Réinitialiser et changer de mode"
title = "Confirmer le changement de mode"
warning = "Changer le mode de regroupement du texte réinitialisera toutes les modifications non enregistrées. Voulez-vous vraiment continuer ?"
[pdfTextEditor.options.advanced]
title = "Paramètres avancés"
[pdfTextEditor.options.autoScaleText]
description = "Ajuste automatiquement le texte horizontalement pour tenir dans sa boîte englobante d'origine lorsque le rendu de police diffère du PDF."
title = "Ajuster automatiquement le texte aux cadres"
[pdfTextEditor.options.forceSingleElement]
description = "Lorsqu'il est activé, l'éditeur exporte chaque boîte de texte modifiée comme un seul élément de texte PDF afin d'éviter le chevauchement de glyphes ou les polices mixtes."
title = "Verrouiller le texte modifié à un seul élément PDF"
[pdfTextEditor.options.groupingMode]
autoDescription = "Détecte automatiquement le type de page et regroupe le texte en conséquence."
paragraphDescription = "Regroupe les lignes alignées en boîtes de texte multiligne."
singleLineDescription = "Conserve chaque ligne de texte du PDF comme une boîte distincte."
title = "Mode de regroupement du texte"
[pdfTextEditor.options.manualGrouping]
descriptionInline = "Astuce : Maintenez Ctrl (Cmd) ou Shift pour sélectionner plusieurs boîtes de texte. Une barre d'outils flottante apparaîtra au-dessus de la sélection pour fusionner, dissocier ou ajuster les largeurs."
[pdfTextEditor.pageType]
paragraph = "Page de paragraphe"
sparse = "Texte clairsemé"
[pdfTextEditor.tooltip.alpha]
text = "Cette visionneuse alpha évolue encore—certaines polices, couleurs, effets de transparence et détails de mise en page peuvent légèrement varier. Veuillez vérifier le PDF généré avant de le partager."
title = "Visionneuse Alpha"
[pdfTextEditor.tooltip.header]
title = "Limitations de l’aperçu"
[pdfTextEditor.tooltip.previewVariance]
text = "Certains éléments visuels (tels que bordures de tableau, formes ou apparence des annotations) peuvent ne pas s’afficher exactement dans l’aperçu. Le PDF exporté conserve les commandes de dessin originales lorsque c’est possible."
title = "Variations de l’aperçu"
[pdfTextEditor.tooltip.textFocus]
text = "Cet espace de travail se concentre sur l’édition du texte et le repositionnement des images intégrées. Les illustrations complexes de page, widgets de formulaire et graphismes en couches sont préservés pour l’export mais ne sont pas entièrement modifiables ici."
title = "Focus texte et image"
[pdfTextEditor.welcomeBanner]
bestFor = "Fonctionne mieux avec :"
bestFor1 = "PDF simples contenant principalement du texte et des images"
bestFor2 = "Documents avec une mise en forme de paragraphe standard"
bestFor3 = "Lettres, essais, rapports et documents simples"
dontShowAgain = "Ne plus afficher"
experimental = "Fonctionnalité expérimentale en développement actif. Attendez-vous à une certaine instabilité et à des problèmes à l'usage."
feedback = "Fonction en accès anticipé. Merci de signaler tout problème rencontré pour nous aider à l'améliorer !"
gotIt = "Compris"
howItWorks = "Cet outil convertit votre PDF en un format modifiable où vous pouvez modifier le texte et repositionner des images. Les changements sont enregistrés dans un nouveau PDF."
issue1 = "La couleur du texte n'est pas encore conservée (sera ajoutée bientôt)"
issue2 = "Le mode Paragraphe présente plus de problèmes d'alignement et d'espacement - mode Ligne unique recommandé"
issue3 = "L'aperçu diffère du PDF exporté - les PDF exportés sont plus proches de l'original"
issue4 = "L'alignement du texte pivoté peut nécessiter un ajustement manuel"
issue5 = "Les effets de transparence et de superposition peuvent varier par rapport à l'original"
knownIssues = "Problèmes connus (en cours de correction) :"
limitation1 = "Le rendu des polices peut différer légèrement du PDF original"
limitation2 = "Les graphiques complexes, champs de formulaire et annotations sont conservés mais non modifiables"
limitation3 = "Les fichiers volumineux peuvent prendre du temps à convertir et à traiter"
limitations = "Limitations actuelles :"
notIdealFor = "Peu adapté à :"
notIdealFor1 = "PDF avec des mises en forme spéciales comme des puces, des tableaux ou des mises en page multicolonnes"
notIdealFor2 = "Magazines, brochures ou documents très graphiques"
notIdealFor3 = "Manuels d'instructions aux mises en page complexes"
title = "Bienvenue dans l'éditeur de texte PDF (accès anticipé)"
[PDFToCSV]
header = "PDF en CSV"
prompt = "Choisir la page pour en extraire le tableau"
submit = "Extrait"
title = "PDF en CSV"
[PDFToHTML]
credit = "Ce service utilise pdftohtml pour la conversion de fichiers."
header = "PDF en HTML"
submit = "Convertir"
tags = "html,web content,browser friendly"
title = "PDF en HTML"
[pdfToImage]
blackwhite = "Noir et blanc (peut engendrer une perte de données !)"
color = "Couleur"
colorType = "Type d'impression"
grey = "Niveaux de gris"
header = "PDF en Image"
info = "Python n’est pas installé. Nécessaire pour la conversion WebP."
multi = "Plusieurs images"
placeholder = "(par exemple : 1,2,8 ou 4,7,12-16 ou 2n-1)"
selectText = "Format d'image"
single = "Une seule grande image"
singleOrMultiple = "Type de résultat"
submit = "Convertir"
tags = "conversion,img,jpg,image,photo"
title = "PDF en Image"
[PDFToMarkdown]
header = "PDF en Markdown"
submit = "Convertir"
tags = "markdown,markup,contenu Web,transformation,convert"
title = "PDF en Markdown"
[pdfToPDFA]
credit = "Ce service utilise libreoffice pour la conversion en PDF/A."
header = "PDF en PDF/A"
outputFormat = "Format de sortie"
pdfWithDigitalSignature = "Le PDF contient une signature numérique. Elle sera supprimée dans l'étape suivante."
submit = "Convertir"
tags = "convertion,archive,long-term,standard,conversion,storage,préservation,preservation"
tip = "Ne fonctionne actuellement pas pour plusieurs entrées à la fois"
title = "PDF en PDF/A"
[pdfToPDFX]
credit = "Ce service utilise Ghostscript pour la conversion PDF/X"
header = "PDF vers PDF/X"
outputFormat = "Format de sortie"
pdfWithDigitalSignature = "Le PDF contient une signature numérique. Elle sera supprimée à l'étape suivante."
submit = "Convertir"
tags = "impression,standard,conversion,production,prépresse,archive"
tip = "Ne fonctionne actuellement pas avec plusieurs entrées à la fois"
title = "PDF vers PDF/X"
[PDFToPresentation]
credit = "Ce service utilise LibreOffice pour la conversion de fichiers."
header = "PDF en formats de présentation"
submit = "Convertir"
tags = "présentation,slides,show,office,microsoft"
title = "PDF en formats de présentation"
[PDFToPresentation.selectText]
1 = "Format du fichier de sortie"
[PdfToSinglePage]
tags = "fusionner,merge,une seule page,single page"
[pdfToSinglePage]
description = "Cet outil fusionnera toutes les pages de votre PDF en une seule grande page. La largeur restera identique à celle des pages d’origine, mais la hauteur sera la somme de toutes les hauteurs de page."
filenamePrefix = "page_unique"
header = "Fusionner les pages"
submit = "Convertir en une seule page"
title = "Fusionner les pages"
[pdfToSinglePage.error]
failed = "Une erreur est survenue lors de la conversion en page unique."
[pdfToSinglePage.files]
placeholder = "Sélectionnez un fichier PDF dans la vue principale pour commencer"
[pdfToSinglePage.results]
title = "Résultats page unique"
[PDFToText]
credit = "Ce service utilise LibreOffice pour la conversion de fichiers."
header = "PDF en RTF (texte)"
submit = "Convertir"
tags = "format riche, format de texte riche, format de texte enrichi"
title = "PDF en RTF (texte)"
[PDFToText.selectText]
1 = "Format du fichier de sortie"
[PDFToWord]
credit = "Ce service utilise LibreOffice pour la conversion de fichiers."
header = "PDF en Word"
submit = "Convertir"
tags = "doc, docx, odt, word, transformation, format, conversion, office, microsoft, docfile"
title = "PDF en Word"
[PDFToWord.selectText]
1 = "Format du fichier de sortie"
[PDFToXLSX]
header = "PDF vers Excel"
prompt = "Choisissez les pages pour extraire les tableaux"
submit = "Convertir"
tags = "feuille de calcul,excel,xlsx,tableau,extraire,convertir"
title = "PDF vers Excel (XLSX)"
[PDFToXML]
credit = "Ce service utilise LibreOffice pour la conversion de fichiers."
header = "PDF en XML"
submit = "Convertir"
tags = "xml,extraction de données,contenu structuré,interopérabilité,data-extraction,structured-content,interop,transformation,convert"
title = "PDF en XML"
[permissions]
header = "Modifier les permissions"
submit = "Modifier"
tags = "permissions,lire,écrire,modifier,imprimer,read,write,edit,print"
title = "Modifier les permissions"
warning = "Attention, pour que ces permissions soient immuables il est recommandé de les paramétrer avec un mot de passe via la page Ajouter un mot de passe."
[permissions.selectText]
1 = "Sélectionnez le PDF"
10 = "Empêcher l'impression des différents formats"
2 = "Permissions à définir"
3 = "Empêcher l'assemblage du document"
4 = "Empêcher l'extraction de contenu"
5 = "Empêcher l'extraction pour l'accessibilité"
6 = "Empêcher de remplir les formulaires"
7 = "Empêcher la modification"
8 = "Empêcher la modification des annotations"
9 = "Empêcher l'impression"
[pipeline]
configureButton = "Configurer"
defaultOption = "Personnaliser"
deletePrompt = "Êtes-vous sûr de vouloir supprimer le pipeline ?"
header = "Menu Pipeline (Beta)"
help = "Aide Pipeline"
scanHelp = "Aide analyse de dossier"
submitButton = "Soumettre"
tags = "automatiser,séquencer,automate,sequence,scripted,batch-process"
title = "Pipeline"
uploadButton = "Charger une personnalisation"
[pipelineOptions]
addOperationButton = "Ajouter une opération"
header = "Configuration du pipeline"
pipelineHeader = "Pipeline :"
pipelineNameLabel = "Nom du pipeline"
pipelineNamePrompt = "Entrez ici le nom du pipeline"
saveButton = "Télécharger"
saveForFolderScanning = "Enregistrer pour l'analyse de dossier"
saveSettings = "Sauvegarder la configuration"
selectOperation = "Sélectionner une opération"
validateButton = "Valider"
[plan]
contact = "Contactez-nous"
currency = "Devise"
current = "Forfait actuel"
customPricing = "Personnalisé"
featureComparison = "Comparaison des fonctionnalités"
from = "À partir de"
hideComparison = "Masquer la comparaison des fonctionnalités"
included = "Inclus"
includedInCurrent = "Inclus dans votre plan"
licensedSeats = "Licences : {{count}} places"
manage = "Gérer"
perMonth = "/mois"
perSeat = "/place"
popular = "Populaire"
purchase = "Purchase"
selectCredits = "Select Credit Amount"
selectPlan = "Choisir un plan"
showComparison = "Comparer toutes les fonctionnalités"
totalCost = "Total Cost"
upgrade = "Mettre à niveau"
withServer = "+ Plan Server"
[plan.activePlan]
subtitle = "Détails de votre abonnement actuel"
title = "Forfait actif"
[plan.api]
large = "5,000 Credits"
medium = "1,000 Credits"
small = "500 Credits"
xsmall = "100 Credits"
[plan.apiPackages]
subtitle = "Purchase API credits for your applications"
title = "API Credit Packages"
[plan.availablePlans]
loadError = "Impossible de charger les tarifs du plan. Valeurs par défaut utilisées."
subtitle = "Choisissez le forfait adapté à vos besoins"
title = "Forfaits disponibles"
[plan.enterprise]
highlight1 = "Tarification personnalisée"
highlight2 = "Support dédié"
highlight3 = "Fonctionnalités les plus récentes"
name = "Entreprise"
requiresServer = "Nécessite Server"
requiresServerMessage = "Veuillez d’abord passer au plan Server avant de passer à Enterprise."
siteLicense = "Licence site"
[plan.feature]
api = "Accès à l’API"
automation = "Automatiser les flux de travail des outils"
customPricing = "Tarification personnalisée"
fileSize = "Limite de taille de fichier"
pdfTools = "Outils PDF de base"
priority = "Support prioritaire"
title = "Fonctionnalité"
[plan.free]
forever = "Gratuit pour toujours"
highlight1 = "Utilisation des outils limitée par semaine"
highlight2 = "Accès à tous les outils"
highlight3 = "Support communautaire"
included = "Inclus"
name = "Gratuit"
[plan.licenseWarning]
body = "Vous avez {{total}} utilisateurs, mais le niveau gratuit ne prend en charge que {{limit}} par serveur. Mettez à niveau pour que Stirling PDF continue de fonctionner correctement."
cta = "Voir les offres"
overLimit = "plus de {{limit}}"
title = "Limite de l’auto‑hébergement gratuit atteinte"
[plan.manageSubscription]
description = "Gérez votre abonnement, la facturation et les moyens de paiement"
[plan.period]
month = "mois"
perUserPerMonth = "/utilisateur/mois"
[plan.pro]
highlight1 = "Utilisation des outils illimitée"
highlight2 = "Outils PDF avancés"
highlight3 = "Sans filigranes"
name = "Pro"
[plan.static]
activateLicense = "Activer votre licence"
checkoutInstructions = "Terminez votre achat dans l’onglet Stripe. Après le paiement, revenez ici et actualisez la page pour activer votre licence. Vous recevrez également un e-mail avec votre clé de licence."
checkoutOpened = "Paiement ouvert"
contactSales = "Contacter l’équipe commerciale"
contactToUpgrade = "Contactez-nous pour mettre à niveau ou personnaliser votre forfait"
getLicense = "Obtenir une licence serveur"
maxUsers = "Nombre maximal d’utilisateurs"
message = "La facturation en ligne n’est pas configurée actuellement. Pour mettre à niveau votre forfait ou gérer vos abonnements, veuillez nous contacter directement."
monthlyBilling = "Facturation mensuelle"
selectPeriod = "Sélectionner la période de facturation"
title = "Informations de facturation"
upgradeToEnterprise = "Passer à l’Enterprise"
upTo = "Jusqu’à"
yearlyBilling = "Facturation annuelle"
[plan.static.billingPortal]
message = "Vous devrez vérifier votre adresse e-mail dans le portail de facturation Stripe. Vérifiez votre e-mail pour un lien de connexion."
title = "Vérification de l’e-mail requise"
[plan.static.licenseActivation]
activate = "Activer la licence"
checkoutOpened = "Paiement ouvert dans un nouvel onglet"
doLater = "Je le ferai plus tard"
enterKey = "Saisissez votre clé de licence ci-dessous pour activer votre offre :"
instructions = "Terminez votre achat dans l’onglet Stripe. Une fois le paiement terminé, vous recevrez un e-mail avec votre clé de licence."
keyDescription = "Collez la clé de licence depuis votre e-mail"
success = "Licence activée !"
successMessage = "Votre licence a été activée avec succès. Vous pouvez maintenant fermer cette fenêtre."
[plan.team]
name = "Team"
siteLicense = "Licence site"
[plan.trial]
badge = "Trial"
continueWithFree = "Continue with Free"
daysRemaining = "Your trial ends in {{days}} days"
endDate = "Expires: {{date}}"
expired = "Your Trial Has Ended"
expiredMessage = "Your 30-day Pro trial has expired. Subscribe to Pro to continue accessing premium features, or continue with our free tier."
freeTierLimitations = "Free tier includes basic PDF tools with usage limits."
message = ""
subscribe = "Subscribe to Pro"
subscribeToPro = "Subscribe to Pro"
subscriptionScheduled = "Subscription scheduled - starts {{date}}"
title = "Free Trial Active"
[printFile]
header = "Imprimer le fichier sur l'imprimante"
submit = "Imprimer"
title = "Imprimer le fichier"
[printFile.selectText]
1 = "Sélectionner le fichier à imprimer"
2 = "Entrez le nom de l'imprimante"
[provider.googledrive]
name = "Google Drive"
scope = "Import de fichiers"
[provider.googledrive.apiKey]
description = "Clé API Google pour Google Picker API depuis Google Cloud Console"
label = "API Key"
[provider.googledrive.appId]
description = "App ID Google Drive depuis Google Cloud Console"
label = "App ID"
[provider.googledrive.clientId]
description = "Client ID OAuth 2.0 Google depuis Google Cloud Console"
label = "Client ID"
[provider.googledrive.enabled]
description = "Autoriser les utilisateurs à importer des fichiers directement depuis Google Drive"
label = "Activer le sélecteur de fichiers Google Drive"
[provider.oauth2.generic]
name = "OAuth2 générique"
scope = "SSO"
[provider.oauth2.generic.autoCreateUser]
description = "Créer automatiquement les comptes utilisateurs lors de la première connexion OAuth2"
label = "Créer automatiquement les utilisateurs"
[provider.oauth2.generic.blockRegistration]
description = "Empêcher l’inscription de nouveaux utilisateurs via OAuth2"
label = "Bloquer l’inscription"
[provider.oauth2.generic.clientId]
description = "Le client ID OAuth2 de votre fournisseur"
label = "Client ID"
[provider.oauth2.generic.clientSecret]
description = "Le client secret OAuth2 de votre fournisseur"
label = "Client Secret"
[provider.oauth2.generic.enabled]
description = "Activer l’authentification via un fournisseur OAuth2 personnalisé"
label = "Activer OAuth2 générique"
[provider.oauth2.generic.issuer]
description = "Fournisseur prenant en charge OpenID Connect Discovery (/.well-known/openid-configuration)"
label = "URL de l’émetteur"
[provider.oauth2.generic.provider]
description = "Le nom de votre fournisseur OAuth2 (par ex., Azure AD, Okta)"
label = "Nom du fournisseur"
[provider.oauth2.generic.scopes]
description = "Scopes OAuth2 séparés par des virgules"
label = "Scopes"
[provider.oauth2.generic.useAsUsername]
description = "Champ à utiliser comme nom d’utilisateur"
label = "Utiliser comme nom d’utilisateur"
[provider.oauth2.github]
scope = "Authentification de connexion"
[provider.oauth2.github.clientId]
description = "Le client ID OAuth2 depuis GitHub Developer Settings"
label = "Client ID"
[provider.oauth2.github.clientSecret]
description = "Le client secret OAuth2 depuis GitHub Developer Settings"
label = "Client Secret"
[provider.oauth2.github.scopes]
description = "Scopes OAuth2 séparés par des virgules"
label = "Scopes"
[provider.oauth2.github.useAsUsername]
description = "Champ à utiliser comme nom d’utilisateur (email, login, name)"
label = "Utiliser comme nom d’utilisateur"
[provider.oauth2.google]
scope = "Authentification de connexion"
[provider.oauth2.google.clientId]
description = "Le client ID OAuth2 depuis Google Cloud Console"
label = "Client ID"
[provider.oauth2.google.clientSecret]
description = "Le client secret OAuth2 depuis Google Cloud Console"
label = "Client Secret"
[provider.oauth2.google.scopes]
description = "Scopes OAuth2 séparés par des virgules"
label = "Scopes"
[provider.oauth2.google.useAsUsername]
description = "Champ à utiliser comme nom d’utilisateur (email, name, given_name, family_name)"
label = "Utiliser comme nom d’utilisateur"
[provider.oauth2.keycloak]
scope = "SSO"
[provider.oauth2.keycloak.clientId]
description = "Le client ID OAuth2 depuis Keycloak"
label = "Client ID"
[provider.oauth2.keycloak.clientSecret]
description = "Le client secret OAuth2 depuis Keycloak"
label = "Client Secret"
[provider.oauth2.keycloak.issuer]
description = "URL du point de découverte OpenID Connect du realm Keycloak"
label = "URL de l’émetteur"
[provider.oauth2.keycloak.scopes]
description = "Scopes OAuth2 séparés par des virgules"
label = "Scopes"
[provider.oauth2.keycloak.useAsUsername]
description = "Champ à utiliser comme nom d’utilisateur (email, name, given_name, family_name, preferred_username)"
label = "Utiliser comme nom d’utilisateur"
[provider.saml2]
name = "SAML2"
scope = "SSO (SAML)"
[provider.saml2.autoCreateUser]
description = "Créer automatiquement les comptes utilisateurs lors de la première connexion SAML2"
label = "Créer automatiquement les utilisateurs"
[provider.saml2.blockRegistration]
description = "Empêcher l’inscription de nouveaux utilisateurs via SAML2"
label = "Bloquer l’inscription"
[provider.saml2.enabled]
description = "Activer l’authentification SAML2 (Enterprise uniquement)"
label = "Activer SAML2"
[provider.saml2.idpCert]
description = "Le chemin du certificat (ex. : classpath:okta.cert)"
label = "Certificat IDP"
[provider.saml2.idpIssuer]
description = "L’ID de votre fournisseur"
label = "Émetteur IDP"
[provider.saml2.idpMetadataUri]
description = "L’URI des métadonnées de votre fournisseur"
label = "URI des métadonnées IDP"
[provider.saml2.idpSingleLoginUrl]
description = "L’URL pour initier le SSO"
label = "URL de connexion unique IDP"
[provider.saml2.idpSingleLogoutUrl]
description = "L’URL pour initier le SLO"
label = "URL de déconnexion unique IDP"
[provider.saml2.privateKey]
description = "Le chemin de votre clé privée"
label = "Clé privée"
[provider.saml2.provider]
description = "Le nom de votre fournisseur SAML2"
label = "Nom du fournisseur"
[provider.saml2.registrationId]
description = "Le nom de votre application Fournisseur de services (SP)"
label = "ID d’enregistrement"
[provider.saml2.spCert]
description = "Le chemin de votre certificat de signature"
label = "Certificat SP"
[provider.smtp]
name = "Messagerie SMTP"
scope = "Notifications par e-mail"
[provider.smtp.enabled]
description = "Activer les notifications par e-mail et la fonctionnalité SMTP"
label = "Activer l’e-mail"
[provider.smtp.from]
description = "L’adresse e-mail à utiliser comme expéditeur"
label = "Adresse d’expéditeur"
[provider.smtp.host]
description = "Le nom d’hôte ou l’adresse IP de votre serveur SMTP"
label = "Hôte SMTP"
[provider.smtp.password]
description = "Mot de passe pour l’authentification SMTP"
label = "Mot de passe SMTP"
[provider.smtp.port]
description = "Le numéro de port pour la connexion SMTP (généralement 25, 465 ou 587)"
label = "Port SMTP"
[provider.smtp.username]
description = "Nom d’utilisateur pour l’authentification SMTP"
label = "Nom d’utilisateur SMTP"
[quickAccess]
access = "Accès"
accessAddPerson = "Ajouter une autre personne"
accessBack = "Retour"
accessCopyLink = "Copier le lien"
accessEmail = "Adresse e-mail"
accessEmailPlaceholder = "nom@entreprise.com"
accessFileLabel = "Fichier"
accessGeneral = "Accès général"
accessInviteTitle = "Inviter des personnes"
accessOwner = "Propriétaire"
accessPanel = "Accès au document"
accessPeople = "Personnes ayant accès"
accessRemove = "Supprimer"
accessRestricted = "Restreint"
accessRestrictedHint = "Seules les personnes ayant accès peuvent ouvrir"
accessRole = "Rôle"
accessRoleCommenter = "Commentateur"
accessRoleEditor = "Éditeur"
accessRoleViewer = "Lecteur"
accessSelectedFile = "Fichier sélectionné"
accessSendInvite = "Envoyer l’invitation"
accessTitle = "Accès au document"
accessYou = "Vous"
account = "Compte"
activeSessions = "Sessions actives"
activeTab = "Actives"
activity = "Activité"
adminSettings = "Réglages admin"
allSessions = "Toutes les sessions"
allTools = "Outils"
automate = "Auto"
back = "Retour"
certSign = "Signature avec certificat"
completedSessions = "Sessions terminées"
completedTab = "Terminées"
config = "Config"
createNew = "Créer une nouvelle demande"
createSession = "Créer une demande de signature"
dueDate = "Date d’échéance (optionnelle)"
files = "Fichiers"
filterDeclined = "Refusé"
filterMine = "Les miens"
filterOverdue = "En retard"
filterSigned = "Signé"
help = "Aide"
newRequest = "Nouvelle demande"
noActiveSessions = "Aucune demande de signature en attente ni session active"
noCompletedSessions = "Aucune session terminée"
noFile = "Aucun fichier sélectionné"
read = "Lire"
reader = "Lecteur"
refresh = "Actualiser"
requestSignatures = "Demander des signatures"
searchDocuments = "Rechercher des documents…"
selectedFile = "Fichier sélectionné"
selectSingleFileToRequest = "Sélectionnez un seul fichier PDF pour demander des signatures"
selectUsers = "Sélectionnez des utilisateurs pour signer"
selectUsersPlaceholder = "Choisissez des participants…"
sendingRequest = "Envoi…"
settings = "Réglages"
showMeAround = "Faites-moi visiter"
sign = "Signer"
signatureRequests = "Demandes de signature"
signYourself = "Signer vous-même"
tours = "Visites guidées"
wetSign = "Ajouter une signature"
[quickAccess.helpMenu]
adminTour = "Visite administrateur"
adminTourDesc = "Découvrez les paramètres et fonctionnalités d’administration"
toolsTour = "Visite des outils"
toolsTourDesc = "Découvrez ce que les outils peuvent faire"
whatsNewTour = "Voir les nouveautés de la V2"
whatsNewTourDesc = "Découvrir la nouvelle interface"
[quickAccess.toursTooltip]
admin = "Visionnez des parcours ici : parcours des outils, parcours de la nouvelle interface V2 et parcours Admin."
user = "Visionnez des parcours ici : parcours des outils et parcours de la nouvelle interface V2."
[redact]
submit = "Caviarder"
tags = "Caviarder,Redact,Masquer,noircir,noir,marqueur,caché,rédiger,censurer"
title = "Caviardage manuel"
[redact.auto]
colorLabel = "Couleur de la boîte"
convertPDFToImageLabel = "Convertir le PDF en PDF-image"
customPaddingLabel = "Marge intérieure personnalisée"
header = "Occultation automatique"
useRegexLabel = "Utiliser des regex"
wholeWordSearchLabel = "Recherche de mots entiers"
[redact.auto.settings]
advancedTitle = "Mode avancé"
title = "Paramètres d’occultation"
[redact.auto.wordsToRedact]
add = "Ajouter"
examples = "Exemples : Confidentiel, Top secret"
placeholder = "Saisir un mot"
title = "Mots à occulter"
[redact.error]
failed = "Une erreur est survenue lors de l’occultation du PDF."
[redact.manual]
activate = "Activer l’outil de rédaction"
active = "Mode de rédaction actif"
apply = "Appliquer"
applyChanges = "Appliquer les modifications"
applyRedactions = "Apply Redactions"
applyWarning = "⚠️ Application permanente, irréversible, et les données sous-jacentes seront supprimées"
boxRedaction = "Occultation par boîte dessinée"
colorLabel = "Couleur de rédaction"
colourPicker = "Sélecteur de couleur"
controlsTitle = "Contrôles de caviardage manuel"
convertPDFToImageLabel = "Convertir le PDF en PDF-image (permet de supprimer le texte derrière la boîte)"
export = "Exporter"
findCurrentOutlineItem = "Trouver l’élément actuel du plan"
header = "Occultation manuelle"
instructions = "Sélectionnez du texte ou dessinez des zones sur le PDF pour marquer le contenu à caviarder."
markArea = "Marquer une zone"
markText = "Marquer du texte"
nextPage = "Page suivante"
noMarks = "Aucun marquage de caviardage. Utilisez les outils ci-dessus pour marquer le contenu à caviarder."
pageBasedRedaction = "Occultation par page"
pendingLabel = "En attente :"
previousPage = "Page précédente"
showAttachments = "Afficher les pièces jointes"
showDocumentOutline = "Afficher le plan du document (double-cliquez pour tout développer/réduire)"
showLayers = "Afficher les calques (double-cliquez pour réinitialiser tous les calques à l’état par défaut)"
showThumbnails = "Afficher les vignettes"
textBasedRedaction = "Occultation basée sur le texte"
title = "Outils de caviardage"
toggleSidebar = "Afficher/masquer la barre latérale"
upload = "Téléverser"
zoom = "Zoom"
zoomIn = "Zoom avant"
zoomOut = "Zoom arrière"
[redact.manual.pageRedactionNumbers]
placeholder = "(par exemple : 1,2,8 ou 4,7,12-16 ou 2n-1)"
title = "Pages"
[redact.manual.redactionColor]
title = "Couleur d’occultation"
[redact.modeSelector]
automatic = "Automatique"
automaticDesc = "Occulter le texte selon des termes de recherche"
automaticDisabledTooltip = "Sélectionnez des fichiers dans le gestionnaire de fichiers pour caviarder plusieurs fichiers à la fois"
manual = "Manuel"
manualComingSoon = "Occultation manuelle bientôt disponible"
manualDesc = "Cliquez et faites glisser pour occulter des zones spécifiques"
mode = "Mode"
title = "Méthode d’occultation"
[redact.tooltip.advanced.color]
text = "Personnalisez l’apparence des boîtes d’occultation. Le noir est standard, mais vous pouvez choisir n’importe quelle couleur. La marge ajoute de l’espace autour du texte trouvé."
title = "Couleur de boîte & marge"
[redact.tooltip.advanced.convert]
text = "Convertit le PDF en PDF-image après occultation. Cela garantit que le texte derrière les boîtes est entièrement supprimé et irrécupérable."
title = "Convertir en PDF-image"
[redact.tooltip.advanced.header]
title = "Paramètres d’occultation avancés"
[redact.tooltip.advanced.regex]
bullet1 = "Exemple : \\d{4}-\\d{2}-\\d{2} pour correspondre aux dates au format YYYY-MM-DD"
bullet2 = "À utiliser avec précaution — testez soigneusement"
text = "Active les expressions régulières pour une recherche avancée. Utile pour trouver des numéros de téléphone, e-mails ou des motifs complexes."
title = "Utiliser des regex"
[redact.tooltip.advanced.wholeWord]
text = "Ne fait correspondre que les mots complets, pas les correspondances partielles. « John » ne correspondra pas à « Johnson » si activé."
title = "Recherche de mots entiers"
[redact.tooltip.manual.apply]
bullet1 = "Marquez autant de zones que nécessaire avant d’appliquer"
bullet2 = "Tous les caviardages en attente sont appliqués en une fois"
bullet3 = "Les caviardages ne peuvent pas être annulés après application"
text = "Après avoir marqué le contenu, cliquez sur « Appliquer » pour caviarder définitivement toutes les zones marquées. Le compteur en attente indique le nombre de caviardages prêts à être appliqués."
title = "Appliquer les caviardages"
[redact.tooltip.manual.header]
title = "Contrôles de caviardage manuel"
[redact.tooltip.manual.markArea]
text = "Dessinez des zones rectangulaires sur le PDF pour marquer des régions à caviarder. Utile pour caviarder des images, des signatures ou des formes irrégulières."
title = "Outil de marquage de zone"
[redact.tooltip.manual.markText]
text = "Sélectionnez le texte directement sur le PDF pour le marquer en vue du caviardage. Cliquez et faites glisser pour surligner le texte spécifique à caviarder."
title = "Outil de marquage de texte"
[redact.tooltip.mode.automatic]
text = "Trouve et occulte automatiquement le texte spécifié dans tout le document. Parfait pour supprimer des informations sensibles récurrentes comme des noms, adresses ou mentions confidentielles."
title = "Occultation automatique"
[redact.tooltip.mode.header]
title = "Méthode d’occultation"
[redact.tooltip.mode.manual]
text = "Cliquez et faites glisser pour sélectionner manuellement des zones à occulter. Offre un contrôle précis sur ce qui est masqué. (Bientôt disponible)"
title = "Occultation manuelle"
[redact.tooltip.words]
bullet1 = "Ajoutez un mot à la fois"
bullet2 = "Appuyez sur Entrée ou cliquez sur « Ajouter un autre » pour ajouter"
bullet3 = "Cliquez sur × pour supprimer des mots"
[redact.tooltip.words.description]
text = "Saisissez des mots ou phrases à rechercher et à occulter dans votre document. Chaque mot sera recherché séparément."
title = "Correspondance de texte"
[redact.tooltip.words.examples]
text = "Exemples typiques à occulter : coordonnées bancaires, adresses e-mail ou noms spécifiques."
title = "Exemples courants"
[redact.tooltip.words.header]
title = "Mots à occulter"
[releases]
footer = "Versions"
header = "Notes de version"
note = "Les notes de version sont uniquement disponibles en anglais"
title = "Notes de version"
[releases.current]
version = "Version actuelle"
[removeAnnotations]
header = "Supprimer les annotations"
submit = "Supprimer"
tags = "commentaires,supprimer,annotations,highlight,notes,markup,remove"
title = "Supprimer les annotations"
[removeAnnotations.error]
failed = "Une erreur est survenue lors de la suppression des annotations du PDF."
[removeAnnotations.info]
description = "Cet outil supprimera toutes les annotations (commentaires, surlignages, notes, etc.) de vos documents PDF."
title = "À propos de Supprimer les annotations"
[removeAnnotations.settings]
title = "Paramètres"
[removeAnnotations.tooltip.description]
title = "Ce que fait l’outil"
[removeAnnotations.tooltip.header]
title = "À propos de la suppression des annotations"
[removeBlanks]
header = "Supprimer les pages vierges"
submit = "Supprimer les pages vierges"
title = "Supprimer les pages vierges"
[removeBlanks.error]
failed = "Échec de la suppression des pages blanches"
[removeBlanks.includeBlankPages]
label = "Inclure les pages vides détectées"
[removeBlanks.results]
title = "Pages blanches supprimées"
[removeBlanks.settings]
title = "Paramètres"
[removeBlanks.threshold]
label = "Seuil de blancheur des pixels"
[removeBlanks.tooltip.header]
title = "Paramètres de suppression des pages blanches"
[removeBlanks.tooltip.includeBlankPages]
bullet1 = "Utile pour passer en revue ce qui a été supprimé"
bullet2 = "Aide à vérifier l’exactitude de la détection"
bullet3 = "Peut être désactivé pour réduire la taille du fichier de sortie"
text = "Lorsqu’il est activé, crée un PDF séparé contenant toutes les pages vides détectées et supprimées du document d’origine."
title = "Inclure les pages vides détectées"
[removeBlanks.tooltip.threshold]
bullet1 = "0 = Noir pur (le plus restrictif)"
bullet2 = "128 = Gris moyen"
bullet3 = "255 = Blanc pur (le moins restrictif)"
text = "Contrôle à quel point un pixel doit être blanc pour être considéré comme « blanc ». Aide à déterminer ce qui compte comme zone vide sur la page."
title = "Seuil de blancheur des pixels"
[removeBlanks.tooltip.whitePercent]
bullet1 = "Valeurs faibles (p. ex., 80 %) = Plus de pages supprimées"
bullet2 = "Valeurs élevées (p. ex., 95 %) = Seules les pages très blanches sont supprimées"
bullet3 = "Utilisez des valeurs élevées pour les documents à fond clair"
text = "Définit le pourcentage minimal de pixels blancs requis pour qu’une page soit considérée comme blanche et supprimée."
title = "Seuil de pourcentage de blanc"
[removeBlanks.whitePercent]
label = "Seuil de pourcentage de blanc"
unit = "%"
[removeCertSign]
description = "Cet outil supprimera les signatures de certificats numériques de votre document PDF."
filenamePrefix = "non_signé"
header = "Supprimer le certificat numérique du PDF"
selectPDF = "Sélectionnez un fichier PDF :"
submit = "Supprimer la Signature"
tags = "signer,chiffrer,certificat,authenticate,PEM,P12,official,decrypt"
title = "Supprimer la Signature de Certificat"
[removeCertSign.error]
failed = "Une erreur est survenue lors de la suppression des signatures de certificat."
[removeCertSign.files]
placeholder = "Sélectionnez un fichier PDF dans la vue principale pour commencer"
[removeCertSign.results]
title = "Résultats de suppression des certificats"
[removeImage]
header = "Supprimer l'image"
removeImage = "Supprimer l'image"
submit = "Supprimer l'image"
title = "Supprimer l'image"
[removeImage.error]
failed = "Échec de la suppression des images du PDF."
[removeImage.results]
title = "Résultats de suppression des images"
[removeImagePdf]
tags = "Images,Remove Image,Page operations,Back end,server side"
[removeMetadata]
submit = "Supprimer les métadonnées"
[removePages]
filenamePrefix = "pages_supprimées"
submit = "Supprimer"
tags = "supprimer,remove,delete"
title = "Supprimer"
[removePages.error]
failed = "Une erreur est survenue lors de la suppression des pages."
[removePages.files]
placeholder = "Sélectionnez un fichier PDF dans la vue principale pour commencer"
[removePages.pageNumbers]
error = "Format de numéro de page invalide. Utilisez des nombres, des plages (1-5) ou des expressions mathématiques (2n+1)"
label = "Pages à supprimer"
placeholder = "p. ex., 1,3,5-8,10"
[removePages.results]
title = "Résultats de suppression de pages"
[removePages.settings]
title = "Paramètres"
[removePages.tooltip.examples]
bullet1 = "Supprimer la première page : 1"
bullet2 = "Supprimer les 3 dernières pages : -3"
bullet3 = "Supprimer une page sur deux : 2n"
bullet4 = "Supprimer des pages dispersées spécifiques : 1,5,10,15"
text = "Voici des modèles courants de sélection de pages :"
title = "Exemples courants"
[removePages.tooltip.header]
title = "Paramètres de suppression de pages"
[removePages.tooltip.pageNumbers]
bullet1 = "Pages individuelles : 1,3,5 (supprime les pages 1, 3 et 5)"
bullet2 = "Plages de pages : 1-5,10-15 (supprime les pages 1-5 et 10-15)"
bullet3 = "Mathématique : 2n+1 (supprime les pages impaires)"
bullet4 = "Plages ouvertes : 5- (supprime de la page 5 à la fin)"
text = "Spécifiez quelles pages supprimer de votre PDF. Vous pouvez sélectionner des pages individuelles, des plages ou utiliser des expressions mathématiques."
title = "Sélection de pages"
[removePages.tooltip.safety]
bullet1 = "Prévisualisez toujours votre sélection avant traitement"
bullet2 = "Conservez une sauvegarde de votre fichier original"
bullet3 = "Les numéros de page commencent à 1, pas 0"
bullet4 = "Les numéros de page invalides seront ignorés"
text = "Points importants à considérer lors de la suppression de pages :"
title = "Conseils de sécurité"
[removePassword]
desc = "Supprimez la protection par mot de passe de votre PDF."
filenamePrefix = "déchiffré"
submit = "Supprimer"
tags = "supprimer,sécurité,mot de passe,secure,decrypt,security,unpassword,delete password"
title = "Supprimer le mot de passe"
[removePassword.error]
failed = "Une erreur est survenue lors du retrait du mot de passe du PDF."
[removePassword.password]
completed = "Mot de passe configuré"
label = "Mot de passe actuel"
placeholder = "Saisir le mot de passe actuel"
stepTitle = "Supprimer le mot de passe"
[removePassword.results]
title = "PDF déchiffrés"
[removePassword.tooltip]
description = "La suppression de la protection par mot de passe nécessite le mot de passe utilisé pour chiffrer le PDF. Cela déchiffrera le document, le rendant accessible sans mot de passe."
[reorganizePages]
submit = "Réorganiser les pages"
[reorganizePages.error]
failed = "Échec de la réorganisation des pages"
[reorganizePages.results]
title = "Pages réorganisées"
[reorganizePages.settings]
title = "Paramètres"
[repair]
description = "Cet outil tentera de réparer des fichiers PDF corrompus ou endommagés. Aucun paramètre supplémentaire n’est requis."
filenamePrefix = "réparé"
header = "Réparer"
submit = "Réparer"
tags = "réparer,restaurer,corriger,récupérer,fix,restore,correction,recover"
title = "Réparer"
[repair.error]
failed = "Une erreur est survenue lors de la réparation du PDF."
[repair.files]
placeholder = "Sélectionnez un fichier PDF dans la vue principale pour commencer"
[repair.results]
title = "Résultats de la réparation"
[replace-color]
previewOverlayOpacity = "Opacité de la superposition d’aperçu"
previewOverlayTransparency = "Transparence de la superposition d’aperçu"
previewOverlayVisibility = "Afficher la superposition d’aperçu"
submit = "Remplacer"
title = "Remplacer-Inverser-Couleur"
[replace-color.options]
fill = "Couleur de remplissage"
gradient = "Dégradé"
[replace-color.selectText]
1 = "Options pour remplacer ou inverser les couleurs"
10 = "Choisir la couleur du texte"
11 = "Choisir la couleur d’arrière-plan"
12 = "Choisir la couleur de départ"
13 = "Choisir la couleur d’arrivée"
2 = "Par défaut (couleurs à fort contraste prédéfinies)"
3 = "Personnalisé (choisissez vos propres couleurs)"
4 = "Inversion totale (inverser toutes les couleurs)"
5 = "Options de couleurs à fort contraste"
6 = "Texte blanc sur fond noir"
7 = "Texte noir sur fond blanc"
8 = "Texte jaune sur fond noir"
9 = "Texte vert sur fond noir"
[replaceColor]
tags = "Remplacer la couleur,Opérations de page,Back-end,côté serveur"
[replaceColor.error]
failed = "Une erreur s’est produite lors du traitement du remplacement des couleurs."
[replaceColor.labels]
colourOperation = "Opération de couleur"
settings = "Paramètres"
[replaceColor.options]
cmyk = "Convertir en CMYK"
custom = "Personnalisé"
highContrast = "Haut contraste"
invertAll = "Inverser toutes les couleurs"
[replaceColor.tooltip.cmyk]
text = "Convertissez le PDF de l’espace colorimétrique RGB à l’espace CMYK, optimisé pour l’impression professionnelle. Ce processus convertit les couleurs vers le modèle Cyan, Magenta, Yellow, Black utilisé par les imprimantes."
title = "Convertir en CMYK"
[replaceColor.tooltip.custom]
bullet1 = "Couleur du texte — Choisissez la couleur des éléments de texte"
bullet2 = "Couleur d’arrière‑plan — Définissez la couleur d’arrière‑plan du document"
text = "Définissez vos propres couleurs de texte et d’arrière‑plan à l’aide des sélecteurs de couleurs. Parfait pour créer des documents de marque ou répondre à des besoins d’accessibilité spécifiques."
title = "Couleurs personnalisées"
[replaceColor.tooltip.description]
text = "Transformez les couleurs du PDF pour améliorer la lisibilité et l’accessibilité. Choisissez des préréglages à haut contraste, inversez toutes les couleurs ou créez des combinaisons personnalisées."
title = "Description"
[replaceColor.tooltip.header]
title = "Aperçu des paramètres de remplacement et d’inversion des couleurs"
[replaceColor.tooltip.highContrast]
bullet1 = "Texte blanc sur fond noir — Mode sombre classique"
bullet2 = "Texte noir sur fond blanc — Contraste élevé standard"
bullet3 = "Texte jaune sur fond noir — Option haute visibilité"
bullet4 = "Texte vert sur fond noir — Alternative à haut contraste"
text = "Appliquez des combinaisons de couleurs à haut contraste prédéfinies, conçues pour une meilleure lisibilité et la conformité en matière d’accessibilité."
title = "Haut contraste"
[replaceColor.tooltip.invertAll]
text = "Inverser complètement toutes les couleurs du PDF, créant un effet de négatif. Utile pour créer des versions en mode sombre des documents ou réduire la fatigue visuelle en faible luminosité."
title = "Inverser toutes les couleurs"
[rotate]
rotateLeft = "Pivoter dans le sens antihoraire"
rotateRight = "Pivoter dans le sens horaire"
selectRotation = "Sélectionnez l’angle de rotation (sens horaire)"
submit = "Pivoter"
title = "Pivoter"
[rotate.error]
failed = "Une erreur est survenue lors de la rotation du PDF."
[rotate.preview]
title = "Aperçu de la rotation"
[rotate.tooltip.controls]
text = "Utilisez les boutons de rotation pour ajuster l’orientation. Le bouton gauche fait pivoter dans le sens antihoraire, le bouton droit dans le sens horaire. Chaque clic tourne de 90 degrés."
title = "Contrôles"
[rotate.tooltip.description]
text = "Faites pivoter les pages de votre PDF dans le sens horaire ou antihoraire par incréments de 90 degrés. Toutes les pages du PDF seront pivotées. L’aperçu montre l’aspect de votre document après rotation."
[rotate.tooltip.header]
title = "Aperçu des paramètres de rotation"
[sanitize]
completed = "Assainissement effectué avec succès"
desc = "Supprimer les éléments potentiellement nuisibles des fichiers PDF."
filenamePrefix = "nettoyé"
sanitizationResults = "Résultats de l’assainissement"
submit = "Assainir"
title = "Assainir"
[sanitize.error]
failed = "Une erreur est survenue lors de l’assainissement du PDF."
generic = "Échec de l’assainissement"
[sanitize.files]
placeholder = "Sélectionnez un fichier PDF dans la vue principale pour commencer"
[sanitize.options]
note = "Sélectionnez les éléments à supprimer du PDF. Au moins une option doit être sélectionnée."
title = "Options d’assainissement"
[sanitize.options.removeEmbeddedFiles]
desc = "Supprimer tous les fichiers intégrés dans le PDF"
label = "Supprimer les fichiers intégrés"
[sanitize.options.removeFonts]
desc = "Supprimer les polices intégrées du PDF"
label = "Supprimer les polices"
[sanitize.options.removeJavaScript]
desc = "Supprimer les actions et scripts JavaScript du PDF"
label = "Supprimer JavaScript"
[sanitize.options.removeLinks]
desc = "Supprimer les liens externes et actions de lancement du PDF"
label = "Supprimer les liens"
[sanitize.options.removeMetadata]
desc = "Supprimer les informations de document (titre, auteur, etc.)"
label = "Supprimer les métadonnées du document"
[sanitize.options.removeXMPMetadata]
desc = "Supprimer les métadonnées XMP du PDF"
label = "Supprimer les métadonnées XMP"
[sanitize.steps]
files = "Fichiers"
results = "Résultats"
settings = "Paramètres"
[sanitizePdf]
tags = "assainir,sécurisé,clean,secure,safe,remove-threats"
[sanitizePDF]
header = "Assainir"
submit = "Assainir"
title = "Assainir"
[sanitizePDF.selectText]
1 = "Supprimer les actions JavaScript"
2 = "Supprimer les fichiers intégrés"
3 = "Supprimer les métadonnées XMP"
4 = "Supprimer les liens"
5 = "Supprimer les polices"
6 = "Supprimer les métadonnées d'information du document"
[scalePages]
header = "Ajuster la taille ou l'échelle"
keepPageSize = "Taille d'origine"
pageSize = "Taille d'une page du document"
scaleFactor = "Niveau de zoom (recadrage) d'une page"
submit = "Ajuster"
title = "Ajuster la taille ou l'échelle"
[ScannerImageSplit]
info = "Python n'est pas installé. Il est nécessaire pour le fonctionnement."
tags = "diviser,détecter automatiquement,numériser,separate,auto-detect,scans,multi-photo,organize"
[ScannerImageSplit.selectText]
1 = "Seuil de rotation"
10 = "Définit la taille de la bordure ajoutée et supprimée pour éviter les bordures blanches dans la sortie (par défaut : 1)."
2 = "Définit l'angle absolu minimum requis pour la rotation de l'image (par défaut : 10)."
3 = "Tolérance"
4 = "Détermine la plage de variation de couleur autour de la couleur d'arrière-plan estimée (par défaut : 20)."
5 = "Surface minimale"
6 = "Définit la surface minimale pour une photo (par défaut : 8 000)."
7 = "Surface de contour minimale"
8 = "Définit la surface de contour minimale pour une photo (par défaut : 500)."
9 = "Taille de la bordure"
[scannerImageSplit]
submit = "Extraire les photos scannées"
title = "Images extraites"
[scannerImageSplit.error]
failed = "Une erreur est survenue lors de l’extraction des photos scannées."
[scannerImageSplit.tooltip]
headsUp = "À savoir"
headsUpDesc = "Des photos qui se chevauchent ou des arrière-plans très proches en couleur des photos peuvent réduire la précision — essayez un fond plus clair ou plus sombre et laissez plus d’espace."
problem1 = "Photos non détectées → augmentez la Tolérance à 30-50"
problem2 = "Trop de fausses détections → augmentez la Zone minimale à 15 000-20 000"
problem3 = "Recadrages trop serrés → augmentez la Taille de bordure à 5-10"
problem4 = "Photos inclinées non redressées → baissez le Seuil d’angle à ~5°"
problem5 = "Boîtes de poussière/bruit → augmentez la Zone de contour minimale à 1000-2000"
quickFixes = "Correctifs rapides"
setupTips = "Conseils de configuration"
tip1 = "Utilisez un fond uni et clair"
tip2 = "Laissez un petit espace (≈ 1 cm) entre les photos"
tip3 = "Numérisez à 300-600 DPI"
tip4 = "Nettoyez la vitre du scanner"
title = "Séparateur de photos"
useCase1 = "Numériser des pages d’album entières en une fois"
useCase2 = "Scinder des lots de platine en fichiers séparés"
useCase3 = "Découper des collages en photos individuelles"
useCase4 = "Extraire des photos depuis des documents"
whatThisDoes = "Ce que fait cet outil"
whatThisDoesDesc = "Détecte et extrait automatiquement chaque photo d’une page scannée ou d’une image composite — sans recadrage manuel."
whenToUse = "Quand l’utiliser"
[search]
noResults = "Aucun résultat trouvé"
placeholder = "Saisir un terme de recherche…"
searching = "Recherche…"
title = "Rechercher dans le PDF"
[selfHosted.offline]
hideTools = "Hide unavailable tools ▴"
messageNoFallback = "Tools are unavailable until your server comes back online."
messageWithFallback = "Some tools require a server connection."
showTools = "View unavailable tools ▾"
title = "Your Stirling-PDF server is unreachable"
toolNotAvailableLocally = "Your Stirling-PDF server is offline and \"{{endpoint}}\" is not available on the local backend."
[session]
expired = "Votre session a expiré. Veuillez recharger la page et réessayer."
refreshPage = "Rafraichir la page"
[sessionManagement.tooltip]
header = "Gestion des sessions de signature"
[sessionManagement.tooltip.addParticipants]
bullet1 = "Les nouveaux participants sont ajoutés à la fin de l’ordre de signature"
bullet2 = "Impossible d’ajouter des participants après la finalisation de la session"
bullet3 = "Chaque participant reçoit une notification lorsqu’arrive son tour"
description = "Vous pouvez ajouter d’autres participants à une session active à tout moment avant la finalisation."
title = "Ajout de participants"
[sessionManagement.tooltip.finalization]
bullet1 = "Finalisation complète : Tous les participants ont signé"
bullet2 = "Finalisation partielle : Certains participants n’ont pas encore signé"
bullet3 = "Les participants n’ayant pas signé seront exclus du document final"
bullet4 = "Une fois finalisée, vous pouvez charger le PDF signé dans les fichiers actifs"
description = "La finalisation combine toutes les signatures en un seul PDF signé. Cette action est irréversible."
title = "Finalisation de la session"
[sessionManagement.tooltip.participantRemoval]
bullet1 = "Impossible de supprimer les participants ayant déjà signé"
bullet2 = "Les participants supprimés ne reçoivent plus de notifications"
bullet3 = "L’ordre de signature s’ajuste automatiquement"
description = "Les participants peuvent être retirés des sessions avant de signer."
title = "Suppression de participants"
[sessionManagement.tooltip.signatureOrder]
bullet1 = "Chaque signature est appliquée séquentiellement au PDF"
bullet2 = "Les signataires suivants peuvent voir les signatures précédentes"
bullet3 = "Critique pour les flux d’approbation et les chaînes de conservation légales"
description = "L’ordre que vous spécifiez lors de la création de la session détermine qui signe en premier."
title = "Ordre des signatures"
[settings.configuration]
advanced = "Avancé"
database = "Base de données"
endpoints = "Endpoints"
features = "Fonctionnalités"
storageSharing = "Stockage et partage de fichiers"
systemSettings = "Paramètres système"
title = "Configuration"
[settings.connection]
localDescription = "Vous utilisez le backend local sans compte. Certains outils nécessitant le cloud ou un serveur auto-hébergé ne sont pas disponibles."
logout = "Se déconnecter"
server = "Serveur"
signIn = "Se connecter"
title = "Mode de connexion"
user = "Connecté en tant que"
[settings.connection.mode]
local = "En local seulement"
saas = "Cloud Stirling"
selfhosted = "Auto-hébergé"
[settings.developer]
apiKeys = "Clés API"
title = "Développeur"
[settings.general]
autoUnzip = "Décompression automatique des réponses API"
autoUnzipDescription = "Extraire automatiquement les fichiers des réponses ZIP"
autoUnzipFileLimit = "Limite pour la décompression automatique"
autoUnzipFileLimitDescription = "Nombre maximal de fichiers à extraire du ZIP"
autoUnzipFileLimitTooltip = "Ne décompressez que si le ZIP contient ce nombre de fichiers ou moins. Définissez une valeur plus élevée pour extraire des ZIP plus volumineux."
autoUnzipTooltip = "Extraire automatiquement les fichiers ZIP renvoyés par les opérations API. Désactivez pour conserver les fichiers ZIP intacts. Cela n’affecte pas les flux d’automatisation."
defaultPdfEditor = "Éditeur PDF par défaut"
defaultPdfEditorActive = "Stirling PDF est votre éditeur PDF par défaut"
defaultPdfEditorChecking = "Vérification…"
defaultPdfEditorInactive = "Une autre application est définie par défaut"
defaultPdfEditorSet = "Déjà par défaut"
defaultStartupView = "Vue par défaut au démarrage"
defaultStartupViewDescription = "Choisissez quel onglet est actif dans la colonne de gauche au démarrage de l'application"
defaultToolPickerMode = "Mode par défaut du sélecteur d’outils"
defaultToolPickerModeDescription = "Choisissez si le sélecteur d’outils s’ouvre par défaut en plein écran ou en barre latérale"
defaultViewerZoom = "Zoom par défaut du lecteur"
defaultViewerZoomDescription = "Définissez le niveau de zoom par défaut lors de l'ouverture des PDF dans le lecteur"
description = "Configurer les préférences générales de l’application."
hideUnavailableConversions = "Masquer les conversions indisponibles"
hideUnavailableConversionsDescription = "Supprimer les options de conversion désactivées dans l’outil Convertir au lieu de les afficher grisées."
hideUnavailableTools = "Masquer les outils indisponibles"
hideUnavailableToolsDescription = "Supprimer les outils désactivés par votre serveur au lieu de les afficher grisés."
language = "Langue"
languageDescription = "Choisir la langue d’affichage"
logout = "Se déconnecter"
setAsDefault = "Définir par défaut"
theme = "Thème"
themeDark = "Sombre"
themeDescription = "Basculer entre le mode clair et le mode sombre"
themeLight = "Clair"
title = "Général"
user = "Utilisateur"
[settings.general.enableFeatures]
action = "Configurer"
and = "et"
benefit = "Active les rôles utilisateur, la collaboration en équipe, les contrôles d’administration et les fonctionnalités d’entreprise."
dismiss = "Ignorer"
intro = "Activer l’authentification des utilisateurs, la gestion des équipes et les fonctionnalités d’espace de travail pour votre organisation."
learnMore = "En savoir plus dans la documentation"
title = "Pour les administrateurs système"
[settings.general.mode]
fullscreen = "Plein écran"
sidebar = "Barre latérale"
[settings.general.startupView]
automate = "Automatisation"
read = "Lecteur"
tools = "Outils"
[settings.general.updates]
checkForUpdates = "Rechercher des mises à jour"
currentBackendVersion = "Current Backend Version"
currentFrontendVersion = "Current Frontend Version"
description = "Rechercher des mises à jour et voir les informations de version"
latestVersion = "Dernière version"
serverNeedsUpdate = "Le serveur doit être mis à jour par l’administrateur"
title = "Mises à jour logicielles"
versionMismatch = "Warning: A mismatch has been detected between the client version and the AppConfig version. Using different versions can lead to compatibility issues, errors, and security risks. Please ensure that server and client are using the same version."
viewDetails = "Voir les détails"
[settings.general.versionInfo]
description = "Détails des versions Desktop et serveur"
desktop = "Version Desktop"
server = "Version du serveur"
title = "Informations de version"
[settings.general.zoomLevel]
auto = "Auto"
fitPage = "Ajuster à la page"
fitWidth = "Ajuster à la largeur"
[settings.help]
label = "Visites guidées"
title = "Aide"
[settings.help.adminTour]
description = "Découvrez la gestion d’équipe, les paramètres système et les fonctionnalités entreprise."
start = "Démarrer"
title = "Visite administrateur"
[settings.help.toolsTour]
description = "Parcourez le téléversement de fichiers, le choix d’un outil et l’examen des résultats."
start = "Démarrer"
title = "Visite des outils"
[settings.hotkeys]
capturing = "Appuyez sur les touches… (Échap pour annuler)"
change = "Modifier le raccourci"
customBadge = "Personnalisé"
defaultLabel = "Par défaut : {{shortcut}}"
description = "Personnalisez les raccourcis clavier pour un accès rapide aux outils. Cliquez sur \"Modifier le raccourci\" et pressez une nouvelle combinaison de touches. Appuyez sur Échap pour annuler."
errorConflict = "Raccourci déjà utilisé par {{tool}}."
none = "Non attribué"
noShortcut = "Aucun raccourci défini"
reset = "Réinitialiser"
searchPlaceholder = "Rechercher des outils…"
shortcut = "Raccourci"
title = "Raccourcis clavier"
[settings.hotkeys.errorModifier]
mac = "Incluez ⌘ (Command), ⌥ (Option) ou un autre modificateur dans votre raccourci."
windows = "Incluez Ctrl, Alt ou un autre modificateur dans votre raccourci."
[settings.licensingAnalytics]
audit = "Audit"
plan = "Plan"
title = "Licences et analyses"
usageAnalytics = "Analyses d'utilisation"
[settings.planBilling]
currentPlan = "Offre actuelle"
loading = "Chargement des informations de facturation..."
notAvailable = "Plan et facturation disponibles uniquement lorsque connecté à Stirling Cloud (mode SaaS)."
title = "Plan et facturation"
[settings.planBilling.billing]
manageBilling = "Gérer la facturation"
nextBillingDate = "Prochaine date de facturation"
overageCost = "Coût de dépassement actuel : {{amount}} ({{credits}} crédits)"
[settings.planBilling.credits]
estimatedCost = "Coût estimé : {{amount}}"
freeTierInfo = "L’offre Free inclut {{freeCredits}} crédits par mois. Passez à Team pour {{teamCredits}} crédits/mois et une facturation à l’usage en cas de dépassement."
included = "{{count}} crédits/mois (inclus)"
noOverage = "Aucun dépassement ce mois-ci. Vous utilisez vos {{count}} crédits inclus."
overage = "+ {{count}} de dépassement"
overageInfo = "Les crédits de dépassement sont facturés à {{price}} par crédit. Vous ne payez que ce que vous utilisez au-delà de votre allocation mensuelle."
title = "Utilisation des crédits"
[settings.planBilling.errors]
fetchFailed = "Impossible de récupérer les données de facturation"
retry = "Réessayer"
[settings.planBilling.status]
active = "Actif"
canceled = "Annulé"
pastDue = "En retard"
trial = "Essai"
[settings.planBilling.team]
managedByTeam = "Géré par l’équipe"
memberCount = "{{count}} membres de l’équipe"
[settings.planBilling.tier]
enterprise = "Enterprise"
enterpriseDescription = "Fonctionnalités et support entreprise personnalisés"
free = "Free"
freeDescription = "50 crédits par mois"
team = "Team"
teamBadge = "Team"
teamDescription = "500 crédits/mois inclus, facturation de dépassement automatique pour un service ininterrompu"
teamTooltipCredits = "L’offre Team inclut {{credits}} crédits/mois."
teamTooltipFineprint = "Payez uniquement ce que vous utilisez au-delà des crédits inclus."
teamTooltipOverage = "Facturation de dépassement automatique à {{price}}/crédit pour un service ininterrompu."
[settings.planBilling.trial]
daysRemaining = "{{days}} jours restants"
daysRemainingFull = "Votre essai se termine dans {{days}} jours"
endDate = "Expire le : {{date}}"
endsOn = "Fin de l’essai"
title = "Essai gratuit actif"
[settings.planBilling.upgrade]
cta = "Passer à Team"
featureApi = "Accès API pour l’automatisation"
featureCredits = "{{teamCredits}} crédits par mois (contre {{freeCredits}} sur Free)"
featureMembers = "Membres d’équipe illimités"
featureSupport = "Support prioritaire"
featureThroughput = "Débit de traitement plus rapide"
opensInBrowser = "S’ouvre dans le navigateur pour finaliser la mise à niveau"
subtitle = "Passez à Team pour :"
title = "Mettre à niveau votre offre"
[settings.policiesPrivacy]
legal = "Juridique"
privacy = "Confidentialité"
title = "Politiques et confidentialité"
[settings.preferences]
title = "Préférences"
[settings.search]
placeholder = "Rechercher dans les paramètres…"
[settings.security]
description = "Mettez à jour votre mot de passe pour sécuriser votre compte."
title = "Sécurité"
[settings.security.password]
confirm = "Confirmez le nouveau mot de passe"
confirmPlaceholder = "Saisissez de nouveau votre nouveau mot de passe"
current = "Mot de passe actuel"
currentPlaceholder = "Saisissez votre mot de passe actuel"
error = "Impossible de mettre à jour le mot de passe. Veuillez vérifier votre mot de passe actuel et réessayer."
mismatch = "Les nouveaux mots de passe ne correspondent pas."
new = "Nouveau mot de passe"
newPlaceholder = "Saisissez un nouveau mot de passe"
required = "Tous les champs sont obligatoires."
ssoDisabled = "Les modifications de mot de passe sont gérées par votre fournisseur d’identité."
subtitle = "Changez votre mot de passe. Vous serez déconnecté après la mise à jour."
success = "Mot de passe mis à jour avec succès. Veuillez vous reconnecter."
update = "Mettre à jour le mot de passe"
[settings.securityAuth]
connections = "Connexions"
security = "Sécurité"
telegram = "Telegram"
title = "Sécurité et authentification"
[settings.team]
title = "Équipe"
[settings.tooltips]
enableLoginFirst = "Activer d'abord le mode connexion"
requiresEnterprise = "Nécessite une licence Enterprise"
[settings.workspace]
people = "Personnes"
teams = "Équipes"
title = "Espace de travail"
[setup]
description = "Commencez par choisir comment vous souhaitez utiliser Stirling PDF"
welcome = "Bienvenue dans Stirling PDF"
[setup.login]
connectingTo = "Connexion à :"
hideInstructions = "Masquer les instructions"
instructions = "Pour activer la connexion sur votre serveur Stirling PDF :"
instructionsEnvVar = "Définissez la variable d’environnement :"
instructionsOrYml = "Ou dans settings.yml :"
instructionsRestart = "Redémarrez ensuite votre serveur pour que les modifications prennent effet."
oauthPending = "Ouverture du navigateur pour l'authentification..."
orContinueWith = "Ou continuer avec l’email"
serverRequirement = "Remarque : le serveur doit avoir la connexion activée."
showInstructions = "Comment l’activer ?"
signInWith = "Se connecter avec"
skipSignIn = "Continue without signing in"
sso = "Authentification unique"
submit = "Se connecter"
subtitle = "Saisissez vos identifiants pour continuer"
title = "Se connecter"
[setup.login.email]
label = "Email"
placeholder = "Saisissez votre email"
[setup.login.error]
emptyEmail = "Veuillez saisir votre email"
emptyPassword = "Veuillez saisir votre mot de passe"
emptyUsername = "Veuillez saisir votre nom d'utilisateur"
oauthFailed = "La connexion OAuth a échoué. Veuillez réessayer."
[setup.login.password]
label = "Mot de passe"
placeholder = "Saisissez votre mot de passe"
[setup.login.username]
label = "Nom d’utilisateur"
placeholder = "Entrez votre nom d’utilisateur"
[setup.mode.saas]
description = "Connectez-vous avec votre compte Stirling"
title = "Stirling Cloud"
[setup.mode.selfhosted]
description = "Connectez-vous à votre propre serveur Stirling PDF"
title = "Serveur auto‑hébergé"
[setup.saas]
subtitle = "Connectez-vous avec votre compte Stirling"
title = "Se connecter à Stirling"
[setup.selfhosted]
changeServerLocked = "Votre organisation a limité cette application à un serveur spécifique"
link = "ou connectez-vous à un compte auto-hébergé"
subtitle = "Saisissez les identifiants du serveur"
switchToLocal = "Use local tools instead"
title = "Se connecter au serveur"
[setup.selfhosted.unreachable]
changeServer = "Se connecter à un autre serveur"
changeServerLocked = "Votre organisation a limité cette application à un serveur spécifique"
continueOffline = "Use local tools instead"
message = "Could not reach {{url}}. Check that the server is running and accessible."
retry = "Retry"
title = "Cannot connect to server"
[setup.server]
subtitle = "Saisissez l’URL de votre serveur auto‑hébergé"
testing = "Test de connexion…"
title = "Connexion au serveur"
useLast = "Last used server: {{serverUrl}}"
[setup.server.error]
configFetch = "Échec de la récupération de la configuration du serveur. Veuillez vérifier l'URL et réessayer."
configFetchError = "Failed to fetch server configuration: {{error}}"
emptyUrl = "Veuillez saisir une URL de serveur"
invalidUrl = "Format d’URL invalide. Veuillez saisir une URL valide comme https://your-server.com"
testFailed = "Échec du test de connexion"
unreachable = "Connexion au serveur impossible"
[setup.server.error.securityDisabled]
body = "La connexion n'est pas activée sur ce serveur. Pour vous y connecter, vous devez activer l'authentification :"
step1 = "Définissez DOCKER_ENABLE_SECURITY=true dans votre environnement"
step2 = "Ou définissez security.enableLogin=true dans settings.yml"
step3 = "Redémarrez le serveur"
title = "Connexion non activée"
[setup.server.type]
saas = "Stirling PDF SaaS"
selfhosted = "Serveur auto‑hébergé"
[setup.server.url]
description = "Saisissez l’URL complète de votre serveur Stirling PDF auto‑hébergé"
label = "URL du serveur"
[setup.step1]
description = "Hors ligne ou serveur"
label = "Choisir un mode"
[setup.step2]
description = "Serveur auto‑hébergé"
label = "Sélectionner un serveur"
[setup.step3]
description = "Saisir les identifiants"
label = "Connexion"
[showJS]
done = "JavaScript extrait"
downloadJS = "Télécharger le JavaScript"
header = "Afficher le JavaScript"
processing = "Extraction de JavaScript…"
results = "Résultat"
singleFileWarning = "Cet outil ne prend en charge qu’un seul fichier à la fois. Veuillez sélectionner un fichier unique."
submit = "Afficher"
tags = "JS"
title = "Afficher le JavaScript"
[showJS.view]
title = "JavaScript extrait"
[sidebar]
toggle = "Afficher/masquer la barre latérale"
[sign]
activate = "Activer le placement de signature"
add = "Ajouter"
addToAll = "Ajouter à toutes les pages"
applySignatures = "Appliquer les signatures"
clear = "Effacer"
deactivate = "Arrêter le placement de signatures"
delete = "Supprimer"
first = "Première page"
header = "Signer"
last = "Dernière page"
maintainRatio = "Conserver les proportions"
next = "Page suivante"
noSavedSigs = "Aucun sceau enregistré trouvé"
personalSigs = "Sceaux personnels"
previous = "Page précédente"
redo = "Refaire"
save = "Enregistrer le sceau"
sharedSigs = "Sceaux partagés"
submit = "Signer le document"
title = "Signer"
undo = "Défaire"
updateAndPlace = "Mettre à jour et placer"
upload = "Télécharger une image"
[sign.canvas]
clear = "Effacer la zone"
clickToOpen = "Cliquez pour ouvrir la zone de dessin"
colorLabel = "Couleur"
colorPickerTitle = "Choisir la couleur du trait"
heading = "Dessinez votre signature"
modalTitle = "Dessinez votre signature"
penSizeLabel = "Épaisseur du trait"
penSizePlaceholder = "Taille"
[sign.draw]
clear = "Effacer"
title = "Dessinez votre signature"
[sign.error]
failed = "Une erreur est survenue lors de la signature du PDF."
[sign.image]
backgroundRemovalFailedMessage = "Impossible de supprimer le fond de l’image. Utilisation de l’image originale à la place."
backgroundRemovalFailedTitle = "Échec de la suppression du fond"
hint = "Téléversez une image PNG ou JPG de votre signature"
label = "Téléverser une image de signature"
placeholder = "Sélectionner un fichier image"
processing = "Traitement de l’image..."
removeBackground = "Supprimer le fond blanc (le rendre transparent)"
[sign.instructions]
canvas = "Après avoir dessiné votre signature dans le canvas, fermez la fenêtre modale puis cliquez n’importe où sur le PDF pour la placer."
image = "Après avoir téléversé l’image de votre signature ci-dessus, cliquez n’importe où sur le PDF pour la placer."
noSignature = "Créez une signature ci-dessus pour activer les outils de placement."
paused = "Placement en pause"
resumeHint = "Reprenez le placement pour cliquer et ajouter votre signature."
saved = "Sélectionnez une signature enregistrée ci-dessus, puis cliquez n’importe où sur le PDF pour la placer."
text = "Après avoir saisi votre nom ci-dessus, cliquez n’importe où sur le PDF pour placer votre signature."
title = "Comment ajouter une signature"
[sign.mode]
move = "Déplacer la signature"
pause = "Suspendre le placement"
place = "Placer la signature"
resume = "Reprendre le placement"
[sign.results]
title = "Résultats de signature"
[sign.saved]
carouselPosition = "{{current}} sur {{total}}"
defaultCanvasLabel = "Signature dessinée"
defaultImageLabel = "Signature téléversée"
defaultLabel = "Signature"
defaultTextLabel = "Signature saisie"
delete = "Supprimer"
description = "Réutilisez vos signatures enregistrées à tout moment."
emptyDescription = "Dessinez, téléversez ou saisissez une signature ci-dessus, puis utilisez « Save to library » pour en garder jusqu’à {{max}} en favoris, prêtes à l’emploi."
emptyTitle = "Aucune signature enregistrée pour l’instant"
heading = "Signatures enregistrées"
label = "Libellé"
limitDescription = "Supprimez une signature enregistrée avant d’en ajouter une nouvelle (max {{max}})."
limitTitle = "Limite atteinte"
next = "Suivant"
noChanges = "La signature actuelle est déjà enregistrée."
personalDescription = "Vous seul pouvez voir ces signatures."
personalHeading = "Signatures personnelles"
prev = "Précédent"
saveButton = "Enregistrer la signature"
savePersonal = "Enregistrer en personnel"
saveShared = "Enregistrer en partagé"
saveUnavailable = "Créez d’abord une signature pour l’enregistrer."
sharedDescription = "Tous les utilisateurs peuvent voir et utiliser ces signatures."
sharedHeading = "Signatures partagées"
tempStorageDescription = "Les signatures sont stockées uniquement dans votre navigateur. Elles seront perdues si vous effacez les données du navigateur ou si vous changez de navigateur."
tempStorageTitle = "Stockage temporaire du navigateur"
[sign.saved.status]
saved = "Enregistré"
[sign.saved.type]
canvas = "Dessin"
image = "Téléversement"
text = "Texte"
[sign.step]
createDesc = "Choisissez comment créer la signature"
place = "Placer et enregistrer"
placeDesc = "Positionnez la signature sur votre PDF"
[sign.steps]
configure = "Configurer la signature"
[sign.text]
colorLabel = "Couleur du texte"
fontLabel = "Police"
fontSizeLabel = "Taille de police"
fontSizePlaceholder = "Saisir ou sélectionner la taille de police (8-200)"
name = "Nom du signataire"
placeholder = "Saisissez votre nom complet"
[sign.type]
canvas = "Dessin"
draw = "Dessiner"
image = "Image"
saved = "Enregistrées"
text = "Texte"
title = "Type de signature"
[signatureSettings.tooltip]
header = "Paramètres d’apparence des signatures"
[signatureSettings.tooltip.location]
bullet1 = "Exemples : « New York, USA », « Bureau de Londres », « À distance »"
bullet2 = "Diffère de la position sur la page"
bullet3 = "Peut être requis dans certaines juridictions"
description = "Emplacement géographique optionnel où la signature a été apposée. Stocké dans les métadonnées du certificat."
title = "Emplacement de la signature"
[signatureSettings.tooltip.logo]
bullet1 = "Affiché à côté de la signature et du texte"
bullet2 = "Prend en charge les formats PNG, JPG"
bullet3 = "Améliore l’apparence professionnelle"
description = "Ajoutez un logo d’entreprise aux signatures visibles pour l’image de marque et l’authenticité."
title = "Logo de l’entreprise"
[signatureSettings.tooltip.reason]
bullet1 = "Exemples : « Approbation », « Contrat », « Vérification terminée »"
bullet2 = "Visible dans les propriétés de signature du PDF"
bullet3 = "Utile pour les pistes d’audit et la conformité"
description = "Texte optionnel expliquant pourquoi le document est signé. Stocké dans les métadonnées du certificat."
title = "Raison de la signature"
[signatureSettings.tooltip.visibility]
bullet1 = "Visible : La signature apparaît sur le PDF avec une apparence personnalisée"
bullet2 = "Invisible : Certificat intégré sans marque visuelle"
bullet3 = "Les signatures invisibles fournissent tout de même une validation cryptographique"
description = "Contrôle si la signature est visible sur le document ou intégrée de manière invisible."
title = "Visibilité de la signature"
[signRequest]
declined = "Demande de signature refusée"
fetchFailed = "Échec du chargement de la demande de signature"
signed = "Document signé avec succès"
[signSession]
created = "Demande de signature envoyée"
createFailed = "Échec de la création de la demande de signature"
[signup]
accountCreatedSuccessfully = "Compte créé avec succès ! Vous pouvez maintenant vous connecter."
alreadyHaveAccount = "Vous avez déjà un compte ? Connectez-vous"
checkEmailConfirmation = "Consultez votre e-mail pour un lien de confirmation afin de terminer votre inscription."
confirmPassword = "Confirmer le mot de passe"
confirmPasswordPlaceholder = "Confirmer le mot de passe"
confirmPasswordRequired = "Veuillez confirmer votre mot de passe"
creatingAccount = "Création du compte…"
email = "E-mail"
emailRequired = "L’e‑mail est requis"
enterEmail = "Saisissez votre e-mail"
enterName = "Saisissez votre nom"
enterPassword = "Saisissez votre mot de passe"
invalidEmail = "Veuillez saisir une adresse e-mail valide"
name = "Nom"
nameRequired = "Le nom est requis"
or = "ou"
password = "Mot de passe"
passwordRequired = "Le mot de passe est requis"
passwordsDoNotMatch = "Les mots de passe ne correspondent pas"
passwordTooShort = "Le mot de passe doit comporter au moins 6 caractères"
pleaseFillAllFields = "Veuillez remplir tous les champs"
signUp = "S’inscrire"
subtitle = "Rejoignez Stirling PDF pour commencer"
title = "Créer un compte"
unexpectedError = "Erreur inattendue : {{message}}"
useEmailInstead = "Utiliser l’e‑mail à la place"
[sizes]
large = "Grand"
medium = "Moyen"
small = "Petit"
x-large = "Très grand"
[split]
header = "Diviser"
resultsTitle = "Résultats de la division"
selectMethod = "Sélectionnez une méthode de division"
splitPages = "Pages sur lesquelles diviser"
submit = "Diviser"
title = "Diviser"
[split.desc]
1 = "Les numéros que vous sélectionnez sont le numéro de page sur lequel vous souhaitez faire une division"
2 = "Ainsi, la sélection de 1,3,7-9 diviserait un document de 10 pages en 6 PDF distincts avec :"
3 = "Document n°1 : Page 1"
4 = "Document #2: Page 2 et 3"
5 = "Document #3: Page 4, 5, 6 et 7"
6 = "Document n°4 : Page 8"
7 = "Document n°5 : Page 9"
8 = "Document n°6 : Page 10"
[split.error]
failed = "Une erreur est survenue lors du fractionnement du PDF."
[split.method]
label = "Choisir la méthode de fractionnement"
placeholder = "Sélectionnez comment fractionner le PDF"
[split.methods.byChapters]
desc = "Fractionner aux limites des signets"
name = "Chapitres"
tooltip = "Utilise les signets du PDF pour déterminer les points de coupure"
[split.methods.byDocCount]
desc = "Créer un nombre spécifique de fichiers"
name = "Nombre de documents"
tooltip = "Indiquez combien de fichiers vous souhaitez créer"
[split.methods.byPageCount]
desc = "Nombre fixe de pages par fichier"
name = "Nombre de pages"
tooltip = "Saisissez le nombre de pages pour chaque fichier"
[split.methods.byPageDivider]
desc = "Fractionnement automatique avec feuilles séparatrices"
name = "Feuille séparatrice"
tooltip = "Utilisez des feuilles séparatrices QR entre les documents lors de la numérisation"
[split.methods.byPages]
desc = "Extraire des pages spécifiques (1,3,5-10)"
name = "Numéros de page"
tooltip = "Saisissez des numéros de page séparés par des virgules ou des plages avec des tirets"
[split.methods.byPoster]
desc = "Diviser les grandes pages en formats imprimables"
name = "Segments imprimables"
tooltip = "Divisez les pages surdimensionnées en segments plus petits adaptés à l’impression sur papier standard (A4, Letter, etc.)"
[split.methods.bySections]
desc = "Diviser les pages en sections de grille"
name = "Sections"
tooltip = "Scinder chaque page en sections horizontales et verticales"
[split.methods.bySize]
desc = "Limiter la taille maximale du fichier"
name = "Taille du Fichier"
tooltip = "Spécifiez la taille maximale du fichier (p. ex. 10MB, 500KB)"
[split.methods.prefix]
splitAt = "Fractionner à"
splitBy = "Fractionner par"
splitInto = "Diviser en"
[split.methodSelection.tooltip]
bullet1 = "Cliquez sur une carte de méthode pour la sélectionner"
bullet2 = "Survolez chaque carte pour voir une brève description"
bullet3 = "L’étape des paramètres apparaîtra après avoir sélectionné une méthode"
bullet4 = "Vous pouvez changer de méthode à tout moment avant le traitement"
title = "Choisissez votre méthode de division"
[split.methodSelection.tooltip.header]
text = "Choisissez comment vous souhaitez diviser votre document PDF. Chaque méthode est optimisée pour différents cas d’utilisation et types de documents."
title = "Sélection de la méthode de division"
[split.poster]
rightToLeft = "Découper de droite à gauche"
[split.poster.pageSize]
description = "Taille des pages de sortie pour l’impression"
label = "Taille de page cible"
[split.poster.xFactor]
description = "Nombre de colonnes pour diviser chaque page"
label = "Divisions horizontales"
[split.poster.yFactor]
description = "Nombre de lignes pour diviser chaque page"
label = "Divisions verticales"
[split.settings]
selectMethodFirst = "Veuillez d’abord sélectionner une méthode de fractionnement"
[split.steps]
chooseMethod = "Choisir la méthode"
settings = "Paramètres"
[split.tooltip.byChapters]
bullet1 = "Niveau de signet : niveau sur lequel fractionner (1 = niveau supérieur)"
bullet2 = "Inclure les métadonnées : préserver les propriétés du document"
bullet3 = "Autoriser les doublons : gérer les noms de signets répétés"
text = "Utilisez les signets du PDF pour fractionner automatiquement aux limites des chapitres. Nécessite des PDF avec une structure de signets."
title = "Fractionner par chapitres"
[split.tooltip.byCount]
bullet1 = "Nombre de pages : nombre fixe de pages par fichier"
bullet2 = "Nombre de documents : nombre fixe de fichiers en sortie"
bullet3 = "Utile pour des workflows en lot"
text = "Créez plusieurs PDF avec un nombre spécifique de pages ou de documents chacun."
title = "Fractionner par comptage"
[split.tooltip.byDocCount]
bullet1 = "Saisissez le nombre de fichiers de sortie souhaités"
bullet2 = "Les pages sont réparties aussi uniformément que possible"
bullet3 = "Utile lorsque vous avez besoin d’un nombre spécifique de fichiers"
text = "Créez un nombre spécifique de fichiers de sortie en répartissant les pages de manière uniforme."
title = "Diviser par nombre de documents"
[split.tooltip.byPageCount]
bullet1 = "Saisissez le nombre de pages par fichier de sortie"
bullet2 = "Le dernier fichier peut avoir moins de pages si la division n’est pas exacte"
bullet3 = "Utile pour les traitements par lots"
text = "Créez plusieurs PDF avec un nombre précis de pages chacun. Parfait pour créer des segments de document uniformes."
title = "Diviser par nombre de pages"
[split.tooltip.byPageDivider]
bullet1 = "Imprimez des feuilles séparatrices depuis le lien de téléchargement"
bullet2 = "Insérez des feuilles séparatrices entre vos documents"
bullet3 = "Numérisez tous les documents ensemble en un seul PDF"
bullet4 = "Téléversez — les pages séparatrices sont détectées et supprimées automatiquement"
bullet5 = "Activez le mode recto verso si vous numérisez les deux côtés des feuilles séparatrices"
text = "Divisez automatiquement des documents numérisés à l’aide de feuilles séparatrices physiques avec QR codes. Parfait pour traiter plusieurs documents numérisés ensemble."
title = "Diviser par feuille séparatrice"
[split.tooltip.byPages]
bullet1 = "Points uniques : 3,7 (fractionne après les pages 3 et 7)"
bullet2 = "Plages : 3-8 (fractionne avant la page 3 et après la page 8)"
bullet3 = "Mixte : 2,5-10,15 (fractionne après la page 2, avant la page 5, après la page 10 et après la page 15)"
text = "Fractionnez votre PDF à des numéros de page spécifiques. « n » fractionne après la page n. « n-m » fractionne avant la page n et après la page m."
title = "Fractionner aux numéros de page"
[split.tooltip.byPoster]
bullet1 = "Taille de page cible : Choisissez le format de papier de sortie (A4, Letter, etc.)"
bullet2 = "Divisions horizontales/verticales : Taille de la grille pour la découpe"
bullet3 = "De droite à gauche : Inverser l’ordre des colonnes pour les mises en page RTL"
bullet4 = "Imprimez et assemblez les morceaux pour créer votre poster"
text = "Divisez les grandes pages PDF en segments plus petits imprimables adaptés aux formats de papier standard. Parfait pour créer des impressions poster à partir de pages surdimensionnées."
title = "Découper pour impression poster"
[split.tooltip.bySections]
bullet1 = "Horizontal : nombre de lignes à créer"
bullet2 = "Vertical : nombre de colonnes à créer"
bullet3 = "Fusionner : combiner toutes les sections en un PDF"
text = "Divisez chaque page en une grille de sections. Utile pour scinder des documents multi-colonnes ou extraire des zones spécifiques."
title = "Fractionner par sections de grille"
[split.tooltip.bySize]
bullet1 = "Utilisez MB pour les fichiers plus volumineux (p. ex., 10MB)"
bullet2 = "Utilisez KB pour les plus petits fichiers (p. ex., 500KB)"
bullet3 = "Le système fractionnera aux limites de page"
text = "Créez plusieurs PDF qui ne dépassent pas une taille de fichier spécifiée. Idéal pour les limites de taille ou les pièces jointes e-mail."
title = "Fractionner par taille de fichier"
[split.tooltip.header]
title = "Aperçu des méthodes de fractionnement"
[split.value.docCount]
label = "Nombre de fichiers"
placeholder = "p. ex., 3, 5"
[split.value.fileSize]
label = "Taille du Fichier"
placeholder = "p. ex., 10MB, 500KB"
[split.value.pageCount]
label = "Pages par fichier"
placeholder = "p. ex., 5, 10"
[split-by-sections]
header = "Diviser le PDF en sections"
merge = "Fusionner en un seul PDF"
submit = "Diviser le PDF"
tags = "Sections,Diviser,Section Split, Divide, Customize"
title = "Diviser le PDF en sections"
[split-by-sections.customPages]
label = "Numéros de pages personnalisés"
placeholder = "ex. 2,4,6"
[split-by-sections.horizontal]
label = "Divisions horizontales"
placeholder = "Saisir le nombre de divisions horizontales"
[split-by-sections.splitMode]
custom = "Pages personnalisées"
description = "Choisissez comment fractionner les pages"
label = "Mode de fractionnement"
splitAll = "Fractionner toutes les pages"
splitAllExceptFirst = "Tout fractionner sauf la première"
splitAllExceptFirstAndLast = "Tout fractionner sauf la première et la dernière"
splitAllExceptLast = "Tout fractionner sauf la dernière"
[split-by-sections.vertical]
label = "Divisions verticales"
placeholder = "Entrer le nombre de divisions verticales"
[split-by-size-or-count]
header = "Séparer le PDF par taille ou par nombre"
submit = "Séparer"
title = "Séparer le PDF par taille ou par nombre"
[split-by-size-or-count.type]
docCount = "Par nombre de documents"
label = "Sélectionner le type de division"
pageCount = "Par nombre de pages"
size = "Par taille"
[split-by-size-or-count.value]
label = "Entrer la valeur"
placeholder = "Saisir la taille (par exemple, 2MB ou 3KB) ou le nombre (par exemple, 5)"
[splitByChapters]
allowDuplicates = "Autoriser les Doublons"
bookmarkLevel = "Niveau de Signet"
header = "Diviser un PDF par Chapitres"
includeMetadata = "Inclure les Métadonnées"
submit = "Diviser le PDF"
title = "Diviser un PDF par Chapitres"
[splitByChapters.desc]
1 = "Cet outil divise un fichier PDF en plusieurs PDF en fonction de sa structure de chapitres."
2 = "Niveau de Signet : Choisissez le niveau de signets à utiliser pour la division (0 pour le niveau supérieur, 1 pour le deuxième niveau, etc...)."
3 = "Inclure les Métadonnées : Si coché, les métadonnées du PDF original seront incluses dans chaque PDF divisé."
4 = "Autoriser les Doublons : Si coché, permet à plusieurs signets sur la même page de créer des PDF séparés."
[splitPdfByChapters]
tags = "séparer,chapitres,split,chapters,bookmarks,organize"
[storage]
approximateSize = "Taille approximative"
fileTooLarge = "Fichier trop volumineux. Taille maximale par fichier :"
storageFull = "Le stockage est presque plein. Envisagez de supprimer certains fichiers."
storageLimit = "Limite de stockage"
storageQuotaExceeded = "Quota de stockage dépassé. Veuillez supprimer des fichiers avant d’en ajouter."
storageUsed = "Stockage temporaire utilisé"
temporaryNotice = "Les fichiers sont stockés temporairement dans votre navigateur et peuvent être effacés automatiquement"
[storageShare]
accessDenied = "Vous n’avez pas accès à ce fichier partagé. Demandez au propriétaire de le partager avec vous."
accessDeniedBody = "Vous n’avez pas accès à ce fichier. Demandez au propriétaire de le partager avec vous."
accessDeniedTitle = "Aucun accès"
accessed = "Accédé"
accessFailed = "Impossible de charger l’activité."
accessLimitedCommenter = "L’accès en tant que commentateur arrive bientôt. Demandez l’accès éditeur si vous devez télécharger."
accessLimitedTitle = "Accès limité"
accessLimitedViewer = "Ce lien est en lecture seule. Demandez l’accès éditeur si vous devez télécharger."
addUser = "Ajouter"
bulkDescription = "Créer un seul lien pour partager tous les fichiers sélectionnés avec les utilisateurs connectés."
bulkTitle = "Partager les fichiers sélectionnés"
commenterHint = "Les commentaires arrivent bientôt."
copied = "Lien copié dans le presse-papiers"
copy = "Copier"
copyFailed = "Échec de la copie"
copyLink = "Copier le lien de partage"
createdAt = "Créé"
description = "Créez un lien de partage pour ce fichier. Les utilisateurs connectés munis du lien peuvent y accéder."
download = "Télécharger"
downloaded = "Téléchargé"
downloadFailed = "Impossible de télécharger ce fichier."
downloadsCount = "Téléchargements : {{count}}"
emailWarningBody = "Cela ressemble à une adresse e-mail. Si cette personne n’est pas déjà utilisatrice de Stirling PDF, elle ne pourra pas accéder au fichier."
emailWarningConfirm = "Partager quand même"
emailWarningTitle = "Adresse e-mail"
errorTitle = "Échec du partage"
expiredBody = "Ce lien de partage est invalide ou a expiré."
expiredTitle = "Lien expiré"
failure = "Impossible de générer un lien de partage. Veuillez réessayer."
fileCount = "{{count}} fichiers sélectionnés"
fileLabel = "Fichier"
generate = "Générer le lien"
generated = "Lien de partage généré"
goToLogin = "Aller à la connexion"
hideActivity = "Masquer l’activité"
invalidUsername = "Saisissez un nom d’utilisateur ou une adresse e-mail valide."
lastAccessed = "Dernier accès"
linkAccessTitle = "Accès via lien de partage"
linkLabel = "Lien de partage"
linksDisabled = "Les liens de partage sont désactivés."
linksDisabledBody = "Les liens de partage sont désactivés par les paramètres de votre serveur."
loadFailed = "Impossible d’ouvrir le fichier partagé."
loading = "Chargement du lien de partage…"
loginPrompt = "Connectez-vous pour accéder à ce fichier partagé."
loginRequired = "Connexion requise"
manage = "Gérer le partage"
manageDescription = "Créer et gérer des liens pour partager ce fichier."
manageLoadFailed = "Impossible de charger les liens de partage."
manageTitle = "Gérer le partage"
noActivity = "Aucune activité pour le moment."
noLinks = "Aucun lien de partage actif pour le moment."
noSharedUsers = "Aucun utilisateur n’a encore accès."
openInApp = "Ouvrir dans Stirling PDF"
ownerLabel = "Propriétaire"
ownerOnly = "Seul le propriétaire peut gérer le partage."
ownerUnknown = "Inconnu"
removeLink = "Supprimer le lien"
removeUser = "Supprimer"
requiresLogin = "Ce fichier partagé nécessite une connexion."
revoked = "Lien de partage supprimé"
revokeFailed = "Impossible de supprimer le lien de partage."
roleCommenter = "Commentateur"
roleEditor = "Éditeur"
roleLabel = "Rôle"
roleViewer = "Lecteur"
selectSingleFile = "Sélectionnez un seul fichier pour gérer le partage."
sharedUsersTitle = "Utilisateurs ayant accès"
shareHeading = "Fichier partagé"
sharingDisabled = "Le partage est désactivé."
sharingDisabledBody = "Le partage a été désactivé par les paramètres de votre serveur."
title = "Partager le fichier"
titleDefault = "Fichier partagé"
tryAgain = "Veuillez réessayer plus tard."
unknownUser = "Utilisateur inconnu"
userAdded = "Utilisateur ajouté à la liste de partage."
userAddFailed = "Impossible de partager avec cet utilisateur."
usernameLabel = "Nom d’utilisateur ou adresse e-mail"
usernamePlaceholder = "Saisissez un nom d’utilisateur ou une adresse e-mail"
userRemoved = "Utilisateur supprimé de la liste de partage."
userRemoveFailed = "Impossible de supprimer cet utilisateur."
viewActivity = "Voir l’activité"
viewed = "Consulté"
viewsCount = "Vues : {{count}}"
[storageUpload]
bulkDescription = "Cela téléverse les fichiers sélectionnés vers le stockage de votre serveur."
bulkTitle = "Téléverser les fichiers sélectionnés"
description = "Cela téléverse le fichier actuel vers le stockage du serveur pour votre accès personnel."
errorTitle = "Échec du téléversement"
failure = "Échec du téléversement. Veuillez vérifier votre connexion et vos paramètres de stockage."
fileCount = "{{count}} fichiers sélectionnés"
fileLabel = "Fichier"
hint = "Les liens publics et les modes d’accès sont contrôlés par les paramètres de votre serveur."
more = " +{{count}} autres"
success = "Téléversé sur le serveur"
title = "Téléverser sur le serveur"
updateButton = "Mettre à jour sur le serveur"
uploadButton = "Téléverser sur le serveur"
[subscription]
cancelsOn = "Annulation le {{date}}"
renewsOn = "Renouvellement le {{date}}"
[subscription.status]
active = "Actif"
canceled = "Annulé"
incomplete = "Incomplet"
none = "Aucun abonnement"
pastDue = "En retard de paiement"
trialing = "Essai"
[survey]
button = "Répondre à l'enquête"
changes = "Stirling-PDF a changé depuis la dernière enquête ! Pour en savoir plus, veuillez consulter notre article de blog ici :"
changes2 = "Avec ces changements, nous obtenons un soutien commercial rémunéré et un financement"
description = "Stirling-PDF n'a pas de suivi, donc nous voulons entendre nos utilisateurs pour améliorer Stirling-PDF !"
disabled = "(La fenêtre contextuelle de l'enquête sera désactivée dans les mises à jour suivantes mais sera disponible en bas de page)"
dontShowAgain = "Ne plus afficher"
nav = "Enquête"
please = "Veuillez envisager de répondre à notre enquête !"
title = "Enquête Stirling-PDF"
[survey.meeting]
1 = "Si vous utilisez Stirling PDF au travail, nous aimerions en discuter avec vous. Nous offrons des sessions de support technique en échange d'une discussion de 15 minutes pour découvrir nos utilisateurs."
2 = "C'est l'occasion de :"
3 = "Obtenir de l'aide pour le déploiement, l'intégration ou résoudre des problèmes"
4 = "Fournir un retour direct sur les performances, les cas limites, les fonctionnalités demandées"
5 = "Nous aider à adapter Stirling PDF aux usages réels en entreprise"
6 = "Si vous êtes intéressé, prenez rendez-vous avec notre équipe (en anglais uniquement)"
7 = "Nous avons hâte de découvrir vos cas d'usage et d'améliorer encore Stirling PDF !"
button = "Prendre rendez-vous"
notInterested = "Vous n'êtes pas une entreprise et/ou n'êtes pas intéressé par une discussion ?"
[swagger]
desc = "Voir et tester les points de terminaison de l’API Stirling PDF"
header = "Documentation de l’API"
tags = "api,documentation,swagger,points de terminaison,développement"
title = "Documentation de l’API"
[tableExtraxt]
tags = "CSV, Extraction de table, extraction, conversion"
[team]
cancelInviteError = "Échec de l’annulation de l’invitation"
confirmCancelInvite = "Voulez-vous vraiment annuler cette invitation ?"
confirmLeave = "Voulez-vous vraiment quitter cette équipe ?"
confirmLeaveLeader = "En tant que chef d’équipe, partir vous supprimera de l’équipe. Êtes-vous sûr ?"
confirmRemove = "Voulez-vous vraiment supprimer ce membre ?"
editName = "Modifier le nom de l’équipe"
inviteCancelled = "Invitation annulée"
inviteError = "Échec de l’envoi de l’invitation"
inviteSent = "Invitation envoyée avec succès"
leader = "Chef d’équipe"
leaveButton = "Quitter l’équipe"
leaveError = "Échec de la sortie de l’équipe"
leaveSuccess = "Équipe quittée avec succès"
loading = "Chargement des informations de l’équipe..."
memberCount = "{{count}} membres"
memberRemoved = "Membre supprimé avec succès"
namePlaceholder = "Saisir le nom de l’équipe"
personal = "Personnel"
removeError = "Échec de la suppression du membre"
renameError = "Échec du renommage de l’équipe"
renameSuccess = "Équipe renommée avec succès"
[team.features]
badge = "Fonctionnalités d’équipe"
subtitle = "Collaborez avec votre équipe"
title = "Collaboration d’équipe"
viewPlans = "Voir les offres"
[team.features.billing]
description = "Gérer la facturation et les abonnements"
title = "Gestion de la facturation"
[team.features.credits]
description = "Réserve de crédits partagée pour tous les membres"
title = "Crédits partagés"
[team.features.dashboard]
description = "Afficher l’activité et l’utilisation de l’équipe"
title = "Tableau de bord d’équipe"
[team.features.invite]
description = "Ajouter des membres à votre équipe"
title = "Inviter des membres"
[team.invitationBanner]
acceptButton = "Accepter"
message = "vous a invité à rejoindre"
rejectButton = "Refuser"
[team.invite]
cancelLabel = "Annuler"
invalidEmail = "Adresse e-mail invalide"
placeholder = "Saisir l’adresse e-mail"
sendButton = "Envoyer l’invitation"
title = "Inviter un membre de l’équipe"
[team.members]
emailColumn = "E-mail"
empty = "Aucun membre d’équipe pour le moment"
nameColumn = "Nom"
pending = "En attente"
remove = "Supprimer"
roleColumn = "Rôle"
title = "Membres de l’équipe"
[team.upgrade]
button = "Passer à Team"
description = "Débloquez les fonctionnalités de collaboration d’équipe"
title = "Passer à l’offre Team"
[textAlign]
center = "Centre"
left = "Gauche"
right = "Droite"
[theme]
toggle = "Changer de thème"
[timestampPdf]
completed = "PDF horodaté avec succès"
desc = "Ajoutez un horodatage RFC 3161 à votre PDF via un serveur d'autorité d'horodatage (TSA) de confiance."
filenamePrefix = "horodaté"
results = "Résultats de l'horodatage"
submit = "Appliquer l'horodatage"
title = "Horodater le PDF"
[timestampPdf.error]
failed = "Une erreur est survenue lors de l'horodatage du PDF."
generic = "Échec de l'horodatage"
[timestampPdf.files]
placeholder = "Sélectionnez un fichier PDF dans la vue principale pour commencer"
[timestampPdf.options]
note = "Seul le hash SHA-256 de votre document est envoyé au serveur TSA ; le fichier PDF lui-même n'est jamais envoyé au serveur TSA."
title = "Serveur d'horodatage (TSA)"
[timestampPdf.options.tsaUrl]
desc = "Choisissez une autorité d'horodatage de confiance"
label = "Sélectionner un serveur TSA"
[timestampPdf.steps]
settings = "Paramètres"
[tool]
endpointUnavailable = "This tool is unavailable on your server."
endpointUnavailableClickable = "Not available in this mode. Click to sign in."
filesLoading = "Les fichiers se chargent encore, veuillez patienter."
filesLoadingProgress = "{{loaded}} / {{total}} fichiers en cours de chargement..."
invalidParams = "Fill in the required settings."
noFiles = "Add a file to get started."
scopeFiles = "fichiers"
scopeThisFile = "ce fichier"
selectFilesHint = "Sélectionnez des fichiers dans Fichiers actifs pour exécuter cet outil"
singleFileScope = "Application uniquement à : {{fileName}}"
viewerMode = "Passez à l'éditeur de fichiers pour sélectionner plusieurs fichiers."
[toolPanel]
allTools = "Tous les outils"
alpha = "Alpha"
backToTools = "Retour aux outils"
collapse = "Réduire le panneau"
comingSoon = "Bientôt disponible :"
expand = "Développer le panneau"
placeholder = "Choisissez un outil pour commencer"
premiumFeature = "Fonctionnalité Premium :"
search = "Rechercher des outils"
[toolPanel.fullscreen]
comingSoon = "Bientôt disponible :"
favorite = "Ajouter aux favoris"
favorites = "Favoris"
heading = "Tous les outils (vue plein écran)"
noResults = "Essayez d’ajuster votre recherche ou d’afficher/masquer les descriptions pour trouver ce dont vous avez besoin."
recommended = "Recommandé"
selfHostedOffline = "Requires your Stirling-PDF server (currently offline):"
showDetails = "Afficher les détails"
unavailable = "Désactivé par l’administrateur du serveur :"
unavailableDependency = "Indisponible - outil requis manquant sur le serveur :"
unfavorite = "Retirer des favoris"
[toolPanel.modePrompt]
chooseFullscreen = "Utiliser le mode plein écran"
chooseSidebar = "Utiliser le mode barre latérale"
description = "Apercevez les deux dispositions et décidez comment explorer les outils Stirling PDF."
dismiss = "Peut-être plus tard"
fullscreenDescription = "Parcourez tous les outils dans un catalogue qui recouvre l’espace de travail jusqu’à en choisir un."
fullscreenTitle = "Mode plein écran - (ancien)"
recommended = "Recommandé"
sidebarDescription = "Gardez les outils à côté de votre espace de travail pour changer rapidement."
sidebarTitle = "Mode barre latérale"
title = "Choisissez comment parcourir les outils"
[toolPanel.toggle]
fullscreen = "Passer en mode plein écran"
sidebar = "Passer en mode barre latérale"
[toolPicker]
allTools = "TOUS LES OUTILS"
noToolsFound = "Aucun outil trouvé"
quickAccess = "ACCÈS RAPIDE"
searchPlaceholder = "Rechercher des outils…"
[toolPicker.categories]
advancedTools = "Outils avancés"
recommendedTools = "Outils recommandés"
standardTools = "Outils standards"
[toolPicker.subcategories]
advancedFormatting = "Mise en forme avancée"
automation = "Automatisation"
developerTools = "Outils développeur"
documentReview = "Révision de document"
documentSecurity = "Sécurité du document"
extraction = "Extraction"
general = "Général"
pageFormatting = "Mise en page"
removal = "Suppression"
signing = "Signature"
verification = "Vérification"
[tools]
noSearchResults = "Aucun outil trouvé"
noTools = "Aucun outil disponible"
[unlockPDFForms]
description = "Cet outil supprimera les restrictions en lecture seule des champs de formulaires PDF, les rendant modifiables et remplissables."
filenamePrefix = "formulaires_déverrouillés"
header = "Déverrouiller les formulaires PDF"
submit = "Remove"
tags = "supprimer,propriété,déverrouiller,formulaire,champs,lecture,remove,delete,form,field,readonly"
title = "Supprimer la lecture seule des champs de formulaire"
[unlockPDFForms.error]
failed = "Une erreur est survenue lors du déverrouillage des formulaires PDF."
[unlockPDFForms.files]
placeholder = "Sélectionnez un fichier PDF dans la vue principale pour commencer"
[unlockPDFForms.results]
title = "Résultats des formulaires déverrouillés"
[update]
availableUpdates = "Mises à jour disponibles"
breakingChanges = "Modifications majeures"
breakingChangesDefault = "Cette version contient des modifications majeures."
breakingChangesDetected = "Modifications majeures détectées"
breakingChangesMessage = "Certaines versions contiennent des modifications majeures. Veuillez consulter les guides de migration ci-dessous avant de mettre à jour."
close = "Fermer"
current = "Version actuelle"
downloadLatest = "Télécharger la dernière version"
latest = "Dernière version"
latestStable = "Dernière version stable"
loadingDetailedInfo = "Chargement des informations détaillées…"
migrationGuide = "Guide de migration"
migrationGuides = "Guides de migration"
modalTitle = "Mise à jour disponible"
priorityLabel = "Priorité"
recommendedAction = "Action recommandée"
releaseNotes = "Notes de version"
unableToLoadDetails = "Impossible de charger les informations détaillées."
updateAvailable = "Mise à jour disponible"
urgentUpdateAvailable = "Mise à jour urgente"
version = "Version"
viewAllReleases = "Voir toutes les versions"
viewGuide = "Voir le guide"
[update.priority]
low = "Faible"
minor = "Mineure"
normal = "Normale"
urgent = "Urgente"
[upgradeBanner]
attentionBody = "Votre administrateur doit se connecter pour voir plus d’informations. Veuillez le contacter immédiatement."
attentionBodyAdmin = "Vérifiez les exigences de licence pour maintenir ce serveur conforme."
attentionTitle = "Ce serveur nécessite l’attention d’un administrateur"
dismiss = "Masquer la bannière"
message = "Tirez le meilleur parti de Stirling PDF avec des utilisateurs illimités et des fonctionnalités avancées"
seeInfo = "Voir les infos"
title = "Passer au plan Server"
upgradeButton = "Mettre à niveau maintenant"
[URLToPDF]
credit = "Utilise WeasyPrint."
header = "URL en PDF"
submit = "Convertir"
tags = "pdf,contenu Web,save-page,web-to-doc,archive"
title = "URL en PDF"
[usage]
aboutUsageAnalytics = "À propos des analyses d’utilisation"
configureSettings = "Configurer les paramètres d’analyse"
error = "Erreur lors du chargement des statistiques d’utilisation"
noData = "Aucune donnée disponible"
noDataMessage = "Aucune statistique d’utilisation n’est actuellement disponible."
usageAnalyticsExplanation = "Les analyses d’utilisation suivent les requêtes des points de terminaison et les habitudes d’utilisation des outils. Combinées avec le tableau de bord de journalisation d’audit, vous obtenez une visibilité complète sur l’activité du système, les performances et les événements de sécurité."
viewAuditLogs = "Afficher les journaux d’audit"
[usage.chart]
title = "Graphique d’utilisation des endpoints"
[usage.controls]
all = "Tous"
dataTypeLabel = "Type de données :"
refresh = "Actualiser"
top10 = "Top 10"
top20 = "Top 20"
[usage.controls.dataType]
all = "Tous"
api = "API"
ui = "UI"
[usage.showing]
all = "Tous"
top10 = "Top 10"
top20 = "Top 20"
[usage.stats]
selectedVisits = "Visites sélectionnées"
showing = "Affichage"
totalEndpoints = "Nombre total d’endpoints"
totalVisits = "Nombre total de visites"
[usage.table]
endpoint = "Endpoint"
noData = "Aucune donnée disponible"
percentage = "Pourcentage"
title = "Statistiques détaillées"
unknownEndpoint = "Point de terminaison inconnu"
visits = "Visites"
[validateSignature]
date = "Date"
downloadCsv = "Télécharger CSV"
downloadJson = "Télécharger JSON"
downloadPdf = "Télécharger le rapport PDF"
finalizing = "Préparation des téléchargements…"
header = "Valider les signatures numériques"
location = "Localisation"
noResults = "Lancez la validation pour générer un rapport."
noSignatures = "Aucune signature numérique trouvée dans ce document"
noSignaturesShort = "Aucune signature"
processing = "Validation des signatures…"
reason = "Raison"
results = "Résultats de la validation"
selectCustomCert = "Fichier de certificat personnalisé X.509 (Optionnel)"
selectPDF = "Sélectionnez un fichier PDF signé"
signatureDate = "Date de signature"
signer = "Signataire"
submit = "Valider les signatures"
tags = "signature,vérifier,valider,pdf,certificat,signature numérique,Valider la signature,Valider le certificat"
title = "Valider les signatures PDF"
totalSignatures = "Nombre total de signatures"
[validateSignature.cert]
algorithm = "Algorithme"
bits = "bits"
details = "Détails du certificat"
expired = "Le certificat a expiré"
info = "Détails du certificat"
issuer = "Émetteur"
keySize = "Taille de la clé"
keyUsage = "Usage de la clé"
revoked = "Le certificat a été révoqué"
selfSigned = "Auto-signé"
serialNumber = "Numéro de série"
subject = "Sujet"
validFrom = "Valide à partir du"
validUntil = "Valide jusqu'au"
version = "Version"
[validateSignature.chain]
invalid = "La validation de la chaîne de certificats a échoué - impossible de vérifier l'identité du signataire"
[validateSignature.downloadType]
csv = "CSV"
json = "JSON"
pdf = "PDF"
[validateSignature.error]
allFailed = "Impossible de valider les fichiers sélectionnés."
partial = "Certains fichiers n’ont pas pu être validés."
reportGeneration = "Impossible de générer le rapport PDF. JSON et CSV sont disponibles."
unexpected = "Erreur inattendue lors de la validation."
[validateSignature.issue]
certExpired = "Certificat expiré"
certRevocationUnknown = "Statut de révocation du certificat inconnu"
certRevoked = "Certificat révoqué"
chainInvalid = "Chaîne de certificats invalide"
signatureInvalid = "Échec de la vérification cryptographique de la signature"
trustInvalid = "Certificat non approuvé"
[validateSignature.report]
continued = "Suite"
downloads = "Téléchargements"
entryLabel = "Résumé de la signature"
filesEvaluated = "{{count}} fichiers évalués"
footer = "Validé via Stirling PDF"
generatedAt = "Généré"
noPdf = "Le rapport PDF sera disponible après une validation réussie."
page = "Page"
shortTitle = "Résumé de la signature"
signatureCountLabel = "{{count}} signatures"
signaturesFound = "{{count}} signatures détectées"
signaturesValid = "{{count}} entièrement valides"
title = "Rapport de validation des signatures"
[validateSignature.report.fields]
created = "Créé"
fileSize = "Taille du fichier"
signatureCount = "Nombre total de signatures"
signatureDate = "Date de signature"
[validateSignature.settings]
certHint = "Téléversez un certificat X.509 de confiance pour valider par rapport à une source de confiance personnalisée."
title = "Paramètres de validation"
[validateSignature.signature]
_value = "Signature"
info = "Informations sur la signature"
mathValid = "La signature est mathématiquement valide MAIS :"
[validateSignature.status]
_value = "Statut"
complete = "Validation terminée"
invalid = "Invalide"
valid = "Valide"
[validateSignature.trust]
invalid = "Le certificat n'est pas dans le magasin de confiance - la source ne peut pas être vérifiée"
[view]
fileManager = "Gestionnaire de fichiers"
pageEditor = "Éditeur de pages"
viewer = "Visionneuse"
[viewer]
cannotPreviewFile = "Impossible d’afficher un aperçu du fichier"
disableColorFilter = "Désactiver le filtre de couleur"
dualPageView = "Vue double page"
enableDarkFilter = "Activer le filtre sombre"
enableSepiaFilter = "Activer le filtre sépia"
firstPage = "Première page"
lastPage = "Dernière page"
nextPage = "Page suivante"
onlyPdfSupported = "Le visualiseur prend uniquement en charge les fichiers PDF. Ce fichier semble être d’un autre format."
previousPage = "Page précédente"
resetZoom = "Réinitialiser le zoom"
singlePageView = "Vue page unique"
unknownFile = "Fichier inconnu"
zoomIn = "Zoom avant"
zoomOut = "Zoom arrière"
[viewer.attachments]
empty = "Aucune pièce jointe dans ce document"
loading = "Chargement des pièces jointes..."
noDocument = "Ouvrez un PDF pour afficher ses pièces jointes."
noMatch = "Aucune pièce jointe ne correspond à votre recherche"
noSupport = "La prise en charge des pièces jointes n’est pas disponible pour cette visionneuse."
searchPlaceholder = "Rechercher des pièces jointes"
title = "Pièces jointes"
[viewer.comments]
addComment = "Ajouter un commentaire"
addCommentPlaceholder = "Ajouter un commentaire..."
addLink = "Ajouter un lien"
addReplyPlaceholder = "Répondre..."
deleteAnnotationAndComment = "Supprimer l'annotation et le commentaire"
deleteDescription = "Cette annotation a un commentaire. Vous pouvez supprimer seulement le commentaire de la barre latérale en gardant l'annotation ou supprimer les deux."
deleteTitle = "Supprimer l'annotation des commentaires ?"
goToLink = "Suivre le lien"
hint = "Commentez avec Commentaire, Insérer du texte ou remplacer le texte. Vos commentaires apparaîtront ici par page."
locateAnnotation = "Chercher dans le document"
moreActions = "Plus d'actions"
nComments = "{{count}} commentaires"
oneComment = "1 commentaire"
pageLabel = "Page {{page}}"
placeholder = "Saisissez votre commentaire..."
removeCommentOnly = "Supprimer seulement le commentaire"
saveReply = "Sauvegarder la réponse"
send = "Envoyer"
title = "Commentaires"
typeComment = "Commentaire"
typeInsertText = "Insérer du text"
typeReplaceText = "Remplacer le commentaire"
viewComment = "Voir le commentaire"
[viewer.formBar]
apply = "Appliquer les modifications"
dismiss = "Fermer"
download = "Télécharger le PDF"
hasFieldsDesc = "Ce PDF contient des champs remplissables"
title = "Champs de formulaire"
unsavedBadge = "Non enregistré"
unsavedDesc = "Vous avez des modifications non enregistrées"
[viewer.nonPdf]
columnDefault = "Colonne {{index}}"
convertToPdf = "Convertir en PDF"
csvStats = "{{rows}} lignes · {{columns}} colonnes · {{size}}"
emptyFile = "Fichier vide"
fileTypeBadge = "Fichier {{type}}"
htmlPreview = "Aperçu HTML"
htmlPreviewWarning = "Aperçu HTML — les ressources externes peuvent ne pas se charger · {{size}}"
invalidJson = "JSON invalide — affichage du contenu brut"
lineNumbers = "Numéros de ligne"
loading = "Chargement…"
renderMarkdown = "Afficher le markdown"
sortedBy = "Trié par : {{column}}"
textStats = "{{lines}} lignes · {{size}}"
[viewPdf]
header = "Visualiser un PDF"
tags = "visualiser,lire,annoter,texte,image"
title = "Afficher/modifier un PDF"
[warning]
tooltipTitle = "Avertissement"
[watermark]
completed = "Filigrane ajouté"
desc = "Ajouter des filigranes texte ou image aux fichiers PDF"
filenamePrefix = "filigrané"
submit = "Ajouter un filigrane"
title = "Ajouter un filigrane"
[watermark.alphabet]
arabic = "Arabe"
chinese = "Chinois"
japanese = "Japonais"
korean = "Coréen"
roman = "Romain/latin"
thai = "Thaï"
[watermark.error]
failed = "Une erreur est survenue lors de l’ajout du filigrane au PDF."
[watermark.results]
title = "Résultats du filigrane"
[watermark.settings]
alphabet = "Police/langue"
color = "Couleur du filigrane"
convertToImage = "Aplatir les pages PDF en images"
fontSize = "Taille de Police"
opacity = "Opacité (%)"
rotation = "Rotation (degrés)"
size = "Taille"
type = "Type de filigrane"
[watermark.settings.image]
choose = "Choisir une image"
label = "Image de filigrane"
selected = "Sélectionné : {{filename}}"
[watermark.settings.spacing]
height = "Espacement en hauteur"
horizontal = "Espacement horizontal"
vertical = "Espacement vertical"
width = "Espacement en largeur"
[watermark.settings.text]
label = "Texte du filigrane"
placeholder = "Saisir le texte du filigrane"
[watermark.steps]
file = "Fichier à filigraner"
formatting = "Mise en forme"
textStyle = "Style"
type = "Type de filigrane"
wording = "Libellé"
[watermark.tooltip.appearance]
bullet1 = "Rotation : -360° à 360° pour des filigranes inclinés"
bullet2 = "Opacité : 0–100 % pour contrôler la transparence"
bullet3 = "Une opacité faible crée des filigranes discrets"
text = "Contrôlez l’apparence de votre filigrane et sa fusion avec le document."
title = "Paramètres d’apparence"
[watermark.tooltip.file.header]
title = "Téléversement d’image"
[watermark.tooltip.file.recommendations]
bullet1 = "Utilisez des logos ou tampons avec arrière-plan transparent"
bullet2 = "Les designs simples fonctionnent mieux que les images complexes"
bullet3 = "Tenez compte de la taille finale du document pour choisir la résolution"
text = "Conseils pour des filigranes image optimaux."
title = "Bonnes pratiques"
[watermark.tooltip.file.upload]
bullet1 = "Formats courants pris en charge : PNG, JPG, GIF, BMP"
bullet2 = "Le PNG avec transparence est idéal"
bullet3 = "Des images à plus haute résolution conservent mieux la qualité"
text = "Téléversez une image à utiliser comme filigrane."
title = "Sélection d’image"
[watermark.tooltip.formatting.appearance]
bullet1 = "Rotation : -360° à 360° pour des filigranes inclinés"
bullet2 = "Opacité : 0–100 % pour contrôler la transparence"
bullet3 = "Une opacité faible crée des filigranes discrets"
text = "Contrôlez l’apparence de votre filigrane et sa fusion avec le document."
title = "Paramètres d’apparence"
[watermark.tooltip.formatting.header]
title = "Mise en forme et disposition"
[watermark.tooltip.formatting.security]
bullet1 = "Empêche la sélection et la copie de texte"
bullet2 = "Rend les filigranes plus difficiles à supprimer"
bullet3 = "Entraîne des fichiers plus volumineux"
bullet4 = "Idéal pour le contenu sensible ou protégé par droit d’auteur"
text = "Convertir le PDF final en format basé sur l’image pour une sécurité renforcée."
title = "Option de sécurité"
[watermark.tooltip.formatting.size]
bullet1 = "Des tailles plus grandes rendent les filigranes plus visibles"
text = "Ajustez la taille de votre filigrane (texte ou image)."
title = "Contrôle de la taille"
[watermark.tooltip.formatting.spacing]
bullet1 = "Espacement horizontal : distance entre les filigranes de gauche à droite"
bullet2 = "Espacement vertical : distance entre les filigranes de haut en bas"
bullet3 = "Des valeurs plus élevées créent des motifs plus espacés"
text = "Ajustez l’espacement entre les filigranes répétés sur la page."
title = "Contrôle de l’espacement"
[watermark.tooltip.language]
text = "Choisissez le paramètre de langue approprié pour garantir un rendu correct des polices de votre texte."
title = "Prise en charge des langues"
[watermark.tooltip.spacing]
bullet1 = "Espacement en largeur : distance horizontale entre les filigranes"
bullet2 = "Espacement en hauteur : distance verticale entre les filigranes"
bullet3 = "Des valeurs plus élevées créent des motifs plus espacés"
text = "Ajustez l’espacement entre les filigranes répétés sur la page."
title = "Contrôle de l’espacement"
[watermark.tooltip.textStyle.color]
bullet1 = "Gris clair (#d3d3d3) pour des filigranes discrets"
bullet2 = "Noir ou couleurs foncées pour un fort contraste"
bullet3 = "Couleurs personnalisées pour l’image de marque"
text = "Choisissez une couleur offrant un bon contraste avec le contenu du document."
title = "Sélection de la couleur"
[watermark.tooltip.textStyle.header]
title = "Style du texte"
[watermark.tooltip.textStyle.language]
text = "Choisissez le paramètre de langue approprié pour garantir un rendu correct des polices."
title = "Prise en charge des langues"
[watermark.tooltip.type.description]
text = "Sélectionnez des filigranes texte ou image selon vos besoins."
title = "Choisissez votre filigrane"
[watermark.tooltip.type.header]
title = "Sélection du type de filigrane"
[watermark.tooltip.type.image]
bullet1 = "Téléversez n’importe quel format d’image"
bullet2 = "Préserve la qualité de l’image"
bullet3 = "Parfait pour les logos et tampons"
text = "Utilisez des logos, tampons ou toute image comme filigrane. Idéal pour l’image de marque et l’identification visuelle."
title = "Filigranes image"
[watermark.tooltip.type.text]
bullet1 = "Polices et langues personnalisables"
bullet2 = "Couleurs et transparence réglables"
bullet3 = "Idéal pour du texte juridique ou de marque"
text = "Parfait pour ajouter des mentions de copyright, noms d’entreprise ou labels de confidentialité. Prend en charge plusieurs langues et des couleurs personnalisées."
title = "Filigranes texte"
[watermark.tooltip.wording.header]
title = "Contenu du texte"
[watermark.tooltip.wording.text]
bullet1 = "Restez concis pour une meilleure lisibilité"
bullet2 = "Exemples courants : « CONFIDENTIEL », « BROUILLON », nom de l’entreprise"
bullet3 = "Les caractères emoji ne sont pas pris en charge et seront filtrés"
text = "Saisissez le texte qui apparaîtra comme filigrane sur l’ensemble du document."
title = "Texte du filigrane"
[watermark.type]
1 = "Texte"
2 = "Image"
[watermark.watermarkType]
image = "Image"
text = "Texte"
[wetSignature.tooltip]
header = "Méthodes de création de signature"
[wetSignature.tooltip.draw]
bullet1 = "Personnaliser la couleur et l’épaisseur du trait"
bullet2 = "Effacer et redessiner jusqu’à ce que vous soyez satisfait"
bullet3 = "Fonctionne sur les appareils tactiles (tablettes, téléphones)"
description = "Créez une signature manuscrite à l’aide de votre souris ou de votre écran tactile. Idéal pour des signatures personnelles et authentiques."
title = "Dessiner la signature"
[wetSignature.tooltip.type]
bullet1 = "Choisir parmi plusieurs polices"
bullet2 = "Personnaliser la taille et la couleur du texte"
bullet3 = "Parfait pour des signatures standardisées"
description = "Générez une signature à partir d’un texte saisi. Rapide et cohérent, adapté aux documents professionnels."
title = "Saisir la signature"
[wetSignature.tooltip.upload]
bullet1 = "Prend en charge PNG, JPG et autres formats d’image"
bullet2 = "Arrière-plans transparents recommandés pour de meilleurs résultats"
bullet3 = "L’image sera redimensionnée pour s’adapter à la zone de signature"
description = "Téléversez une image de signature préalablement créée. Idéal si vous avez une signature numérisée ou un logo d’entreprise."
title = "Téléverser une image de signature"
[workbenchBar]
activeFiles = "Fichiers actifs"
annotations = "Annotations"
applyRedactionsFirst = "Appliquer d’abord les rédactions"
closeAll = "Fermer tous les fichiers"
closePdf = "Fermer le PDF"
closeSelected = "Fermer les fichiers sélectionnés"
deleteSelected = "Supprimer les pages sélectionnées"
deselectAll = "Tout désélectionner"
downloadAll = "Tout télécharger"
downloadSelected = "Télécharger les fichiers sélectionnés"
draw = "Dessiner"
exitRedaction = "Quitter le mode Rédaction"
exportAll = "Exporter le PDF"
exportSelected = "Exporter les pages sélectionnées"
formFill = "Remplir le formulaire"
language = "Langue"
multiTool = "Outil multifonction"
panMode = "Mode panoramique"
print = "Imprimer le PDF"
readAloud = "Lire à voix haute"
readAloudLanguage = "Langue"
readAloudSpeed = "Vitesse"
redact = "Caviarder"
rotateLeft = "Pivoter à gauche"
rotateRight = "Pivoter à droite"
ruler = "Règle / Mesure"
save = "Enregistrer"
saveAll = "Tout enregistrer"
saveAs = "Enregistrer sous"
saveChanges = "Enregistrer les modifications"
search = "Rechercher dans le PDF"
selectAll = "Tout sélectionner"
selectByNumber = "Sélectionner par numéros de pages"
selectLanguage = "Sélectionner la langue"
share = "Partager"
toggleAnnotations = "Basculer la visibilité des annotations"
toggleAttachments = "Basculer les pièces jointes"
toggleBookmarks = "Basculer les signets"
toggleComments = "Commentaires"
toggleLayers = "Basculer les calques"
toggleSidebar = "Basculer la barre latérale"
toggleTheme = "Basculer le thème"
viewer = "Visionneuse"
[workspace]
title = "Espace de travail"
[workspace.people]
active = "Actif"
activeSession = "Session active"
addMembers = "Ajouter des membres"
admin = "Admin"
confirmDelete = "Êtes-vous sûr de vouloir supprimer cet utilisateur ? Cette action ne peut pas être annulée."
confirmUnlock = "Êtes-vous sûr de vouloir déverrouiller ce compte utilisateur ?"
deleteUser = "Supprimer l’utilisateur"
deleteUserError = "Échec de la suppression de l’utilisateur"
deleteUserSuccess = "Utilisateur supprimé avec succès"
description = "Gérer les membres de l’espace de travail et leurs autorisations"
disable = "Désactiver"
disabled = "Désactivé"
editRole = "Modifier le rôle"
enable = "Activer"
loading = "Chargement des personnes..."
locked = "verrouillé"
lockedBadge = "Verrouillé"
loginRequired = "Activez d’abord le mode connexion"
member = "Membre"
noMembersFound = "Aucun membre trouvé"
role = "Rôle"
searchMembers = "Rechercher des membres..."
status = "Statut"
team = "Équipe"
title = "Personnes"
unlockAccount = "Déverrouiller le compte"
unlockUserError = "Échec du déverrouillage du compte utilisateur"
unlockUserSuccess = "Compte utilisateur déverrouillé avec succès"
user = "Utilisateur"
[workspace.people.actions]
label = "Actions"
upgrade = "Mettre à niveau"
[workspace.people.addMember]
authType = "Type d’authentification"
cancel = "Annuler"
error = "Échec de la création de l’utilisateur"
forceMFA = "Forcer la configuration MFA à la prochaine connexion"
forcePasswordChange = "Forcer le changement de mot de passe à la première connexion"
password = "Mot de passe"
passwordPlaceholder = "Saisir le mot de passe"
passwordRequired = "Le mot de passe est requis"
passwordTooShort = "Le mot de passe doit comporter au moins 6 caractères"
role = "Rôle"
submit = "Ajouter le membre"
success = "Utilisateur créé avec succès"
team = "Équipe (facultatif)"
teamPlaceholder = "Sélectionner une équipe"
title = "Ajouter un membre"
username = "Nom d’utilisateur (e-mail)"
usernamePlaceholder = "user@example.com"
usernameRequired = "Le nom d’utilisateur et le mot de passe sont obligatoires"
[workspace.people.authType]
oauth = "OAuth2"
password = "Mot de passe"
saml = "SAML2"
ssoDescription = "L’utilisateur s’authentifiera via le fournisseur SSO"
[workspace.people.changePassword]
action = "Changer le mot de passe"
confirmPassword = "Confirmer le mot de passe"
confirmPlaceholder = "Saisissez à nouveau le nouveau mot de passe"
copiedToClipboard = "Mot de passe copié dans le presse-papiers"
copyFailed = "Échec de la copie du mot de passe"
copyTooltip = "Copier dans le presse-papiers"
emailUnavailable = "L'e-mail de cet utilisateur n'est pas une adresse valide. Les notifications sont désactivées."
error = "Échec de la mise à jour du mot de passe"
forcePasswordChange = "Forcer l'utilisateur à changer son mot de passe à la prochaine connexion"
generatedPreview = "Mot de passe généré :"
generateRandom = "Générer un mot de passe sécurisé"
includePassword = "Inclure le nouveau mot de passe dans l'e-mail"
newPassword = "Nouveau mot de passe"
notifyOnly = "Un e-mail sera envoyé sans le mot de passe, informant l'utilisateur qu'un administrateur l'a modifié."
passwordMismatch = "Les mots de passe ne correspondent pas"
passwordRequired = "Veuillez saisir un nouveau mot de passe"
placeholder = "Saisissez un nouveau mot de passe"
sendEmail = "Envoyer un e-mail à l'utilisateur à propos de ce changement"
smtpDisabled = "Les notifications par e-mail nécessitent l'activation de SMTP dans les paramètres."
submit = "Mettre à jour le mot de passe"
subtitle = "Mettre à jour le mot de passe de"
success = "Mot de passe mis à jour avec succès"
title = "Changer le mot de passe"
[workspace.people.delete]
error = "Échec de la suppression de l’utilisateur"
success = "Utilisateur supprimé avec succès"
[workspace.people.directInvite]
tab = "Création directe"
[workspace.people.editMember]
cancel = "Annuler"
editing = "Modification :"
error = "Échec de la mise à jour de l’utilisateur"
role = "Rôle"
submit = "Mettre à jour le membre"
success = "Utilisateur mis à jour avec succès"
team = "Équipe (facultatif)"
teamPlaceholder = "Sélectionner une équipe"
title = "Modifier le membre"
[workspace.people.emailInvite]
allFailed = "Échec de l’invitation des utilisateurs"
description = "Saisissez ou collez des adresses e-mail ci-dessous, séparées par des virgules. Les utilisateurs recevront leurs identifiants de connexion par e-mail."
emails = "Adresses e-mail"
emailsPlaceholder = "user1@example.com, user2@example.com"
emailsRequired = "Au moins une adresse e-mail est requise"
error = "Échec de l’envoi des invitations"
partialFailure = "Certaines invitations ont échoué"
submit = "Envoyer les invitations"
success = "Utilisateur(s) invité(s) avec succès"
tab = "Invitation par e-mail"
[workspace.people.inviteLink]
copied = "Lien copié dans le presse-papiers"
description = "Générez un lien sécurisé permettant à l’utilisateur de définir son propre mot de passe"
email = "Adresse e-mail"
emailDescription = "Facultatif - laissez vide pour un lien d’invitation général utilisable par n’importe qui"
emailFailed = "Lien d’invitation généré, mais l’envoi de l’e-mail a échoué"
emailFailedDetails = "Erreur : {0}. Veuillez partager le lien d’invitation manuellement."
emailOptional = "Facultatif - laissez vide pour un lien d’invitation général"
emailPlaceholder = "user@example.com (facultatif)"
emailRequired = "L’adresse e-mail est requise"
emailRequiredForSend = "L’adresse e-mail est requise pour envoyer la notification par e-mail"
emailSent = "Lien d’invitation généré et envoyé par e-mail"
error = "Échec de la génération du lien d’invitation"
expiryDescription = "Nombre d’heures avant l’expiration du lien"
expiryHours = "Heures d’expiration"
generate = "Générer le lien"
generated = "Lien d’invitation généré"
sendEmail = "Envoyer le lien d’invitation par e-mail"
sendEmailDescription = "Si activé, le lien d’invitation sera envoyé à l’adresse e-mail spécifiée"
smtpRequired = "SMTP non configuré"
submit = "Générer un lien d’invitation"
success = "Lien d’invitation généré avec succès"
successWithEmail = "Lien d’invitation généré et envoyé par e-mail"
[workspace.people.inviteLinkTab]
tab = "Lien d’invitation"
[workspace.people.inviteMembers]
label = "Inviter des membres"
subtitle = "Saisissez ou collez des e-mails ci-dessous, séparés par des virgules. Votre espace de travail sera facturé par membre."
[workspace.people.inviteMode]
email = "E-mail"
emailDisabled = "Les invitations par e-mail nécessitent la configuration de SMTP et mail.enableInvites=true dans les paramètres"
link = "Lien"
username = "Nom d’utilisateur"
[workspace.people.license]
availableSlots = "Places disponibles"
currentUsage = "Utilise actuellement {{current}} sur {{max}} licences utilisateur"
fromLicense = "de la licence"
grandfathered = "Droits acquis"
grandfatheredShort = "{{count}} droits acquis"
noSlotsAvailable = "Aucune place disponible"
slotsAvailable = "{{count}} place(s) utilisateur disponibles"
users = "utilisateurs"
[workspace.people.mfa]
adminDisableError = "Échec de la désactivation de la MFA pour l'utilisateur"
adminDisableSuccess = "MFA désactivée avec succès pour l'utilisateur"
disableByAdmin = "Désactiver la MFA"
[workspace.people.roleDescriptions]
admin = "Peut gérer les paramètres et inviter des membres, avec un accès administratif complet."
member = "Peut afficher et modifier les fichiers partagés, mais ne peut pas gérer les paramètres de l’espace de travail ni les membres."
user = "Utilisateur"
[workspace.people.toggleEnabled]
error = "Échec de la mise à jour du statut de l’utilisateur"
success = "Statut de l’utilisateur mis à jour avec succès"
[workspace.teams]
actions = "Actions"
addMember = "Ajouter un membre"
backToTeams = "Retour aux équipes"
cannotAddToInternal = "Impossible d’ajouter des membres à l’équipe Internal"
cannotDeleteInternal = "Impossible de supprimer l’équipe Internal"
cannotRemoveFromSystemTeam = "Impossible de retirer de l’équipe système"
cannotRenameInternal = "Impossible de renommer l’équipe Internal"
confirmDelete = "Voulez-vous vraiment supprimer cette équipe ? Cette équipe doit être vide pour être supprimée."
confirmRemove = "Retirer l’utilisateur de cette équipe ?"
createNewTeam = "Créer une nouvelle équipe"
deleteTeamLabel = "Supprimer l’équipe"
description = "Gérez les équipes et organisez les membres de l’espace de travail"
loadError = "Impossible de charger les détails de l'équipe"
loading = "Chargement des équipes..."
loadingDetails = "Chargement des détails de l’équipe..."
memberCount = "{{count}} membres"
noMembers = "Aucun membre dans cette équipe"
noTeamsFound = "Aucune équipe trouvée"
removeMember = "Retirer de l’équipe"
removeMemberError = "Échec du retrait de l’utilisateur de l’équipe"
removeMemberSuccess = "Utilisateur retiré de l’équipe"
renameTeamLabel = "Renommer l’équipe"
system = "Système"
teamName = "Nom de l’équipe"
teamNotFound = "Équipe introuvable"
title = "Équipes"
totalMembers = "Nombre total de membres"
viewTeam = "Voir l’équipe"
[workspace.teams.addMemberToTeam]
addingTo = "Ajout à"
cancel = "Annuler"
currentlyIn = "actuellement dans"
error = "Échec de l’ajout du membre à l’équipe"
selectUser = "Sélectionner un utilisateur"
selectUserPlaceholder = "Choisissez un utilisateur"
selectUserRequired = "Veuillez sélectionner un utilisateur"
submit = "Ajouter un membre"
success = "Membre ajouté à l’équipe avec succès"
title = "Ajouter un membre à l’équipe"
userRequired = "Veuillez sélectionner un utilisateur"
willBeMoved = "Remarque : cet utilisateur sera déplacé de son équipe actuelle vers cette équipe."
[workspace.teams.changeTeam]
changing = "Déplacement"
error = "Échec du changement d’équipe"
label = "Changer d’équipe"
selectTeam = "Sélectionnez une équipe"
selectTeamPlaceholder = "Choisissez une équipe"
selectTeamRequired = "Veuillez sélectionner une équipe"
submit = "Changer d’équipe"
success = "Équipe changée avec succès"
title = "Changer d’équipe"
[workspace.teams.createTeam]
cancel = "Annuler"
error = "Échec de la création de l’équipe"
nameRequired = "Le nom de l’équipe est requis"
submit = "Créer l’équipe"
success = "Équipe créée avec succès"
teamName = "Nom de l’équipe"
teamNamePlaceholder = "Saisissez le nom de l’équipe"
title = "Créer une nouvelle équipe"
[workspace.teams.deleteTeam]
error = "Échec de la suppression de l’équipe. Assurez-vous que l’équipe est vide."
success = "Équipe supprimée avec succès"
teamMustBeEmpty = "L’équipe doit être vide avant la suppression"
[workspace.teams.renameTeam]
cancel = "Annuler"
error = "Échec du renommage de l’équipe"
nameRequired = "Le nom de l’équipe est requis"
newTeamName = "Nouveau nom de l’équipe"
newTeamNamePlaceholder = "Saisissez le nouveau nom de l’équipe"
renaming = "Renommage :"
submit = "Renommer l’équipe"
success = "Équipe renommée avec succès"
title = "Renommer l’équipe"
[zipWarning]
cancel = "Annuler"
confirm = "Extraire"
message = "Ce ZIP contient {{count}} fichiers. Extraire quand même ?"
title = "Fichier ZIP volumineux"