При генерации pdf качество изображения получается отвратительное (при печати еще хуже, но это уже другая история).
Это очень странно. Но как точно работающий вариант можно попробовать векторные картинки сохранять исключительно в pdf, а растровые исключительно в jpg. Насколько я понимаю, только в таком случае никаких перекорвентаций не происходит гарантированно. А так видимо по какой-то причине pdflatex не до конца понимает что там в ваших png и конвертирует их непонятно во что. Объяснить ему что это "правильный" png и как с ним надо обращаться будет скорее всего дольше.
В принципе, я бы начал копать с того что изучил внимательно в каком виде картинки получаются в итоговом файле.
Да, версия pdflatex, всё такое? Ну и как вариант можете попробовать дать минимальный (не)работающий пример. Чтобы остальные могли попробовать воспроизвести.