Java 更改Apache POI中单元格注释的大小
我使用以下java代码在ApachePOI中成功生成单元格注释Java 更改Apache POI中单元格注释的大小,java,apache-poi,Java,Apache Poi,我使用以下java代码在ApachePOI中成功生成单元格注释 public static void setComment(String text, Cell cell) { final Map<Sheet, HSSFPatriarch> drawingPatriarches = new HashMap<Sheet, HSSFPatriarch>(); CreationHelper createHelper = cell.
public static void setComment(String text, Cell cell) {
final Map<Sheet, HSSFPatriarch> drawingPatriarches = new HashMap<Sheet, HSSFPatriarch>();
CreationHelper createHelper = cell.getSheet().getWorkbook().getCreationHelper();
HSSFSheet sheet = (HSSFSheet) cell.getSheet();
HSSFPatriarch drawingPatriarch = drawingPatriarches.get(sheet);
if (drawingPatriarch == null) {
drawingPatriarch = sheet.createDrawingPatriarch();
drawingPatriarches.put(sheet, drawingPatriarch);
}
Comment comment = drawingPatriarch.createComment(new HSSFClientAnchor(100, 100, 100, 100, (short)1, 1, (short) 10, 5));
comment.setString(createHelper.createRichTextString(text));
cell.setCellComment(comment);
}
publicstaticvoidsetcomment(字符串文本,单元格){
最终地图绘制父权制=新HashMap();
CreationHelper createHelper=cell.getSheet().getWorkbook().getCreationHelper();
HSSFSheet sheet=(HSSFSheet)单元格。getSheet();
HSSFPatriarch DrawingParachers=DrawingParachers.get(表格);
if(drawingparcher==null){
DrawingParator=sheet.createDrawingParator();
绘图家长。放置(图纸,绘图家长);
}
Comment Comment=drawingparchir.createComment(新的HSSFClientAnchor(100100100100,(短)1,1,(短)10,5));
comment.setString(createHelper.createRichTextString(text));
cell.setcellcoment(comment);
}
我是从你那里抄来的。谢谢你,埃里克
如何将注释的大小更改为300像素宽和100像素高
谢谢 您可以为任何单元格指定列宽,如下所示:
sheet.setColumnWidth(0, 1000);
您可以按如下方式为任何单元格指定列宽:
sheet.setColumnWidth(0, 1000);
据我所知,这不是一个简单的方法,因为注释锚定点是由单元格(列、行参数)和偏移量(dx、dy参数)指定的。因此,您需要计算单元格的宽度/高度,以计算出第二个单元格坐标,然后计算到该单元格中的偏移量,以使其精确到您想要的像素大小。从我所知,这不是一种简单的方法,因为注释定位点由单元格(列、行参数)和偏移量(dx、dy参数)指定。因此,您需要计算单元格的宽度/高度,以计算出第二个单元格坐标,然后计算到该单元格中的偏移量,使其精确到您想要的像素大小。 只需更改setCol2和setRow2的值。
只需更改setCol2和setRow2的值。谢谢您的回复。问题不在于如何设置列宽,而在于如何更改弹出评论的大小。gordon说到评论,没有列宽谢谢你的回复。问题不在于如何设置列宽,而在于如何更改弹出注释的大小。gordon说到注释,没有列宽