روش متداول کار با کتابخانهی iTextSharp ، ایجاد شیء Document ، سپس ایجاد PdfWriter برای نوشتن در آن، گشودن سند و ... افزودن اشیایی مانند Paragraph ، PdfPTable ، PdfPCell و غیره به آن است و در نهایت بستن سند. راه میانبری هم برای کار با این کتابخانه وجود دارد و آن هم استفاده از امکانات فضای نام iTextSharp.text.html.simpleparser آن میباشد. به این ترتیب میتوان به صورت خودکار، یک محتوای HTML را تبدیل به فایل PDF کرد. مثال : نمایش یک متن HTML ...
کتابخانهی iTextSharp 5.1.2 هفتهی قبل منتشر شده و ... من هر چقدر سایتی، بلاگی جایی را جستجو کردم که خلاصهای از تغییرات انجام شده آنرا گزارش دهد، چیزی نیافتم. ولی خوب، مطابق روال متداول کتابخانههای سورس باز، حداقل میتوان به change log مرتبط با سورس کنترل آنها مراجعه کرد. مثلا:البته این هم خوب است ولی ایکاش میشد مثلا یک فید هم از این تغییرات تهیه کرد. یک سری از سایتهای هاستینگ مثل CodePlex و GitHub یک چنین فیدهایی را دارند. اما به ن ...
در کتابخانهی iTextSharp به جهت سازگاری با کتابخانهی اصلی، رنگها را بر اساس کلاسی به نام BaseColor تعریف کردهاند؛ که ایکاش به جای اینکار، همه را با کلاس Color فضای نام استاندارد System.Drawing جایگزین میکردند. همین مشکل با فونت هم هست. یک کلاس فونت در فضای نام iTextSharp.text وجود دارد به علاوه کلاس فونت تعریف شده در فضای نام استاندارد System.Drawing دات نت؛ که خیلی سریع میتواند به خطای کامپایل زیر ختم شود:'Font' is an ambiguous ref ...
روش متداول تعریف فونت در iTextSharp به صورت زیر است:public static iTextSharp.text.Font Tahoma()
{
var fontPath = Environment.GetEnvironmentVariable("SystemRoot") + "\\fonts\\tahoma.ttf";
var baseFont = BaseFont.CreateFont(fontPath, BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
return new Font(baseFont);
}
از آنجائیکه خصوصا برای متون فارسی نیاز است تا به ازای هر المان کوچکی این فونت تنظیم شود و در غیر اینصورت متنی نمایش داده نخوا ...
فرض کنید جدولی دارید با چند ستون محدود که نتیجهی نهایی گزارش آن مثلا 100 صفحه است. جهت صرفه جویی در کاغذ مصرفی شاید بهتر باشد که این جدول را به صورت چند ستونی مثلا 5 ستون در یک صفحه نمایش داد؛ چیزی شبیه به شکل زیر:روش انجام اینکار به کمک iTextSharp به صورت زیر است:using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
using System.Diagnostics;
class Program
{
static void Main(string[] args)
{
...
عموما هنگام تهیه یک مستند یا گزارش، هرچقدر حجم نهایی کمتر باشد، توزیع آن سادهتر خواهد بود. در اینجا اینطور به نظر میرسد که اگر مثلا از تصاویری با فرمت jpg یا png استفاده کنیم، کمترین حجم نهایی را میتوان بدست آورد. اما حین استفاده از iTextSharp شما با استفاده از تصاویری با فرمت BMP بهترین نتیجه را خواهید گرفت: کمترین حجم و بهترین کیفیت! البته یک نکتهی ریز دارد که باید رعایت شود:using (var pdfDoc = new Document(PageSize.A4))
{
va ...
فرض کنید میخواهیم تصویری را در پس زمینهی تمام صفحات pdf تولیدی توسط iTextSharp قرار دهیم. برای این منظور شبیه به مطلب «نمایش تعداد کل صفحات در iTextSharp» میتوان از رخدادهای صفحات استفاده کرد. در متد رویداد گردان OnOpenDocument، یک قالب را به اندازهی یک صفحهی متنی تهیه میکنیم. سپس در متد OnStartPage، این قالب را به تمام صفحات اضافه خواهیم کرد. در حقیقت فضایی را به این شکل رزرو میکنیم و در نهایت در متد OnCloseDocument ، تصویر مورد ن ...
یکی از نیازهای تهیه یک گزارش خوب، تکرار سرستونها در صفحات مختلف است. شاید در ابتدا این ایده مطرح شود که مثلا میخواهیم 25 ردیف را در هر صفحه نمایش دهیم. بر همین اساس میتوان هر 25 ردیف یکبار، یک سطر footer و در ادامه در صفحه بعد یک سطر header را اضافه کرد و همینطور الی آخر. مهمترین ایراد این روش آن است که الزامی ندارد که واقعا 25 ردیف در یک صفحه جا شوند. عموما بر اساس اندازهی محتوای نمایش داده شده، ممکن است یک صفحه 20 ردیف شود، صفحهای د ...
مشخصات یک گزارش خوب عموما به شرح زیر است:1- باید هر سطر گزارش شماره ردیف داشته باشد. (باید امکان ارجاع به هر سطر در صورت بروز مشکل میسر باشد)2- باید در هر صفحه، شماره صفحه و تعداد کل صفحات ذکر شود. (اگر چاپ شد بر این اساس بتوان ارتباط بین صفحات را یافت)3- در هر صفحه باید تاریخ و ساعت روز تهیه گزارش حتما ذکر شود. (بعدا جهت رفع اختلافات لازم میشود. مثلا میگویند این عدد اشتباه است. اما واقعا این عدد در زمان تهیه گزارش درست بوده، اما الان بر ...
آشنایی با صفحه بندی در iTextSharp : [+]تعریف هدر و فوتر: [+]افزودن متن ساده در iTextSharp: [+]کار با فونتهای مختلف در iTextSharp: [+]نحوهی افزودن جدول در iTextSharp: [+]ترسیم اشکال گرافیکی با iTextSharp: [+]کار با تصاویر در iTextSharp: [+] و [+]امکان تبدیل HTML به PDF در iTextSharp: [+]، [+]، [+] و [+]نحوهی تعریف لینک در iTextSharp: [+]نحوهی تعریف لیست در iTextSharp: [+]افزودن نمودار به کمک کنترلهای چارت مایکروسافت در iTextSharp: [+]ا ...