2010-07-23 4 views

Répondre

0

Vous avez juste besoin d'une fonction, qui convertit la valeur CMJN en RVB? Ou voulez-vous convertir une image entière, qui est CMJN?

Pour le premier problème, comme pseudocode rgb2cmyk:

int r,g,b,c,m,y,k; 
int computedC,computedM,computedY; 
int minCMY; 

if(r==0 && g==0 && b==0) return {0,0,0,1} 

computedC = 1 - (r/255); 
computedM = 1 - (g/255); 
computedY = 1 - (b/255); 

minCMY = Math.min(computedC,Math.min(computedM,computedY)); 

computedC = (computedC - minCMY)/(1 - minCMY) ; 
computedM = (computedM - minCMY)/(1 - minCMY) ; 
computedY = (computedY - minCMY)/(1 - minCMY) ; 

return {computedC,computedM,computedY,minCMY}; 

Et pour l'inverse, il suffit de calculer en arrière :)

Pour le problème non. 2: Il est plus facile, parce que il y a un outil spécial appelé ColorSpace: How do I convert images between CMYK and RGB in ColdFusion (Java)?

Hope qui aide: 3

Questions connexes