Я подозреваю, что поток изображения XObject имеет неправильный формат.Без доступа к PDF с этой проблемой большинство людей могут только догадываться.
Например, если в информации PDF указано, что изображение имеет ширину 10 пикселей, высоту 10 пикселей и 8 бит на пиксель, топоток должен распаковываться до 100 байт.Если он будет распакован до меньшего значения, я бы ожидал ошибку, подобную той, которую вы видите.
Вероятно, это ошибка в pypdf относительно формата изображения, который вы используете.
IIRC, в PDF нет строковых отступов и не заботятся о границах слов, хотя последние биты дополняются до байта, если это необходимо.Путаница может легко привести к слишком большому количеству байтов, что не является проблемой.
Это также может быть плохое цветовое пространство.Если у вас есть индексированное цветное изображение (gif), и они переводят его на полпути к RGB-изображению, но используют оригинальные индексированные цветные байты, вы получите поток, который может ожидать n * 3 бит на пиксель, но толькоиметь n бит на пиксель.
Возможно, это старая ошибка, исправленная в pypdf.Вы используете текущую версию?