2011-06-19 20 views
22

हालांकि, डिफ़ॉल्ट रूप से BaseColor का उपयोग करना संभव है, यह बहुत सीमित विकल्प प्रदान करता है।iText का उपयोग कर तालिका कक्ष का पृष्ठभूमि रंग कैसे सेट करें?

मुझे आश्चर्य है कि मैं दस्तावेज़ में अपना खुद का कस्टम रंग कैसे जोड़ सकता हूं?

... 
     PdfPTable table = new PdfPTable(3); 

     PdfPCell cell = new PdfPCell(new Phrase("some clever text")); 
     cell.setBackgroundColor(BaseColor.GREEN); 
     table.addCell(cell); 
... 

उत्तर

20

विकल्पों में से बहुत सारे।

BaseColor color = new BaseColor(red, green, blue); // or red, green, blue, alpha 
CYMKColor cmyk = new CMYKColor(cyan, yellow, magenta, black); // no alpha 
GrayColor gray = new GrayColor(someFloatBetweenZeroAndOneInclusive); // no alpha 

पैटर्न रंग और छायांकन रंग भी हैं, लेकिन वे बहुत कम सरल हैं।

44

पोस्टिंग, उम्मीद है कि किसी और को यह प्रतिक्रिया उपयोगी लगेगी।

ऐसा लगता है एक के रूप में WebColor से एक नया BaseColor बना सकते हैं:

BaseColor myColor = WebColors.GetRGBColor("#A00000"); 

कौन सा तो के रूप में एक पृष्ठभूमि के रूप में जोड़ा जा सकता है:

cell.setBackgroundColor(myColor); 
+0

बहुत उपयोगी और बहुत सरल होते हैं। धन्यवाद! – silver

+0

किसी कारण से, मेरा पृष्ठभूमि रंग डिफ़ॉल्ट रूप से # 00FFFF पर सेट होता है और वह उस रंग में बदलना नहीं चाहता जिसे मैं चाहता हूं:/मुझे लगता है कि नए इसे तीव्र में बदल दिया गया है लेकिन यहां मैंने जो लिखा है: बेसकॉलर बीब्लू = वेबकॉलर्स। गेटआरजीबीसीओलर ("# 006 ईबी 6"); हेडरसेल। बैकग्राउंडकोलर। एक्वाल्स (बीबीयू); लेकिन पृष्ठभूमि रंग अभी भी एक डिफ़ॉल्ट पर सेट है .. मुझे सेट बैकग्राउंड कॉलर केवल पृष्ठभूमि रंग नहीं मिला। –

+2

वेबकॉलर्स अब अप्रचलित है, क्या आप इसे करने के आधुनिक तरीके से जानते हैं या क्या हमें इसकी अप्रचलितता को अनदेखा करना चाहिए (जैसा कि iTextSharp अप्रचलित रूप से उपयोग करने के लिए सबसे अधिक उपयोग करता है)? –

0

एक और उपाय है:

public static String mColor = "#aa8cc5"; 
int aa = Integer.parseInt(mColor,16); // base 16 
int colorArr = Color.rgb(Color.red(aa),Color.green(aa),Color.blue(aa)); 
cell1.setBackgroundColor(new BaseColor(colorArr)); 
1

इस प्रयास करें:
cell.setBackgroundColor(new BaseColor(226, 226, 226));
या:
cell.setBackgroundColor(WebColors.getRGBColor("#E2E2E2"));पदावनत

संबंधित मुद्दे