无涯教程-POI Excel - 形状样式

28 阅读1分钟

默认情况下,形状很少。但是,可以对形状应用不同的样式。目前可以完成的事情有:

  • 更改填充颜色。
  • 制作没有填充颜色的形状。
  • 更改线条的粗细。
  • 更改线条样式。例如:虚线,点缀。
  • 更改线条颜色。

让无涯教程看一个示例,其中形状的外线是点缀的。

Apache POI样式形状示例

package poiexample;
import java.io.FileOutputStream;
import java.io.OutputStream;
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
import org.apache.poi.hssf.usermodel.HSSFPatriarch;
import org.apache.poi.hssf.usermodel.HSSFShape;
import org.apache.poi.hssf.usermodel.HSSFSimpleShape;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
public class ShapeStyleExample {
	public static void main(String[] args) {
		try (OutputStream fileOut = new FileOutputStream("Learnfk.xls")) {
			Workbook wb = new HSSFWorkbook();
			Sheet sheet = wb.createSheet("Sheet");
			Row row = sheet.createRow(4);//创建行
			Cell cell = row.createCell(1);//创建一个单元格
			cell.setCellValue("Hello, Javaipoint!");
		</span><span class="typ">HSSFPatriarch</span><span class="pln"> patriarch </span><span class="pun">=</span><span class="pln"> </span><span class="pun">(</span><span class="typ">HSSFPatriarch</span><span class="pun">)</span><span class="pln"> sheet</span><span class="pun">.</span><span class="pln">createDrawingPatriarch</span><span class="pun">();</span><span class="pln">
		</span><span class="typ">HSSFClientAnchor</span><span class="pln"> a </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">HSSFClientAnchor</span><span class="pun">(</span><span class="pln"> </span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="lit">1023</span><span class="pun">,</span><span class="pln"> </span><span class="lit">255</span><span class="pun">,</span><span class="pln"> </span><span class="pun">(</span><span class="kwd">short</span><span class="pun">)</span><span class="pln"> </span><span class="lit">1</span><span class="pun">,</span><span class="pln"> </span><span class="lit">0</span><span class="pun">,</span><span class="pln"> </span><span class="pun">(</span><span class="kwd">short</span><span class="pun">)</span><span class="pln"> </span><span class="lit">1</span><span class="pun">,</span><span class="pln"> </span><span class="lit">0</span><span class="pln"> </span><span class="pun">);</span><span class="pln">
		</span><span class="typ">HSSFSimpleShape</span><span class="pln"> s </span><span class="pun">=</span><span class="pln"> patriarch</span><span class="pun">.</span><span class="pln">createSimpleShape</span><span class="pun">(</span><span class="pln">a</span><span class="pun">);</span><span class="pln">
	    s</span><span class="pun">.</span><span class="pln">setShapeType</span><span class="pun">(</span><span class="typ">HSSFSimpleShape</span><span class="pun">.</span><span class="pln">OBJECT_TYPE_OVAL</span><span class="pun">);</span><span class="pln">
	    s</span><span class="pun">.</span><span class="pln">setLineStyleColor</span><span class="pun">(</span><span class="lit">10</span><span class="pun">,</span><span class="lit">10</span><span class="pun">,</span><span class="lit">10</span><span class="pun">);</span><span class="pln">
	    </span><span class="com">//s.setFillColor(90,10,200);</span><span class="pln">
	    s</span><span class="pun">.</span><span class="pln">setLineWidth</span><span class="pun">(</span><span class="typ">HSSFShape</span><span class="pun">.</span><span class="pln">LINEWIDTH_ONE_PT </span><span class="pun">*</span><span class="pln"> </span><span class="lit">3</span><span class="pun">);</span><span class="pln">
	    s</span><span class="pun">.</span><span class="pln">setLineStyle</span><span class="pun">(</span><span class="typ">HSSFShape</span><span class="pun">.</span><span class="pln">LINESTYLE_DOTSYS</span><span class="pun">);</span><span class="pln">
	    wb</span><span class="pun">.</span><span class="pln">write</span><span class="pun">(</span><span class="pln">fileOut</span><span class="pun">);</span><span class="pln">
	</span><span class="pun">}</span><span class="kwd">catch</span><span class="pun">(</span><span class="typ">Exception</span><span class="pln"> e</span><span class="pun">)</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
		</span><span class="typ">System</span><span class="pun">.</span><span class="kwd">out</span><span class="pun">.</span><span class="pln">println</span><span class="pun">(</span><span class="pln">e</span><span class="pun">.</span><span class="pln">getMessage</span><span class="pun">());</span><span class="pln">
	</span><span class="pun">}</span><span class="pln">	
</span><span class="pun">}</span><span class="pln">

}

输出:

Apache POI Styling Shapes

参考链接

www.learnfk.com/apache-poi-…