Создайте структуру ARGB для заголовка C из PNG

В Perl:

$ perl -ne 'print $last,"$_\n" if /^Commandline/; $last=$_' foo.txt 
Start-Date: 2013-11-11  07:43:49
Commandline: apt-get install --no-install-recommends catfish

Start-Date: 2013-10-17  23:00:06
Commandline: apt-get install shimmer-themes

Start-Date: 2013-10-17  23:01:52
Commandline: apt-get install --no-install-recommends gedit

Или, для удаления пустых строк:

$ perl -ne 'print $last,$_ if /^Commandline/; $last=$_' foo 
Start-Date: 2013-11-11  07:43:49
Commandline: apt-get install --no-install-recommends catfish
Start-Date: 2013-10-17  23:00:06
Commandline: apt-get install shimmer-themes
Start-Date: 2013-10-17  23:01:52
Commandline: apt-get install --no-install-recommends gedit

-n причины переключателя perl обработать входной файл линию за линией, сохраняя каждую строку в специальной переменной $_. scriptlet выше печати текущая строка ($_) и предыдущая строка ($last) если текущий запускается с Commandline. Это затем сохраняет текущую строку как $last и перемещения к следующей строке.

3
31.07.2015, 17:30
1 ответ

Использование ImageMagick на основе rlogo_icon.h .

#!/bin/sh
echo 'unsigned long rlogo_icon[] = {'
identify -format '%w, %h,' $1
convert $1 -color-matrix '0 0 1 0, 0 1 0 0, 1 0 0 0, 0 0 0 1' RGBA:- | hexdump -v -e '1/4 "0x%08x,\n"'
echo '};'

Использование:

./script.sh rlogo_icon.png > rlogo_icon.h

Я не уверен, что эта -цветная-матрица всегда верна. Я разместил байты в порядке BGRA, потому что мой компьютер работает с прямым порядком байтов.

2
27.01.2020, 21:27

Теги

Похожие вопросы