If you are loading the amount onto the card as the customer is purchasing the gift card, you will collect payment from the customer (you can do a custom sale, or have various denominations as variants under a physical gift card product listing).
Then issue a card from the Shopify app, under products-gift cards-issue new gift card or + sign).
You will delete the code which populates automatically, and replace it with the code on the card.
Then issue the card to the email address the customer wants you to, for the amount he/she requests.
If you wish to preload the cards, you will need issue the cards to yourself (an email address you have access to), and mark the cards with the $ amount you have issued them for.
This has the added advantage of allowing you to have online access to the codes (you can do this instead of using the customer’s or recipient’s email address even when loading at the time of sale).