Bug 51794 - Искажение цвета в hasher при преобразовании svg в png
Summary: Искажение цвета в hasher при преобразовании svg в png
Status: CLOSED FIXED
Alias: None
Product: Branch p10
Classification: Unclassified
Component: ImageMagick-tools (show other bugs)
Version: не указана
Hardware: x86_64 Linux
: P5 normal
Assignee: Anton Farygin
QA Contact: qa-p10@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-10-22 15:09 MSK by jqt4@altlinux.org
Modified: 2024-12-19 10:43 MSK (History)
4 users (show)

See Also:


Attachments
Изображение синей кнопки (4.17 KB, image/svg+xml)
2024-10-22 15:09 MSK, jqt4@altlinux.org
no flags Details
Кнопки в ALT Worstation (45.99 KB, image/png)
2024-10-30 15:59 MSK, Elena Mishina
no flags Details
Результат конвертирования в ALT Workstation 10.2 (495 bytes, image/png)
2024-10-30 16:19 MSK, Evgeny Shesteperov
no flags Details
Результат конвертирования в ALT Server 10.2 (705 bytes, image/png)
2024-10-30 16:19 MSK, Evgeny Shesteperov
no flags Details
Рабочая станция K (22.47 KB, image/png)
2024-10-30 16:40 MSK, Elena Mishina
no flags Details
ALT Server 10.2 strace (68.45 KB, text/x-log)
2024-10-30 21:44 MSK, Evgeny Shesteperov
no flags Details
ALT Workstation 10.2 strace (68.28 KB, text/x-log)
2024-10-30 21:45 MSK, Evgeny Shesteperov
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description jqt4@altlinux.org 2024-10-22 15:09:41 MSK
Created attachment 17041 [details]
Изображение синей кнопки

При сборке пакета branding-alt-server в окружении p10 происходит искажение цвета некоторых изображений.
Например, синяя кнопка:
https://git.altlinux.org/gears/b/branding-alt-server.git?p=branding-alt-server.git;a=blob;f=ahttpd/images/first-page-button.svg;h=5e1d7157072d394ccc8782c5a4bbba99d6be6071;hb=p10
(файл в приложении) становится тёмно-зелёной, вместо #476596 получается #476547.

Для воспроизведения проблемы достаточно создать окружение hasher на p10, поставить в него ImageMagick-tools, скопировать тестовый svg файл и выполнить преобразование.

Шаги воспроизведения:
mkdir -p ~/tmp/hasher
hsh -v --initroot-only ~/tmp/hasher
hsh-install ~/tmp/hasher ImageMagick-tools
cp first-page-button.svg ~/tmp/hasher/chroot/.in
hsh-shell ~/tmp/hasher
cp first-page-button.svg ~/; cd ~; convert -background none first-page-button.svg first-page-button.png

Ожидаемый результат: цвет кнопки синий.
Фактический результат: цвет кнопки тёмно-зелёный
Comment 1 Anton Farygin 2024-10-22 19:52:38 MSK
а без hasher воспроизводится ?
Comment 2 jqt4@altlinux.org 2024-10-22 19:59:41 MSK
(Ответ для Anton Farygin на комментарий #1)
> а без hasher воспроизводится ?

Нет, без hasher нормально конвертируется.
Comment 3 Anton Farygin 2024-10-22 20:40:22 MSK
тогда надо выяснить, какой из библиотек, связанной с ImageMagick не хватает какой-то зависимости. 
Это точно не проблема ImageMagick.
Comment 4 Evgeny Shesteperov 2024-10-30 15:50:20 MSK
Версия пакета: ImageMagick-6.9.13.9-alt1

    # apt-get install -y ImageMagick-tools
    $ curl "https://git.altlinux.org/gears/b/branding-alt-server.git?p=branding-alt-server.git;a=blob_plain;f=ahttpd/images/first-page-button.svg;h=5e1d7157072d394ccc8782c5a4bbba99d6be6071;hb=p10" -o template.svg
    $ convert template.svg button.png

Ожидаемый результат: button.png - синяя кнопка.

Фактический результат: button.png - зелёная кнопка.

Воспроизводится только в ALT Linux Server 10.2 (P10).

Пробовал менять брендинг, ошибка остаётся.

Например, в ALT Linux Workstation 10.2 (P10) не воспроизводится.

В Sisyphus (ALT Linux p11 (Sisyphus)) не воспроизводится.
Comment 5 Elena Mishina 2024-10-30 15:59:46 MSK
Created attachment 17085 [details]
Кнопки в ALT Worstation

Не знаю почему у вас воспроизводится только в ALT Linux Server 10.2, у меня и в Раб. станции 10.4 (см.вложение), и в Раб.станции K 10.4 кнопки тоже стали зелёные.
Comment 6 Evgeny Shesteperov 2024-10-30 16:19:13 MSK
Created attachment 17086 [details]
Результат конвертирования в ALT Workstation 10.2
Comment 7 Evgeny Shesteperov 2024-10-30 16:19:49 MSK
Created attachment 17087 [details]
Результат конвертирования в ALT Server 10.2
Comment 8 Alexander Makeenkov 2024-10-30 16:21:19 MSK
У меня в Workstaion K тоже НЕ воспроизводится.
Скорее всего дело в отсутствии/наличии какой-то библиотеки в системе.
Comment 9 Elena Mishina 2024-10-30 16:40:22 MSK
Created attachment 17088 [details]
Рабочая станция K

ALT Workstation K 10.4 (последний опубликованный образ). Система установлена с настройками по умолчанию. Стрелки зелёные (см. вложение)
Comment 10 Evgeny Shesteperov 2024-10-30 21:44:58 MSK
Created attachment 17090 [details]
ALT Server 10.2 strace
Comment 11 Evgeny Shesteperov 2024-10-30 21:45:34 MSK
Created attachment 17091 [details]
ALT Workstation 10.2 strace
Comment 12 Elena Mishina 2024-10-31 22:57:18 MSK
test.svg - исх.файл (синяя стрелка)
1) Рабочая станция (p10):
$ convert -verbose -background none test.svg test.png
'inkscape' '/usr/src/tmp/magick-1jiPb2_DjlClNqA0ZeiUv7ZcxMX3jSkO' '--export-filename=/usr/src/tmp/magick-4zFwuMen9kLbfLC2BmhWRKgYxbDLdOhR.png' '--export-dpi=96' '--export-background=rgb(0%,0%,0%)' '--export-background-opacity=0'
test.svg SVG 25x20 25x20+0+0 16-bit sRGB 4268B 0.010u 0:00.011
test.svg=>test.png SVG 25x20 25x20+0+0 16-bit sRGB 43c 799B 0.020u 0:00.016

