TweakPNG — небольшая Windows-утилита для просмотра и правки внутренней структуры PNG-файлов. Она работает не с пикселями, кистями, слоями и фильтрами, а с блоками данных внутри файла: IHDR, IDAT, IEND, PLTE, tEXt, zTXt, iTXt, gAMA, cHRM, sRGB, iCCP, tRNS, bKGD, pHYs и другими PNG chunks. Такой редактор PNG нужен не для обычной ретуши, а для задач, где требуется увидеть, какие служебные блоки лежат в изображении, как они упорядочены, какие метаданные записаны в файле и какие элементы можно изменить без перекодирования картинки как в графическом редакторе.
TweakPNG полезна разработчикам, специалистам по анализу файлов, авторам тестовых изображений, техническим редакторам и пользователям, которым нужно аккуратно удалить лишние чанки PNG, изменить текстовые комментарии, проверить порядок блоков, импортировать ICC profile или посмотреть, почему изображение ведёт себя иначе в разных программах. Внутри программы есть простой просмотрщик, но он служит только для пассивного отображения текущего состояния файла; TweakPNG не заменяет GIMP, Paint.NET, XnView, IrfanView или FastStone Image Viewer, потому что эти программы решают другие задачи — просмотр, редактирование изображения, конвертацию, пакетную обработку и работу с визуальным содержимым.
TweakPNG особенно хорошо раскрывается в работе с файлами, где важна не картинка как таковая, а контейнер PNG: порядок служебных блоков, наличие текстовых метаданных, корректность CRC, сигнатура файла, палитра, прозрачность, фон, гамма и физический размер пикселя. Такой подход отличает программу от привычного редактора изображений: пользователь видит не холст, а таблицу чанков и работает с каждым блоком как с отдельной структурной частью файла.
Краткая карточка программы
| Параметр | Значение |
|---|---|
| Название | TweakPNG |
| Автор | Jason Summers |
| Тип программы | низкоуровневый редактор PNG-файлов |
| Основная задача | просмотр и изменение служебной информации внутри PNG |
| Форматы | PNG; ограниченная работа с MNG и JNG |
| Платформа | Windows XP и выше |
| Интерфейс | английский |
| Лицензия | GNU GPL version 3 |
| Исходный код | C++ source code включён в пакет и размещён на GitHub |
| Основной режим работы | таблица чанков с колонками Chunk, Length, CRC, Attributes, Contents |
| Встроенный просмотр | Tools -> Show Image Viewer |
| Контекстное меню Windows | Options -> Preferences -> Add TweakPNG to Explorer context menu |
| Внешние инструменты | Options -> Configure Tools |
| Требования к пользователю | понимание структуры PNG-файла |
Программа устроена как интерактивный редактор метаданных PNG: в ней можно открыть файл, увидеть список чанков, выделить нужный блок, открыть его двойным щелчком или клавишей Enter, изменить поддерживаемые параметры, проверить структуру через Check Validity и сохранить результат. Колонки Chunk, Length, CRC, Attributes и Contents помогают быстро отличить обязательные блоки от дополнительных, увидеть размер данных, контрольную сумму и краткую расшифровку содержимого там, где TweakPNG умеет его интерпретировать.
Главное окно показывает принцип программы лучше любого описания: файл представлен не как изображение на холсте, а как последовательность блоков. Такой вид удобен, когда нужно понять, есть ли в PNG текстовые комментарии, ICC-профиль, палитра, отдельный блок прозрачности, данные гаммы или физический размер пикселя.
Для чего нужна TweakPNG
TweakPNG применяется там, где нужно управлять внутренними данными PNG без запуска тяжёлого редактора изображений. Обычный пользователь открывает PNG, чтобы посмотреть картинку; TweakPNG открывает тот же файл как контейнер с набором структурных элементов. В этом контейнере есть обязательные чанки, без которых PNG не будет валидным, и дополнительные блоки, которые отвечают за палитру, текстовые комментарии, цветовое описание, прозрачность, физическое разрешение, время изменения и другие свойства.
Основные сценарии работы:
просмотр структуры PNG-файла на уровне чанков;
удаление ненужных или нежелательных блоков для уменьшения размера;
добавление и изменение текстовых метаданных через tEXt, zTXt и iTXt;
изменение фонового цвета и параметров прозрачности;
проверка порядка чанков и наличия обязательных блоков;
импорт ICC profile в iCCP;
экспорт отдельного чанка во внешний файл;
перенос чанков между PNG-файлами через буфер обмена;
объединение нескольких IDAT-блоков;
разделение IDAT-блока на части;
подготовка тестовых изображений для программ, которые читают PNG;
проверка необычных или повреждённых PNG перед дальнейшим анализом.
TweakPNG хорошо подходит для ручного анализа, потому что не скрывает служебные блоки за общими словами вроде свойства изображения. Пользователь видит конкретный тип чанка, его длину, CRC и расшифровку. Для разработчика это даёт быстрый способ проверить, какие блоки создала библиотека экспорта. Для автора тестов — способ собрать PNG с нужной комбинацией tEXt, zTXt, iTXt, gAMA, sRGB, PLTE, bKGD или tRNS. Для специалиста по цифровой сохранности — инструмент для первичного просмотра структуры изображения и проверки метаданных. COPTR относит TweakPNG к задачам forensic, metadata extraction и validation, а также описывает её как утилиту, показывающую каждый чанк, длину, тип, CRC, атрибуты, содержимое метаданных, проверку валидности, редактирование, добавление чанков и импорт ICC profile.
Что TweakPNG не делает
TweakPNG не является фоторедактором. В ней нет слоёв, кистей, выделения областей, цветокоррекции в привычном смысле, ретуши, кадрирования, шумоподавления, фильтров резкости, пакетного ресайза и визуального монтажа. Для таких задач нужны графические редакторы и просмотрщики: GIMP, Krita, Paint.NET, XnView MP, Honeyview или FastStone Image Viewer. TweakPNG работает ниже этого уровня: она показывает, как PNG устроен как файл.
Программа не пересчитывает изображение при изменении всех служебных значений. Самый показательный пример — IHDR. Изменение параметра interlaced в IHDR не превращает обычный PNG в реально interlaced-файл; оно меняет утверждение внутри заголовка. Файл после такой правки может начать сообщать одно, а содержать другое. Поэтому редактирование IHDR относится к техническим операциям, а не к обычной конвертации изображения.
TweakPNG не редактирует все типы чанков. В таблице возможностей есть блоки, которые можно просматривать, редактировать и создавать; есть блоки только для просмотра; есть блоки без поддержки редактирования. Например, IDAT содержит фактические данные изображения, но TweakPNG не открывает IDAT как пиксельный редактор. iCCP просматривается по имени, но импорт ICC profile выполняется отдельной командой Import ICC Profile. sPLT и pCAL отображаются ограниченно, dSIG не редактируется.
MNG и JNG поддерживаются не как полноценные рабочие форматы уровня специализированного редактора анимации. TweakPNG умеет работать с частью структуры, но не интерпретирует содержимое MNG-специфичных чанков и не даёт полноценного редактирования таких блоков. Их можно перемещать или удалять, при этом проверка может отмечать некоторые элементы как некорректные даже в ситуациях, где для MNG они допустимы.
Интерфейс и логика главного окна
Главное окно TweakPNG построено вокруг таблицы. Каждый чанк занимает одну строку, а колонки дают техническое описание блока. Такой интерфейс быстрее обычного окна свойств, потому что все структурные элементы PNG видны одновременно.
Основные колонки:
| Колонка | Что показывает | Зачем нужна |
| Chunk | четырёхбуквенный тип блока | позволяет быстро найти IHDR, IDAT, IEND, tEXt, iCCP, PLTE и другие элементы |
| Length | размер данных внутри чанка | помогает оценить, какие блоки занимают место в файле |
| CRC | контрольная сумма чанка | используется для проверки целостности блока |
| Attributes | свойства чанка по регистру букв в типе | помогает отличать критические, вспомогательные и частные блоки |
| Contents | расшифровка содержимого | показывает понятные детали, когда тип чанка поддерживается программой |
Колонки можно расширять, сужать и скрывать перетаскиванием разделителей между названиями. Это важно для длинных файлов, где Contents может содержать развёрнутую расшифровку, а пользователь хочет оставить на экране только Chunk, Length и CRC. Для редактирования достаточно выделить строку и нажать Enter либо открыть чанк двойным щелчком.
На скриншоте видна основная логика TweakPNG: программа не показывает набор эффектов, фильтров и миниатюр, а выводит структуру файла. Такой интерфейс удобен для работы с метаданными PNG, потому что теги и технические блоки не спрятаны в отдельных диалогах.
Поддерживаемые типы чанков
TweakPNG работает с разными группами PNG-блоков. Программа не делает вид, что каждый чанк одинаково редактируем: одни блоки можно открыть и изменить, другие только просмотреть, третьи не поддерживаются как редактируемые структуры. Это важное ограничение, потому что PNG-файл состоит не из произвольных строк, а из блоков с жёсткими правилами порядка, длины, контрольной суммы и допустимого содержимого.
Стандартные PNG-чанки
В стандартной группе TweakPNG работает с ключевыми элементами PNG-контейнера:
| Чанк | Роль в PNG | Работа в TweakPNG |
| IHDR | заголовок изображения: размер, глубина, тип цвета, interlace | просмотр, редактирование, создание |
| IEND | конец PNG-файла | создание |
| IDAT | сжатые данные изображения | не редактируется как содержимое, но поддерживаются операции объединения и разделения |
| PLTE | палитра | просмотр, редактирование, создание |
| bKGD | фоновый цвет | просмотр, редактирование, создание |
| gAMA | гамма | просмотр, редактирование, создание |
| cHRM | хроматичности | просмотр, редактирование, создание |
| tRNS | прозрачность | просмотр, редактирование, создание |
| sBIT | значимые биты | просмотр, редактирование, создание |
| hIST | гистограмма палитры | без просмотра и редактирования |
| sRGB | указание sRGB | просмотр, редактирование, создание |
| tEXt | текстовые метаданные | просмотр, редактирование, создание |
| zTXt | сжатые текстовые метаданные | просмотр, редактирование, создание |
| iTXt | international text | просмотр, редактирование, создание в Unicode-сборке |
| pHYs | физический размер пикселя | просмотр, редактирование, создание |
| tIME | время последнего изменения | просмотр, редактирование, создание |
| iCCP | ICC color profile | просмотр имени; импорт через отдельную команду |
| sPLT | suggested palette | просмотр имени |
| sTER | stereo-image indicator | просмотр, редактирование, создание |
| dSIG | цифровая подпись | без просмотра и редактирования |
Такой набор функций делает TweakPNG узким, но точным инструментом. Она не берёт на себя задачи обычного редактора изображений, зато даёт прямой доступ к тем частям PNG, которые влияют на интерпретацию файла другими программами: цветовое пространство, гамма, палитра, прозрачность, текстовые комментарии, физические размеры и порядок блоков.
Расширения и дополнительные блоки
В TweakPNG есть поддержка ряда расширенных чанков:
| Чанк | Назначение | Особенность в TweakPNG |
| oFFs | смещение изображения | просмотр, редактирование, создание |
| pCAL | calibration | отображение имени |
| sCAL | физический масштаб изображения | просмотр, редактирование, создание |
| gIFg | GIF graphic control extension | без редактирования |
| gIFx | GIF application extension | без редактирования |
| acTL | animation control для APNG | просмотр, редактирование, создание |
| fcTL | frame control для APNG | просмотр, редактирование, создание |
| fdAT | frame data для APNG | работа с sequence number |
| vpAg | virtual page | просмотр, редактирование, создание |
Поддержка acTL, fcTL и fdAT показывает, что TweakPNG может быть полезна при анализе APNG-структуры, но её интерфейс остаётся редактором чанков, а не редактором анимации. Для пользователя это означает прямой доступ к служебным блокам, но не монтаж кадров и не визуальную сборку анимированного изображения.
MNG и JNG
TweakPNG распознаёт MHDR и JHDR, а также умеет работать с сигнатурами PNG, MNG и JNG через File -> File Signature. MNG в программе поддерживается ограниченно: MNG-специфичные чанки не интерпретируются как полноценно редактируемые структуры, их можно перемещать или удалять. Работа с палитрами, фоном и прозрачностью в MNG ненадёжна, когда в файле больше одного PLTE, bKGD или tRNS, потому что программа не связывает такие блоки между собой как специализированный MNG-редактор.
Основные функции TweakPNG
Просмотр структуры PNG
Главная функция TweakPNG — просмотр PNG на уровне chunk-level view. Каждый блок отображается в порядке расположения в файле. Это даёт быстрый ответ на вопросы, которые обычный просмотрщик не показывает:
есть ли в файле текстовые метаданные;
присутствует ли ICC-профиль;
записана ли гамма;
есть ли отдельный блок прозрачности;
каким образом задан фон;

