本文目錄一覽:
Java怎麼加多排傾斜的水印文字
class ImagePanel2a extends JPanel
{
/**
* 圖像面板類
*/
………………………………
String st = “水印”;
BufferedImage image = null;
public void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g;
if (image != null)
{
g2.drawImage(image, 0, 0, this);
g2.setColor(Color.green);//設置水印顏色
g2.drawString(st, 10, 10);//繪製水印,具體水印繪製方式根據自己的需求修改
}
………
}
……………..
}
/**
*保存添加水印後的圖片
*
*/
……
BufferedImage bi = new BufferedImage(ImagePanel2a.getWidth(), ImagePanel2a.getHeight(), BufferedImage.TYPE_INT_ARGB);
Graphics2D g2d = bi.createGraphics();
ImagePanel2a.paint(g2d);
ImageIO.write(bi, “PNG”, new File(“路徑”));
….
java怎麼給word文檔加水印
可以使用Free Spire.Doc for Java在word文檔中添加文本水印或圖片水印。Free Spire.Doc for Java下載鏈接:網頁鏈接
1.添加文本水印——代碼如下:
import com.spire.doc.*;
import com.spire.doc.documents.WatermarkLayout;
import java.awt.*;
public class WordTextWatermark {
public static void main(String[] args) {
Document document = new Document();
document.loadFromFile(“Sample.docx”);
insertTextWatermark(document.getSections().get(0));
}
private static void insertTextWatermark(Section section) {
TextWatermark txtWatermark = new TextWatermark();
txtWatermark.setText(“內部使用”);
txtWatermark.setFontSize(40);
txtWatermark.setColor(Color.red);
txtWatermark.setLayout(WatermarkLayout.Diagonal);
section.getDocument().setWatermark(txtWatermark);
}
}
2.添加圖片水印——代碼如下:
import com.spire.doc.*;
public class WordImageWatermark {
public static void main(String[] args) throws Exception{
Document document = new Document();
document.loadFromFile(“Sample.docx”);
PictureWatermark picture = new PictureWatermark();
picture.setPicture(“logo.png”);
picture.setScaling(5);
picture.isWashout(false);
document.setWatermark(picture);
document.saveToFile(“out/result2.docx”,FileFormat.Docx )
}
}
如何通過java給word添加多個文字水印
雖然沒做過,但是可以給個思路,輸入流讀取文件,處理文件,輸出流,一個水印都加上了,調一調設置,大概就能出多個了。
java實現在同一張圖片上面繪製多個不同位置的水印
Graphics2D g = buffImg.createGraphics();
// 3、設置對線段的鋸齒狀邊緣處理
g.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
RenderingHints.VALUE_INTERPOLATION_BILINEAR);
g.drawImage(
srcImg.getScaledInstance(srcImg.getWidth(null),
srcImg.getHeight(null), Image.SCALE_SMOOTH), 0, 0, null);
// 5、設置水印文字顏色
g.setColor(color);
// 6、設置水印文字Font
g.setFont(font);
// 7、設置水印文字透明度
g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP,
alpha));
// 8、第一參數-設置的內容,後面兩個參數-文字在圖片上的坐標位置(x,y)
g.drawString(logoText, positionX, PositionY);
// 9、釋放資源
g.dispose();,
你這裡每一次都重新繪製了圖片,把之前繪製的部分覆蓋了
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/287416.html