Якщо вам потрібна висока швидкість і точність перетворення зображень у формат PDF, ця стаття вам дуже допоможе. Тому що в цій статті ви дізнаєтесь, як легко конвертувати зображення у PDF на C#. Ми детально розглянемо, як конвертувати JPG у PDF, PNG у PDF, TIFF у PDF, BMP у PDF та EMF у PDF.

C# Image to PDF Converter API – встановлення

Ми будемо виконувати перетворення цих форматів зображень у PDF за допомогою API Aspose.PDF for .NET. Ви можете завантажити його з розділу Releases або через NuGet Gallery за допомогою такої команди:

Install-Package Aspose.Pdf -Version 20.9.0

Отже, на даний момент API успішно встановлено. Давайте перейдемо до вивчення різних випадків використання:

Перетворення JPG на PDF на C#

Ви можете легко конвертувати зображення JPG у PDF, виконавши такі дії:

  1. Ініціалізація об’єкта класу Document
  2. Додайте нову сторінку до документа PDF
  3. Завантажте зображення JPG і додайте до абзацу
  4. Зберегти вихідний PDF

Наведений нижче фрагмент коду показує, як конвертувати зображення JPG у PDF за допомогою C#:

// Завантажити вхідний файл JPG
String path = dataDir + "Aspose.jpg";

// Ініціалізація нового документа PDF
Document doc = new Document();

// Додати порожню сторінку в порожній документ
Page page = doc.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
image.File = (path);

// Додати зображення на сторінку
page.Paragraphs.Add(image);

// Збережіть вихідний PDF-файл
doc.Save(dataDir + "ImagetoPDF.pdf");

Нижче наведено скріншот перетворення JPG у PDF:

Зображення в PDF

Однак на цьому знімку екрана ви можете помітити, що зображення перетворено на сторінку PDF, але у вихідному документі PDF застосовано стандартні розміри сторінки та поля. Aspose.PDF for .NET API дозволяє керувати розмірами сторінки та полями, що допомагає створювати PDF-файл того самого розміру, що й зображення. Переходимо до вивчення цієї функції:

Зображення C# у PDF – однакові висота та ширина сторінки

Продовжуючи цей приклад із наведеного вище випадку використання, ви можете помітити більший розмір сторінки на наведеному вище знімку екрана. Давайте дізнаємося, як конвертувати зображення у PDF з тією ж висотою та шириною, що й сторінка. Ми отримаємо розміри зображення та відповідно встановимо розміри сторінки документа PDF за допомогою наведених нижче кроків:

  1. Завантажити вхідний файл зображення
  2. Отримайте висоту та ширину зображення
  3. Встановити висоту, ширину та поля сторінки
  4. Збережіть вихідний файл PDF

У наведеному нижче фрагменті коду показано, як перетворити зображення на PDF із тією самою висотою та шириною сторінки за допомогою C#:

// Завантажити вхідний файл зображення JPG
String path = dataDir + "Aspose.jpg";
System.Drawing.Image srcImage = System.Drawing.Image.FromFile(path);

// Прочитайте висоту вхідного зображення
int h = srcImage.Height;

// Прочитайте висоту вхідного зображення
int w = srcImage.Width;

// Ініціалізуйте новий документ PDF
Document doc = new Document();

// Додайте порожню сторінку
Page page = doc.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
image.File = (path);

// Встановіть розміри сторінки та поля
page.PageInfo.Height = (h);
page.PageInfo.Width = (w);
page.PageInfo.Margin.Bottom = (0);
page.PageInfo.Margin.Top = (0);
page.PageInfo.Margin.Right = (0);
page.PageInfo.Margin.Left = (0);
page.Paragraphs.Add(image);

// Збережіть вихідний PDF-файл
doc.Save(dataDir + "ImagetoPDF_HeightWidth.pdf");

Тож ви можете помітити різницю в розмірах сторінок, створених за допомогою оновленого фрагмента коду:

Нарешті, ви можете помітити, що розмір сторінки точно відповідає розмірам вхідного зображення, і більше не встановлюються стандартні поля сторінки.