содержит ли файл физический размер пикселя;
разбит ли IDAT на несколько блоков;
есть ли нестандартные или частные чанки;
корректно ли расположен IEND;
появляются ли лишние блоки после экспорта из конкретной программы.
Softpedia в обзоре отмечает, что TweakPNG показывает Length, CRC, Attributes и Contents для каждого chunk type, а файл можно загрузить через файловый браузер или drag-and-drop.
Редактирование выбранного чанка
Редактирование выполняется через открытие конкретной строки. Пользователь не выбирает абстрактную команду изменить свойства PNG, а работает с тем блоком, который реально присутствует в файле. Для tEXt это означает работу с текстовыми метаданными, для PLTE — с палитрой, для pHYs — с физическими параметрами пикселя, для gAMA — с гаммой, для bKGD — с фоновым цветом.
Редактировать можно не все блоки. Это не недостаток интерфейса, а следствие назначения программы: некоторые чанки содержат сжатые данные изображения или структуры, которые TweakPNG не разбирает как редактируемые. Такой подход снижает риск случайной правки ради правки и подчёркивает, что программа рассчитана на пользователей, понимающих формат PNG.
Insert: добавление новых чанков
Меню Insert используется для добавления поддерживаемых типов чанков. Новый блок создаётся с базовыми значениями, после чего его можно открыть и отредактировать. Важный момент: новый чанк не всегда появляется в том месте, где он обязан находиться по правилам PNG. После добавления нужно проверить порядок и при необходимости переместить блок через Edit -> Move Up или Edit -> Move Down.
Практический пример: пользователь хочет добавить текстовый комментарий. В обычном графическом редакторе такой параметр может быть скрыт в свойствах экспорта или отсутствовать. В TweakPNG он добавляется как конкретный текстовый чанк. После вставки пользователь видит его в списке, открывает и редактирует содержимое как часть PNG-структуры.
Edit: Move Up, Move Down, Copy, Cut, Paste
Команды Move Up и Move Down переставляют чанки. Они полезны после добавления нового блока через Insert или при анализе файла с нестандартной структурой. После перемещения используется Check Validity, потому что PNG не допускает произвольный порядок всех блоков.
Copy, Cut и Paste работают с чанками через системный буфер обмена. Можно копировать сразу несколько блоков и переносить их между файлами. Paste вставляет блоки перед первым выделенным чанком и не заменяет выбранную строку. Такой принцип отличается от поведения многих обычных редакторов, где вставка часто замещает выделенный фрагмент.
Самое жёсткое правило в этом блоке — не переставлять IDAT-чанки в файле, где их больше одного. IDAT содержит данные изображения, и несколько IDAT должны идти подряд в правильной последовательности. Нарушение порядка делает файл нечитаемым.
Combine all IDAT и Combine IDAT chunks
IDAT хранит сжатые данные изображения. PNG допускает разбиение этих данных на несколько последовательных IDAT-блоков. TweakPNG умеет объединять такие блоки: через Edit -> Combine all IDAT или через выделение диапазона IDAT и команду Edit -> Combine IDAT chunks. При удалении каждого лишнего чанка экономится 12 байт, потому что каждый чанк имеет служебные поля длины, типа и CRC.
Эта функция не является полноценной оптимизацией PNG в духе OptiPNG или PNGGauntlet. Она не перебирает фильтры, не пересжимает изображение и не ищет лучший способ сжатия. Её задача уже и точнее: объединить несколько последовательных IDAT-блоков в один структурный блок. Для веб-оптимизации лучше подходят специализированные инструменты, а для ручного контроля структуры — TweakPNG.
Split IDAT chunk
Команда Edit -> Split IDAT chunk выполняет обратную операцию: делит выбранный IDAT на два или больше блоков. Пользователь задаёт размер первого блока. Флажок Repeat... включает повторное деление на блоки указанного размера. TweakPNG допускает IDAT нулевой длины; такой блок можно удалить без нарушения данных изображения.
Split IDAT chunk полезна не для обычного уменьшения размера, а для тестирования программ, которые читают PNG. Например, разработчик может проверить, как собственный импортёр работает с несколькими IDAT подряд, с маленькими фрагментами или с необычным разбиением данных. Это один из сценариев, где TweakPNG намного удобнее обычного hex-редактора: структура чанков остаётся видимой, а операция выполняется через понятную команду меню.
Import и Export
Import вставляет чанк из внешнего файла. Такой файл должен начинаться с четырёх символов идентификатора чанка, например PLTE, а дальше содержать данные блока. Длина и CRC в импортируемом файле не хранятся. Такой формат позволяет вставлять даже частные незарегистрированные чанки, но подготовка данных часто требует отдельного редактора. Export сохраняет один выбранный чанк в таком же виде: тип блока плюс данные, без длины и CRC.
Практический смысл Import и Export — перенос отдельных частей PNG между файлами или подготовка тестовых структур. Это не массовая конвертация, а точечная работа с конкретным элементом контейнера. Например, можно экспортировать текстовый блок, палитру или частный чанк, затем использовать его в другом файле.
Import ICC Profile
Import ICC Profile создаёт iCCP chunk из стандартного ICC color profile с расширением .icc. В основном списке iCCP отображается ограниченно: TweakPNG показывает имя профиля, а импорт выполняется отдельной командой.
Эта функция нужна для файлов, где важно цветовое описание. При этом встроенный viewer TweakPNG не является полноценной системой управления цветом: он поддерживает gAMA и sRGB, но не учитывает cHRM и iCCP как полноценные цветовые профили при отображении. Поэтому после импорта ICC profile результат стоит проверять в программах, которые корректно работают с цветовым управлением.
File -> File Signature
File -> File Signature управляет 8-байтовой сигнатурой семейства PNG. В TweakPNG можно выбрать, какая сигнатура будет записана при сохранении: PNG, MNG или JNG. Эта функция нужна для полноты набора инструментов, а не для обычной повседневной работы. Смена сигнатуры не превращает содержимое файла в полноценный другой формат, если внутренняя структура этому не соответствует.
Check Validity
Check Validity проверяет общую структуру текущего файла. Функция смотрит прежде всего на порядок чанков и наличие обязательных блоков. Она автоматически запускается перед сохранением; при обнаружении проблем TweakPNG требует подтверждения сохранения.
Ограничение Check Validity принципиально: проверка не гарантирует полную корректность PNG и не анализирует содержимое данных внутри всех чанков. Это структурная проверка, а не глубокая экспертиза каждого байта. Для дополнительной диагностики рядом с TweakPNG уместно использовать pngcheck, потому что pngcheck проверяет целостность PNG, JNG и MNG через CRC и распаковку данных изображения, а также может выводить почти всю chunk-level информацию в человекочитаемом виде.
Меню File важно не только для открытия и сохранения. В нём сосредоточены операции, которые относятся к целостности файла: проверка структуры через Check Validity и работа с File Signature. Эти команды показывают, что TweakPNG рассчитана на контроль PNG как формата, а не только на просмотр содержимого.
Tools -> Show Image Viewer
Tools -> Show Image Viewer открывает встроенный просмотрщик. Он показывает текущее состояние изображения в отдельном окне и помогает быстро увидеть, сохранилась ли картинка после структурных правок. Просмотрщик не редактирует изображение, не заменяет внешний viewer и не показывает все нюансы цветового управления. Его задача — дать визуальную проверку рядом с таблицей чанков.
Встроенный viewer особенно полезен после операций с PLTE, bKGD, tRNS, gAMA, sRGB и IDAT. Пользователь меняет структуру, затем открывает изображение рядом и видит, не сломалась ли визуальная часть. Для окончательной проверки всё равно лучше открыть результат в независимом просмотрщике, например IrfanView, XnView или FastStone Image Viewer, потому что разные программы по-разному интерпретируют метаданные цвета, прозрачности и фон.
Options -> Preferences
В Preferences есть настройка Add TweakPNG to Explorer context menu. После её включения пункт TweakPNG появляется в контекстном меню Windows Explorer для файлов с расширениями .png, .mng и .jng. Двойной щелчок по файлу при этом продолжает открывать обычный просмотрщик PNG, если он назначен в системе.
Такое поведение удобно: TweakPNG не перехватывает повседневное открытие изображений, но становится доступной через правый клик для технической проверки файла. Это правильная логика для низкоуровневой утилиты: пользователь не должен случайно открывать каждый PNG как таблицу чанков, но должен иметь быстрый доступ к анализу, когда он нужен.
Options -> Configure Tools
Configure Tools подключает внешние viewer и filter. Viewer — программа, которая открывает или обрабатывает PNG без изменения текущего файла. Filter — программа, которая принимает PNG на вход и создаёт другой PNG на выходе. В настройке используются поля Name, Program и Parameters, а кнопка ... помогает выбрать исполняемый файл.
Логика параметров простая:
| Параметр | Значение |
| Name | имя пункта в меню Tools |
| Program | путь к исполняемому файлу |
| Parameters | аргументы командной строки |
| %1 | имя входного PNG |
| %2 | имя выходного PNG для filter-инструмента |
Если в Parameters есть %1 и %2, TweakPNG считает инструмент фильтром: записывает текущий документ во временный файл, запускает внешнюю программу, читает созданный результат и удаляет временные файлы. Если указан только %1 или параметры пустые, инструмент работает как viewer. В документации приведён пример Firefox как viewer и pngrewrite как filter.
Меню Edit показывает характер программы: команды относятся не к изображению на холсте, а к блокам внутри файла. Через это меню выполняются перемещение, копирование, вставка, импорт ICC-профиля, объединение и разделение IDAT.
Работа с палитрой, прозрачностью и фоновым цветом
TweakPNG содержит отдельную логику для PLTE, bKGD и tRNS. Эти блоки важны для палитровых PNG, где цветовое описание и прозрачность часто хранятся не так, как в полноцветном изображении. При редактировании PLTE, bKGD или tRNS в палитровом изображении открывается palette editor.
PLTE: редактирование палитры
PLTE содержит набор цветов палитры. В TweakPNG цвет редактируется через выбор записи палитры, когда кнопки Set bkgd и Edit alpha не нажаты. После выбора записи открывается стандартный выбор цвета, и пользователь задаёт новое значение. Размер палитры меняется через поле Colors in palette.
Здесь важно понимать риск: уменьшение палитры может сделать изображение некорректным, если удалённые цвета используются в данных изображения. TweakPNG не является автоматическим конвертером палитровых изображений и не пересобирает пиксельные данные под новую палитру. Она даёт доступ к структуре, а ответственность за корректность остаётся на пользователе.
tRNS: прозрачность палитровых цветов
tRNS задаёт прозрачность. В палитровом изображении alpha values относятся к цветам палитры. Значение 0 означает полностью прозрачный цвет, значение 255 — полностью непрозрачный. В palette editor короткая вертикальная линия внизу записи показывает примерное alpha-значение; при отсутствии линии значение считается полностью непрозрачным по умолчанию.
Редактирование прозрачности включается кнопкой Edit alpha. Если кнопка недоступна, сначала добавляется tRNS через Insert. Количество alpha values меняется через поле Alpha colors. Значений прозрачности не должно быть больше, чем цветов в палитре; значений может быть меньше, потому что отсутствующие значения в конце считаются полностью непрозрачными.
bKGD: фоновый цвет
bKGD задаёт фоновый цвет. В палитровом PNG одна запись палитры может быть назначена как background color; в редакторе она отмечается толстой синей рамкой. Для выбора фона нажимается Set bkgd, затем выбирается нужная запись палитры. Если bKGD отсутствует, его нужно добавить через Insert. Удаление фонового цвета выполняется удалением bKGD chunk.
Некоторые grayscale-изображения тоже используют palette editor для выбора background или transparent color, но это не настоящая палитра: цвета нельзя редактировать как PLTE, зато можно визуально выбрать нужное значение для фона или прозрачности.

