Skip to content

Commit e5b5f52

Browse files
committed
Update README.md
1 parent 4e9876f commit e5b5f52

File tree

1 file changed

+27
-23
lines changed

1 file changed

+27
-23
lines changed

README.md

Lines changed: 27 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<img src="https://raw.githubusercontent.com/irsyadler/NoteFinder/main/src/frontend/assets/images/logo-full-dark.svg" width="400" alt="NoteFinder Logo">
33
</p>
44

5-
<p align="center">An application for searching comment and highlight annotations in PDF documents.</p>
5+
<p align="center">An application for searching comments and highlights annotations in PDF documents.</p>
66

77

88

@@ -11,19 +11,17 @@
1111
- Examine the documents' **commented annotation**.
1212
- Examine the documents' **highlighted annotation** (see [Limitations](#Limitations)).
1313
- **List all found annotations with related information**: PDF filename, annotation's page number, annotation type, and annotation content.
14-
- Keyword Filtering: User can **type keywords to filter** the comments and highlighted texts.
15-
- Double-click to open: User can **open the annotated PDF document** by double-clicking an annotation.
14+
- Keyword Filtering: Users can **type keywords to filter** the comments and highlighted texts.
15+
- Double-click to open: Users can **open the annotated PDF document** by double-clicking an annotation.
1616
- Open-at-page: Open annotated PDF documents **at a specific page number** of the annotation content (for Windows users & Adobe Acrobat Reader).
17-
- Drag-and-drop a folder containing PDF documents into the application (for Windows user).
18-
- Optional Features:
19-
- Search PDF documents in subfolders (enabled by default).
20-
- Show the document title (enabled by default). If a PDF document contains `Title` metadata, NoteFinder will show the title instead of the PDF's filename.
21-
- Trim comment's newline (enabled by default). Comment annotation could contain multiple lines. NoteFinder will combine all the lines into a single line.
17+
- **Drag-and-drop** a files or folders containing PDF documents into the application (for Windows users).
18+
- Group Annotations: Group annotations list per PDF document.
19+
- PDF Document Title Editor: Right-click on a document filename/title to edit the PDF document title.
2220

2321
<p align="center">
2422
Screenshot of NoteFinder Application:
2523
<br>
26-
<img src="https://raw.githubusercontent.com/irsyadler/NoteFinder/main/docs/screenshot.png" width="700" alt="NoteFinder Application Screenshot">
24+
<img src="https://raw.githubusercontent.com/irsyadler/NoteFinder/main/docs/screenshot-v0.8.5-1.png" width="700" alt="NoteFinder Application Screenshot">
2725
</p>
2826

2927

