Our commitment to advancing cross-language communication takes another major step forward at Microsoft Build. Azure Translator in Foundry Tools is expanding Document Translation with a set of new capabilities designed to meet enterprises where their content lives today — across formats, modalities, and languages. From large language model–powered translations to native image translation and expanded structured content support, these updates help organizations translate more of what they produce, with higher fidelity and less friction.
Here’s what’s new.
Translate image files — synchronous (GA)
With the new synchronous image translation capability, Document Translation can now accept an image file directly — returning a translated image in real time, with layout preserved.
How It Works
The service uses Azure AI Vision to detect and extract text from the image, translates it with Azure Translator, and renders the translated text back into the image in context. This happens in a single synchronous call, making it ideal for interactive scenarios such as customer support workflows, live preview experiences, and on-demand localization.
Getting Started
Submit an image file to the synchronous Document Translation endpoint, specifying source and target languages as you would for any other document type.
import os
from pathlib import Path
import requests
endpoint = "DOCUMENT_TRANSLATION_ENDPOINT"
key = "DOCUMENT_TRANSLATION_KEY"
imagefile_path = Path("./image_file.jpg")
response = requests.post(
f"{endpoint}/translator/document:translate",
params={
"api-version": "2026-03-01",
"sourceLanguage": "en",
"targetLanguage": "de",
},
headers={"Ocp-Apim-Subscription-Key": key},
files={
"document": (
imagefile_path.name,
imagefile_path.open("rb"),
"application/json",
)
},
timeout=120,
)
response.raise_for_status()
Path("./image_file_de.jpg").write_bytes(response.content)
Usage and cost
This feature uses Azure Translator resource, and translating images incurs additional charges. Review Azure Translator pricing.
Translate image files — batch/asynchronous (GA)
For organizations processing images at scale — scanned archives, product catalogs, training datasets — batch image translation brings the same enterprise throughput you expect from Document Translation to visual content.
How It Works
Submit a batch of image files staged in Azure Blob Storage. The service processes each image asynchronously, translates embedded text using Azure AI Vision and Azure Translator, and writes the translated images back to your target container — ready for downstream pipelines.
Getting Started
Use the batch Document Translation REST API, pointing your source container to a collection of supported image files. Results are delivered to your target container on completion.
import os
import requests
endpoint = "DOCUMENT_TRANSLATION_ENDPOINT"
key = "DOCUMENT_TRANSLATION_KEY"
payload = {
"inputs": [
{
"source": {
"sourceUrl": "SOURCE_CONTAINER_SAS_URL_OR_MANAGED_IDENTITY",
"storageSource": "AzureBlob",
"language": "en",
},
"targets": [
{
"targetUrl": "TARGET_CONTAINER_SAS_URL_OR_MANAGED_IDENTITY",
"storageSource": "AzureBlob",
"language": "fr",
}
],
}
]
}
response = requests.post(
f"{endpoint}/translator/document/batches",
params={"api-version": "2026-03-01"},
headers={
"Ocp-Apim-Subscription-Key": key,
"Content-Type": "application/json",
},
json=payload,
timeout=60,
)
response.raise_for_status()
print("Batch operation:", response.headers["Operation-Location"])
Usage and cost
This feature uses Azure Translator resource, and translating images incurs additional charges. Review Azure Translator pricing.
Batch Document Translation for PDF leveraging Azure AI Document Intelligence (GA)
PDF remains the workhorse format for enterprise documents — and we’re making batch PDF translation even better by leveraging Azure AI Document Intelligence. This update brings improved layout retention, more accurate handling of complex multi-column structures, and higher fidelity for embedded elements such as tables and footnotes.
How It Works
Enhancements to the PDF processing pipeline deliver translated output that more closely mirrors the source — so documents look like originals, not approximations.
Getting Started
Submit PDFs through the same batch translation endpoint you already use for other document formats. Stage source PDFs in a read-enabled Azure Blob Storage container, provide a write-enabled target container, and start the batch operation.
import os
import requests
endpoint = "DOCUMENT_TRANSLATION_ENDPOINT"
key = "DOCUMENT_TRANSLATION_KEY"
payload = {
"inputs": [
{
"source": {
"sourceUrl": "PDF_SOURCE_CONTAINER_SAS_URL_OR_MANAGED_IDENTITY",
"storageSource": "AzureBlob",
"language": "en",
},
"targets": [
{
"targetUrl": "PDF_TARGET_CONTAINER_SAS_URL_OR_MANAGED_IDENTITY",
"storageSource": "AzureBlob",
"language": "es",
}
],
}
]
}
response = requests.post(
f"{endpoint}/translator/document/batches",
params={"api-version": "2026-03-01"},
headers={
"Ocp-Apim-Subscription-Key": key,
"Content-Type": "application/json",
},
json=payload,
timeout=60,
)
response.raise_for_status()
print("PDF batch operation:", response.headers["Operation-Location"])
Usage and cost
This feature uses Azure Translator resource. Review Azure Translator pricing.
XML DITA and XLIFF 2.0 support in synchronous and asynchronous Document Translation (GA)
Technical writers, localization teams, and enterprise content platforms increasingly rely on structured authoring formats. Document Translation now natively supports XML DITA and XLIFF 2.0 across both synchronous and asynchronous modes.
How It Works
The service preserves semantic markup, element structure, and translation units defined by each format — so your translated output drops cleanly back into your CMS, CAT tool, or publishing pipeline without preprocessing or post-cleanup.
Getting Started
Submit DITA or XLIFF 2.0 files to either the synchronous or asynchronous Document Translation endpoint. Supported file extensions and schema details are listed in the documentation.
import os
from pathlib import Path
import requests
endpoint = "DOCUMENT_TRANSLATION_ENDPOINT"
key = "DOCUMENT_TRANSLATION_KEY"
xliff_path = Path("./messages.xlf")
response = requests.post(
f"{endpoint}/translator/document:translate",
params={
"api-version": "2026-03-01",
"sourceLanguage": "en",
"targetLanguage": "de",
},
headers={"Ocp-Apim-Subscription-Key": key},
files={
"document": (
xliff_path.name,
xliff_path.open("rb"),
"application/xliff+xml",
)
},
timeout=120,
)
response.raise_for_status()
Path("./messages.de.xlf").write_bytes(response.content)
Usage and cost
This feature uses Azure Translator resource. Review Azure Translator pricing.
Translate images within Office documents — batch Document Translation (GA)
Word documents, and PowerPoint decks rarely contain only text. Charts, diagrams, screenshots, and embedded images often carry the most critical information on the page — and with this update, text inside those images is now translated alongside the document text in batch Document Translation.
How It Works
Document Translation leverages Azure AI Document Intelligence to detect, extract, and translate text embedded within images inside Office files. The translated images are reinserted into the document, producing a fully localized output — slides, reports, and spec sheets that speak every language your customers do.
Getting Started
This capability builds on the existing “translateTextWithinImage” parameter introduced for image-in-document translation. Set the parameter to “true” in your batch request options to activate image text translation across Word and PowerPoint documents.
import os
import requests
endpoint = "DOCUMENT_TRANSLATION_ENDPOINT"
key = "DOCUMENT_TRANSLATION_KEY"
payload = {
"inputs": [
{
"source": {
"sourceUrl": "OFFICE_SOURCE_CONTAINER_SAS_URL_OR_MANAGED_IDENTITY",
"storageSource": "AzureBlob",
"language": "en",
},
"targets": [
{
"targetUrl": "OFFICE_TARGET_CONTAINER_SAS_URL_OR_MANAGED_IDENTITY",
"storageSource": "AzureBlob",
"language": "ja",
}
],
}
],
"options": {
"translateTextWithinImage": True,
},
}
response = requests.post(
f"{endpoint}/translator/document/batches",
params={"api-version": "2026-03-01"},
headers={
"Ocp-Apim-Subscription-Key": key,
"Content-Type": "application/json",
},
json=payload,
timeout=60,
)
response.raise_for_status()
print("Office batch operation:", response.headers["Operation-Location"])
Usage and cost
This feature uses Azure Translator in Foundry Tools, and translating images incurs additional charges. Review Azure Translator pricing.
LLM-powered capabilities in Document Translation (Coming Soon)
Building on the proven reliability of Azure Translator in Foundry Tools, Document Translation now offers large language model–powered translations across document workflows. This capability brings deeper contextual understanding to enterprise content — without requiring any change to how you integrate with the service. This feature will be released soon.
How It Works
When LLM translation is enabled, Document Translation routes your content through LLMs (GPT-5.x) optimized for long-form, context-rich documents. You retain full control — choose LLM-powered translation when quality and nuance matter most, or stay with classic neural machine translation (NMT) models when throughput and cost efficiency are priorities.
Usage and cost
This feature requires a Microsoft Foundry resource and a large language model deployment in Foundry Models. It uses Azure Translator in Foundry Tools for Document Translation, and LLM usage incurs additional charges. Review Microsoft Foundry pricing.
These new advancements reflect our dedication to pushing the boundaries of Document Translation — empowering enterprises to connect, collaborate, and communicate more effectively, regardless of language or format.
0 comments
Be the first to start the discussion.