حذف لایههای جدید اضافه شده به فایلهای PDF توسط iTextSharp
جمعه 18 مرداد 1392حذف لایههای جدید اضافه شده به فایلهای PDF توسط iTextSharp <br/> شاید یک سری از Ebookهای PDF ایی را دیده باشید که سایتهای ثالث، آنها را پس از افزودن لایهای متنی، مثلا در ذیل تمام صفحات به همراه آدرس وب سایت خودشان، باز انتشار میدهند. در مطلب جاری قصد داریم، نحوه حذف این لایههای اضافی را توسط iTextSharp بررسی کنیم.
شاید یک سری از Ebookهای PDF ایی را دیده باشید که سایتهای ثالث، آنها را پس از افزودن لایهای متنی، مثلا در ذیل تمام صفحات به همراه آدرس وب سایت خودشان، باز انتشار میدهند. در مطلب جاری قصد داریم، نحوه حذف این لایههای اضافی را توسط iTextSharp بررسی کنیم.
یافتن و حذف لایههای اضافه شده به صفحات یک فایل PDF
برای آشنایی با ساختار سطح پایین لایههای اضافه شده نیاز است به برنامه iText Rups مراجعه کنیم.
همانطور که مشاهده میکنید، برای رسیدن به لایهای که حاوی متن اضافه شده به ذیل تمام صفحات است، نیاز است ابتدا صفحات را گشوده و سپس CONTENTS آنها را استخراج کنیم. در این CONTENTS کلیه streamهای موجود را بررسی و هر کدام که حاوی متن مورد نظر ما بودند، یافته و سپس آن استریم را با مقدار دهی طول آن به صفر، حذف کنیم. روش کار را در متد ذیل مشاهده میکنید:
در این متد watermarkedFile همان فایل اصلی دارای لایههای اضافی است. Text متنی است که در استریمهای صفحات به دنبال آن خواهیم گشت و unwatermarkedFile نام و مسیر فایل تصحیح شده نهایی است که قرار است تولید شود.
یافتن و حذف لایههای اضافه شده به صفحات یک فایل PDF
برای آشنایی با ساختار سطح پایین لایههای اضافه شده نیاز است به برنامه iText Rups مراجعه کنیم.
همانطور که مشاهده میکنید، برای رسیدن به لایهای که حاوی متن اضافه شده به ذیل تمام صفحات است، نیاز است ابتدا صفحات را گشوده و سپس CONTENTS آنها را استخراج کنیم. در این CONTENTS کلیه streamهای موجود را بررسی و هر کدام که حاوی متن مورد نظر ما بودند، یافته و سپس آن استریم را با مقدار دهی طول آن به صفر، حذف کنیم. روش کار را در متد ذیل مشاهده میکنید:
- C#.net
- 4k بازدید
- 1 تشکر