Hello,
As you mentioned earlier, you mimic what MS excel does. So I tried the same (what you have did in the excel application) in my machine. But I could not reproduce the issue, instead I got the expected result.
I set the language as English US and opened the excel file, I got negative values [-12,355] and comma separation [3,456] as expected.
Also I tried to export as pdf from excel application, it shows the same expected result.
Please apologize me. I have 2 points to clarify with you.
1. Does Spire API get the locale from what we set in Java code ?
2. Has this API packed with in-built excel application ?