Added ru and zh readme

This commit is contained in:
Andrew
2026-05-29 00:59:15 +03:00
parent a7fdf6011b
commit d9ed96f1ac
3 changed files with 453 additions and 0 deletions
+6
View File
@@ -1,4 +1,5 @@
# Watermark.Net
[![.NET](https://github.com/Geckon01/Watermark.Net/actions/workflows/dotnet.yml/badge.svg)](https://github.com/Geckon01/Watermark.Net/actions/workflows/dotnet.yml)
![NuGet Version](https://img.shields.io/nuget/v/Watermark.Net)
![NuGet Downloads](https://img.shields.io/nuget/dt/Watermark.Net?link=https%3A%2F%2Fwww.nuget.org%2Fpackages%2FWatermark.Net%2F)
@@ -6,6 +7,11 @@
![GitHub last commit](https://img.shields.io/github/last-commit/Geckon01/Watermark.Net?display_timestamp=author)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/e6340e249ad743bc99c1745aaa0a9838)](https://app.codacy.com/gh/Geckon01/Watermark.Net/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
### Other languages
- 🇺🇸 [English](docs/README.md)
- 🇷🇺 [Русский](docs/README.ru.md)
- 🇨🇳 [简体中文](docs/README.zh-CN.md)
**Watermark.Net** is an open-source .NET library for programmatically adding text and image watermarks to images. Built on [SixLabors.ImageSharp](https://github.com/SixLabors/ImageSharp), it provides a clean, extensible API for all your watermarking needs — from a single file to entire directory batches. Whether you need to protect copyrights, brand your media, or mark drafts, Watermark.Net makes image watermarking in C# simple and efficient.
### Features
+313
View File
@@ -0,0 +1,313 @@
# Watermark.Net
[![.NET](https://github.com/Geckon01/Watermark.Net/actions/workflows/dotnet.yml/badge.svg)](https://github.com/Geckon01/Watermark.Net/actions/workflows/dotnet.yml)
![NuGet Version](https://img.shields.io/nuget/v/Watermark.Net)
![NuGet Downloads](https://img.shields.io/nuget/dt/Watermark.Net?link=https%3A%2F%2Fwww.nuget.org%2Fpackages%2FWatermark.Net%2F)
![Lecense](https://img.shields.io/badge/license-MIT-green)
![GitHub last commit](https://img.shields.io/github/last-commit/Geckon01/Watermark.Net?display_timestamp=author)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/e6340e249ad743bc99c1745aaa0a9838)](https://app.codacy.com/gh/Geckon01/Watermark.Net/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
**Watermark.Net** — современная кроссплатформенная библиотека для .NET, предназначенная для добавления текстовых и графических watermark’ов к изображениям с использованием C#.
Библиотека построена на базе SixLabors.ImageSharp и предоставляет чистый и расширяемый API для:
- добавления watermark’ов к изображениям в .NET
- пакетной обработки изображений
- защиты авторских прав
- наложения логотипов
- автоматизации брендинга
- генерации draft/staging изображений
Подходит для ASP.NET приложений, media pipeline’ов, SaaS-платформ, desktop-приложений, automation scripts и backend image processing сервисов.
---
# Почему Watermark.Net?
- ✅ Современная архитектура на .NET 8+
- ✅ Полная кроссплатформенность (Windows, Linux, macOS)
- ✅ Основана на ImageSharp
- ✅ Простой и чистый API
- ✅ Пакетная обработка директорий
- ✅ Поддержка текстовых и графических watermark’ов
- ✅ Режим tiled/repeated watermark
- ✅ Поддержка Dependency Injection
- ✅ Open-source и лицензия MIT
---
# Возможности
## Текстовые watermark’и
Поддерживается:
- пользовательские шрифты
- настройка размера текста
- поворот
- прозрачность
- отступы
- система позиционирования 3x3
- tiled/pattern режим
## Графические watermark’и
Наложение логотипов и PNG:
- поддержка прозрачности PNG
- настройка opacity
- масштабирование
- позиционирование
- tiled/repeated режим
## Пакетная обработка
Обработка целых папок изображений одним вызовом метода.
Поддерживаемые форматы:
- JPEG
- PNG
- BMP
- GIF
---
# Установка
Установка через NuGet:
```bash
dotnet add package Watermark.Net
```
Или через Package Manager:
```powershell
Install-Package Watermark.Net
```
Требования:
- .NET 8 или новее
---
# Быстрый старт
## Добавление текстового watermark
```csharp
using SixLabors.Fonts;
using SixLabors.ImageSharp;
using WatermarkNet.Core;
using WatermarkNet.Enums;
using WatermarkNet.Models.Definitions;
var pipeline = new WatermarkPipeline(new FileManager(), new ImageRenderer());
var watermark = new TextWatermark
{
Text = "CONFIDENTIAL",
Font = SystemFonts.CreateFont("Arial", 36),
Layout =
{
Position = ImagePosition.BottomRight,
Scale = 0.5f
},
Style =
{
Color = Color.White,
Opacity = 0.8f
}
};
ResultImage result = pipeline.ProcessImage(
"input.jpg",
"output",
watermark
);
Console.WriteLine($"Saved to: {result.Path}");
```
---
## Добавление графического watermark
```csharp
using SixLabors.ImageSharp;
using WatermarkNet.Core;
using WatermarkNet.Enums;
using WatermarkNet.Models.Definitions;
var pipeline = new WatermarkPipeline(new FileManager(), new ImageRenderer());
var watermark = new ImageWatermark
{
ImagePath = "logo.png",
Layout =
{
Position = ImagePosition.Center,
Scale = 0.3f
},
Style =
{
Opacity = 0.7f,
Pave = true
}
};
List<ResultImage> results = pipeline.ProcessDirectory(
"images",
"output",
watermark
);
Console.WriteLine($"Processed {results.Count} images");
```
---
# Типичные сценарии использования
Watermark.Net часто используется для:
- защиты фотографий watermark’ами
- брендирования изображений интернет-магазинов
- SaaS image pipeline’ов
- маркировки AI-generated изображений
- CMS систем
- автоматизации соцсетей
- backend image processing сервисов
- ASP.NET image service’ов
- массовой обработки изображений
- внутренних документов и черновиков
---
# Архитектура
Watermark.Net использует lightweight pipeline architecture с чётким разделением ответственности.
```text
┌──────────────────────────────────────┐
│ WatermarkPipeline │
│ Основной orchestration layer │
├──────────────────────────────────────┤
│ IFileManager / FileManager │
│ Абстракция файловой системы │
├──────────────────────────────────────┤
│ ImageRenderer │
│ Pure rendering engine │
└──────────────────────────────────────┘
```
---
# Типы watermark’ов
| Тип | Описание |
|---|---|
| `TextWatermark` | Конфигурация текстового watermark |
| `ImageWatermark` | Конфигурация watermark-изображения |
| `ResultImage` | Модель результата обработки |
| `IWatermarkDefinition` | Базовая абстракция watermark |
---
# Система позиционирования
Поддерживается 9 встроенных позиций:
- TopLeft
- TopCenter
- TopRight
- CenterLeft
- Center
- CenterRight
- BottomLeft
- BottomCenter
- BottomRight
---
# Продвинутое использование
## Tiled / Pave режим
Повторяет watermark по всей поверхности изображения:
```csharp
var watermark = new TextWatermark
{
Text = "DRAFT",
Font = SystemFonts.CreateFont("Arial", 36),
Style =
{
Color = Color.Red,
Pave = true
},
Layout =
{
Scale = 0.3f
}
};
```
---
## Rotation & Padding
```csharp
var watermark = new TextWatermark
{
Text = "CONFIDENTIAL",
Font = SystemFonts.CreateFont("Arial", 24),
Layout =
{
Position = ImagePosition.TopLeft,
RotateAngle = 45,
Padding = 20
}
};
```
---
## Dependency Injection
```csharp
services.AddSingleton<IFileManager, FileManager>();
services.AddSingleton<ImageRenderer>();
services.AddTransient<WatermarkPipeline>();
```
---
# Contributing
Pull Request’ы и contributions приветствуются.
Для участия:
1. Сделайте fork репозитория
2. Создайте feature branch
3. Добавьте тесты
4. Запустите test suite
5. Откройте Pull Request
---
# License
Проект распространяется под лицензией MIT.
+134
View File
@@ -0,0 +1,134 @@
# Watermark.Net
[![.NET](https://github.com/Geckon01/Watermark.Net/actions/workflows/dotnet.yml/badge.svg)](https://github.com/Geckon01/Watermark.Net/actions/workflows/dotnet.yml)
![NuGet Version](https://img.shields.io/nuget/v/Watermark.Net)
![NuGet Downloads](https://img.shields.io/nuget/dt/Watermark.Net?link=https%3A%2F%2Fwww.nuget.org%2Fpackages%2FWatermark.Net%2F)
![Lecense](https://img.shields.io/badge/license-MIT-green)
![GitHub last commit](https://img.shields.io/github/last-commit/Geckon01/Watermark.Net?display_timestamp=author)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/e6340e249ad743bc99c1745aaa0a9838)](https://app.codacy.com/gh/Geckon01/Watermark.Net/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
**Watermark.Net** 是一个现代化、跨平台的 .NET 图像水印库,可使用 C# 为图片和图形添加文字或图片水印。
该项目基于 SixLabors.ImageSharp 构建,并提供简洁且可扩展的 API,适用于:
- .NET 图像水印处理
- 批量图片处理
- 图片版权保护
- Logo 覆盖
- 品牌自动化
- 草稿/测试图片生成
适用于 ASP.NET 应用、媒体处理流水线、SaaS 平台、桌面工具、自动化脚本以及后端图像处理服务。
---
# 为什么选择 Watermark.Net
- ✅ 基于现代 .NET 8+ 架构
- ✅ 完全跨平台(Windows / Linux / macOS
- ✅ 基于 ImageSharp
- ✅ 简洁易用的 API
- ✅ 支持批量目录处理
- ✅ 支持文字与图片水印
- ✅ 支持平铺/重复水印模式
- ✅ 支持 Dependency Injection
- ✅ 开源 MIT 协议
---
# 功能特性
## 文字水印
支持:
- 自定义字体
- 字体大小
- 旋转
- 透明度
- 边距
- 九宫格定位系统
- 平铺模式
## 图片水印
支持 Logo 与 PNG 图片覆盖:
- PNG 透明度支持
- 不透明度控制
- 缩放
- 定位
- 平铺/重复模式
## 批量处理
使用单个方法即可处理整个目录中的图片。
支持格式:
- JPEG
- PNG
- BMP
- GIF
---
# 安装
```bash
dotnet add package Watermark.Net
```
```powershell
Install-Package Watermark.Net
```
要求:
- .NET 8 或更高版本
---
# 快速开始
## 添加文字水印
```csharp
var watermark = new TextWatermark
{
Text = "CONFIDENTIAL",
Font = SystemFonts.CreateFont("Arial", 36)
};
```
---
## 添加图片水印
```csharp
var watermark = new ImageWatermark
{
ImagePath = "logo.png"
};
```
---
# 常见使用场景
- 图片版权保护
- 电商产品图片品牌化
- SaaS 图像处理流水线
- AI 生成图片标记
- CMS 系统
- 社交媒体自动化
- 后端图像处理服务
- ASP.NET 图片服务
- 批量图片处理
- 内部文档标记
---
# License
本项目基于 MIT License 开源。