Build a Bilingual Film Deck When the Two Languages Read in Different Directions
Build a Bilingual Film Deck When the Two Languages Read in Different Directions
Keep the text in its logical reading order. Give independent language passages their own composition settings, and use mixed-direction text only where the content genuinely belongs in one unit. Do not reverse characters by hand or assume that mirroring the page will solve the type.
The practical question is smaller than “How should a bilingual deck work?” Here, the decision to include both languages has already been made. The task is to build readable English and Arabic passages in InDesign, keep necessary mixed items intact, and check the exported file rather than trusting its appearance in the layout application.
Demonstration limit: This is a documented procedure, not a verified native-file walkthrough. The planned approved Arabic sample and qualified language review are not available, and no InDesign page or PDF export has been built for this article. The original character-page specification and text-comparison utility below are usable working material, but they do not supply that missing proof.
Separate three questions that can look like one
For this task, distinguish the wording the team approved, the sequence stored as text, and the arrangement shown on the page. A reviewer can approve the words while the layout remains wrong. A page can look plausible while copied text no longer reproduces the approved sequence.
W3C's introduction to the Unicode Bidirectional Algorithm distinguishes logical character order from visual order. It explains that a passage's base direction affects the placement of directional runs, while punctuation and numbers require more care than simply treating every visible character as a letter. Its examples explain the concept; they are not tests of InDesign or PDF output.[^bidi]
That distinction changes how you approach a defect. If a Latin-script name appears in an unexpected place inside Arabic copy, do not immediately cut the name out and paste its characters backward. First ask whether the underlying text is intact, whether the surrounding paragraph has the intended direction, and whether the name needs a local directional treatment.
“Make it look right” is not a sufficient repair instruction. It invites a layout-only correction whose effect on editing or extraction has not been examined.
Define one character page before building the deck
Use a small representative page rather than converting a hundred text boxes before you understand the problem. The following is an original fictional specification, not approved bilingual copy.
The character is Mira Nasser, a projectionist. The English working passage is:
Mira keeps the cinema running by solving problems before anyone sees them. When the final screening becomes unsafe, she cancels it rather than hide the fault. Keeping the audience out protects them, but puts her at odds with the filmmaker whose work they came to see.
This gives the future language reviewer an actual proposition to preserve. Do not replace the Arabic passage with a machine-generated version and mark both approved. Commission or obtain the appropriate language work, including decisions about the name, punctuation, and numeral forms.
The page specification has two separate body passages, one in each language, plus a heading and a project-credit item containing the Latin-script string Mira Nasser (2026). In that credit item, 2026 is a fictional project-year label, not Mira's age. Its meaning must stay the same in both versions.
Keep the items identifiable in your copy record: English body, Arabic body, display name, and mixed credit. Each should point to its approved source and revision. This is not a new content-management system; a small labeled text file is sufficient for a one-page test. Its purpose is to make “compare with the source” an operation someone can actually perform.
Choose separate flows for separate passages
The English and Arabic bodies communicate parallel material, but they are not one alternating sentence. Start them as independent text flows. This lets you examine the readability and ending of each passage without inserting the other language halfway through its grammar.
A side-by-side arrangement might give each body its own heading and a clear relationship between the two passages. A stacked arrangement might place each complete language section in sequence. The choice here is about organizing the agreed bilingual page, not deciding whether the project should have separate editions.
Do not use a shared bottom edge as the sole measure of success. One passage might need different wrapping or more room. Ask the reviewer whether the hierarchy, interruptions, and line endings support reading. The two blocks should have comparable importance, not necessarily identical silhouettes.
For the Mira page, separate flows also make review notes precise. “Arabic body, final sentence, after the reference to the filmmaker” locates a problem. “The right column looks strange” leaves the person making the correction to guess both the text and the intended behavior.
Keep a body passage intact when testing width. Breaking every line into an independent text box might make a particular arrangement easier to place manually, but it also changes the editing task. Someone revising the sentence would have to manage pieces that no longer behave as one passage. Use that fragmentation only for an actual design reason, not to conceal a direction problem.
Keep genuinely mixed items together
The credit line presents a different problem. An Arabic role description followed by a Latin-script name and a parenthetical year may be one meaningful item. Separating every component into its own box can make the line fragile when a name changes or the page narrows.
Treat the approved item as a single text sequence first. Identify the role phrase, name, parentheses, and digits without rewriting their order to imitate a screenshot. The exact relationship between them belongs to the approved copy, not to the designer's guess about what Arabic “should look like.”
This is where the route comparison matters. Independent flows give sustained translations room to work separately. A mixed paragraph preserves a meaningful local unit but asks you to control and test the interaction of its parts. Neither route is an all-purpose preference. Use the first for the two bodies on Mira's page and investigate the second for the credit.
The display name could be a separate heading if that is its editorial role. It should not become a separate heading merely because extracting it from the sentence makes a troublesome punctuation mark disappear.
Establish the InDesign environment
Record the installed InDesign version, operating system, and language configuration before documenting a native result. Adobe's June 2, 2026 setup guidance directs users who need full Arabic and Hebrew typographic support to the corresponding language versions of InDesign. It locates the World-Ready composer choices in the Paragraph panel menu, reached through Window > Type & Tables > Paragraph. The available choices named in that guide are Adobe World-Ready Paragraph Composer and Adobe World-Ready Single-line Composer.[^setup]
For the test page, record which composer you use instead of writing only “Arabic enabled.” Keep that initial choice consistent while isolating another problem. Changing the composer, the typeface, the paragraph direction, and the text simultaneously makes it harder to identify which change affected the result.
If the documented controls are absent, investigate the installed language configuration before making a workaround in the copy. A screenshot from another installation does not establish that your current file has the same composition environment.
Also record the exact typefaces and versions used in the native test. This article does not select a universal English–Arabic font pairing or certify a font's language coverage. The relevant question for this page is whether the chosen type, in this installation and export, supports the actual approved text. Preserve names and configuration notes in the handoff; do not assume permission to redistribute font files.
Set direction at the right level
Adobe documents separate controls for paragraphs, character selections, and stories. For a paragraph, use the Paragraph panel's appropriate direction control. For a selected character run, open Window > Type & Tables > Character, then the panel menu's Character Direction choices. For a multicolumn story, use Window > Type & Tables > Story and its story-direction control. Adobe identifies these features with its Middle Eastern or North African version and notes that separate text threads can have different story directions.[^direction]
Here, story is InDesign's text-flow context, not the film's narrative. Avoid a handoff note such as “story reads right to left” unless it is clear that you mean the layout setting.
Apply the language-appropriate paragraph context to each body. For the credit, begin with the direction of its main passage, then inspect the embedded name. A local issue should prompt inspection of that local selection, not a global change to all text on the page. Record the final selection boundaries along with any intentional character-direction setting.
Do not confuse the edge to which a line is aligned with the order in which its contents are composed. In the test record, name both choices. That way, a reviewer can ask for a change to a visual edge without accidentally authorizing a different reading sequence.
Diagnose the credit without rewriting it
Suppose the mixed credit does not read as intended. Treat this as a hypothetical failure until it has been reproduced in your native file.
First compare the source sequence with the text in the layout. Has a space, parenthesis, letter, or digit been added, removed, or transposed? If the source was altered accidentally, restore the approved sequence before experimenting with composition. Otherwise you may end up tuning the settings around damaged copy.
Next, inspect the paragraph context and the boundary of the Latin-script name. Test one setting at a time and preserve a small before-and-after record. Include the surrounding punctuation when deciding what the meaningful unit is; do not assume that selecting the letters alone covers every part of the problem.
W3C notes that numeric digit sequences retain their order within right-to-left text and that some paired characters have direction-sensitive displayed shapes. That is a reason to inspect the whole name-and-year unit, not to reverse 2026 into 6202 or manually swap parentheses as a general fix.[^bidi]
After a candidate repair, reflow the item. Test the actual proposed width and another width that moves the sensitive boundary to a different line. You are asking whether the same approved text still works, not designing an attractive second layout. A repair that depends on one convenient wrap should remain an unresolved defect until you understand that dependency.
Recheck the full paragraph after a local change. A correct-looking name is not enough if its relationship to the role phrase or year is now unclear. The language reviewer should see the complete item, not a cropped image that excludes the part whose meaning changed.
Make reusable decisions visible
Once the test establishes appropriate settings, give the repeated roles recognizable style names. For example, Body — English, Body — Arabic, and Credit — Arabic with Latin name describe intended uses. They are proposed names, not built-in InDesign presets.
Keep a short record of which decisions belong to each role and which were local exceptions. A designer opening the file later should not have to discover an intentional override by accidentally removing it. Equally, do not bless every accidental override as a language-specific necessity merely because the page once looked correct.
The copy owner should approve a change to wording or spelling. The language reviewer should review language-sensitive presentation and the resulting text. The designer should record layout and export changes. One person may hold more than one of these responsibilities, but the record should still distinguish them.
For Mira's page, this means that shortening the Arabic body to fit is not the same kind of change as widening its frame. The first changes approved content; the second changes its presentation and still needs a recheck. Keep that difference visible before applying a solution throughout the deck.
Export a named test, not an assumed success
Save the native test and export a PDF with a name that identifies the copy revision and test version. Record the actual export path and settings used. No particular path has been executed for this article, so there is no native result here to reproduce.
For tagged PDF order, Adobe documents the Articles panel: add the relevant page objects, arrange their sequence, include the article when exporting, and enable its use for PDF tagging order. The export must also have Create Tagged PDF enabled for that documented route.[^reading-order]
Treat this as configuration to verify, not a certificate. On the bilingual page, decide whether the English section should be encountered as a complete unit before the Arabic section, or whether another reviewed sequence is intended. A visually tidy arrangement does not answer that question by itself.
Keep the tagged reading-order check distinct from an ordinary clipboard check. Do not claim that configuring one proves the other. Record what the receiving software actually presents for the operation you perform.
Check appearance and recovered text separately
Open the exported PDF in the intended recipient viewer and record its name and version. Review both complete passages and the mixed credit at a readable scale. Ask the language reviewer to examine the actual export, including line endings, the name, punctuation, and year. Approval of the source text alone does not approve this presentation.
Then copy each representative item separately into a UTF-8 plain-text file. Record whether you used manual selection, a viewer command, or a named extraction tool. Compare each result with its corresponding approved item. Do not concatenate both languages and then guess where one passage should end.
A second viewer or extraction method can help locate a disagreement, but it does not erase the first failure. Preserve both observations. “Works in Viewer A when selecting one paragraph; order differs in Viewer B when selecting the whole page” is an actionable report. “PDF checked” is not.
The handoff includes a small original logical-text comparison utility, audit_text.py. Obtain it with the rest of the handoff material. It reads two UTF-8 text files without changing them, reports exact differences and their character positions, and identifies the differing characters using Python's Unicode database. Python documents the character-name and bidirectional-class functions used for that reporting.[^python]
Run it on the source and copied text files:
python audit_text.py source.txt copied.txt
An exit code of zero means the sequences match exactly. One means differences were found; two means an input could not be used. A mismatch is a prompt to inspect, not proof that the translation is wrong. An added line break, for example, is different from a reversed digit sequence. The utility deliberately does not normalize, delete, or repair anything silently.
Twelve synthetic checks were run on the included utility, covering changed digit and letter order, swapped parentheses, a removed space, an added direction mark, empty inputs, and command-line behavior. Those checks used artificial strings, not an approved Arabic paragraph or text extracted from a PDF. They establish the utility's tested behavior, not a successful bilingual deck.
An exact match also says nothing about whether the source was a good translation or whether the page rendered it legibly. Keep all three questions in view: approved meaning, readable presentation, and recoverable sequence.
Close the defect at the layer where it occurs
If the wording is wrong, correct and reapprove the copy. If the source sequence is intact but the native presentation is wrong, investigate composition and layout. If the native page is sound but the exported or recovered result differs, keep the output path and receiving software inside the investigation. Do not fix a downstream symptom by corrupting the upstream source.
The open record for any such build stays specific: obtain the approved text and its language review, compose the separate passages and the mixed credit in a recorded environment, export the page, and preserve the visual and recovered-text results together. A specification in one language and a synthetic comparison utility do not replace those operations.
The useful endpoint is not a mirrored page. It is a page whose text has survived its journey, with a record showing what was checked and by whom.
Sources
[^bidi]: W3C Internationalization, Unicode Bidirectional Algorithm basics, sections on directional runs, base direction, neutral characters, numbers, and mirrored characters. Conceptual support only; the document explicitly distinguishes its explanation from application-specific implementation guidance.
[^setup]: Adobe, Set up World-Ready composers for Arabic and Hebrew, updated June 2, 2026, setup and composer selection steps.
[^direction]: Adobe, Control text direction for Arabic and Hebrew, updated June 2, 2026, paragraph, character, and story direction sections. Documents controls and version configuration, not a successfully executed test here.
[^reading-order]: Adobe, Set reading order, updated June 2, 2026, Articles panel and tagged PDF export settings. Not treated as proof of clipboard behavior or accessibility compliance.
[^python]: Python documentation, unicodedata — Unicode Database, name, bidirectional, and unidata_version. The original helper was exercised under Python 3.13.5; it is a text comparison aid, not a bidirectional renderer or PDF extractor.
Frequently asked questions
What is the central distinction this bilingual deck procedure asks you to keep?
Separate the wording the team approved, the sequence stored as text, and the arrangement shown on the page. A reviewer can approve the words while the layout is wrong, and a page can look plausible while copied text no longer reproduces the approved sequence. Keep text in logical reading order and give independent language passages their own composition settings. Use mixed-direction text only where the content genuinely belongs in one unit.
What should be done before converting many text boxes in a bilingual InDesign deck?
Define a small representative character page first. The article uses an original fictional specification: Mira Nasser, a projectionist; an English body passage; an Arabic body; a heading; and a mixed credit item containing Mira Nasser (2026), where 2026 is a fictional project-year label, not Mira's age. Do not replace the Arabic passage with a machine-generated version and mark both approved. Commission or obtain appropriate language work. Keep a labeled copy record for English body, Arabic body, display name, and mixed credit, each pointing to its approved source and revision.
How should separate English and Arabic body passages be laid out and reviewed?
Start them as independent text flows. A side-by-side or stacked arrangement can organize the agreed bilingual page, but do not use a shared bottom edge as the sole measure of success. The two blocks should have comparable importance, not necessarily identical silhouettes. Ask the reviewer whether hierarchy, interruptions, and line endings support reading. Keep a body passage intact when testing width; fragmenting every line into independent boxes changes the editing task and should be used only for an actual design reason.
What InDesign settings and direction controls does the article say to record?
Record the installed InDesign version, operating system, and language configuration before documenting a native result. Adobe's June 2, 2026 setup guidance points users needing full Arabic and Hebrew typographic support to the corresponding language versions of InDesign. The named World-Ready composer choices are Adobe World-Ready Paragraph Composer and Adobe World-Ready Single-line Composer, found in the Paragraph panel menu reached through Window > Type & Tables > Paragraph. Direction controls are separate for paragraphs, selected character runs, and stories: use the Paragraph panel, Character Direction via Window > Type & Tables > Character, and story direction via Window > Type & Tables > Story. Record the composer, typefaces and versions, selection boundaries, and any intentional character-direction setting. The article does not select a universal English-Arabic font pairing or certify a font's language coverage.
How should the exported PDF be checked, and what does the audit utility prove?
Open the exported PDF in the intended recipient viewer and record its name and version. Review both complete passages and the mixed credit at a readable scale, and ask the language reviewer to examine the actual export, including line endings, the name, punctuation, and year. Then copy each representative item separately into a UTF-8 plain-text file and compare each result with its corresponding approved item; do not concatenate both languages. The handoff includes audit_text.py, run as python audit_text.py source.txt copied.txt. Exit code zero means the sequences match exactly, one means differences were found, and two means an input could not be used. A mismatch is a prompt to inspect, not proof that the translation is wrong. The utility deliberately does not normalize, delete, or repair anything silently. Twelve synthetic checks were run on artificial strings, not an approved Arabic paragraph or PDF-extracted text, so they establish the utility's tested behavior, not a successful bilingual deck.