既要做婊子，又要立牌坊 is used derogatorily to describe someone who does bad things but want to have good reputation. Does it have a reversed or non-derogatory version which is also a saying or idiom? For example, when you want to praise someone who tells truth about something, meanwhile hurting someone/some people's feelings.
I'm not entirely sure what should be the opposite of 既要做婊子，又要立牌坊
Here's some suggestion:
1) opposite of "doing bad deeds but asking for good reputation" in a sense of "doing good deeds but ends up in bad reputation":
- 好心着雷劈 - meaning trying to help others but ends up [being strikes by lightning] - another idiom usually meaning people do bad things and punished by god via lightning.
2) opposite of "doing bad deeds but asking for good reputation" in a sense of "doing good deeds but bad results":
- 殺人放火金腰帶，修橋鋪路無屍骸 - meaning those that murders and burn down house ends up being rich and powerful, and those that helps with repairing road and bridge ends up dying with their body not found
Honestly I do not find my answer a better fit than others, but more options for you
“既要做婊子, 又要立牌坊” describes someone commits to do something without the resolution of facing its consequence. For example, someone sells snake oil but feel bad about taking money from poor people (if you really want to be a con man, you can't avoid being ruthless)
The opposite expression would be "吃得咸魚抵得渴" (since you committed to eat salted fish, being thirsty is expected)