BMP文件添加自定义的水印(C语言)

BMP文件添加自定义的水印(C语言),第1张

用C语言在已有的bmp图片上添加文字生成新的图片方法是:

1、首先要了解位图文件的结构和熟悉C语言的画图函数等基层知识,这些知识可以在网上找到自学;

2、BMP(全称Bitmap)是Windows *** 作系统中的标准图像文件格式,可以分成两类:设备相关位图(DDB)和设备无关位图(DIB),它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BMP文件所占用的空间很大,BMP文件存储数据时,图像的扫描方式是按从左到右、从下到上的顺序,由于BMP文件格式是Windows环境中交换与图有关的数据的一种标准,因此在Windows环境中运行的图形图像软件都支持BMP图像格式,图像中每个像素的颜色值都保存在BMP文件中。

3、C语言是一种计算机程序设计语言,它既有高级语言的特点,又具有汇编语言的特点,它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序,因此,它的应用范围广泛,

用C语言显示BMP图片,最直接的方法就是先将每个像素的颜色值提取出来,再用C语言的画图函数画。

对文档添加水印可以有效声明和保护文档,是保护重要文件的方式之一。在PPT文档中同样也可以设置水印,包括文本水印和图片水印,本文将讲述如何通过Spire.Presentation for .NET来对PPT添加水印,下载安装Free Spire.Presentationfor .NET后,添加引用dll文件,参考下面的 *** 作步骤,完成水印添加。

1.添加文本水印

步骤一:初始化Presentation类实例,并加载文档

Presentation ppt = new Presentation()

ppt.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.pptx", FileFormat.Pptx2010)

步骤二:初始化一个Font类实例,并实例化字体格式

Font stringFont = new Font("Arial", 90)

Size size = TextRenderer.MeasureText("内部资料", stringFont)

步骤三:绘制一个shape并指定大小、填充颜色、边框颜色和旋转角度

RectangleF rect = new RectangleF((ppt.SlideSize.Size.Width - size.Width) / 2, (ppt.SlideSize.Size.Height - size.Height) / 2, size.Width, size.Height)

IAutoShape shape = ppt.Slides[0].Shapes.AppendShape(Spire.Presentation.ShapeType.Rectangle, rect)

shape.Fill.FillType = FillFormatType.None

shape.ShapeStyle.LineColor.Color = Color.White

shape.Rotation = -45

步骤四:设定形状属性为保护属性

shape.Locking.SelectionProtection = true

shape.Line.FillType = FillFormatType.None

步骤五:设置文本大小、颜色

shape.TextFrame.Text = "内部资料"

TextRange textRange = shape.TextFrame.TextRange

textRange.Fill.FillType = Spire.Presentation.Drawing.FillFormatType.Solid

textRange.Fill.SolidColor.Color = Color.FromArgb(120, Color.Gray)

textRange.FontHeight = 45

步骤六:保存文档

ppt.SaveToFile("TextWatermark.pptx", FileFormat.Pptx2010)

完成以上代码步骤后,调试运行项目程序,生成文件(可在该项目文件中bin>Debug中查看),如下图所示:

引用spire.doc.dll, 使用下面的代码

添加图片水印:

using Spire.Doc

using System.Drawing

namespace Image_Watermark

{

    class Program

    {

        static void Main(string[] args)

        {

            //加载Word文档

            Document document = new Document()

            document.LoadFromFile("Test.docx")

            //新建一个图片水印对象并添加为待设置水印的图片

            PictureWatermark picture = new PictureWatermark()

            picture.Picture = System.Drawing.Image.FromFile("logo.png")

            //缩放图片大小

            picture.Scaling = 10

            //将图片设置为文档的水印

            document.Watermark = picture

            //保存文档

            document.SaveToFile("图片水印.docx", FileFormat.Docx2010)

            document.Close()

        }

    }

}

添加文字水印:

using Spire.Doc

using System.Drawing

using Spire.Doc.Documents

namespace Text_Watermark

{

    class Program

    {

        static void Main(string[] args)

        {

            //加载Word文档    

            Document document = new Document()

            document.LoadFromFile("Test.docx")

            //新建一个文本水印对象,并添加待设置为水印的文本

            TextWatermark txtWatermark = new TextWatermark()

            txtWatermark.Text = "内部使用"

            //设置文本的字体大小,颜色及文本的排列方式

            txtWatermark.FontSize = 45

            txtWatermark.Color = Color.Green

            txtWatermark.Layout = WatermarkLayout.Diagonal

            //将该文本设置为word文档的水印

            document.Watermark = txtWatermark

            //保存文本

            document.SaveToFile("文本水印.docx", FileFormat.Docx2010)

            document.Close()

        }

    }

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11905817.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存