Розробники часто потребують обміну або зберігання PDF контенту у текстових форматах, таких як JSON, XML, або HTML атрибути. Кодування Base64 також використовується для передачі файлів через API або їх безпечного зберігання в базах даних. Це надає надійний спосіб представлення бінарних даних PDF у вигляді простого тексту, зберігаючи кожен байт для точної реконструкції пізніше. У цьому посібнику ви дізнаєтеся, як конвертувати PDF в Base64 на C# та декодувати його назад у файл PDF.
Aspose.PDF for .NET — потужний конвертер PDF в Base64 на C#
У цій статті ми використовуємо Aspose.PDF for .NET, потужну бібліотеку для створення, читання, редагування та конвертації PDF-файлів у C#. Вона забезпечує повний контроль над вмістом та структурою PDF без необхідності у Adobe Acrobat або будь-яких зовнішніх інструментах. За допомогою Aspose.PDF ви можете легко завантажувати існуючі PDF-документи, змінювати їх, застосовувати налаштування безпеки та експортувати їх у різні формати, включаючи текст у кодуванні Base64.
Будь ласка, завантажте Aspose.PDF for .NET з releases.Ви також можете встановити його з NuGet за допомогою наступної команди:
PM> Install-Package Aspose.PDF
Конвертувати PDF у Base64 в C#
Ви можете перетворити PDF-файл у Base64 безпосередньо з пам’яті, коли потрібно обробити файл перед кодуванням. Цей метод дозволяє вам відкрити PDF за допомогою класу Aspose.Pdf.Document, внести будь-які зміни, а потім зберегти його в MemoryStream. Нарешті, ви можете перетворити потік у рядок Base64, який можна легко передавати через API або зберігати в базі даних.
Слідуйте наведеним крокам, щоб конвертувати PDF-файл в рядок base64 у C#:
- Завантажте PDF за допомогою класу
Document. - Збережіть документ в
MemoryStream. - Перетворіть масив байтів у рядок Base64 за допомогою методу
Convert.ToBase64String(). - Use or return the Base64 string.
Наступний приклад коду демонструє, як конвертувати PDF в строку Base64.
using Aspose.Pdf;
using Aspose.Pdf.Text;
// 1. Завантажте PDF
using var doc = new Document("sample_pdf.pdf");
// Optionally perform edits here, e.g., optimize, redact, secure, etc.
// 2. Зберегти в пам'яті
using var ms = new MemoryStream();
doc.Save(ms);
var bytes = ms.ToArray();
// 3. Конвертувати в Base64
var base64 = Convert.ToBase64String(bytes);
Console.WriteLine(base64.Substring(0, Math.Min(base64.Length, 120)) + "...");
Перетворіть специфічні сторінки PDF у Base64 на C#
Ви можете конвертувати лише частину PDF-документа в Base64, коли потрібно надіслати меншу частину документа, таку як одна сторінка або кілька вибраних сторінок. Цей підхід допомагає зменшити розмір корисного навантаження при передачі даних через API або інші текстові канали.
Слідуйте наведеним крокам, щоб перетворити конкретну сторінку PDF в рядок Base64:
- Завантажте PDF-файл, використовуючи клас
Document. - Створіть новий об’єкт класу
Document, щоб зберігати витягнуті сторінки. - Скопіюйте необхідні сторінки в новий документ.
- Збережіть у
MemoryStreamта закодуйте у Base64.
using System;
using System.IO;
using Aspose.Pdf;
// Відкрийте вихідний PDF з шляху до файлу
using var src = new Document("sample_pdf.pdf");
// Створіть новий пустий PDF, який міститиме лише вибрану сторінку(и).
using var sub = new Document();
// Скопіюйте запитану сторінку в новий документ
sub.Pages.Add(src.Pages[1]);
// Збережіть односторінковий PDF у пам'яті замість диска.
using var ms = new MemoryStream();
sub.Save(ms);
// Конвертуйте байти PDF в пам'яті в рядок Base64.
var base64 = Convert.ToBase64String(ms.ToArray());
// Print a short preview of the Base64 text to the console
Console.WriteLine(base64.Substring(0, Math.Min(base64.Length, 120)) + "...");
Створіть новий PDF документ і перетворіть його в Base64
Ви можете створити свіжий PDF в пам’яті та конвертувати його в Base64 без запису на диск. Це корисно, коли ви генеруєте документи на льоту і потрібно надсилати їх через API, вбудовувати в JSON або HTML, або зберігати в базі даних. У цьому методі ви створюєте Aspose.Pdf.Document, додаєте вміст, зберігаєте його в MemoryStream, а потім перетворюєте байти в рядок Base64.
Слідуйте вказівкам нижче, щоб створити новий PDF документ і конвертувати його в Base64:
- Створіть порожній
Document. - Додайте сторінку і розмістіть текст із
TextFragment. - Збережіть документ у
MemoryStream. - Перетворіть байти потоку в рядок Base64.
using System;
using System.IO;
using Aspose.Pdf;
// 1. Створіть новий PDF документ в пам'яті
var pdf = new Document();
// 2. Додайте сторінку та деякий зразковий вміст
var page = pdf.Pages.Add();
var header = new TextFragment("Hello from Aspose.PDF");
header.TextState.FontSize = 18;
header.TextState.FontStyle = FontStyles.Bold;
page.Paragraphs.Add(header);
var body = new TextFragment("This PDF was generated in memory and then converted to Base64.");
body.TextState.FontSize = 12;
page.Paragraphs.Add(body);
// 3. Зберегти в MemoryStream
using var ms = new MemoryStream();
pdf.Save(ms);
byte[] bytes = ms.ToArray();
// 4. Перетворити в рядок Base64
string base64 = Convert.ToBase64String(bytes);
// 5. За бажанням підготуйте URI даних для браузерів або вставте в JSON
string dataUri = $"data:application/pdf;base64,{base64}";
// Output for demo purposes
Console.WriteLine("Base64 length: " + base64.Length);
Console.WriteLine("Data URI sample (truncated): " + dataUri.Substring(0, Math.Min(dataUri.Length, 80)) + "...");
Convert Base64 to PDF in C#
Ви можете перетворити рядок Base64 назад на файл PDF, коли ваш додаток отримує закодовані дані від клієнта або API. Це корисно, коли вам потрібно відновити оригінальний документ, зберегти його на диску або завантажити його в клас Aspose.Pdf.Document для подальшої обробки, такої як редагування, забезпечення безпеки або вилучення вмісту.
Слідуйте наступним крокам, щоб конвертувати рядок Base64 у документ PDF:
- Завантажте закодований рядок (наприклад, з файлу або API).
- Convert the string into raw PDF bytes.
- Створіть PDF-документ за допомогою об’єкта класу
Documentз декодованими байтами. - Збережіть документ PDF.
Наступний приклад коду показує, як перетворити рядок Base64 назад в документ PDF за допомогою C#:
// Прочитайте текст Base64 з файлу та видаліть зайві пробіли або нові рядки
using System;
using System.IO;
using Aspose.Pdf;
// Read the text file
string base64 = File.ReadAllText("sample-base64.txt").Trim();
// Optional: handle data URI input like "data:application/pdf;base64,AAAA..."
// Виявити та видалити префікс, щоб залишилося лише сире Base64.
const string prefix = "data:application/pdf;base64,";
if (base64.StartsWith(prefix, StringComparison.OrdinalIgnoreCase))
base64 = base64.Substring(prefix.Length);
// Декодуйте рядок Base64 в масив байтів.
byte[] pdfBytes = Convert.FromBase64String(base64);
// Перевірте, завантаживши байти в Aspose.PDF; це викликає помилку, якщо байти не є дійсним PDF.
using var doc = new Document(new MemoryStream(pdfBytes));
// Збережіть відновлений PDF на диску
doc.Save("output.pdf");
Отримайте безкоштовну ліцензію
Ви можете дослідити всі можливості Aspose.PDF for .NET без жодних обмежень, подавши заявку на безкоштовну тимчасову ліцензію. Відвідайте temporary license page , щоб отримати свою ліцензію та випробувати всю потужність API.
Конвертуйте PDF в Base64 онлайн безкоштовно
Якщо вам потрібно миттєво конвертувати PDF-файл у Base64 без написання коду, спробуйте цей безкоштовний онлайн конвертер PDF в Base64.Цей інструмент, що працює в браузері, дозволяє вам завантажити PDF і отримати його Base64-кодований текст за кілька секунд. Жодна установка, реєстрація або додаткові бібліотеки не потрібні. Все працює безпечно у вашому веб-браузері.

