通过后端程序将excel表格转为pdf格式时,直接转换后的PDF效果可能出现表格页面过小或者过大,导致页面内容分布不均。要改善转换后的文档效果,只需在转换前自定义表格纸张大小,即可调
通过后端程序将excel表格转为pdf格式时,直接转换后的PDF效果可能出现表格页面过小或者过大,导致页面内容分布不均。要改善转换后的文档效果,只需在转换前自定义表格纸张大小,即可调整转换后的PDF页面表格布局效果。下面是具体方法和步骤。
在Visual Studio中,打开“解决方案资源管理器”,鼠标右键点击“引用”,
1.通过NuGet安装dll(2种方法)
1.1 可以在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“管理NuGet包”,然后搜索Spire.XLS安装。
1.2 将以下内容复制到PM控制台安装。
Install-Package Spire.XLS -Version 11.11.2
2.手动添加dll引用
可通过手动下载包,然后解压,找到BIN文件夹下的Spire.Xls.dll。然后在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“添加引用”将本地路径BIN文件夹下的dll文件添加引用至程序。
代码思路:
1.实例化Workbook类的对象,然后调用Workbook.LoadFromFile(string fileName)方法加载Excel文档。
2.通过 Workbook.Worksheets属性获取Worksheet类的的对象,即获取工作表
3.通过PageSetup.SetCustomPaperSize(float width, float height)方法自定义表格宽度及高度。
4.最后,调用Workbook.SaveToFile(string fileName, FileFORMat fileFormat)方法保存为PDF格式。
using Spire.Xls;
namespace ExcelToPDFwithCustomPageSize
{
class Program
{
static void Main(string[] args)
{
//实例化Workbook类的对象
Workbook workbook = new Workbook();
//加载Excel测试文档
workbook.LoadFromFile("test.xlsx");
//遍历工作表
for(int i=0; i<workbook.Worksheets.Count;i++)
{
Worksheet sheet = workbook.Worksheets[i];
//自定义纸张大小
sheet.PageSetup.SetCustomPaperSize(620,310);
//保存为PDF格式
workbook.SaveToFile("ToPDF.pdf", FileFormat.PDF);
}
}
}
}
Imports Spire.Xls
Namespace ExcelToPDFwithCustomPageSize
Class Program
Private Shared Sub Main(args As String())
'实例化Workbook类的对象
Dim workbook As New Workbook()
'加载Excel测试文档
workbook.LoadFromFile("test.xlsx")
'遍历工作表
For i As Integer = 0 To workbook.Worksheets.Count - 1
Dim sheet As Worksheet = workbook.Worksheets(i)
'自定义纸张大小
sheet.PageSetup.SetCustomPaperSize(620, 310)
'保存为PDF格式
workbook.SaveToFile("ToPDF.pdf", FileFormat.PDF)
Next
End Sub
End Class
End Namespace
通过设置不同的宽度和高度,在转换后可呈现不同效果,如图:
到此这篇关于C# 将Excel转为PDF时自定义表格纸张大小的文章就介绍到这了,更多相关C#自定义表格纸张大小内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: C# 将Excel转为PDF时自定义表格纸张大小的代码思路
本文链接: https://www.lsjlt.com/news/158758.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0