Перетворення C# PNG у PDF

Формат зображень PNG популярний завдяки своїм функціям порівняно із зображеннями JPG. Наприклад, зображення PNG підтримують прозорість. По-перше, давайте конвертуємо PNG у PDF за допомогою наведених нижче кроків:

  1. Завантажити вхідне зображення PNG
  2. Прочитайте значення висоти та ширини
  3. Створіть новий документ і додайте сторінку
  4. Встановити розміри сторінки
  5. Зберегти вихідний файл

Крім того, наведений нижче фрагмент коду показує, як конвертувати PNG у PDF за допомогою C# у ваших програмах .NET:

// Завантажити вхідний файл PNG
String path = dataDir + "Aspose.png";
System.Drawing.Image srcImage = System.Drawing.Image.FromFile(path);
int h = srcImage.Height;
int w = srcImage.Width;

// Ініціалізація нового документа
Document doc = new Document();
Page page = doc.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
image.File = (path);

// Встановіть розміри сторінки
page.PageInfo.Height = (h);
page.PageInfo.Width = (w);
page.PageInfo.Margin.Bottom = (0);
page.PageInfo.Margin.Top = (0);
page.PageInfo.Margin.Right = (0);
page.PageInfo.Margin.Left = (0);
page.Paragraphs.Add(image);

// Зберегти вихідний PDF
doc.Save(dataDir + "ImagetoPDF.pdf");

Перетворення TIFF на PDF за допомогою C#

Зображення TIFF відрізняється від звичайних форматів JPEG, PNG або інших форматів тим, що зображення TIFF може містити кілька кадрів із різними зображеннями. Також підтримується формат файлу Aspose.PDF, будь то однокадрове або багатокадрове зображення TIFF. Тож ви можете конвертувати зображення TIFF у PDF у своїх програмах .NET. Тому ми розглянемо приклад перетворення багатосторінкового зображення TIFF у багатосторінковий PDF-документ із зазначеними нижче кроками:

  1. Створіть екземпляр класу Document.
  2. Завантажити вхідне зображення TIFF
  3. Отримайте FrameDimension фреймів
  4. Додайте нову сторінку для кожного кадру
  5. Нарешті, збережіть зображення на сторінках PDF

Крім того, наведений нижче фрагмент коду показує, як конвертувати багатосторінкове або багатокадрове зображення TIFF у PDF за допомогою C#:

// Ініціалізувати новий документ
Document pdf = new Document();

//Завантажте зображення TIFF у потік
MemoryStream ms = new MemoryStream();
new FileStream(dataDir + @"Aspose.tiff", FileMode.Open).CopyTo(ms);
Bitmap myimage = new Bitmap(ms);
// Перетворіть багатосторінковий або багатокадровий TIFF у PDF
FrameDimension dimension = new FrameDimension(myimage.FrameDimensionsList[0]);
int frameCount = myimage.GetFrameCount(dimension);

// Ітерація кожного кадру
for (int frameIdx = 0; frameIdx <= frameCount - 1; frameIdx++)
{
    Page sec = pdf.Pages.Add();

    myimage.SelectActiveFrame(dimension, frameIdx);

    MemoryStream currentImage = new MemoryStream();
    myimage.Save(currentImage, ImageFormat.Tiff);

    Aspose.Pdf.Image imageht = new Aspose.Pdf.Image();
    imageht.ImageStream = currentImage;
    sec.Paragraphs.Add(imageht);
}

// Збережіть вихідний PDF-файл
pdf.Save(dataDir + "TifftoPDF.pdf");

Зберегти зображення EMF як PDF у C#

Зображення EMF, також відомі як розширений формат метафайлу, не залежать від пристрою. Крім того, ви можете конвертувати зображення EMF у PDF, виконавши наведені нижче дії.

  1. По-перше, ініціалізуйте об’єкт класу Document.
  2. Завантажте файл зображення EMF
  3. Додайте завантажене зображення EMF на сторінку
  4. Зберегти документ PDF