PDF File to Base64 String: Додаткові ресурси
Щоб дізнатися більше про роботу з PDF-файлами та кодуванням Base64 за допомогою Aspose.PDF for .NET, ознайомтесь з наступними корисними посібниками та інструментами:
- Дізнайтеся про підтримувані формати файлів, розширені можливості маніпуляцій з PDF та детальні приклади використання API за допомогою Aspose.PDF for .NET Documentation.
- Ознайомтеся з повною бібліотекою класів, методами та властивостями для розробників, які працюють зі створенням, конверсією та кодуванням PDF за допомогою Aspose.PDF API Reference.
- Спробуйте перетворювачі PDF на базі браузера, з’єднувачі, компресори та переглядачі, використовуючи Aspose PDF Apps.
- Досліджуйте практичні приклади, статті з інструкціями та поглиблені посібники з програмування на Aspose.PDF Blog.
PDF до Base64: Поширені запитання
- What is Base64 encoding, and why is it used with PDF files?
Кодування Base64 перетворює бінарні дані, такі як файл PDF, у звичайний текст. Його зазвичай використовують для передачі файлів через текстові системи, такі як JSON, XML або API, без спотворення даних.
- Чи можу я конвертувати лише певну сторінку PDF у Base64?
Так. Aspose.PDF for .NET дозволяє вам витягувати будь-яку сторінку або діапазон сторінок і конвертувати тільки цю частину в Base64, щоб зменшити розмір файлу та час передачі.
- Як я можу декодувати рядок Base64 назад у PDF-файл на C#?
Ви можете використовувати метод Convert.FromBase64String() для отримання масиву байтів, а потім завантажити його в клас Aspose.Pdf.Document або зберегти безпосередньо на диск у вигляді файлу .pdf.
- Чи існує обмеження за розміром при конвертації великих PDF у Base64?
Від Aspose.PDF немає фіксованого обмеження, але великі файли потребують достатньої пам’яті. Використання потоків замість завантаження всього файлу в пам’ять допомагає покращити продуктивність.
- Чи можу я використати цей метод для відправки PDF через API або веб-сервіс?
Так. Строки Base64 ідеально підходять для вбудовування даних PDF в JSON або XML корисні навантаження під час передачі файлів через API або веб-застосунки.
- Чи впливає кодування Base64 на якість або вміст PDF?
Ні. Кодування Base64 лише змінює те, як представляються дані. Розкодований файл буде ідентичний оригінальному PDF без втрати якості чи інформації.
- Як я можу конвертувати декілька PDF файлів у Base64 відразу?
Ви можете перебрати кожен файл, завантажити його за допомогою Aspose.Pdf.Document і конвертувати кожен з них у Base64 окремо. Це добре підходить для пакетної обробки.
- Чи можу я створити новий PDF і безпосередньо перетворити його в Base64 без збереження на диск?
Так. Ви можете створити новий Document в пам’яті, додати вміст, зберегти його в MemoryStream, а потім закодувати його в Base64, немає необхідності створювати фізичний файл.
Висновок
У цій статті ви дізналися, як перетворити PDF-файл на рядок Base64 та декодувати його назад у PDF на C# за допомогою Aspose.PDF for .NET. Ця бібліотека пропонує надійний та багатофункціональний API для роботи з PDF-документами, що робить кодування та декодування Base64 простими для реалізації в будь-якому додатку .NET.
Якщо у вас є які-небудь питання або потрібна допомога, будь ласка, відвідайте наш безкоштовний форум підтримки, наша команда завжди готова допомогти.
