LINUX.ORG.RU
ФорумTalks

Сохранение любого файла как PNG изображение

 


1

1

Написал скрипт File2PNG, сохраняющий любой файл как PNG изображение (с возможностью восстановить обратно).

Можно использовать любой хостинг картинок для хостинга произвольных файлов.

Раньше была в ходу технология rarjpeg, но с большинством распространённых хостингов картинок (по крайней мере из тех что хранят изображения годами, а не удаляют через месяц) это уже не работает, т.к. они стали вычищать мусор из изображений, даже exif удаляют. А мой вариант работает, т.к. на выходе скрипта обычное изображение без чужеродных данных.

Только надо учитывать что некоторые хостинги изображений заливаемые картинки могут уменьшить, если она превышает лимиты, в таком случае файл будет испорчен.

Deleted

Последнее исправление: pyroman (всего исправлений: 2)

Ответ на: комментарий от Serg_HIS

1. Имя и расширение файла не вливаешь в картинку?

Сохраняется. Док писался до появления кода. Я сперва накидал идею, потом написал код.

2. ImageMagick не умеет png32 (с альфа каналом)?

Умеет наверное, но на размер результата в байтах это влиять не должно по идее. А вот размер в пикселях будет меньше.

Deleted
()
Ответ на: комментарий от iSage

Я твой проект не смог нагуглить, пришлось писать самому (понадобилась эта штука в личных целях).

Deleted
()

Я вот немного решил расшевелить ягоды в пороховницах или порох в ягодицах...

вот смотри что получилось...

Это котик в котором я записал в каждый пиксель из 24 бит 12 бит белого шума (имитация хранения данных).

http://biclod.com:9091/access/cd591239-25ea-4d45-9a6c-95a00be9ea82:slideshow;...

Как тебе котик?

Serg_HIS
()
Ответ на: комментарий от Serg_HIS

Это котик в котором я записал в каждый пиксель из 24 бит 12 бит белого шума (имитация хранения данных).
http://biclod.com:9091/access/cd591239-25ea-4d45-9a6c-95a00be9ea82:slideshow;...

Как стеганография очень неплохо. Т.е. получается что половину размера занимает полезная информация?

Но вот когда стеганография не важна, кпд маловат, вот например хостинг Funkyimg имеет ограничение в 4МБ. http://funkyimg.com/i/2B8nz.png (впрочем, этот файл бы влез).
А у imgur ограничение ещё ниже, иначе пережимают в jpeg.

Deleted
()
Ответ на: комментарий от Deleted

Вообще я поднял свои старые знания для jpeg.

Но да... Там не будет 50% вместилища однозначно.

Для твоего варианта я могу подсказать ещё больше вмещение при приемлемой графике.

Serg_HIS
()
Ответ на: комментарий от Serg_HIS

Для твоего варианта я могу подсказать ещё больше вмещение при приемлемой графике.

Куда уж больше, файл 1905662 байт, png получается 1902716 байт. Т.е. используется 100% объёма. При том что файл несжимаемый в данном случае (это mp3). Текст конечно можно предварительно сжать гзипом, например.

Deleted
()
Ответ на: комментарий от Serg_HIS

Зачем оно тебе вообще нужно?

Хочу запилить себе хитрожопый облачный хостинг. В бд хранить только соответствие адресов картинок файлам, при запросе картинки загружать, распаковывать, помещать в кеш и оттуда раздавать как обычную статику. Допустим запрос к smartasscloud.com/file.mp3 выполняет необходимые действия и перенаправляет на smartasscloud.com/cache/hash.mp3. Директория кеша периодически чистится для экономии места.

Deleted
()
Ответ на: комментарий от Serg_HIS

Это для всякого не очень важного хлама, который иногда где-то шарится (например в постах на форумах) и у себя в личных облаках всё это годами хранить не охота. Обычные хостинги файлов типа rghost не очень хороши, хранят недолго. А картинки на некоторых хостингах картинок могут храниться годами.

Deleted
()
Ответ на: комментарий от Serg_HIS

Это естественно. Надо же сперва посмотреть как это будет работать прежде чем интерфейс пилить. Можно ещё и ФС на основе fuse сделать, но мне пока не надо.

Deleted
()
Ответ на: комментарий от Serg_HIS

А будет шифрование?

Зачем, если есть необходимость, файл и так можно зашифровать. Мне не нужно, по крайней мере. Сервис кстати, не планируется быть публичным. То есть скачивать сможет любой, а заливать только я.

Deleted
()
Ответ на: комментарий от bodqhrohro_promo

Не, плеер-флешка Samsung U6, перегруз наверное из-за того что слишком близко поднёс ко рту и громко хохотал. Записывал правда для другой цели, давно, а тут хохот только оставил, в оригинале там фраза кое какая шла.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.