我有两张图片,我想将其转换为一个pdf文件,页面中有一张图片... 在C#中最简单的方法是什么?
编辑:我尝试了以下代码(添加了PdfSharp引用):
string source1 = @"MySource1.JPG";
string source2 = @"MySource2.JPG";
string destinaton = @"MyDest.pdf";
PdfDocument doc = new PdfDocument();
doc.Pages.Add(new PdfPage());
doc.Pages.Add(new PdfPage());
XGraphics xgr = XGraphics.FromPdfPage(doc.Pages[0]);
XImage img = XImage.FromFile(source1);
XGraphics xgr2 = XGraphics.FromPdfPage(doc.Pages[1]);
XImage img2 = XImage.FromFile(source2);
xgr.DrawImage(img, 0, 0);
xgr2.DrawImage(img2, 0, 0);
doc.Save(destinaton);
doc.Close();
现在用我的两个页面创建一个pdf但现在的问题是图像被剪切而不是原始尺寸!图片大小为3264x2448。 如何将图像大小修改为pdf文档大小?
答案 0 :(得分:1)
如果您知道pdf文档尺寸,则可以将图像调整为:
Bitmap objBitmap = new Bitmap(objImage, new Size(size1, size2));
其中objImage
是您的原始图片。
或者喜欢:
public static Image resizeImage(Image imgToResize, Size size)
{
return (Image)(new Bitmap(imgToResize, size));
}
objBitmap = resizeImage(objBitmap, new Size(size1,size2));
答案 1 :(得分:1)
DrawImage有几个重载。使用允许您指定图像目标大小的重载。
三行代码允许计算图像大小以使用整个页面(如果需要,可以使用边距),同时保持宽高比。