Innhold
- 1. Introduksjon
- 2 navngitte farger levert av xcolor-pakken
- 2.1 Tilgang til flere navngitte farger
- 2.2 Eksempelbruk
- 3 Laste inn og bruke navngitte farger i fargepakken
- 4 drivere og farger
- 4.1 Drivere for farger og xcolor
- 4.2 Automatisk fargedrivergjenkjenning
- 4.3 Mer avansert eksempel ved å bruke dvisvgm-driveren til å lage en SVG-fil
- 5 Lag dine egne farger
- 5.1 xcolor-bare fargemodeller
- 6 Stille inn bakgrunnsfargen på siden
- 7 Videre lesing
Introduksjon
Denne artikkelen forklarer hvordan du bruker farger i LaTeX-dokumentet ditt viafarge
ellerxcolor
pakker. Merk at dokumentasjon på brukernivå avfarge
pakken ligger iLaTeX standard grafikkpakke.
Begge pakkene gir et felles sett med kommandoer for fargemanipulering, menxcolor
er mer fleksibel og støtter et større antall fargemodeller, så er den anbefalte tilnærmingen.
Vi starter med følgende eksempel:
\dokumentklasse{artikkel}\usepackage{xcolor}\begynne{dokument}Dette eksemplet viser noen tilfeller av bruk av\teksttt{xcolor}pakke for å endre fargen på elementene i\LaTeX.\begynne{spesifisere}\farge{blå}\punktFørste element\punktAndre element\slutt{spesifisere}\noinnrykk{\farge{rød} \regel{\linje bredde}{0,5 mm}}\slutt{dokument}
Åpne dette xcolor-eksemplet på neste side
Dette eksemplet gir følgende utgang:
I dette eksemplet, pakkenxcolor
er importert med
\usepackage{xcolor}
deretter kommandoen\color{blå}
setterblå
farge for gjeldende tekstblokk. I dette tilfellet forspesifisere
miljø.
Koden for å sette den horisontale linjen opprettet av\rule{\linewidth}{0,5 mm}
er inneholdt i en gruppe, avgrenset med { og }, for å beholde effektene av\fargen rød}
lokalt for den gruppen.
Navngitte farger levert avxcolor
pakke
Som nevnt ixcolor-pakkedokumentasjon, er følgende navngitte farger alltid tilgjengelige uten å måtte laste inn noen pakkealternativer:
Få tilgang til flere navngitte farger
Ytterligere navngitte farger kan nås via følgendexcolor
pakkealternativer:
dvipsnavn
: laster inn 68 navngitte farger (CMYK)svnames
: laster inn 151 navngitte farger (RGB)x11navn
: laster inn 317 navngitte farger (RGB)
For eksempel hvis du skriver
\usepackage[dvipsnames]{xcolor}
du kan få tilgang til følgende navngitte farger:
Referere tilxcolor-pakkedokumentasjonfor tabulerte lister over farger levert avsvnames
ogx11navn
alternativer.
Eksempel på bruk
Følgende eksempel bruker navngitte farger lastet viadvipsnavn
alternativ.
\dokumentklasse{artikkel}\usepackage[dvipsnames]{xcolor}\begynne{dokument}Dette eksemplet viser hvordan du bruker\teksttt{xcolor}pakke å endre farge på\LaTeX{}sideelementer.\begynne{spesifisere}\farge{Skoggrønn}\punktFørste element\punktAndre element\slutt{spesifisere}\noinnrykk{\farge{Rubinrød} \regel{\linje bredde}{0,5 mm}}Bakgrunnsfargen på tekst kan også være\textcolor{rød}{Enkelt}sett. Du kan for eksempel endre bruken av en\fargeboks{BurntOrange}{oransje bakgrunn}og fortsett å skrive.\slutt{dokument}
Åpne dette xcolor-eksemplet på neste side
Dette eksemplet gir følgende utgang:
To nye kommandoer er også brukt i eksemplet:
\textcolor{rød}{enkelt}
: Endrer fargen på innebygd tekst. Denne kommandoen tar to parametere, fargen som skal brukes og teksten hvis farge endres. I eksemplet ordetEnkelt
er trykt irød
\colorbox{BurntOrange}{oransje bakgrunn}
: Endrer bakgrunnsfargen på teksten som sendes inn som det andre argumentet. I eksemplet ovenfor, ordeneoransje bakgrunn
er satt på en bakgrunnsfarge avBurntOrange
.
Laster og bruker navngitte farger ifarge
pakke
Du kan også brukefarge
pakke og last navngitte farger via sindu har navn
ogdvipsnavn
pakkealternativer:
\usepackage[bruksnavn, dvipsnavn]{farge}
Følgende kode brukerfarge
pakken for å bruke de samme navngitte fargene som ble brukt i forrigexcolor
pakkeeksempel.
\dokumentklasse{artikkel}\usepackage[bruksnavn, dvipsnavn]{farge} %bruker fargepakken, ikke xcolor\begynne{dokument}Dette eksemplet viser hvordan du bruker\teksttt{\bfserienfarge}pakke å endre farge på\LaTeX{}sideelementer.\begynne{spesifisere}\farge{Skoggrønn}\punktFørste element\punktAndre element\slutt{spesifisere}\noinnrykk{\farge{Rubinrød} \regel{\linje bredde}{0,5 mm}}Bakgrunnsfargen på tekst kan også være\textcolor{rød}{Enkelt}sett. Du kan for eksempel endre bruken av en\fargeboks{BurntOrange}{oransje bakgrunn}og fortsett å skrive.\slutt{dokument}
Åpne dette fargeeksemplet på neste side
Dette eksemplet gir samme utgang som det forrigexcolor
versjon:
Drivere og farger
Bruk av farger ved skriftsetting av tekst eller matematikk var ikke en del av den opprinnelige utformingen av TeX; i stedet ble bruk/anvendelse av farger delegert til eksterne "drivere" som konverterte TeXs originale utdatafilformat (DVI) til PostScript eller PDF. For at farge skulle fungere, måtte driverspesifikke instruksjoner "injiseres" i TeXs utdata ved å bruke en innebygd TeX-kommando kalt\spesiell
hvis jobb ganske enkelt er å la kode/data passere gjennom setteprosessen og bli innebygd i utdatafilen. Når den valgte driveren (programvaren) behandlet typesettutdataene, oppdaget den den innebygde koden/dataene og handlet på den for å oppnå det brukeren hadde til hensikt – for eksempel bruk av farger.
Tidene har endret seg, og PDF er nå det desidert vanligste utdataformatet brukt av TeX-motorer, og har lenge erstattet bruken av eldre DVI-drivere og opprettelsen av PostScript. Brukere har også et større utvalg av TeX-motorer å bruke for å sette inn LaTeX-dokumenter, spesielt pdfTeX, XeTeX eller LuaTeX/LuaHBTeX, så det er fortsatt viktig å ta hensyn til forskjeller i disse TeX-motorene – og sikre at de riktige mekanismene brukes til å sette inn fargedata (PDF-instruksjoner) i PDF-filene deres. For å støtte og tilpasse det eldre DVI-utdataformatet og det bredere miljøet med TeX-motorer og arbeidsflyter som er i bruk, kan du, om nødvendig, konfigurerefarge
ellerxcolor
pakker for å bruke en bestemt "driver" slik at LaTeX vil generere fargedata ved å bruke riktig metode.
Drivere forfarge
ogxcolor
Defarge
pakken gir ut-av-esken støtte for følgende driveralternativer:
dvipdfmx
,dvips
,dvisvgm
,luatex
,pdftex
ogxetex
Det er andre alternativer som beskrevet ifarge
pakkedokumentasjon.
Dexcolor
pakken inneholder følgende driveralternativer:
dvips
,xto
,dvipdf
,dvipdfm
,dvipdfmx
,luatex
,pdftex
,dpipsone
,dviwindo
,emtex
,dviwin
,oztex
,teksturer
,pctexps
,pctexwin
,pctexhp
,pctex32
,truetex
,tcidvi
,intex
ogxetex
.
Automatisk fargedrivergjenkjenning
Når du skriver inn dokumentet, leser LaTeX en konfigurasjonsfil kaltfarge.cfg
som inneholder kode som kan avgjøre om du kjører pdfTeX, XeTeX eller LuaTeX og laster automatisk den riktige driveren (.def
fil) for deg, så du gjør det ikketrengefor å spesifisere driverpakkealternativet for disse motorene.
Mer avansert eksempel ved å brukedvisvgm
driver for å lage en SVG-fil
Følgende eksempel brukerfarge
pakke med alternativer som laster navngitte farger ogdvisvgm
driver for å sende ut fargedefinisjoner/data ved hjelp av SVG-kode:
\usepackage[dvisvgm, bruksnavn, dvipsnavn]{farge}
Spesifikt konverteres utdatafiltypene av Overleaf til SVG ved hjelp av et program kaltdvisvgm
, som er en del av TeX Live og tilgjengelig på våre servere. Å løpedvisvgm
, etter at siden er satt inn, bruker vi enlatexmkrc-filsom opprettes når du åpner følgende kode på oversiden:
\dokumentklasse{artikkel}\usepackage[dvisvgm, bruksnavn, dvipsnavn]{farge}\tittel{Lage SVG-grafikk}\forfatter{På baksiden}\begynne{dokument}\maketitleHallo,{\farge{Aprikos}i aprikos}og nå inn{\farge{DarkOrchid}DarkOrchid}men kanskje det kan se penere ut hvis vi bruker{\farge{JungleGreen}JungleGreen}---eller kanskje ikke?\slutt{dokument}
Åpne dette eksemplet for å lage en SVG-fil
Når Overleaf er ferdig med kompileringen kan du få tilgang til SVG-grafikken, kaltmygraphic.svg
, ved å velgeLogger og utganger
og velgeAndre logger og filer
nedtrekksliste:
Lag dine egne farger
Det er mulig å definere dine egne farger, måten fargen defineres på avhenger av den foretrukne fargemodellen. Følgende eksempel bruker 4 fargemodeller.
\dokumentklasse{artikkel}\usepackage[dvipsnames]{xcolor}\definecolor{min rosa1}{rgb}{0,858, 0,188, 0,478}\definecolor{min rosa2}{RGB}{219, 48, 122}\definecolor{min rosa3}{cmyk}{0, 0,7808, 0,4429, 0,1412}\definecolor{mygray}{grå}{0,6}\begynne{dokument}Brukerdefinerte farger med forskjellige fargemodeller:\begynne{oppregne}\punkt \textcolor{min rosa1}{Rosa med rgb}\punkt \textcolor{min rosa2}{Rosa med RGB}\punkt \textcolor{min rosa3}{Rosa med cmyk}\punkt \textcolor{mygray}{Grått med grått}\slutt{oppregne}\slutt{dokument}
Åpne dette eksemplet på neste side
Dette eksemplet gir følgende utgang:
Kommandoen\definecolor
tar tre parametere: navnet på den nye fargen, modellen og fargedefinisjonen. Grovt sett representerer hvert tall hvor mye av hver farge du legger til blandingen som utgjør den endelige fargen.
rgb
: Rød, grønn, blå. Tre kommadelte verdier mellom 0 og 1 definerer komponentene i fargen.RGB
: Det samme somrgb
, men tallene er heltall mellom 0 og 255.cmyk
: Cyan, Magenta, gul og svart. Kommaseparert liste med fire tall mellom 0 og 1 som bestemmer fargen i henhold tilsubtraktiv CMYK-modellbrukt av kommersielle trykkerier.grå
: Gråskala. Et enkelt tall mellom 0 og 1.
I eksempeletmin rosa1
,min rosa2
ogmin rosa3
definere samme farge, men for forskjellige modeller. Du kan faktisk se at den som er definert avcmyk
er litt annerledes.
Farger definert av begge modellene kan senere brukes i dokumentet ditt, ikke bare for å angi fargen på teksten, men for ethvert annet element som tar en farge som parameter, for eksempeltabeller(du må legge tilbord
mulighet tilxcolor
),grafiske elementer laget med TikZ,tomter,vertikale linjaler i dokumenter med flere kolonnerogkodeoppføringer.
xcolor-bare fargemodeller
Dexcolor
pakken gir tilleggskommandoer som gir støtte for flere fargemodeller og vennlig fargeblanding, som vist i følgende eksempel:
\dokumentklasse{artikkel}\usepackage[dvipsnames]{xcolor}\fargelett{LysRubineRød}{Rubinrød!70}\fargelett{Min farge1}{grønn!10!oransje}\definecolor{Min farge 2}{HTML}{00F9DE}\begynne{dokument}Dette dokumentet presenterer flere eksempler som viser hvordan du bruker\teksttt{xcolor}pakke å endre farge på\LaTeX{}sideelementer.\begynne{spesifisere}\punkt \textcolor{Min farge1}{Første element}\punkt \textcolor{Min farge 2}{Andre element}\slutt{spesifisere}\noinnrykk{\farge{LysRubineRød} \regel{\linje bredde}{1 mm}}\noinnrykk{\farge{Rubinrød} \regel{\linje bredde}{1 mm}}\slutt{dokument}
Åpne dette eksemplet på neste side
Dette eksemplet gir følgende utgang:
Tre nye farger er definert i dette eksemplet, hver på en annen måte.
\colorlet{LightRubineRed}{RubineRed!70}
: En ny farge kaltLysRubineRød
er opprettet, har denne fargen 70 % intensiteten til originalenRubinrød
farge. Du kan tenke på det som en blanding av 70 % rubinrød og 30 % hvit. Å definere farger som dette lar deg utlede forskjellige nyanser av en hovedfarge – vanlig praksis i bedriftens merkevarebygging. I eksemplet kan du se originalenRubinrød
og det nyeLysRubineRød
brukes i to påfølgende horisontale regler.\colorlet{Mycolor1}{grønn!10!oransje}
: En farge som heterMin farge1
er laget med 10 % grønt og 90 % oransje.\definecolor{Mycolor2}{HTML}{00F9DE}
: FargenMin farge 2
er opprettet ved hjelp avHTML
modell. Farger i denne modellen må lages med 6 heksadesimale sifre, tegnene A, B, C, D, E og F må være med store bokstaver.
Fargemodellene som kunxcolor
støtter er:
cmy
: cyan, magenta, gulhsb
: fargetone, metning, lysstyrkeHTML
:RRGGBBGrå
: Gråtoner, et tall mellom 1 og 15.bølge
: Bølgelengde, et tall mellom 363 og 814. Tallet representerer bølgelengden til lys, i nanometer (nm)
Stille inn bakgrunnsfargen på siden
Bakgrunnsfargen på hele siden kan enkelt endres med\sidefarge
. Følgende kode demonstrerer dette ved å bruke teksten fra et tidligere eksempel::
\dokumentklasse{artikkel}\usepackage[dvipsnames]{xcolor}\fargelett{LysRubineRød}{Rubinrød!70}\fargelett{Min farge1}{grønn!10!oransje}\definecolor{Min farge 2}{HTML}{00F9DE}\begynne{dokument}\sidefarge{svart}\farge{hvit}% setter standardfargen til hvitDette dokumentet presenterer flere eksempler som viser hvordan du bruker\teksttt{xcolor}pakke å endre farge på\LaTeX{}sideelementer.\begynne{spesifisere}\punkt \textcolor{Min farge1}{Første element}\punkt \textcolor{Min farge 2}{Andre element}\slutt{spesifisere}\noinnrykk{\farge{LysRubineRød} \regel{\linje bredde}{1 mm}}\noinnrykk{\farge{Rubinrød} \regel{\linje bredde}{1 mm}}\slutt{dokument}
Åpne dette eksemplet på neste side
Dette eksemplet gir følgende utgang:
Kommandoen\pagecolor{svart}
angi sidefargen tilsvart
. Dette er en byttekommando, noe som betyr at den vil tre i kraft i hele dokumentet med mindre en annen bryterkommando brukes til å tilbakestille den.\nosidefarge
vil endre bakgrunnen tilbake til normal.
Videre lesning
For mer informasjon se:
- Defargepakkedokumentasjon(ellertilgang via
texdoc.org
) - Dexcolorpakkedokumentasjon(ellertilgang via
texdoc.org
) - Lengder i LaTeX
- Skriftstørrelser, familier og stiler
- Skrifttyper
- Støtter moderne fonter med XeLaTeX
- Tabeller
- Sette inn bilder
- Beamer
- Powerdot
- Plakater
FAQs
How do you loop through each element in an array? ›
For Loop to Traverse Arrays. We can use iteration with a for loop to visit each element of an array. This is called traversing the array. Just start the index at 0 and loop while the index is less than the length of the array.
How to get array values using for loop in JavaScript? ›For example, to get only the elements that are greater than zero in the array, you can do it this way with for loop: const greaterArr = []; for (let i = 0; i < arr. length; i++){ if (arr[i] > 0){ greaterArr. push(arr[i]); } } console.
How to loop through integer array in C? ›- Start a loop from 0 to N-1, where N is the size of array. for(i = 0; i < N; i++)
- Access every element of array with help of arr[index]
- Print the elements.
You can traverse through an array using for loop or forEach loop. Using the for loop − Instead on printing element by element, you can iterate the index using for loop starting from 0 to length of the array (ArrayName. length) and access elements at each index.
How do you loop through an array of objects to get a value? ›- Using for…in loop.
- Using forEach() Method.
- Using Object. keys() Method.
- Using object. values() Method.
- Using object. entries() Method.
- Using Lodash _. forEach()
Algorithm to find the frequency of each element of an array
Input the array elements. Create another array to store the frequency of elements. Traverse the input array and update the count of the elements in the frequency array. Print the frequency array which displays the frequency of all the elements of the array.
An item in a JavaScript array is accessed by referring to the index number of the item in square brackets. We know 0 will always output the first item in an array. We can also find the last item in an array by performing an operation on the length property and applying that as the new index number.
How to get each element of an array in JavaScript? ›The forEach() method is an iterative method. It calls a provided callbackFn function once for each element in an array in ascending-index order. Unlike map() , forEach() always returns undefined and is not chainable.
How to check values inside array in JavaScript? ›You can use the includes() method in JavaScript to check if an item exists in an array. You can also use it to check if a substring exists within a string.
How to iterate through an int array? ›You can iterate over an array using for loop or forEach loop. Using the for loop − Instead on printing element by element, you can iterate the index using for loop starting from 0 to length of the array (ArrayName. length) and access elements at each index.
What is array traversing? ›
To traverse an array means to access each element (item) stored in the array so that the data can be checked or used as part of a process.
How do you iterate through an array using a while loop? ›Using while to iterate over an array
First we define an array and find out its length, len , using the length property of arrays. Then we define an index variable to iterate over the array . The while loop, from lines 6 to 9, is run till index becomes equal to len indicating that the entire array is traversed.
A for loop can be used to access every element of an array. The array begins at zero, and the array property length is used to set the loop end.
How will you loop through this array? ›You can loop through the array elements with the for loop, and use the length property to specify how many times the loop should run.
What is the best way to loop through an array in JavaScript? ›You can use a for loop to iterate over arrays, NodeLists, and other array-like objects. This is the old-school way to loop over things. In the first part of the loop, before the first semicolon, we set a counter variable (typically i , but it can be anything) to 0 .
Which loop is used to loop to each element in an array? ›The foreach loop - Loops through a block of code for each element in an array.
Can you use a for each loop on an array list? ›The enhanced for loop (sometimes called a "for each" loop) can be used with any class that implements the Iterable interface, such as ArrayList .
Can you loop through each element in a set? ›You cannot access items in a set by referring to an index, since sets are unordered the items has no index. But you can loop through the set items using a for loop, or ask if a specified value is present in a set, by using the in keyword.
How to loop through all elements in array C#? ›To loop through an array in C#, use any of the loops. These loops have starting and ending value set that allows you to set or check value through iterations. C# has while, do… while, for and foreach loops to loop through an array.