Как открыть PNG и посмотреть его структуру
Перед работой с TweakPNG важно мыслить не категориями улучшить изображение, а категориями посмотреть контейнер. Стартовая операция проста: пользователь открывает PNG, получает список чанков и анализирует его по строкам.
Порядок работы:
Запустите tweakpng.exe из x86 или x64-папки в зависимости от системы.
Откройте PNG-файл через меню File или перетащите изображение в окно программы.
Посмотрите первую строку IHDR: она описывает базовые параметры изображения.
Найдите один или несколько IDAT: они содержат сжатые данные картинки.
Проверьте IEND в конце: это завершающий блок PNG.
Посмотрите дополнительные элементы между IHDR и IEND: PLTE, tEXt, zTXt, iTXt, gAMA, sRGB, iCCP, pHYs, bKGD, tRNS.
Откройте интересующий чанк двойным щелчком или клавишей Enter.
После любых изменений используйте Check Validity.
Проверьте результат во встроенном viewer и во внешнем просмотрщике.
При чтении таблицы полезно начинать с Contents. Эта колонка показывает расшифровку там, где TweakPNG понимает тип блока. Например, в текстовых чанках видны текстовые данные, в pHYs — физический размер, в gAMA — параметр гаммы, в sRGB — назначение цветового пространства.
Как удалить лишний текстовый чанк из PNG
Удаление текстовых метаданных — одна из типичных задач для TweakPNG. PNG может содержать tEXt, zTXt и iTXt. В них хранятся комментарии, описания, сведения об авторе, программе экспорта и другие текстовые данные. TweakPNG показывает такие блоки в списке и даёт открыть их как отдельные элементы.
Порядок действий:
Откройте PNG в TweakPNG.
Найдите строки tEXt, zTXt или iTXt.
Выделите нужный текстовый чанк.
Откройте его двойным щелчком, чтобы проверить содержимое.
Вернитесь к списку и используйте Edit -> Cut для удаления блока.
Выполните Check Validity.
Сохраните файл под новым именем.
Откройте результат в обычном просмотрщике и при необходимости проверьте структуру повторно.
Удаление tEXt, zTXt или iTXt не меняет пиксели изображения, но меняет метаданные. Это удобно, когда нужно убрать комментарии из PNG, подготовить файл к публикации или сравнить, какие служебные данные добавляет та или иная программа экспорта.
Как добавить текстовый комментарий в PNG
Добавление текстового комментария выполняется через Insert. TweakPNG поддерживает tEXt, zTXt и iTXt, при этом iTXt работает в Unicode-сборке. Разница между этими блоками важна: tEXt хранит обычный текст, zTXt хранит сжатый текст, iTXt предназначен для international text.
Порядок действий:
Откройте файл.
Выберите место рядом с другими вспомогательными чанками, не нарушая логику PNG.
Через Insert добавьте tEXt, zTXt или iTXt.
Откройте созданный чанк.
Заполните текстовые поля.
Проверьте порядок блоков через Check Validity.
Сохраните копию.
Откройте файл повторно и убедитесь, что текстовый блок присутствует в списке.
Текстовые комментарии удобны для технических пометок, тестовых файлов и контроля экспорта. Например, в PNG можно записать описание тестового сценария: какой профиль цвета использован, какой инструмент создал файл, какая особенность структуры проверяется. TweakPNG показывает такой комментарий как отдельный блок, поэтому его легко найти и удалить.
Как импортировать ICC profile
ICC profile в PNG хранится через iCCP. TweakPNG не редактирует содержимое профиля как специализированный ICC-редактор, но создаёт iCCP chunk из стандартного .icc-файла через Import ICC Profile.
Порядок действий:
Откройте PNG.
Проверьте, есть ли уже iCCP.
Выберите команду Import ICC Profile.
Укажите .icc-файл.

