You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[Installation and Usage](#installation-and-usage)
14
15
-[Contributing](#contributing)
@@ -19,9 +20,11 @@
19
20
20
21
Zero-ZeroGPT is a demonstration application that showcases how replacing standard spaces with various Unicode space characters can affect the detection of AI-generated text by common AI detection tools like **GPTZero** and **ZeroGPT**. This project looks to explore the limitations of current AI detection methods and promote discussion about more robust processing techniques.
21
22
23
+
> **Note:** This version is a fork of the original project. It has been enhanced by **MasuRii** to include full **PDF document support**, whereas the original application only supported plain and rich text.
24
+
22
25
## Live Demo
23
26
24
-
Experience Zero-ZeroGPT in action: [https://oct4pie.github.io/zero-zerogpt](https://oct4pie.github.io/zero-zerogpt)
27
+
Experience Zero-ZeroGPT in action (deployed via GitHub Pages): [https://oct4pie.github.io/zero-zerogpt](https://oct4pie.github.io/zero-zerogpt)
25
28
26
29
## AI Detection Approach
27
30
@@ -39,6 +42,33 @@ AI detection tools generally tokenize text based on standard spaces. By replacin
39
42
2.**Statistical Alteration**: The statistical features of the text are changed when spaces are replaced with Unicode spaces, preventing the model from matching the text with its learned patterns.
40
43
3.**Pattern Interference**: Unicode spaces can disrupt the detection model's ability to identify typical text patterns.
41
44
45
+
## PDF Support
46
+
47
+
Developed by **MasuRii**, this fork introduces robust PDF capabilities to Zero-ZeroGPT. While the original tool was limited to text and rich text inputs, this version allows for full document processing.
48
+
49
+
Zero-ZeroGPT includes comprehensive PDF processing capabilities, powered by **pdfjs-dist** for extraction and **pdf-lib** for high-fidelity generation.
50
+
51
+
**Features:**
52
+
***Layout Preservation**: Maintains the original document's structure, including text positioning, columns, and page dimensions.
53
+
***Font Awareness**: Intelligently maps original fonts to standard PDF fonts or compatible fallbacks to preserve the document's visual style.
54
+
***Seamless Transformation**: Apply any Unicode spacing pattern to the text while keeping the document layout intact.
55
+
***Custom Font Embedding**: Includes high-quality Noto Sans embedding for full Unicode support (including special spaces).
56
+
***Column Detection**: Automatically detects and preserves multi-column layouts (2-4 columns) commonly found in research papers and articles.
57
+
***Color Preservation**: Accurately extracts and reproduces text colors from the original document using advanced operator list parsing.
58
+
***Hybrid Generation**:
59
+
***Layout Preserved Mode**: Generates a PDF that mirrors the input (default).
60
+
***Simple Text Mode**: Generates a clean, simple text document (fallback).
61
+
62
+
**Testing:**
63
+
The PDF feature suite is backed by a comprehensive testing strategy with **217 tests** covering all utility functions. To run tests:
64
+
```bash
65
+
npm test
66
+
```
67
+
68
+
**Limitations:**
69
+
***Text-Based Only**: The feature supports text-based PDFs. Scanned documents or image-only PDFs are not supported (OCR is not implemented).
70
+
***Font Subsetting**: While font families and styles are preserved, exact custom font files are not re-embedded to avoid copyright and size issues; high-quality standard fallbacks are used instead.
71
+
42
72
## Examples
43
73
44
74
Here are some visual examples demonstrating the effect of Unicode spacing on AI detection tools:
@@ -79,10 +109,15 @@ Here are some visual examples demonstrating the effect of Unicode spacing on AI
79
109
80
110
### Usage Instructions
81
111
82
-
1. Enter your text in the input field.
83
-
2. Experiment with different Unicode spaces using the predefined options or create your own combination.
84
-
3. Copy the modified text and test it in various AI detection tools.
85
-
4. Use the "Clear Text" button to reset the input field.
112
+
1.**Select Input Mode**: Choose between "Plain Text", "Rich Text", or "PDF" using the toggle buttons.
113
+
2.**Input Content**:
114
+
***Plain/Rich Text**: Enter or paste your text in the input field.
115
+
***PDF**: Click the "PDF" mode button, then drag & drop a file or click to upload.
116
+
3.**Apply Spacing**: Experiment with different Unicode spaces using the preview cards or create your own combination.
117
+
4.**Export Results**:
118
+
***Copy**: Click the copy icon on any card to copy the modified text.
119
+
***Download (PDF Mode)**: When in PDF mode, click the download icon on any spacing card to generate a new PDF with that specific Unicode spacing applied.
120
+
5. Use the "Clear Text" button to reset the application and clear any uploaded files.
0 commit comments