test.png - стрелка синяя (ожидаемый результат)

Удаляем inkscape:
# apt-get install inkscape-

$ convert -verbose -background none test.svg test2.png
'inkscape' '/tmp/.private/user/magick-6KKNI3te8ETtA62aOnZ4eFhgKshyW1dP' '--export-filename=/tmp/.private/user/magick-qv-wZae8HTw6R1aEwXZ9H8_MVbEByCJM.png' '--export-dpi=96' '--export-background=rgb(0%,0%,0%)' '--export-background-opacity=0'
test.svg SVG 25x20 25x20+0+0 16-bit sRGB 4268B 0.000u 0:00.006
test.svg=>test2.png SVG 25x20 25x20+0+0 16-bit sRGB 43c 799B 0.010u 0:00.013

test2.png - стрелка зеленая (цвет искажен)

2) hasher (p10) с установленным ImageMagick-tools (ImageMagick-tools-6.9.13.9):

convert -verbose -background none test.svg test2.png
'inkscape' '/usr/src/tmp/magick-Yd6Q1EFP5ZWv-075PNV-xOtC7NV1VlAb' '--export-filename=/usr/src/tmp/magick-dbfeCJ0qD6h2q1FsZ3yLOInTXje1APN8.png' '--export-dpi=96' '--export-background=rgb(0%,0%,0%)' '--export-background-opacity=0'
test.svg SVG 25x20 25x20+0+0 16-bit sRGB 4268B 0.000u 0:00.009
test.svg=>test2.png SVG 25x20 25x20+0+0 16-bit sRGB 43c 799B 0.010u 0:00.037

test2.png - стрелка зеленая (цвет искажен)

3) hasher с установленным ImageMagick-tools + inkscape:

$ convert -verbose -background none test.svg test3.png
'inkscape' '/usr/src/tmp/magick-5ltT5-Uqapm6oC4KIxoKIbPq1gncRHy4' '--export-filename=/usr/src/tmp/magick-uLZtGea7bOxGdDDX9k7ikyjPDnd9Ei34.png' '--export-dpi=96' '--export-background=rgb(0%,0%,0%)' '--export-background-opacity=0'
inkscape: error while loading shared libraries: libinkscape_base.so: cannot open shared object file: No such file or directory
test.svg SVG 25x20 25x20+0+0 16-bit sRGB 4268B 0.000u 0:00.007
test.svg=>test3.png SVG 25x20 25x20+0+0 16-bit sRGB 43c 799B 0.010u 0:00.024

test3.png - стрелка зеленая (цвет искажен) +
ошибка, хотя файл /usr/lib64/inkscape/libinkscape_base.so при этом существует

4) hasher (Сизиф)  с установленным ImageMagick-tools-7.1.1.39 - искажений цвета нет (стрелка синяя).

см. также https://github.com/ImageMagick/ImageMagick/discussions/6764
Comment 13 Repository Robot 2024-12-19 10:43:49 MSK
ImageMagick-6.9.13.19-alt1 -> p10:

 Mon Dec 02 2024 Anton Farygin <rider@altlinux.ru> 6.9.13.19-alt1
 - 6.9.13.9 -> 6.9.13.19 (closes: #51794)