web-dev-qa-db-fra.com

Comment puis-je renommer un profil de couleur et modifier le titre stocké dans le fichier ICC?

J'ai un certain nombre de fichiers de profil de couleur ICC pour l'étalonnage du moniteur. Ils peuvent être importés et fonctionnent correctement sur Ubuntu, mais les titres avec lesquels ils ont été créés ne sont pas utiles, alors j'aimerais les changer.

Autant que je sache, il n’ya aucun moyen de modifier le titre à partir de l’application Paramètres de couleur.

J'ai trouvé cela avec colormgr je peux installer un profil et changer le titre qui apparaît dans les paramètres de couleur comme suit:

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>"

Cependant, en vérifiant les sommes de contrôle du fichier ICC d'origine et de la copie importée dans ~/.local/share/icc, je constate que rien n'a changé dans le fichier importé, de sorte que le nouveau titre doit être stocké quelque part localement dans mon système.

J'aimerais pouvoir partager ces fichiers avec d'autres machines afin de changer le titre stocké dans le fichier lui-même.

Est-il possible de modifier le titre stocké dans un fichier ICC à l'aide d'un logiciel sous Ubuntu?

3
Ian Mackinnon

OK, enfin je l'ai fait sous Ubuntu avec IccXML:

ouvrir un terminal

installer les prérequis:

Sudo apt-get install build-essential
Sudo apt-get install libxml2-dev
Sudo apt-get install libtiff5-dev

faire un répertoire de travail

cd $HOME
mkdir icc
cd icc

obtenir les codes sources:

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

extraire et compiler SampleICC

tar -xzf SampleICC-1.6.8.tar.gz
cd SampleICC-1.6.8/
./configure --prefix=$HOME/icc/
make -j
make install

extraire et compiler 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

Obtenez un fichier de test et faites le travail:

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

Maintenant, allez à la fin du fichier, changez les données de la description à votre guise, sauvegardez le fichier et fermez gedit.

./iccFromXml Dell_2707wfp.xml Dell_2707wfp_new.icm

OK, regardez l'original:

./iccDumpProfile Dell_2707wfp.icm ALL | grep -A 1 textDescriptionType

Output: 
Type:   textDescriptionType
"Dell 2707WFP.icm"

et un coup d'oeil du nouveau:

./iccDumpProfile Dell_2707wfp_new.icm ALL | grep -A 1 textDescriptionType

Output: 
Type:   textDescriptionType
"Dell Test 2707WFP.icm"
3
cmks

Un fichier icc est constitué de balises. La balise d'intérêt peut être

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

Il existe de nombreux outils pour créer et éditer des fichiers icc, commercial et open-source .

Le Inspecteur de profil ICC intègre la possibilité de modifier de nombreuses entrées de balises dans un profil. Il ne fonctionne que sous Windows ou linux/wine.

Peut-être que juste pour éditer les balises desc, cela peut être une solution acceptable d'exécuter un outil sous linux/wine ou sous des fenêtres discrètes.

Si vous voulez exécuter sous Linux discret, vous devez utiliser IccXML . Il vous suffit de convertir le fichier icc en fichier xml, d'éditer les balises souhaitées et de reconvertir le fichier xml en fichier icc binaire.

1
cmks