Can your PDF editor handle Arabic?

Many PDF editors show Arabic correctly on screen and then save something else, such as words in reverse order or a line turned into a picture. Here are seven real Arabic PDFs, made with Chrome, LibreOffice and Word, and eleven small tasks. Do a task in any editor, save, and the checker tells you what the saved file really holds.

Download the test set (ZIP, 585 KB)

The test PDFs, the tasks, the checker and the files BlendPDF saved.

How BlendPDF did

  • Adding Arabic: every check passed on all four files, except that lines with harakat look right but copy out in pieces.
  • Changing a line: the new line passed on every file we could change, harakat aside, and the rest of the page read as before. Our first run found a bug in BlendPDF here: on files made by Chrome, the other lines then read in pieces in pdftotext. We fixed it and ran those tasks again.
  • The page with a shadow: BlendPDF won’t change its text, and says what to do instead.

Tested on 12 November 2026 with Edit PDF on blendpdf.com, in Chrome.

Run the checker

  1. Install Node 18 or later, pdftotext and qpdf. On a Mac: brew install poppler qpdf. On Debian or Ubuntu: sudo apt install poppler-utils qpdf.
  2. Unzip the test set. Open one of its PDFs in the editor you want to check, do the task, and save.
  3. In the unzipped folder, run the checker with the task and your saved file:
node check.mjs 1a saved.pdf

Each check prints PASS or FAIL and what it found. node check.mjs --original 01-chrome-times-new-roman.pdf shows how a test file reads before anyone edits it.

What the checker looks at

It reads the saved file with pdftotext, the reader behind many Linux viewers and search tools, once with ActualText and once without.

Search
The new words are text, so a search finds them. If they were saved as a picture, it says so.
Copy
Copying gives the new text whole and in reading order.
Order
On the page the words run right to left, so the first word is the rightmost. Latin words and numbers keep their own order inside the line.
Arabic letters
Without ActualText, the fonts’ letter maps still give Arabic letters. Some files map ي and ه to the Persian ی and ھ, and then readers that skip ActualText, such as the viewer in Firefox, can’t find those words.
Harakat
The vowel marks come out with the text, in order.
Old words removed
When you change a line, the old words are out of the file, not hidden under a white box.
Rest of the page
Every other line reads as it did before the edit.

It doesn’t judge how the line looks, so look at the page too: the letters should be joined and the line should sit where it belongs.

pdftotext reads every lam-alef (لا) back to front, in the original files too, so the checker accepts both orders.

The files, the tasks and BlendPDF’s results

Each file is one page with made-up names. File 01 is the page our comparison pages tested. Chrome maps ي to the Persian ی in Arial too, so files 04 to 07 share the trap of file 01.

0101-chrome-times-new-roman.pdf

Made with: Google Chrome 157, Print to PDF · Font: Times New Roman

Chrome writes the right letters in ActualText, but Times New Roman’s letter map gives the Persian ی and ھ for ي and ه. Readers that skip ActualText can’t find words with those letters.

Download this PDF
  • 1aChange «محمد العلوي» to «يوسف الإدريسي»

    BlendPDF:Search passedCopy passedOrder passedArabic letters passedOld words removed passedRest of the page passed
    BlendPDF’s saved file
  • 1bAdd «السيد يوسف الإدريسي» anywhere on the page

    BlendPDF:Search passedCopy passedOrder passedArabic letters passedRest of the page passed
    BlendPDF’s saved file

0202-libreoffice-arial.pdf

Made with: LibreOffice Writer 25.8 · Font: Arial

A clean file: pdftotext reads every line right. Anything wrong after editing comes from the editor.

Download this PDF
  • 2Change «السيدة سعاد بنعلي» to «السيد كريم التازي»

    BlendPDF:Search passedCopy passedOrder passedArabic letters passedOld words removed passedRest of the page passed
    BlendPDF’s saved file

0303-word-tahoma.pdf

Made with: Microsoft Word for Mac, Save as PDF · Font: Tahoma

Word for Mac saves through macOS, which places each letter on its own and maps ي and ه to Persian letters. Even before editing, most lines don’t read right, so an editor may not know what a line says.

Download this PDF
  • 3Change «التاسعة» to «الثامنة»

    BlendPDF:Search passedCopy passedOrder passedArabic letters passedOld words removed passedRest of the page passed

    The line’s box opened empty, because the file doesn’t say which letters it shows. You type the whole line, and the saved file then passes.

    BlendPDF’s saved file

0404-lam-alef.pdf

Made with: Google Chrome 157, Print to PDF · Font: Arial

Lam followed by alef is drawn as one shape (لا، لأ، لإ، لآ). An editor has to make that shape as you type and keep both letters in the text.

