A watermark library for text.
Project description
TextWatermark
TextWatermark is a library for inserting watermarks into text
Please take a look at our documentation for how to install and use pip:
Requirements
Tested on Python >= 3.10
Installation
Using Pip
$ pip install textwatermark
From Code
git clone https://github.com/JDArmy/TextWatermark.git
cd TextWatermark
pip install .
# or in editable mode
pip install --editable .
Usage
CMD Line
Insert watermark into text
$ textwatermark -v insert -f './tests/text/number.txt' -m ALPHA_NUMERICAL -t HOMOGRAPH_NUMBERS -x 999 -w 123
Ӏ2𝟑𝟒𝟓Ⳓ𝟟890
Retrieve the watermark from the text
$ textwatermark -v retrieve -f out.txt -p '{"tpl_type": "HOMOGRAPH_NUMBERS", "confusables_chars": [], "confusables_chars_key": "", "wm_base": 7, "method": 1, "wm_mode": 5, "wm_len": 7, "wm_loop": false, "start_at": 0, "version": "0.1.0"}'
The retrieved watermark is: 123
Coding
'''Sample Example'''
import os
from textwatermark.defines import WMMode
from textwatermark.main import TextWatermark
from textwatermark.template_type import WMTemplateType
# 1.Init TextWatermark instance
wm_mode = WMMode.REAL_NUMBER
wm = TextWatermark(wm_mode=wm_mode)
# 2.Choose a watermark template
wm.set_tpl_type(tpl_type=WMTemplateType.HOMOGRAPH_NUMBERS)
# 3.Set the maximum value of the watermark string
wm_max = '9'*9
wm.set_wm_max(wm_max=wm_max)
# 4.Set the text to be watermarked
wm.set_text_file(path=os.path.abspath('../tests/text/1.txt'))
# 5.Insert watermark string to text
wm_str = '123456789'
wm_text = wm.insert_watermark(wm_str=wm_str)
print(wm_text)
##############################################################
# Save the parameters to retrieve the watermark
params = wm.export_params()
# retrieve the watermark
wm_out_str = TextWatermark.retrieve_watermark(wm_text=wm_text, params=params)
assert wm_out_str == wm_str
More
See: Usage
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
textwatermark-0.1.1.tar.gz
(31.7 kB
view details)
Built Distribution
File details
Details for the file textwatermark-0.1.1.tar.gz
.
File metadata
- Download URL: textwatermark-0.1.1.tar.gz
- Upload date:
- Size: 31.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f92f26c0850c2aa6b3162a0f26743433cc3597403debf2e43a9f9069c7ba66d4 |
|
MD5 | 8a75838e91924c1c9e26a4d3e173a01e |
|
BLAKE2b-256 | ecaa1cbff0f4c8d26ccbb3ebc7d58fb2bf83992f2ab8e81fbcc37ae602667cd4 |
File details
Details for the file textwatermark-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: textwatermark-0.1.1-py3-none-any.whl
- Upload date:
- Size: 38.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec24493c665624b22ca4024ffcd2fdcdaacd95edf4e114b96e75b1adeb42141f |
|
MD5 | 1d762624474b304fb9afec0127b2ea8e |
|
BLAKE2b-256 | 12ec90ae62ffa67e0e81e204915a2b6babf818dbe052b236abae99f3bdac037a |