发明内容
本发明的主要目的在于提供一种图片添加水印的方法和装置,以解决为图片添加水印时的操作比较复杂的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种图片添加水印的方法。根据本发明的图片添加水印的方法包括:获取待处理图片和水印数据;判断是否接收到对待处理图片添加水印的参数;如果没有接收到对待处理图片添加水印的参数,则调用第一默认参数,并按照第一默认参数将水印数据添加到待处理图片上;如果接收到对待处理图片添加水印的参数,则判断接收到的参数是否为对待处理图片进行处理的全部参数,其中,在判断出接收到的参数为对待处理图片进行处理的全部参数时,按照接收到的参数将水印数据添加到待处理图片中;在判断出接收到的参数为对待处理图片进行处理的部分参数时,则为没有接收到的参数调用第二默认参数,利用部分参数和第二默认参数将水印数据添加到待处理图片中。
进一步地,在判断是否接收到对待处理图片添加水印的参数之前,方法还包括:判断水印数据为文字水印数据还是图片水印数据;在水印数据为文字水印数据时,发出设置文字水印的文字属性参数和文字水印的位置参数的第一提示信息,并且接收响应第一提示信息的第一添加参数;在水印数据为图片水印数据时,发出设置图片水印的图片属性参数和图片水印的位置参数的第二提示信息,并且接收响应第二提示信息的第二添加参数。
进一步地,在判断出接收到的参数为对待处理图片进行处理的部分参数时,则为没有接收到的参数调用第二默认参数,利用部分参数和第二默认参数将水印数据添加到待处理图片中包括:获取文字属性参数和文字水印的位置参数的第三默认参数;判断第三默认参数是否被修改;如果第三默认参数被修改,则第三默认参数中被修改的参数作为第一添加参数,第三默认参数中没有被修改的参数作为第二默认参数;以及利用第一添加参数和第二默认参数将文字水印添加到待处理图片中。
进一步地,在判断出接收到的参数为对待处理图片进行处理的部分参数时,则为没有接收到的参数调用第二默认参数,利用部分参数和第二默认参数将水印数据添加到待处理图片中包括:
获取图片属性参数和图片水印的位置参数的第四默认参数;
判断第四默认参数是否被修改;如果第四默认参数被修改,则第四默认参数中被修改的参数作为第二添加参数,第四默认参数中没有被修改的参数作为第二默认参数;以及利用第二添加参数和第二默认参数将图片水印添加到待处理图片中。
进一步地,在接收到对待处理图片添加水印的参数之后,方法还包括:提示是否将对待处理图片添加水印所采用的参数保存为自定义参数模板的指令,其中,采用的参数包括部分参数和第二默认参数,或者全部参数保存为自定义参数模板;如果接收到将采用的参数保存为自定义参数模板的指令,则获取自定义参数模板的保存名称;按照保存名称将采用的参数保存为自定义参数模板,其中,当再次对待处理图片添加水印数据时,调用自定义参数模板以利用自定义参数模板中的参数将水印数据添加到待处理图片中。
进一步地,第一默认参数和第二默认参数为预设参数模板中的全部或者部分参数,其中,预设参数模板为非自定义参数模板。
进一步地,在判断是否接收到对待处理图片添加水印的参数之前,方法还包括:接收对待处理图片添加水印数据后得到的处理后的图片的存储位置信息。
为了实现上述目的,根据本发明的另一方面,提供了一种图片添加水印的装置。根据本发明的图片添加水印的装置包括:第一获取单元,用于获取待处理图片和水印数据;第一判断单元,用于判断是否接收到对所述待处理图片添加水印的参数;添加单元,用于在没有接收到对所述待处理图片添加水印的参数时,调用第一默认参数,并按照所述第一默认参数将所述水印数据添加到所述待处理图片上;第二判断单元,用于在接收到对所述待处理图片添加水印的参数时,判断接收到的参数是否为对所述待处理图片进行处理的全部参数,其中,所述第二判断单元包括第一添加模块,用于在判断出接收到的参数为对所述待处理图片进行处理的全部参数时,按照接收到的参数将所述水印数据添加到所述待处理图片中;第二添加模块,用于在判断出接收到的参数为对所述待处理图片进行处理的部分参数时,则为没有接收到的参数调用第二默认参数,利用所述部分参数和所述第二默认参数将所述水印数据添加到所述待处理图片中。
进一步地,所述装置还包括:第三判断单元,用于在判断是否接收到对所述待处理图片添加水印的参数之前,判断所述水印数据为文字水印数据还是图片水印数据;第一提示单元,用于在所述水印数据为所述文字水印数据时,发出设置文字水印的文字属性参数和所述文字水印的位置参数的第一提示信息,并且接收响应所述第一提示信息的第一添加参数;第二提示单元,用于在所述水印数据为所述图片水印数据时,发出设置图片水印的图片属性参数和所述图片水印的位置参数的第二提示信息,并且接收响应所述第二提示信息的第二添加参数。
进一步地,所述添加单元包括:第一获取模块,用于获取所述文字属性参数和所述文字水印的位置参数的第三默认参数;第一判断模块,用于判断所述第三默认参数是否被修改;第一确定模块,用于在所述第三默认参数被修改时,所述第三默认参数中被修改的参数作为所述第一添加参数,所述第三默认参数中没有被修改的参数作为所述第二默认参数;以及第三添加模块,用于利用所述第一添加参数和所述第二默认参数将所述文字水印添加到所述待处理图片中。
进一步地,所述添加单元包括:第二获取模块,用于获取所述图片属性参数和所述图片水印的位置参数的第四默认参数;第二判断模块,用于判断所述第四默认参数是否被修改;第二确定模块,用于在所述第四默认参数被修改时,将所述第四默认参数中被修改的参数作为所述第二添加参数,所述第四默认参数中没有被修改的参数作为所述第二默认参数;以及第三添加模块,用于利用所述第二添加参数和所述第二默认参数将所述图片水印添加到所述待处理图片中。
进一步地,所述装置还包括:第三提示单元,用于在接收到对所述待处理图片添加水印的参数之后,提示是否将对所述待处理图片添加水印所采用的参数保存为自定义参数模板的指令,其中,所述采用的参数包括所述部分参数和所述第二默认参数,或者所述全部参数保存为自定义参数模板;第二获取单元,用于在接收到将所述采用的参数保存为所述自定义参数模板的指令,则获取所述自定义参数模板的保存名称;保存单元,用于按照所述保存名称将所述采用的参数保存为所述自定义参数模板,其中,当再次对所述待处理图片添加水印数据时,调用所述自定义参数模板以利用所述自定义参数模板中的参数将所述水印数据添加到所述待处理图片中。
进一步地,所述装置还包括:接收单元,用于在判断是否接收到对所述待处理图片添加水印的参数之前,接收对所述待处理图片添加所述水印数据后得到的处理后的图片的存储位置信息。
通过本发明,在对待处理图片添加水印数据时,如果接收到用户的参数,则利用用户提供的参数对待处理图片添加水印数据,如果没有接收到用户的参数,则利用预先设置的第一默认参数将水印数据添加到待处理图片上,其中,当接收到的参数不足以将水印数据添加到待处理图片上时,为没有接收到的参数调用第二参数,利用接收到的参数和第二参数将水印数据添加到待处理图片中,也就是说,将水印数据添加到待处理图片上所需要的参数没有被接收到时,利用默认参数来添加水印,从而在没有接收到参数或者接收到的参数不全时,都能够为待处理图片添加水印,进而避免了对参数进行逐个设置,达到了降低为图片添加水印的操作的复杂度的效果。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供了一种图片添加水印的方法。
图1是根据本发明实施例的图片添加水印的方法的流程图。如图所示,该图片添加水印的方法包括如下步骤:
步骤S102,获取待处理图片和水印数据。
步骤S104,判断是否接收到对待处理图片添加水印的参数。
步骤S106,如果没有接收到对待处理图片添加水印的参数,则调用第一默认参数,并按照第一默认参数将水印数据添加到待处理图片上。
步骤S108,如果接收到对待处理图片添加水印的参数,则判断接收到的参数是否为对待处理图片进行处理的全部参数。
步骤S110在判断出接收到的参数为对待处理图片进行处理的全部参数时,按照接收到的参数将水印数据添加到待处理图片中。
步骤S112,在判断出接收到的参数为对待处理图片进行处理的部分参数时,则为没有接收到的参数调用第二默认参数,利用部分参数和第二默认参数将水印数据添加到待处理图片中。
在对待处理图片添加水印数据时,如果接收到用户的参数,则利用用户提供的参数对待处理图片添加水印数据,如果没有接收到用户的参数,则利用预先设置的第一默认参数将水印数据添加到待处理图片上,其中,当接收到的参数不足以将水印数据添加到待处理图片上时,为没有接收到的参数调用第二参数,利用接收到的参数和第二参数将水印数据添加到待处理图片中,也就是说,将水印数据添加到待处理图片上所需要的参数没有被接收到时,利用默认参数来添加水印,从而在没有接收到参数或者接收到的参数不全时,都能够为待处理图片添加水印,进而避免了对参数进行逐个设置,达到了降低为图片添加水印的操作的复杂度的效果。
在判断是否接收到对待处理图片添加水印的参数之前,接收对待处理图片添加水印数据后得到的处理后的图片的存储位置信息。在对待处理图片添加水印数据之前就接收到存储位置信息,在得到处理后的图片后,可以直接按照存储位置信息保存处理后的图片,从而避免再次发出输入存储位置信息的提示,简化了添加图片水印的操作步骤,同时也提升了用户体验。
具体地,水印数据包括文字水印数据和图片水印数据。文字水印数据就是为图片添加的文字水印的数据,图片水印数据就是为图片添加的图片水印的数据。通过接收水印数据的标识来确定接收到的水印数据为文字水印数据或者图片水印数据。例如,图片水印数据携带有关键词的前缀:Model_PW_自定义,文字水印数据携带有关键词的前缀:Model_TW_自定义。
可选地,在判断是否接收到对待处理图片添加水印的参数之前,该方法还包括:判断水印数据为文字水印数据还是图片水印数据。在水印数据为文字水印数据时,发出设置文字水印的文字属性参数和文字水印的位置参数的第一提示信息,并且接收响应第一提示信息的第一添加参数。在水印数据为图片水印数据时,发出设置图片水印的图片属性参数和图片水印的位置参数的第二提示信息,并且接收响应第二提示信息的第二添加参数。
由于水印数据包括文字水印数据和图片水印数据,而添加文字水印数据和图片水印数据所需要的参数不同,则需要先判断水印数据为文字水印数据还是图片水印数据,并根据判断结果提示设置相应的参数。对于文字水印数据发出设置文字水印的文字属性参数、文字水印的位置参数的第一提示信息,对于图片水印数据发出设置图片水印的图片属性参数、图片水印的位置参数的第二提示信息。
文字水印参数包括:水印文字、文字字体(如黑体、宋体、楷体、微软雅黑等)、文字颜色(可以颜色代码,如蓝色#000off#)。文字水印的位置参数包括:文字水印的九宫格位置(1-9),文字水印的偏移量。其中,文字水印的九宫格位置为待处理图片的九宫格位置,如图2所示。文字水印的偏移量为文字水印偏移九宫格的量,通过第一添加参数中的文字水印的位置参数确定了添加的水印的位置,通过第一添加参数中的文字水印参数确定了添加的水印的样式。
图片水印参数包括:水印图片的地址,水印图片的透明度等。图片水印的位置参数包括:图片水印的九宫格位置和图片水印的偏移量。同样地,通过第二添加参数中的图片水印的位置参数确定了添加的水印的位置,通过第二添加参数中的图片水印参数确定了添加的水印的样式。
以下分别对添加文字水印和图片水印进行说明。
添加文字水印:
可选地,在判断出接收到的参数为对待处理图片进行处理的部分参数时,则为没有接收到的参数调用第二默认参数,利用部分参数和第二默认参数将水印数据添加到待处理图片中包括:获取文字属性参数和文字水印的位置参数的第三默认参数。判断第三默认参数是否被修改。如果第三默认参数被修改,则第三默认参数中被修改的参数作为第一添加参数,第三默认参数中没有被修改的参数作为第二默认参数。以及利用第一添加参数和第二默认参数将文字水印添加到待处理图片中。
在发出设置文字水印的文字属性参数和文字水印的位置参数的第一提示信息之前,并且在接收响应第一提示信息的第一添加参数之后,获取预先设置好的第三默认参数,第三默认参数包括添加文字水印的全部参数,如果接收到参数,可以利用接收到的参数进行文字水印的添加,如果没有接收到参数,则利用第三默认参数也可以添加文字水印。例如,第三默认参数包括水印文字为“保密”、文字字体为黑体、文字颜色为蓝色,文字水印的九宫格位置为5,偏移量为x/50/y/0,则按照第三默认参数将“保密”按照蓝色黑体的样式设置为待处理图片的九宫格为5且偏移量为x/50/y/0的位置。
如果第三默认参数被更改,即接收到第一添加参数,例如,接收到的第一添加参数为文字字体“微软雅黑”,文字颜色为黑色,则将“保密”按照黑色、微软雅黑的样式设置为待处理图片的九宫格为5且偏移量为x/50/y/0的位置。也就是说,在第三默认参数被修改时,被修改的参数为第一添加参数,没有被修改的参数为第二默认参数,利用第一添加参数和第二默认参数将水印文字添加到待处理图片中。
为了便于水印文字的批量添加,将第一添加参数和第二默认参数保存为第一参数模板,在需要在多个待处理图片的相同位置添加相同样式的水印文字时,直接调用第一参数模板,利用第一参数模板的参数添加水印文字,避免逐个设置参数,不仅降低了添加水印操作的复杂度,还能够提高添加文字水印的效率。
添加图片水印:
可选地,在判断出接收到的参数为对待处理图片进行处理的部分参数时,则为没有接收到的参数调用第二默认参数,利用部分参数和第二默认参数将水印数据添加到待处理图片中包括:获取图片属性参数和图片水印的位置参数的第四默认参数。判断第四默认参数是否被修改。如果第四默认参数被修改,则第四默认参数中被修改的参数作为第二添加参数,第四默认参数中没有被修改的参数作为第二默认参数。以及利用第一添加参数和第二默认参数将文字水印添加到待处理图片中。
在发出设置文字水印的文字属性参数和文字水印的位置参数的第一提示信息之前,并且在接收响应第一提示信息的第一添加参数之后,获取预先设置好的第四默认参数,第四默认参数包括添加图片水印的全部参数,如果接收到参数,可以利用接收到的参数进行图片水印的添加,如果没有接收到参数,则利用第四默认参数也可以添加文字水印。例如,第四默认参数包括水印图片为兔子图片、图片的透明度为80%,图片水印的九宫格位置为9,偏移量为x/50/y/0,则按照第四默认参数将兔子图片按照透明度80%的样式设置为待处理图片的九宫格为9且偏移量为x/50/y/0的位置。
如果第四默认参数被更改,即接收到第二添加参数,例如,接收到的第二添加参数为将兔子图片按照透明度80%的样式设置在待处理图片的九宫格为5且偏移量为x/50/y/0的位置。也就是说,在第四默认参数被修改时,被修改的参数为第二添加参数,没有被修改的参数为第二默认参数,利用第二添加参数和第二默认参数将水印图片添加到待处理图片中。
为了便于水印图片的批量添加,可以接收到的参数及调用的参数保存为自定义参数模板,以便于进行相同水印数据的添加时直接调用该自定义参数模板,避免重复设置添加水印数据的参数。具体地,提示是否将对待处理图片添加水印所采用的参数保存为自定义参数模板的指令,其中,采用的参数包括部分参数和第二默认参数,或者全部参数保存为自定义参数模板;如果接收到将采用的参数保存为自定义参数模板的指令,则获取自定义参数模板的保存名称;按照保存名称将采用的参数保存为自定义参数模板,其中,当再次对待处理图片添加水印数据时,调用自定义参数模板以利用自定义参数模板中的参数将水印数据添加到待处理图片中。
如果利用接收到的全部参数将水印数据添加到待处理图片中,则将全部参数保存为自定义参数模板,如果采用部分参数和第二默认参数将水印数据添加到待处理图片中,则将部分参数和第二默认参数保存为自定义参数模板,为自定义模板设置保存名称可以区分多个自定义模板。在需要在多个待处理图片的相同位置添加相同样式的水印图片时,例如,添加公司的logo在多个待处理图片上时,可以直接调用自定义参数模板,利用自定义参数模板的参数添加水印数据,避免为每个待处理图片添加水印数据时逐个设置参数,并且通过保存名称可以迅速查找到需要的自定义参数模板,不仅降低了添加水印操作的复杂度,还能够提高添加文字水印的效率。
例如:对某张图片加图片水印
要求:水印图片地址http://misc.360buyimg.com/lib/img/e/logo-201305.png,透明度:50,位置右下方:9,水印偏移量:x/10/y/10.
提示用户设置Key为:Model_PW_style1,即存储的自定义参数模板的名称为Model_PW_style1。针对自定义参数模板设置的参数为:
url/http://misc.360buyimg.com/lib/img/e/logo-201305.png/transparency/50/location/9/x/10/y/10
其中,url/http://misc.360buyimg.com/lib/img/e/logo-201305.png为水印图片的地址,transparency/50为透明度,location/9/x/10/y/10为九宫格位置为9,偏移量为x/10/y/10。
当需要重复利用该自定义参数模板添加水印数据时,可以直接调用名称为Model_PW_style1的模板进行水印数据的添加。
例如:对某张图片加文字水印
要求:水印文字:好好学习,字体:黑体,颜色:蓝色,九宫格位置:右下角,偏移量:x/10y/10
提示用户设置Key为:Model_TW_style1,即存储的第一参数模板的名称为Model_TW_style1。针对第一参数模板设置的参数为:
text/好好学习/font/黑体/color/#0000ff/location/9/x/10/y/10
其中,text/好好学习为水印文字是“好好学习”,font/黑体为文字字体为黑色,color/#0000ff为文字颜色是蓝色,location/9/x/10/y/10为水印文字的添加位置为九宫格的9,且偏移量为x/10/y/10。
当处理相同的图片或者采用相同的参数时,可以直接调用Model_TW_style1,以直接利用Model_TW_style1中的参数对待处理图片进行处理。
即在获取待处理图片的地址、采用的模板的名称和处理后的图片的保存位置之后,可以自动对待处理图片进行添加水印的处理,并保存处理后的图片到指定位置。这样通过一个配置文件就可以使用简单的参数代替复杂的参数逻辑,简单、快捷的按照要求对图片进行图片和文字水印处理了。尤其对一批图片做相同处理的时候尤为方便只要修改待处理图片的地址和保存处理后的图片的地址就可以了,降低了操作的复杂度,从而提高了添加水印数据的效率。
另外,第一默认参数和第二默认参数为预设参数模板中的全部或者部分参数,其中,预设参数模板为非自定义参数模板。
由于自定义参数模板中包括人为修改过的参数,当调用自定义参数模板中的参数作为第一默认参数或者第二默认参数为待处理图片添加水印数据时,可能导致添加的水印数据错误,因此,第一默认参数和第二默认参数为预设参数模板中的参数,而预设参数模板是预先设置好的模板,而不是自定义参数模板。需要说明的是,这里的第一默认参数和第二默认参数可以是预设参数模板中的全部参数或者部分参数,如果没有接收到参数,可以调用预设参数模板中的全部参数,如果接收到了参数,那么可以从预设参数模板中选择未接收到的参数,配合接收到的参数对待处理图片添加水印数据。
本发明实施例还提供了一种图片添加水印的装置。本发明实施例的图片添加水印的方法可以通过本发明实施例所提供的图片添加水印的装置来执行,本发明实施例的图片添加水印的装置也可以用于执行本发明实施例所提供的图片添加水印的方法。
图3是根据本发明实施例的图片添加水印的装置的示意图。如图所示,该图片添加水印的装置包括:第一获取单元10、第一判断单元20、添加单元30和第二判断单元40。
第一获取单元10用于获取待处理图片和水印数据;
第一判断单元20用于判断是否接收到对待处理图片添加水印的参数;
添加单元30用于在没有接收到对待处理图片添加水印的参数时,调用第一默认参数,并按照第一默认参数将水印数据添加到待处理图片上;
第二判断单元40用于在接收到对待处理图片添加水印的参数时,判断接收到的参数是否为对待处理图片进行处理的全部参数,其中,第二判断单元包括第一添加模块,用于在判断出接收到的参数为对待处理图片进行处理的全部参数时,按照接收到的参数将水印数据添加到待处理图片中;第二添加模块,用于在判断出接收到的参数为对待处理图片进行处理的部分参数时,则为没有接收到的参数调用第二默认参数,利用部分参数和第二默认参数将水印数据添加到待处理图片中。
在对待处理图片添加水印数据时,如果接收到用户的参数,则利用用户提供的参数对待处理图片添加水印数据,如果没有接收到用户的参数,则利用预先设置的第一默认参数将水印数据添加到待处理图片上,其中,当接收到的参数不足以将水印数据添加到待处理图片上时,为没有接收到的参数调用第二参数,利用接收到的参数和第二参数将水印数据添加到待处理图片中,也就是说,将水印数据添加到待处理图片上所需要的参数没有被接收到时,利用默认参数来添加水印,从而在没有接收到参数或者接收到的参数不全时,都能够为待处理图片添加水印,进而避免了对参数进行逐个设置,达到了降低为图片添加水印的操作的复杂度的效果。
具体地,水印数据包括文字水印数据和图片水印数据。文字水印数据就是为图片添加的文字水印的数据,图片水印数据就是为图片添加的图片水印的数据。通过接收水印数据的标识来确定接收到的水印数据为文字水印数据或者图片水印数据。例如,图片水印数据携带有关键词的前缀:Model_PW_自定义,文字水印数据携带有关键词的前缀:Model_TW_自定义。
可选地,第三判断单元,用于在判断是否接收到对待处理图片添加水印的参数之前,判断水印数据为文字水印数据还是图片水印数据;第一提示单元,用于在水印数据为文字水印数据时,发出设置文字水印的文字属性参数和文字水印的位置参数的第一提示信息,并且接收响应第一提示信息的第一添加参数;第二提示单元,用于在水印数据为图片水印数据时,发出设置图片水印的图片属性参数和图片水印的位置参数的第二提示信息,并且接收响应第二提示信息的第二添加参数。
由于水印数据包括文字水印数据和图片水印数据,而添加文字水印数据和图片水印数据所需要的参数不同,则需要先判断水印数据为文字水印数据还是图片水印数据,并根据判断结果提示设置相应的参数。对于文字水印数据发出设置文字水印的文字属性参数、文字水印的位置参数的第一提示信息,对于图片水印数据发出设置图片水印的图片属性参数、图片水印的位置参数的第二提示信息。
文字水印参数包括:水印文字、文字字体(如黑体、宋体、楷体、微软雅黑等)、文字颜色(可以颜色代码,如蓝色#000off#)。文字水印的位置参数包括:文字水印的九宫格位置(1-9),文字水印的偏移量。其中,文字水印的九宫格位置为待处理图片的九宫格位置,如图2所示。文字水印的偏移量为文字水印偏移九宫格的量,通过第一添加参数中的文字水印的位置参数确定了添加的水印的位置,通过第一添加参数中的文字水印参数确定了添加的水印的样式。
图片水印参数包括:水印图片的地址,水印图片的透明度等。图片水印的位置参数包括:图片水印的九宫格位置和图片水印的偏移量。同样地,通过第二添加参数中的图片水印的位置参数确定了添加的水印的位置,通过第二添加参数中的图片水印参数确定了添加的水印的样式。
以下分别对添加文字水印和图片水印进行说明。
添加文字水印:
调用添加单元添加文字水印,其中,添加单元包括:第一获取模块,用于获取文字属性参数和文字水印的位置参数的第三默认参数;第一判断模块,用于判断第三默认参数是否被修改;第一确定模块,用于在第三默认参数被修改时,第三默认参数中被修改的参数作为第一添加参数,第三默认参数中没有被修改的参数作为第二默认参数;以及第三添加模块,用于利用第一添加参数和第二默认参数将文字水印添加到待处理图片中。
在发出设置文字水印的文字属性参数和文字水印的位置参数的第一提示信息之前,并且在接收响应第一提示信息的第一添加参数之后,获取预先设置好的第三默认参数,第三默认参数包括添加文字水印的全部参数,如果接收到参数,可以利用接收到的参数进行文字水印的添加,如果没有接收到参数,则利用第三默认参数也可以添加文字水印。例如,第三默认参数包括水印文字为“保密”、文字字体为黑体、文字颜色为蓝色,文字水印的九宫格位置为5,偏移量为x/50/y/0,则按照第三默认参数将“保密”按照蓝色黑体的样式设置为待处理图片的九宫格为5且偏移量为x/50/y/0的位置。
如果第三默认参数被更改,即接收到第一添加参数,例如,接收到的第一添加参数为文字字体“微软雅黑”,文字颜色为黑色,则将“保密”按照黑色、微软雅黑的样式设置为待处理图片的九宫格为5且偏移量为x/50/y/0的位置。也就是说,在第三默认参数被修改时,被修改的参数为第一添加参数,没有被修改的参数为第二默认参数,利用第一添加参数和第二默认参数将水印文字添加到待处理图片中。
为了便于水印文字的批量添加,将第一添加参数和第二默认参数保存为第一参数模板,在需要在多个待处理图片的相同位置添加相同样式的水印文字时,直接调用第一参数模板,利用第一参数模板的参数添加水印文字,避免逐个设置参数,不仅降低了添加水印操作的复杂度,还能够提高添加文字水印的效率。
添加图片水印:
调用添加单元添加图片水印,其中,添加单元包括:第二获取模块,用于获取图片属性参数和图片水印的位置参数的第四默认参数;第二判断模块,用于判断第四默认参数是否被修改;第二确定模块,用于在第四默认参数被修改时,将第四默认参数中被修改的参数作为第二添加参数,第四默认参数中没有被修改的参数作为第二默认参数;以及第三添加模块,用于利用第一添加参数和第二默认参数将文字水印添加到待处理图片中。
在发出设置文字水印的文字属性参数和文字水印的位置参数的第一提示信息之前,并且在接收响应第一提示信息的第一添加参数之后,获取预先设置好的第四默认参数,第四默认参数包括添加图片水印的全部参数,如果接收到参数,可以利用接收到的参数进行图片水印的添加,如果没有接收到参数,则利用第四默认参数也可以添加文字水印。例如,第四默认参数包括水印图片为兔子图片、图片的透明度为80%,图片水印的九宫格位置为9,偏移量为x/50/y/0,则按照第四默认参数将兔子图片按照透明度80%的样式设置为待处理图片的九宫格为9且偏移量为x/50/y/0的位置。
如果第四默认参数被更改,即接收到第二添加参数,例如,接收到的第二添加参数为将兔子图片按照透明度80%的样式设置在待处理图片的九宫格为5且偏移量为x/50/y/0的位置。也就是说,在第四默认参数被修改时,被修改的参数为第二添加参数,没有被修改的参数为第二默认参数,利用第二添加参数和第二默认参数将水印图片添加到待处理图片中。
为了便于水印图片的批量添加,可以接收到的参数及调用的参数保存为自定义参数模板,以便于进行相同水印数据的添加时直接调用该自定义参数模板,避免重复设置添加水印数据的参数。具体地,该装置还包括:第三提示单元,用于在接收到对待处理图片添加水印的参数之后,提示是否将对待处理图片添加水印所采用的参数保存为自定义参数模板的指令,其中,采用的参数包括部分参数和第二默认参数,或者全部参数保存为自定义参数模板;第二获取单元,用于在接收到将采用的参数保存为自定义参数模板的指令时,获取自定义参数模板的保存名称;保存单元,用于按照保存名称将采用的参数保存为自定义参数模板,其中,当再次对待处理图片添加水印数据时,调用自定义参数模板以利用自定义参数模板中的参数将水印数据添加到待处理图片中。
如果利用接收到的全部参数将水印数据添加到待处理图片中,则将全部参数保存为自定义参数模板,如果采用部分参数和第二默认参数将水印数据添加到待处理图片中,则将部分参数和第二默认参数保存为自定义参数模板,为自定义模板设置保存名称可以区分多个自定义模板。在需要在多个待处理图片的相同位置添加相同样式的水印图片时,例如,添加公司的logo在多个待处理图片上时,直接调用自定义参数模板,利用自定义参数模板的参数添加水印数据,避免为每个待处理图片添加水印数据时逐个设置参数,不仅降低了添加水印操作的复杂度,还能够提高添加文字水印的效率。
例如:对某张图片加图片水印
要求:水印图片地址http://misc.360buyimg.com/lib/img/e/logo-201305.png,透明度:50,位置右下方:9,水印偏移量:x/10/y/10.
提示用户设置Key为:Model_PW_style1,即存储的自定义参数模板的名称为Model_PW_style1。针对自定义参数模板设置的参数为:
url/http://misc.360buyimg.com/lib/img/e/logo-201305.png/transparency/50/location/9/x/10/y/10
其中,url/http://misc.360buyimg.com/lib/img/e/logo-201305.png为水印图片的地址,transparency/50为透明度,location/9/x/10/y/10为九宫格位置为9,偏移量为x/10/y/10。
当需要重复利用该自定义参数模板添加水印数据时,可以直接调用名称为Model_PW_style1的模板进行水印数据的添加。
例如:对某张图片加文字水印
要求:水印文字:好好学习,字体:黑体,颜色:蓝色,九宫格位置:右下角,偏移量:x/10y/10
提示用户设置Key为:Model_TW_style1,即存储的第一参数模板的名称为Model_TW_style1。针对第一参数模板设置的参数为:
text/好好学习/font/黑体/color/#0000ff/location/9/x/10/y/10
其中,text/好好学习为水印文字是“好好学习”,font/黑体为文字字体为黑色,color/#0000ff为文字颜色是蓝色,location/9/x/10/y/10为水印文字的添加位置为九宫格的9,且偏移量为x/10/y/10。
当处理相同的图片或者采用相同的参数时,可以直接调用Model_TW_style1,以直接利用Model_TW_style1中的参数对待处理图片进行处理。
即在获取待处理图片的地址、采用的模板的名称和处理后的图片的保存位置之后,可以自动对待处理图片进行添加水印的处理,并保存处理后的图片到指定位置。这样通过一个配置文件就可以使用简单的参数代替复杂的参数逻辑,简单、快捷的按照要求对图片进行图片和文字水印处理了。尤其对一批图片做相同处理的时候尤为方便只要修改待处理图片的地址和保存处理后的图片的地址就可以了,降低了操作的复杂度,从而提高了添加水印数据的效率。
在上述实施例中,装置还包括:接收单元,用于在判断是否接收到对待处理图片添加水印的参数之前,接收对待处理图片添加水印数据后得到的处理后的图片的存储位置信息。
提前设置好处理后的图片的存储位置信息,在对待处理图片添加水印后可以方便的存储处理后的图片。对待处理图片添加水印数据之前就接收到存储位置信息,在得到处理后的图片后,可以直接按照存储位置信息保存处理后的图片,从而避免再次发出输入存储位置信息的提示,简化了添加图片水印的操作步骤,同时也提升了用户体验。
另外,第一默认参数和第二默认参数为预设参数模板中的全部或者部分参数,其中,预设参数模板为非自定义参数模板。
由于自定义参数模板中包括人为修改过的参数,当调用自定义参数模板中的参数作为第一默认参数或者第二默认参数为待处理图片添加水印数据时,可能导致添加的水印数据错误,因此,第一默认参数和第二默认参数为预设参数模板中的参数,而预设参数模板是预先设置好的模板,而不是自定义参数模板。需要说明的是,这里的第一默认参数和第二默认参数可以是预设参数模板中的全部参数或者部分参数,如果没有接收到参数,可以调用预设参数模板中的全部参数,如果接收到了参数,那么可以从预设参数模板中选择未接收到的参数,配合接收到的参数对待处理图片添加水印数据。
本实施例所提供的图片添加水印方法可以作为单独的软件运行,也可以作为插件设置在图片处理的软件中。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。