Hi Steve,
I ran into some trouble last year with email addresses in a PrintString command. There are actually two issues.
1. First issue is that you need to double up the @ symbol, or else all text that comes after it (in the same field) will not print with PrintString. The fix for that is easy and works very well, as shown here.
// Must double "@". Otherwise it, and anything after it, will not print from that field.
PrintString(@Replace(Email, "@", "@@"), 70, 300, 0, vFont1, vSizeReg, 0)
2. Second issue is that word-wrap refuses to function properly within a PrintString command if the field contains an @ symbol (even if you double that symbol). I had to resort to changing the @ symbol with something that 'looked' close to it. I used "®". It's not perfect, but that was the best I could do. I did not change it in the field. I just replaced it within the PrintString command, similar to the code above, using @Replace(Email, "@", "®").