PUA Unicode is Saved as Symbols instead of Text | RTF to DOCX Conversion using .NET


I found an issue when using Aspose Words to export a .docx containing Private Use Area (PUA) Unicode.

When I use MS Word to read an .rtf that contains PUA Unicode chars and then save it as a .docx, it saves the PUA chars as text.

When I use Aspose to read the .rtf and then export it as a .docx, it saves the PUA chars as symbols.

The behavior is the same when Aspose reads a .docx containing PUA chars created by MS Word and then saves it as a .docx. In the original .docx created by MS Word, the PUA chars are text. But in the .docx created by Aspose, the PUA chars are saved as symbols.

Here is the code sample using .rtf:

public static void TestTextWithPUA()
   string testFolder = Path.Combine(inputFolder, "TestPUA");
   Document document = new Document(Path.Combine(testFolder, "TestPUA.rtf"));

   document.Save(Path.Combine(testFolder, $"TestPUA.[SavedWithAspose].rtf"), SaveFormat.Rtf);
   document.Save(Path.Combine(testFolder, $"TestPUA.[SavedWithAspose].docx"), SaveFormat.Docx); 

I attached the sample file “TestPUA.rtf” and the outputs, from Aspose and MS Word. I also attached a screenshot showing the issue in the .docx inner XML.

Looking to the inner .docx xml we can see the follwoing difference:

Saved with MS Word:


Saved with Aspose:

<w:sym w:font="Unicode BMP Fallback SIL" w:char="F735" />

So what I need to know is: How do I force Aspose to save PUA unicode chars as text, instead of symbols, like MS Word does, when exporting to .docx?

Thank you

TestPUA.zip (634.8 KB)
Screenshot.png (58.4 KB)


We have logged this problem in our issue tracking system as WORDSNET-22481. You will be notified via this forum thread once this issue is resolved.

We apologize for your inconvenience.

Hi. 3 months passed since this issue was reported, and if it is not expected to be fixed in the near future we will need to consider stopping using Aspose.Words and find an alternative solution.

Is there any updates on this issue?


We try our best to deal with every customer request in a timely fashion, we unfortunately cannot guarantee a delivery date to every customer issue. We work on issues on a first come, first served basis. We feel this is the fairest and most appropriate way to satisfy the needs of the majority of our customers.

Unfortunately, your issue has been postponed (no estimate is available at the moment). We will inform you via this forum thread once there is an update available on it. We apologize for your inconvenience.