Tcpdf - як захистити від копіювання текст в pdf файлі ремесло з wordpress

а) робота з російськими шрифтами;
б) парсинг html-потоку з картинками, таблицями та іншими html-елементами;
в) додаткове примітивне форматування текстових даних (колір, шрифт і т.д.);
г) захист документа;
д) невеликий розмір бібліотеки.

В інтернеті є багато різних бібліотек, але тільки TCPDF пройшла через список моїх вимог. Що стосується розміру бібліотеки, то тут, звичайно, TCPDF не зовсім відповідала вимогам. Але як я зрозумів пізніше, значну частину бібліотеки займали файли зі шрифтами. Тому вимога за розміром вже було не таким критичним. Пояснювати істину, що чим більше шрифтів, тим краще, думаю, буде зайвим.

Корисні функції

Про те, як використовувати бібліотеку можна прочитати на сайті розробників. до того ж там є готові робочі приклади. в яких дуже докладно описуються стандартні випадки використання бібліотеки. Таким чином, крок за кроком можна розібратися з основними характеристиками і можливостями TCPDF. Тому в своїй статті я розповім тільки про ті функції, опис яких я не знайшов ні на сайті розробника, ні на інших сайтах в інтернеті.

Сьогодні мова піде про функції захисту PDF-файлу і способах виведення файлу в браузері.

Захист PDF-файлу

Надійність всього методу захисту, який я описав вище, я зараз обговорювати не буду. При великому бажанні і спеціальні навички, захист від копіювання зламується на раз-два-три. Але, тим не менш, це самий простий і доступний метод захисту інформації від копіювання. Такий захист створить чимало проблем на шляху посереднього «копі-Пастера».

Захист PDF-документа в бібліотеці TCPDF виконується однією командою з рядом параметрів:

Більш докладний список параметрів можна побачити, якщо відкрити головний вихідний файл бібліотеки «/tcpdf/tcpdf.php». Вміст функції описується, починаючи з рядка №10878.

Шматок з робочого коду:

Як видно, спочатку виконується ініціалізація класу. Потім відбувається формування заголовка PDF-документа. А також на цьому етапі створюється захист для документа.

Не рекомендую встановлювати «Пароль користувача», оскільки в такому випадку відвідувач не зможе прочитати завантажений PDF-файл, якщо не знатиме пароль. Рекомендую залишити цей параметр порожнім.

Висновок PDF-файлу

У бібліотеці TCPDF існує кілька способів висновків PDF-файлу, але я розповім тільки про двох, які найбільше, на мою думку, корисні.

Перший спосіб - висновок сформованого PDF-документа на сторінку браузера.В цьому випадку браузер, володіючи модулем для читання файлів у форматі PDF, виводить документ в своєму окремому вікні або вкладці.

Другий спосіб - завантаження браузером сформованого PDF-документа, в папку на комп'ютері користувача. Тобто, браузер відразу запитує у відвідувача куди (в яку папку на диску) виконати збереження pdf-файлу.

Управління висновком PDF-документа в бібліотеці TCPDF виконується однією командою:

Два приклади з робочого коду:

У висновку невелике спостереження ...

Насправді, висновок за першим способом набагато краще, так як користувач відразу бачить, що він зберігає в своєму комп'ютері, але є один нюанс. Вся справа в тому, що за першим способом документ успішно відкривається і читається у всіх браузерах окрім Mozilla Firefox. Браузер Firefox. з незрозумілих мені причин, не показує російських букв. Таке відбувається тільки з російськими шрифтами. Розбиратися з якими шрифтами і чому так відбувається вже сил немає, тому все залишиться на своїх місцях до тих часів покаразработчікі Firefox не виправлять щось в своєму браузері або покаразработчікі TCPDF не виправлять щось в коді своєї бібліотеки. Звичайно, є ще третій спосіб: розібратися в исходниках TCPDF самому і усунути ошібку.Но це вже вирішувати кожному програмісту самостійно.

висновок

Бажаю удачі в роботі з TCPDF. Сподіваюся, кожен PHP-програміст знайде для себе цю бібліотеку корисної і зручною.

питання читачеві