https://github.com/projectsoft-studionions/scan-images-menu2pdf
Конвертирование отсканированных изображений меню в PDF файлы.
https://github.com/projectsoft-studionions/scan-images-menu2pdf
Last synced: 2 months ago
JSON representation
Конвертирование отсканированных изображений меню в PDF файлы.
- Host: GitHub
- URL: https://github.com/projectsoft-studionions/scan-images-menu2pdf
- Owner: ProjectSoft-STUDIONIONS
- License: mit
- Created: 2024-02-16T12:33:30.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-06T19:45:46.000Z (almost 2 years ago)
- Last Synced: 2025-05-15T18:13:50.112Z (about 1 year ago)
- Language: Pascal
- Homepage: https://projectsoft-studionions.github.io/scan-images-menu2pdf/
- Size: 19.6 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# scan-images-menu2pdf
Конвертирование отсканированных изображений меню в PDF файлы.
### Параметры сканирования:
| Наименование | Значение |
| ---------------- | ---------------- |
| Цветовой формат | Цветное |
| Тип файла | JPG (Файл "JPG") |
| Разрешение (DPI) | 300 |
### Описание
Обрабатывается два типа меню. Каждодневное и Двухнедельное.
#### Формат данных в JSON
Каждодневное меню одного файла включает в себя два файла изображений. Двухнедельное состоит из одиннадцати файлов изображений. Править можно под себя.
Файл для правки [menu.json](https://github.com/ProjectSoft-STUDIONIONS/scan-images-menu2pdf/blob/main/menu.json).
Формат данных в JSONs
```json
[
{
"name": "Каждодневное меню",
"files": 2,
"size": "portrait",
"author": "ВАШ_КОМБИНАТ_ПИТАНИЯ",
"produser": "ВАША_ШКОЛА",
"format": "%y.%m.%d",
"multidir": true,
"items": [
{
"title": "Меню питания для учащихся 1-4 классов",
"sufix": "-01",
"saveNoSufix": false
},
{
"title": "Меню питания для учащихся 1-4 классов с ОВЗ",
"sufix": "-02",
"saveNoSufix": false
},
{
"title": "Индивидуальное меню питания учащихся 1-4 классов",
"sufix": "-03",
"saveNoSufix": false
},
{
"title": "Меню питания для учащихся мобилизованных родителей 1-4 классов",
"sufix": "-04",
"saveNoSufix": false
},
{
"title": "Меню питания для учащихся из многодетных семей 1-4 классов",
"sufix": "-05",
"saveNoSufix": false
},
{
"title": "Меню питания для учащихся 5-11 классов",
"sufix": "-06",
"saveNoSufix": false
},
{
"title": "Меню питания для учащихся 5-11 классов с ОВЗ",
"sufix": "-07",
"saveNoSufix": false
},
{
"title": "Индивидуальное меню питания учащихся 5-11 классов",
"sufix": "-08",
"saveNoSufix": false
},
{
"title": "Меню питания для учащихся мобилизованных родителей 5-11 классов",
"sufix": "-09",
"saveNoSufix": false
},
{
"title": "Меню питания для учащихся из многодетных семей 5-11 классов",
"sufix": "-10",
"saveNoSufix": false
}
]
},
{
"name": "Двухнедельное меню",
"files": 11,
"size": "landscape",
"author": "ВАШ_КОМБИНАТ_ПИТАНИЯ",
"produser": "ВАША_ШКОЛА",
"format": "%y.%m.%d",
"multidir": false,
"items": [
{
"title": "Примерное двухнедельное меню рациона питания для учащихся 1-4 класса",
"sufix": "-01",
"saveNoSufix": false
},
{
"title": "Примерное двухнедельное меню рациона питания для учащихся 1-4 класса c ОВЗ",
"sufix": "-02",
"saveNoSufix": false
},
{
"title": "Примерное двухнедельное индивидуальное меню рациона питания для учащихся 1-4 класса",
"sufix": "-03",
"saveNoSufix": false
},
{
"title": "Примерное двухнедельное меню рациона питания для учащихся мобилизованных родителей 1-4 классов",
"sufix": "-04",
"saveNoSufix": false
},
{
"title": "Примерное двухнедельное меню рациона питания для учащихся из многодетных семей 1-4 классов",
"sufix": "-05",
"saveNoSufix": false
},
{
"title": "Примерное двухнедельное меню рациона питания для учащихся 5-11 классов",
"sufix": "-06",
"saveNoSufix": false
},
{
"title": "Примерное двухнедельное меню рациона питания для учащихся 5-11 класса c ОВЗ",
"sufix": "-07",
"saveNoSufix": false
},
{
"title": "Примерное двухнедельное индивидуальное меню рациона питания для учащихся 5-11 класса",
"sufix": "-08",
"saveNoSufix": false
},
{
"title": "Примерное двухнедельное меню рациона питания для учащихся мобилизованных родителей 5-11 классов",
"sufix": "-09",
"saveNoSufix": false
},
{
"title": "Примерное двухнедельное меню рациона питания для учащихся из многодетных семей 5-11 классов",
"sufix": "-10",
"saveNoSufix": false
}
]
}
]
```
Согласно JSON данных можно добавить ещё типы меню не правя код самого модуля, а правя только код файла `menu.json`. Внимательно следите за форматом JSON файла!!!
Создание PDF файлов посредством библиотеки [**pdf-lib**](https://pdf-lib.js.org/) *(Устанавливается при развёртывании проекта)*
### Установка:
Обязательно!
```Batchfile
$ git clone https://github.com/ProjectSoft-STUDIONIONS/scan-images-menu2pdf.git
$ cd scan-images-menu2pdf
$ npm run inst
```
### Запуск
```Batchfile
$ npm run test
```
Или запуск `programm.exe`
### Дополнительные установки для сборки проекта и диалога
Установить **.NET 8.0 SDK** для компилирования `programm.exe`
```
https://dotnetwebsite.azurewebsites.net/en-us/download/dotnet/8.0
```
**Добавить запись к PATH**
```
C:\Windows\Microsoft.NET\Framework\v3.5
```
В данной папке находится компилятор `csc.exe`
Установить **RAD Studio 11** для компилирования `dialogs.exe`
```
https://altd.embarcadero.com/download/radstudio/11.0/RADStudio_11_3_esd_61_3236.exe
```
### Сборка `programm.exe`
```Batchfile
$ npm run build
```
## Этапы работы программы
Запуск программы

Выбор папки с изображениями

Выполнение программы. Обработка изображений. Генерация PDF файлов

Завершение работы программы
