We're sorry Aspose doesn't work properply without JavaScript enabled.

Free Support Forum - aspose.com

Docx convert to RTF - Bullet and numbering missing

Hi,

We are trying to convert DOCX to RTF. However, the bullets and number on the docx are not converted over to RTF. On the RTF the bullets are replace with box question marks.

We are using aspose.word for Java version 22.3.

Document doc = new Document(inStream);
			
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
doc.save(outputStream, SaveFormat.RTF);

content = Base64.getEncoder().encodeToString(outputStream.toByteArray());

Please advise.

Thanks,
Nick

@nickduong Could you please attach your input and output documents here for testing? We will check the issue and provide you more information.

Archive.zip (1.2 MB)

Helloworld.zip (16.1 KB)

Seem like numbers are fine. Just the bullets are converting to box question marks.

@nickduong This is not a bug, both your documents looks correct if open in Windows, but not in MacOS. It is a known peculiarity. Windows “Symbol” font is a symbolic font (like “Webdings”, “Wingdings”, etc.) which uses Unicode PUA. Thus substitution of this font will cause different glyphs rendering. Provided Mac “Symbol” font on the other hand is a proper Unicode font (for example Greek characters are in the U+0370…U+03FF Greek and Coptic block). So these fonts are incompatible and Mac “Symbol” font cannot be used instead of Windows “Symbol” without additional actions. In this particular case you have to change the bullet codepoint from PUA U+F0B7 (or U+00B7 which also can be used in MW for symbolic fonts) to the U+2022 in the document to use the Mac “Symbol” font. See the following code for example:

Document doc = new Document("/Users/mac1/Downloads/DecisionDerivation.docx");

for (com.aspose.words.List lst : doc.getLists())
{
    for (com.aspose.words.ListLevel level : lst.getListLevels())
    {
        if (level.getFont().getName().equals("Symbol") && level.getNumberFormat().equals("\uF0B7"))
        {
            level.setNumberFormat("\u2022");
        }
    }
}

doc.save("/Users/mac1/Downloads/out.rtf");

I can the bullets on Mac now. However, we are trying to debug for a proceed that needs to go thru Quadient software.

The Quadient software is still not recognizing the the bullets.

However, the Quadient software is able to recognize RTF with the bullets converted from https://products.aspose.com/words/java/conversion/.

Would you know what version of software and what is being called on https://products.aspose.com/words/java/conversion/ ?

Thanks.

Helloworld.zip (21.4 KB)

I noticed that HelloworldFromURL.rtf converted from the URL https://products.aspose.com/words/java/conversion/ is slightly bigger than HelloworldLocal.rtf that I converted locally.

Apparently the software Quadient is recognizing the HelloworldFromURL.rtf version.

Would you know how I can reproduce the HelloworldFromURL.rtf?

Thanks.

@nickduong The file from URL is generated by .NET version of Aspose.Words. I have compared both document and they are the same, the only difference is the generator name in the file. Please see the attached screenshot: