Can you make heroes appear during a battle?
You can add heroes right before a battle, or right after a battle, but there is no way to add heroes inside a battle.
You can simulate something like that by using an enemy that faces the wrong way (towards the other enemies), and is placed close to the heroes. It should have attacks that target ally (not self) (remember: an enemy's allies are the other enemies).
The only drawback to this method is that the player cannot control the fake-hero. And, unless you set the untargetable by heroes bitset, the player can kill him. Also, enemies won't be able to target him properly (he's an ally, technically, not an enemy. Further, if you set the enemy to attack allies, they may attack themselves!). This method is mainly useful for "story" battles. I.e. ones not meant to be lost or something.
Alternatively, you could have the battle end somehow (maybe the new hero arrives because the existing ones can't win on their own--see How do I make the story continue after you die in battle?), then add a new hero, then fight another formation. This way the new hero behaves as normal. However, any damage your heroes have done to the enemies and any status changes they've inflicted will be lost, so be aware of that. (You also might want to heal them if they all died in the first battle.)
In the Future
If battle scripting is ever implemented, adding a new hero in the middle of a battle will probably be trivial.