Download this PDF
  • 4aChange «يوم الاثنين.» to «الأربعاء، ولا تأجيل بعده.»

    BlendPDF:Search passedCopy passedOrder passedArabic letters passedOld words removed passedRest of the page passed
    BlendPDF’s saved file
  • 4bAdd «لا تأجيل بعد الآن» anywhere on the page

    BlendPDF:Search passedCopy passedOrder passedArabic letters passedRest of the page passed
    BlendPDF’s saved file

0505-harakat.pdf

Made with: Google Chrome 157, Print to PDF · Font: Arial

Fully vowelled text. Each mark has to sit on its letter and come out with the text.

Download this PDF
  • 5aChange «زَرَعَ حَصَدَ» to «صَبَرَ ظَفِرَ»

    BlendPDF:Search passedCopy failedOrder passedArabic letters passedHarakat failedOld words removed passedRest of the page passed

    The marks sit right on the page but are saved as separate pieces, so copying breaks the words up, in macOS Preview too.

    BlendPDF’s saved file
  • 5bAdd «الصَّبْرُ مِفْتَاحُ الفَرَجِ» anywhere on the page

    BlendPDF:Search passedCopy failedOrder passedArabic letters passedHarakat failedRest of the page passed

    It looks right and search finds the words, but the marks are saved as separate pieces, so copying breaks the words up, in macOS Preview too.

    BlendPDF’s saved file

0606-arabic-latin-numbers.pdf

Made with: Google Chrome 157, Print to PDF · Font: Arial

Latin words and numbers read left to right inside an Arabic line, which still runs right to left around them.

Download this PDF
  • 6aChange «تصميم موقع إلكتروني على WordPress» to «متجر إلكتروني على Shopify لمدة 12 شهرا»

    BlendPDF:Search passedCopy passedOrder passedArabic letters passedOld words removed passedRest of the page passed
    BlendPDF’s saved file
  • 6bAdd «تم الدفع عبر PayPal يوم 14 نوفمبر» anywhere on the page

    BlendPDF:Search passedCopy passedOrder passedArabic letters passedRest of the page passed
    BlendPDF’s saved file

0707-text-shadow.pdf

Made with: Google Chrome 157, Print to PDF · Font: Arial

The title has a blurred shadow, which Chrome saves as a soft mask. Rewriting a page like this can change how it looks.

Download this PDF
  • 7Change «لجميع الزوار» to «للتلاميذ وأوليائهم»

    BlendPDF:Refused

    BlendPDF won’t change text on this page, because rewriting it would change the shadow. It says to cover the old words with Hide (white box) and type the new ones with Text.

Other editors on the same page

On 12 November 2026 we tried free online editors on test file 01. Here is what they saved, from our comparison pages:

  • PDF Candy1bReal text with joined letters, but the three words in reverse order.
  • Smallpdf1bThe last word was missing and the letters weren’t joined.
  • PDF241bThe line was saved as a picture, so search can’t find it.
  • PdfBayt1bThe line was saved as a picture, so search can’t find it.
  • Sejda1aIt warned that it doesn’t fully support Arabic, and the changed line ran off the page.
  • PDF Candy1aWe couldn’t change the line.

Run on the files those editors saved, the checker flags the same faults. iLovePDF and Adobe Acrobat online are on the comparison pages, from what their own pages say.

All comparisons

Why the checker reads each file twice

A PDF stores the shapes of the letters and, separately, which letters they are. Search and copy use the second part. Chrome writes it twice: as ActualText next to each letter, and in each font’s letter map. pdftotext uses ActualText. pdf.js, the viewer in Firefox, uses the letter maps.

In Chrome’s files the two disagree: ActualText says ي, the letter map says the Persian ی. So the same file is searchable in one reader and not in another. The checker reads it with ActualText, then with ActualText switched off, and reports both.

Use it in a review

The test PDFs and cases.json are under Creative Commons Attribution 4.0 (CC BY 4.0): use them in reviews, articles and your own tests, with a credit and a link to this page. The checker is under the GNU AGPL-3.0, like BlendPDF’s source code.

Source: BlendPDF, “Can your PDF editor handle Arabic?”, https://blendpdf.com/arabic-pdf-editor-test (CC BY 4.0)

Something here out of date or wrong? Email contact@blendpdf.com and we’ll check it and correct the page within 7 days.

Frequently Asked Questions

Which online PDF editor handles Arabic best?

Of the free online editors we tried on 12 November 2026, BlendPDF was the only one whose added Arabic line was real text with all three words in order. Editors change, so run the test on the ones you use.

Do I need to install anything to take the test?

Not to do the tasks: use the editor as you normally would. To run the checker you need Node 18 or later, pdftotext and qpdf, which are all free.

Why does pdftotext show لا as ال?

It reads the lam-alef shape back to front, with files from Chrome, Word and LibreOffice alike. The checker accepts both orders, so this isn’t counted against the editor.

Can I add my own files?

Yes. Put the PDF next to check.mjs, add it with the true text of its lines and a task to cases.json, and the checker works the same way.