Проверьте появление iCCP в таблице.
Выполните Check Validity.
Сохраните копию.
Проверьте изображение в программе с поддержкой управления цветом.
При работе с ICC важно учитывать поведение viewer внутри TweakPNG. Он ориентируется на sRGB и поддерживает gAMA и sRGB chunks, но не использует cHRM и iCCP как полноценные цветовые профили при отображении. Поэтому итоговую проверку цвета лучше выполнять в графическом редакторе или просмотрщике, где управление цветом реализовано глубже.
Как объединить IDAT-чанки
IDAT содержит сжатые данные изображения. В PNG может быть несколько IDAT подряд, и это корректная структура. TweakPNG умеет объединять их в один блок. Такая операция уменьшает служебные накладные расходы на 12 байт за каждый удалённый чанк, но не является заменой полноценного PNG-оптимизатора.
Порядок действий:
Откройте PNG.
Найдите все IDAT-блоки.
Убедитесь, что они идут подряд.
Используйте Edit -> Combine all IDAT.
Проверьте, что несколько IDAT заменены одним.
Выполните Check Validity.
Откройте изображение через Tools -> Show Image Viewer.
Дополнительно проверьте файл через внешний просмотрщик или pngcheck.
Эта операция уместна, когда нужно привести структуру PNG к более компактному виду без пересжатия. Для максимального уменьшения размера лучше применять OptiPNG, PNGGauntlet или PngOptimizer, потому что они специализируются на оптимизации, а TweakPNG — на ручном структурном редактировании.
Как разделить IDAT chunk
Split IDAT chunk используется для тестирования и анализа. Команда делит выбранный IDAT на несколько частей. Пользователь задаёт размер первого чанка; флажок Repeat... повторяет деление на части заданного размера.
Порядок действий:
Откройте PNG.
Выделите IDAT.
Выберите Edit -> Split IDAT chunk.
Укажите byte size для первого блока.
Оставьте Repeat... выключенным для деления на две части.
Включите Repeat..., если нужны несколько блоков одинакового размера.
Выполните Check Validity.
Проверьте файл во встроенном и внешнем просмотрщике.
Split IDAT chunk не улучшает качество и не уменьшает размер. Он нужен, когда требуется сформировать PNG с определённым разбиением IDAT. Это типичная задача для разработчика парсера PNG, тестировщика графической библиотеки или автора учебного примера по структуре PNG.
Как настроить внешний инструмент через Configure Tools
Configure Tools превращает TweakPNG в удобную оболочку для связки с внешними viewer и filter. Например, можно добавить внешний просмотрщик, чтобы быстро открыть текущий PNG из меню Tools, или подключить фильтр, который принимает PNG и возвращает изменённый PNG.
Порядок настройки viewer:
Откройте Options -> Configure Tools.
Выберите пустую строку.
В поле Name введите название, которое будет видно в Tools.
В поле Program укажите исполняемый файл viewer.
В Parameters оставьте пусто или используйте %1.
Откройте Tools и запустите добавленный viewer.
Порядок настройки filter:
Откройте Options -> Configure Tools.
В Name задайте имя фильтра.
В Program укажите путь к исполняемому файлу.
В Parameters используйте %1 %2.

