Doctranslate.io

Traduire un PDF de l’anglais vers le japonais avec une API | Conserver la mise en page

Publié par

le

Défis techniques de l’API de traduction de PDF

Traduire des documents par programmation via une API présente de nombreux défis complexes, en particulier pour les fichiers PDF.
C’est bien plus qu’une simple extraction et un remplacement de texte.
Les développeurs doivent faire face à l’interaction complexe de l’encodage, de la mise en page et de la structure des fichiers
pour maintenir l’intégrité visuelle du document source.

Le premier obstacle majeur est l’encodage des caractères.
Alors que le texte anglais utilise généralement ASCII ou UTF-8,
le japonais utilise divers encodages tels que Shift-JIS, EUC-JP et UTF-8.
Si l’API ne gère pas correctement ces encodages,
cela peut entraîner des caractères corrompus (mojibake) ou une corruption des données.
Ceci est inacceptable pour les documents techniques ou juridiques.

Un autre défi majeur est la conservation de la mise en page.
Le PDF est un format statique qui contient du texte, des images, des graphiques vectoriels,
des tableaux et des mises en page à plusieurs colonnes.
Le remplacement du texte anglais par un texte japonais plus verbeux
peut entraîner un débordement de texte, des colonnes désalignées et des images qui se chevauchent.
Une bonne API de traduction de PDF de l’anglais vers le japonais doit
redistribuer intelligemment le contenu pour préserver
l’intégrité de la mise en page d’origine.

De plus, la gestion des polices est extrêmement complexe.
Les PDF intègrent souvent des polices qui peuvent ne pas prendre en charge
l’ensemble des caractères japonais.
L’API doit intelligemment remplacer ou intégrer des polices japonaises appropriées
pour s’assurer que le document traduit est lisible
et a un aspect professionnel.
Négliger cette étape peut entraîner l’affichage du texte sous forme de boîtes illisibles.

Présentation de l’API de traduction de PDF Doctranslate

L’API Doctranslate est spécialement conçue pour relever
ces défis de front. Il s’agit d’un service RESTful robuste
qui permet aux développeurs d’intégrer de manière transparente la traduction de PDF
de l’anglais vers le japonais
dans leurs applications.
Notre API est spécialisée dans l’analyse de structures PDF complexes,
la traduction précise du texte et la reconstruction des fichiers
tout en conservant la mise en page d’origine.

L’API fonctionne avec des méthodes HTTP standard,
utilisant des réponses JSON prévisibles.
Cela facilite l’intégration avec n’importe quel langage de programmation,
tel que Python, JavaScript, Java ou Ruby.
Les développeurs peuvent soumettre des fichiers, suivre l’état des tâches de traduction
et télécharger les documents terminés en quelques lignes de code.
Cela simplifie considérablement le processus de développement.

L’une des fonctionnalités remarquables de Doctranslate est son
moteur avancé de restauration de la mise en page.
Contrairement à d’autres services qui reposent sur un simple remplacement de texte,
notre technologie comprend les éléments structurels d’un PDF.
Il reconnaît les tableaux, les en-têtes, les pieds de page, le texte sur plusieurs colonnes
et le placement des images, garantissant que le contenu japonais traduit
s’intègre parfaitement dans le contexte visuel
du document source.
Cette capacité élimine le besoin de post-traitement manuel fastidieux.

La sécurité et l’évolutivité sont également au cœur de notre plateforme.
Tous les transferts de données sont cryptés avec SSL,
et les fichiers sont supprimés en toute sécurité de nos serveurs après traitement.
Notre infrastructure est conçue pour gérer des volumes élevés de requêtes,
d’un simple document à des lots contenant des milliers de fichiers,
garantissant des performances fiables pour les entreprises de toutes tailles.

Guide étape par étape : Intégration de l’API de traduction de PDF de l’anglais vers le japonais

L’intégration de l’API Doctranslate est simple.
Ce guide vous guidera à travers le processus de téléversement d’un document PDF en anglais,
de sa traduction en japonais et du téléchargement
du résultat à l’aide de Python.
Avant de commencer, assurez-vous d’avoir obtenu une
clé API sur le portail des développeurs Doctranslate.

Étape 1 : Configuration de l’environnement

Tout d’abord, assurez-vous que les bibliothèques nécessaires
sont installées pour votre projet.
Pour cet exemple, nous utiliserons la bibliothèque `requests` pour effectuer des requêtes HTTP.
Si vous ne l’avez pas déjà installée, vous pouvez le faire en utilisant pip.
Exécutez `pip install requests` dans votre terminal.
Cette bibliothèque simplifie la communication avec les points de terminaison de l’API.

Étape 2 : Téléversement du document et lancement de la traduction

Le premier appel API consiste à téléverser votre fichier PDF
et à lancer le processus de traduction.
Vous enverrez une requête POST au point de terminaison `/v3/documents`.
Le corps de la requête doit inclure le fichier, la langue source (`en`)
et la langue cible (`ja`).


import requests
import time
import os

# Définir la clé API et le chemin du fichier
API_KEY = "YOUR_API_KEY"  # Remplacez par votre clé API
FILE_PATH = "path/to/your/document.pdf" # Remplacez par le chemin de votre fichier
API_URL = "https://developer.doctranslate.io"

# Préparer les en-têtes et les données de la requête
headers = {
    "Authorization": f"Bearer {API_KEY}"
}