Крім того, наведений нижче фрагмент коду показує, як конвертувати EMF у PDF за допомогою C# у вашому фрагменті коду .NET:

// Ініціалізація нового документа PDF
var doc = new Document();

// Вкажіть шлях до вхідного файлу зображення EMF
var imageFile = dataDir + "drawing.emf";
var page = doc.Pages.Add(); 
string file = imageFile;
FileStream filestream = new FileStream(file, FileMode.Open, FileAccess.Read);
BinaryReader reader = new BinaryReader(filestream);
long numBytes = new FileInfo(file).Length;
byte[] bytearray = reader.ReadBytes((int)numBytes);
Stream stream = new MemoryStream(bytearray);
var b = new Bitmap(stream);

// Вкажіть властивості розміру сторінки
page.PageInfo.Margin.Bottom = 0;
page.PageInfo.Margin.Top = 0;
page.PageInfo.Margin.Left = 0;
page.PageInfo.Margin.Right = 0;
page.PageInfo.Width = b.Width;
page.PageInfo.Height = b.Height;
var image = new Aspose.Pdf.Image();
image.File = imageFile;
page.Paragraphs.Add(image);

//Зберегти вихідний документ PDF
doc.Save(dataDir + "EMFtoPDF.pdf");

Експорт BMP у PDF на C#

Зображення BMP — це растрові зображення, які можна конвертувати у PDF за допомогою API Aspose.PDF for .NET. Тому ви можете виконати наступні кроки, щоб конвертувати зображення BMP:

  1. Ініціалізація нового документа
  2. Завантажити вхідне зображення BMP
  3. Нарешті збережіть вихідний PDF-файл

Отже, наведений нижче фрагмент коду виконує ці дії та показує, як конвертувати BMP у PDF за допомогою C#:

Initialize empty PDF document
using (Document pdfDocument = new Document())
{
    pdfDocument.Pages.Add();
    Aspose.Pdf.Image image = new Aspose.Pdf.Image();

    // Завантажити зразок файлу зображення BMP
    image.File = dataDir + @"Sample.bmp";
    pdfDocument.Pages[1].Paragraphs.Add(image);

    // Зберегти вихідний документ PDF
    pdfDocument.Save(dataDir + @"BMPtoPDF.pdf");
}

Перетворіть зображення на PDF за допомогою безкоштовної ліцензії

Ви можете [отримати безкоштовну тимчасову ліцензію][20] і конвертувати зображення у формат PDF без обмежень оцінки.

Висновок

Зрештою, ми досліджували перетворення зображень у PDF з різних аспектів у C#. Різні перетворення, зокрема JPG у PDF, PNG у PDF, TIFF у PDF, EMF у PDF та BMP у PDF, були детально розглянуті. Крім того, ви дізналися, як покращити відтворення зображення у форматі PDF, встановлюючи розмір сторінки та поля. Крім того, якщо у вас все ще є запити чи запитання, зв’яжіться з нами на безкоштовному форумі підтримки.

Дивись також

Перетворюйте AI у файл PNG, JPG, PSD і PDF за допомогою C# .NETПеретворити зображення на DOC у C#Перетворити зображення на DOCX у C#
Перетворіть JPG на DOC у C# .NETПеретворіть JPG на DOCX у C# .NETПеретворіть PNG на DOC у C# .NET
Перетворіть PNG на DOCX у C# .NETПеретворіть PPT на JPG у PythonПеретворення SVG на PNG у Python
Створення ескізів для слайдів PPT у PythonНалаштування контрастності зображення, яскравості та гами в JavaНалаштуйте контрастність зображення, яскравість і гамму в C#
Перетворення зображень JPG на PNG у C#Перетворення зображень JPG на PNG у JavaПеретворення зображень PNG на JPG у C#
Перетворення зображень PNG на JPG у JavaПеретворити Word на зображення в PythonВилучення зображень із документів Word на C#
Вилучення зображень із документів Word у JavaВилучення зображень із документів Word у PythonЗмінити розмір зображень у C#
Змінити розмір зображень у JavaОбертання та перевертання зображень у C#Обертання та перевертання зображень у Java