1. محصولات
  2.   PDF
  3.   JavaScript
  4.   PDFMake-Wrapper
 
  

ایجاد فایل‌های PDF از طریق API جاوا اسکریپت رایگان

کتابخانه جاوا اسکریپت منبع باز اجازه می دهد تا اسناد PDF را تولید، ویرایش و چاپ کنید، جداول، تصاویر، و سرصفحه ها یا پاورقی ها را به PDF اضافه کنید.

به دنبال یک کتابخانه با کاربری آسان برای ایجاد و مدیریت اسناد PDF در سمت سرور و همچنین سمت سرویس گیرنده هستید. PDFMake-Wrapper می تواند یک انتخاب عالی برای مدیریت اسناد PDF شما در برنامه های جاوا اسکریپت با تلاش کمتر و هزینه کمتر باشد. این یک کتابخانه جاوا اسکریپت خالص منبع باز است که به مهندسان نرم افزار این امکان را می دهد که اسناد و گزارش های PDF مفید را بدون هیچ گونه وابستگی خارجی تولید کنند.

کتابخانه PDFMake-Wrapper شامل پشتیبانی از چندین ویژگی مهم اساسی و همچنین پیشرفته مرتبط با ایجاد و مدیریت اسناد PDF است، مانند بسته بندی خط، ترازبندی متن، استفاده از حاشیه، ایجاد و اعمال سبک، استفاده از جداول و ستون ها، مشتری/ چاپ PDF سمت سرور، درج سرصفحه و پاورقی صفحه، تعداد صفحات، شکستگی صفحه سفارشی، جاسازی فونت، فهرست محتوا، استخراج فراداده PDF و بسیاری موارد دیگر. این یک کتابخانه بسته بندی است که قابلیت هایی را برای توسعه اسناد PDF به روشی آسان و سریع تر ارائه می دهد. یکی از ویژگی‌های عالی PDFMake-Wrapper این است که یک رویکرد اعلامی را اتخاذ کرده است که به کاربران این امکان را می‌دهد تا به راحتی روی آنچه می‌خواهند به دست آورند تمرکز کنند. این کتابخانه بسیار پایدار است و به راحتی در سمت مشتری و همچنین سرور قابل استفاده است.

Previous Next

شروع کار با PDFMake-Wrapper

PDFMake-Wrapper در npm در دسترس است، شما به راحتی می توانید آن را دانلود و بر روی دستگاه خود نصب کنید. برای استفاده از این کتابخانه باید این سه بسته را نصب کنید.

PDFMake را از طریق npm نصب کنید

npm install pdfmake --save

@types/pdfmake شامل انواع pdfmake برای جلوگیری از خطاهای تایپی است.

npm install @types/pdfmake --save-dev

نصب pdfmake-wrapper از طریق npm<

npm install pdfmake-wrapper --save

ایجاد و مدیریت اسناد PDF از طریق جاوا اسکریپت

کتابخانه متن باز PDFMake-Wrapper یک انتخاب عالی برای تولید اسناد PDF در جاوا اسکریپت است. این به توسعه دهندگان نرم افزار اجازه می دهد اسناد PDF را در مرورگر (سمت سرویس گیرنده) و در Node.js (سمت سرور) تنها با چند خط کد جاوا اسکریپت ایجاد کنند. پس از ایجاد فایل PDF، می‌توانید آن را تغییر دهید و همچنین متن را درج کنید، فونت‌ها و گرافیک‌ها را جاسازی کنید، سبک‌های مختلف را انتخاب و اعمال کنید، تصاویر خارجی را درج کنید و موارد دیگر. همچنین امکان ایجاد یک فایل PDF از HTML وجود دارد، اما برای آن به html2canvas نیاز دارید.

نحوه ایجاد فایل PDF از طریق HTML از طریق جاوا اسکریپت


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");
  }
});

اضافه شدن سرصفحه و پاورقی به فایل PDF از طریق جاوا اسکریپت

کتابخانه متن باز PDFMake-Wrapper این امکان را برای توسعه دهندگان نرم افزار بسیار آسان می کند تا تنها با چند خط کد، سرصفحه و همچنین پاورقی را در اسناد PDF خود اضافه کنند. همچنین امکان استفاده از یک تصویر در داخل قسمت هدر/فوتر نیز وجود دارد. همچنین می توان محتوای دیگری مانند شماره صفحه، لوگوی شرکت، نام نویسنده، تعداد صفحات، اندازه صفحه و غیره را به قسمت سرصفحه/پانویس اضافه کرد. همچنین امکان اعمال انواع مختلف استایل و قالب بندی وجود دارد. بهتر است هر زمان که نیاز بود در قسمت سرصفحه یا پاورقی از استایل درون خطی استفاده کنید.

درج و مدیریت جداول در PDF از طریق JS Library

کتابخانه PDFMake-Wrapper پشتیبانی کاملی را برای استفاده از جداول در اسناد PDF ارائه کرده است. این ویژگی های مفید مختلفی را برای مدیریت جداول پیچیده در برنامه های جاوا اسکریپت فراهم می کند، مانند ایجاد جداول جدید از ابتدا، اضافه کردن هدر برای جداول، تغییر اندازه جداول موجود، افزودن قالب به هدر، درج سلول های جدید، ترکیب ستون ها و سلول ها، اعمال سبک ها در جداول، و غیره

چگونه می توان ستون ها را در جداول PDF از طریق JS 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;

از طریق JavaScript API وکتورها را در داخل PDF بکشید

کتابخانه P PDFMake-Wrapper توسعه دهندگان نرم افزار را قادر می سازد تا اشکال برداری را در داخل اسناد PDF به راحتی ترسیم کنند. برای ترسیم وکتورها در فایل‌های PDF، باید یک بوم ایجاد کنید که در آن وکتورها ترسیم می‌شوند. لطفاً به یاد داشته باشید که ترتیب بر روی بوم مهم است، آخرین بردار بالای بقیه خواهد بود. پس از ایجاد، می توانید اندازه آن را مطابق با نیازهای خود تغییر دهید و به راحتی آن را جایگزین کنید.

از طریق جاوا اسکریپت داخل PDF خط بکشید

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'
        });
    });
});
 فارسی