Java Excel에 워터마크 설정
아래 준비
1.E-iceblue 공식 사이트에서 Free Spire. XLS for Java l 무료 버전을 다운로드하십시오.
2. IDE를 시작하여 새 프로젝트를 만든 다음 설치된 파일에 있던 적절한 Spire.XLS.jar를 참조에 추가합니다.
import com.spire.xls.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import static java.awt.image.BufferedImage.TYPE_INT_ARGB;
public class ExcelWatermark {
public static void main(String[] args) {
//Workbook objectを作成します。
Workbook workbook = new Workbook();
workbook.loadFromFile("Sample.xlsx");
//テキストを設定します。
Font font = new Font("Arial", Font.PLAIN, 40);
String watermark = "Draft Version";
for (Worksheet sheet : (Iterable) workbook.getWorksheets()) {
//Call DrawText() method to insert the image
BufferedImage imgWtrmrk = drawText(watermark, font, Color.pink, Color.white, sheet.getPageSetup().getPageHeight(), sheet.getPageSetup().getPageWidth());
//イメージをヘッダーに設定します。
sheet.getPageSetup().setLeftHeaderImage(imgWtrmrk);
sheet.getPageSetup().setLeftHeader("&G");
// ビューモードをLayoutに設定します。
sheet.setViewMode(ViewMode.Layout);
}
//保存します。
workbook.saveToFile("Watermark.xlsx", ExcelVersion.Version2010);
}
private static BufferedImage drawText (String text, Font font, Color textColor, Color backColor,double height, double width)
{
//イメージの幅と長さを設定します。
BufferedImage img = new BufferedImage((int) width, (int) height, TYPE_INT_ARGB);
Graphics2D loGraphic = img.createGraphics();
//フォントを設定します。
FontMetrics loFontMetrics = loGraphic.getFontMetrics(font);
int liStrWidth = loFontMetrics.stringWidth(text);
int liStrHeight = loFontMetrics.getHeight();
//テキストのフォントを設定します。
loGraphic.setColor(backColor);
loGraphic.fillRect(0, 0, (int) width, (int) height);
loGraphic.translate(((int) width - liStrWidth) / 2, ((int) height - liStrHeight) / 2);
loGraphic.rotate(Math.toRadians(-45));
loGraphic.translate(-((int) width - liStrWidth) / 2, -((int) height - liStrHeight) / 2);
loGraphic.setFont(font);
loGraphic.setColor(textColor);
loGraphic.drawString(text, ((int) width - liStrWidth) / 2, ((int) height - liStrHeight) / 2);
loGraphic.dispose();
return img;
}
}
실행 결과
Reference
이 문제에 관하여(Java Excel에 워터마크 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/iceblue/items/d094514962af128b2188텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)