So is there a way to get them during a schema export
The answer is yes although it took some while.
In a parfile it will look like this
userid="/ as sysdba"
INCLUDE=SYNONYM:"IN(SELECT synonym_name FROM dba_synonyms WHERE owner = 'PUBLIC' and table_owner='BAO4_OWN'
That is the way to capture public synoyms during a schema export.