Запустите фильтр из Tools.
TweakPNG запишет временный входной PNG, запустит фильтр, прочитает выходной PNG и удалит временные файлы.
Такой механизм полезен для связки TweakPNG с утилитами командной строки. Например, TweakPNG используется для ручной проверки структуры, а внешний инструмент — для отдельной обработки, после которой файл снова анализируется в таблице чанков.
Системные требования
TweakPNG рассчитана на Windows XP и выше. В README также указана совместимость с Windows 2000 or newer и совместимыми Windows-средами. Для 32-битной Windows используется x86\tweakpng.exe, для 64-битной Windows доступен x64\tweakpng.exe. В пакете присутствуют tweakpng.txt, COPYING.txt, x86\tweakpng.exe, x64\tweakpng.exe, sample.png и архив с исходным кодом.
| Компонент | Требование или особенность |
| Операционная система | Windows XP и выше; README также указывает Windows 2000 or newer |
| Архитектура | x86 и x64 |
| Основной файл | tweakpng.exe |
| Знание формата | требуется понимание PNG file format |
| Лицензия | GNU GPL version 3 |
| Исходный код | C++ |
| Интерфейс | английский |
| Дополнительный viewer | встроенный Tools -> Show Image Viewer |
| Внешние инструменты | подключаются через Options -> Configure Tools |
Порог входа у программы связан не с ресурсами компьютера, а с пониманием PNG. TweakPNG не перегружена визуальными панелями, но требует знания терминов IHDR, IDAT, IEND, PLTE, tEXt, zTXt, iTXt, gAMA, sRGB, iCCP, tRNS и bKGD. Без этого пользователь увидит таблицу, но не сможет безопасно решить, какие блоки можно трогать, какие лучше оставить, а какие нельзя переставлять.
Отзывы пользователей и профильных изданий
Softpedia
Softpedia описывает TweakPNG как лёгкую portable-утилиту для редактирования свойств PNG, MNG и JNG. В обзоре отмечены загрузка через file browser и drag-and-drop, стандартное окно с понятной компоновкой, вывод Length, CRC, Attributes и Contents для каждого chunk type, редактирование PNG header, physical pixel size, ICC profile name, file gamma и chromaticities, проверка валидности, настройка file type signature, объединение и разделение IDAT, импорт и экспорт chunks, добавление background color, end of image, palette, aspect ratio и time of last modification. Редакционная оценка Softpedia — 3.0/5, пользовательская оценка на странице — 4.2/5 по 6 голосам.
Смысл оценки Softpedia читается так: программа узкая, лёгкая и полезная для своей задачи, но не рассчитана на широкий круг пользователей. Для обычного редактирования изображений она непривычна, зато для точечной работы с PNG-структурой её интерфейс прямой и быстрый.
COPTR и цифровая сохранность
COPTR рассматривает TweakPNG в контексте forensic, metadata extraction и validation. Для цифровой сохранности это логично: программа показывает внутреннюю структуру PNG, декодирует metadata chunks, проверяет валидность, редактирует и добавляет чанки, импортирует ICC profile.
Такой профиль отличает TweakPNG от массовых просмотрщиков. В задачах сохранности и анализа важнее не цвет кнопок интерфейса, а возможность понять структуру файла: какие блоки присутствуют, в каком порядке они стоят, какие метаданные доступны, где заканчивается изображение и какие нестандартные элементы добавлены.
Усреднённое мнение пользователей
Пользовательский профиль TweakPNG достаточно узкий. Её выбирают не за визуальный редактор и не за автоматическую оптимизацию, а за прямой доступ к PNG chunks. Главные положительные оценки связаны с малым размером, portable-логикой, отсутствием лишних панелей, открытым исходным кодом, работой с текстовыми чанками, палитрой, прозрачностью, ICC profile и IDAT. Основные ограничения связаны с тем, что программа требует знания PNG file format, не заменяет графический редактор и не выполняет полную глубокую проверку содержимого каждого чанка.
Для новичка TweakPNG выглядит сухой и технической: вместо привычной картинки он видит IHDR, IDAT, IEND, CRC и Length. Для разработчика, тестировщика или специалиста по метаданным это и есть ценность: программа показывает файл таким, каким его видит парсер.
Плюсы и минусы TweakPNG
Плюсы:
показывает PNG-файл на уровне чанков;
отображает Chunk, Length, CRC, Attributes и Contents;
даёт редактировать поддерживаемые служебные блоки;
работает с tEXt, zTXt и iTXt;
поддерживает PLTE, bKGD и tRNS для палитровых изображений;
импортирует ICC profile через Import ICC Profile;
умеет объединять IDAT через Combine all IDAT;
умеет разделять IDAT через Split IDAT chunk;
экспортирует и импортирует отдельные чанки;
поддерживает Copy, Cut и Paste для нескольких чанков;
позволяет переносить чанки между файлами через системный буфер обмена;
имеет Check Validity для проверки общей структуры;
добавляется в контекстное меню Windows Explorer;
содержит Tools -> Show Image Viewer;
подключает внешние viewer и filter через Configure Tools;
распространяется под GPL v3;
включает C++ source code;
подходит для анализа, обучения формату PNG и создания тестовых изображений.
Минусы:
не является полноценным графическим редактором;
требует понимания внутреннего формата PNG;
не все чанки можно редактировать;
IDAT нельзя редактировать как пиксельные данные;
перестановка IDAT в файле с несколькими IDAT делает файл нечитаемым;
изменение IHDR не выполняет реальное преобразование изображения;
Check Validity не гарантирует полную корректность файла;
встроенный viewer не поддерживает cHRM и iCCP как полноценную систему цветового управления;
MNG поддерживается ограниченно;

