feat: Add VitePress docs, EPUB to PDF tool, Phosphor icons, and licensing updates
- Set up VitePress documentation site (docs:dev, docs:build, docs:preview) - Added Getting Started, Tools Reference, Contributing, and Commercial License pages - Created self-hosting guides for Docker, Vercel, Netlify, Cloudflare, AWS, Hostinger, Nginx, Apache - Updated README with documentation link, sponsors section, and docs contribution guide - Added EPUB to PDF converter using LibreOffice WASM - Migrated to Phosphor Icons for consistent iconography - Added donation ribbon banner on landing page - Removed 'Like My Work?' section (replaced by ribbon) - Updated licensing.html with delivery model, AGPL notice, invoicing, and no-refund policy - Added Commercial License documentation page - Updated translations table (Chinese added, marked non-English as In Progress) - Added sponsors.yml workflow for auto-generating sponsor avatars
This commit is contained in:
@@ -105,8 +105,8 @@
|
||||
<i data-lucide="plus"></i> <span data-i18n="upload.addMore">Add More Files</span>
|
||||
</button>
|
||||
<button id="clear-files-btn"
|
||||
class="btn bg-red-600 hover:bg-red-700 text-white font-semibold px-4 py-2 rounded-lg flex items-center gap-2">
|
||||
<i data-lucide="x"></i> <span data-i18n="upload.clearAll">Clear All</span>
|
||||
class="btn bg-gray-700 hover:bg-gray-600 text-white font-semibold px-4 py-2 rounded-lg flex items-center gap-2">
|
||||
<i data-lucide="trash-2"></i> <span data-i18n="upload.clearAll">Clear All</span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
@@ -124,82 +124,84 @@
|
||||
<!-- Formatting Options -->
|
||||
<div class="mt-6 grid grid-cols-2 md:grid-cols-4 gap-4">
|
||||
<div>
|
||||
<label class="block mb-2 text-sm font-medium text-gray-300">Select Languages</label>
|
||||
<div class="relative">
|
||||
<button id="lang-dropdown-btn"
|
||||
class="w-full bg-gray-700 border border-gray-600 text-white rounded-lg p-2.5 text-left flex justify-between items-center">
|
||||
<span id="lang-dropdown-text" class="truncate">English (Default)</span>
|
||||
<i data-lucide="chevron-down" class="w-4 h-4"></i>
|
||||
</button>
|
||||
<div id="lang-dropdown-content"
|
||||
class="hidden absolute z-10 w-full bg-gray-800 border border-gray-600 rounded-lg mt-1 max-h-60 overflow-y-auto shadow-lg">
|
||||
<div class="p-2 sticky top-0 bg-gray-800 border-b border-gray-700">
|
||||
<input type="text" id="lang-search"
|
||||
class="w-full bg-gray-700 border border-gray-600 text-white rounded px-2 py-1 text-sm"
|
||||
placeholder="Search languages...">
|
||||
</div>
|
||||
<div id="language-list-container" class="p-2 space-y-1"></div>
|
||||
</div>
|
||||
</div>
|
||||
<label for="font-family" class="block mb-2 text-sm font-medium text-gray-300">Font Family</label>
|
||||
<select id="font-family"
|
||||
class="w-full bg-gray-700 border border-gray-600 text-white rounded-lg p-2.5">
|
||||
<option value="helv" selected>Helvetica (Sans-serif)</option>
|
||||
<option value="tiro">Tiro (Serif)</option>
|
||||
<option value="cour">Courier (Monospace)</option>
|
||||
<option value="times">Times (Serif)</option>
|
||||
</select>
|
||||
</div>
|
||||
<div>
|
||||
<label for="font-size" class="block mb-2 text-sm font-medium text-gray-300">Font Size</label>
|
||||
<input type="number" id="font-size" value="12"
|
||||
<input type="number" id="font-size" value="12" min="6" max="72"
|
||||
class="w-full bg-gray-700 border border-gray-600 text-white rounded-lg p-2.5">
|
||||
</div>
|
||||
<div>
|
||||
<label for="page-size" class="block mb-2 text-sm font-medium text-gray-300">Page Size</label>
|
||||
<select id="page-size"
|
||||
class="w-full bg-gray-700 border border-gray-600 text-white rounded-lg p-2.5">
|
||||
<optgroup label="ISO A Series">
|
||||
<option value="A4" selected>A4 (210 x 297 mm)</option>
|
||||
<option value="A3">A3 (297 x 420 mm)</option>
|
||||
<option value="A5">A5 (148 x 210 mm)</option>
|
||||
<option value="A6">A6 (105 x 148 mm)</option>
|
||||
</optgroup>
|
||||
<optgroup label="North American">
|
||||
<option value="Letter">Letter (8.5 x 11 in)</option>
|
||||
<option value="Legal">Legal (8.5 x 14 in)</option>
|
||||
<option value="Tabloid">Tabloid (11 x 17 in)</option>
|
||||
<option value="Executive">Executive (7.25 x 10.5 in)</option>
|
||||
</optgroup>
|
||||
<optgroup label="ISO B Series">
|
||||
<option value="B4">B4 (250 x 353 mm)</option>
|
||||
<option value="B5">B5 (176 x 250 mm)</option>
|
||||
</optgroup>
|
||||
<option value="Custom">Custom Size</option>
|
||||
</select>
|
||||
</div>
|
||||
<div>
|
||||
<label for="page-orientation"
|
||||
class="block mb-2 text-sm font-medium text-gray-300">Orientation</label>
|
||||
<select id="page-orientation"
|
||||
class="w-full bg-gray-700 border border-gray-600 text-white rounded-lg p-2.5">
|
||||
<option value="portrait">Portrait</option>
|
||||
<option value="landscape">Landscape</option>
|
||||
</select>
|
||||
</div>
|
||||
<div id="custom-size-container" class="hidden col-span-2 grid grid-cols-2 gap-4">
|
||||
<div>
|
||||
<label for="custom-width" class="block mb-2 text-sm font-medium text-gray-300">Width
|
||||
(pt)</label>
|
||||
<input type="number" id="custom-width" value="595" min="1"
|
||||
class="w-full bg-gray-700 border border-gray-600 text-white rounded-lg p-2.5">
|
||||
</div>
|
||||
<div>
|
||||
<label for="custom-height" class="block mb-2 text-sm font-medium text-gray-300">Height
|
||||
(pt)</label>
|
||||
<input type="number" id="custom-height" value="842" min="1"
|
||||
class="w-full bg-gray-700 border border-gray-600 text-white rounded-lg p-2.5">
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<label for="text-color" class="block mb-2 text-sm font-medium text-gray-300">Text Color</label>
|
||||
<input type="color" id="text-color" value="#000000"
|
||||
class="w-full h-[42px] bg-gray-700 border border-gray-600 rounded-lg p-1 cursor-pointer">
|
||||
</div>
|
||||
<div>
|
||||
<label for="page-size" class="block mb-2 text-sm font-medium text-gray-300">Page Size</label>
|
||||
<select id="page-size"
|
||||
class="w-full bg-gray-700 border border-gray-600 text-white rounded-lg p-2.5">
|
||||
<optgroup label="ISO A Series">
|
||||
<option value="A0">A0 (841 × 1189 mm)</option>
|
||||
<option value="A1">A1 (594 × 841 mm)</option>
|
||||
<option value="A2">A2 (420 × 594 mm)</option>
|
||||
<option value="A3">A3 (297 × 420 mm)</option>
|
||||
<option value="A4" selected>A4 (210 × 297 mm)</option>
|
||||
<option value="A5">A5 (148 × 210 mm)</option>
|
||||
<option value="A6">A6 (105 × 148 mm)</option>
|
||||
<option value="A7">A7 (74 × 105 mm)</option>
|
||||
<option value="A8">A8 (52 × 74 mm)</option>
|
||||
<option value="A9">A9 (37 × 52 mm)</option>
|
||||
<option value="A10">A10 (26 × 37 mm)</option>
|
||||
</optgroup>
|
||||
<optgroup label="ISO B Series">
|
||||
<option value="B0">B0 (1000 × 1414 mm)</option>
|
||||
<option value="B1">B1 (707 × 1000 mm)</option>
|
||||
<option value="B2">B2 (500 × 707 mm)</option>
|
||||
<option value="B3">B3 (353 × 500 mm)</option>
|
||||
<option value="B4">B4 (250 × 353 mm)</option>
|
||||
<option value="B5">B5 (176 × 250 mm)</option>
|
||||
<option value="B6">B6 (125 × 176 mm)</option>
|
||||
<option value="B7">B7 (88 × 125 mm)</option>
|
||||
<option value="B8">B8 (62 × 88 mm)</option>
|
||||
<option value="B9">B9 (44 × 62 mm)</option>
|
||||
<option value="B10">B10 (31 × 44 mm)</option>
|
||||
</optgroup>
|
||||
<optgroup label="ISO C Series (Envelopes)">
|
||||
<option value="C0">C0 (917 × 1297 mm)</option>
|
||||
<option value="C1">C1 (648 × 917 mm)</option>
|
||||
<option value="C2">C2 (458 × 648 mm)</option>
|
||||
<option value="C3">C3 (324 × 458 mm)</option>
|
||||
<option value="C4">C4 (229 × 324 mm)</option>
|
||||
<option value="C5">C5 (162 × 229 mm)</option>
|
||||
<option value="C6">C6 (114 × 162 mm)</option>
|
||||
<option value="C7">C7 (81 × 114 mm)</option>
|
||||
<option value="C8">C8 (57 × 81 mm)</option>
|
||||
<option value="C9">C9 (40 × 57 mm)</option>
|
||||
<option value="C10">C10 (28 × 40 mm)</option>
|
||||
</optgroup>
|
||||
<optgroup label="North American">
|
||||
<option value="Letter">Letter (8.5 × 11 in)</option>
|
||||
<option value="Legal">Legal (8.5 × 14 in)</option>
|
||||
<option value="Tabloid">Tabloid (11 × 17 in)</option>
|
||||
<option value="Ledger">Ledger (17 × 11 in)</option>
|
||||
<option value="11x17">11×17 (11 × 17 in)</option>
|
||||
</optgroup>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="text-xs text-gray-500 mt-3">
|
||||
<i data-lucide="info" class="inline w-3 h-3"></i>
|
||||
RTL languages (Arabic, Urdu, Persian, etc.) are automatically detected and text direction is adjusted.
|
||||
</p>
|
||||
|
||||
<button id="process-btn" class="btn-gradient w-full mt-6">Create PDF</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user