{"id":4650,"date":"2008-11-19T17:43:33","date_gmt":"2008-11-19T15:43:33","guid":{"rendered":"http:\/\/www.boscarol.com\/blog\/?p=4650"},"modified":"2018-08-20T10:10:30","modified_gmt":"2018-08-20T08:10:30","slug":"matematica-della-trasparenza","status":"publish","type":"post","link":"http:\/\/www.boscarol.com\/blog\/?p=4650","title":{"rendered":"Matematica della trasparenza"},"content":{"rendered":"<p>Photoshop, Illustrator e InDesign calcolano l\u2019effetto di <strong>trasparenza<\/strong> mediante formule matematiche basate sulla\u00a0modalit\u00e0 di <strong>fusione<\/strong>\u00a0e sul valore di\u00a0<strong>opacit\u00e0<\/strong>. I due oggetti di fronte e retro devono avere la\u00a0stessa modalit\u00e0 di colore: entrambi RGB oppure entrambi CMYK.<\/p>\n<p>Le modalit\u00e0 di fusione si dividono in due gruppi: modalit\u00e0 <strong>separabili<\/strong> e modalit\u00e0 <strong>non separabili<\/strong>.<\/p>\n<p>Le modalit\u00e0 separabili agiscono indipendentemente sui singoli canali (RGB o CMYK). Le modalit\u00e0 non separabili consistono nello scambio di canali HSB (dunque i valori vanno trasformati in HSB e dopo il calcolo vanno ritrasformati nella modalit\u00e0 colore originale).<\/p>\n<p><strong><br \/>\nModalit\u00e0 separabili RGB<\/strong><\/p>\n<p>Il calcolo della trasparenza su un oggetto in primo piano F e un oggetto in secondo piano R avviene in due passi:<\/p>\n<ul>\n<li>calcolo della <strong>fusione<\/strong> T(R, F) con una delle formule indicate qui sotto;<\/li>\n<li>applicazione dell&#8217;<strong>opacit\u00e0<\/strong> O (tra 0 e 1) con la formula O * T(R, F) + (1-O)*R.<\/li>\n<\/ul>\n<p>Le formule indicate qui sotto indicano, per ogni canale RGB, il valore di fusione come funzione T dei valori di R e F. I valori dei canali sono tutti normalizzati tra 0 e 1 (cio\u00e8 sono divisi per 255 nel caso di 8 bit).<\/p>\n<p>&nbsp;<\/p>\n<p><strong>\u2022\u00a0Normal <\/strong>(Normale)<\/p>\n<p>T(R, F) = F<\/p>\n<p><strong>\u2022\u00a0Multiply <\/strong>(Moltiplica)<\/p>\n<p>T(R, F) = R \u00d7 F<\/p>\n<p><strong>\u2022\u00a0Screen <\/strong>(Scolora)<\/p>\n<p>T(R, F) = 1 \u2013 (1 \u2013 R) \u00d7 (1 \u2013 F) = R + F \u2013 (R \u00d7 F)<\/p>\n<p><strong>\u2022\u00a0Darken <\/strong>(Scurisci)<\/p>\n<p>T(R, F) = minimo (R, F)<\/p>\n<p><strong>\u2022\u00a0Lighten <\/strong>(Schiarisci)<\/p>\n<p>T(R, F) = massimo (R, F)<\/p>\n<p><strong>\u2022\u00a0Hard Light<\/strong> (Luce intensa)<\/p>\n<p>se F \u2264 1\/2, T(R, F) = <strong>Multiply<\/strong> (R, 2 \u00d7 F)<br \/>\naltrimenti T(R, F) = <strong>Screen<\/strong> (R, 2 \u00d7 F \u2013 1)<\/p>\n<p><strong>\u2022\u00a0Overlay <\/strong>(Sovrapponi)<\/p>\n<p>T(R, F) = <strong>Hard Light<\/strong> (F, R)<\/p>\n<p><strong>\u2022\u00a0Exclusion<\/strong> (Esclusione)<\/p>\n<p>T(R, F) = R + F \u2013 2 \u00d7 R \u00d7 F<\/p>\n<p><strong>\u2022\u00a0Difference <\/strong>(Differenza)<\/p>\n<p>T(R, F) = |R \u2013 F|<\/p>\n<p><strong>\u2022\u00a0Soft light<\/strong> (Luce soffusa)<\/p>\n<p>se F &lt; 1\/2, T(R, F) = 2 *R *F +R2 * (1 \u2013 2 * F)<br \/>\naltrimenti T(R, F) = \u221aR * (2 * F \u2013 1) + (2 * R) * (1 &#8211; F)<\/p>\n<p><strong>\u2022\u00a0Color Dodge <\/strong>(Colore scherma)<\/p>\n<p>se F &lt; 1, T(R, F) = minimo (1, R\/(1 \u2013 F))<br \/>\naltrimenti T(R, F) = 1<\/p>\n<p><strong>\u2022\u00a0Color Burn <\/strong>(Colore brucia)<\/p>\n<p>se R &gt; 0, T(R, F) = minimo (1, (1 \u2013 R)\/F))<br \/>\naltrimenti, T(R, F) = 0<\/p>\n<p><strong><br \/>\nModalit\u00e0 non separabili RGB<\/strong><\/p>\n<p>In questo caso il calcolo della trasparenza su un oggetto in primo piano F e un oggetto in secondo piano R avviene in tre passi:<\/p>\n<ul>\n<li>conversione da RGB a HSB;<\/li>\n<li>scambio di canali con una delle formule indicate qui sotto;<\/li>\n<li>conversione da HSB a RGB;<\/li>\n<li>applicazione dell&#8217;opacit\u00e0 O (tra 0 e 1) con la formula O * F + (1-O)*R.<\/li>\n<\/ul>\n<p><strong>\u2022\u00a0Hue <\/strong>(Tonalit\u00e0)<\/p>\n<p>H = H di F, S = S di R, B = B di R<\/p>\n<p><strong>\u2022\u00a0Saturation <\/strong>(Saturazione)<\/p>\n<p>H = H di R, S = S di F, B = B di R<\/p>\n<p><strong>\u2022\u00a0Color<\/strong> (Colore)<\/p>\n<p>H = H di F, S = S di F, B = B di R<\/p>\n<p><strong>\u2022\u00a0Luminosity<\/strong> (Luminosit\u00e0)<\/p>\n<p>H = H di R, S = S di R, B = B di F<\/p>\n<p><strong><br \/>\nMatematica della trasparenza CMYK<\/strong><\/p>\n<p>Le formule per il calcolo della trasparenza tra oggetti CMYK (con valori normalizzati tra 0 e 1) si ottengono dalle formule RGB sostituendo ai valori R e F i loro complementari a 1 e prendendo il complementare a 1 del risultato (il complementare a 1 di x \u00e8 il numero 1 \u2013 x).<\/p>\n<p>Per esempio le prima sei formule delle modalit\u00e0 separabili diventano<\/p>\n<p><strong>\u2022\u00a0Normal<\/strong><\/p>\n<p>T(R, F) = F<\/p>\n<p><strong>\u2022\u00a0Multiply<\/strong><\/p>\n<p>T(R, F) = 1 \u2013 (1\u2013R) * (1\u2013F)<\/p>\n<p><strong>\u2022\u00a0Screen<\/strong><\/p>\n<p>T(R, F) = R * F<\/p>\n<p><strong>\u2022\u00a0Overlay<\/strong><\/p>\n<p>se R &lt; 1\/2, T(R, F) = 2 * R F<br \/>\naltrimenti T(R, F) = 1 \u2013 2 * (1 \u2013 R) * (1 \u2013 F)<\/p>\n<p><strong>\u2022\u00a0Exclusion<\/strong><\/p>\n<p>T(R, F) = R + F \u2013 2 \u00d7 R \u00d7 F<\/p>\n<p><strong>\u2022\u00a0Difference<\/strong><\/p>\n<p>T(R, F) = |R \u2013 F|<\/p>\n<p>&nbsp;<\/p>\n<p><strong><br \/>\nEsempio<\/strong><\/p>\n<p>Per esempio per calcolare il risultato del <em>blending mode Multiply<\/em> al 70% di opacit\u00e0, applicato a questi oggetti<\/p>\n<p><img loading=\"lazy\" class=\"alignnone size-full wp-image-4652\" title=\"Calcolo della trasparenza\" src=\"https:\/\/i0.wp.com\/www.boscarol.com\/blog\/wp-content\/uploads\/2008\/11\/esempiot1.jpg?resize=273%2C178\" alt=\"\" width=\"273\" height=\"178\" data-recalc-dims=\"1\" \/><\/p>\n<p>se il <em>transparency blend space<\/em> \u00e8 RGB, i passi sono:<\/p>\n<ul>\n<li>Normalizzare i valori dell\u2019oggetto di secondo piano dividendo per 255; si ottiene R = 0.8235, G = 0.0.9020, B = 0.0980.<\/li>\n<li>Normalizzare i valori dell\u2019oggetto di primo piano dividendo per 255; si ottiene R = 0.1176, G = 0.8627, B = 0.7843.<\/li>\n<li>Applicare la formula di <em>Multiply<\/em> ad ogni singolo canale; si ottiene R = 0.0969, G = 0.7782, B = 0.0769.<\/li>\n<li>Applicare la formula per l\u2019opacit\u00e0 ad ogni singolo canale; si ottiene R = 0.7 * 0.0969 + 0.3 * 0.8235 = 0.3149, G = 0.8153, B = 0.0832.<\/li>\n<li>Riportare i valori tra 0 e 255 (cio\u00e8 moltiplicare per 255); si ottiene R = 80, G = 208, B = 21.<\/li>\n<\/ul>\n<p>Se un oggetto non \u00e8 RGB ma CMYK o Lab, viene convertito in RGB per il calcolo dell\u2019effetto di trasparenza.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Photoshop, Illustrator e InDesign calcolano l\u2019effetto di trasparenza mediante formule matematiche basate sulla\u00a0modalit\u00e0 di fusione\u00a0e sul valore di\u00a0opacit\u00e0. I due oggetti di fronte e retro devono avere la\u00a0stessa modalit\u00e0 di colore: entrambi RGB oppure entrambi CMYK. Le modalit\u00e0 di fusione si dividono in due gruppi: modalit\u00e0 separabili e modalit\u00e0 non separabili. Le modalit\u00e0 separabili agiscono [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"spay_email":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false},"categories":[343],"tags":[272,1571,12,1574],"jetpack_featured_media_url":"","jetpack_publicize_connections":[],"jetpack_shortlink":"https:\/\/wp.me\/pjoVH-1d0","jetpack_sharing_enabled":true,"jetpack_likes_enabled":false,"_links":{"self":[{"href":"http:\/\/www.boscarol.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/4650"}],"collection":[{"href":"http:\/\/www.boscarol.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.boscarol.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.boscarol.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.boscarol.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4650"}],"version-history":[{"count":14,"href":"http:\/\/www.boscarol.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/4650\/revisions"}],"predecessor-version":[{"id":25214,"href":"http:\/\/www.boscarol.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/4650\/revisions\/25214"}],"wp:attachment":[{"href":"http:\/\/www.boscarol.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4650"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.boscarol.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4650"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.boscarol.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4650"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}