Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!
Zadejte Vaši e-mailovou adresu:
Kamarád fotí rád?
Přihlas ho k odběru fotomagazínu!
Zadejte e-mailovou adresu kamaráda:
-
5. září 2024
Matrixmedia - Obsluha a tisk na velkoformátových digitálních tiskárnách
-
30. září 2024
-
4. října 2024
VSE
Skriptujeme InDesign (26): Barvy podruhé
Adobe InDesign sazba
25. září 2006, 00.00 | I tento díl našeho výkladu se zabývá skriptováním barev. Tentokrát se zaměříme na způsoby aplikace barev na objekty a dále na práci s odstíny. Věnovat se pak budeme i použití barev v uživatelském rozhraní InDesignu.
I tento díl našeho výkladu se zabývá skriptováním barev. Tentokrát se zaměříme na způsoby aplikace barev na objekty a dále na práci s odstíny. Věnovat se pak budeme i použití barev v uživatelském rozhraní InDesignu.
Objekty a barvy
Zásadní je samozřejmě ve skriptech obarvení objektů určitou barvou. V případě stránkových objektů (pageItems - rámečky, EPS, PDF či bitmapová grafika, čáry apod.) lze aplikování barvy provést obvykle v případě výplně a tahu, obdobně lze změnit i barvu textu. Pokud chceme odstranit nastavení barvy u daných prvků, můžeme aplikovat vzorníkovou barvu "None" (v českém InDesignu "Žádná"). Příklad přiřazení barev:
//Aplikuje určené barvy tahu a výplně u aktuálně vybraného
textového rámečku
var myDoc=app.activeDocument;
//Definujeme barvu tahu a výplně
//Všimněte si, že používáme jiný postup nežli v dřívějších příkladech
(s try/catch)
if(myDoc.colors.item("Barva výplně")==null)
{myDoc.colors.add({space:
ColorSpace.cmyk, colorValue: [0,0,100,0], name: "Barva výplně"})}
else{myDoc.colors.item("Barva
výplně").properties={space: ColorSpace.cmyk, colorValue: [0,0,100,0],
name: "Barva výplně"}}
if(myDoc.colors.item("Barva tahu")==null)
{myDoc.colors.add({space:
ColorSpace.cmyk, colorValue: [100,0,0,0], name: "Barva tahu"})}
else{myDoc.colors.item("Barva
tahu").properties={space: ColorSpace.cmyk, colorValue: [100,0,0,0],
name: "Barva tahu"}}
//Je-li vybrán textový rámeček, nastaví skript jeho tah a výplň na
barvu výplně a tahu,
//barvu veškerého textu v rámečku nastaví na tiskařskou čerň
var mySel=app.selection[0];
if(mySel==null){alert("Nic jste nevybrali");exit()}
if(mySel.constructor.name=="TextFrame"){
mySel.strokeColor=myDoc.colors.item("Barva tahu");
mySel.fillColor=myDoc.colors.item("Barva
výplně");
mySel.texts[0].fillColor=myDoc.colors.item("Black")
}
else{alert("Nevybrali jste textový
rámeček")}
V InDesignu CS2 je možné aplikování i na bázi objektových stylů, viz následující příklad:
//Aplikuje určené barvy tahu a výplně u aktuálně vybraného
textového rámečku
//pomocí objektového stylu
var myDoc=app.activeDocument;
//Definujeme barvu tahu a výplně
//Všimněte si, že používáme jiný postup nežli v dřívějších příkladech
(s try/catch)
if(myDoc.colors.item("Barva výplně")==null)
{myDoc.colors.add({space:
ColorSpace.cmyk, colorValue: [0,0,100,0], name: "Barva výplně"})}
else{myDoc.colors.item("Barva
výplně").properties={space: ColorSpace.cmyk, colorValue: [0,0,100,0],
name: "Barva výplně"}}
if(myDoc.colors.item("Barva tahu")==null)
{myDoc.colors.add({space:
ColorSpace.cmyk, colorValue: [100,0,0,0], name: "Barva tahu"})};
else{myDoc.colors.item("Barva
tahu").properties={space: ColorSpace.cmyk, colorValue: [100,0,0,0],
name: "Barva tahu"}}
//Definujeme příslušný objektový styl
if(myDoc.objectStyles.item("Styl barvy rámečku")==null)
{myDoc.objectStyles.add({name: "Styl
barvy rámečku",
fillColor: myDoc.colors.item("Barva
výplně"), strokeColor: myDoc.colors.item("Barva tahu")})}
else{myDoc.objectStyles.item("Styl barvy
rámečku").properties={fillColor: myDoc.colors.item("Barva výplně"),
strokeColor: myDoc.colors.item("Barva tahu")}}
//Je-li vybrán textový rámeček, aplikuje se na něj objektový styl "Styl
barvy rámečku"
var mySel=app.selection[0];
if(mySel==null){alert("Nic jste nevybrali");exit()}
if(mySel.constructor.name=="TextFrame"){
mySel.applyObjectStyle(myDoc.objectStyles.item("Styl barvy rámečku"))}
else{alert("Nevybrali jste textový
rámeček")}
Síla nasazení skriptů souvisí v daném případě s hromadným zpracováním. Uveďme si třeba následující příklad:
//U všech textových rámečků v dokumentu odstraní jejich
výplň
//(tj. nastaví ji na vzorníkovou barvu "None" v anglickém a "Žádná" v
českém InDesignu)
var myDoc=app.activeDocument;
for(i=0;i<myDoc.textFrames.length;i++){myDoc.textFrames[i].fillColor=myDoc.swatches.item("None")}
Odstíny
U barvy aplikované na objekt lze nastavit její odstín (tint). Nejsnáze (resp. jednorázově) takto operujeme s hodnotami strokeTint a fillTint, udanými v procentech (0-100). Ukázka:
//Nastaví hodnotu odstínu u výplně vybraného objektu na 60
procent
var mySel=app.selection[0];
if(mySel!=null){mySel.fillTint=60}
else{alert("Vyberte objekt a spusťte skript znovu")}
K vytvoření políčka vzorníku s odstínem je třeba použít objektu tint
. Více naznačuje
následující příklad, podrobnější informace lze najít v referenční příručce InDesignu (s.
1 174-1 176).
//Přidá políčko odstínu vytvořené ze základní barvy "Red"
var myDoc=app.activeDocument;
try{myDoc.tints.add(myDoc.colors.item("Red"),{tintValue: 35})}catch(e){alert("Daný odstín již asi existuje")}
//Nové políčko se bude jmenovat "Red 35%")
Následná aplikace odstínu na objekt je možná následujícím způsobem:
//Políčko odstínu "Red 35%" aplikuje jako výplň výběru
var myDoc=app.activeDocument;
var mySel=app.selection[0];
if(mySel!=null){mySel.fillColor=myDoc.tints.item("Red 35%");}
else{alert("Vyberte objekt a spusťte
skript znovu")}
Barvy v rozhraní InDesignu
Barvy je občas třeba použít i v rozhraní InDesignu, konkrétně třeba pro vyznačení vodítek, mřížky, jednotlivých vrstev apod. V daném případě se jedná o RGB barvy, které určujeme buďto přímo coby trojici RGB hodnot nebo s pomocí UI Colors Enumeration (pro odpovídající hodnoty viz s. 1 238-1 239 referenční příručky).
//Nastaví barvu určené vrstvy na "orange"
var myDoc=app.activeDocument;
var myLayer=myDoc.layers[0];
myLayer.layerColor=UIColors.orange;
//Nastavení barvy vodítek v předvolbách na hodnoty "gridGreen", "teal",
"magenta", "red" a [0,255,255]
myDoc.documentPreferences.marginGuideColor= UIColors.gridGreen;
//vodítka z okrajů
myDoc.documentPreferences.columnGuideColor = UIColors.teal; //vodítka
sloupců
myDoc.pasteboardPreferences.bleedGuideColor = UIColors.magenta;
//vodítka kolem spadávky
myDoc.pasteboardPreferences.slugGuideColor = UIColors.red; //vodítka
kolem proložky
myDoc.pasteboardPreferences.previewBackgroundColor=[0,255,255]; //barva
pozadí v režimu náhledu
Obsah seriálu (více o seriálu):
- Skriptujeme InDesign (1): Úvod
- Skriptujeme InDesign (2): První kroky
- Skriptujeme InDesign (3): Základy JavaScriptu poprvé
- Skriptujeme InDesign (4): Základy JavaScriptu podruhé
- Skriptujeme InDesign (5): Dokumenty poprvé
- Skriptujeme InDesign (6): Dokumenty podruhé
- Skriptujeme InDesign (7): Výstup
- Skriptujeme InDesign (8): Stránky
- Skriptujeme InDesign (9): Stránkové objekty poprvé
- Skriptujeme InDesign (10): Stránkové objekty podruhé
- Skriptujeme InDesign (11): Dialogy
- Skriptujeme InDesign (12): Text poprvé
- Skriptujeme InDesign (13): Text podruhé
- Skriptujeme InDesign (14): Text potřetí
- Skriptujeme InDesign (15): Hledání a záměny poprvé
- Skriptujeme InDesign (16): Hledání a záměny podruhé
- Skriptujeme InDesign (17): Regulární výrazy
- Skriptujeme InDesign (18): Tabulky poprvé
- Skriptujeme InDesign (19): Tabulky podruhé
- Skriptujeme InDesign (20): Obrázky poprvé
- Skriptujeme InDesign (21): Obrázky podruhé
- Skriptujeme InDesign (22): Obrázky potřetí
- Skriptujeme InDesign (23): ESTK aneb jak na editaci a ladění skriptů
- Skriptujeme InDesign (24): Vrstvy
- Skriptujeme InDesign (25): Barvy poprvé
- Skriptujeme InDesign (26): Barvy podruhé
- Skriptujeme InDesign (27): Barvy potřetí
- Skriptujeme InDesign (29): Metadata podruhé
- Skriptujeme InDesign (30): Návěští
- Skriptujeme InDesign (31): Okna
- Skriptujeme InDesign (32): Reakce na události
- Skriptujeme InDesign (33): Novinky v CS3 verzi
-
14. května 2014
Jak vkládat snímky do galerií a soutěží? Stručný obrazový průvodce
-
23. dubna 2014
Konica Minolta přenesla výhody velkých zařízení do kompaktních modelů
-
12. června 2012
-
9. dubna 2014
-
29. listopadu 2013
-
6. září 2004
OKI snižuje ceny barevných laserových tiskáren C3100 a C5200n
-
13. května 2004
-
19. ledna 2004
QuarkXPress Passport 6: předvedení nové verze na konferenci Apple Forum 27.1.2004
-
6. února 2001
-
30. listopadu 2014
Nový fotoaparát α7 II: první plnoformát s pětiosou optickou stabilizací obrazu na světě
-
5. srpna 2024
Bubnový scanner na 4000dpi optické rozlišení + PC + software
-
8. září 2024
-
14. října 2024
-
5. listopadu 2024