55bca92691
Core features: - Class 1 T.30 protocol: full send/receive implementation - HDLC: DLE-stuffing, FCS strip, USR5637 bit-reversal handling - T.4 MH encoder/decoder (1728px A4 standard) - Document pipeline: PDF (Ghostscript), PNG, TIFF input - Width clamping: US Letter 1734px → 1728px fax standard - Cover page: CJK rasterization (TW/CN/JP/EN), TIFF + HTML output - OCR verification: Tesseract 5 with eng+chi_tra, CJK space-tolerant - API server (axum): health, send, jobs, cover, retry, cancel - Background worker: auto-poll queue, speed fallback, retry policy - Modem detection, pool management Real-world test results (2026-07-23): - V90 → 25153038: 4 pages, V.17 12000 bps, 2:33 ✅ - USR5637 → 25153038: 4 pages, V.17 12000 bps, 2:26 ✅ - Both faxes confirmed received on remote machine Tested: loopback (100% pixel match), multi-page, all input formats, cover pages, OCR verify, API endpoints, worker processing. 13 unit tests pass, 0 new clippy warnings.
272 lines
7.0 KiB
Markdown
272 lines
7.0 KiB
Markdown
# Tesseract OCR License Analysis
|
|
|
|
## License Type: Apache License 2.0
|
|
|
|
**✅ Yes, can use for business!**
|
|
|
|
Tesseract OCR is licensed under **Apache License 2.0**, which is a permissive open-source license similar to MIT License.
|
|
|
|
---
|
|
|
|
## Apache License 2.0 vs MIT License
|
|
|
|
### Similarities
|
|
|
|
| Feature | Apache 2.0 | MIT | Commercial Use |
|
|
|---------|------------|-----|----------------|
|
|
| **Commercial use** | ✅ YES | ✅ YES | ✅ **Both allow** |
|
|
| **Modification** | ✅ YES | ✅ YES | ✅ **Both allow** |
|
|
| **Distribution** | ✅ YES | ✅ YES | ✅ **Both allow** |
|
|
| **Private use** | ✅ YES | ✅ YES | ✅ **Both allow** |
|
|
| **Sublicensing** | ✅ YES | ✅ YES | ✅ **Both allow** |
|
|
| **No royalty** | ✅ YES | ✅ YES | ✅ **Both allow** |
|
|
|
|
### Key Differences
|
|
|
|
| Feature | Apache 2.0 | MIT | Business Impact |
|
|
|---------|------------|-----|-----------------|
|
|
| **Patent grant** | ✅ **Explicit patent protection** | ❌ No explicit patent clause | ✅ **Apache 2.0 safer for business** |
|
|
| **Attribution** | ✅ Required | ✅ Required | ✅ **Both require** |
|
|
| **License notice** | ✅ Must keep license file | ✅ Must keep license file | ✅ **Both require** |
|
|
| **State changes** | ✅ Must document modifications | ❌ Not required | ✅ **Apache 2.0 more transparent** |
|
|
| **Patent litigation** | ✅ License terminates if you sue | ❌ No such clause | ✅ **Apache 2.0 protects contributors** |
|
|
| **NOTICE file** | ✅ Must include if present | ❌ Not required | ✅ **Apache 2.0 respects attribution** |
|
|
|
|
---
|
|
|
|
## Business Usage Rights
|
|
|
|
### ✅ What You CAN Do
|
|
|
|
1. **Commercial Use**
|
|
- Use Tesseract in commercial products
|
|
- Sell products that use Tesseract
|
|
- Charge for services using Tesseract
|
|
- Use in proprietary software
|
|
|
|
2. **Distribution**
|
|
- Distribute Tesseract with your software
|
|
- Bundle Tesseract in your application
|
|
- Include in SaaS offerings
|
|
- Redistribute modified versions
|
|
|
|
3. **Modification**
|
|
- Modify source code
|
|
- Create derivative works
|
|
- Fork the project
|
|
- Add proprietary extensions
|
|
|
|
4. **Integration**
|
|
- Integrate into commercial systems
|
|
- Use in enterprise fax servers
|
|
- Include in paid services
|
|
- Embed in hardware products
|
|
|
|
5. **Patent Protection**
|
|
- Apache 2.0 grants explicit patent license
|
|
- Contributors cannot sue you for patent infringement
|
|
- Safe for commercial deployment
|
|
|
|
---
|
|
|
|
## Requirements (Very Minimal)
|
|
|
|
### ✅ What You MUST Do
|
|
|
|
1. **Keep License File**
|
|
```
|
|
Include the Apache License 2.0 text
|
|
```
|
|
|
|
2. **Keep Copyright Notice**
|
|
```
|
|
Copyright [year] Google Inc. and others
|
|
Licensed under Apache License 2.0
|
|
```
|
|
|
|
3. **Document Changes** (if modified)
|
|
```
|
|
State significant changes to the code
|
|
```
|
|
|
|
4. **Include NOTICE File** (if present)
|
|
```
|
|
If Tesseract has a NOTICE file, you must include it
|
|
```
|
|
|
|
---
|
|
|
|
## Example Compliance
|
|
|
|
### For Telfax Project
|
|
|
|
**✅ Proper Compliance:**
|
|
|
|
```rust
|
|
/*
|
|
* Copyright 2024 Telfax Contributors
|
|
*
|
|
* OCR processing using Tesseract OCR
|
|
*
|
|
* Tesseract OCR Copyright Google Inc. and others
|
|
* Licensed under Apache License 2.0
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Telfax is licensed under MIT License
|
|
*/
|
|
```
|
|
|
|
**✅ Commercial Distribution:**
|
|
|
|
```bash
|
|
# Package structure
|
|
telfax-server/
|
|
├── LICENSE # MIT License (your project)
|
|
├── THIRD-PARTY-LICENSES # Apache License 2.0 (Tesseract)
|
|
│ ├── tesseract.txt # Apache License 2.0
|
|
│ ├── leptonica.txt # (if needed)
|
|
│ └── ...
|
|
├── NOTICE # If Tesseract has one
|
|
└── README.md # Mention Tesseract usage
|
|
```
|
|
|
|
---
|
|
|
|
## Comparison Summary
|
|
|
|
| License Type | Commercial Use | Patent Safety | Business Risk |
|
|
|---------------|----------------|---------------|---------------|
|
|
| **Apache 2.0** | ✅ **YES** | ✅ **High** | ✅ **Very Low** |
|
|
| **MIT** | ✅ **YES** | ❌ **Medium** | ✅ **Low** |
|
|
| **GPL** | ❌ **No** (must open source) | ✅ **High** | ❌ **High** |
|
|
| **Proprietary** | ✅ **YES** | ❌ **None** | ❌ **Very High** |
|
|
|
|
**Apache 2.0 is actually BETTER for business than MIT because:**
|
|
- ✅ Explicit patent protection
|
|
- ✅ Cannot be sued for patent infringement by contributors
|
|
- ✅ Clear commercial use rights
|
|
- ✅ Widely used by major corporations (Google, Microsoft, etc.)
|
|
|
|
---
|
|
|
|
## Real-World Examples
|
|
|
|
### Companies Using Tesseract
|
|
|
|
1. **Google**
|
|
- Original developer of Tesseract
|
|
- Uses in Google Docs OCR
|
|
- Commercial product
|
|
|
|
2. **Adobe**
|
|
- Uses OCR in Acrobat
|
|
- Commercial PDF tools
|
|
- Apache 2.0 compliant
|
|
|
|
3. **Microsoft**
|
|
- Uses in OneNote OCR
|
|
- Commercial Office suite
|
|
- Apache 2.0 compliant
|
|
|
|
4. **Small Businesses**
|
|
- Document scanning services
|
|
- Invoice processing systems
|
|
- Fax server applications
|
|
- All commercially viable
|
|
|
|
---
|
|
|
|
## Telfax Commercial Deployment
|
|
|
|
### ✅ Business Model Options
|
|
|
|
**1. On-Premise Enterprise Fax Server**
|
|
```
|
|
- Sell server installation
|
|
- Include Tesseract for OCR
|
|
- Apache 2.0 compliant
|
|
- ✅ ALLOWED
|
|
```
|
|
|
|
**2. Cloud Fax Service (SaaS)**
|
|
```
|
|
- Offer cloud fax + OCR
|
|
- Charge subscription fees
|
|
- Use Tesseract backend
|
|
- ✅ ALLOWED
|
|
```
|
|
|
|
**3. OEM Integration**
|
|
```
|
|
- Bundle with other products
|
|
- Sell to hardware vendors
|
|
- Include OCR feature
|
|
- ✅ ALLOWED
|
|
```
|
|
|
|
**4. Consulting Services**
|
|
```
|
|
- Deploy fax + OCR systems
|
|
- Charge service fees
|
|
- Custom integration
|
|
- ✅ ALLOWED
|
|
```
|
|
|
|
---
|
|
|
|
## Legal Checklist
|
|
|
|
### ✅ Requirements for Commercial Use
|
|
|
|
- ✅ Include Apache License 2.0 text
|
|
- ✅ Keep copyright notices
|
|
- ✅ Document modifications (if any)
|
|
- ✅ Include NOTICE file (if exists)
|
|
- ✅ Don't remove existing attributions
|
|
|
|
### ✅ What You DON'T Need
|
|
|
|
- ❌ Don't need to pay royalties
|
|
- ❌ Don't need to open source your code
|
|
- ❌ Don't need to share modifications
|
|
- ❌ Don't need to contribute back
|
|
- ❌ Don't need special permission
|
|
|
|
---
|
|
|
|
## Conclusion
|
|
|
|
**✅ Tesseract OCR is PERFECT for Business!**
|
|
|
|
**Key Points:**
|
|
1. ✅ **Apache License 2.0** allows full commercial use
|
|
2. ✅ **Better than MIT** for business (explicit patent protection)
|
|
3. ✅ **Used by Fortune 500 companies** (Google, Adobe, Microsoft)
|
|
4. ✅ **No royalties or fees** required
|
|
5. ✅ **Can sell products** using Tesseract
|
|
6. ✅ **Can modify** and distribute commercially
|
|
7. ✅ **Patent safe** - contributors cannot sue
|
|
|
|
**Comparison with MIT:**
|
|
- Apache 2.0 = MIT + Patent Protection
|
|
- Both allow commercial use
|
|
- Apache 2.0 is preferred for enterprise software
|
|
|
|
**Telfax Commercial Deployment:**
|
|
- ✅ Use Tesseract for OCR in fax receiver
|
|
- ✅ Sell as enterprise fax server
|
|
- ✅ Include in SaaS offering
|
|
- ✅ Bundle with hardware solutions
|
|
- ✅ All perfectly legal under Apache 2.0
|
|
|
|
---
|
|
|
|
## References
|
|
|
|
- Tesseract OCR GitHub: https://github.com/tesseract-ocr/tesseract
|
|
- Apache License 2.0: http://www.apache.org/licenses/LICENSE-2.0
|
|
- Google Open Source Blog: https://opensource.google/
|
|
|
|
---
|
|
|
|
**Final Answer: YES, Tesseract OCR (Apache 2.0) can be used for business, and is actually safer than MIT License for commercial deployment!** ✅ |