files = {
    'file': (os.path.basename(FILE_PATH), open(FILE_PATH, 'rb'), 'application/pdf'),
    'source_language': (None, 'en'),
    'target_language': (None, 'ja'),
}

# Téléverser le document et démarrer la traduction
print("Téléversement du document en cours...")
response = requests.post(f"{API_URL}/v3/documents", headers=headers, files=files)

if response.status_code == 201:
    data = response.json()
    document_id = data['id']
    print(f"Succès. ID du document : {document_id}")
else:
    print(f"Erreur : {response.status_code} - {response.text}")
    exit()

# La logique de vérification du statut et de téléchargement suit

Étape 3 : Interrogation du statut de la traduction

Une fois le document téléversé, l’API répond immédiatement, mais
la traduction s’effectue de manière asynchrone.
Vous devrez interroger périodiquement le point de terminaison `/v3/documents/{id}`
en utilisant le `document_id` que vous avez reçu à l’étape précédente
pour vérifier si la traduction est terminée.
Continuez à vérifier jusqu’à ce que le statut devienne `done`.


# Vérifier le statut de la traduction
status_url = f"{API_URL}/v3/documents/{document_id}"

while True:
    status_response = requests.get(status_url, headers=headers)
    if status_response.status_code == 200:
        status_data = status_response.json()
        current_status = status_data['status']
        print(f"Statut actuel : {current_status}")
        if current_status == 'done':
            print("Traduction terminée.")
            break
        elif current_status == 'error':
            print("Une erreur est survenue pendant la traduction.")
            exit()
    else:
        print(f"Échec de la récupération du statut : {status_response.status_code}")
        exit()
    time.sleep(5)  # Attendre 5 secondes avant de vérifier à nouveau

Étape 4 : Téléchargement du document traduit

Une fois que le statut est `done`, la dernière étape consiste à
télécharger le fichier traduit.
Envoyez une requête GET au point de terminaison `/v3/documents/{id}/result`
pour récupérer le contenu du fichier.
Vous pouvez ensuite enregistrer ce contenu dans un fichier PDF local
pour terminer le processus.


# Télécharger le fichier traduit
result_url = f"{API_URL}/v3/documents/{document_id}/result"
result_response = requests.get(result_url, headers=headers)

if result_response.status_code == 200:
    # Créer un nouveau nom de fichier
    base, ext = os.path.splitext(FILE_PATH)
    translated_file_path = f"{base}_ja{ext}"
    
    with open(translated_file_path, 'wb') as f:
        f.write(result_response.content)
    print(f"Fichier traduit enregistré sous {translated_file_path}.")
else:
    print(f"Échec du téléchargement : {result_response.status_code} - {result_response.text}")

Principales considérations pour la traduction en japonais

Lors de l’automatisation de la traduction de l’anglais vers le japonais via une API,
il est crucial de prendre en compte plusieurs nuances linguistiques
pour obtenir des résultats de haute qualité.
Ces facteurs influencent à la fois la mise en œuvre technique
et la qualité de la sortie finale.

Premièrement, considérez que le texte japonais peut être écrit à la fois horizontalement (yokogaki) et verticalement (tategaki).
Alors que la plupart des documents techniques et commerciaux utilisent une orientation horizontale,
les œuvres littéraires et certaines mises en page axées sur le design utilisent une orientation verticale.
Il est important de s’assurer que l’API peut identifier et préserver correctement
l’orientation du texte du document source.
Cela préserve la lisibilité.

Deuxièmement, il y a la complexité des caractères et la compatibilité des polices.
Le japonais utilise trois systèmes d’écriture — hiragana, katakana et kanji —
comprenant des milliers de caractères.
Il est essentiel de s’assurer que la police utilisée par l’API
prend en charge un jeu de glyphes complet qui inclut tous les caractères nécessaires.
L’utilisation de polices incompatibles peut entraîner le phénomène “tofu”,
où les caractères apparaissent comme des boîtes non rendues.

Enfin, considérez la longueur des phrases et les sauts de ligne.
Les phrases japonaises ont tendance à être plus longues que leurs homologues anglaises.
Cela peut avoir un impact sur la mise en page, en particulier dans les colonnes à largeur fixe ou les cellules de tableau.
Une bonne API de traduction doit gérer intelligemment les retours à la ligne pour éviter
le débordement de texte ou les sauts de ligne maladroits.
L’API Doctranslate est conçue pour gérer automatiquement ces ajustements de mise en page.

En conclusion, l’API Doctranslate offre une solution puissante
et fiable pour les développeurs souhaitant intégrer la traduction de PDF de l’anglais vers le japonais
dans leurs applications.
En gérant automatiquement les défis courants tels que l’encodage, la mise en page et les polices,
elle permet aux développeurs d’obtenir des traductions de haute qualité sans intervention manuelle.
En suivant les étapes simples décrites dans ce guide,
vous pouvez rapidement mettre en œuvre un flux de travail de traduction de documents robuste.
Pour un processus simplifié qui préserve intacts les mises en page et les tableaux, vous pouvez traduire instantanément vos documents PDF ici.
Pour des fonctionnalités plus avancées et des options de personnalisation,
veuillez consulter la documentation officielle de l’API.

Doctranslate.io - traductions instantanées et précises dans de nombreuses langues

Laisser un commentaire

chat