Как эти фильтры влияют на вывод imagepng () в PHP?
В документации просто говорится, "Специальный фильтр PNG, используемый imagepng (), функционирует" для каждого из них.
Кажется, что использование, PNG_NO_FILTER уменьшит размер файла вывода, но кроме этого, я не уверен относительно того, как это затронуто. Любое понимание действительно ценилось бы.
Согласно спецификациям PNG на http://www.w3.org/TR/PNG-Filters.html Назначение этих фильтров - подготовить данные изображения для оптимального сжатия.
С фильтром Нет строка сканирования передается в неизмененном виде; это только необходимо вставить байт типа фильтра перед данными.
Подфильтр передает разница между каждым байтом и значение соответствующего байта предыдущий пиксель.
Верхний фильтр аналогичен дополнительному фильтр, за исключением того, что пиксель непосредственно над текущим пикселем, а не слева от него, используется как предсказатель.
Средний фильтр использует среднее значение два соседних пикселя (левый и выше), чтобы предсказать значение пиксель.
Фильтр Паэт вычисляет простой линейная функция трех соседние пиксели (слева, вверху, вверху слева), затем выбирает в качестве предиктора соседний пиксель, ближайший к вычисленное значение. Эта техника обязана Алану В. Пэту [PAETH]. *
Это все различные алгоритмы, которые кодер PNG может использовать для определения значений пикселей. Я не очень много знаю, но эта страница, кажется, немного углубляется: http://www.w3.org/TR/PNG-Filters.html