Files
label_printer/documentation/GETTING_STARTED.md

207 lines
5.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Getting Started with Label Printer GUI
## Overview
Your Label Printer application now has a modern Kivy-based GUI interface! This guide will help you get started.
## Quick Start (3 Steps)
### Option 1: Python Script (Recommended)
```bash
python3 setup_and_run.py
```
This handles everything - checks dependencies, installs packages, and starts the GUI.
### Option 2: Bash Script
```bash
chmod +x start_gui.sh
./start_gui.sh
```
### Option 3: Manual
```bash
pip install -r requirements_gui.txt
python3 label_printer_gui.py
```
## What You'll See
### Main Window Layout
```
┌─────────────────────────────────────────────────────────────┐
│ Label Printer Interface │
├──────────────────┬──────────────────────────────────────────┤
│ Input Column │ Preview Column │
│ (40%) │ (60%) │
│ │ │
│ ✓ SAP-Nr. Input │ ╔════════════════════╗ │
│ [________] │ ║ Live Preview ║ │
│ │ ║ 11.5cm x 8cm ║ │
│ ✓ Quantity │ ║ ║ │
│ [________] │ ║ [Barcode] ║ │
│ │ ║ SAP | QTY | ID ║ │
│ ✓ Cable ID │ ║ ║ │
│ [________] │ ╚════════════════════╝ │
│ │ │
│ ✓ Printer ▼ │ │
│ [PDF ▼] │ │
│ │ │
│ [PRINT LABEL] │ │
│ │ │
└──────────────────┴──────────────────────────────────────────┘
```
## Features Explained
### Left Column - Data Entry
1. **SAP-Nr. Articol**
- Enter the SAP article number or identifier
- Example: `A012345`
- Updates preview automatically
2. **Cantitate (Quantity)**
- Numbers only
- Example: `100`
- Numeric input only
3. **ID rola cablu (Cable Reel ID)**
- Cable reel identifier
- Example: `REEL-001`
- Updates preview automatically
4. **Printer Selection**
- Dropdown menu with available system printers
- Shows all CUPS-configured printers
- Default: PDF printer (if no others available)
5. **Print Label Button**
- Green button at bottom
- Triggers printing to selected printer
- Shows status notifications
### Right Column - Live Preview
- Shows exactly what will print
- Updates in real-time as you type
- Label dimensions: 11.5 cm × 8 cm
- Displays:
- Barcode (Code128 format)
- SAP number, quantity, and cable ID combined
- High quality 300 DPI rendering
## Workflow Example
1. **Start the application:**
```bash
python3 setup_and_run.py
```
2. **Enter data:**
- SAP-Nr: `A456789`
- Cantitate: `50`
- ID rola cablu: `REEL-042`
3. **Check preview** (automatically updates on right)
4. **Select printer** (use dropdown)
5. **Click PRINT LABEL** button
6. **Confirm** when notification appears
## Printer Setup
### Check Available Printers
```bash
lpstat -p -d
```
### Add a Printer (if needed)
```bash
# Use CUPS web interface
http://localhost:631
```
### Common Printer Names
- `PDF` - Virtual PDF printer (for testing)
- `Brother_HL_L2350DW` - Brother laser printer
- `Canon_PIXMA` - Canon printer
- Check your system for exact name
## Troubleshooting
### "No Printers Found"
```bash
# Start CUPS service
sudo systemctl start cups
# Check status
sudo systemctl status cups
# List printers
lpstat -p -d
```
### Preview Not Updating
- Check Python console for errors
- Verify all dependencies installed: `pip list | grep -E 'kivy|barcode|pillow'`
- Try restarting the application
### Print Fails
```bash
# Test print command manually
echo "test" | lp -d PDF
# Check printer status
lpstat -p -l
```
### Kivy Window Issues
- If window doesn't open, check X11 display:
```bash
echo $DISPLAY
```
- Resize window manually if elements overlap
## File Guide
- **label_printer_gui.py** - Main GUI application
- **print_label.py** - Core printing functions
- **setup_and_run.py** - Automatic setup script
- **start_gui.sh** - Bash launcher script
- **requirements_gui.txt** - Python dependencies
- **README_GUI.md** - Complete documentation
## Tips & Tricks
1. **Fast Printing:**
- Preset SAP number as most common value
- Just change quantity/ID for each label
2. **Batch Printing:**
- Print one label at a time
- Small UI makes it quick
3. **Testing:**
- Use "PDF" printer to save test labels
- Check output files to verify format
4. **Keyboard:**
- Tab between fields
- Enter in printer dropdown to confirm selection
- Alt+P might activate Print button (Kivy dependent)
## Next Steps
- **Learn More:** See [README_GUI.md](README_GUI.md)
- **Customize:** Modify `label_printer_gui.py` for your needs
- **Integrate:** Use functions in other Python applications
- **Support:** Check console output for detailed error messages
---
**Ready to print?** Start with: `python3 setup_and_run.py`