tif加水印java_java - TIFF图像上的水印 - 堆栈内存溢出

这篇博客探讨了在TIFF图像上添加水印时可能遇到的问题,指出TIFF格式的灵活性可能导致某些情况无法正常添加水印。文章提供了一个Java代码示例,通过创建RGB内存映像并绘制原始图像和水印来解决这个问题。代码包括读取TIFF文件,设置水印文字、颜色、位置,然后保存带有水印的新图像。
摘要由CSDN通过智能技术生成

正如问题评论中已经说明的那样,问题可能不是您的代码“错误”或者TIFF格式有任何特定的东西阻止了水印。

但是,TIFF是一种非常灵活的格式,可能包含RGB,CMYK,“深色”或浮点样本,以及简单的索引或双层图像数据。 我怀疑问题与后者有关(如果是这样,你会遇到与某些调色板PNG相同的问题),因为在这些情况下可能没有可以代表透明黑色的颜色。 但如果不进一步澄清,就不可能肯定地说。

通过创建完整的RGB内存映像,将原始图像绘制到该图像然后添加水印,可以轻松解决此类问题。 但这会大大改变输出文件和大小,我不知道这是否适用于您的用例。

无论如何,这是一个完整的工作示例,基于上面的代码和可验证的输入/输出文件:

import java.awt.AlphaComposite;

import java.awt.Color;

import java.awt.Font;

import java.awt.FontMetrics;

import java.awt.Graphics2D;

import java.awt.geom.Rectangle2D;

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

import javax.imageio.ImageIO;

public class WatermarkTest {

private static String watermarkText = "WaterMark!";

public static void main(St

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值