Skip to content

Latest commit

 

History

History
71 lines (63 loc) · 3.3 KB

README.md

File metadata and controls

71 lines (63 loc) · 3.3 KB

BarcodeGabis

Генератор цінників для взуття в PDF на JavaScript

Наглядний приклад роботи знаходиться в index.html Для того, щоб згенерувати цінники в PDF, потрібно виконати такі дії:

  1. Підключити в html-шаблон сайту додаткові файли:
  • js/pdf-lib.min.js - бібліотека PDF-Lib-JS для генерації PDF-документів.
  • js/fontkit.umd.min.js - бібліотека FontKit для роботи з сторонніми штрифтами за допомогою PDF-Lib-JS
  • js/gen.js - основний файл програми
  1. Створити фрейм з id="pdf" в будь-якому місці на сторінці де має відобразитися PDF-документ. В index.html приклад який заповняє документом всю сторінку.

  2. В тегах <script> на сторінці або в js-файлі створити масив з інформацією про цінники, які потрібно згенерувати. Шаблон масиву:

     let barcodes = [
     	{
     		barcode: 'ШТРИХКОД',
     		name: 'НАЗВА ТОВАРУ',
     		price: 'ЦІНА ТОВАРУ',
     		color: 'КОЛІР ВЗУТТЯ',
     		size: 'РОЗМІР ВЗУТТЯ',
     		artikle: 'АРТИКУЛ',
     		code: 'КОД ТОВАРУ',
     		country: 'КРАЇНА-ВИРОБНИК',
     		date: 'ДАТА ВИГОТОВЛЕННЯ',
     		supplier: 'ПОСТАЧАЛЬНИК',
     		importer: 'АДРЕСА ІМПОРТЕРА',
     		top: 'ЗОВНІШНІЙ МАТЕРІАЛ',
     		center: 'ВНУТРІШНІЙ МАТЕРІАЛ',
     		bottom: 'МАТЕРІАЛ ЗНИЗУ'
     	 },
     	{
     		barcode: '4820001157321',
     		name: 'Ботинки женские Stilly',
     		price: '540,00',
     		color: 'Зелений',
     		size: '39',
     		artikle: '973-4',
     		code: '115732',
     		country: 'Китай',
     		date: '01.01.2022',
     		supplier: 'ООО "Trend" China',
     		importer: 'Башили, м. Одеса, ринок 7 км. Конт.№10',
     		top: 'текстиль + шкіра',
     		center: 'шкіра',
     		bottom: 'шкіра + інші матеріали'
     	}
     ];
    
  3. Викликати функцію genGabisBarcode(barcodes), де barcodes - масив з цінниками

Думаю зрозуміло, що тип усіх параметрів це рядок (String), але для параметрів top, center і bottom корректим є лише декілька значень:

  1. шкіра
  2. шкіра з покриттям
  3. текстиль
  4. інші матеріали
  5. текстиль + інші матеріали
  6. текстиль + шкіра
  7. шкіра + інші матеріали

В принципі всі коректні значення для цих параметрів перелічені в константі materialsLetters в js/gen.js:

	const materialsLetters = {
	    'шкіра': 'I',
	    'шкіра з покриттям': 'G',
	    'текстиль': 'F',
	    'інші матеріали': 'D',
	    'текстиль + інші матеріали': 'E',
	    'текстиль + шкіра': 'H',
	    'шкіра + інші матеріали': 'J'
	};