การแปลงรูปภาพเป็น PDF เป็นสถานการณ์ที่สำคัญและมีประโยชน์สำหรับแอปพลิเคชันประมวลผลไฟล์ ในบทความนี้ เราจะเรียนรู้การแปลงรูปภาพ JPG, PNG, TIFF, EMF, WMF และ BMP เป็น PDF โดยใช้ C# หรือ VB.NET ต่อไปนี้คือขั้นตอนการติดตั้งและกรณีการใช้งานบางส่วนที่เป็นไปได้สำหรับการแปลงอิมเมจ:
- JPG, PNG, TIFF, EMF และ BMP เป็น PDF Converter API - การติดตั้ง
- แปลง JPG เป็น PDF ด้วย C#
- แปลงรูปภาพเป็น PDF ด้วยความสูงและความกว้างของหน้าเดียวกันใน C#
- แปลง PNG เป็น PDF โดยใช้ C#
- แปลง TIFF เป็น PDF โดยใช้ C#
- แปลงรูปภาพ EMF เป็น PDF โดยใช้ C#
- แปลง BMP เป็น PDF ด้วย C#
C# Image to PDF Converter API - การติดตั้ง
เราจะดำเนินการแปลงรูปแบบรูปภาพเหล่านี้เป็น PDF โดยใช้ Aspose.PDF for .NET API คุณสามารถดาวน์โหลดได้จากส่วน Release หรือผ่าน NuGet Gallery ด้วยคำสั่งต่อไปนี้:
Install-Package Aspose.Pdf -Version 20.9.0
ดังนั้น API จึงได้รับการติดตั้งเรียบร้อยแล้ว ให้เราดำเนินการต่อไปเพื่อสำรวจกรณีการใช้งานต่างๆ:
แปลง JPG เป็น PDF ด้วย C#
คุณสามารถแปลงรูปภาพ JPG เป็น PDF ได้ง่ายๆ โดยทำตามขั้นตอน:
- เริ่มต้นวัตถุของคลาสเอกสาร
- เพิ่มหน้าใหม่ในเอกสาร PDF
- โหลดภาพ JPG และเพิ่มในย่อหน้า
- บันทึกเอาต์พุต 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 เอาต์พุต Aspose.PDF for .NET API ช่วยให้คุณควบคุมขนาดและระยะขอบของหน้า ซึ่งช่วยให้คุณสร้าง PDF ขนาดเดียวกับขนาดรูปภาพได้ ให้เราสำรวจคุณสมบัตินี้ต่อไป:
แปลงรูปภาพเป็น PDF ด้วยความสูงและความกว้างของหน้าเดียวกัน
ดำเนินการต่อตัวอย่างนี้จากกรณีการใช้งานด้านบน เนื่องจากคุณสามารถสังเกตเห็นขนาดหน้าที่ใหญ่กว่าในภาพหน้าจอด้านบน ให้เราเรียนรู้วิธีแปลงรูปภาพเป็น PDF โดยมีความสูงและความกว้างของหน้าเท่ากัน เราจะได้ขนาดภาพและกำหนดขนาดหน้าของเอกสาร PDF ตามขั้นตอนด้านล่าง:
- โหลดไฟล์ภาพอินพุต
- รับความสูงและความกว้างของภาพ
- กำหนดความสูง ความกว้าง และระยะขอบของหน้า
- บันทึกไฟล์ 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");
คุณจึงสังเกตเห็นความแตกต่างของขนาดหน้าที่สร้างขึ้นด้วยข้อมูลโค้ดที่อัปเดต:
สุดท้าย คุณจะสังเกตได้ว่าขนาดหน้ากระดาษนั้นใกล้เคียงกันทุกประการตามขนาดภาพที่ป้อน และไม่มีการตั้งค่าระยะขอบหน้าเริ่มต้นอีกต่อไปแล้ว
แปลง PNG เป็น PDF โดยใช้ C#
รูปแบบภาพ PNG เป็นที่นิยมเนื่องจากมีคุณสมบัติเมื่อเทียบกับภาพ JPG ตัวอย่างเช่น รูปภาพ PNG รองรับความโปร่งใส ประการแรก ให้เราแปลง PNG เป็น PDF ด้วยขั้นตอนด้านล่าง:
- โหลดภาพ PNG อินพุต
- อ่านค่าความสูงและความกว้าง
- สร้างเอกสารใหม่และเพิ่มหน้า
- กำหนดขนาดของหน้า
- บันทึกไฟล์เอาต์พุต
นอกจากนี้ ข้อมูลโค้ดด้านล่างแสดงวิธีแปลง 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 หลายหน้าด้วยขั้นตอนด้านล่าง:
- สร้างอินสแตนซ์ของคลาส Document
- โหลดภาพ TIFF อินพุต
- รับ FrameDimension ของเฟรม
- เพิ่มหน้าใหม่สำหรับแต่ละเฟรม
- สุดท้าย บันทึกภาพไปยังหน้า 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 หรือที่เรียกว่า Enhanced Metafile Format เป็นรูปภาพที่ไม่ขึ้นกับอุปกรณ์ นอกจากนี้ คุณสามารถแปลง EMF เป็นภาพ PDF โดยใช้ขั้นตอนด้านล่าง:
- ขั้นแรก เริ่มต้น Document class object
- โหลดไฟล์อิมเมจ EMF
- เพิ่มอิมเมจ EMF ที่โหลดไปยังเพจ
- บันทึกเอกสาร 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 ด้วย Aspose.PDF for .NET API ดังนั้น คุณสามารถทำตามขั้นตอนต่อไปนี้เพื่อแปลงอิมเมจ BMP:
- เริ่มต้นเอกสารใหม่
- โหลดอิมเมจ BMP อินพุต
- สุดท้าย บันทึกไฟล์ 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 จากแง่มุมต่างๆ โดยใช้ C# การแปลงต่างๆ รวมถึงการแปลง JPG, PNG, TIFF, EMF และ BMP เป็น PDF ได้รับการกล่าวถึงโดยละเอียดแล้ว ยิ่งกว่านั้น เราได้เรียนรู้วิธีปรับปรุงรูปภาพเป็น PDF ในขณะตั้งค่าขนาดหน้าและระยะขอบ นอกจากนี้ หากคุณยังมีข้อซักถามหรือคำถามใดๆ โปรดติดต่อเราที่ ฟอรัมสนับสนุนฟรี