From 92401b9e7fff4b6f5b0bab8e3e16fc87972b13d2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 12 Jan 2025 15:59:46 +0000 Subject: [PATCH 01/10] Bump com.diffplug.spotless from 6.25.0 to 7.0.1 (#2630) Bumps com.diffplug.spotless from 6.25.0 to 7.0.1. [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=com.diffplug.spotless&package-manager=gradle&previous-version=6.25.0&new-version=7.0.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 47411909..f187a90b 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ plugins { id "org.springdoc.openapi-gradle-plugin" version "1.8.0" id "io.swagger.swaggerhub" version "1.3.2" id "edu.sc.seis.launch4j" version "3.0.6" - id "com.diffplug.spotless" version "6.25.0" + id "com.diffplug.spotless" version "7.0.1" id "com.github.jk1.dependency-license-report" version "2.9" //id "nebula.lint" version "19.0.3" id("org.panteleyev.jpackageplugin") version "1.6.0" From 4ef118c4eb5a224430eb27cd7e99808b9bb78e8e Mon Sep 17 00:00:00 2001 From: Anthony Stirling <77850077+Frooodle@users.noreply.github.com> Date: Sun, 12 Jan 2025 16:22:13 +0000 Subject: [PATCH 02/10] Version bump (#2678) # Description Please provide a summary of the changes, including relevant motivation and context. Closes #(issue_number) ## Checklist - [ ] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [ ] I have performed a self-review of my own code - [ ] I have attached images of the change if it is UI based - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] If my code has heavily changed functionality I have updated relevant docs on [Stirling-PDFs doc repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/) - [ ] My changes generate no new warnings - [ ] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only) --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index f187a90b..76de3bf7 100644 --- a/build.gradle +++ b/build.gradle @@ -27,7 +27,7 @@ ext { } group = "stirling.software" -version = "0.36.6" +version = "0.37.0" java { From 5e28023853cddcf2458a965b4d38409e23d856e3 Mon Sep 17 00:00:00 2001 From: Peter Dave Hello Date: Tue, 14 Jan 2025 00:21:32 +0800 Subject: [PATCH 03/10] Update and improve Portuguese locale using Claude 3.5 Sonnet (#2682) # Description Leverage Claude 3.5 Sonnet from Anthropic, a cutting-edge LLM model, to improve translation outcomes. In #2164, the previous use of Qwen2.5 7b (a smaller and less advanced AI model) was an earlier attempt that may have resulted in suboptimal quality and user experience. While relying solely on LLMs for translation is generally not ideal, adopting a more advanced model like Claude 3.5 allows us to address these earlier limitations and ensures significantly better results, even for a language I do not understand. Furthermore, I also use the powerful frontier OpenAI GPT-4o and Google Gemini-1.5-Pro for proofreading, and thoroughly examined and verified line breaks to ensure accuracy and facilitate easier contributions and improvements by others. ## Checklist - [x] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [ x I have performed a self-review of my own code - [ ] I have attached images of the change if it is UI based - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] If my code has heavily changed functionality I have updated relevant docs on [Stirling-PDFs doc repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/) - [x] My changes generate no new warnings - [ ] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only) --- src/main/resources/messages_pt_PT.properties | 1440 +++++++++--------- 1 file changed, 720 insertions(+), 720 deletions(-) diff --git a/src/main/resources/messages_pt_PT.properties b/src/main/resources/messages_pt_PT.properties index cfc4589e..dfc9d3ae 100644 --- a/src/main/resources/messages_pt_PT.properties +++ b/src/main/resources/messages_pt_PT.properties @@ -8,36 +8,36 @@ addPageNumbers.fontName=Nome da Fonte pdfPrompt=Selecione PDF(s) multiPdfPrompt=Selecione PDFs (2+) multiPdfDropPrompt=Selecione (ou arraste e solte) todos os PDFs necessários -imgPrompt=Selecione a(s) imagem(ns) -genericSubmit=Enviar -processTimeWarning=Aviso: esse processo pode levar até um minuto, dependendo do tamanho do ficheiro -pageOrderPrompt=Ordem das páginas (digite uma lista separada por vírgulas de números de página): -pageSelectionPrompt=Seleção de página personalizada (Insira uma lista separada por vírgulas de números de página 1,5,6 ou funções como 2n+1): +imgPrompt=Selecione Imagem(ns) +genericSubmit=Submeter +processTimeWarning=Aviso: Este processo pode demorar até um minuto dependendo do tamanho do ficheiro +pageOrderPrompt=Ordem Personalizada de Páginas (Insira uma lista de números de página separados por vírgulas ou Funções como 2n+1): +pageSelectionPrompt=Seleção Personalizada de Páginas (Insira uma lista de números de página separados por vírgulas 1,5,6 ou Funções como 2n+1): goToPage=Ir true=Verdadeiro false=Falso unknown=Desconhecido -save=Salvar +save=Guardar saveToBrowser=Guardar no Navegador close=Fechar -filesSelected=Ficheiros Selecionados +filesSelected=ficheiros selecionados noFavourites=Nenhum favorito adicionado -downloadComplete=Download Completo -bored=Entediado esperando? +downloadComplete=Download Concluído +bored=Entediado à espera? alphabet=Alfabeto -downloadPdf=Descarregar PDF +downloadPdf=Transferir PDF text=Texto -font=Fonte -selectFillter=-- Selecione -- -pageNum=Número de página +font=Tipo de letra +selectFillter=-- Selecionar -- +pageNum=Número da Página sizes.small=Pequeno sizes.medium=Médio sizes.large=Grande -sizes.x-large=Muito grande -error.pdfPassword=O documento PDF está protegido por senha e a senha não foi fornecida ou está incorreta -delete=Apagar -username=Utilizador -password=Senha +sizes.x-large=Extra Grande +error.pdfPassword=O documento PDF está protegido por palavra-passe e ou não foi fornecida ou está incorreta +delete=Eliminar +username=Nome de utilizador +password=Palavra-passe welcome=Bem-vindo property=Propriedade black=Preto @@ -46,32 +46,32 @@ red=Vermelho green=Verde blue=Azul custom=Personalizar... -WorkInProgess=Trabalho em progresso, pode não funcionar ou apresentar erros. Por favor, relate quaisquer problemas! -poweredBy=Distribuído por +WorkInProgess=Trabalho em progresso, pode não funcionar ou ter erros, Por favor reporte quaisquer problemas! +poweredBy=Desenvolvido por yes=Sim no=Não -changedCredsMessage=Dados alterados! +changedCredsMessage=Credenciais alteradas! notAuthenticatedMessage=Utilizador não autenticado. -userNotFoundMessage=Utilizador inexistente. -incorrectPasswordMessage=Senha incorreta. -usernameExistsMessage=Esse utilizador já existe. -invalidUsernameMessage=Nome de utilizador inválido, o nome de utilizador pode conter apenas letras, números e os seguintes caracteres especiais @._+- ou deve ser um endereço de email válido. -invalidPasswordMessage=A senha não pode estar vazia e não deve ter espaços no início ou final. -confirmPasswordErrorMessage=Nova Senha e Confirmação de Nova Senha devem corresponder. -deleteCurrentUserMessage=Não pode apagar o utilizador atualmente logado. -deleteUsernameExistsMessage=O nome de utilizador não existe e não pode ser apagado. -downgradeCurrentUserMessage=Não é possível fazer downgrade da função do utilizador atual -disabledCurrentUserMessage=O utilizador actual não pode ser desactivado -downgradeCurrentUserLongMessage=Não é possível fazer downgrade da função do utilizador atual. Portanto, o utilizador atual não será mostrado. -userAlreadyExistsOAuthMessage=O utilizador já existe como um utilizador OAuth2. -userAlreadyExistsWebMessage=O utilizador já existe como um utilizador da web. +userNotFoundMessage=Utilizador não encontrado. +incorrectPasswordMessage=A palavra-passe atual está incorreta. +usernameExistsMessage=O novo nome de utilizador já existe. +invalidUsernameMessage=Nome de utilizador inválido, o nome de utilizador só pode conter letras, números e os seguintes caracteres especiais @._+- ou deve ser um endereço de email válido. +invalidPasswordMessage=A palavra-passe não pode estar vazia e não deve ter espaços no início ou no fim. +confirmPasswordErrorMessage=A Nova Palavra-passe e Confirmar Nova Palavra-passe devem coincidir. +deleteCurrentUserMessage=Não é possível eliminar o utilizador atualmente autenticado. +deleteUsernameExistsMessage=O nome de utilizador não existe e não pode ser eliminado. +downgradeCurrentUserMessage=Não é possível rebaixar a função do utilizador atual +disabledCurrentUserMessage=O utilizador atual não pode ser desativado +downgradeCurrentUserLongMessage=Não é possível rebaixar a função do utilizador atual. Por isso, o utilizador atual não será mostrado. +userAlreadyExistsOAuthMessage=O utilizador já existe como utilizador OAuth2. +userAlreadyExistsWebMessage=O utilizador já existe como utilizador web. error=Erro -oops=Oops! +oops=Ups! help=Ajuda goHomepage=Ir para a Página Inicial joinDiscord=Junte-se ao nosso servidor Discord -seeDockerHub=Ver o Docker Hub -visitGithub=Visitar Repositório do Github +seeDockerHub=Ver Docker Hub +visitGithub=Visitar Repositório Github donate=Doar color=Cor sponsor=Patrocinar @@ -81,58 +81,58 @@ page=Página pages=Páginas loading=A carregar... addToDoc=Adicionar ao Documento -reset=Reset -apply=Apply +reset=Repor +apply=Aplicar legal.privacy=Política de Privacidade legal.terms=Termos e Condições legal.accessibility=Acessibilidade legal.cookie=Política de Cookies -legal.impressum=Impressão +legal.impressum=Aviso Legal ############### # Pipeline # ############### -pipeline.header=Pipeline Menu (Beta) -pipeline.uploadButton=Carregar personalizado +pipeline.header=Menu Pipeline (Beta) +pipeline.uploadButton=Carregar Personalizado pipeline.configureButton=Configurar -pipeline.defaultOption=Personalizar +pipeline.defaultOption=Personalizado pipeline.submitButton=Submeter -pipeline.help=Pipeline Help -pipeline.scanHelp=Ajuda ao Escaneamento de Pastas -pipeline.deletePrompt=Tem a certeza que quer eliminar o pipeline? +pipeline.help=Ajuda Pipeline +pipeline.scanHelp=Ajuda Digitalização de Pastas +pipeline.deletePrompt=Tem a certeza que pretende eliminar o pipeline? ###################### # Pipeline Options # ###################### -pipelineOptions.header=Pipeline Configuração -pipelineOptions.pipelineNameLabel=Pipeline Nome -pipelineOptions.saveSettings=Guardar configuração da operação -pipelineOptions.pipelineNamePrompt=Introduza o nome da pipeline aqui -pipelineOptions.selectOperation=Escolher acção -pipelineOptions.addOperationButton=Adicionar acção +pipelineOptions.header=Configuração Pipeline +pipelineOptions.pipelineNameLabel=Nome Pipeline +pipelineOptions.saveSettings=Guardar Definições da Operação +pipelineOptions.pipelineNamePrompt=Insira aqui o nome do pipeline +pipelineOptions.selectOperation=Selecionar Operação +pipelineOptions.addOperationButton=Adicionar operação pipelineOptions.pipelineHeader=Pipeline: -pipelineOptions.saveButton=Descarregar +pipelineOptions.saveButton=Transferir pipelineOptions.validateButton=Validar ######################## # ENTERPRISE EDITION # ######################## enterpriseEdition.button=Atualizar para Pro -enterpriseEdition.warning=Esta funcionalidade está disponível apenas para os utilizadores Pro. -enterpriseEdition.yamlAdvert=Stirling PDF Pro suporta ficheiros de configuração YAML e outras funcionalidades SSO. -enterpriseEdition.ssoAdvert=Procuras mais funcionalidades de gestão de utilizadores? Verifica Stirling PDF Pro +enterpriseEdition.warning=Esta funcionalidade está apenas disponível para utilizadores Pro. +enterpriseEdition.yamlAdvert=O Stirling PDF Pro suporta ficheiros de configuração YAML e outras funcionalidades SSO. +enterpriseEdition.ssoAdvert=Procura mais funcionalidades de gestão de utilizadores? Veja o Stirling PDF Pro ################# # Analytics # ################# -analytics.title=Queres tornar o Stirling PDF melhor? -analytics.paragraph1=O Stirling PDF tem análises de entrada voluntária para nos ajudar a melhorar o produto. Não registamos qualquer informação pessoal ou conteúdo dos ficheiros. -analytics.paragraph2=Considera ativar as análises para nos auxiliar no crescimento do Stirling-PDF e na compreensão dos nossos utilizadores melhor. -analytics.enable=Ativar analítico -analytics.disable=Desativar analítico -analytics.settings=Podes mudar as configurações de análises no ficheiro config/settings.yml +analytics.title=Quer tornar o Stirling PDF melhor? +analytics.paragraph1=O Stirling PDF tem análises opcionais para nos ajudar a melhorar o produto. Não rastreamos qualquer informação pessoal ou conteúdo de ficheiros. +analytics.paragraph2=Por favor considere ativar as análises para ajudar o Stirling-PDF a crescer e permitir-nos compreender melhor os nossos utilizadores. +analytics.enable=Ativar análises +analytics.disable=Desativar análises +analytics.settings=Pode alterar as definições para análises no ficheiro config/settings.yml ############# # NAVBAR # @@ -140,308 +140,308 @@ analytics.settings=Podes mudar as configurações de análises no ficheiro confi navbar.favorite=Favoritos navbar.darkmode=Modo Escuro navbar.language=Idiomas -navbar.settings=Configurações +navbar.settings=Definições navbar.allTools=Ferramentas -navbar.multiTool=Multi Tools -navbar.search=Search +navbar.multiTool=Multi Ferramentas +navbar.search=Pesquisar navbar.sections.organize=Organizar navbar.sections.convertTo=Converter para PDF navbar.sections.convertFrom=Converter de PDF -navbar.sections.security=Assinar & Segurança +navbar.sections.security=Assinatura & Segurança navbar.sections.advance=Avançado -navbar.sections.edit=Visualizar & Editar -navbar.sections.popular=Populares +navbar.sections.edit=Ver & Editar +navbar.sections.popular=Popular ############# # SETTINGS # ############# -settings.title=Configurações +settings.title=Definições settings.update=Atualização disponível settings.updateAvailable={0} é a versão atual instalada. Uma nova versão ({1}) está disponível. -settings.appVersion=Versão da aplicação: -settings.downloadOption.title=Escolha a opção de download (para downloads não compactados de ficheiro único): +settings.appVersion=Versão da Aplicação: +settings.downloadOption.title=Escolha a opção de download (Para downloads de ficheiro único não zipado): settings.downloadOption.1=Abrir na mesma janela settings.downloadOption.2=Abrir em nova janela -settings.downloadOption.3=⇬ Fazer download do ficheiro -settings.zipThreshold=Compactar ficheiros quando o número de ficheiros baixados exceder +settings.downloadOption.3=Transferir ficheiro +settings.zipThreshold=Comprimir ficheiros quando o número de ficheiros transferidos exceder settings.signOut=Terminar Sessão -settings.accountSettings=Configuração de Conta -settings.bored.help=Ativa o jogo da páscoa -settings.cacheInputs.name=Guardar entradas do formulário -settings.cacheInputs.help=Ativar para armazenar entradas anteriores do formulário para futuras sessões +settings.accountSettings=Definições de Conta +settings.bored.help=Ativa jogo easter egg +settings.cacheInputs.name=Guardar inputs do formulário +settings.cacheInputs.help=Ativar para guardar inputs previamente usados para futuras utilizações -changeCreds.title=Alterar senha -changeCreds.header=Alterar dados da sua conta -changeCreds.changePassword=Está a usar as credenciais de login predefinidas. Por favor, introduza uma nova senha -changeCreds.newUsername=Novo Utilizador -changeCreds.oldPassword=Senha Atual -changeCreds.newPassword=Nova Senha -changeCreds.confirmNewPassword=Confirmar Nova Senha +changeCreds.title=Alterar Credenciais +changeCreds.header=Atualizar os Detalhes da sua Conta +changeCreds.changePassword=Está a usar credenciais de login padrão. Por favor insira uma nova palavra-passe +changeCreds.newUsername=Novo Nome de Utilizador +changeCreds.oldPassword=Palavra-passe Atual +changeCreds.newPassword=Nova Palavra-passe +changeCreds.confirmNewPassword=Confirmar Nova Palavra-passe changeCreds.submit=Submeter Alterações -account.title=Definições da Conta -account.accountSettings=Definições da Conta -account.adminSettings=Definições de Administrador - Visualizar e Adicionar Utilizadores -account.userControlSettings=Definições de Controlo do Utilizador +account.title=Definições de Conta +account.accountSettings=Definições de Conta +account.adminSettings=Definições de Administrador - Ver e Adicionar Utilizadores +account.userControlSettings=Definições de Controlo de Utilizador account.changeUsername=Alterar Nome de Utilizador account.newUsername=Novo Nome de Utilizador -account.password=Confirmação da Senha -account.oldPassword=Antiga senha -account.newPassword=Nova senha -account.changePassword=Alterar a Senha -account.confirmNewPassword=Confirmar Nova Senha -account.signOut=Sair do Sistema -account.yourApiKey=Sua Chave API -account.syncTitle=sincronizar definições do navegador com a conta -account.settingsCompare=Comparação das Definições: +account.password=Palavra-passe de Confirmação +account.oldPassword=Palavra-passe antiga +account.newPassword=Nova Palavra-passe +account.changePassword=Alterar Palavra-passe +account.confirmNewPassword=Confirmar Nova Palavra-passe +account.signOut=Terminar Sessão +account.yourApiKey=A sua Chave API +account.syncTitle=Sincronizar definições do navegador com Conta +account.settingsCompare=Comparação de Definições: account.property=Propriedade -account.webBrowserSettings=Configurações do Navegador Web +account.webBrowserSettings=Definições do Navegador Web account.syncToBrowser=Sincronizar Conta -> Navegador account.syncToAccount=Sincronizar Conta <- Navegador -adminUserSettings.title=Definições de Controlo do Utilizador -adminUserSettings.header=Definições de Controlo do Utilizador (Admin) -adminUserSettings.admin=Administrador +adminUserSettings.title=Definições de Controlo de Utilizador +adminUserSettings.header=Definições de Controlo de Utilizador Admin +adminUserSettings.admin=Admin adminUserSettings.user=Utilizador adminUserSettings.addUser=Adicionar Novo Utilizador -adminUserSettings.deleteUser=Apagar Utilizador -adminUserSettings.confirmDeleteUser=Deverá o utilizador ser apagado? -adminUserSettings.confirmChangeUserStatus=Deverá a situação do utilizador ser alterada (desativar/ativar)? +adminUserSettings.deleteUser=Eliminar Utilizador +adminUserSettings.confirmDeleteUser=Deve o utilizador ser eliminado? +adminUserSettings.confirmChangeUserStatus=Deve o utilizador ser desativado/ativado? adminUserSettings.usernameInfo=O nome de utilizador só pode conter letras, números e os seguintes caracteres especiais @._+- ou deve ser um endereço de email válido. -adminUserSettings.roles=Papeis -adminUserSettings.role=Papel +adminUserSettings.roles=Funções +adminUserSettings.role=Função adminUserSettings.actions=Ações adminUserSettings.apiUser=Utilizador API Limitado -adminUserSettings.extraApiUser=Utilizador ADicional API Limitado +adminUserSettings.extraApiUser=Utilizador API Limitado Adicional adminUserSettings.webOnlyUser=Utilizador Apenas Web -adminUserSettings.demoUser=Utilizador Demo (Sem Configurações Personalizadas) +adminUserSettings.demoUser=Utilizador Demo (Sem Definições Personalizadas) adminUserSettings.internalApiUser=Utilizador API Interno -adminUserSettings.forceChange=Forçar utilizador a mudar a senha ao fazer login +adminUserSettings.forceChange=Forçar utilizador a alterar palavra-passe no login adminUserSettings.submit=Guardar Utilizador -adminUserSettings.changeUserRole=Alterar usuário +adminUserSettings.changeUserRole=Alterar Função do Utilizador adminUserSettings.authenticated=Autenticado -adminUserSettings.editOwnProfil=Editar perfil próprio -adminUserSettings.enabledUser=utilizador habilitado -adminUserSettings.disabledUser=utilizador desabilitado -adminUserSettings.activeUsers=Utilizadores Activos: -adminUserSettings.disabledUsers=Utilizadores Desactivados: +adminUserSettings.editOwnProfil=Editar próprio perfil +adminUserSettings.enabledUser=utilizador ativado +adminUserSettings.disabledUser=utilizador desativado +adminUserSettings.activeUsers=Utilizadores Ativos: +adminUserSettings.disabledUsers=Utilizadores Desativados: adminUserSettings.totalUsers=Total de Utilizadores: -adminUserSettings.lastRequest=Última Requisição +adminUserSettings.lastRequest=Último Pedido -database.title=Importação/Exportação de Base de Dados -database.header=Importação/Exportação de Base de Dados +database.title=Importar/Exportar Base de Dados +database.header=Importar/Exportar Base de Dados database.fileName=Nome do Ficheiro database.creationDate=Data de Criação database.fileSize=Tamanho do Ficheiro -database.deleteBackupFile=Apagar Ficheiro de Backup +database.deleteBackupFile=Eliminar Ficheiro de Backup database.importBackupFile=Importar Ficheiro de Backup -database.createBackupFile=Create Backup File -database.downloadBackupFile=Baixar Ficheiro de Backup -database.info_1=Ao importar dados, é crucial assegurar a estrutura correta. Se não estiver seguro do que está a fazer, busque conselhos e apoio de um profissional. Um erro na estrutura pode causar mal funcionamento da aplicação, até mesmo o impossibilitar de executá-la. -database.info_2=O nome do ficheiro não importa ao carregar. Será renomeado posteriormente para seguir o formato backup_user_yyyyMMddHHmm.sql, garantindo uma convenção de nomenclatura consistente. +database.createBackupFile=Criar Ficheiro de Backup +database.downloadBackupFile=Transferir Ficheiro de Backup +database.info_1=Ao importar dados, é crucial assegurar a estrutura correta. Se não tiver certeza do que está a fazer, procure aconselhamento e suporte de um profissional. Um erro na estrutura pode causar mau funcionamento da aplicação, até à completa impossibilidade de executar a aplicação. +database.info_2=O nome do ficheiro não importa ao carregar. Será renomeado depois para seguir o formato backup_user_yyyyMMddHHmm.sql, assegurando uma convenção de nomes consistente. database.submit=Importar Backup -database.importIntoDatabaseSuccessed=Importação no banco de dados concluída com sucesso -database.backupCreated=Database backup successful -database.fileNotFound=File not Found +database.importIntoDatabaseSuccessed=Importação para base de dados bem sucedida +database.backupCreated=Backup da base de dados bem sucedido +database.fileNotFound=Ficheiro não Encontrado database.fileNullOrEmpty=O ficheiro não pode ser nulo ou vazio -database.failedImportFile=Failed Import File -database.notSupported=This function is not available for your database connection. +database.failedImportFile=Falha ao Importar Ficheiro +database.notSupported=Esta função não está disponível para a sua ligação à base de dados. -session.expired=A sessão expirou. Por favor, recarregue a página e tente novamente. -session.refreshPage=Refresh Page +session.expired=A sua sessão expirou. Por favor atualize a página e tente novamente. +session.refreshPage=Atualizar Página ############# # HOME-PAGE # ############# -home.desc=Seu melhor utilitário para suas necessidades de PDF. -home.searchBar=Procurar ferramentas... +home.desc=O seu centro local para todas as suas necessidades de PDF. +home.searchBar=Pesquisar funcionalidades... -home.viewPdf.title=Visualizar PDF -home.viewPdf.desc=Visualizar, adicionar notas, texto ou imagens -viewPdf.tags=visualizat,ler,notas,texto,imagens +home.viewPdf.title=Ver PDF +home.viewPdf.desc=Ver, anotar, adicionar texto ou imagens +viewPdf.tags=ver,ler,anotar,texto,imagem -home.multiTool.title=Multiferramenta de PDF -home.multiTool.desc=Juntar, girar, reorganizar e remover páginas -multiTool.tags=Multi Ferramenta, Operação Múltipla, Interface do Usuário, Clique e Arraste, Front-end, Lado do Cliente +home.multiTool.title=Multi Ferramenta PDF +home.multiTool.desc=Juntar, Rodar, Reorganizar, Dividir e Remover páginas +multiTool.tags=Multi Ferramenta,Multi operação,UI,clicar arrastar,front end,lado cliente,interativo,interagível,mover,eliminar,migrar,dividir home.merge.title=Juntar -home.merge.desc=Juntar facilmente vários PDFs num só. -merge.tags=juntar, Operações de Página, Lado do Servidor +home.merge.desc=Junte facilmente vários PDFs num só. +merge.tags=juntar,Operações de página,Back end,lado servidor home.split.title=Dividir home.split.desc=Dividir PDFs em vários documentos -split.tags=Operações de Página, dividir, Múltiplas Páginas, cortar, Lado do Servidor +split.tags=Operações de página,dividir,Multi Página,cortar,lado servidor -home.rotate.title=Girar -home.rotate.desc=Girar facilmente seus PDFs. -rotate.tags=Lado do Servidor +home.rotate.title=Rodar +home.rotate.desc=Rode facilmente os seus PDFs. +rotate.tags=lado servidor home.imageToPdf.title=Imagem para PDF -home.imageToPdf.desc=Converter uma imagem (PNG, JPEG, GIF) em PDF. -imageToPdf.tags=conversão, img, jpg, imagem, foto +home.imageToPdf.desc=Converter uma imagem (PNG, JPEG, GIF) para PDF. +imageToPdf.tags=conversão,img,jpg,imagem,foto home.pdfToImage.title=PDF para Imagem -home.pdfToImage.desc=Converter um PDF em uma imagem. (PNG, JPG, GIF) -pdfToImage.tags=conversão, img, jpg, imagem, foto +home.pdfToImage.desc=Converter um PDF para uma imagem. (PNG, JPEG, GIF) +pdfToImage.tags=conversão,img,jpg,imagem,foto home.pdfOrganiser.title=Organizar -home.pdfOrganiser.desc=Remover/reorganizar as páginas em qualquer ordem. -pdfOrganiser.tags=duplex, par, ímpar, ordenar, mover +home.pdfOrganiser.desc=Remover/Reorganizar páginas em qualquer ordem +pdfOrganiser.tags=duplex,par,ímpar,ordenar,mover -home.addImage.title=Adicionar Imagem -home.addImage.desc=Adicionar uma imagem em um local definido no PDF (trabalho em andamento) -addImage.tags=img, jpg, imagem, foto +home.addImage.title=Adicionar imagem +home.addImage.desc=Adiciona uma imagem numa localização definida no PDF +addImage.tags=img,jpg,imagem,foto -home.watermark.title=Adicionar Marca d'água -home.watermark.desc=Adicionar uma marca d'água personalizada ao seu documento PDF. -watermark.tags=Texto, repetindo, rótulo, próprio, direitos autorais, marca registrada, img, jpg, imagem, foto +home.watermark.title=Adicionar Marca de Água +home.watermark.desc=Adicionar uma marca de água personalizada ao seu documento PDF. +watermark.tags=Texto,repetindo,etiqueta,próprio,copyright,marca registada,img,jpg,imagem,foto home.permissions.title=Alterar Permissões -home.permissions.desc=Alterar as permissões do seu documento PDF. -permissions.tags=leitura, escrita, edição, impressão +home.permissions.desc=Alterar as permissões do seu documento PDF +permissions.tags=ler,escrever,editar,imprimir home.removePages.title=Remover -home.removePages.desc=Excluir as páginas indesejadas do seu documento PDF. -removePages.tags=Remover páginas, excluir páginas +home.removePages.desc=Eliminar páginas indesejadas do seu documento PDF. +removePages.tags=Remover páginas,eliminar páginas -home.addPassword.title=Adicionar Senha -home.addPassword.desc=Proteger seu documento PDF com uma senha. -addPassword.tags=seguro, segurança +home.addPassword.title=Adicionar Palavra-passe +home.addPassword.desc=Encriptar o seu documento PDF com uma palavra-passe. +addPassword.tags=seguro,segurança -home.removePassword.title=Remover Senha -home.removePassword.desc=Remover a proteção por senha do seu documento PDF. -removePassword.tags=seguro, Descriptografar, segurança, remover senha +home.removePassword.title=Remover Palavra-passe +home.removePassword.desc=Remover proteção por palavra-passe do seu documento PDF. +removePassword.tags=seguro,Desencriptar,segurança,sem palavra-passe,eliminar palavra-passe home.compressPdfs.title=Comprimir -home.compressPdfs.desc=Comprimir PDFs para reduzir o tamanho do ficheiro. -compressPdfs.tags=compactar, pequeno, mínimo +home.compressPdfs.desc=Comprimir PDFs para reduzir o seu tamanho. +compressPdfs.tags=comprimir,pequeno,minúsculo home.changeMetadata.title=Alterar Metadados -home.changeMetadata.desc=Alterar/remover/adicionar metadados de um documento PDF. -changeMetadata.tags=Título, autor, data, criação, hora, editor, produtor, estatísticas +home.changeMetadata.desc=Alterar/Remover/Adicionar metadados de um documento PDF +changeMetadata.tags=Título,autor,data,criação,tempo,editor,produtor,estatísticas home.fileToPDF.title=Converter ficheiro para PDF -home.fileToPDF.desc=Converter praticamente qualquer ficheiro em PDF (DOCX, PNG, XLS, PPT, TXT e mais) -fileToPDF.tags=transformação, formato, documento, imagem, slide, texto, conversão, escritório, documentos, word, excel, powerpoint +home.fileToPDF.desc=Converter quase qualquer ficheiro para PDF (DOCX, PNG, XLS, PPT, TXT e mais) +fileToPDF.tags=transformação,formato,documento,imagem,slide,texto,conversão,escritório,docs,word,excel,powerpoint -home.ocr.title=OCR / Limpeza de Digitalizações -home.ocr.desc=Verifica e detecta texto não seleccionável de um PDF. -ocr.tags=reconhecimento, texto, imagem, digitalização, leitura, identificação, detecção, editável +home.ocr.title=OCR / Limpeza de digitalizações +home.ocr.desc=Limpa digitalizações e deteta texto de imagens dentro de um PDF e readiciona-o como texto. +ocr.tags=reconhecimento,texto,imagem,digitalização,ler,identificar,deteção,editável home.extractImages.title=Extrair Imagens -home.extractImages.desc=Extrair todas as imagens de um PDF e salvá-las em um ficheiro zip. -extractImages.tags=imagem, foto, salvar, ficheiro, zip, captura, coleta +home.extractImages.desc=Extrai todas as imagens de um PDF e guarda-as num zip +extractImages.tags=imagem,foto,guardar,arquivo,zip,capturar,extrair home.pdfToPDFA.title=PDF para PDF/A -home.pdfToPDFA.desc=Converter PDF para o formato PDF/A para armazenamento a longo prazo. -pdfToPDFA.tags=ficheiro, longo prazo, padrão, conversão, armazenamento, preservação +home.pdfToPDFA.desc=Converter PDF para PDF/A para armazenamento a longo prazo +pdfToPDFA.tags=arquivo,longo prazo,padrão,conversão,armazenamento,preservação home.PDFToWord.title=PDF para Word home.PDFToWord.desc=Converter PDF para formatos Word (DOC, DOCX e ODT) -PDFToWord.tags=doc, docx, odt, word, transformação, formato, conversão, escritório, microsoft, ficheiro doc +PDFToWord.tags=doc,docx,odt,word,transformação,formato,conversão,escritório,microsoft,docfile -home.PDFToPresentation.title=PDF para Powerpoint -home.PDFToPresentation.desc=Converter PDF para formatos de apresentação (PPT, PPTX e ODP) -PDFToPresentation.tags=slides, apresentação, escritório, microsoft +home.PDFToPresentation.title=PDF para Apresentação +home.PDFToPresentation.desc=Converter PDF para formatos de Apresentação (PPT, PPTX e ODP) +PDFToPresentation.tags=slides,apresentação,escritório,microsoft -home.PDFToText.title=PDF para Texto/RTF -home.PDFToText.desc=Converter PDF em formato de texto ou RTF -PDFToText.tags=formato rico, formato de texto enriquecido, formato de texto rico +home.PDFToText.title=PDF para RTF (Texto) +home.PDFToText.desc=Converter PDF para formato Texto ou RTF +PDFToText.tags=formato rico,formato texto rico,formato texto rico home.PDFToHTML.title=PDF para HTML -home.PDFToHTML.desc=Converter PDF para o formato HTML -PDFToHTML.tags=conteúdo web, compatível com navegador +home.PDFToHTML.desc=Converter PDF para formato HTML +PDFToHTML.tags=conteúdo web,compatível com navegador home.PDFToXML.title=PDF para XML -home.PDFToXML.desc=Converter PDF para o formato XML -PDFToXML.tags=extração-de-dados,conteúdo-estruturado,interoperabilidade,transformação,converter +home.PDFToXML.desc=Converter PDF para formato XML +PDFToXML.tags=extração-dados,conteúdo-estruturado,interop,transformação,converter -home.ScannerImageSplit.title=Detectar/Dividir Fotos Digitalizadas -home.ScannerImageSplit.desc=Divide várias fotos de dentro de uma imagem/PDF digitalizado -ScannerImageSplit.tags=separar,detecção-automática,digitalizações,foto-múltipla,organizar +home.ScannerImageSplit.title=Detetar/Dividir fotos digitalizadas +home.ScannerImageSplit.desc=Divide múltiplas fotos de dentro de uma foto/PDF +ScannerImageSplit.tags=separar,auto-detetar,digitalizações,multi-foto,organizar home.sign.title=Assinar -home.sign.desc=Adicionar assinatura ao PDF por desenho, texto ou imagem -sign.tags=autorizar,iniciais,assinatura-desenhada,assinatura-de-texto,assinatura-de-imagem +home.sign.desc=Adiciona assinatura ao PDF por desenho, texto ou imagem +sign.tags=autorizar,iniciais,assinatura-desenhada,assinatura-texto,assinatura-imagem home.flatten.title=Achatar -home.flatten.desc=Remover todos os elementos e formulários interativos de um PDF +home.flatten.desc=Remover todos os elementos interativos e formulários de um PDF flatten.tags=estático,desativar,não-interativo,otimizar home.repair.title=Reparar -home.repair.desc=Tentar reparar um PDF corrompido/quebrado +home.repair.desc=Tenta reparar um PDF corrompido/danificado repair.tags=corrigir,restaurar,correção,recuperar home.removeBlanks.title=Remover Páginas em Branco -home.removeBlanks.desc=Detectar e remover páginas em branco de um documento -removeBlanks.tags=limpeza,otimização,sem-conteúdo,organizar +home.removeBlanks.desc=Deteta e remove páginas em branco de um documento +removeBlanks.tags=limpeza,otimizar,sem-conteúdo,organizar -home.removeAnnotations.title=Removee Notas -home.removeAnnotations.desc=Remove todas as notas ou comentário de um PDF. +home.removeAnnotations.title=Remover Anotações +home.removeAnnotations.desc=Remove todos os comentários/anotações de um PDF removeAnnotations.tags=comentários,destaque,notas,marcação,remover home.compare.title=Comparar -home.compare.desc=Comparar e mostrar as diferenças entre 2 documentos PDF -compare.tags=diferenciar,contraste,mudanças,análise +home.compare.desc=Compara e mostra as diferenças entre 2 Documentos PDF +compare.tags=diferenciar,contrastar,alterações,análise home.certSign.title=Assinar com Certificado -home.certSign.desc=Assinar um PDF com um Certificado/Chave (PEM/P12) -certSign.tags=autenticar,PEM,P12,oficial,criptografar +home.certSign.desc=Assina um PDF com um Certificado/Chave (PEM/P12) +certSign.tags=autenticar,PEM,P12,oficial,encriptar -home.removeCertSign.title=Remover Assinatura Certificado -home.removeCertSign.desc=Remova a assinatura do certificado do PDF +home.removeCertSign.title=Remover Assinatura de Certificado +home.removeCertSign.desc=Remove assinatura de certificado do PDF removeCertSign.tags=autenticar,PEM,P12,oficial,desencriptar -home.pageLayout.title=Layout de Múltiplas Páginas -home.pageLayout.desc=Juntar várias páginas de um documento PDF em uma única página +home.pageLayout.title=Layout Multi-Página +home.pageLayout.desc=Juntar múltiplas páginas de um documento PDF numa única página pageLayout.tags=juntar,composto,vista-única,organizar -home.scalePages.title=Ajustar Tamanho/Escala de Página -home.scalePages.desc=Alterar o tamanho/escala da página e/ou seu conteúdo. +home.scalePages.title=Ajustar tamanho/escala de página +home.scalePages.desc=Alterar o tamanho/escala de uma página e/ou os seus conteúdos. scalePages.tags=redimensionar,modificar,dimensão,adaptar -home.pipeline.title=Pipeline (Avançado) -home.pipeline.desc=Executar várias ações em PDFs definindo scripts de pipeline -pipeline.tags=automatizar,sequência,scriptado,processo-em-lote +home.pipeline.title=Pipeline +home.pipeline.desc=Executar múltiplas ações em PDFs definindo scripts pipeline +pipeline.tags=automatizar,sequência,script,processamento-lote home.add-page-numbers.title=Adicionar Números de Página -home.add-page-numbers.desc=Adicionar números de página em todo o documento em um local definido -add-page-numbers.tags=paginar,rotular,organizar,índice +home.add-page-numbers.desc=Adicionar números de página ao longo de um documento numa localização definida +add-page-numbers.tags=paginar,etiqueta,organizar,índice -home.auto-rename.title=Renomear Automaticamente o ficheiro PDF -home.auto-rename.desc=Renomeia automaticamente um ficheiro PDF com base no cabeçalho detectado -auto-rename.tags=detecção-automática,baseado-em-cabeçalho,organizar,relabel +home.auto-rename.title=Renomear Automaticamente Ficheiro PDF +home.auto-rename.desc=Renomeia automaticamente um ficheiro PDF baseado no cabeçalho detetado +auto-rename.tags=auto-deteção,baseado-cabeçalho,organizar,reetiquetar home.adjust-contrast.title=Ajustar Cores/Contraste home.adjust-contrast.desc=Ajustar Contraste, Saturação e Brilho de um PDF -adjust-contrast.tags=correção-de-cor,ajustar,modificar,realçar +adjust-contrast.tags=correção-cor,afinar,modificar,melhorar -home.crop.title=Cortar PDF -home.crop.desc=Cortar um PDF para reduzir o tamanho (mantém o texto!) -crop.tags=aparar,encolher,editar,formato +home.crop.title=Recortar PDF +home.crop.desc=Recortar um PDF para reduzir o seu tamanho (mantém o texto!) +crop.tags=aparar,encolher,editar,forma home.autoSplitPDF.title=Divisão Automática de Páginas -home.autoSplitPDF.desc=Dividir automaticamente um PDF digitalizado com separador de páginas físicas QR Code -autoSplitPDF.tags=baseado-em-QR,separar,segmento-de-digitalização,organizar +home.autoSplitPDF.desc=Dividir automaticamente PDF digitalizado com separador de páginas físico com Código QR +autoSplitPDF.tags=baseado-QR,separar,segmento-digitalização,organizar home.sanitizePdf.title=Sanitizar home.sanitizePdf.desc=Remover scripts e outros elementos de ficheiros PDF -sanitizePdf.tags=limpar,seguro,protegido,remover-ameaças +sanitizePdf.tags=limpar,seguro,segurança,remover-ameaças -home.URLToPDF.title=Converter Site para PDF -home.URLToPDF.desc=Converte qualquer página da internet para um ficheiro PDF -URLToPDF.tags=captura-de-web,salvar-página,web-para-doc,arquivar +home.URLToPDF.title=URL/Website Para PDF +home.URLToPDF.desc=Converte qualquer URL http(s) para PDF +URLToPDF.tags=captura-web,guardar-página,web-para-doc,arquivo home.HTMLToPDF.title=HTML para PDF home.HTMLToPDF.desc=Converte qualquer ficheiro HTML ou zip para PDF @@ -453,94 +453,94 @@ home.MarkdownToPDF.desc=Converte qualquer ficheiro Markdown para PDF MarkdownToPDF.tags=marcação,conteúdo-web,transformação,converter -home.getPdfInfo.title=Obter TODAS as Informações de um PDF -home.getPdfInfo.desc=Obtém todas as informações possíveis de um PDF -getPdfInfo.tags=informações,dados,estatísticas +home.getPdfInfo.title=Obter TODA Informação sobre PDF +home.getPdfInfo.desc=Obtém qualquer e toda informação possível sobre PDFs +getPdfInfo.tags=informação,dados,estatísticas,estatísticas -home.extractPage.title=Extrair Página(s) -home.extractPage.desc=Extrai páginas selecionadas de um PDF +home.extractPage.title=Extrair página(s) +home.extractPage.desc=Extrai páginas selecionadas do PDF extractPage.tags=extrair -home.PdfToSinglePage.title=PDF para Página Única Grande -home.PdfToSinglePage.desc=Combina todas as páginas de um PDF em uma única página grande +home.PdfToSinglePage.title=Página Única Grande +home.PdfToSinglePage.desc=Junta todas as páginas do PDF numa única página grande PdfToSinglePage.tags=página única home.showJS.title=Mostrar Javascript -home.showJS.desc=Procura e exibe qualquer JavaScript injetado em um PDF -showJS.tags=JavaScript +home.showJS.desc=Procura e mostra qualquer JS injetado num PDF +showJS.tags=JS -home.autoRedact.title=Edição automática -home.autoRedact.desc=Edição automática (marca a preto) baseada numa expressão indicada de um PDF. -autoRedact.tags=Esconder,censurar,marcador,tampado,máscara,oculto +home.autoRedact.title=Redação Automática +home.autoRedact.desc=Redação Automática (Oculta) texto num PDF baseado em texto de entrada +autoRedact.tags=Redação,Ocultar,ocultar,preto,marcador,oculto -home.redact.title=Manual Redaction -home.redact.desc=Redacts a PDF based on selected text, drawn shapes and/or selected page(s) -redact.tags=Redact,Hide,black out,black,marker,hidden,manual +home.redact.title=Redação Manual +home.redact.desc=Redacta um PDF baseado em texto selecionado, formas desenhadas e/ou página(s) selecionada(s) +redact.tags=Redação,Ocultar,ocultar,preto,marcador,oculto,manual home.tableExtraxt.title=PDF para CSV -home.tableExtraxt.desc=Extrai tabelas de um PDF convertendo em um CSV -tableExtraxt.tags=CSV,Tabelas Extracção,extracção,conversão +home.tableExtraxt.desc=Extrai Tabelas de um PDF convertendo para CSV +tableExtraxt.tags=CSV,Extração de Tabela,extrair,converter -home.autoSizeSplitPDF.title=Dividir automaticamente por Tamanho/Páginas -home.autoSizeSplitPDF.desc=Divide um PDF em diversos documentos com base no tamanho ou número de páginas +home.autoSizeSplitPDF.title=Divisão Automática por Tamanho/Contagem +home.autoSizeSplitPDF.desc=Dividir um único PDF em múltiplos documentos baseado em tamanho, contagem de páginas, ou contagem de documentos autoSizeSplitPDF.tags=pdf,dividir,documento,organização home.overlay-pdfs.title=Sobrepor PDFs -home.overlay-pdfs.desc=Sobrepor um PDF em cima de outro PDF +home.overlay-pdfs.desc=Sobrepõe PDFs em cima de outro PDF overlay-pdfs.tags=Sobrepor home.split-by-sections.title=Dividir PDF por Secções -home.split-by-sections.desc=Divide cada páginas de um PDF em secções horizontais ou verticais mais pequenas -split-by-sections.tags=Dividir secções, Dividir, Personalizar +home.split-by-sections.desc=Divide cada página de um PDF em secções horizontais e verticais mais pequenas +split-by-sections.tags=Dividir Secção, Dividir, Personalizar -home.AddStampRequest.title=Adicionar carimbo em um PDF -home.AddStampRequest.desc=Adicionar um carimbo de texto ou imagem -AddStampRequest.tags=Carimbo, Adicionar imagem, imagem central, Marca d'água, PDF, Embebido, Personalizado +home.AddStampRequest.title=Adicionar Carimbo a PDF +home.AddStampRequest.desc=Adicionar carimbos de texto ou adicionar carimbos de imagem em localizações definidas +AddStampRequest.tags=Carimbo, Adicionar imagem, imagem central, Marca de água, PDF, Incorporar, Personalizar home.PDFToBook.title=PDF para Livro -home.PDFToBook.desc=Converte PDF em formatos de livro/comic utilizando o Calibre -PDFToBook.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle +home.PDFToBook.desc=Converte PDF para formatos Livro/Banda Desenhada usando calibre +PDFToBook.tags=Livro,Banda Desenhada,Calibre,Converter,manga,amazon,kindle home.BookToPDF.title=Livro para PDF -home.BookToPDF.desc=Converte formatos de livros/comics em PDF utilizando o Calibre -BookToPDF.tags=Book,Comic,Calibre,Convert,manga,amazon,kindle +home.BookToPDF.desc=Converte formatos de Livros/Bandas Desenhadas para PDF usando calibre +BookToPDF.tags=Livro,Banda Desenhada,Calibre,Converter,manga,amazon,kindle home.removeImagePdf.title=Remover imagem -home.removeImagePdf.desc=Remova imagem do PDF para reduzir o tamanho do ficheiro -removeImagePdf.tags=Remover Imagem,operações de página,lado de servidor +home.removeImagePdf.desc=Remover imagem do PDF para reduzir tamanho do ficheiro +removeImagePdf.tags=Remover Imagem,operações de página,lado servidor home.splitPdfByChapters.title=Dividir PDF por Capítulos -home.splitPdfByChapters.desc=Divida um PDF em vários arquivos com base na estrutura dos capítulos. +home.splitPdfByChapters.desc=Dividir um PDF em múltiplos ficheiros baseado na sua estrutura de capítulos. splitPdfByChapters.tags=dividir,capítulos,marcadores,organizar -home.validateSignature.title=Validate PDF Signature -home.validateSignature.desc=Verify digital signatures and certificates in PDF documents -validateSignature.tags=signature,verify,validate,pdf,certificate,digital signature,Validate Signature,Validate certificate +home.validateSignature.title=Validar Assinatura PDF +home.validateSignature.desc=Verificar assinaturas digitais e certificados em documentos PDF +validateSignature.tags=assinatura,verificar,validar,pdf,certificado,assinatura digital,Validar Assinatura,Validar certificado #replace-invert-color -replace-color.title=Replace-Invert-Color -replace-color.header=Substituir-Inverter Cor do PDF -home.replaceColorPdf.title=Replace and Invert Color -home.replaceColorPdf.desc=Substituir cor pelo texto e fundo em PDF e inverter toda a cor do PDF para reduzir o tamanho do ficheiro -replaceColorPdf.tags=Substituição de Cor, Operações de Página, Back End, lado do servidor -replace-color.selectText.1=Opções de Substituição ou Inversão de Cor -replace-color.selectText.2=Padrão (Cor de contraste alto padrão) -replace-color.selectText.3=Personalizado ( cores personalizadas) -replace-color.selectText.4=Inversão Total (inverter todas as cores) -replace-color.selectText.5=Opções de cor de contraste alto -replace-color.selectText.6=Texto branco sobre fundo preto -replace-color.selectText.7=Texto preto sobre fundo branco -replace-color.selectText.8=Texto amarelo sobre fundo preto -replace-color.selectText.9=Texto verde sobre fundo preto +replace-color.title=Substituir-Inverter-Cor +replace-color.header=Substituir-Inverter Cor PDF +home.replaceColorPdf.title=Substituir e Inverter Cor +home.replaceColorPdf.desc=Substituir cor para texto e fundo em PDF e inverter cor completa do pdf para reduzir tamanho do ficheiro +replaceColorPdf.tags=Substituir Cor,operações de página,Back end,lado servidor +replace-color.selectText.1=Opções de Substituir ou Inverter cor +replace-color.selectText.2=Predefinição(Cores de alto contraste predefinidas) +replace-color.selectText.3=Personalizado(Cores personalizadas) +replace-color.selectText.4=Inversão Total(Inverter todas as cores) +replace-color.selectText.5=Opções de cor de alto contraste +replace-color.selectText.6=texto branco em fundo preto +replace-color.selectText.7=Texto preto em fundo branco +replace-color.selectText.8=Texto amarelo em fundo preto +replace-color.selectText.9=Texto verde em fundo preto replace-color.selectText.10=Escolher cor do texto -replace-color.selectText.11=Escolher cor de fundo +replace-color.selectText.11=Escolher cor do fundo replace-color.submit=Substituir @@ -551,177 +551,177 @@ replace-color.submit=Substituir # # ########################### #login -login.title=Aceder -login.header=Aceder -login.signin=Aceder -login.rememberme=Lembrar dados -login.invalid=Utilizador ou senha inválidos. +login.title=Iniciar sessão +login.header=Iniciar sessão +login.signin=Iniciar sessão +login.rememberme=Lembrar-me +login.invalid=Nome de utilizador ou palavra-passe inválidos. login.locked=A sua conta foi bloqueada. -login.signinTitle=Introduza os seus dados de acesso -login.ssoSignIn=Iniciar sessão através de início de sessão único -login.oauth2AutoCreateDisabled=OAUTH2 Criação Automática de Utilizador Desativada -login.oauth2AdminBlockedUser=A registo ou login de utilizadores não-registados está atualmente bloqueado. Por favor, contacte o administrador. -login.oauth2RequestNotFound=Solicitação de autorização não encontrada -login.oauth2InvalidUserInfoResponse=Resposta de informações do utilizador inválida -login.oauth2invalidRequest=Requisito inválido -login.oauth2AccessDenied=Acesso negado -login.oauth2InvalidTokenResponse=Resposta de token inválida -login.oauth2InvalidIdToken=Token de identificação inválido -login.relyingPartyRegistrationNotFound=No relying party registration found -login.userIsDisabled=O utilizador foi desativado, o login está atualmente bloqueado com esta conta. Por favor, contacte o administrador. -login.alreadyLoggedIn=Já está logado em -login.alreadyLoggedIn2=dispositivos. Por favor, faça logout nos dispositivos e tente novamente. -login.toManySessions=Tem sessões ativas demais +login.signinTitle=Por favor inicie sessão +login.ssoSignIn=Login via Single Sign-on +login.oauth2AutoCreateDisabled=Criação Automática de Utilizador OAUTH2 Desativada +login.oauth2AdminBlockedUser=O registo ou login de utilizadores não registados está atualmente bloqueado. Por favor contacte o administrador. +login.oauth2RequestNotFound=Pedido de autorização não encontrado +login.oauth2InvalidUserInfoResponse=Resposta de Informação de Utilizador Inválida +login.oauth2invalidRequest=Pedido Inválido +login.oauth2AccessDenied=Acesso Negado +login.oauth2InvalidTokenResponse=Resposta de Token Inválida +login.oauth2InvalidIdToken=Token de Id Inválido +login.relyingPartyRegistrationNotFound=Nenhum registo de relying party encontrado +login.userIsDisabled=O utilizador está desativado, o login está atualmente bloqueado com este nome de utilizador. Por favor contacte o administrador. +login.alreadyLoggedIn=Já tem sessão iniciada em +login.alreadyLoggedIn2=dispositivos. Por favor termine sessão nesses dispositivos e tente novamente. +login.toManySessions=Tem demasiadas sessões ativas #auto-redact -autoRedact.title=Edição Automática -autoRedact.header=Edição Automática +autoRedact.title=Redação Automática +autoRedact.header=Redação Automática autoRedact.colorLabel=Cor -autoRedact.textsToRedactLabel=Texto para editar (separado por linhas) -autoRedact.textsToRedactPlaceholder=e.g. \nConfidencial \nTop-Secret +autoRedact.textsToRedactLabel=Texto a redactar (separado por linhas) +autoRedact.textsToRedactPlaceholder=ex. \nConfidencial \nTop-Secret autoRedact.useRegexLabel=Usar Regex -autoRedact.wholeWordSearchLabel=Pesquisa de palavras inteiras -autoRedact.customPaddingLabel=Preenchimento extra personalizado -autoRedact.convertPDFToImageLabel=Converter PDF em imagem (usado para remover texto atrás de caixas) +autoRedact.wholeWordSearchLabel=Pesquisa de Palavra Completa +autoRedact.customPaddingLabel=Preenchimento Extra Personalizado +autoRedact.convertPDFToImageLabel=Converter PDF para PDF-Imagem (Usado para remover texto por trás da caixa) autoRedact.submitButton=Submeter #redact -redact.title=Manual Redaction -redact.header=Manual Redaction -redact.submit=Redact -redact.textBasedRedaction=Text based Redaction -redact.pageBasedRedaction=Page-based Redaction -redact.convertPDFToImageLabel=Convert PDF to PDF-Image (Used to remove text behind the box) -redact.pageRedactionNumbers.title=Pages -redact.pageRedactionNumbers.placeholder=(e.g. 1,2,8 or 4,7,12-16 or 2n-1) -redact.redactionColor.title=Redaction Color -redact.export=Export -redact.upload=Upload -redact.boxRedaction=Box draw redaction +redact.title=Redação Manual +redact.header=Redação Manual +redact.submit=Redactar +redact.textBasedRedaction=Redação baseada em Texto +redact.pageBasedRedaction=Redação baseada em Página +redact.convertPDFToImageLabel=Converter PDF para PDF-Imagem (Usado para remover texto por trás da caixa) +redact.pageRedactionNumbers.title=Páginas +redact.pageRedactionNumbers.placeholder=(ex. 1,2,8 ou 4,7,12-16 ou 2n-1) +redact.redactionColor.title=Cor de Redação +redact.export=Exportar +redact.upload=Carregar +redact.boxRedaction=Redação por desenho de caixa redact.zoom=Zoom -redact.zoomIn=Zoom in -redact.zoomOut=Zoom out -redact.nextPage=Next Page -redact.previousPage=Previous Page -redact.toggleSidebar=Toggle Sidebar -redact.showThumbnails=Show Thumbnails -redact.showDocumentOutline=Show Document Outline (double-click to expand/collapse all items) -redact.showAttatchments=Show Attachments -redact.showLayers=Show Layers (double-click to reset all layers to the default state) -redact.colourPicker=Colour Picker -redact.findCurrentOutlineItem=Find current outline item +redact.zoomIn=Aumentar zoom +redact.zoomOut=Diminuir zoom +redact.nextPage=Próxima Página +redact.previousPage=Página Anterior +redact.toggleSidebar=Alternar Barra Lateral +redact.showThumbnails=Mostrar Miniaturas +redact.showDocumentOutline=Mostrar Esquema do Documento (duplo clique para expandir/colapsar todos os itens) +redact.showAttatchments=Mostrar Anexos +redact.showLayers=Mostrar Camadas (duplo clique para repor todas as camadas para o estado predefinido) +redact.colourPicker=Seletor de Cor +redact.findCurrentOutlineItem=Encontrar item atual do esquema #showJS -showJS.title=Exibir JavaScript -showJS.header=Exibir JavaScript -showJS.downloadJS=Download do JavaScript -showJS.submit=Exibir +showJS.title=Mostrar Javascript +showJS.header=Mostrar Javascript +showJS.downloadJS=Transferir Javascript +showJS.submit=Mostrar #pdfToSinglePage -pdfToSinglePage.title=PDF para Página Única -pdfToSinglePage.header=PDF para Página Única -pdfToSinglePage.submit=Converter para Página Única +pdfToSinglePage.title=PDF Para Página Única +pdfToSinglePage.header=PDF Para Página Única +pdfToSinglePage.submit=Converter Para Página Única #pageExtracter pageExtracter.title=Extrair Páginas pageExtracter.header=Extrair Páginas pageExtracter.submit=Extrair -pageExtracter.placeholder=(ex: 1,2,8 ou 4,7,12-16 ou 2n-1) +pageExtracter.placeholder=(ex. 1,2,8 ou 4,7,12-16 ou 2n-1) #getPdfInfo -getPdfInfo.title=Obter Informações do PDF -getPdfInfo.header=Obter Informações do PDF -getPdfInfo.submit=Obter Informações -getPdfInfo.downloadJson=Download JSON +getPdfInfo.title=Obter Informação do PDF +getPdfInfo.header=Obter Informação do PDF +getPdfInfo.submit=Obter Informação +getPdfInfo.downloadJson=Transferir JSON #markdown-to-pdf -MarkdownToPDF.title=Markdown para PDF -MarkdownToPDF.header=Markdown para PDF +MarkdownToPDF.title=Markdown Para PDF +MarkdownToPDF.header=Markdown Para PDF MarkdownToPDF.submit=Converter -MarkdownToPDF.help=Trabalho em andamento -MarkdownToPDF.credit=Usa o WeasyPrint +MarkdownToPDF.help=Trabalho em progresso +MarkdownToPDF.credit=Usa WeasyPrint #url-to-pdf -URLToPDF.title=URL para PDF -URLToPDF.header=URL para PDF +URLToPDF.title=URL Para PDF +URLToPDF.header=URL Para PDF URLToPDF.submit=Converter -URLToPDF.credit=Usa o WeasyPrint +URLToPDF.credit=Usa WeasyPrint #html-to-pdf -HTMLToPDF.title=HTML para PDF -HTMLToPDF.header=HTML para PDF +HTMLToPDF.title=HTML Para PDF +HTMLToPDF.header=HTML Para PDF HTMLToPDF.help=Aceita ficheiros HTML e ZIPs contendo html/css/imagens etc necessários HTMLToPDF.submit=Converter -HTMLToPDF.credit=Usa o WeasyPrint -HTMLToPDF.zoom=Nível de zoom para exibição do site. -HTMLToPDF.pageWidth=Largura da página em centímetros. (Vazio para padrão) -HTMLToPDF.pageHeight=Altura da página em centímetros. (BVazio para padrão) -HTMLToPDF.marginTop=Margem superior da página em milímetros. (Vazio para padrão) -HTMLToPDF.marginBottom=Margem inferior da página em milímetros. (Vazio para padrão) -HTMLToPDF.marginLeft=Margem esquerda da página em milímetros. (Vazio para padrão) -HTMLToPDF.marginRight=Margem direita da página em milímetros. (Vazio para padrão) -HTMLToPDF.printBackground=Renderize o plano de fundo dos wesites. -HTMLToPDF.defaultHeader=Habilitar cabeçalho padrão (Nome e número de página) -HTMLToPDF.cssMediaType=Alterar o CSS da página. +HTMLToPDF.credit=Usa WeasyPrint +HTMLToPDF.zoom=Nível de zoom para mostrar o website. +HTMLToPDF.pageWidth=Largura da página em centímetros. (Em branco para predefinição) +HTMLToPDF.pageHeight=Altura da página em centímetros. (Em branco para predefinição) +HTMLToPDF.marginTop=Margem superior da página em milímetros. (Em branco para predefinição) +HTMLToPDF.marginBottom=Margem inferior da página em milímetros. (Em branco para predefinição) +HTMLToPDF.marginLeft=Margem esquerda da página em milímetros. (Em branco para predefinição) +HTMLToPDF.marginRight=Margem direita da página em milímetros. (Em branco para predefinição) +HTMLToPDF.printBackground=Renderizar o fundo dos websites. +HTMLToPDF.defaultHeader=Ativar Cabeçalho Predefinido (Nome e número de página) +HTMLToPDF.cssMediaType=Alterar o tipo de media CSS da página. HTMLToPDF.none=Nenhum HTMLToPDF.print=Imprimir HTMLToPDF.screen=Ecrã #AddStampRequest -AddStampRequest.header=Carimbo PDF -AddStampRequest.title=Carimbo PDF -AddStampRequest.stampType=Tipo do Carimbo +AddStampRequest.header=Carimbar PDF +AddStampRequest.title=Carimbar PDF +AddStampRequest.stampType=Tipo de Carimbo AddStampRequest.stampText=Texto do Carimbo AddStampRequest.stampImage=Imagem do Carimbo AddStampRequest.alphabet=Alfabeto -AddStampRequest.fontSize=Tamanho do(a) Tipo de Letra/Imagem +AddStampRequest.fontSize=Tamanho da Fonte/Imagem AddStampRequest.rotation=Rotação AddStampRequest.opacity=Opacidade AddStampRequest.position=Posição -AddStampRequest.overrideX=Substituir a Coordenada X -AddStampRequest.overrideY=Substituir a Coordenada Y -AddStampRequest.customMargin=Personalizar a Margem -AddStampRequest.customColor=Personalizar a cor do texto +AddStampRequest.overrideX=Sobrepor Coordenada X +AddStampRequest.overrideY=Sobrepor Coordenada Y +AddStampRequest.customMargin=Margem Personalizada +AddStampRequest.customColor=Cor de Texto Personalizada AddStampRequest.submit=Submeter #sanitizePDF sanitizePDF.title=Sanitizar PDF sanitizePDF.header=Sanitizar um ficheiro PDF -sanitizePDF.selectText.1=Remover acções de JavaScript -sanitizePDF.selectText.2=Remover ficheiros embutidos +sanitizePDF.selectText.1=Remover ações JavaScript +sanitizePDF.selectText.2=Remover ficheiros incorporados sanitizePDF.selectText.3=Remover metadados -sanitizePDF.selectText.4=Remover links -sanitizePDF.selectText.5=Remover fontes +sanitizePDF.selectText.4=Remover ligações +sanitizePDF.selectText.5=Remover tipos de letra sanitizePDF.submit=Sanitizar PDF #addPageNumbers addPageNumbers.title=Adicionar Números de Página addPageNumbers.header=Adicionar Números de Página -addPageNumbers.selectText.1=Seleccionar ficheiro PDF: +addPageNumbers.selectText.1=Selecionar ficheiro PDF: addPageNumbers.selectText.2=Tamanho da Margem addPageNumbers.selectText.3=Posição addPageNumbers.selectText.4=Número Inicial addPageNumbers.selectText.5=Páginas a Numerar addPageNumbers.selectText.6=Texto Personalizado -addPageNumbers.customTextDesc=Texto personalizado -addPageNumbers.numberPagesDesc=Quais as páginas a numerar. (padrão 'todas', ex: 1-5 ou 2,5,9 etc) -addPageNumbers.customNumberDesc=O padrão é {n}, também aceita 'Pagina {n} de {total}', 'Texto-{n}', '{filename}-{n} +addPageNumbers.customTextDesc=Texto Personalizado +addPageNumbers.numberPagesDesc=Quais páginas a numerar, predefinição 'todas', também aceita 1-5 ou 2,5,9 etc +addPageNumbers.customNumberDesc=Predefinição {n}, também aceita 'Página {n} de {total}', 'Texto-{n}', '{filename}-{n} addPageNumbers.submit=Adicionar Números de Página #auto-rename auto-rename.title=Renomear Automático -auto-rename.header=Renomear Automático de PDF +auto-rename.header=Renomear PDF Automaticamente auto-rename.submit=Renomear Automático @@ -731,28 +731,28 @@ adjustContrast.header=Ajustar Contraste adjustContrast.contrast=Contraste: adjustContrast.brightness=Brilho: adjustContrast.saturation=Saturação: -adjustContrast.download=Download +adjustContrast.download=Transferir #crop -crop.title=Cortar -crop.header=Cortar PDF -crop.submit=Enviar +crop.title=Recortar +crop.header=Recortar PDF +crop.submit=Submeter #autoSplitPDF autoSplitPDF.title=Divisão Automática de PDF autoSplitPDF.header=Divisão Automática de PDF -autoSplitPDF.description=Imprima, insira, digitalize, faça o upload e deixe que o sistema divida seus documentos automaticamente. Nenhuma classificação manual necessária. -autoSplitPDF.selectText.1=Imprima algumas folhas divisórias abaixo. -autoSplitPDF.selectText.2=Digitalize todos os seus documentos de uma vez, inserindo a folha divisória entre eles. -autoSplitPDF.selectText.3=Faça o upload do único ficheiro PDF grande digitalizado e os sistema faz o restante trabalho. -autoSplitPDF.selectText.4=As páginas divisórias são detectadas e removidas automaticamente, garantindo um documento final organizado. -autoSplitPDF.formPrompt=Enviar PDF contendo folhas divisórias: +autoSplitPDF.description=Imprima, Insira, Digitalize, carregue, e deixe-nos separar automaticamente os seus documentos. Sem necessidade de organização manual. +autoSplitPDF.selectText.1=Imprima algumas folhas separadoras abaixo (Preto e branco é suficiente). +autoSplitPDF.selectText.2=Digitalize todos os seus documentos de uma vez inserindo a folha separadora entre eles. +autoSplitPDF.selectText.3=Carregue o único ficheiro PDF digitalizado grande e deixe o Stirling PDF tratar do resto. +autoSplitPDF.selectText.4=As páginas separadoras são automaticamente detetadas e removidas, garantindo um documento final organizado. +autoSplitPDF.formPrompt=Submeter PDF contendo separadores de página Stirling-PDF: autoSplitPDF.duplexMode=Modo Duplex (Digitalização frente e verso) -autoSplitPDF.dividerDownload1=Download 'Folha Divisória Automática (mínima).pdf' -autoSplitPDF.dividerDownload2=Download 'Folha Divisória Automática (com instruções).pdf' -autoSplitPDF.submit=Enviar +autoSplitPDF.dividerDownload1=Transferir 'Separador de Divisão Automática (minimal).pdf' +autoSplitPDF.dividerDownload2=Transferir 'Separador de Divisão Automática (com instruções).pdf' +autoSplitPDF.submit=Submeter #pipeline @@ -760,44 +760,44 @@ pipeline.title=Pipeline #pageLayout -pageLayout.title=Layout de Múltiplas Páginas -pageLayout.header=Layout de Múltiplas Páginas +pageLayout.title=Layout Multi-Página +pageLayout.header=Layout Multi-Página pageLayout.pagesPerSheet=Páginas por folha: -pageLayout.addBorder=Adicionar Contorno -pageLayout.submit=Enviar +pageLayout.addBorder=Adicionar Bordas +pageLayout.submit=Submeter #scalePages -scalePages.title=Ajustar Tamanho/Escala da Página -scalePages.header=Ajustar Tamanho/Escala da Página +scalePages.title=Ajustar escala de página +scalePages.header=Ajustar escala de página scalePages.pageSize=Tamanho de uma página do documento. -scalePages.keepPageSize=Tamanho original -scalePages.scaleFactor=Fator de zoom (corte) de uma página. -scalePages.submit=Enviar +scalePages.keepPageSize=Tamanho Original +scalePages.scaleFactor=Nível de zoom (recorte) de uma página. +scalePages.submit=Submeter #certSign -certSign.title=Assinatura com Certificado -certSign.header=Assine um PDF com o seu certificado (Em desenvolvimento) -certSign.selectPDF=Selecione um ficheiro PDF para assinatura: -certSign.jksNote=Nota: Se o seu tipo de certificado não estiver listado abaixo, converta-o em um arquivo Java Keystore (.jks) usando a ferramenta de linha de comando keytool. Em seguida, escolha a opção de arquivo .jks abaixo. -certSign.selectKey=Selecione o seu ficheiro de chave privada (formato PKCS#8, pode ser .pem ou .der): -certSign.selectCert=Selecione o seu ficheiro de certificado (formato X.509, pode ser .pem ou .der): -certSign.selectP12=Selecione o seu ficheiro de armazenamento de chave PKCS#12 (.p12 ou .pfx) (opcional, se fornecido, deve conter a sua chave privada e certificado): -certSign.selectJKS=Selecione o seu Arquivo de Java Keystore (.jks ou .keystore): +certSign.title=Assinatura de Certificado +certSign.header=Assinar um PDF com o seu certificado (Trabalho em progresso) +certSign.selectPDF=Selecione um Ficheiro PDF para Assinar: +certSign.jksNote=Nota: Se o seu tipo de certificado não estiver listado abaixo, por favor converta-o para um ficheiro Java Keystore (.jks) usando a ferramenta de linha de comando keytool. Depois, escolha a opção de ficheiro .jks abaixo. +certSign.selectKey=Selecione o Seu Ficheiro de Chave Privada (formato PKCS#8, pode ser .pem ou .der): +certSign.selectCert=Selecione o Seu Ficheiro de Certificado (formato X.509, pode ser .pem ou .der): +certSign.selectP12=Selecione o Seu Ficheiro Keystore PKCS#12 (.p12 ou .pfx) (Opcional, Se fornecido, deve conter a sua chave privada e certificado): +certSign.selectJKS=Selecione o Seu Ficheiro Java Keystore (.jks ou .keystore): certSign.certType=Tipo de Certificado -certSign.password=Digite a senha do seu armazenamento de chave ou chave privada (se aplicável): +certSign.password=Introduza a Sua Palavra-passe de Keystore ou Chave Privada (Se Existir): certSign.showSig=Mostrar Assinatura certSign.reason=Razão certSign.location=Localização certSign.name=Nome -certSign.showLogo=Mostrar Logotipo +certSign.showLogo=Mostrar Logo certSign.submit=Assinar PDF #removeCertSign -removeCertSign.title=Remover Assinatura Digital -removeCertSign.header=Remova a assinatura digital do PDF +removeCertSign.title=Remover Assinatura de Certificado +removeCertSign.header=Remover o certificado digital do PDF removeCertSign.selectPDF=Selecione um ficheiro PDF: removeCertSign.submit=Remover Assinatura @@ -805,16 +805,16 @@ removeCertSign.submit=Remover Assinatura #removeBlanks removeBlanks.title=Remover Páginas em Branco removeBlanks.header=Remover Páginas em Branco -removeBlanks.threshold=Limiar: -removeBlanks.thresholdDesc=Limiar para determinar o quão branco um pixel branco deve ser -removeBlanks.whitePercent=Porcentagem de Branco (%): -removeBlanks.whitePercentDesc=Porcentagem da página que deve ser branca para ser removida +removeBlanks.threshold=Limiar de Brancura de Pixel: +removeBlanks.thresholdDesc=Limiar para determinar quão branco um pixel branco deve ser para ser classificado como 'Branco'. 0 = Preto, 255 branco puro. +removeBlanks.whitePercent=Percentagem de Branco (%): +removeBlanks.whitePercentDesc=Percentagem da página que deve ser pixels 'brancos' para ser removida removeBlanks.submit=Remover Páginas em Branco #removeAnnotations -removeAnnotations.title=Remover Notas -removeAnnotations.header=Remover Notas +removeAnnotations.title=Remover Anotações +removeAnnotations.header=Remover Anotações removeAnnotations.submit=Remover @@ -826,43 +826,43 @@ compare.highlightColor.2=Cor de Destaque 2: compare.document.1=Documento 1 compare.document.2=Documento 2 compare.submit=Comparar -compare.complex.message=Um ou ambos os documentos fornecidos são arquivos grandes, a precisão da comparação pode ser reduzida -compare.large.file.message=Um ou ambos os documentos fornecidos são muito grandes para processar -compare.no.text.message=Um ou ambos os PDFs seleccionados não têm conteúdo textual. Por favor, seleccione PDFs com texto para comparação. +compare.complex.message=Um ou ambos os documentos fornecidos são ficheiros grandes, a precisão da comparação pode ser reduzida +compare.large.file.message=Um ou ambos os documentos fornecidos são demasiado grandes para processar +compare.no.text.message=Um ou ambos os PDFs selecionados não têm conteúdo de texto. Por favor escolha PDFs com texto para comparação. #BookToPDF -BookToPDF.title=Livros e Quadrinhos para PDF +BookToPDF.title=Livros e Bandas Desenhadas para PDF BookToPDF.header=Livro para PDF -BookToPDF.credit=Utiliza Calibre +BookToPDF.credit=Usa Calibre BookToPDF.submit=Converter #PDFToBook PDFToBook.title=PDF para Livro PDFToBook.header=PDF para Livro -PDFToBook.selectText.1=Formatação -PDFToBook.credit=Utiliza Calibre +PDFToBook.selectText.1=Formato +PDFToBook.credit=Usa Calibre PDFToBook.submit=Converter #sign sign.title=Assinar sign.header=Assinar PDFs -sign.upload=Enviar Imagem +sign.upload=Carregar Imagem sign.draw=Desenhar Assinatura -sign.text=Inserir Texto +sign.text=Entrada de Texto sign.clear=Limpar sign.add=Adicionar sign.saved=Assinaturas Guardadas sign.save=Guardar Assinatura sign.personalSigs=Assinaturas Pessoais -sign.sharedSigs=Assinaturas Compartilhadas +sign.sharedSigs=Assinaturas Partilhadas sign.noSavedSigs=Nenhuma assinatura guardada encontrada -sign.addToAll=Add to all pages -sign.delete=Delete -sign.first=First page -sign.last=Last page -sign.next=Next page -sign.previous=Previous page -sign.maintainRatio=Toggle maintain aspect ratio +sign.addToAll=Adicionar a todas as páginas +sign.delete=Eliminar +sign.first=Primeira página +sign.last=Última página +sign.next=Próxima página +sign.previous=Página anterior +sign.maintainRatio=Alternar manter proporção #repair @@ -874,40 +874,40 @@ repair.submit=Reparar #flatten flatten.title=Achatar flatten.header=Achatar PDFs -flatten.flattenOnlyForms=Apenas formularios aplanados +flatten.flattenOnlyForms=Achatar apenas formulários flatten.submit=Achatar #ScannerImageSplit -ScannerImageSplit.selectText.1=Limite de Ângulo: -ScannerImageSplit.selectText.2=Define o ângulo absoluto mínimo necessário para que a imagem seja girada (padrão: 10). +ScannerImageSplit.selectText.1=Limiar de Ângulo: +ScannerImageSplit.selectText.2=Define o ângulo absoluto mínimo necessário para a imagem ser rodada (predefinição: 10). ScannerImageSplit.selectText.3=Tolerância: -ScannerImageSplit.selectText.4=Determina o intervalo de variação de cor em torno da cor de fundo estimada (padrão: 30). +ScannerImageSplit.selectText.4=Determina o intervalo de variação de cor em torno da cor de fundo estimada (predefinição: 30). ScannerImageSplit.selectText.5=Área Mínima: -ScannerImageSplit.selectText.6=Define o limite mínimo de área para uma foto (padrão: 10000). -ScannerImageSplit.selectText.7=Área mínima de contorno: -ScannerImageSplit.selectText.8=Define o limite mínimo da área de contorno para uma foto -ScannerImageSplit.selectText.9=Tamanho do contorno: -ScannerImageSplit.selectText.10=Define o tamanho do contorno adicionado e removido para evitar contornos brancos na saída (padrão: 1). -ScannerImageSplit.info=O Python não está instalado. É necessário para execução. +ScannerImageSplit.selectText.6=Define o limiar de área mínima para uma foto (predefinição: 10000). +ScannerImageSplit.selectText.7=Área Mínima de Contorno: +ScannerImageSplit.selectText.8=Define o limiar de área mínima de contorno para uma foto +ScannerImageSplit.selectText.9=Tamanho da Borda: +ScannerImageSplit.selectText.10=Define o tamanho da borda adicionada e removida para prevenir bordas brancas na saída (predefinição: 1). +ScannerImageSplit.info=Python não está instalado. É necessário para executar. #OCR -ocr.title=OCR / Limpeza de Digitalização -ocr.header=OCR / Limpeza de Digitalização (Reconhecimento Óptico de Caracteres) -ocr.selectText.1=Selecione os idiomas a serem detectados no PDF (os listados são os atualmente detectados): -ocr.selectText.2=Criar um ficheiro de texto contendo o texto OCR ao lado do PDF com OCR -ocr.selectText.3=Páginas corretamente digitalizadas em um ângulo inclinado, gire-as de volta à posição original -ocr.selectText.4=Limpar a página para reduzir a probabilidade de o OCR encontrar texto no ruído de fundo (sem alteração na saída) -ocr.selectText.5=Limpar a página para reduzir a probabilidade de o OCR encontrar texto no ruído de fundo, mantendo a limpeza na saída. -ocr.selectText.6=Ignorar páginas com texto interativo, processar apenas as páginas de OCR que são imagens -ocr.selectText.7=Forçar OCR, executar OCR em todas as páginas, removendo todos os elementos de texto originais -ocr.selectText.8=Normal (gerará um erro se o PDF já contiver texto) -ocr.selectText.9=Configurações adicionais +ocr.title=OCR / Limpeza de digitalizações +ocr.header=Limpeza de Digitalizações / OCR (Reconhecimento Ótico de Caracteres) +ocr.selectText.1=Selecione idiomas que devem ser detetados dentro do PDF (Os listados são os atualmente detetados): +ocr.selectText.2=Produzir ficheiro de texto contendo texto OCR junto com o PDF processado com OCR +ocr.selectText.3=Corrigir páginas que foram digitalizadas num ângulo inclinado rodando-as de volta ao lugar +ocr.selectText.4=Limpar página para que seja menos provável que o OCR encontre texto em ruído de fundo. (Sem alteração na saída) +ocr.selectText.5=Limpar página para que seja menos provável que o OCR encontre texto em ruído de fundo, mantém a limpeza na saída. +ocr.selectText.6=Ignora páginas que têm texto interativo, apenas processa OCR em páginas que são imagens +ocr.selectText.7=Forçar OCR, irá processar OCR em Cada página removendo todos os elementos de texto originais +ocr.selectText.8=Normal (Irá dar erro se o PDF contiver texto) +ocr.selectText.9=Definições Adicionais ocr.selectText.10=Modo OCR -ocr.selectText.11=Remover imagens após o OCR (remove TODAS as imagens, útil apenas como parte do processo de conversão) -ocr.selectText.12=Tipo de renderização (avançado) -ocr.help=Por favor, leia a documentação sobre como usar isso para outros idiomas e/ou fora do ambiente Docker +ocr.selectText.11=Remover imagens após OCR (Remove TODAS as imagens, apenas útil se parte do passo de conversão) +ocr.selectText.12=Tipo de Renderização (Avançado) +ocr.help=Por favor leia esta documentação sobre como usar isto para outros idiomas e/ou usar fora do docker ocr.credit=Este serviço usa qpdf e Tesseract para OCR. ocr.submit=Processar PDF com OCR @@ -915,46 +915,46 @@ ocr.submit=Processar PDF com OCR #extractImages extractImages.title=Extrair Imagens extractImages.header=Extrair Imagens -extractImages.selectText=Selecione o formato de imagem para converter as imagens extraídas +extractImages.selectText=Selecione formato de imagem para converter imagens extraídas extractImages.allowDuplicates=Guardar imagens duplicadas extractImages.submit=Extrair #File to PDF fileToPDF.title=Ficheiro para PDF -fileToPDF.header=Converter Qualquer ficheiro para PDF -fileToPDF.credit=Este serviço usa o LibreOffice e o Unoconv para conversão de ficheiros. -fileToPDF.supportedFileTypesInfo=Tipos de ficheiros suportados -fileToPDF.supportedFileTypes=Os tipos de ficheiro suportados devem incluir os listados abaixo. No entanto, para obter uma lista atualizada completa dos formatos suportados, consulte a documentação do LibreOffice. +fileToPDF.header=Converter qualquer ficheiro para PDF +fileToPDF.credit=Este serviço usa LibreOffice e Unoconv para conversão de ficheiros. +fileToPDF.supportedFileTypesInfo=Tipos de Ficheiro Suportados +fileToPDF.supportedFileTypes=Os tipos de ficheiro suportados devem incluir os abaixo, no entanto para uma lista completa atualizada de formatos suportados, por favor consulte a documentação do LibreOffice fileToPDF.submit=Converter para PDF #compress compress.title=Comprimir compress.header=Comprimir PDF -compress.credit=Este serviço usa o qpdf para compressão/otimização de PDF. +compress.credit=Este serviço usa qpdf para Compressão/Otimização de PDF. compress.selectText.1=Modo Manual - De 1 a 4 -compress.selectText.2=Nível de Otimização: -compress.selectText.3=4 (Pior para imagens de texto) -compress.selectText.4=Modo Automático - Ajusta automaticamente a qualidade para atingir o tamanho exato do PDF -compress.selectText.5=Tamanho Esperado do PDF (por exemplo, 25 MB, 10,8 MB, 25 KB) +compress.selectText.2=Nível de otimização: +compress.selectText.3=4 (Terrível para imagens de texto) +compress.selectText.4=Modo automático - Ajusta automaticamente a qualidade para obter o PDF com o tamanho exato +compress.selectText.5=Tamanho esperado do PDF (ex. 25MB, 10.8MB, 25KB) compress.submit=Comprimir #Add image addImage.title=Adicionar Imagem -addImage.header=Adicionar Imagem ao PDF -addImage.everyPage=Para cada página? -addImage.upload=Enviar Imagem -addImage.submit=Adicionar Imagem +addImage.header=Adicionar imagem ao PDF +addImage.everyPage=Todas as Páginas? +addImage.upload=Adicionar imagem +addImage.submit=Adicionar imagem #merge merge.title=Juntar -merge.header=Juntar Vários PDFs (2+) +merge.header=Juntar múltiplos PDFs (2+) merge.sortByName=Ordenar por nome merge.sortByDate=Ordenar por data -merge.removeCertSign=Remover assinatura digital no ficheiro combinado? +merge.removeCertSign=Remover assinatura digital no ficheiro junto? merge.submit=Juntar @@ -963,158 +963,158 @@ pdfOrganiser.title=Organizador de Páginas pdfOrganiser.header=Organizador de Páginas PDF pdfOrganiser.submit=Reorganizar Páginas pdfOrganiser.mode=Modo -pdfOrganiser.mode.1=Ordenação Personalizada de Páginas +pdfOrganiser.mode.1=Ordem de Página Personalizada pdfOrganiser.mode.2=Ordem Inversa pdfOrganiser.mode.3=Ordenação Duplex -pdfOrganiser.mode.4=Ordernação em Panfleto -pdfOrganiser.mode.5=Ordenação em Panfleto com Costura de Lateral -pdfOrganiser.mode.6=Divisão Ímpar-Par -pdfOrganiser.mode.7=Remover Primeira Página -pdfOrganiser.mode.8=Remover última Página -pdfOrganiser.mode.9=Remover Primeira e Última Página -pdfOrganiser.mode.10=Mergulho Ímpar-Par -pdfOrganiser.placeholder=(ex: 1,3,2 ou 4-8,2,10-12 ou 2n-1) +pdfOrganiser.mode.4=Ordenação em Livro +pdfOrganiser.mode.5=Ordenação em Livro com Costura Lateral +pdfOrganiser.mode.6=Divisão Par-Ímpar +pdfOrganiser.mode.7=Remover Primeira +pdfOrganiser.mode.8=Remover Última +pdfOrganiser.mode.9=Remover Primeira e Última +pdfOrganiser.mode.10=Junção Par-Ímpar +pdfOrganiser.placeholder=(ex. 1,3,2 ou 4-8,2,10-12 ou 2n-1) #multiTool -multiTool.title=Multiferramenta de PDF -multiTool.header=Multiferramenta de PDF -multiTool.uploadPrompts=Nome do Arquivo -multiTool.selectAll=Select All -multiTool.deselectAll=Deselect All -multiTool.selectPages=Page Select -multiTool.selectedPages=Selected Pages -multiTool.page=Page -multiTool.deleteSelected=Delete Selected -multiTool.downloadAll=Export -multiTool.downloadSelected=Export Selected +multiTool.title=Multi Ferramenta PDF +multiTool.header=Multi Ferramenta PDF +multiTool.uploadPrompts=Nome do Ficheiro +multiTool.selectAll=Selecionar Tudo +multiTool.deselectAll=Desselecionar Tudo +multiTool.selectPages=Selecionar Página +multiTool.selectedPages=Páginas Selecionadas +multiTool.page=Página +multiTool.deleteSelected=Eliminar Selecionadas +multiTool.downloadAll=Exportar +multiTool.downloadSelected=Exportar Selecionadas -multiTool.insertPageBreak=Insert Page Break -multiTool.addFile=Add File -multiTool.rotateLeft=Rotate Left -multiTool.rotateRight=Rotate Right -multiTool.split=Split -multiTool.moveLeft=Move Left -multiTool.moveRight=Move Right -multiTool.delete=Delete -multiTool.dragDropMessage=Page(s) Selected -multiTool.undo=Undo -multiTool.redo=Redo +multiTool.insertPageBreak=Inserir Quebra de Página +multiTool.addFile=Adicionar Ficheiro +multiTool.rotateLeft=Rodar à Esquerda +multiTool.rotateRight=Rodar à Direita +multiTool.split=Dividir +multiTool.moveLeft=Mover à Esquerda +multiTool.moveRight=Mover à Direita +multiTool.delete=Eliminar +multiTool.dragDropMessage=Página(s) Selecionada(s) +multiTool.undo=Desfazer +multiTool.redo=Refazer #decrypt -decrypt.passwordPrompt=This file is password-protected. Please enter the password: -decrypt.cancelled=Operation cancelled for PDF: {0} -decrypt.noPassword=No password provided for encrypted PDF: {0} -decrypt.invalidPassword=Please try again with the correct password. -decrypt.invalidPasswordHeader=Incorrect password or unsupported encryption for PDF: {0} -decrypt.unexpectedError=There was an error processing the file. Please try again. -decrypt.serverError=Server error while decrypting: {0} -decrypt.success=File decrypted successfully. +decrypt.passwordPrompt=Este ficheiro está protegido por palavra-passe. Por favor introduza a palavra-passe: +decrypt.cancelled=Operação cancelada para PDF: {0} +decrypt.noPassword=Nenhuma palavra-passe fornecida para PDF encriptado: {0} +decrypt.invalidPassword=Por favor tente novamente com a palavra-passe correta. +decrypt.invalidPasswordHeader=Palavra-passe incorreta ou encriptação não suportada para PDF: {0} +decrypt.unexpectedError=Ocorreu um erro ao processar o ficheiro. Por favor tente novamente. +decrypt.serverError=Erro do servidor ao desencriptar: {0} +decrypt.success=Ficheiro desencriptado com sucesso. #multiTool-advert -multiTool-advert.message=This feature is also available in our multi-tool page. Check it out for enhanced page-by-page UI and additional features! +multiTool-advert.message=Esta funcionalidade também está disponível na nossa página multi-ferramenta. Experimente para uma interface melhorada página a página e funcionalidades adicionais! #view pdf -viewPdf.title=Visualizar PDF -viewPdf.header=Visualizar PDF +viewPdf.title=Ver PDF +viewPdf.header=Ver PDF #pageRemover -pageRemover.title=Remover Página -pageRemover.header=Remover Páginas do PDF -pageRemover.pagesToDelete=Páginas a serem excluídas (insira uma lista separada por vírgulas de números de página): -pageRemover.submit=Excluir Páginas -pageRemover.placeholder=(ex: 1,2,6 ou 1-10,15-30) +pageRemover.title=Removedor de Página +pageRemover.header=Removedor de Página PDF +pageRemover.pagesToDelete=Páginas a eliminar (Introduza uma lista de números de página separados por vírgulas): +pageRemover.submit=Eliminar Páginas +pageRemover.placeholder=(ex. 1,2,6 ou 1-10,15-30) #rotate -rotate.title=Girar PDF -rotate.header=Girar PDF -rotate.selectAngle=Seleccione o ângulo de rotação (múltiplos de 90 graus): -rotate.submit=Girar +rotate.title=Rodar PDF +rotate.header=Rodar PDF +rotate.selectAngle=Selecione ângulo de rotação (em múltiplos de 90 graus): +rotate.submit=Rodar #split-pdfs split.title=Dividir PDF split.header=Dividir PDF -split.desc.1=Os números seleccionados correspondem às páginas onde você deseja fazer a divisão. -split.desc.2=Por exemplo, seleccionar 1,3,7-9 dividirá um documento de 10 páginas em 6 PDFs separados da seguinte forma: -split.desc.3=Documento Nº1: Página 1 -split.desc.4=Documento Nº2: Páginas 2 e 3 -split.desc.5=Documento Nº3: Páginas 4, 5, 6 e 7 -split.desc.6=Documento Nº4: Página 8 -split.desc.7=Documento Nº5: Página 9 -split.desc.8=Documento Nº6: Páginas 10 -split.splitPages=Digite as páginas para a divisão: +split.desc.1=Os números que seleciona são o número da página onde deseja fazer uma divisão +split.desc.2=Como tal, selecionar 1,3,7-9 iria dividir um documento de 10 páginas em 6 PDFs separados com: +split.desc.3=Documento #1: Página 1 +split.desc.4=Documento #2: Páginas 2 e 3 +split.desc.5=Documento #3: Páginas 4, 5, 6, 7 +split.desc.6=Documento #4: Página 8 +split.desc.7=Documento #5: Página 9 +split.desc.8=Documento #6: Página 10 +split.splitPages=Introduza páginas para dividir: split.submit=Dividir #merge imageToPDF.title=Imagem para PDF -imageToPDF.header=Converter Imagem para PDF +imageToPDF.header=Imagem para PDF imageToPDF.submit=Converter -imageToPDF.selectLabel=Opções de ajuste de imagem -imageToPDF.fillPage=Preencher página -imageToPDF.fitDocumentToImage=Ajustar página à imagem -imageToPDF.maintainAspectRatio=Manter proporções -imageToPDF.selectText.2=Girar Automaticamente -imageToPDF.selectText.3=Lógica de Vários ficheiros (Ativada apenas ao trabalhar com várias imagens) -imageToPDF.selectText.4=Juntar em um Único PDF -imageToPDF.selectText.5=Converter em PDFs Separados +imageToPDF.selectLabel=Opções de Ajuste de Imagem +imageToPDF.fillPage=Preencher Página +imageToPDF.fitDocumentToImage=Ajustar Página à Imagem +imageToPDF.maintainAspectRatio=Manter Proporções +imageToPDF.selectText.2=Rodar PDF automaticamente +imageToPDF.selectText.3=Lógica de múltiplos ficheiros (Apenas ativada se trabalhar com múltiplas imagens) +imageToPDF.selectText.4=Juntar num único PDF +imageToPDF.selectText.5=Converter para PDFs separados #pdfToImage pdfToImage.title=PDF para Imagem -pdfToImage.header=Converter PDF para Imagem +pdfToImage.header=PDF para Imagem pdfToImage.selectText=Formato de Imagem -pdfToImage.singleOrMultiple=Tipo de Resultado de Imagem +pdfToImage.singleOrMultiple=Tipo de resultado da imagem pdfToImage.single=Única Imagem Grande pdfToImage.multi=Múltiplas Imagens -pdfToImage.colorType=Tipo de Cor -pdfToImage.color=Colorida +pdfToImage.colorType=Tipo de cor +pdfToImage.color=Cor pdfToImage.grey=Escala de Cinza -pdfToImage.blackwhite=Preto e Branco (pode resultar em perda de dados!) +pdfToImage.blackwhite=Preto e Branco (Pode perder dados!) pdfToImage.submit=Converter -pdfToImage.info=O Python não está instalado. Necessário para a conversão de WebP. -pdfToImage.placeholder=(ex: 1,2,8 ou 4,7,12-16 ou 2n-1) +pdfToImage.info=Python não está instalado. Necessário para conversão WebP. +pdfToImage.placeholder=(ex. 1,2,8 ou 4,7,12-16 ou 2n-1) #addPassword -addPassword.title=Adicionar Senha -addPassword.header=Adicionar Senha (Proteger) -addPassword.selectText.1=Selecione o PDF para Proteger -addPassword.selectText.2=Senha -addPassword.selectText.3=Tamanho da Chave de Criptografia -addPassword.selectText.4=Valores mais altos são mais seguros, mas valores mais baixos são mais compatíveis. -addPassword.selectText.5=Permissões para Definir -addPassword.selectText.6=Impedir Montagem do Documento -addPassword.selectText.7=Impedir Extracção de Conteúdo -addPassword.selectText.8=Impedir Extracção para Acessibilidade -addPassword.selectText.9=Impedir Preenchimento de Formulário -addPassword.selectText.10=Impedir Modificação -addPassword.selectText.11=Impedir Modificação de Anotação -addPassword.selectText.12=Impedir Impressão -addPassword.selectText.13=Impedir Impressão de Formatos Diferentes -addPassword.selectText.14=Senha do Proprietário -addPassword.selectText.15=Restringe o que pode ser feito com o documento após a abertura (nem todos os leitores dão suporte a isso) +addPassword.title=Adicionar Palavra-passe +addPassword.header=Adicionar palavra-passe (Encriptar) +addPassword.selectText.1=Selecione PDF para encriptar +addPassword.selectText.2=Palavra-passe de Utilizador +addPassword.selectText.3=Comprimento da Chave de Encriptação +addPassword.selectText.4=Valores mais altos são mais fortes, mas valores mais baixos têm melhor compatibilidade. +addPassword.selectText.5=Permissões a definir (Recomendado usar junto com palavra-passe de Proprietário) +addPassword.selectText.6=Impedir montagem do documento +addPassword.selectText.7=Impedir extração de conteúdo +addPassword.selectText.8=Impedir extração para acessibilidade +addPassword.selectText.9=Impedir preenchimento de formulário +addPassword.selectText.10=Impedir modificação +addPassword.selectText.11=Impedir modificação de anotação +addPassword.selectText.12=Impedir impressão +addPassword.selectText.13=Impedir impressão em diferentes formatos +addPassword.selectText.14=Palavra-passe de Proprietário +addPassword.selectText.15=Restringe o que pode ser feito com o documento uma vez aberto (Não suportado por todos os leitores) addPassword.selectText.16=Restringe a abertura do próprio documento -addPassword.submit=Proteger +addPassword.submit=Encriptar #watermark -watermark.title=Adicionar Marca d'Água -watermark.header=Adicionar Marca d'Água -watermark.customColor=Personalizar a cor do texto -watermark.selectText.1=Seleccione o PDF para Adicionar a Marca d'Água -watermark.selectText.2=Texto da Marca d'Água -watermark.selectText.3=Tamanho da Fonte -watermark.selectText.4=Rotação (0-360) -watermark.selectText.5=Espaçamento Horizontal (Width Spacer) -watermark.selectText.6=Espaçamento Vertical (Height Spacer) -watermark.selectText.7=Opacidade (0% - 100%) -watermark.selectText.8=Tipo de Marca d'Água -watermark.selectText.9=Imagem da Marca d'Água -watermark.selectText.10=Converter PDF em Imagem -watermark.submit=Adicionar Marca d'Água +watermark.title=Adicionar Marca de Água +watermark.header=Adicionar Marca de Água +watermark.customColor=Cor de Texto Personalizada +watermark.selectText.1=Selecione PDF para adicionar marca de água: +watermark.selectText.2=Texto da Marca de Água: +watermark.selectText.3=Tamanho da Fonte: +watermark.selectText.4=Rotação (0-360): +watermark.selectText.5=Espaçador de Largura (Espaço entre cada marca de água horizontalmente): +watermark.selectText.6=Espaçador de Altura (Espaço entre cada marca de água verticalmente): +watermark.selectText.7=Opacidade (0% - 100%): +watermark.selectText.8=Tipo de Marca de Água: +watermark.selectText.9=Imagem da Marca de Água: +watermark.selectText.10=Converter PDF para PDF-Imagem +watermark.submit=Adicionar Marca de Água watermark.type.1=Texto watermark.type.2=Imagem @@ -1122,34 +1122,34 @@ watermark.type.2=Imagem #Change permissions permissions.title=Alterar Permissões permissions.header=Alterar Permissões -permissions.warning=Nota: Para tornar essas permissões inalteráveis, é recomendável defini-las com uma senha através da página "Adicionar Senha". -permissions.selectText.1=Seleccione o PDF para Alterar as Permissões -permissions.selectText.2=Permissões para Definir -permissions.selectText.3=Impedir Montagem do Documento -permissions.selectText.4=Impedir Extração de Conteúdo -permissions.selectText.5=Impedir Extração para Acessibilidade -permissions.selectText.6=Impedir Preenchimento de Formulário -permissions.selectText.7=Impedir Modificações -permissions.selectText.8=Impedir Modificação de Anotação -permissions.selectText.9=Impedir Impressão -permissions.selectText.10=Impedir Impressão de Formatos Diferentes +permissions.warning=Aviso para tornar estas permissões inalteráveis é recomendado defini-las com uma palavra-passe através da página adicionar-palavra-passe +permissions.selectText.1=Selecione PDF para alterar permissões +permissions.selectText.2=Permissões a definir +permissions.selectText.3=Impedir montagem do documento +permissions.selectText.4=Impedir extração de conteúdo +permissions.selectText.5=Impedir extração para acessibilidade +permissions.selectText.6=Impedir preenchimento de formulário +permissions.selectText.7=Impedir modificação +permissions.selectText.8=Impedir modificação de anotação +permissions.selectText.9=Impedir impressão +permissions.selectText.10=Impedir impressão em diferentes formatos permissions.submit=Alterar #remove password -removePassword.title=Remover Senha -removePassword.header=Remover Senha (Desproteger) -removePassword.selectText.1=Selecione o PDF para Desproteger -removePassword.selectText.2=Senha +removePassword.title=Remover palavra-passe +removePassword.header=Remover palavra-passe (Desencriptar) +removePassword.selectText.1=Selecione PDF para Desencriptar +removePassword.selectText.2=Palavra-passe removePassword.submit=Remover #changeMetadata changeMetadata.title=Título: changeMetadata.header=Alterar Metadados -changeMetadata.selectText.1=Edite as Variáveis que Deseja Alterar -changeMetadata.selectText.2=Excluir Todos os Metadados -changeMetadata.selectText.3=Mostrar Metadados Personalizados +changeMetadata.selectText.1=Por favor edite as variáveis que deseja alterar +changeMetadata.selectText.2=Eliminar todos os metadados +changeMetadata.selectText.3=Mostrar Metadados Personalizados: changeMetadata.author=Autor: changeMetadata.creationDate=Data de Criação (aaaa/MM/dd HH:mm:ss): changeMetadata.creator=Criador: @@ -1157,144 +1157,144 @@ changeMetadata.keywords=Palavras-chave: changeMetadata.modDate=Data de Modificação (aaaa/MM/dd HH:mm:ss): changeMetadata.producer=Produtor: changeMetadata.subject=Assunto: -changeMetadata.trapped=Encalhado: -changeMetadata.selectText.4=Outros Metadados -changeMetadata.selectText.5=Adicionar Entrada de Metadados Personalizados -changeMetadata.submit=Mudar +changeMetadata.trapped=Capturado: +changeMetadata.selectText.4=Outros Metadados: +changeMetadata.selectText.5=Adicionar Entrada de Metadados Personalizada +changeMetadata.submit=Alterar #pdfToPDFA -pdfToPDFA.title=PDF para PDF/A -pdfToPDFA.header=PDF para PDF/A -pdfToPDFA.credit=Este serviço usa qpdf para Conversão de PDF/A +pdfToPDFA.title=PDF Para PDF/A +pdfToPDFA.header=PDF Para PDF/A +pdfToPDFA.credit=Este serviço usa qpdf para conversão PDF/A pdfToPDFA.submit=Converter -pdfToPDFA.tip=Actualmente não funciona para múltiplos inputs de uma só vez +pdfToPDFA.tip=Atualmente não funciona para múltiplas entradas de uma só vez pdfToPDFA.outputFormat=Formato de saída -pdfToPDFA.pdfWithDigitalSignature=O PDF contém um selo digital. Isto será removido no próximo passo. +pdfToPDFA.pdfWithDigitalSignature=O PDF contém uma assinatura digital. Esta será removida no próximo passo. #PDFToWord PDFToWord.title=PDF para Word PDFToWord.header=PDF para Word -PDFToWord.selectText.1=Formato do ficheiro de Saída -PDFToWord.credit=Este serviço usa o LibreOffice para Conversão de ficheiros. +PDFToWord.selectText.1=Formato do ficheiro de saída +PDFToWord.credit=Este serviço usa LibreOffice para conversão de ficheiros. PDFToWord.submit=Converter #PDFToPresentation PDFToPresentation.title=PDF para Apresentação PDFToPresentation.header=PDF para Apresentação -PDFToPresentation.selectText.1=Formato do ficheiro de Saída -PDFToPresentation.credit=Este serviço usa o LibreOffice para Conversão de ficheiros. +PDFToPresentation.selectText.1=Formato do ficheiro de saída +PDFToPresentation.credit=Este serviço usa LibreOffice para conversão de ficheiros. PDFToPresentation.submit=Converter #PDFToText -PDFToText.title=PDF para Texto/RTF -PDFToText.header=PDF para Texto/RTF -PDFToText.selectText.1=Formato do ficheiro de Saída -PDFToText.credit=Este serviço usa o LibreOffice para Conversão de ficheiros. +PDFToText.title=PDF para RTF (Texto) +PDFToText.header=PDF para RTF (Texto) +PDFToText.selectText.1=Formato do ficheiro de saída +PDFToText.credit=Este serviço usa LibreOffice para conversão de ficheiros. PDFToText.submit=Converter #PDFToHTML PDFToHTML.title=PDF para HTML PDFToHTML.header=PDF para HTML -PDFToHTML.credit=Este serviço usa o pdftohtml para Conversão de ficheiros. +PDFToHTML.credit=Este serviço usa pdftohtml para conversão de ficheiros. PDFToHTML.submit=Converter #PDFToXML PDFToXML.title=PDF para XML PDFToXML.header=PDF para XML -PDFToXML.credit=Este serviço usa o LibreOffice para Conversão de ficheiros. +PDFToXML.credit=Este serviço usa LibreOffice para conversão de ficheiros. PDFToXML.submit=Converter #PDFToCSV PDFToCSV.title=PDF para CSV PDFToCSV.header=PDF para CSV -PDFToCSV.prompt=Escolha a página para extrair a tabela -PDFToCSV.submit=Eztenna +PDFToCSV.prompt=Escolha a página para extrair tabela +PDFToCSV.submit=Extrair #split-by-size-or-count -split-by-size-or-count.title=Dividir o PDF por tamanho, número de páginas ou número de documentos -split-by-size-or-count.header=Dividir o PDF por tamanho, número de páginas ou número de documentos -split-by-size-or-count.type.label=Seleccione o tipo de divisão +split-by-size-or-count.title=Dividir PDF por Tamanho ou Contagem +split-by-size-or-count.header=Dividir PDF por Tamanho ou Contagem +split-by-size-or-count.type.label=Selecione Tipo de Divisão split-by-size-or-count.type.size=Por Tamanho -split-by-size-or-count.type.pageCount=Por Número de Páginas -split-by-size-or-count.type.docCount=Por Número de Documentos -split-by-size-or-count.value.label=Introduzir valor -split-by-size-or-count.value.placeholder=Introduzir tamanho (ex: 2MB or 3KB) or página (ex: 5) +split-by-size-or-count.type.pageCount=Por Contagem de Páginas +split-by-size-or-count.type.docCount=Por Contagem de Documentos +split-by-size-or-count.value.label=Introduzir Valor +split-by-size-or-count.value.placeholder=Introduza tamanho (ex., 2MB ou 3KB) ou contagem (ex., 5) split-by-size-or-count.submit=Submeter #overlay-pdfs -overlay-pdfs.header=Sobrepor arquivos PDF -overlay-pdfs.baseFile.label=Selecione o arquivo PDF base -overlay-pdfs.overlayFiles.label=Selecione o arquivo PDF para sobrepor -overlay-pdfs.mode.label=Selecione o modo de sobreposição -overlay-pdfs.mode.sequential=Sobreposição sequencial -overlay-pdfs.mode.interleaved=Sobreposição intercalada -overlay-pdfs.mode.fixedRepeat=Sobreposição de repetição fixa -overlay-pdfs.counts.label=Contagens de sobreposição (para modo de repetição fixa) -overlay-pdfs.counts.placeholder=Insira páginas separadas por vírgula (ex: 2,3,1) -overlay-pdfs.position.label=Selecione a posição de sobreposição -overlay-pdfs.position.foreground=Primeiro plano -overlay-pdfs.position.background=Plano de fundo +overlay-pdfs.header=Sobrepor Ficheiros PDF +overlay-pdfs.baseFile.label=Selecione Ficheiro PDF Base +overlay-pdfs.overlayFiles.label=Selecione Ficheiros PDF de Sobreposição +overlay-pdfs.mode.label=Selecione Modo de Sobreposição +overlay-pdfs.mode.sequential=Sobreposição Sequencial +overlay-pdfs.mode.interleaved=Sobreposição Intercalada +overlay-pdfs.mode.fixedRepeat=Sobreposição de Repetição Fixa +overlay-pdfs.counts.label=Contagens de Sobreposição (para Modo de Repetição Fixa) +overlay-pdfs.counts.placeholder=Introduza contagens separadas por vírgulas (ex., 2,3,1) +overlay-pdfs.position.label=Selecione Posição de Sobreposição +overlay-pdfs.position.foreground=Primeiro Plano +overlay-pdfs.position.background=Plano de Fundo overlay-pdfs.submit=Submeter #split-by-sections split-by-sections.title=Dividir PDF por Secções -split-by-sections.header=Divida o PDF em Secções +split-by-sections.header=Dividir PDF em Secções split-by-sections.horizontal.label=Divisões Horizontais split-by-sections.vertical.label=Divisões Verticais -split-by-sections.horizontal.placeholder=Introduza o número de divisões horizontais -split-by-sections.vertical.placeholder=Introduza o número de divisões verticais +split-by-sections.horizontal.placeholder=Introduza número de divisões horizontais +split-by-sections.vertical.placeholder=Introduza número de divisões verticais split-by-sections.submit=Dividir PDF -split-by-sections.merge=Fundir em Um único PDF +split-by-sections.merge=Juntar Num Único PDF #printFile printFile.title=Imprimir Ficheiro -printFile.header=Imprimir ficheiro na impressora -printFile.selectText.1=Selecione o ficheiro a imprimir -printFile.selectText.2=Introduza o nome da impressora +printFile.header=Imprimir Ficheiro para Impressora +printFile.selectText.1=Selecione Ficheiro para Imprimir +printFile.selectText.2=Introduza Nome da Impressora printFile.submit=Imprimir #licenses licenses.nav=Licenças -licenses.title=Licenças de terceiros -licenses.header=Licenças de terceiros -licenses.module=Modulos +licenses.title=Licenças de Terceiros +licenses.header=Licenças de Terceiros +licenses.module=Módulo licenses.version=Versão licenses.license=Licença #survey survey.nav=Inquérito -survey.title=Inquérito ao Stirling-PDF -survey.description=O Stirling-PDF não tem rastreio, por isso queremos ouvir os nossos utilizadores para melhorar o Stirling-PDF! -survey.changes=O Stirling-PDF mudou desde a última avaliação! Para mais informações, verifique o nosso post no blog aqui: -survey.changes2=Com estas mudanças estamos a obter suporte comercial pago e financiamento -survey.please=Please consider taking our survey! -survey.disabled=(A caixa de inquérito será desativada nas próximas actualizações mas estará disponível na parte inferior da página) -survey.button=Levar o Inquérito +survey.title=Inquérito Stirling-PDF +survey.description=O Stirling-PDF não tem rastreamento por isso queremos ouvir os nossos utilizadores para melhorar o Stirling-PDF! +survey.changes=O Stirling-PDF mudou desde o último inquérito! Para saber mais por favor veja a nossa publicação no blog aqui: +survey.changes2=Com estas mudanças estamos a receber suporte empresarial pago e financiamento +survey.please=Por favor considere participar no nosso inquérito! +survey.disabled=(A janela pop-up do inquérito será desativada nas atualizações seguintes mas estará disponível no rodapé da página) +survey.button=Participar no Inquérito survey.dontShowAgain=Não mostrar novamente #error -error.sorry=Desculpe pelo inconveniente! +error.sorry=Pedimos desculpa pelo inconveniente! error.needHelp=Precisa de ajuda / Encontrou um problema? -error.contactTip=Se ainda estiver a ter problemas, não hesite em entrar em contacto connosco para obter ajuda. Pode submeter um ticket na nossa página do GitHub ou contactar-nos através do Discord: -error.404.head=404 - Página Não Encontrada | Oops, tropeçámos no código! -error.404.1=Não podemos parecer encontrar a página que está a procurar. -error.404.2=Ocorreu um erro -error.github=Submeta um ticket na GitHub -error.showStack=Mostrar Stack Trace -error.copyStack=Copiar Stack Trace -error.githubSubmit=GitHub - Submeter um Ticket -error.discordSubmit=Discord - Submeter um Post de Suporte +error.contactTip=Se ainda estiver com problemas, não hesite em contactar-nos para obter ajuda. Pode submeter um ticket na nossa página GitHub ou contactar-nos através do Discord: +error.404.head=404 - Página Não Encontrada | Ups, tropeçámos no código! +error.404.1=Não conseguimos encontrar a página que procura. +error.404.2=Algo correu mal +error.github=Submeter um ticket no GitHub +error.showStack=Mostrar Rastreamento da Pilha +error.copyStack=Copiar Rastreamento da Pilha +error.githubSubmit=GitHub - Submeter um ticket +error.discordSubmit=Discord - Submeter Publicação de Suporte #remove-image @@ -1304,63 +1304,63 @@ removeImage.removeImage=Remover imagem removeImage.submit=Remover imagem -splitByChapters.title=Dividir o PDF por Capítulos -splitByChapters.header=Dividir o PDF por Capítulos -splitByChapters.bookmarkLevel=Nível de Anotações +splitByChapters.title=Dividir PDF por Capítulos +splitByChapters.header=Dividir PDF por Capítulos +splitByChapters.bookmarkLevel=Nível de Marcador splitByChapters.includeMetadata=Incluir Metadados -splitByChapters.allowDuplicates=Permitir Duplicações -splitByChapters.desc.1=Esta ferramenta divide um ficheiro PDF em vários PDFs com base na estrutura dos seus capítulos. -splitByChapters.desc.2=Nível de Anotações: Escolha o nível das anotações a usar para a divisão (0 para topo, 1 para segundo nível, etc.). -splitByChapters.desc.3=Inclua Metadados: Se marcado, os metadados originais do PDF serão incluídos em cada PDF dividido. -splitByChapters.desc.4=Permitir Duplicatas: Se marcado, permite a criação de vários bookmarks na mesma página para criar separadamente vários PDFs. -splitByChapters.submit=Dividir o PDF +splitByChapters.allowDuplicates=Permitir Duplicados +splitByChapters.desc.1=Esta ferramenta divide um ficheiro PDF em múltiplos PDFs baseado na sua estrutura de capítulos. +splitByChapters.desc.2=Nível de Marcador: Escolha o nível de marcadores a usar para dividir (0 para nível superior, 1 para segundo nível, etc.). +splitByChapters.desc.3=Incluir Metadados: Se selecionado, os metadados do PDF original serão incluídos em cada PDF dividido. +splitByChapters.desc.4=Permitir Duplicados: Se selecionado, permite que múltiplos marcadores na mesma página criem PDFs separados. +splitByChapters.submit=Dividir PDF #File Chooser -fileChooser.click=Click -fileChooser.or=or -fileChooser.dragAndDrop=Drag & Drop -fileChooser.dragAndDropPDF=Drag & Drop PDF file -fileChooser.dragAndDropImage=Drag & Drop Image file -fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.click=Clicar +fileChooser.or=ou +fileChooser.dragAndDrop=Arrastar e Largar +fileChooser.dragAndDropPDF=Arrastar e Largar ficheiro PDF +fileChooser.dragAndDropImage=Arrastar e Largar ficheiro de Imagem +fileChooser.hoveredDragAndDrop=Arrastar e Largar ficheiro(s) aqui #release notes -releases.footer=Releases -releases.title=Release Notes -releases.header=Release Notes -releases.current.version=Current Release -releases.note=Release notes are only available in English +releases.footer=Lançamentos +releases.title=Notas de Lançamento +releases.header=Notas de Lançamento +releases.current.version=Lançamento Atual +releases.note=Notas de lançamento apenas disponíveis em Inglês #Validate Signature -validateSignature.title=Validate PDF Signatures -validateSignature.header=Validate Digital Signatures -validateSignature.selectPDF=Select signed PDF file -validateSignature.submit=Validate Signatures -validateSignature.results=Validation Results -validateSignature.status=Status -validateSignature.signer=Signer -validateSignature.date=Date -validateSignature.reason=Reason -validateSignature.location=Location -validateSignature.noSignatures=No digital signatures found in this document -validateSignature.status.valid=Valid -validateSignature.status.invalid=Invalid -validateSignature.chain.invalid=Certificate chain validation failed - cannot verify signer's identity -validateSignature.trust.invalid=Certificate not in trust store - source cannot be verified -validateSignature.cert.expired=Certificate has expired -validateSignature.cert.revoked=Certificate has been revoked -validateSignature.signature.info=Signature Information -validateSignature.signature=Signature -validateSignature.signature.mathValid=Signature is mathematically valid BUT: -validateSignature.selectCustomCert=Custom Certificate File X.509 (Optional) -validateSignature.cert.info=Certificate Details -validateSignature.cert.issuer=Issuer -validateSignature.cert.subject=Subject -validateSignature.cert.serialNumber=Serial Number -validateSignature.cert.validFrom=Valid From -validateSignature.cert.validUntil=Valid Until -validateSignature.cert.algorithm=Algorithm -validateSignature.cert.keySize=Key Size -validateSignature.cert.version=Version -validateSignature.cert.keyUsage=Key Usage -validateSignature.cert.selfSigned=Self-Signed +validateSignature.title=Validar Assinaturas PDF +validateSignature.header=Validar Assinaturas Digitais +validateSignature.selectPDF=Selecionar ficheiro PDF assinado +validateSignature.submit=Validar Assinaturas +validateSignature.results=Resultados da Validação +validateSignature.status=Estado +validateSignature.signer=Assinante +validateSignature.date=Data +validateSignature.reason=Razão +validateSignature.location=Localização +validateSignature.noSignatures=Nenhuma assinatura digital encontrada neste documento +validateSignature.status.valid=Válida +validateSignature.status.invalid=Inválida +validateSignature.chain.invalid=Falha na validação da cadeia de certificados - não é possível verificar a identidade do assinante +validateSignature.trust.invalid=Certificado não está na loja de confiança - a fonte não pode ser verificada +validateSignature.cert.expired=O certificado expirou +validateSignature.cert.revoked=O certificado foi revogado +validateSignature.signature.info=Informação da Assinatura +validateSignature.signature=Assinatura +validateSignature.signature.mathValid=A assinatura é matematicamente válida MAS: +validateSignature.selectCustomCert=Ficheiro de Certificado Personalizado X.509 (Opcional) +validateSignature.cert.info=Detalhes do Certificado +validateSignature.cert.issuer=Emissor +validateSignature.cert.subject=Assunto +validateSignature.cert.serialNumber=Número de Série +validateSignature.cert.validFrom=Válido Desde +validateSignature.cert.validUntil=Válido Até +validateSignature.cert.algorithm=Algoritmo +validateSignature.cert.keySize=Tamanho da Chave +validateSignature.cert.version=Versão +validateSignature.cert.keyUsage=Utilização da Chave +validateSignature.cert.selfSigned=Auto-Assinado validateSignature.cert.bits=bits From 225e797176b6a0481a7ac1c5fcbe6db09ae5fd39 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 13 Jan 2025 16:35:19 +0000 Subject: [PATCH 04/10] :memo: Update README: Translation Progress Table (#2683) Auto-generated by [create-pull-request][1] [1]: https://github.com/peter-evans/create-pull-request Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2e0cb543..5492811d 100644 --- a/README.md +++ b/README.md @@ -141,7 +141,7 @@ Stirling-PDF currently supports 38 languages! | Norwegian (Norsk) (no_NB) | ![80%](https://geps.dev/progress/80) | | Persian (فارسی) (fa_IR) | ![95%](https://geps.dev/progress/95) | | Polish (Polski) (pl_PL) | ![87%](https://geps.dev/progress/87) | -| Portuguese (Português) (pt_PT) | ![87%](https://geps.dev/progress/87) | +| Portuguese (Português) (pt_PT) | ![99%](https://geps.dev/progress/99) | | Portuguese Brazilian (Português) (pt_BR) | ![98%](https://geps.dev/progress/98) | | Romanian (Română) (ro_RO) | ![82%](https://geps.dev/progress/82) | | Russian (Русский) (ru_RU) | ![87%](https://geps.dev/progress/87) | From 89d319332a2575aa6750c22fe5fc4b46e64edcff Mon Sep 17 00:00:00 2001 From: Ludy Date: Mon, 13 Jan 2025 19:27:27 +0100 Subject: [PATCH 05/10] Add: require-hashes pre-commit (#2684) # Description Please provide a summary of the changes, including relevant motivation and context. Closes #(issue_number) ## Checklist - [x] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [x] I have performed a self-review of my own code - [ ] I have attached images of the change if it is UI based - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] If my code has heavily changed functionality I have updated relevant docs on [Stirling-PDFs doc repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/) - [x] My changes generate no new warnings - [ ] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only) --- .github/scripts/requirements_pre_commit.in | 1 + .github/scripts/requirements_pre_commit.txt | 93 +++++++++++++++++++++ .github/workflows/pre_commit.yml | 14 +++- 3 files changed, 104 insertions(+), 4 deletions(-) create mode 100644 .github/scripts/requirements_pre_commit.in create mode 100644 .github/scripts/requirements_pre_commit.txt diff --git a/.github/scripts/requirements_pre_commit.in b/.github/scripts/requirements_pre_commit.in new file mode 100644 index 00000000..416634f5 --- /dev/null +++ b/.github/scripts/requirements_pre_commit.in @@ -0,0 +1 @@ +pre-commit diff --git a/.github/scripts/requirements_pre_commit.txt b/.github/scripts/requirements_pre_commit.txt new file mode 100644 index 00000000..ea034f5d --- /dev/null +++ b/.github/scripts/requirements_pre_commit.txt @@ -0,0 +1,93 @@ +# +# This file is autogenerated by pip-compile with Python 3.10 +# by the following command: +# +# pip-compile --generate-hashes --output-file='.github\scripts\requirements_pre_commit.txt' '.github\scripts\requirements_pre_commit.in' +# +cfgv==3.4.0 \ + --hash=sha256:b7265b1f29fd3316bfcd2b330d63d024f2bfd8bcb8b0272f8e19a504856c48f9 \ + --hash=sha256:e52591d4c5f5dead8e0f673fb16db7949d2cfb3f7da4582893288f0ded8fe560 + # via pre-commit +distlib==0.3.9 \ + --hash=sha256:47f8c22fd27c27e25a65601af709b38e4f0a45ea4fc2e710f65755fa8caaaf87 \ + --hash=sha256:a60f20dea646b8a33f3e7772f74dc0b2d0772d2837ee1342a00645c81edf9403 + # via virtualenv +filelock==3.16.1 \ + --hash=sha256:2082e5703d51fbf98ea75855d9d5527e33d8ff23099bec374a134febee6946b0 \ + --hash=sha256:c249fbfcd5db47e5e2d6d62198e565475ee65e4831e2561c8e313fa7eb961435 + # via virtualenv +identify==2.6.5 \ + --hash=sha256:14181a47091eb75b337af4c23078c9d09225cd4c48929f521f3bf16b09d02566 \ + --hash=sha256:c10b33f250e5bba374fae86fb57f3adcebf1161bce7cdf92031915fd480c13bc + # via pre-commit +nodeenv==1.9.1 \ + --hash=sha256:6ec12890a2dab7946721edbfbcd91f3319c6ccc9aec47be7c7e6b7011ee6645f \ + --hash=sha256:ba11c9782d29c27c70ffbdda2d7415098754709be8a7056d79a737cd901155c9 + # via pre-commit +platformdirs==4.3.6 \ + --hash=sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907 \ + --hash=sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb + # via virtualenv +pre-commit==4.0.1 \ + --hash=sha256:80905ac375958c0444c65e9cebebd948b3cdb518f335a091a670a89d652139d2 \ + --hash=sha256:efde913840816312445dc98787724647c65473daefe420785f885e8ed9a06878 + # via -r .github\scripts\requirements_pre_commit.in +pyyaml==6.0.2 \ + --hash=sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff \ + --hash=sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48 \ + --hash=sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086 \ + --hash=sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e \ + --hash=sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133 \ + --hash=sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5 \ + --hash=sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484 \ + --hash=sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee \ + --hash=sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5 \ + --hash=sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68 \ + --hash=sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a \ + --hash=sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf \ + --hash=sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99 \ + --hash=sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8 \ + --hash=sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85 \ + --hash=sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19 \ + --hash=sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc \ + --hash=sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a \ + --hash=sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1 \ + --hash=sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317 \ + --hash=sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c \ + --hash=sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631 \ + --hash=sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d \ + --hash=sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652 \ + --hash=sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5 \ + --hash=sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e \ + --hash=sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b \ + --hash=sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8 \ + --hash=sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476 \ + --hash=sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706 \ + --hash=sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563 \ + --hash=sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237 \ + --hash=sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b \ + --hash=sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083 \ + --hash=sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180 \ + --hash=sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425 \ + --hash=sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e \ + --hash=sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f \ + --hash=sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725 \ + --hash=sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183 \ + --hash=sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab \ + --hash=sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774 \ + --hash=sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725 \ + --hash=sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e \ + --hash=sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5 \ + --hash=sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d \ + --hash=sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290 \ + --hash=sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44 \ + --hash=sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed \ + --hash=sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4 \ + --hash=sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba \ + --hash=sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12 \ + --hash=sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4 + # via pre-commit +virtualenv==20.28.1 \ + --hash=sha256:412773c85d4dab0409b83ec36f7a6499e72eaf08c80e81e9576bca61831c71cb \ + --hash=sha256:5d34ab240fdb5d21549b76f9e8ff3af28252f5499fb6d6f031adac4e5a8c5329 + # via pre-commit diff --git a/.github/workflows/pre_commit.yml b/.github/workflows/pre_commit.yml index df4e5a0f..19226f10 100644 --- a/.github/workflows/pre_commit.yml +++ b/.github/workflows/pre_commit.yml @@ -1,20 +1,24 @@ name: Pre-commit on: - push: - branches: [main] + workflow_dispatch: permissions: contents: read jobs: - update: + pre-commit: if: ${{ github.event.pull_request.user.login != 'dependabot[bot]' }} runs-on: ubuntu-latest permissions: contents: write pull-requests: write steps: + - name: Harden Runner + uses: step-security/harden-runner@c95a14d0e5bab51a9f56296a4eb0e416910cd350 # v2.10.3 + with: + egress-policy: audit + - name: Checkout repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: @@ -24,7 +28,9 @@ jobs: with: python-version: 3.12 - name: Run Pre-Commit Hooks - uses: pre-commit/action@2c7b3805fd2a0fd8c1884dcaebf91fc102a13ecd # v3.0.1 + run: | + pip install --require-hashes -r ./.github/scripts/requirements_pre_commit.txt + - run: pre-commit run --all-files -c .pre-commit-config.yaml continue-on-error: true - name: Set up git config run: | From e0f553c15a12f805123a820988012f0de22b5132 Mon Sep 17 00:00:00 2001 From: Anthony Stirling <77850077+Frooodle@users.noreply.github.com> Date: Mon, 13 Jan 2025 19:06:48 +0000 Subject: [PATCH 06/10] Add tests via TestDriverAI (#1957) (#2005) * initial Commit * update prerun * tweak the prompt * update the test * finetune prompt * change the prompt * minor change to retry test * add debug --------- # Description Please provide a summary of the changes, including relevant motivation and context. Closes #(issue_number) ## Checklist - [ ] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] My changes generate no new warnings - [ ] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only) --------- Signed-off-by: GitHub Action Signed-off-by: dependabot[bot] Signed-off-by: Ludovic Ortega Co-authored-by: Tarun Kumar S Co-authored-by: Ian Jennings Co-authored-by: Corbinian Grimm <23664150+pixma140@users.noreply.github.com> Co-authored-by: albanobattistella <34811668+albanobattistella@users.noreply.github.com> Co-authored-by: Eric <71648843+sbplat@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: GitHub Action Co-authored-by: swanemar <107953493+swanemar@users.noreply.github.com> Co-authored-by: pixeebot[bot] <104101892+pixeebot[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] Co-authored-by: Manuel Mora Gordillo Co-authored-by: Manu Co-authored-by: Ludy Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Florian Fish Co-authored-by: reecebrowne <74901996+reecebrowne@users.noreply.github.com> Co-authored-by: Dimitrios Kaitantzidis Co-authored-by: Rania Amina Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: Ludovic Ortega Co-authored-by: Philip H. <47042125+pheiduck@users.noreply.github.com> Co-authored-by: Saud Fatayerji Co-authored-by: MaratheHarshad <97970262+MaratheHarshad@users.noreply.github.com> Co-authored-by: Harshad Marathe Co-authored-by: ninjat Co-authored-by: Peter Dave Hello Co-authored-by: Rafael Encinas Co-authored-by: Renan <82916964+thisisrenan@users.noreply.github.com> Co-authored-by: leo-jmateo <128976497+leo-jmateo@users.noreply.github.com> Co-authored-by: S. Neuhaus Co-authored-by: Dimitris Kaitantzidis <44621809+DimK10@users.noreply.github.com> --- .github/workflows/testdriver.yml | 154 ++++++++++++++++++ .../software/SPDF/EE/EEAppConfig.java | 2 +- .../api/security/WatermarkController.java | 1 + testdriver/test.yml | 140 ++++++++++++++++ 4 files changed, 296 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/testdriver.yml create mode 100644 testdriver/test.yml diff --git a/.github/workflows/testdriver.yml b/.github/workflows/testdriver.yml new file mode 100644 index 00000000..55600f0c --- /dev/null +++ b/.github/workflows/testdriver.yml @@ -0,0 +1,154 @@ +name: UI test with TestDriverAI + +on: + push: + branches: ["master", "UITest", "testdriver"] + +permissions: + contents: read + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Harden Runner + uses: step-security/harden-runner@c95a14d0e5bab51a9f56296a4eb0e416910cd350 # v2.10.3 + with: + egress-policy: audit + + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up JDK + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'temurin' + + - name: Build with Gradle + run: ./gradlew clean build + env: + DOCKER_ENABLE_SECURITY: false + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@6524bf65af31da8d45b59e8c27de4bd072b392f5 # v3.8.0 + + - name: Get version number + id: versionNumber + run: | + VERSION=$(grep "^version =" build.gradle | awk -F'"' '{print $2}') + echo "versionNumber=$VERSION" >> $GITHUB_OUTPUT + + - name: Login to Docker Hub + uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0 + with: + username: ${{ secrets.DOCKER_HUB_USERNAME }} + password: ${{ secrets.DOCKER_HUB_API }} + + - name: Build and push test image + uses: docker/build-push-action@48aba3b46d1b1fec4febb7c5d0c644b249a11355 # v6.10.0 + with: + context: . + file: ./Dockerfile + push: true + tags: ${{ secrets.DOCKER_HUB_USERNAME }}/test:test-${{ github.sha }} + build-args: VERSION_TAG=${{ steps.versionNumber.outputs.versionNumber }} + platforms: linux/amd64 + + - name: Set up SSH + run: | + mkdir -p ~/.ssh/ + echo "${{ secrets.VPS_SSH_KEY }}" > ../private.key + sudo chmod 600 ../private.key + + - name: Deploy to VPS + run: | + cat > docker-compose.yml << EOF + version: '3.3' + services: + stirling-pdf: + container_name: stirling-pdf-test-${{ github.sha }} + image: ${{ secrets.DOCKER_HUB_USERNAME }}/test:test-${{ github.sha }} + ports: + - "1337:8080" + volumes: + - /stirling/test-${{ github.sha }}/data:/usr/share/tessdata:rw + - /stirling/test-${{ github.sha }}/config:/configs:rw + - /stirling/test-${{ github.sha }}/logs:/logs:rw + environment: + DOCKER_ENABLE_SECURITY: "false" + SECURITY_ENABLELOGIN: "false" + SYSTEM_DEFAULTLOCALE: en-GB + UI_APPNAME: "Stirling-PDF Test" + UI_HOMEDESCRIPTION: "Test Deployment" + UI_APPNAMENAVBAR: "Test" + SYSTEM_MAXFILESIZE: "100" + METRICS_ENABLED: "true" + SYSTEM_GOOGLEVISIBILITY: "false" + SYSTEM_ENABLEANALYTICS: "false" + restart: on-failure:5 + EOF + + scp -i ../private.key -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null docker-compose.yml ${{ secrets.VPS_USERNAME }}@${{ secrets.VPS_HOST }}:/tmp/docker-compose.yml + + ssh -i ../private.key -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ${{ secrets.VPS_USERNAME }}@${{ secrets.VPS_HOST }} << EOF + mkdir -p /stirling/test-${{ github.sha }}/{data,config,logs} + mv /tmp/docker-compose.yml /stirling/test-${{ github.sha }}/docker-compose.yml + cd /stirling/test-${{ github.sha }} + docker-compose pull + docker-compose up -d + EOF + + test: + needs: deploy + runs-on: ubuntu-latest + + steps: + - name: Harden Runner + uses: step-security/harden-runner@c95a14d0e5bab51a9f56296a4eb0e416910cd350 # v2.10.3 + with: + egress-policy: audit + + - uses: actions/checkout@v4 + + - name: Run TestDriver.ai + uses: testdriverai/action@47e87c5d50beeeb3da624b2d9b5c1391269d6d22 #1.0.0 + with: + key: ${{secrets.TESTDRIVER_API_KEY}} + prerun: | + npm install + npm run build + npm install dashcam-chrome --save + Start-Process "C:/Program Files/Google/Chrome/Application/chrome.exe" -ArgumentList "--start-maximized", "--load-extension=$(pwd)/node_modules/dashcam-chrome/build", "http://${{ secrets.VPS_HOST }}:1337" + Start-Sleep -Seconds 20 + prompt: | + 1. /run testdriver/test.yml + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + FORCE_COLOR: "3" + + cleanup: + needs: [deploy, test] + runs-on: ubuntu-latest + if: always() + + steps: + - name: Harden Runner + uses: step-security/harden-runner@c95a14d0e5bab51a9f56296a4eb0e416910cd350 # v2.10.3 + with: + egress-policy: audit + + - name: Set up SSH + run: | + mkdir -p ~/.ssh/ + echo "${{ secrets.VPS_SSH_KEY }}" > ../private.key + sudo chmod 600 ../private.key + + - name: Cleanup deployment + run: | + ssh -i ../private.key -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ${{ secrets.VPS_USERNAME }}@${{ secrets.VPS_HOST }} << EOF + cd /stirling/test-${{ github.sha }} + docker-compose down + cd /stirling + rm -rf test-${{ github.sha }} + EOF diff --git a/src/main/java/stirling/software/SPDF/EE/EEAppConfig.java b/src/main/java/stirling/software/SPDF/EE/EEAppConfig.java index 4648c033..ab504b90 100644 --- a/src/main/java/stirling/software/SPDF/EE/EEAppConfig.java +++ b/src/main/java/stirling/software/SPDF/EE/EEAppConfig.java @@ -25,7 +25,7 @@ public class EEAppConfig { @Bean(name = "runningEE") public boolean runningEnterpriseEdition() { - return licenseKeyChecker.getEnterpriseEnabledResult(); + return licenseKeyChecker.getEnterpriseEnabledResult(); } @Bean(name = "SSOAutoLogin") diff --git a/src/main/java/stirling/software/SPDF/controller/api/security/WatermarkController.java b/src/main/java/stirling/software/SPDF/controller/api/security/WatermarkController.java index 6bf0f96b..3e1be815 100644 --- a/src/main/java/stirling/software/SPDF/controller/api/security/WatermarkController.java +++ b/src/main/java/stirling/software/SPDF/controller/api/security/WatermarkController.java @@ -214,6 +214,7 @@ public class WatermarkController { + Math.abs(watermarkHeight * Math.cos(radians))); // Calculating the number of rows and columns. + int watermarkRows = (int) (pageHeight / newWatermarkHeight + 1); int watermarkCols = (int) (pageWidth / newWatermarkWidth + 1); diff --git a/testdriver/test.yml b/testdriver/test.yml new file mode 100644 index 00000000..101abc11 --- /dev/null +++ b/testdriver/test.yml @@ -0,0 +1,140 @@ +version: 4.0.44 +steps: + - prompt: open chrome + commands: + - command: focus-application + name: Google Chrome + - prompt: click on view PDF + commands: + - command: focus-application + name: Google Chrome + - command: hover-text + text: View PDF + description: button to view PDF + action: click + - prompt: click on view PDF + commands: + - command: wait + timeout: 5000 + - command: assert + expect: a pdf is open + - prompt: go back to the previous page + commands: + - command: focus-application + name: Google Chrome + - command: press-keys + keys: + - alt + - left + - prompt: go back to the previous page + commands: + - command: assert + expect: it is in homepage + - prompt: >- + click on sun icon in the header section and make sure the theme of the + website changes, if it does then change it back by clicking on the moon + icon at the exact same place + commands: + - command: focus-application + name: Google Chrome + - command: hover-image + description: sun icon in the header section + action: click + - command: assert + expect: the theme of the website has changed + - command: hover-image + description: moon icon in the header section + action: click + - prompt: >- + click on search icon in the header section and search for "rotate", click + on it in the drop down, you will be taken to the rotate pdf page, if so + then go back to the homepage + commands: + - command: focus-application + name: Google Chrome + - command: hover-image + description: search icon in the header section + action: click + - command: type + text: rotate + - command: wait + timeout: 2000 + - command: hover-text + text: Rotate + description: dropdown option for rotate + action: click + - command: wait + timeout: 5000 + - command: assert + expect: the page title is "Rotate PDF" + - command: press-keys + keys: + - alt + - left + - prompt: >- + click on search bar and search for "rotate", click on it in the drop down, + you will be taken to the rotate pdf page, if so then go back to the + homepage + commands: + - command: focus-application + name: Google Chrome + - command: hover-text + text: Search for features... + description: search bar + action: click + - command: type + text: rotate + - command: wait + timeout: 2000 + - command: hover-text + text: Rotate + description: dropdown option for rotate + action: click + - command: wait + timeout: 5000 + - command: assert + expect: the page title is "Rotate PDF" + - command: press-keys + keys: + - alt + - left + - command: wait + timeout: 2000 + - prompt: >- + click on Tools button in the header section and Check if the background of + the merge button is highlighted when hovered over, similarly hover over a + few other buttons and check for the background of the button is highlighted + when hovered over + commands: + - command: focus-application + name: Google Chrome + - command: hover-text + text: Tools + description: Tools button in the header section + action: click + - command: assert + expect: the Tools dropdown is open + - command: hover-text + text: Merge + description: Merge button + action: hover + - command: assert + expect: the background of the Merge button is highlighted + - command: hover-text + text: PDF to Image + description: PDF to Image button + action: hover + - command: assert + expect: the background of the PDF to Image button is highlighted + - command: hover-text + text: PDF to CSV + description: PDF to CSV button + action: hover + - command: assert + expect: the background of the PDF to CSV button is highlighted + - command: hover-text + text: Sign + description: Sign button + action: hover + - command: assert + expect: the background of the Sign button is highlighted From f90db3cff7795a0de11094ed9c9b6e85aa837590 Mon Sep 17 00:00:00 2001 From: Ludy Date: Mon, 13 Jan 2025 21:32:12 +0100 Subject: [PATCH 07/10] Add: description for compress optimization levels 6 to 9 (#2687) # Description Closes #https://github.com/Stirling-Tools/Stirling-PDF/issues/2672 ## Checklist - [x] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [x] I have performed a self-review of my own code - [ ] I have attached images of the change if it is UI based - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] If my code has heavily changed functionality I have updated relevant docs on [Stirling-PDFs doc repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/) - [x] My changes generate no new warnings - [ ] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only) --- src/main/resources/messages_ar_AR.properties | 3 ++- src/main/resources/messages_az_AZ.properties | 3 ++- src/main/resources/messages_bg_BG.properties | 3 ++- src/main/resources/messages_ca_CA.properties | 3 ++- src/main/resources/messages_cs_CZ.properties | 3 ++- src/main/resources/messages_da_DK.properties | 3 ++- src/main/resources/messages_de_DE.properties | 3 ++- src/main/resources/messages_el_GR.properties | 3 ++- src/main/resources/messages_en_GB.properties | 3 ++- src/main/resources/messages_en_US.properties | 3 ++- src/main/resources/messages_es_ES.properties | 3 ++- src/main/resources/messages_eu_ES.properties | 3 ++- src/main/resources/messages_fa_IR.properties | 3 ++- src/main/resources/messages_fr_FR.properties | 3 ++- src/main/resources/messages_ga_IE.properties | 3 ++- src/main/resources/messages_hi_IN.properties | 3 ++- src/main/resources/messages_hr_HR.properties | 3 ++- src/main/resources/messages_hu_HU.properties | 3 ++- src/main/resources/messages_id_ID.properties | 3 ++- src/main/resources/messages_it_IT.properties | 3 ++- src/main/resources/messages_ja_JP.properties | 3 ++- src/main/resources/messages_ko_KR.properties | 3 ++- src/main/resources/messages_nl_NL.properties | 3 ++- src/main/resources/messages_no_NB.properties | 3 ++- src/main/resources/messages_pl_PL.properties | 3 ++- src/main/resources/messages_pt_BR.properties | 3 ++- src/main/resources/messages_pt_PT.properties | 3 ++- src/main/resources/messages_ro_RO.properties | 11 ++++++----- src/main/resources/messages_ru_RU.properties | 3 ++- src/main/resources/messages_sk_SK.properties | 3 ++- src/main/resources/messages_sr_LATN_RS.properties | 3 ++- src/main/resources/messages_sv_SE.properties | 3 ++- src/main/resources/messages_th_TH.properties | 3 ++- src/main/resources/messages_tr_TR.properties | 3 ++- src/main/resources/messages_uk_UA.properties | 3 ++- src/main/resources/messages_vi_VN.properties | 3 ++- src/main/resources/messages_zh_BO.properties | 3 ++- src/main/resources/messages_zh_CN.properties | 3 ++- src/main/resources/messages_zh_TW.properties | 3 ++- src/main/resources/templates/misc/compress-pdf.html | 1 + 40 files changed, 83 insertions(+), 43 deletions(-) diff --git a/src/main/resources/messages_ar_AR.properties b/src/main/resources/messages_ar_AR.properties index 10abbc02..3ef746d3 100644 --- a/src/main/resources/messages_ar_AR.properties +++ b/src/main/resources/messages_ar_AR.properties @@ -933,7 +933,8 @@ fileToPDF.submit=تحويل إلى PDF compress.title=ضغط compress.header=ضغط ملف PDF compress.credit=تستخدم هذه الخدمة qpdf لضغط / تحسين PDF. -compress.selectText.1=الوضع اليدوي - من 1 إلى 4 +compress.selectText.1=الوضع اليدوي - من 1 إلى 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=مستوى التحسين: compress.selectText.3=4 (رهيب للصور النصية) compress.selectText.4=الوضع التلقائي - يضبط الجودة تلقائيًا للحصول على ملف PDF بالحجم المحدد diff --git a/src/main/resources/messages_az_AZ.properties b/src/main/resources/messages_az_AZ.properties index 9f4371d3..dc71aa51 100644 --- a/src/main/resources/messages_az_AZ.properties +++ b/src/main/resources/messages_az_AZ.properties @@ -933,7 +933,8 @@ fileToPDF.submit=PDF-ə Çevir compress.title=Sıxışdır compress.header=PDF-i Sıxışdır compress.credit=Bu servis PDF sıxışdırılması/Optimizasiyası üçün Ghostscript istifadə edir. -compress.selectText.1=Manual Mod - 1-dən 4-ə +compress.selectText.1=Manual Mod - 1-dən 5-ə +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimizasiya səviyyəsi: compress.selectText.3=4 (Mətn şəkilləri üçün yaxşı deyil) compress.selectText.4=Avto mod - PDF-in dəqiq ölçüsünü əldə etmək üçün keyfiyyəti avtomatik tənzimləyir diff --git a/src/main/resources/messages_bg_BG.properties b/src/main/resources/messages_bg_BG.properties index 5bfbdf6e..1fbb6966 100644 --- a/src/main/resources/messages_bg_BG.properties +++ b/src/main/resources/messages_bg_BG.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Преобразуване към PDF compress.title=Компресиране compress.header=Компресиране на PDF compress.credit=Тази услуга използва qpdf за PDF компресиране/оптимизиране. -compress.selectText.1=Ръчен режим - от 1 до 4 +compress.selectText.1=Ръчен режим - от 1 до 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Ниво на оптимизация: compress.selectText.3=4 (Ужасно за текстови изображения) compress.selectText.4=Автоматичен режим - Автоматично настройва качеството, за да получи PDF с точен размер diff --git a/src/main/resources/messages_ca_CA.properties b/src/main/resources/messages_ca_CA.properties index 1c5d8fcc..1e18c3bf 100644 --- a/src/main/resources/messages_ca_CA.properties +++ b/src/main/resources/messages_ca_CA.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Converteix a PDF compress.title=Comprimir compress.header=Comprimir PDF compress.credit=Aquest servei utilitza qpdf per a la compressió/optimització de PDF. -compress.selectText.1=Mode manual: de l'1 al 4 +compress.selectText.1=Mode manual: de l'1 al 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Nivell d'optimització: compress.selectText.3=4 (terrible per a imatges de text) compress.selectText.4=Mode automàtic: ajusta automàticament la qualitat perquè el PDF tingui la mida exacta diff --git a/src/main/resources/messages_cs_CZ.properties b/src/main/resources/messages_cs_CZ.properties index 50c25df1..47eed833 100644 --- a/src/main/resources/messages_cs_CZ.properties +++ b/src/main/resources/messages_cs_CZ.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Převést na PDF compress.title=Komprese compress.header=Komprimovat PDF compress.credit=Tato služba používá qpdf pro kompresi/optimalizaci PDF. -compress.selectText.1=Ruční režim - Od 1 do 4 +compress.selectText.1=Ruční režim - Od 1 do 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Úroveň optimalizace: compress.selectText.3=4 (Hrozné pro textové obrázky) compress.selectText.4=Automatický režim - Automaticky upravuje kvalitu pro dosažení přesné velikosti PDF diff --git a/src/main/resources/messages_da_DK.properties b/src/main/resources/messages_da_DK.properties index b09679ff..3cd5853d 100644 --- a/src/main/resources/messages_da_DK.properties +++ b/src/main/resources/messages_da_DK.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Konvertér til PDF compress.title=Komprimer compress.header=Komprimer PDF compress.credit=Denne tjeneste bruger qpdf til PDF Komprimering/Optimering. -compress.selectText.1=Manuel Tilstand - Fra 1 til 4 +compress.selectText.1=Manuel Tilstand - Fra 1 til 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimeringsniveau: compress.selectText.3=4 (Forfærdelig for tekstbilleder) compress.selectText.4=Auto tilstand - Justerer automatisk kvaliteten for at få PDF'en til en præcis størrelse diff --git a/src/main/resources/messages_de_DE.properties b/src/main/resources/messages_de_DE.properties index dd7dd397..f9db0dc2 100644 --- a/src/main/resources/messages_de_DE.properties +++ b/src/main/resources/messages_de_DE.properties @@ -933,7 +933,8 @@ fileToPDF.submit=In PDF konvertieren compress.title=Komprimieren compress.header=PDF komprimieren compress.credit=Dieser Dienst verwendet qpdf für die PDF-Komprimierung/-Optimierung. -compress.selectText.1=Manueller Modus – Von 1 bis 4 +compress.selectText.1=Manueller Modus – Von 1 bis 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimierungsstufe: compress.selectText.3=4 (Schrecklich für Textbilder) compress.selectText.4=Automatischer Modus – Passt die Qualität automatisch an, um das PDF auf die exakte Größe zu bringen diff --git a/src/main/resources/messages_el_GR.properties b/src/main/resources/messages_el_GR.properties index 92348be4..22314b09 100644 --- a/src/main/resources/messages_el_GR.properties +++ b/src/main/resources/messages_el_GR.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Μετατροπή σε PDF compress.title=Συμπίεση compress.header=Συμπίεση PDF compress.credit=Αυτή η υπηρεσία χρησιμοποιεί qpdf για PDF Συμπίεση/Βελτιστοποίηση. -compress.selectText.1=Χειροκίνητη Λειτουργία - Από 1 έως 4 +compress.selectText.1=Χειροκίνητη Λειτουργία - Από 1 έως 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Επίπεδο Βελτιστοποίησης: compress.selectText.3=4 (Πολύ κακό για εικόνες κειμένου) compress.selectText.4=Αυτόματη Λειτουργία - Auto mode - Προσαρμόζει αυτόματα την ποιότητα για λήψη PDF στο ακριβές μέγεθος diff --git a/src/main/resources/messages_en_GB.properties b/src/main/resources/messages_en_GB.properties index 02dda041..35a0211f 100644 --- a/src/main/resources/messages_en_GB.properties +++ b/src/main/resources/messages_en_GB.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Convert to PDF compress.title=Compress compress.header=Compress PDF compress.credit=This service uses qpdf for PDF Compress/Optimisation. -compress.selectText.1=Manual Mode - From 1 to 4 +compress.selectText.1=Manual Mode - From 1 to 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimisation level: compress.selectText.3=4 (Terrible for text images) compress.selectText.4=Auto mode - Auto adjusts quality to get PDF to exact size diff --git a/src/main/resources/messages_en_US.properties b/src/main/resources/messages_en_US.properties index 65746550..07f28fb6 100644 --- a/src/main/resources/messages_en_US.properties +++ b/src/main/resources/messages_en_US.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Convert to PDF compress.title=Compress compress.header=Compress PDF compress.credit=This service uses qpdf for PDF Compress/Optimisation. -compress.selectText.1=Manual Mode - From 1 to 4 +compress.selectText.1=Manual Mode - From 1 to 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimization level: compress.selectText.3=4 (Terrible for text images) compress.selectText.4=Auto mode - Auto adjusts quality to get PDF to exact size diff --git a/src/main/resources/messages_es_ES.properties b/src/main/resources/messages_es_ES.properties index 73b03a59..ce87f205 100644 --- a/src/main/resources/messages_es_ES.properties +++ b/src/main/resources/messages_es_ES.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Convertir a PDF compress.title=Comprimir compress.header=Comprimir PDF compress.credit=Este servicio utiliza qpdf para compresión/optimización de PDF -compress.selectText.1=Modo manual - De 1 a 4 +compress.selectText.1=Modo manual - De 1 a 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Nivel de optimización: compress.selectText.3=4 (Terrible para imágenes de texto) compress.selectText.4=Modo automático: ajusta automáticamente la calidad para que el PDF tenga el tamaño exacto diff --git a/src/main/resources/messages_eu_ES.properties b/src/main/resources/messages_eu_ES.properties index 4203a4f1..d7ac48d3 100644 --- a/src/main/resources/messages_eu_ES.properties +++ b/src/main/resources/messages_eu_ES.properties @@ -933,7 +933,8 @@ fileToPDF.submit=PDF bihurtu compress.title=Konprimatu compress.header=PDFa konprimatu compress.credit=Zerbitzu honek qpdf erabiltzen du PDFak komprimatzeko/optimizatzeko -compress.selectText.1=Eskuz 1etik 4ra +compress.selectText.1=Eskuz 1etik 5ra +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimizazio maila: compress.selectText.3=4 (Izugarria testu-irudietarako) compress.selectText.4=Automatikoa: automatikoki egokitzen du kalitatea PDFak tamaina doi-doia izan dezan diff --git a/src/main/resources/messages_fa_IR.properties b/src/main/resources/messages_fa_IR.properties index bf611b90..adb7322e 100644 --- a/src/main/resources/messages_fa_IR.properties +++ b/src/main/resources/messages_fa_IR.properties @@ -933,7 +933,8 @@ fileToPDF.submit=تبدیل به PDF compress.title=فشرده‌سازی compress.header=فشرده‌سازی PDF compress.credit=این سرویس از qpdf برای فشرده‌سازی / بهینه‌سازی PDF استفاده می‌کند. -compress.selectText.1=حالت دستی - از ۱ تا ۴ +compress.selectText.1=حالت دستی - از 1 تا 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=سطح بهینه‌سازی: compress.selectText.3=۴ (خیلی بد برای تصاویر متنی) compress.selectText.4=حالت خودکار - کیفیت را به طور خودکار تنظیم می‌کند تا PDF به اندازه دقیق برسد diff --git a/src/main/resources/messages_fr_FR.properties b/src/main/resources/messages_fr_FR.properties index c60277d8..f63b87c6 100644 --- a/src/main/resources/messages_fr_FR.properties +++ b/src/main/resources/messages_fr_FR.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Convertir compress.title=Compresser un PDF compress.header=Compresser un PDF (lorsque c'est possible!) compress.credit=Ce service utilise qpdf pour la compression et l'optimisation des PDF. -compress.selectText.1=Mode manuel – de 1 à 4 +compress.selectText.1=Mode manuel – de 1 à 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Niveau d'optimisation compress.selectText.3=4 (terrible pour les images textuelles) compress.selectText.4=Mode automatique – ajuste automatiquement la qualité pour obtenir le PDF à la taille exacte diff --git a/src/main/resources/messages_ga_IE.properties b/src/main/resources/messages_ga_IE.properties index 6b653b74..1e1f7abe 100644 --- a/src/main/resources/messages_ga_IE.properties +++ b/src/main/resources/messages_ga_IE.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Tiontaigh go PDF compress.title=Comhbhrúigh compress.header=Comhbhrúigh PDF compress.credit=Úsáideann an tseirbhís seo qpdf le haghaidh Comhbhrú/Optimization PDF. -compress.selectText.1=Mód Láimhe - Ó 1 go 4 +compress.selectText.1=Mód Láimhe - Ó 1 go 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Leibhéal optamaithe: compress.selectText.3=4 (Uafásach le haghaidh íomhánna téacs) compress.selectText.4=Mód uathoibríoch - Coigeartaíonn Auto cáilíocht chun PDF a fháil go dtí an méid cruinn diff --git a/src/main/resources/messages_hi_IN.properties b/src/main/resources/messages_hi_IN.properties index fae58315..65d84aab 100644 --- a/src/main/resources/messages_hi_IN.properties +++ b/src/main/resources/messages_hi_IN.properties @@ -933,7 +933,8 @@ fileToPDF.submit=पीडीएफ़ में बदलें compress.title=संकुचित करें compress.header=PDF को संकुचित करें compress.credit=यह सेवा PDF संकुचन/अनुकूलन के लिए qpdf का उपयोग करती है। -compress.selectText.1=मैनुअल मोड - 1 से 4 तक +compress.selectText.1=मैनुअल मोड - 1 से 5 तक +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=अनुकूलन स्तर: compress.selectText.3=4 (पाठ छवियों के लिए अत्यधिक) compress.selectText.4=स्वत: मोड - निर्धारित आकार पाने के लिए गुणवत्ता को स्वत: समायोजित करता है diff --git a/src/main/resources/messages_hr_HR.properties b/src/main/resources/messages_hr_HR.properties index 5c0c8fb9..b4b2dede 100644 --- a/src/main/resources/messages_hr_HR.properties +++ b/src/main/resources/messages_hr_HR.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Pretvori u PDF compress.title=Komprimirajte compress.header=Komprimirajte PDF compress.credit=Ova usluga koristi qpdf za komprimiranje / optimizaciju PDF-a. -compress.selectText.1=Ručni režim - Od 1 do 4 +compress.selectText.1=Ručni režim - Od 1 do 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Nivo optimizacije: compress.selectText.3=4 (Užasno za tekstualne slike) compress.selectText.4=Automatski način - Automatski prilagođava kvalitetu kako bi PDF dobio točnu veličinu diff --git a/src/main/resources/messages_hu_HU.properties b/src/main/resources/messages_hu_HU.properties index 88612dbd..996c563a 100644 --- a/src/main/resources/messages_hu_HU.properties +++ b/src/main/resources/messages_hu_HU.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Konvertálás PDF-be compress.title=Tömörítés compress.header=PDF tömörítése compress.credit=Ez a szolgáltatás a qpdf használatával végzi a PDF tömörítését/optimalizálását. -compress.selectText.1=Kézi mód - 1-től 4-ig +compress.selectText.1=Kézi mód - 1-től 5-ig +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimalizálási szint: compress.selectText.3=4 (Szöveges képeknél nem ajánlott) compress.selectText.4=Automatikus mód - Automatikusan állítja a minőséget a megadott PDF méret eléréséhez diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index 2a6908bc..539db21c 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Konversi ke PDF compress.title=Kompres compress.header=Kompres PDF compress.credit=Layanan ini menggunakan qpdf untuk Kompresi/Optimalisasi PDF. -compress.selectText.1=Mode Manual - Dari 1 hingga 4 +compress.selectText.1=Mode Manual - Dari 1 hingga 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Tingkat Optimalisasi: compress.selectText.3=4 (Buruk untuk gambar teks) compress.selectText.4=Mode Otomatis - Menyesuaikan kualitas secara otomatis untuk mendapatkan PDF dengan ukuran yang tepat diff --git a/src/main/resources/messages_it_IT.properties b/src/main/resources/messages_it_IT.properties index d559fef6..bd55e90a 100644 --- a/src/main/resources/messages_it_IT.properties +++ b/src/main/resources/messages_it_IT.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Converti in PDF compress.title=Comprimi compress.header=Comprimi PDF compress.credit=Questo servizio utilizza qpdf per la compressione/ottimizzazione dei PDF. -compress.selectText.1=Modalità manuale - Da 1 a 4 +compress.selectText.1=Modalità manuale - Da 1 a 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Livello di ottimizzazione: compress.selectText.3=4 (Terribile per le immagini di testo) compress.selectText.4=Modalità automatica - Regola automaticamente la qualità per ottenere le dimensioni esatte del PDF diff --git a/src/main/resources/messages_ja_JP.properties b/src/main/resources/messages_ja_JP.properties index e72240a2..c7852436 100644 --- a/src/main/resources/messages_ja_JP.properties +++ b/src/main/resources/messages_ja_JP.properties @@ -933,7 +933,8 @@ fileToPDF.submit=PDFを変換 compress.title=圧縮 compress.header=PDFを圧縮 compress.credit=本サービスはPDFの圧縮/最適化にqpdfを使用しています。 -compress.selectText.1=手動モード - 1 から 4 +compress.selectText.1=手動モード - 1 から 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=品質レベル: compress.selectText.3=4 (テキスト画像は最悪) compress.selectText.4=自動モード - PDFを正確なサイズにするために品質を自動調整する。 diff --git a/src/main/resources/messages_ko_KR.properties b/src/main/resources/messages_ko_KR.properties index 19d60143..bc249492 100644 --- a/src/main/resources/messages_ko_KR.properties +++ b/src/main/resources/messages_ko_KR.properties @@ -933,7 +933,8 @@ fileToPDF.submit=PDF로 변환 compress.title=압축 compress.header=PDF 압축 compress.credit=이 서비스는 PDF 압축 및 최적화를 위해 qpdf를 사용합니다. -compress.selectText.1=수동 모드 - 1에서 4 +compress.selectText.1=수동 모드 - 1에서 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=최적화 수준: compress.selectText.3=4 (텍스트 이미지에 적합하지 않음) compress.selectText.4=자동 - 정확한 크기의 PDF 문서를 얻기 위해 품질 자동 조정 diff --git a/src/main/resources/messages_nl_NL.properties b/src/main/resources/messages_nl_NL.properties index 536ee546..a8720d8d 100644 --- a/src/main/resources/messages_nl_NL.properties +++ b/src/main/resources/messages_nl_NL.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Omzetten naar PDF compress.title=Comprimeren compress.header=PDF comprimeren compress.credit=Deze functie gebruikt qpdf voor PDF Compressie/Optimalisatie. -compress.selectText.1=Handmatige modus - Van 1 tot 4 +compress.selectText.1=Handmatige modus - Van 1 tot 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimalisatieniveau: compress.selectText.3=4 (Verschrikkelijk voor tekstafbeeldingen) compress.selectText.4=Automatische modus - Past kwaliteit automatisch aan om PDF naar exacte grootte te krijgen diff --git a/src/main/resources/messages_no_NB.properties b/src/main/resources/messages_no_NB.properties index 0e36e10f..11a90bdb 100644 --- a/src/main/resources/messages_no_NB.properties +++ b/src/main/resources/messages_no_NB.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Konverter til PDF compress.title=Komprimer compress.header=Komprimer PDF compress.credit=Denne tjenesten bruker qpdf for PDF-komprimering/optimisering. -compress.selectText.1=Manuell modus - Fra 1 til 4 +compress.selectText.1=Manuell modus - Fra 1 til 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimeringsnivå: compress.selectText.3=4 (Dårlig for tekstbilder) compress.selectText.4=Automatisk modus - Justerer automatisk kvaliteten for å få PDF til nøyaktig størrelse diff --git a/src/main/resources/messages_pl_PL.properties b/src/main/resources/messages_pl_PL.properties index 51107738..ef41e4ed 100644 --- a/src/main/resources/messages_pl_PL.properties +++ b/src/main/resources/messages_pl_PL.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Konwertuj na PDF compress.title=Kompresuj compress.header=Kompresuj PDF compress.credit=Ta usługa używa qpdf do kompresji/optymalizacji PDF. -compress.selectText.1=Tryb ręczny - Od 1 do 4 +compress.selectText.1=Tryb ręczny - Od 1 do 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Poziom optymalizacji: compress.selectText.3=4 (Duże dla obrazów tekstowych) compress.selectText.4=Tryb automatyczny - Automatycznie dostosowuje jakość, aby uzyskać dokładny rozmiar pliku PDF diff --git a/src/main/resources/messages_pt_BR.properties b/src/main/resources/messages_pt_BR.properties index 07da4e7a..eacc1659 100644 --- a/src/main/resources/messages_pt_BR.properties +++ b/src/main/resources/messages_pt_BR.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Converter para PDF compress.title=Comprimir compress.header=Comprimir compress.credit=Este serviço usa o Qpdf para compressão/otimização de PDF. -compress.selectText.1=Modo Manual - 1 (Menos) a 9 (Mais) +compress.selectText.1=Modo Manual - De 1 a 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Nível de Otimização: compress.selectText.3=4 (Pior para imagens de texto) compress.selectText.4=Modo Automático - Ajusta automaticamente a qualidade para atingir o tamanho exato desejado diff --git a/src/main/resources/messages_pt_PT.properties b/src/main/resources/messages_pt_PT.properties index dfc9d3ae..9cedca05 100644 --- a/src/main/resources/messages_pt_PT.properties +++ b/src/main/resources/messages_pt_PT.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Converter para PDF compress.title=Comprimir compress.header=Comprimir PDF compress.credit=Este serviço usa qpdf para Compressão/Otimização de PDF. -compress.selectText.1=Modo Manual - De 1 a 4 +compress.selectText.1=Modo Manual - De 1 a 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Nível de otimização: compress.selectText.3=4 (Terrível para imagens de texto) compress.selectText.4=Modo automático - Ajusta automaticamente a qualidade para obter o PDF com o tamanho exato diff --git a/src/main/resources/messages_ro_RO.properties b/src/main/resources/messages_ro_RO.properties index b2d0db82..b2818c8a 100644 --- a/src/main/resources/messages_ro_RO.properties +++ b/src/main/resources/messages_ro_RO.properties @@ -933,11 +933,12 @@ fileToPDF.submit=Convertiți în PDF compress.title=Comprimare compress.header=Comprimare PDF compress.credit=Acest serviciu utilizează qpdf pentru comprimarea/optimizarea PDF-urilor. -compress.selectText.1=Nivel de optimizare: -compress.selectText.2=0 (Fără optimizare) -compress.selectText.3=1 (Implicit, optimizare fără pierdere) -compress.selectText.4=2 (Optimizare cu pierdere) -compress.selectText.5=3 (Optimizare cu pierdere, mai agresivă) +compress.selectText.1=Modul manual - de la 1 la 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. +compress.selectText.2=Nivel de optimizare: +compress.selectText.3=4 (Îngrozitor pentru imaginile text) +compress.selectText.4=Mod automat - ajustează automat calitatea pentru a aduce PDF-ul la dimensiunea exactă +compress.selectText.5=Dimensiunea PDF așteptată (de ex. 25MB, 10.8MB, 25KB) compress.submit=Comprimare diff --git a/src/main/resources/messages_ru_RU.properties b/src/main/resources/messages_ru_RU.properties index bc91282a..623ecac9 100644 --- a/src/main/resources/messages_ru_RU.properties +++ b/src/main/resources/messages_ru_RU.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Преобразовать в PDF compress.title=Сжать compress.header=Сжать PDF compress.credit=Эта служба использует qpdf для сжатия/оптимизации PDF. -compress.selectText.1=Ручной режим - от 1 до 4 +compress.selectText.1=Ручной режим - от 1 до 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Уровень оптимизации: compress.selectText.3=4 (Ужасно для текстовых изображений) compress.selectText.4=Автоматический режим - автоматически настраивает качество для получения PDF точного размера diff --git a/src/main/resources/messages_sk_SK.properties b/src/main/resources/messages_sk_SK.properties index a26aff8a..c9f790ad 100644 --- a/src/main/resources/messages_sk_SK.properties +++ b/src/main/resources/messages_sk_SK.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Konvertovať do PDF compress.title=Komprimovať compress.header=Komprimovať PDF compress.credit=Táto služba používa qpdf pre kompresiu/optimalizáciu PDF. -compress.selectText.1=Manuálny režim - Od 1 do 4 +compress.selectText.1=Manuálny režim - Od 1 do 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Úroveň optimalizácie: compress.selectText.3=4 (Hrozné pre textové obrázky) compress.selectText.4=Automatický režim - Automaticky upravuje kvalitu, aby sa PDF dostalo na presnú veľkosť diff --git a/src/main/resources/messages_sr_LATN_RS.properties b/src/main/resources/messages_sr_LATN_RS.properties index bcd7b9f8..0bfe51c7 100644 --- a/src/main/resources/messages_sr_LATN_RS.properties +++ b/src/main/resources/messages_sr_LATN_RS.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Konvertuj u PDF compress.title=Kompresija compress.header=Kompresuj PDF compress.credit=Ova usluga koristi qpdf za kompresiju / optimizaciju PDF-a. -compress.selectText.1=Ručni režim - Od 1 do 4 +compress.selectText.1=Ručni režim - Od 1 do 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Nivo optimizacije: compress.selectText.3=4 (Užasno za tekstualne slike) compress.selectText.4=Automatski režim - Automatski prilagođava kvalitet kako bi PDF bio tačne veličine diff --git a/src/main/resources/messages_sv_SE.properties b/src/main/resources/messages_sv_SE.properties index 2f65b3aa..6fb074cf 100644 --- a/src/main/resources/messages_sv_SE.properties +++ b/src/main/resources/messages_sv_SE.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Konvertera till PDF compress.title=Komprimera compress.header=Komprimera PDF compress.credit=Denna tjänst använder qpdf för PDF-komprimering/optimering. -compress.selectText.1=Manuellt läge - Från 1 till 4 +compress.selectText.1=Manuellt läge - Från 1 till 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimeringsnivå: compress.selectText.3=4 (Fruktansvärt för textbilder) compress.selectText.4=Autoläge - Autojusterar kvaliteten för att få PDF till exakt storlek diff --git a/src/main/resources/messages_th_TH.properties b/src/main/resources/messages_th_TH.properties index 54779f3c..a5f062f8 100644 --- a/src/main/resources/messages_th_TH.properties +++ b/src/main/resources/messages_th_TH.properties @@ -933,7 +933,8 @@ fileToPDF.submit=แปลงเป็น PDF compress.title=บีบอัด compress.header=บีบอัด PDF compress.credit=บริการนี้ใช้ qpdf สำหรับการบีบอัด/การเพิ่มประสิทธิภาพ PDF -compress.selectText.1=โหมดแมนนวล - จาก 1 ถึง 4 +compress.selectText.1=โหมดแมนนวล - จาก 1 ถึง 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=ระดับการเพิ่มประสิทธิภาพ: compress.selectText.3=4 (ไม่ดีสำหรับภาพข้อความ) compress.selectText.4=โหมดอัตโนมัติ - ปรับคุณภาพอัตโนมัติเพื่อให้ PDF ตรงกับขนาดที่ต้องการ diff --git a/src/main/resources/messages_tr_TR.properties b/src/main/resources/messages_tr_TR.properties index 4c2866d9..d383ee93 100644 --- a/src/main/resources/messages_tr_TR.properties +++ b/src/main/resources/messages_tr_TR.properties @@ -933,7 +933,8 @@ fileToPDF.submit=PDF'e Dönüştür compress.title=Sıkıştır compress.header=PDF'i Sıkıştır compress.credit=Bu hizmet PDF Sıkıştırma/Optimizasyonu için qpdf kullanır. -compress.selectText.1=Manuel Mod - 1'den 4'e +compress.selectText.1=Manuel Mod - 1'den 5'e +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimizasyon seviyesi: compress.selectText.3=4 (Metin resimleri için hiç uygun değil) compress.selectText.4=Otomatik mod - PDF'in tam boyutuna ulaşmak için kaliteyi otomatik ayarlar diff --git a/src/main/resources/messages_uk_UA.properties b/src/main/resources/messages_uk_UA.properties index 25084ce5..00845c74 100644 --- a/src/main/resources/messages_uk_UA.properties +++ b/src/main/resources/messages_uk_UA.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Перетворити у PDF compress.title=Стиснути compress.header=Стиснути PDF compress.credit=Ця служба використовує qpdf для стиснення/оптимізації PDF. -compress.selectText.1=Ручний режим - від 1 до 4 +compress.selectText.1=Ручний режим - від 1 до 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Рівень оптимізації: compress.selectText.3=4 (Жахливо для текстових зображень) compress.selectText.4=Автоматичний режим - автоматично налаштовує якість для отримання PDF точного розміру diff --git a/src/main/resources/messages_vi_VN.properties b/src/main/resources/messages_vi_VN.properties index 34189730..1f5f3a0b 100644 --- a/src/main/resources/messages_vi_VN.properties +++ b/src/main/resources/messages_vi_VN.properties @@ -933,7 +933,8 @@ fileToPDF.submit=Chuyển đổi sang PDF compress.title=Nén compress.header=Nén PDF compress.credit=Dịch vụ này sử dụng qpdf để Nén/Tối ưu hóa PDF. -compress.selectText.1=Chế độ thủ công - Từ 1 đến 4 +compress.selectText.1=Chế độ thủ công - Từ 1 đến 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Mức độ tối ưu hóa: compress.selectText.3=4 (Tệ cho hình ảnh văn bản) compress.selectText.4=Chế độ tự động - Tự động điều chỉnh chất lượng để đạt được kích thước PDF chính xác diff --git a/src/main/resources/messages_zh_BO.properties b/src/main/resources/messages_zh_BO.properties index 39b34bd3..af0ff428 100644 --- a/src/main/resources/messages_zh_BO.properties +++ b/src/main/resources/messages_zh_BO.properties @@ -933,7 +933,8 @@ fileToPDF.submit=PDF ལ་བསྒྱུར་བ། compress.title=སྡུད་སྒྲིལ། compress.header=PDF སྡུད་སྒྲིལ། compress.credit=ཞབས་ཞུ་འདིས་ PDF སྡུད་སྒྲིལ་/ཡར་རྒྱས་གཏོང་བའི་ཆེད་དུ་ qpdf བེད་སྤྱོད་བྱེད་པ། -compress.selectText.1=ལག་བཟོས་��ྣམ་པ། - 1 ནས་ 4 བར། +compress.selectText.1=Manual Mode - From 1 to 4 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=Optimisation level: compress.selectText.3=4 (Terrible for text images) compress.selectText.4=རང་འགུལ་རྣམ་པ། - PDF ཏག་ཏག་ཆེ་ཆུང་ཚད་ལ་འཁྲིད་པའི་ཆེད་དུ་སྤུས་ཚད་རང་འགུལ་གྱིས་སྙོམ་སྒྲིག་བྱེད་པ། diff --git a/src/main/resources/messages_zh_CN.properties b/src/main/resources/messages_zh_CN.properties index 3440ced4..837b8c6e 100644 --- a/src/main/resources/messages_zh_CN.properties +++ b/src/main/resources/messages_zh_CN.properties @@ -933,7 +933,8 @@ fileToPDF.submit=转换为 PDF compress.title=压缩 compress.header=压缩 PDF compress.credit=此服务使用qpdf进行 PDF 压缩/优化。 -compress.selectText.1=手动模式 - 从 1 到 4 +compress.selectText.1=手动模式 - 从 1 到 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=优化级别: compress.selectText.3=4(文本图像很糟糕) compress.selectText.4=自动模式 - 自动调整质量以获得精确大小的PDF diff --git a/src/main/resources/messages_zh_TW.properties b/src/main/resources/messages_zh_TW.properties index f351c23b..a49d3513 100644 --- a/src/main/resources/messages_zh_TW.properties +++ b/src/main/resources/messages_zh_TW.properties @@ -933,7 +933,8 @@ fileToPDF.submit=轉換為 PDF compress.title=壓縮 compress.header=壓縮 PDF compress.credit=此服務使用 qpdf 進行 PDF 壓縮/最佳化。 -compress.selectText.1=手動模式 - 從 1 到 4 +compress.selectText.1=手動模式 - 從 1 到 5 +compress.selectText.1.1=In optimization levels 6 to 9, in addition to general PDF compression, image resolution is scaled down to further reduce file size. Higher levels result in stronger image compression (up to 50% of the original size), achieving greater size reduction but with potential quality loss in images. compress.selectText.2=最佳化等級: compress.selectText.3=4(對於含有文字的影像來說結果很糟) compress.selectText.4=自動模式 - 自動調整品質使 PDF 達到指定的檔案大小 diff --git a/src/main/resources/templates/misc/compress-pdf.html b/src/main/resources/templates/misc/compress-pdf.html index e22d1ef4..54d6e61c 100644 --- a/src/main/resources/templates/misc/compress-pdf.html +++ b/src/main/resources/templates/misc/compress-pdf.html @@ -26,6 +26,7 @@

+