Soyez le premier à donner votre avis sur cette source.
Snippet vu 2 195 fois - Téléchargée 3 fois
unit Cyan_magenta_jaune_et_noir; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; procedure RGB_to_CMYB(RGB_long:TcolorRef; VAR Real_Cyan,Real_Magenta,Real_Yellow,Real_black:real) procedure CMYB_to_RGB(Real_Cyan,Real_Magenta,Real_Yellow,Real_black:real; var RGB_long:TcolorRef); function Obtenir_le_vrai_CMYN(une_color:tcolorref):string; implementation {$R *.dfm} function Real_min(a,b:Real):Real; begin if a<b then Real_min:=a else Real_min:=b; end; function Real_max(a,b:Real):Real; begin if a>b then Real_max:=a else Real_max:=b; end; procedure RGB_to_CMYB(RGB_long:TcolorRef; VAR Real_Cyan,Real_Magenta,Real_Yellow,Real_black:real); var rouge,vert,bleu:real; begin rouge:=GetRvalue(RGB_long); vert:=GetGvalue(RGB_long); bleu:=GetBvalue(RGB_long); Real_Cyan:=1.0-(rouge/255); Real_Magenta:=1.0-(vert/255); Real_Yellow:=1.0-(bleu/255); Real_black:=Real_min(Real_min(Real_Cyan,Real_Magenta),Real_Yellow); Real_Cyan:=Real_Cyan-Real_black; Real_Magenta:=Real_Magenta-Real_black; Real_Yellow:=Real_Yellow-Real_black; end; {RGB_to_CMYB} procedure CMYB_to_RGB(Real_Cyan,Real_Magenta,Real_Yellow,Real_black:real; var RGB_long:TcolorRef); begin Real_Cyan:=Real_min(1.0,Real_Cyan+Real_black); Real_Magenta:=Real_min(1.0,Real_Magenta+Real_black); Real_Yellow:=Real_min(1.0,Real_Yellow+Real_black); RGB_long:=rgb( round((1.0-Real_Cyan)*255), round((1.0-Real_Magenta)*255), round((1.0-Real_Yellow)*255)); end; {CMYB_to_RGB} function Obtenir_valeurs_Cyan_magenta_jaune_et_noir(une_couleur:tcolorref):string; var Real_Cyan,Real_Magenta,Real_Yellow,Real_black:real; begin RGB_to_CMYB(une_couleur,Real_Cyan,Real_Magenta,Real_Yellow,Real_black); Obtenir_valeurs_Cyan_magenta_jaune_et_noir:= 'Cyan='+floattostrF(Real_Cyan*100,fffixed,4,1)+'% '+ 'Magenta='+floattostrF(Real_Magenta*100,fffixed,4,1)+'%'+ 'Jaune='+floattostrF(Real_Yellow*100,fffixed,4,1)+'% '+ 'Noir='+floattostrF(Real_black*100,fffixed,4,1)+'%'; end; {Afficher_les_valeurs_Cyan_magenta_jaune_et_noi} {La chaîne résultante permet, d'obtenir une somme de pourcentage égal à 100%} function Obtenir_le_vrai_CMYN(une_color:tcolorref):string; var somme:real; Real_Cyan,Real_Magenta,Real_Yellow,Real_black:real; lst_cyan_magenta_jaune_et_noir:string; begin RGB_to_CMYB(une_color,Real_Cyan,Real_Magenta,Real_Yellow,Real_black); Somme:=Real_Cyan+Real_Magenta+Real_Yellow+Real_black; lst_cyan_magenta_jaune_et_noir:= 'Cyan='+inttostr(round((Real_Cyan/somme)*100))+'% '+ 'Magenta='+inttostr(round((Real_Magenta/somme)*100))+'% '+ 'Jaune='+inttostr(round((Real_Yellow/somme)*100))+'% '+ 'Noir='+inttostr(round((Real_black/somme)*100))+'%'; Obtenir_le_vrai_CMYN:=lst_cyan_magenta_jaune_et_noir; end;
10 juil. 2019 à 17:19
A mon tour, tel le discobole, je vous en envoie une de mes plus nostalgiques.
Et puis hop ! Je me rétablis de la plus gracieuse des façons.
7 juil. 2019 à 22:46
oui, beaucoup de changements depuis que Nix a cédé CodeS-SourceS à CCM.
Je ne suis pas sûr qu'il reconnaisse son "bébé", si par hasard il avait l'idée saugrenue de venir voir ce qu'il est devenu.
Tout a un début et une fin... (mais ici l'agonie est lente et douloureuse).
6 juil. 2019 à 19:16
ça ne va pas être possible dans un proche avenir. Le rachat par CCM a induit un changement radical concernant les tutoriels, pour en publier il faut à minima acquérir le statut de Contributeur, qui est attribué a des membres respectant aux mieux les règles de CodeS SourceS et de CCM (le statut étant valable sur tout les forums)
6 juil. 2019 à 14:50
Ce code est toujours aussi inexploitable pour quelqu'un d'autre que toi, mais je sais que tu ne comprends pas ce que je viens d'écrire.
De plus il n'a aucun intérêt pédagogique : les notions évoquées (R, G, B) sont très basiques.
Publie plutôt un tutoriel pour débutant, si tu penses maîtriser le sujet.
Je te relirai, si tu le désires, y compris pour la partie rédactionnelle (style, orthographe, etc.)
@ mon ami Cirec:
Salut Eric,
Hé oui, la nostalgie camarade.
Je traine ici de temps en temps, dans l'espoir fou d'une question pertinente, d'un code émoustillant, bref d'un truc qui donne l'envie (l'envie d'avoir envie, même...).
Oui, nous sommes les dinosaures agonisants d'un site complètement sclérosé, dont l'âme est partie en même temps que ceux qui l'ont animé (du latin "anima", et une pensée amicale pour notre ami Cari) pendant si longtemps.
Je ne me risquerai pas à les énumérer (de peur d'oublier quelqu'un), mais toi et moi savons parfaitement de qui il s'agit.
Sinon oui, Delphi, reste mon casse-tête préféré (ça vaut largement les mots fléchés).
Je n'y atteindrai jamais le niveau que j'aurais aimé, donc ça me laisse une marge de progression, et c'est très bien ainsi.
Bon, enfin, comme diraient les tontons flingueurs (amitiés à Kenavo s'il passe par là) : "on se risque sur le tout-venant" et on essaye de répondre au mieux à ceux qui méritent qu'on leur sacrifie un peu de notre temps.
Y'en a plus beaucoup...
Allez, bon courage, haut les coeurs, et faut pas mollir.
Amicalement, à l'année prochaine ^^
J-P
5 juil. 2019 à 08:18
je vais reformuler une autre fois un peu différemment, peut-être cette fois comprendras-tu (enfin à l’instar de Cirec, vu la quantité de remarques et de SourceS supprimées pour non respect des règles, j’ai un gros doute...) quand tu postes quoique ce soit sur CodeS SourceS ça doit fonctionner chez n’importe qui.
CodeS SourceS n’est pas ta sauvegarde personnelle.
Si ton code est dépendant d’autres codes que tu as écrit, alors tu postes un projet où tout est présent.
Ensuite je ne sais pas « qui » tu compares à Github, mais si c’est CodeS SourceS alors c’est une preuve supplémentaire que tu n’as toujours pas compris ce qu’est CodeS SourceS.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.