.NET 将获取的图片地址转换成PDF文件

1.需要添加的引用

using iTextSharp.text;
using iTextSharp.text.pdf;

2.图片地址转新建PDF

/// <summary>
/// 图片转pdf
/// </summary>
/// <param name="jpgfile">要转换的图片的路径</param>
/// <param name="pdfoutputpath">转成后的文件地址和文件名</param>]
public static void ImageToPDF(string jpgfile, string pdfoutputpath)
{

var document = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4, 25, 25, 25, 25);
using (var stream = new FileStream(pdfoutputpath, FileMode.Create, FileAccess.Write, FileShare.None))
{
iTextSharp.text.pdf.PdfWriter.GetInstance(document, stream);
document.Open();
using (var imageStream = new FileStream(jpgfile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
var image = iTextSharp.text.Image.GetInstance(imageStream);
if (image.Height > iTextSharp.text.PageSize.A4.Height - 25)
{
image.ScaleToFit(iTextSharp.text.PageSize.A4.Width - 25, iTextSharp.text.PageSize.A4.Height - 25);
}
else if (image.Width > iTextSharp.text.PageSize.A4.Width - 25)
{
image.ScaleToFit(iTextSharp.text.PageSize.A4.Width - 25, iTextSharp.text.PageSize.A4.Height - 25);
}
image.Alignment = iTextSharp.text.Element.ALIGN_MIDDLE;
document.NewPage();
document.Add(image);
}
document.Close();
}
}

 

3.使用方法

string Address = Directory.GetCurrentDirectory() + "\\wwwroot\\";
string image = Address + "Files\\Image\\image.jpg";
string pdf = Address + "Files\\PDF\\test.pdf";
ImageToPDF(image, pdf);

posted @   御翼仁粨狩  阅读(354)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示