Создание PDF-файлов с помощью бесплатного JavaScript API
Open Source JavaScript Библиотека позволяет генерировать, редактировать и печатать PDF документы, добавлять таблицы, изображения, & заголовки или футеры к PDF.
Поиск простой в использовании библиотеки для создания и управления PDF документа на стороне сервера, а также на стороне клиента. PDFMake-Rapper может быть отличным выбором для обработки ваших PDF документов внутри ваших JavaScript приложений с меньшими усилиями и меньшими затратами. Это чистая библиотека с открытым исходным кодом JavaScript, которая дает разработчикам программного обеспечения возможность генерировать полезные PDF документы и отчеты без каких-либо внешних зависимостей.
Библиотека PDFMake-Wrapper включает поддержку нескольких важных базовых, а также расширенных функций, связанных с созданием PDF-документов и управлением ими, таких как перенос строк, выравнивание текста, использование полей, создание и применение стилей, использование таблиц и столбцов, клиент/ печать PDF на стороне сервера, вставка верхних и нижних колонтитулов страниц, количество страниц, настраиваемые разрывы страниц, встраивание шрифтов, оглавление, извлечение метаданных PDF и многое другое. Это библиотека-оболочка, которая предоставляет функции для простой и быстрой разработки PDF-документов. Одной из замечательных особенностей PDFMake-Wrapper является использование декларативного подхода, который дает пользователям возможность легко сосредоточиться на том, чего они хотят достичь. Библиотека очень стабильна и может быть легко использована как на стороне клиента, так и на стороне сервера.
Начало с PDFMake-Rapper
PDFMake-Rapper доступен в num, Вы можете легко скачать его и установить его на своей машине. Для использования этой библиотеки необходимо установить эти три пакета.
Установка PDFMake через num
npm install pdfmake --save
@types/pdfmake содержит типы для pdfmake, чтобы избежать ошибок.
npm install @types/pdfmake --save-dev
Установка pdfmake-wrapper через num <
npm install pdfmake-wrapper --save
Создавайте PDF-документы и управляйте ими с помощью JavaScript
Библиотека PDFMake-Wrapper с открытым исходным кодом — отличный выбор для создания PDF-документов на JavaScript. Это позволяет разработчикам программного обеспечения создавать PDF-документы в браузере (на стороне клиента) и в Node.js (на стороне сервера) с помощью всего пары строк кода JavaScript. После создания файла PDF вы также можете изменить его, а также вставить текст, встроить шрифты и графику, выбрать и применить различные стили, вставить внешние изображения и многое другое. Также можно создать файл PDF из HTML, но для этого вам понадобится html2canvas.
Как создать PDF файлов от HTML до JavaScript
html2canvas(document.getElementById('exportthis'), {
onrendered: function (canvas) {
var data = canvas.toDataURL();
var docDefinition = {
content: [{
image: data,
width: 500,
}]
};
pdfMake.createPdf(docDefinition).download("Score_Details.pdf");
}
});
Leaders & Footer Addition to PDF File via JavaScript
Библиотека с открытым исходным кодом PDFMake-Rapper позволяет разработчикам программного обеспечения очень легко добавлять заголовок, а также ногой в свои PDF документов с несколькими строками кода. Также можно использовать изображение внутри заголовка / футера. Можно также добавить другой контент, такой как номер страницы, логотип компании, имя автора, количество страниц, размер страницы и т.д. в раздел заголовка/схемы. Также можно применять различные виды стиля и форматирования. Лучше использовать встроенный стиль, когда это необходимо в заголовке или подножке.
Вставить & управлять таблицами внутри PDF через S-библиотеку
Библиотека PDFMake-Rapper полностью поддерживает использование таблиц в PDF документе. Он предоставляет различные полезные функции для управления сложными таблицами внутри JavaScript приложений, такие как создание новых таблиц с нуля, добавление заголовков для таблиц, проживание существующих таблиц, добавление формата для заголовков, вставка новых клеток, объединение столбцов и клеток, применение стилей к таблицам и так далее.
Как объединить колонны в PDF таблицах через S API?
new Table([
[
new Txt('Name').bold().end,
new Txt('Address').bold().end,
new Txt('Email').bold().end,
new Txt('Phone').bold().end
],
[new Cell(new Txt('A').end).colSpan(4).end, null, null, null],
['Anastasia', 'Some direction 1', 'anastasia@domain.com', '123 4566 187'],
['Alexander', 'Some direction 2', 'alexander@domain.com', '123 4566 187'],
[new Cell(new Txt('C').end).colSpan(4).end, null, null, null],
['Clementine', 'Some direction 3', 'clementine@domain.com', '123 4566 187'],
['Chelsey', 'Some direction 4', 'chelsey@domain.com', '123 4566 187'],
[new Cell(new Txt('N').end).colSpan(4).end, null, null, null],
['Nicholas', 'Some direction 5', 'nicholas@domain.com', '123 4566 187'],
])
.widths(...)
.heights(...)
.end;
Рисование векторов внутри PDF через JavaScript API
Библиотека P PDFMake-Rapper позволяет разработчикам программного обеспечения с легкостью рисовать векторные формы внутри PDF документов. Чтобы нарисовать векторы в PDF файлах, необходимо создать холст, где будут нарисованы векторы. Пожалуйста, помните, что заказ имеет значение на холсте, последний вектор будет на вершине других. После создания вы также можете изменить его в соответствии с вашими потребностями и заменить его с легкостью.
Линия внутри PDF через JavaScript
import { Line } from '../../../src';
describe('Line definition class', () => {
it('should be instanced', () => {
const line = new Line(10, 10);
expect( line.end ).toBeTruthy();
});
it('should be a simple line', () => {
const line = new Line(10, 10).end;
expect( line ).toEqual({
type: 'line',
x1: 10,
y1: 10,
x2: 10,
y2: 10
});
});
it('should be a line vector with full properties', () => {
const line = new Line(10, 10)
.color('red')
.dash(5)
.fillOpacity(0.1)
.lineColor('blue')
.lineWidth(3)
.linearGradient(['green', 'yellow'])
.lineCap('round')
.end;
expect( line ).toEqual({
type: 'line',
x1: 10,
y1: 10,
x2: 10,
y2: 10,
color: 'red',
dash: { length: 5 },
fillOpacity: 0.1,
lineColor: 'blue',
lineWidth: 3,
linearGradient: ['green', 'yellow'],
lineCap: 'round'
});
});
});