@@ -39,34 +37,38 @@ Therefore, these problems limit the portability and ease of access to my notes (
3937
## ℹ️ Download & How to Use
4038
1. Download the latest [NoteFinder release](https://github.com/irsyadler/NoteFinder/releases/).
4139
2. Open the downloaded executable (`.exe` for Windows) or extract the archive (`.tar.gz` for macOS and Linux) to open the executable.
42-
3. Choose a folder containing PDF documents for annotations searching by clicking the `Choose PDF Folder` button on the top. Users may also drag-and-drop a folder containing PDF documents into the NoteFinder application.
43-
4. NoteFinder will start searching PDF annotations content in the chosen folder. If the folder contains many PDF documents, it might take time to scan and analyse each of them.
44-
5. Double-click on a annotation result to open the related PDF documents.
40+
3. Choose a folder containing PDF documents for annotations searching by clicking the `Choose PDF Folder` button on the top. Users may also drag-and-drop a folder/files containing PDF documents into the NoteFinder application.
41+
4. NoteFinder will start searching PDF annotations in the chosen folder. Scanning and analysing each document might take time if the folder contains many PDF documents. Only PDF documents containing annotations (comments or highlights) will appear in the annotations table.
42+
5. Double-click on an annotation row to open the related PDF documents.
4543

46-
Note: To enable the open-at-page feature, a user needs to click the top-left `` button. Then, click the `Choose PDF Application Executable` button to set the Adobe Acrobat Reader's executable location. An example of Adobe Acrobat Reader executable location is: `C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe`.
44+
Note: To enable the open-at-page feature, a user needs to click the top-left `` button. Then, click the `Choose PDF Application Executable` button to set the Adobe Acrobat Reader's executable location. An example of Adobe Acrobat Reader executable location is `C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe`.
4745

48-
**Important**: The NoteFinder is tested in Windows and Linux environments. Unexpected bugs might appeared in macOS.
46+
**Important**: The NoteFinder is tested in Windows and Linux environments. Unexpected bugs might appear in macOS.
4947

48+
#### PDF Document Title Editor (⚠️ Please read before use ⚠️)
49+
50+
The PDF document editor feature enables users to edit a document's title. It is difficult to do with popular PDF viewers such as Adobe Acrobat Reader, Google Chrome, or Microsoft Edge. However, the edit feature will re-generate the document using [pdf-lib](https://pdf-lib.js.org/). Although it is unlikely, a re-generated document may contain errors or corrupted data where it will no longer be accessible or readable. Hence, NoteFinder will make a backup copy of an original PDF document before the new document title is applied to ensure the original file remains unchanged. The backup file name is similar to the existing document with the ending `.pdf.backup.` To open this backup file, rename the file to remove the `.backup` extension.
51+
5052

5153
## 🧪 Development & Testing
5254
NoteFinder is developed and tested on Windows (32/64 bit) environment. But all necessary items (including icon files) are already in place for other platform distributions. To develop and test the NoteFinder, please do the following:
53-
1. Ensure the [Node.js](https://nodejs.org/en/) version `18.12.1` or later installed on the system.
54-
2. Download the source code or clone this repository by run the following commands:
55+
1. Ensure the [Node.js](https://nodejs.org/en/) version `18.12.1` or later is installed on the system.
56+
2. Download the source code or clone this repository by executing the following commands:
5557
- `git clone https://github.com/irsyadler/NoteFinder`
5658
- `cd NoteFinder`
5759
3. In the source code directory, run the `npm install` command to install all necessary dependencies.
5860
4. To start the NoteFinder, run the `npm start` command.
5961

6062
#### Notable Code Structure
61-
- The [src/frontend/](src/frontend/) directory contain all the files related to NoteFinder's user-interface (renderer process).
62-
- The [src/backend/](src/backend/) directory contain all the files related to NoteFinder's Node.js environment (main process).
63-
- The `getPageAnnotation()` function in [src/backend/data.js](src/backend/data.js) define the method of extracting annotations data from a PDF document.
63+
- The [src/frontend/](src/frontend/) directory contains all the files related to NoteFinder's user interface (renderer process).
64+
- The [src/backend/](src/backend/) directory contains all the files related to NoteFinder's Node.js environment (main process).
65+
- The `getPageAnnotation()` function in [src/backend/data.js](src/backend/data.js) defines the annotations data extraction from a PDF document.
6466
- The [resources/](resources/) directory contains the build resources uses to build the NoteFinder application.
6567

6668
#### Build Application Distribution
67-
- NoteFinder mostly uses [Electron Builder](https://github.com/electron-userland/electron-builder) to generate the application distribution.
69+
- NoteFinder primarily uses [Electron Builder](https://github.com/electron-userland/electron-builder) to generate the application distribution.
6870
- To build a distribution, run the `npx electron-builder` command inside the source code directory. This command will generate a NoteFinder distribution in the [dist/](dist/) directory.
69-
- For custom build command, please refer to [Electron Builder - CLI](https://www.electron.build/cli).
71+
- For custom build commands, please refer to [Electron Builder - CLI](https://www.electron.build/cli).
7072

7173
#### Local Files
7274
NoteFinder store configuration data and logs persistently. These files can be found in the following:
@@ -76,7 +78,9 @@ NoteFinder store configuration data and logs persistently. These files can be fo
7678

7779

7880
## 🚩 Limitations
79-
- The open-at-page feature **only works for [Adobe Acrobat Reader](https://get.adobe.com/reader/) in Windows**. Further refinement needs to be implemented to support other PDF reader applications and platform.
81+
- The date localisation is not properly tested. A messy date string format might appears based on the user localisation.
82+
- Currently, right-click context menu for copy/paste/cut operations is disabled. Only keyboard shortcuts ([Windows](https://support.microsoft.com/en-us/topic/keyboard-shortcut-to-copy-and-paste-in-word-e0e561c3-02fe-f256-7b19-dabef7b879e1) / [macOS](https://support.apple.com/en-us/HT209651)) for these operations are enabled.
83+
- The open-at-page feature **only works for [Adobe Acrobat Reader](https://get.adobe.com/reader/) in Windows**. Further refinement needs to be implemented to support other PDF reader applications and platforms.
8084
- NoteFinder obtains a highlighted-text annotation by measuring the highlight's rectangle area (`x` & `y` coordinate). Therefore, the following issues arise:
8185
- The highlight annotation might show an empty text because the highlighted's rectangle area was smaller than the text-rectangle area defined in the PDF document.
8286

@@ -86,4 +90,4 @@ NoteFinder is available under the [AGPL-3.0-only](LICENSE) license.
8690

8791

8892
## 📧 Contact
89-
For any inquiries please contact: `contact [at] irsyadler [dot] com`.
93+
For any inquiries please contact: `contact [at] irsyadler [dot] com`.

0 commit comments

Comments
 (0)