So, to summarize:
- if you set the field as image_file you get TCPDF ERROR: [Image] Unable to get the size of the image: " in PDF but you see the picture in the Web view
- if you set the fields as generic_file, you said the image is not shown on the screen (and this is how it should be), but print works fine: what do you mean with print works fine? With generic_file, you shouldn't see the image, just a link to the file.
Have you set the parameter $site_url or $site_path in config.php? Is your application publicly accessible? If yes, can you post the URL?
Best,