2015-01-15 15 views
5

के साथ स्वत: उत्कृष्ट एक्सेल टिप्पणियां हमारे पास अपाचे पोई द्वारा उत्पन्न बहुत सारी एक्सेल रिपोर्ट हैं। उनमें से कुछ शीर्षकों में टिप्पणियां शामिल हैं। कई रिपोर्टों के कारण हम टिप्पणियां जोड़ने के लिए सामान्य समाधान बनाना चाहते हैं। जैसा कि हमने देखा टिप्पणियां इस तरह कोड द्वारा कोशिकाओं में जोड़ा जा सकता:apache-poi

public static void addComment(final Workbook workbook, final Sheet sheet, final Cell cell, final Row row, 
     final String comment) { 

    final CreationHelper factory = workbook.getCreationHelper(); 

    final Drawing drawing = sheet.createDrawingPatriarch(); 

    final ClientAnchor anchor = factory.createClientAnchor(); 
    anchor.setCol1(cell.getColumnIndex()); 
    anchor.setCol2(cell.getColumnIndex() + 3); 
    anchor.setRow1(row.getRowNum()); 
    anchor.setRow2(row.getRowNum() + 5); 

    final Comment cellComment = drawing.createCellComment(anchor); 
    final RichTextString richText = factory.createRichTextString(comment); 
    cellComment.setString(richText); 
    cell.setCellComment(cellComment); 
} 

हमने यह भी देखा कि टिप्पणी बॉक्स आकार कॉलम/पंक्तियों सूचकांक का उपयोग कर सेट से कर सकते हैं - यह हमारे लिए मुख्य समस्या है, क्योंकि पहले कॉलम 100px है अगर और दूसरे में 1000px है तो टिप्पणी चौड़ाई 1000px होगी। यहां हमारा प्रश्न है - क्या अपाचे पोई का उपयोग करके कॉलम/पंक्तियों इंडेक्स के बजाय पिक्सेल के साथ टिप्पणी आकार सेट करने की संभावना है? या शायद apache poi के साथ टिप्पणी आकार की गणना करने का कोई तरीका है?

उत्तर

0

ClientAnchor ऑफसेट का समर्थन करता है, कम से कम विशिष्ट कार्यान्वयन कार्य करें:

public XSSFClientAnchor(int dx1, int dy1, int dx2, int dy2, int col1, int row1, int col2, int row2)

DX1 बाईं से ऑफसेट है, DX2 सही से ऑफसेट है, dy1 ऊपर से ऑफसेट है, dy2 से ऑफसेट है नीचे (col1, row1 पंक्ति कॉल शुरू कर रहा है, col2, row2 पंक्ति कॉल समाप्त हो रहा है, गैर समावेशी)।

तो चौड़ाई को कम करने के लिए, बस dx2 पर एक शून्य शून्य मान असाइन करें।

dx1, dx2, dy1 और dy2 अंग्रेजी मेट्रिक इकाइयों (ईएमयू) में हैं। ईएमयू प्रति 9525 पिक्सेल हैं, इसलिए आपको काफी बड़े मूल्यों का उपयोग करना होगा।

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

  • कोई संबंधित समस्या नहीं^_^