Я обнаружил, что mask='auto'
перестал работать для меня с reportlab 3.1.8. В документах говорится, что нужно передать значения, которые вы хотите замаскировать. Так что сейчас у меня работает mask=[0, 2, 0, 2, 0, 2, ]
. По сути, это выглядит так
Параметр маски позволяет создавать прозрачные изображения. Требуется 6
цифры и определяет диапазон значений RGB, которые будут маскироваться
или рассматривается как прозрачный. Например, с [0,2,40,42,136,139], это
будет маскировать любые пиксели со значением Red от 0 или 1, Green от 40
или 41 и синий 136, 137 или 138 (по шкале 0-255). Это
в настоящее время ваша работа, чтобы знать, какой цвет является «прозрачным» или
фон один.
ОБНОВЛЕНИЕ: Это маскирует все, что является rgb(0, 0, 0)
или rgb(1, 1, 1)
, что, очевидно, не может быть правильным решением Моя проблема заключалась в том, что люди загружали изображения в формате PNG с серым цветовым пространством. Поэтому мне нужно еще найти способ определения цветового пространства изображения. и применять эту маску только к изображениям серого пространства.