Кодувати PDF у Base64
- Панель керування
- Документація
- API
Кодувати PDF у Base64
Base64 - це кодування, яке представляє бінарні дані у вигляді ASCII-тексту (64 символи: A-Z, a-z, 0-9, плюс два додаткові символи). PDF-файл, який є бінарним за природою, не можна вставити безпосередньо в HTML-email, JSON-payload або XML-атрибут: його спочатку треба перетворити у текст. Наш інструмент приймає ваш PDF-файл та повертає його представлення Base64, готове до копіювання.
Для деталей про Base64 і формат Data URI загалом, дивіться наш кодувальник Base64 тексту, який детально охоплює принципи.
Навіщо кодувати PDF у Base64?
- Вбудувати PDF в HTML-email: деякі поштові клієнти приймають посилання Data URI або вкладення, закодовані inline у MIME.
- Зберігати PDF у текстовому полі бази даних (стовпець
TEXTабоVARCHAR), коли прикладне обмеження забороняє бінарний тип (BLOB). - Передати PDF у JSON-payload API: JSON не підтримує бінарні дані, тому будь-який файл повинен передаватися у Base64.
- Вбудувати PDF у URL data: рідкісне використання, що слід зарезервувати для дуже малих файлів, оскільки URL мають обмеження довжини (зазвичай від 2000 до 8000 символів залежно від браузера та сервера).
Формат Data URI для PDF
URL типу Data URI вбудовує вміст PDF безпосередньо в URL:
data:application/pdf;base64,JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIFI...
Префікс data:application/pdf;base64, повідомляє браузеру MIME-тип і кодування. Ви можете вставити цей URL безпосередньо у адресний рядок сучасного браузера для відкриття PDF або помістити його у атрибут src елемента <iframe> або <embed>.
Конкретні випадки використання
- Електронні підписи: більшість API підписання (DocuSign, Yousign тощо) приймають або вимагають PDF у Base64 у тілі JSON запиту.
- Резервні копії та архівування: серіалізувати PDF у JSON-експорт або версіонований текстовий файл у git (слід уникати для великих обсягів, але зручно для тестових fixtures).
- Автоматизовані тести: вбудувати референсний PDF безпосередньо в юніт-тест без залежності від зовнішнього файлу.
- Клієнтські експорти: згенерувати PDF на стороні сервера, повернути його у Base64 у JSON-відповіді, клієнт декодує та завантажує без додаткового HTTP-виклику.
Недоліки, які слід знати
- Надлишок розміру: Base64 додає приблизно 33% до об'єму. PDF розміром 1 МБ стає рядком 1,37 МБ у Base64.
- Без HTTP-кешу: PDF, вбудований як Data URI у HTML-сторінку, перезавантажується при кожному завантаженні, на відміну від файлу, що обслуговується з класичного URL з заголовками кешу.
- Обмеження розміру: пам'ять браузера, максимальний розмір POST на стороні сервера (
upload_max_filesizeіpost_max_sizeу PHP) та квоти бази даних (розмір рядка MySQL, наприклад) можуть швидко бути перевищені для великих PDF. - Не підходить для великих файлів: понад кількох МБ, надавайте перевагу виділеному сховищу (S3, диск) та передавайте URL замість закодованого вмісту.
Як користуватися інструментом
- Натисніть на поле завантаження та виберіть ваш PDF-файл.
- Інструмент кодує бінарний вміст у Base64 та відображає результат.
- Ви можете обрати включати чи ні префікс
data:application/pdf;base64,залежно від вашого випадку використання (з префіксом для Data URI, без префіксу для JSON-payload). - Скопіюйте рядок та вставте туди, де вам потрібно.
Часті запитання
Який максимальний розмір PDF прийнятий?
Обмеження залежить від конфігурації сервера. На практиці залишайтеся нижче кількох МБ для збереження зручного досвіду. Понад цього розміру браузер сповільнюється, буфер обміну перенасичується, а отримувачі (email, JSON, база даних) ризикують відхилити навантаження.
Чи сумісний PDF Base64 з поштовими клієнтами (Gmail, Outlook)?
Як вкладення, закодоване inline у MIME-повідомленні, так: це навіть стандартний механізм електронної пошти. Натомість, як Data URI у HTML-тілі повідомлення (<a href="data:..."> або <iframe>), більшість поштових клієнтів блокують або переписують ці URL з міркувань безпеки. Надавайте перевагу класичному вкладенню.
В чому різниця з зашифрованим PDF?
Кодування у Base64 - це не шифрування: рядок залишається читабельним і тривіально декодується будь-ким. Зашифрований PDF (пароль власника або користувача) залишається зашифрованим навіть після кодування Base64: кодування і шифрування є двома незалежними операціями.
Чи можна виконати зворотну операцію?
Так: використовуйте наш декодер PDF Base64 для перетворення рядка Base64 у завантажуваний PDF-файл.
Чи надсилається мій PDF на ваші сервери?
Кодування обробляється на стороні сервера під час запиту, після чого файл звільняється. Ніякого постійного зберігання не відбувається. Для особливо чутливих PDF надавайте перевагу локальній обробці з офлайн-інструментом.
Приклад запиту
curl -X POST https://cdrn.fr/api/v1/tools/base64-pdf-encoder/execute \
-F "file=@/path/to/file"
Схема вхідних даних
| Поле | Тип | Обов'язкове | За замовчуванням |
|---|---|---|---|
file |
file | ✓ | – |
цей інструмент очікує файл - використовуйте Content-Type multipart/form-data замість application/json
Точки доступу
GET https://cdrn.fr/api/v1/tools- перелічує всі доступні інструментиGET https://cdrn.fr/api/v1/tools/base64-pdf-encoder- отримує схему цього інструментуPOST https://cdrn.fr/api/v1/tools/base64-pdf-encoder/execute- виконує цей інструмент з JSON-payload