pfSense can do 1:1 (Firewall > NAT, 1:1 tab) and depending on what you mean by static NAT, that can probably be done also. If you meant 1:1, as I said that is possible. If you meant static port, you can do that too, under Firewall > NAT, Outbound tab. You can switch to manual outbound NAT and define rules to use static port so outgoing traffic matching those rules won't have its ports altered.