برای ایجاد PDF از HTML، کتابخانه روبی را منبع باز کنید
Ruby PDF API که به توسعهدهندگان امکان میدهد HTML/CSS را رندر کنند و آن را به صورت PDF با کیفیت بالا تولید کنند، سند PDF را از یک فایل یا URL ارائه شده ایجاد کنند.
انواع مختلف کسب و کار به طور روزانه اسناد مختلفی را ایجاد می کنند. اکثر این اسناد حاوی داده های بسیار محرمانه یا خصوصی هستند که باید محافظت شوند. فرمت سند قابل حمل (PDF) یک روش بسیار مفید و راحت برای ایمن نگه داشتن اطلاعات شخصی شما در حین اشتراک گذاری آن ها در وب است. PDFKit یک کتابخانه Ruby بسیار مفید است که توسعه دهندگان نرم افزار را قادر می سازد فایل های PDF را با استفاده از کدهای ساده HTML/CSS تولید کنند.
استفاده از این کتابخانه بسیار آسان است و از wkhtmltopdf در باطن استفاده می کند که از WebKit برای رندر HTML/CSS و خروجی آن به صورت PDF با کیفیت بالا استفاده می کند. این کتابخانه بسیار انعطاف پذیر است و به کاربران اجازه می دهد اسناد PDF را از URL ارائه شده به راحتی تولید کنند. این کتابخانه دارای چندین ویژگی مهم برای ارائه اسناد PDF مانند تولید PDF از کد HTML، اصلاح PDF، افزودن سبک به PDF، درج هدر و پاورقی، شکستن صفحه جدول و بسیاری موارد دیگر است.
این کتابخانه گزینههای زیادی را برای کنترل نحوه ایجاد فایلهای PDF در برنامههایشان در اختیار کاربران قرار داده است. شما می توانید آن گزینه ها را به صورت جهانی پیکربندی کنید و همچنین آنها را در هر صفحه تنظیم کنید. میتوانید از متا تگهایی با نام خاص در صفحه برای کنترل نحوه رندر شدن HTML صفحه به PDF استفاده کنید.
.
شروع کار با PDFKit
برای نصب PDFKit روی سیستم خود، لطفا دستور زیر را اجرا کنید:
PDFKit را با سنگهای یاقوتی نصب کنید
gem install pdfkit
PDF را از HTML از طریق Ruby تولید کنید
PDFKit کتابخانه روبی منبع باز به توسعه دهندگان نرم افزار امکان می دهد اسناد PDF را از کد HTML در داخل برنامه های خود تولید کنند. شما می توانید از CSS برای اعمال انواع مختلف سبک ها در کد خود استفاده کنید و سپس اسناد PDF را از آن تولید کنید. همچنین می توانید به راحتی اندازه صفحه را به صورت پیش فرض تنظیم کنید که از اندازه A4 استفاده می شود. همچنین می توانید انواع مختلفی از گزینه ها را از طریق تگ های متا انجام دهید. همچنین میتوان کوکیها را به PDFKit ارسال کرد تا یک وبسایت با استفاده از هش خراشیده شود.
ایجاد فایل PDF از طریق PDFKit
# Generate PDF via Ruby
require 'pdfkit'
html = render_to_string(:layout => 'layouts/test_layout' , :action => print_form.html.erb")
kit = PDFKit.new(html)
send_data(kit.to_pdf, :filename => "Form.pdf", :type => 'application/pdf')
اضافه شدن سرصفحه و پاورقی به PDF
کتابخانه PDFKit از اضافه کردن سرصفحه و پاورقی در اسناد PDF آنها تنها با چند خط کد پشتیبانی می کند. شما به راحتی می توانید حاشیه های هدر و پاورقی PDF را تنظیم کنید و می توانید حاشیه هایی را برای آن اعمال کنید. شما می توانید به راحتی هدر و پاورقی را به صورت پویا ایجاد کنید. لطفاً به یاد داشته باشید که کتابخانه فقط یک فایل یا URL را می پذیرد. متن خام را نمی پذیرد. از لینک های شکسته باید اجتناب شود در غیر این صورت نتیجه دلخواه را به همراه نخواهد داشت.
بارگیری و تجزیه اطلاعات PDF از طریق Ruby API
کتابخانه PDF منبع باز PDFKit شامل پشتیبانی از بارگیری و تجزیه فایل های PDF در برنامه های Ruby است. همانطور که توصیه می شود، بارگیری داده ها از فایل های PDF آسان است. توسعه دهندگان همچنین می توانند فایل های PDF را از حافظه تجزیه کنند. بارگذاری داده ها از حافظه به خصوص برای داده های دریافتی از طریق اینترنت یا از یک کتابخانه دیگر بسیار مؤثر است. همانطور که رندر تجزیه را میتوان در حافظه یا فایل انجام داد.
صفحه عنوان یک راهنمای PDF را از طریق Ruby تجزیه کنید
# Render PDF Title Page via Ruby
const renderTitlePage = doc => {
const title = 'PDFKit Guide';
const author = 'By Devon Govett';
const version = `Version ${require('../package.json').version}`;
doc.font('fonts/AlegreyaSans-Light.ttf', 60);
doc.y = doc.page.height / 2 - doc.currentLineHeight();
doc.text(title, { align: 'center' });
const w = doc.widthOfString(title);
doc.h1Outline = doc.outline.addItem(title);
doc.fontSize(20);
doc.y -= 10;
doc.text(author, {
align: 'center',
indent: w - doc.widthOfString(author)
});
doc.font(styles.para.font, 10);
doc.text(version, {
align: 'center',
indent: w - doc.widthOfString(version)
});
doc.addPage();
};
اضافه کردن متن به صفحات PDF موجود از طریق Ruby
کتابخانه PDFKit منبع باز به توسعه دهندگان نرم افزار این قدرت را می دهد که تنها با چند خط کد روبی، متن یا تصاویر را به فایل PDF موجود اضافه کنند. این شامل پشتیبانی از گزینه های متعدد برای سفارشی کردن نمایش متن خروجی است. این کتابخانه شامل پشتیبانی از یک ظاهر طراحی متن، اندازه گیری متن، لیست گلوله، 14 فونت استاندارد و موارد دیگر است. همچنین از بسته بندی خودکار خط پشتیبانی می کند. به این معنی که متن به طور خودکار در حاشیه صفحه پیچیده می شود و در جریان سند زیر هر متن قبلی قرار می گیرد.
از طریق PDFKit، سبک های متن غنی را روی محتوای PDF اعمال کنید
# Rich Tex Support in PDF
doc.fillColor('green')
.text(lorem.slice(0, 500), {
width: 465,
continued: true
}).fillColor('red')
.text(lorem.slice(500));