itextsharp、Aspose.Words、Aspose.Cells联合使用

本文介绍了如何利用iTextSharp、Aspose.Words和Aspose.Cells库将多种文件转换为PDF,并将转换后的PDF文件合并成一个文件的过程,详细展示了相关代码实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近做了一个系统需要把文件转换为pdf然后把转换后的pdf合成一个pdf文件,网上搜索了半天,最终决定使用itestsharp.dll配合Aspose.words和Aspose.cells来做,废话少说,上代码……

 #region 文件转换pdf
        public void ConvertImageToPdf(string inputFileName, string outputFileName)
        {
            Aspose.Words.Document doc = new Aspose.Words.Document();
            DocumentBuilder builder = new DocumentBuilder(doc);
            using (System.Drawing.Image image = System.Drawing.Image.FromFile(inputFileName))
            {
                FrameDimension dimension = new FrameDimension(image.FrameDimensionsList[0]);
                int framesCount = image.GetFrameCount(dimension);
                for (int frameIdx = 0; frameIdx < framesCount; frameIdx++)
                {
                    if (frameIdx != 0)
                        builder.InsertBreak(BreakType.SectionBreakNewPage);
                    image.SelectActiveFrame(dimension, frameIdx);
                    Aspose.Words.PageSetup ps = builder.PageSetup;
                    if (image.Width > 2000)
                    {
                        ps.PageWidth = ConvertUtil.PixelToPoint(image.Width / 2, image.HorizontalResolution);
                        ps.PageHeight = ConvertUtil.PixelToPoint(image.Height / 2, image.VerticalResolution);
                    }
                    else
                    {
                        ps.PageWidth = ConvertUtil.PixelToPoint(image.Width-300, image.HorizontalResolution);
                        ps.PageHeight = ConvertUtil.PixelToPoint(image.Height-100, image.VerticalResolution);
                    }
                     builder.InsertImage(image, RelativeHorizontalPosition.Page,100, RelativeVerticalPosition.Page, 0, ps.PageWidth, ps.PageHeight, WrapType.Inline);
                }
            }
            doc.Save(outputFileName);
        }

        //Word转换成pdf
        /// <summary>
        /// 把Word文件转换成为PDF格式文件
        /// </summary>
        /// <param name="sourcePath">源文件路径</param>
        /// <param name="targetPath">目标文件路径</param> 
        /// <returns>true=转换成功</returns>
        public bool DOCConvertToPDF(string sourcePath, string targetPath)
        {
            try
            {
                Aspose.Words.Document doc = new Aspose.Words.Document(sourcePath);
                
                doc.Save(targetPath, Aspose.Words.SaveFormat.Pdf);
                return true;
            }
            catch (Exception ex)
            {
                return false;
            }
        }

        /// <summary>
        /// 把Excel文件转换成PDF格式文件
        /// </summary>
        /// <param name="sourcePath">源文件路径</param>
        /// <param name="targetPath">目标文件路径</param>
        /// <returns>true=转换成功</returns>
        public bool XLSConvertToPDF(string sourcePath, string targetPath)
        {
            try
            {
                Workbook workbook = new Workbook(sourcePath);
                workbook.CreateStyle();
                workbook.Save(targetPath, Aspose.Cells.SaveFormat.Pdf);                  
                return t
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值