работа с MNG-палитрами, bKGD и tRNS ненадёжна при нескольких соответствующих чанках;
интерфейс рассчитан на технического пользователя;
русский интерфейс не подтверждён, COPTR указывает English.
Сравнение с аналогами
TweakPNG лучше сравнивать не с фоторедакторами, а с инструментами для проверки, оптимизации и работы с метаданными PNG. Она занимает отдельную нишу: интерактивное ручное редактирование структуры PNG. pngcheck сильнее как валидатор командной строки, ExifTool шире по метаданным разных форматов, OptiPNG и PNGGauntlet лучше подходят для уменьшения размера, PngOptimizer удобен для автоматической очистки, а hex-редакторы дают глубину, но требуют больше ручной работы.
| Программа | Основная задача | Чем отличается от TweakPNG | Когда выбрать |
| TweakPNG | ручной просмотр и редактирование PNG chunks | интерактивная таблица чанков, Insert, Edit, Check Validity, Import ICC Profile | когда нужно изменить структуру PNG вручную |
| pngcheck | проверка PNG/JNG/MNG и вывод chunk-level информации | командная строка, сильная диагностика, без интерактивного редактирования | когда нужно быстро проверить целостность или получить отчёт |
| ExifTool | чтение, запись и редактирование метаданных во множестве файлов | шире по форматам и метаданным, но не ориентирован на перестановку PNG chunks | когда нужно массово работать с метаданными |
| OptiPNG | lossless-оптимизация PNG | пересжимает и оптимизирует, а не редактирует блоки вручную | когда нужно уменьшить размер PNG без потери информации |
| PNGGauntlet | Windows-оболочка для PNGOUT, OptiPNG и DeflOpt | пакетная оптимизация PNG, JPG, GIF, TIFF, BMP в PNG | когда нужно массово сжать PNG для сайта |
| PngOptimizer | очистка PNG от лишней или ошибочной информации и уменьшение веса | автоматическая очистка и оптимизация, меньше ручного контроля | когда нужна простая очистка файлов |
| 010 Editor | hex-редактор с бинарными шаблонами | глубже для анализа разных форматов, но сложнее | когда нужен универсальный бинарный разбор |
pngcheck проверяет PNG, JNG и MNG через CRC и распаковку данных изображения, а также выводит chunk-level информацию. ExifTool — платформенно-независимая Perl-библиотека и командное приложение для чтения, записи и редактирования метаинформации в большом числе файлов. OptiPNG пересжимает PNG в меньший размер без потери информации, выполняет проверки целостности и исправления. PNGGauntlet объединяет PNGOUT, OptiPNG и DeflOpt для lossless-сжатия PNG. PngOptimizer очищает PNG от useless or wrong information, уменьшает размер и конвертирует другие lossless-форматы в PNG.
TweakPNG и pngcheck
pngcheck удобен, когда нужна строгая проверка и отчёт в командной строке. Он проверяет CRC, распаковывает image data и выводит сведения о структуре. TweakPNG удобнее, когда после просмотра нужно сразу изменить порядок, удалить чанк, добавить текстовый блок или импортировать ICC profile. Эти инструменты хорошо дополняют друг друга: TweakPNG — для ручной правки, pngcheck — для независимой проверки.
TweakPNG и ExifTool
ExifTool сильнее как универсальный инструмент метаданных. Он работает не только с PNG, а с множеством форматов и подходит для пакетных сценариев. TweakPNG уже, но нагляднее именно для структуры PNG: пользователь видит каждый чанк и может работать с ним как с отдельным блоком. Для массового изменения метаданных лучше ExifTool; для изучения и правки конкретного PNG на уровне чанков — TweakPNG.
TweakPNG и OptiPNG
OptiPNG нужен для уменьшения размера и lossless-оптимизации. Он пересжимает изображение, конвертирует BMP, GIF, PNM и TIFF в оптимизированный PNG, выполняет integrity checks и corrections. TweakPNG не подбирает оптимальный способ сжатия, зато позволяет увидеть и изменить отдельные служебные элементы. Для сайта и массовой оптимизации выбирают OptiPNG; для ручной проверки PLTE, tEXt, iCCP, gAMA, sRGB, bKGD и tRNS — TweakPNG.
TweakPNG и PNGGauntlet
PNGGauntlet рассчитан на пользователей Windows, которым нужно сжать PNG без потери качества. Он объединяет PNGOUT, OptiPNG и DeflOpt, поддерживает batch mode и конвертацию JPG, GIF, TIFF и BMP в PNG. TweakPNG не конкурирует с ним напрямую: она не является пакетным компрессором. Она нужна, когда нужно понять, что лежит внутри файла, и точечно изменить структуру.
TweakPNG и PngOptimizer
PngOptimizer автоматизирует очистку: убирает бесполезную или ошибочную информацию, уменьшает размер PNG и конвертирует BMP, GIF, TGA в PNG. TweakPNG даёт больше ручного контроля, но требует больше понимания. Если задача сводится к очистить и уменьшить, PngOptimizer быстрее. Если нужно решить, какой именно чанк удалить или добавить, TweakPNG точнее.
Кому подойдёт TweakPNG
TweakPNG стоит выбирать, когда задача связана с внутренним устройством PNG, а не с визуальным редактированием.
| Пользователь | Задача | Почему подходит TweakPNG |
| Разработчик | проверить работу PNG-экспорта или импорта | видно, какие чанки создала программа |
| Тестировщик | подготовить нестандартный PNG | есть Insert, Move Up/Down, Split IDAT, Combine IDAT |
| Специалист по метаданным | посмотреть tEXt, zTXt, iTXt, iCCP, pHYs | блоки отображаются отдельно |
| Технический редактор | удалить лишние комментарии | текстовые чанки можно найти и удалить |
| Исследователь форматов | изучить структуру PNG | интерфейс показывает файл как последовательность chunks |
| Специалист по цифровой сохранности | выполнить первичный анализ изображения | есть проверка структуры, CRC и декодирование ряда метаданных |
| Продвинутый пользователь | понять, почему PNG отличается от ожидаемого | видно гамму, sRGB, ICC, палитру, прозрачность и фон |
Для разовой бытовой задачи TweakPNG избыточна. Если нужно только обрезать картинку, изменить яркость, уменьшить разрешение или конвертировать формат, лучше выбрать обычный графический редактор. Для работы с цветами на уровне изображения пригодится Just Color Picker как отдельная утилита, а для визуальной обработки — Paint.NET или GIMP.
Кому лучше выбрать другую программу
TweakPNG не универсальна. Её не стоит использовать там, где задача решается проще другим инструментом.
| Задача | Более подходящий вариант | Причина |
| Сжать много PNG для сайта | PNGGauntlet, OptiPNG, PngOptimizer | автоматическая lossless-оптимизация |
| Проверить PNG из командной строки | pngcheck | быстрый отчёт, CRC, распаковка image data |
| Массово изменить метаданные | ExifTool | пакетная работа и множество форматов |
| Редактировать пиксели | GIMP, Paint.NET, Krita | холст, кисти, слои, фильтры |
| Просматривать много изображений | XnView, IrfanView, FastStone Image Viewer | навигация, миниатюры, пакетные операции |
| Разбирать произвольные бинарные форматы | 010 Editor | универсальный hex-анализ |
Главный критерий выбора простой: если нужно изменить картинку визуально — TweakPNG не подходит. Если нужно увидеть и изменить структуру PNG-файла — TweakPNG попадает точно в задачу.
Практические ошибки при работе с TweakPNG
Редактирование исходника без копии
TweakPNG работает с низкоуровневой структурой. Ошибка в порядке чанков, удаление обязательного блока, неверное изменение IHDR или неправильная вставка частного чанка могут сделать файл нечитаемым. Рабочий файл лучше сохранять отдельно, а исходный PNG оставлять без изменений.
Перестановка IDAT
IDAT-блоки с данными изображения должны идти подряд и в правильном порядке. Перемещать IDAT в файле с несколькими IDAT нельзя: файл станет нечитаемым. Для IDAT используйте специальные команды Combine all IDAT, Combine IDAT chunks и Split IDAT chunk, а не ручное перетасовывание строк.
Неправильное понимание IHDR
IHDR описывает изображение, но изменение полей IHDR не преобразует пиксельные данные. Если отметить interlaced, файл только начнёт утверждать, что он interlaced; реальная структура данных от этого не меняется. Такая правка нужна для технических экспериментов, а не для обычной конвертации.
Удаление bKGD или tRNS без понимания результата
bKGD влияет на фоновый цвет, tRNS — на прозрачность. Удаление этих блоков меняет интерпретацию изображения. В палитровых PNG это особенно заметно: цвет, который раньше был прозрачным или использовался как фон, может начать отображаться иначе.
Восприятие Check Validity как полной проверки
Check Validity проверяет порядок чанков и обязательные блоки, но не гарантирует, что все данные внутри каждого чанка корректны. После серьёзных изменений стоит использовать внешний валидатор, например pngcheck, и открыть файл в нескольких независимых программах.
Использование TweakPNG как оптимизатора
TweakPNG может удалить лишние чанки и объединить IDAT, но она не заменяет OptiPNG, PNGGauntlet или PngOptimizer. Для массового уменьшения размера нужны оптимизаторы. Для ручного удаления конкретного блока и проверки структуры — TweakPNG.
Безопасность и сохранность файлов
TweakPNG не требует сложного рабочего процесса, но из-за уровня доступа к структуре PNG лучше соблюдать осторожность.
Рекомендуемый порядок:
Работать с копией файла.
Не редактировать IHDR без конкретной технической задачи.
Не перемещать IDAT вручную.
После Insert всегда запускать Check Validity.
После Cut и Paste проверять порядок чанков.
После Import ICC Profile проверять изображение в программе с управлением цветом.
После операций с PLTE, bKGD и tRNS проверять прозрачность и фон.
После сохранения открывать файл во внешнем просмотрщике.
Для сложных случаев использовать pngcheck.
Хранить исходный PNG до окончания проверки результата.
Такой порядок особенно важен при подготовке тестовых файлов. Тестовый PNG может специально содержать необычную структуру, но пользователь должен понимать, какая часть необычна намеренно, а какая стала ошибкой.
Частые вопросы
Можно ли редактировать изображение в TweakPNG как в фоторедакторе?
Нет. TweakPNG не предназначена для ретуши, рисования, слоёв, фильтров и цветокоррекции изображения на холсте. Она редактирует служебные блоки PNG-файла. Встроенный viewer только отображает текущее состояние файла.
Можно ли удалить метаданные PNG?
Да, текстовые метаданные tEXt, zTXt и iTXt можно найти в списке чанков и удалить через Edit -> Cut. После удаления нужно выполнить Check Validity и сохранить копию. Для пакетного удаления метаданных в разных форматах лучше подходит ExifTool.
Можно ли изменить прозрачность?
Да, для палитровых изображений TweakPNG редактирует tRNS через palette editor. Для изменения alpha values используется кнопка Edit alpha, а количество значений задаётся через Alpha colors. Значение 0 означает полностью прозрачный цвет, 255 — полностью непрозрачный.
Можно ли изменить фоновый цвет?
Да, bKGD задаёт background color. В палитровом PNG для выбора фона используется Set bkgd, затем выбирается запись палитры. Для удаления фонового цвета удаляется bKGD chunk.
Поддерживает ли TweakPNG ICC-профили?
TweakPNG создаёт iCCP chunk через Import ICC Profile из .icc-файла. В списке чанков iCCP отображается по имени. Встроенный viewer не использует iCCP как полноценный цветовой профиль при отображении, поэтому итоговый цвет лучше проверять в редакторе или просмотрщике с управлением цветом.
Что делает Check Validity?
Check Validity проверяет общую структуру текущего файла: порядок чанков и обязательные блоки. Она не гарантирует полную валидность PNG и не проверяет содержимое данных внутри каждого чанка.
Чем TweakPNG отличается от pngcheck?
TweakPNG — интерактивный редактор структуры PNG. pngcheck — командная утилита для проверки целостности PNG/JNG/MNG, CRC, распаковки image data и вывода chunk-level информации. TweakPNG удобнее для ручной правки; pngcheck сильнее как независимая проверка.
Чем TweakPNG отличается от ExifTool?
ExifTool работает с метаинформацией в большом количестве форматов и удобен для пакетных операций. TweakPNG специализируется на PNG chunks и показывает структуру файла в виде таблицы. Для массового изменения метаданных лучше ExifTool; для ручного анализа PNG-структуры — TweakPNG.
Можно ли работать с MNG и JNG?
Да, но с ограничениями. TweakPNG поддерживает сигнатуры PNG, MNG и JNG, а также распознаёт отдельные MNG/JNG-элементы, но MNG-специфичные чанки не интерпретируются как полноценно редактируемые структуры.
Есть ли русский интерфейс?
Интерфейс TweakPNG английский. COPTR указывает English.
Итог
TweakPNG — инструмент для тех случаев, когда PNG нужно открыть не как картинку, а как структурированный файл. Она показывает каждый chunk, длину, CRC, атрибуты и содержимое, даёт редактировать поддерживаемые блоки, добавлять новые элементы через Insert, переносить чанки через Copy, Cut и Paste, объединять и разделять IDAT, импортировать ICC profile, проверять структуру через Check Validity и подключать внешние viewer/filter через Configure Tools.
Для обычного редактирования изображения лучше выбрать графический редактор. Для массового сжатия — OptiPNG, PNGGauntlet или PngOptimizer. Для метаданных разных форматов — ExifTool. Для независимой проверки PNG — pngcheck. TweakPNG нужна там, где важен ручной контроль над внутренней структурой PNG-файла: метаданные, палитра, прозрачность, фон, гамма, ICC, порядок блоков и подготовка тестовых изображений.
Список изменений
1999: первый релиз и базовая устойчивость:
- v1.0.0 от 3 декабря 1999 года стала первым релизом. Уже на старте программа была ориентирована на ручной анализ и изменение PNG, а не на визуальное редактирование.
- v1.0.1 от 27 декабря 1999 года добавила небольшие исправления, более аккуратную обработку большинства некорректных файлов, автоматическую проверку при сохранении и использование стандартного выбора цвета там, где это подходит. Этот этап важен тем, что проверка структуры стала частью обычного процесса сохранения, а не отдельной вспомогательной операцией.
2000–2001: палитра, tRNS, bKGD и Combine all IDAT:
- v1.1.0 от 28 декабря 2000 года расширила работу с палитрой. Появилось редактирование PLTE, bKGD и tRNS для палитровых изображений, сохранение размеров окон и ширины колонок, отдельное положение редактора текстовых чанков и palette editor, контекстное меню, редактирование IHDR и функция Combine all IDAT.
- v1.1.1 от 3 января 2001 года исправила ошибку записи неправильного CRC после редактирования IHDR. Это исправление хорошо показывает специфику TweakPNG: даже небольшая правка служебного блока требует корректного пересчёта контрольной суммы, иначе файл становится проблемным для парсеров PNG.
2003–2004: контекстное меню и встроенный просмотрщик:
- v1.1.2 от 24 ноября 2003 года добавила интеграцию в контекстные меню Windows Explorer, предупреждение при выходе без сохранения и чистую компиляцию в MSVC6. Контекстное меню сделало программу удобнее для точечного запуска по конкретному PNG-файлу.
- v1.2.0 от 29 декабря 2003 года добавила Tools -> Show Image Viewer. Встроенный просмотрщик изменил рабочий процесс: пользователь смог держать рядом таблицу чанков и визуальное представление текущего файла. В этом же релизе palette editor начал использоваться для выбора grayscale background и transparent colors.
- v1.2.1 от 11 декабря 2004 года обновила zlib до 1.2.2 и libpng до 1.2.8, а также принесла небольшие улучшения и исправления.
2008–2009: Unicode, iTXt, GPLv3, sTER и APNG:
- v1.3.0 от 16 ноября 2008 года стала крупным обновлением. В ней появилась поддержка iTXt chunks, бинарный файл стал Unicode-приложением, исходный код получил условную поддержку Unicode и strsafe string functions, а лицензия была изменена с GPLv2 на GPLv3.
- v1.3.1 от 7 декабря 2008 года добавила полную поддержку sTER chunks и read-only поддержку APNG chunks. Также программа стала менее склонна к сбою при попытке редактировать чанк с неправильным размером.
- v1.3.2 от 22 августа 2009 года исправила ошибки восстановления положения вспомогательных окон и позицию контекстного меню при работе с несколькими мониторами. Это не добавило крупных функций, но улучшило поведение интерфейса в реальных рабочих конфигурациях.
2010–2011: фильтры, APNG-блоки, 64-битная сборка и sCAL:
- v1.4.0 от 5 июня 2010 года добавила полную поддержку oFFs, acTL и fcTL chunks, поддержку filters в Tools, а также пункты Close и Reopen. ZIP-структура пакета была немного изменена, libpng обновлена до 1.4.2, zlib — до 1.2.5. Поддержка filter-инструментов стала важной частью программы, потому что TweakPNG смогла передавать текущий PNG внешней утилите и принимать результат обратно.
- v1.4.1 от 9 января 2011 года добавила 64-bit builds, поддержку sCAL chunks, drag-and-drop в viewer window, изменения shortcut keys и icons, а также обновление до libpng 1.5.0. Появление x64-сборки сделало программу удобнее для 64-битных систем, сохранив при этом x86-вариант.
- v1.4.2 от 9 августа 2011 года переписала PNG decoder во viewer и немного повысила точность gamma correction. libpng была обновлена до 1.5.4. Это обновление важно для встроенного viewer: он остался вспомогательным, но стал точнее отображать изображения с учётом гаммы.
2012–2014: ICC, прозрачность, compressed text и viewer:
- v1.4.3 от 6 марта 2012 года была maintenance release.
- v1.4.4 от 24 августа 2012 года улучшила поддержку ICC profiles и качество viewer для изображений с partial transparency. Это развитие связано с теми частями PNG, где важно не только наличие пикселей, но и корректная интерпретация цвета и прозрачности.
- v1.4.5 от 26 декабря 2012 года добавила исправления и улучшения, связанные с compressed text, а также изменила background color options во viewer. Для TweakPNG это важный шаг, потому что zTXt относится к типичным текстовым блокам, которые пользователи открывают и редактируют в программе.
- v1.4.6 от 7 сентября 2014 года была maintenance release, добавила Copy image to clipboard и сделала Correct for nonsquare pixels опциональной.


Оставте свой отзыв о TweakPNG