r फ़ॉन्ट रंग कैसे बदलें?




r-markdown (4)

RMarkdown में फ़ॉन्ट रंग निर्दिष्ट करने का एक तरीका है?

चंक विकल्पों के माध्यम से ब्राउज़ करते समय कोई विकल्प प्रतीत नहीं होता है


मैं इस तरह से एक फ़ंक्शन बनाता हूं:

#Color Format
colFmt = function(x,color){
  outputFormat = knitr::opts_knit$get("rmarkdown.pandoc.to")
  if(outputFormat == 'latex')
    paste("\\textcolor{",color,"}{",x,"}",sep="")
  else if(outputFormat == 'html')
    paste("<font color='",color,"'>",x,"</font>",sep="")
  else
    x
}

फिर आप इसे इस तरह से इनलाइन का उपयोग कर सकते हैं: `r colFmt("MY RED TEXT",'red')` , और रंगीन टेक्स्ट को लेटेक्स या HTML डॉक्यूमेंट पर काम किए बिना ही रेंडर किया जाएगा।


@Ben Bolker द्वारा दिए गए लिंक पर दिया गया जवाब:

Roses are <span style="color:red">red</span>, 
violets are <span style="color:blue">blue</span>.

यदि आप HTML (ioslides) को आउटपुट स्वरूप के रूप में चुनते हैं तो काम करता है।

हालाँकि, यह आउटपुट स्वरूप के रूप में पीडीएफ (बीमर) का चयन करने पर काम नहीं करता है। यदि आप एक pdf बनाना चाहते हैं, तो LaTeX सिंटैक्स का उपयोग करें:

    Roses are \textcolor{red}{red}, violets are \textcolor{blue}{blue}.

अन्य लोगों ने वर्ड के अलावा अन्य आउटपुट के लिए उत्तर प्रदान किए हैं। Word के लिए, आप संदर्भ शब्द दस्तावेज़ की सहायता से इसे पूरा करने के लिए पंडोक कस्टम-शैली वाक्यविन्यास का उपयोग कर सकते हैं। सबसे पहले, अपने reference.docx टेम्पलेट के अंदर, एक संक्षिप्त, अलग नाम के साथ एक नई वर्ड शैली बनाएं। यदि आप चाहते हैं कि आपका फ़ॉन्ट रंग पूर्ण अनुच्छेद पर लागू हो, तो आप डिफ़ॉल्ट, "लिंक्ड पैराग्राफ और चरित्र" शैली प्रकार का उपयोग कर सकते हैं। यदि आप केवल रंग के साथ एक पैराग्राफ में कुछ शब्दों पर जोर देना चाहते हैं, तो आपको "वर्ण" शैली प्रकार का चयन करने की आवश्यकता है। फ़ॉन्ट रंग (और आपकी आवश्यकता के किसी भी अन्य स्टाइल) को बदलें और Reference.docx फ़ाइल को सहेजें।

फिर, अपनी .Rmd फ़ाइल के अंदर, आप टैग का उपयोग इस प्रकार कर सकते हैं:

<div custom-style=“DivCol”>Whole paragraph of colored text</div>

Just a <span custom-style=“SpanCol”>few words</span> of colored text

शैली के नाम के बारे में एक शब्द - जिन कारणों से मुझे समझ नहीं आ रहा है, यह प्रक्रिया शैली नाम "Span_Add" के साथ काम नहीं करती थी, लेकिन "SpanAdd" ठीक था।


मैंने मूल रूप से निकोलस हैमिल्टन के उत्तर का उपयोग किया था, लेकिन क्योंकि मैंने xtable और print उपयोग किया था, मुझे कुछ लेटेक्स अनुक्रमों के साथ कुछ समस्याएं थीं जो बच गई थीं। अर्थात्, \\textcolor $\backslash$textcolor बदल दिया जा रहा है। मैं निम्नलिखित तरीके से स्वच्छता से बचने के द्वारा इसे प्राप्त करने में सक्षम था:

```{r results='asis'}
tbl = data.frame(a = letters[1:10], b = 1:10 / 10)
tbl$b = ifelse(tbl$b < 0.5, colFmt(tbl$b, "red"), colFmt(tbl$b, "green"))
print(xtable(tbl), sanitize.text.function = identity)
```

मुझे तब जाना था और मैन्युअल रूप से कुछ वर्णों जैसे % साफ करना था लेकिन कम से कम \textcolor को सही ढंग से लागू किया गया था। बेशक, अपने स्वयं के सैनिटाइज़ फ़ंक्शन का विस्तार करके इसे टाला जा सकता है।





r-markdown