Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/beratarpa/html-thermal-printer

A WPF application that allows direct printing of HTML content to Windows printers with custom formatting tags support and preview functionality. Perfect for thermal printers and receipt printing.
https://github.com/beratarpa/html-thermal-printer

charp dotnet html-to-print pos-printer printer receipt-printer thermal-printer windows-print windows-printing wpf xaml

Last synced: 2 days ago
JSON representation

A WPF application that allows direct printing of HTML content to Windows printers with custom formatting tags support and preview functionality. Perfect for thermal printers and receipt printing.

Awesome Lists containing this project

README

        

# HTML Thermal Printer

NuGet package:
https://www.nuget.org/packages/PrintHTML.Core

Basic usage:
```
PrinterService _printerService = new PrinterService();
AsyncPrintTask.Exec(
true,
() => _printerService.DoPrint(
"content", // Content to print
"PrinterName", // Printer name
"charactersPerLine(int) 58MM=32, 80MM=42" // Characters per line
)
);
```
---

## Screenshots
![UI](Images/3.png)
![UI](Images/Main.png)
![UI](Images/2.png)
---
[EN]

## About Project
PrintHTML is a user-friendly WPF application that allows you to send HTML content directly to Windows printers. This application enables you to preview HTML content before printing and automatically detects all printers installed on the system.

### Features
- Direct HTML content printing
- Print preview functionality
- Automatic printer detection
- User-friendly interface
- Error handling and notifications

### Technical Details
- Framework: .NET (WPF)
- Language: C#
- Interface: XAML
- Architecture: Service-based architecture

### Usage
1. Launch the application
2. System printers will be automatically listed
3. Paste your HTML content into the text box
4. Optionally click "Preview" to check the output
5. Select a printer and click "Print"

### Requirements
- Windows operating system
- .NET Framework
- At least one system printer

### Special Format Tags
Special format tags you can use in the application:

- `` : Aligns text to the left
- `` : Centers the text
- `` : Aligns text to the right
- `` : Makes text bold
- `` : Bold text start
- `` : Bold text end
- `=` : Fills the line with the specified character (example: `=` fills the entire line with = character)
- `` : Creates a table. Columns are separated by | character (example: `Product | Price | Stock`)

Example usage:
```

HEADER

=
Bold Header
Left aligned text
Centered text
Right aligned text

Product | Price
Pencil | $10
```
---
[TR]

## Proje Hakkında
PrintHTML, HTML içeriğini doğrudan Windows yazıcılarına göndermenizi sağlayan kullanıcı dostu bir WPF uygulamasıdır. Bu uygulama, HTML içeriğini yazdırmadan önce önizleme yapmanıza olanak tanır ve sistem üzerinde kurulu olan tüm yazıcıları otomatik olarak algılar.

### Özellikler
- HTML içeriğini doğrudan yazdırma
- Yazdırma öncesi önizleme
- Sistem yazıcılarını otomatik algılama
- Kullanıcı dostu arayüz
- Hata yönetimi ve bildirimler

### Teknik Detaylar
- Framework: .NET (WPF)
- Dil: C#
- Arayüz: XAML
- Mimari: Service-based architecture

### Kullanım
1. Uygulamayı başlatın
2. Sistem yazıcıları otomatik olarak listelenecektir
3. Yazdırmak istediğiniz HTML içeriğini metin kutusuna yapıştırın
4. İsterseniz "Önizle" butonuna tıklayarak çıktıyı kontrol edin
5. Yazıcı seçin ve "Yazdır" butonuna tıklayın

### Gereksinimler
- Windows işletim sistemi
- .NET Framework
- En az bir sistem yazıcısı

### Özel Format Etiketleri
Uygulama içerisinde kullanabileceğiniz özel format etiketleri:

- `` : Metni sola hizalar
- `` : Metni ortalar
- `` : Metni sağa hizalar
- `` : Metni kalın yapar
- `` : Kalın yazı başlangıcı
- `` : Kalın yazı bitişi
- `=` : Belirtilen karakterle satırı doldurur (örnek: `=` tüm satırı = karakteri ile doldurur)
- `` : Tablo oluşturur. Sütunlar | karakteri ile ayrılır (örnek: `Ürün | Fiyat | Stok`)

Örnek kullanım:
```

BAŞLIK

=
Kalın Başlık
Sola dayalı metin
Ortalanmış metin
Sağa dayalı metin

Ürün | Fiyat
Kalem | 10 TL
```