Instead of making the pressence of the field hidden, try setting the relevant property to -print (this says that you do not want the field on when you print). Don't forget to set it back (+print) on the post print event.
I've had a lot of problems with the Pre-Print event. I have a script where I have to reverse all of my colors on the dark form I am creating to print mostly white. I couldn't get it to work in Pre-Print. Are you using a print button on the form? If you are try calling the script to make the fields hidden in the button click, before the script to execute the print.