Как я могу переименовать цветовой профиль и изменить заголовок, сохраненный в файле ICC?
У меня есть несколько файлов цветового профиля ICC для калибровки монитора. Их можно импортировать и правильно работать в Ubuntu, но названия, с которыми они были созданы, бесполезны, поэтому я бы хотел их изменить.
Насколько я могу судить, изменить название из приложения "Настройки цвета" невозможно.
Я нашел это с colormgr
Я могу установить профиль и изменить заголовок, который отображается в настройках цвета, следующим образом:
colormgr import-profile <icc-filename> | grep "Profile ID"
colormgr get-devices | grep "Device ID"
colormgr device-add-profile <monitor-device-id> <profile-id>
colormgr profile-set-property <profile-id> Title "<new-title>"
Тем не менее, проверка контрольных сумм исходного файла ICC и импортированной копии в ~/.local/share/icc
Я вижу, что ничего не изменилось в импортированном файле, поэтому новый заголовок должен храниться где-то локально в моей системе.
Я хотел бы иметь возможность поделиться этими файлами с другими компьютерами, поэтому я бы хотел изменить заголовок, хранящийся в самом файле.
Можно ли как-нибудь изменить заголовок, сохраненный в файле ICC, с помощью программного обеспечения в Ubuntu?
2 ответа
Хорошо, наконец я сделал это под Ubuntu с IccXML:
открыть терминал
установить предварительные условия:
sudo apt-get install build-essential
sudo apt-get install libxml2-dev
sudo apt-get install libtiff5-dev
сделать рабочий каталог
cd $HOME
mkdir icc
cd icc
получить исходные коды:
wget http://netcologne.dl.sourceforge.net/project/sampleicc/sampleicc%20tar/SampleIcc-1.6.8/SampleICC-1.6.8.tar.gz
wget http://netcologne.dl.sourceforge.net/project/iccxml/IccXML-Src/IccXML-0.9.8/IccXML-0.9.8.tar.gz
распаковать и скомпилировать SampleICC
tar -xzf SampleICC-1.6.8.tar.gz
cd SampleICC-1.6.8/
./configure --prefix=$HOME/icc/
make -j
make install
распаковать и скомпилировать IccXML
tar -xzf ../IccXML-0.9.8.tar.gz
cd IccXML-0.9.8/
PKG_CONFIG_PATH=$HOME/icc/lib/pkgconfig ./configure --prefix=$HOME/icc
make -j
make install
Получить тестовый файл и сделать работу:
cd $HOME/icc/bin
wget http://www.tftcentral.co.uk/icc_profiles/dell_2707wfp.icm
./iccToXml dell_2707wfp.icm dell_2707wfp.xml
gedit dell_2707wfp.xml
Теперь перейдите в конец файла, измените данные описания, как хотите, сохраните файл и закройте gedit.
./iccFromXml dell_2707wfp.xml dell_2707wfp_new.icm
ОК, посмотрите на оригинал:
./iccDumpProfile dell_2707wfp.icm ALL | grep -A 1 textDescriptionType
Output:
Type: textDescriptionType
"Dell 2707WFP.icm"
и внешний вид нового:
./iccDumpProfile dell_2707wfp_new.icm ALL | grep -A 1 textDescriptionType
Output:
Type: textDescriptionType
"Dell Test 2707WFP.icm"
Icc-файл состоит из тегов. Интересующий тег может быть
tag xxx:
sig 'desc'
type 'desc'
offset 2747620
size 73
TextDescription:
ASCII data, length 25 chars:
0x0000: GRACoL2006_Coated1v2.icc
No Unicode data
No ScriptCode data
Существует множество инструментов для создания и редактирования icc-файлов, коммерческих и с открытым исходным кодом.
ICC Profile Inspector включает в себя возможность изменять многие записи тегов в профиле. Он работает только на Windows или Linux/ Wine.
Может быть, для простого редактирования тегов desc может быть приемлемым решением запустить инструмент под linux/wine или под дискретными окнами.
Если вы хотите работать под дискретным Linux, вы должны использовать IccXML. Просто преобразуйте icc-файл в xml-файл, отредактируйте нужные теги и преобразуйте xml-файл обратно в двоичный icc-файл.