Being outspoken and being honest are not the same.
Being honest means you tell the truth.
Being outspoken means you are not afraid of speaking what you are thinking. The opposite of outspoken is reserved.
I trust Bob because he is honest.
Emily is outspoken about her religious beliefs.
Laura is not outspoken about her religious beliefs, she is very reserved.
John is an outspoken supporter of Japan.
To answer your question: being called outspoken is usually not offensive, but it depends a little on the context. Being outspoken about good things (women's rights, etc.) is usually a complement, for example. The synonym "blunt" might be considered more offensive.