Кодування зображень онлайн
Кодуйте зображення за допомогою API Aspose.SVG for .NET у реальному часі! Завантажте зображення з локальної файлової системи, і ви негайно отримаєте результат як URI даних, джерело зображення Base64 і фонове джерело CSS Base64. Підтримуються SVG, JPG, JPEG, PJP, PJPEG, PNG, BMP, XBM, GIF, TIFF, ICO, IFIF, WEBP та інші формати зображень.Про схему URI
URI даних – це метод вбудовування зображень та інших файлів у веб-сторінки у вигляді рядка тексту на основі кодування Base64. Схема URI даних дозволяє включати будь-які двійкові дані в документи HTML, CSS, JSON або SVG. Наприклад, ви можете вставляти зображення на веб-сторінку так, ніби їх було завантажено із зовнішнього ресурсу, але замість вказівки URL-адреси файлу ви вставляєте вміст зображення, закодований у форматі Base64. Основною перевагою використання URI даних є прискорення завантаження сторінки, оскільки браузеру не потрібно робити додатковий веб-запит для отримання файлу, оскільки зображення вже вбудовано в документ HTML.
Синтаксис URI даних такий: data:[<mime type>][;charset=<charset>][;base64],<encoded data>
.
Файли SVG можуть містити «небезпечні» символи. Векторні зображення можуть мати растр як вбудований вміст або атрибути, значення яких узяті в одинарні або подвійні лапки. Тому необхідна попередня обробка (нормалізація) цього формату. Ви можете використовувати SVG у HTML або CSS через дані URI. Якщо SVG закодовано за допомогою даних URI, він працюватиме в будь-якому браузері.
Як конвертувати SVG у Base64 на C#
Щоб перетворити зображення SVG на рядок Base64, ми використовуємо API Aspose.SVG for .NET, який є багатофункціональний, потужний, простий у використанні API для обробки документів для платформи C#. Ми розглядаємо приклад кодування зображення SVG у Base64 та вбудовування рядка Base64 як URI даних у документ SVG. Ці операції можна виконати за допомогою кількох рядків коду:
Код C# для перетворення SVG у рядок Base64 і вбудовування його у файл SVG
// Open an SVG image
var bytes = File.ReadAllBytes(@"flower.svg");
// Initialize an SVGDocument object
var document = new SVGDocument();
// Create an image element
var img = (SVGImageElement)document.CreateElementNS("http://www.w3.org/2000/svg", "image");
// Convert SVG image to Base64
img.Href.BaseVal = "data:image/svg+xml;charset=utf-8;base64," + Convert.ToBase64String(bytes);
// Add the image element into the SVG document
document.RootElement.AppendChild(img);
// Save the SVG document
document.Save(@"image-base64.svg");
Кроки для перетворення SVG на Base64 у C#
- Відкрийте зображення SVG для конвертації. Використовуйте метод ReadAllBytes(
path
), щоб відкрити зображення SVG і прочитати вміст файлу в масив байтів. - Ініціалізуйте новий екземпляр класу SVGDocument.
- Використовуйте метод
CreateElementNS(namespaceURI, qualifiedName)
класу SVGDocument, щоб створити екземпляр зображення. Простір імен URI
namespaceURI
встановлює посилання на специфікацію W3C SVG.qualifiedName
має містити назву тегa елемента image. - Перетворіть SVG на Base64. Викликайте метод ToBase64String(bytes), щоб перетворити масив 8-розрядних цілих чисел на його еквівалентне рядкове представлення, кодоване цифрами з основою 64.
- Додайте елемент зображення в документ SVG за допомогою методу
AppendChild(
node
). - Скористайтеся методом
Save(
path
), щоб зберегти документ SVG.
Плюси та мінуси URI даних
URI даних дає нам розумний спосіб вставляти зображення на веб-сторінку. Схеми URI можна використовувати різними способами. Але в будь-якому випадку є свої плюси і мінуси.
Переваги:
- Прискорення завантаження сторінки. Браузеру не потрібно робити додатковий веб-запит, щоб отримати файл, оскільки зображення вже вбудовано в документ HTML.
- Поліпшення продуктивності. Браузер потребує менше процесорного часу.
- Веб-сторінки стають незалежними від зовнішніх файлів, завдяки чому ними легко ділитися навіть у режимі офлайн.
Недоліки:
- Розмір кодованих даних Base64 на 1/3 більший за двійкове зображення.
- Кодовані зображення не кешуються браузером і завантажуватимуться кожного разу, коли відвідується така сторінка.
- Кодовані зображення важко редагувати, оскільки спочатку потрібно декодувати рядок Base64.
- Зображення Base64 ніколи не буде проіндексовано Google, оскільки воно не відображається в результатах пошуку зображень.
Онлайн Кодери Base64
Aspose.SVG пропонує безкоштовні онлайн-застосунки для кодування та декодування двійкових даних:
- Base64 Encoders – це набір інструментів, які дозволяють кодувати двійкові дані в різних вихідних форматах: Plain Base64, JSON, XML, URI або CSS.
- Image Base64 Decoder перетворює URI даних, що містить рядок Base64, на зображення, вставляючи рядок URI в елемент керування введенням.
Наші браузерні застосунки працюють на всіх платформах, включаючи Windows, Linux, Mac OS, Android та iOS. Вам не потрібна реєстрація, плагін або встановлення програмного забезпечення. Почніть використовувати наші онлайн-інструменти кодування/декодування Base64 безпечно, надійно та просто!
Приклади використання кодування Base64
Код SVG для вставлення зображення SVG Base64 у документ SVG
<svg xmlns="http://www.w3.org/2000/svg">
<image href="data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iNDUwIiBoZWlna..." alt="Blue flower"/>
</svg>
HTML-код для вставлення зображення Base64 SVG
<body>
<div>
<img src="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDUwIiBoZWlna..." alt="Blue flower">
</div>
</body>
Код CSS для вставлення зображення Base64 SVG як фонового
.class {
background-image: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDUwIiBoZWlna...');
}
Код XML для вставлення зображення Base64 SVG у документ XML
<?xml version="1.0" encoding="UTF-8"?>
<root>
<image mime = "image/svg+xml">PHN2ZyB3aWR0aD0iNDUwIiBoZWlna...</image>
</root>
Код JSON для вставлення зображення Base64 SVG у документ JSON
{
"image": {
"mime": "image/svg+xml",
"data": "PHN2ZyB3aWR0aD0iNDUwIiBoZWlna..."
}
}
FAQ
Aspose.SVG дозволяє конвертувати SVG у рядок Base64 будь-яким способом – онлайн чи програмно. Наприклад, ви можете кодувати SVG у режимі реального часу за допомогою Онлайн Кодера SVG , який перетворює ваші файли швидко та якісно. Завантажте, кодуйте SVG і отримайте результат за кілька секунд! З іншого боку, ви можете використовувати Aspose.SVG for .NET API, щоб програмно перетворити SVG на Base64.
Історично багато форматів передачі та зберігання даних використовують текст замість двійкового коду (HTML, XML, електронна пошта тощо). Що робити, якщо формат передачі даних є текстовим, але вам потрібно передати двійкові дані? Тут на допомогу приходить кодування Base64. Щоб запобігти неправильній інтерпретації двійкових символів під час надсилання даних через Інтернет, необхідно кодувати їх у символи. Деякі типові застосування кодування Base64: схеми даних URI для зображень (CSS, HTML, JavaScript); перенесення зображень та інших двійкових даних у XML; зберігання зображень у базі даних; включення зображень у повідомлення електронної пошти.
Data URI – це найшвидший і найпростіший спосіб вставляти зображення та інші файли на ваші веб-сторінки. Data URI підтримується основними сучасними браузерами: Chrome, Firefox, Safari, Edge, Opera та IE8+.
Base64 – це схема кодування двійкового коду в текст, яка представляє двійкові дані у рядковому форматі ASCII. Кодування Base64 зазвичай використовується, коли необхідно закодувати двійкову інформацію, яку потрібно зберігати та передавати через носій, призначений для роботи з текстовими даними.
Початок роботи з Aspose.SVG for .NET API
Якщо ви зацікавлені в розробці масштабованої векторної графіки та її застосуванні, встановіть наш гнучкий, високошвидкісний Aspose.SVG for .NET API із потужним набором інтерфейсів для C# та інших мов програмування .NET.Встановіть із командного рядка як
nuget install Aspose.SVG
або через консоль диспетчера пакетів Visual Studio за допомогою Install-Package Aspose.SVG
.
Крім того, отримайте офлайн-інсталятор MSI або бібліотеки DLL у ZIP-файлі з
завантажень.
Aspose.SVG for .NET API – це окрема бібліотека, яка не залежить від будь-яке програмне забезпечення для обробки документів SVG.Щоб отримати докладніші відомості про встановлення бібліотеки C# і системні вимоги, зверніться до документації Aspose.SVG.
Інші підтримувані Кодери Base64
Ви можете конвертувати зображення в рядок Base64 – підтримуються формати JPG, PNG, BMP, GIF, TIFF, ICO та SVG: