2015-06-26 11 views
7

'dan XSSFWorkbook için özel bir font rengini ayarlama konusunda biraz sorun yaşıyorum. Ben ne zaman: Yazı tipi siyah kalırApache'de XSSFWorkbook için özel font rengini ayarlama POI

yellow = workbook.createCellStyle(); 
    Font whiteFont = workbook.createFont(); 
    whiteFont.setColor(new XSSFColor(new Color(255, 255, 255)).getIndexed()); 
    yellow.setFillForegroundColor(new XSSFColor(yellowRGB)); 
    yellow.setFillPattern(XSSFCellStyle.SOLID_FOREGROUND); 
    yellow.setFont(whiteFont); 

, ben olsa yanlış yapıyorum emin değilim. Siyah ve beyaz olmak anahtarlama nerede

cevap

6

Sen whiteFont.setColor(new XSSFColor(new Color(255,255,255)));

Ancak, bug in Apache POI vardır yapabilirsiniz. Excel'de bir sorunu gidermek için XSSFColor.java (XSSFColor.correctRGB()) dosyasına bir "düzeltme" koymuş gibi görünüyor. Excel'in düzeltilmiş olması muhtemeldir, ancak Apache POI güncellenmemiştir. (Bu kullanımdan kaldırıldı) whiteFont.setColor(HSSFColor.WHITE.index) veya whiteFont.setColor(IndexedColors.WHITE.index);

ya whiteFont.setColor(new XSSFColor(new Color(255,255,254))); yaparsanız o beyaz gerçekten yakın olacak:

Bunun yerine yapabilirsiniz.

+0

Ancak sorun 'getIndexed() işlevini kullanmam gerekiyor çünkü 'Font.setColor (kısa)' parametreyi 'short' kullanır. Ayrıca, yöntem hiç işe yaramadı çünkü belki de sadece Beyaz için olduğunu düşündüm ama whiteFont.setColor (yeni XSSFColor (yeni Renk (234, 17, 156)). GetIndexed()); hala siyah kaldı – silverAndroid

+0

getIndexed() ile ilgili bir sorun var, büyük olasılıkla XSSFColor başlık altında kullanıyor ne CTColor, bir sorun var. Hangi İÇN sürümünü kullanıyorsunuz? Hala whiteFont.setColor (HSSFColor.WHITE.index) 'veya' whiteFont.setColor (IndexedColors.WHITE.index); ' –

+0

yapabilirsiniz. Çalışma kitabınızın türü nedir? Kullanmakta olduğunuz Font sınıfı için tam tip nedir? (Hangi paket?) –

1
XSSFFont font = (XSSFFont) wb.createFont(); 
font.setColor(new XSSFColor(Color.decode("#7CFC00"))); 
+0

Bu sorunun, mevcut sorunu düzeltmede OP'ye nasıl yardımcı olduğuyla ilgili bir açıklama ekleyin –

İlgili konular