http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 4058|回复: 1

[咨询站长] 有没有会修改PDF里面的文字内容的。

[复制链接]
发表于 2015-7-3 15:47:28 | 显示全部楼层 |阅读模式
10金钱
/// <summary>
        /// 读取PDF文本内容
        /// </summary>
        /// <param name="fileName"></param>
        /// <returns></returns>
        public static string ReadPdf(string fileName)
        {
            if (!File.Exists(fileName))
            {
                LogHandler.LogWrite(@"指定的PDF文件不存在:" + fileName);
                return string.Empty;
            }
            //
            string fileContent = string.Empty;
            StringBuilder sbFileContent = new StringBuilder();
            //打开文件
            PdfReader reader = null;
            try
            {
                reader = new PdfReader(fileName);
            }
            catch (Exception ex)
            {
                LogHandler.LogWrite(string.Format(@"加载PDF文件{0}失败,错误:{1}", new string[] { fileName, ex.ToString() }));

                if (reader != null)
                {
                    reader.Close();
                    reader = null;
                }

                return string.Empty;
            }

            try
            {
                //循环各页(索引从1开始)
                for (int i = 1; i <= reader.NumberOfPages; i++)
                {
                    sbFileContent.AppendLine(PdfTextExtractor.GetTextFromPage(reader, i));

                    
                }

            }
            catch (Exception ex)
            {
                LogHandler.LogWrite(string.Format(@"解析PDF文件{0}失败,错误:{1}", new string[] { fileName, ex.ToString() }));

            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                    reader = null;
                }
            }
            //
            fileContent = sbFileContent.ToString();
            return fileContent;
        }
        /// <summary>
        /// 获取PDF页数
        /// </summary>
        /// <param name="fileName"></param>
        /// <returns></returns>
        public static int GetPdfPageCount(string fileName)
        {
            if (!File.Exists(fileName))
            {
                LogHandler.LogWrite(@"指定的PDF文件不存在:" + fileName);
                return -1;
            }
            //打开文件
            PdfReader reader = null;
            try
            {
                reader = new PdfReader(fileName);
            }
            catch (Exception ex)
            {
                LogHandler.LogWrite(string.Format(@"加载PDF文件{0}失败,错误:{1}", new string[] { fileName, ex.ToString() }));
                if (reader != null)
                {
                    reader.Close();
                    reader = null;
                }

                return -1;
            }
            //
            return reader.NumberOfPages;
        }


这里代码只能读取到里面的文字,能不能通过什么办法修改文字呢?求助大神帮忙......



1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2016-3-29 13:13:37 | 显示全部楼层
可不可以用PDF extractor或者PDF to text converter先把文字提取出来再编辑,然后再重新生成PDF,但是貌似有点太繁琐了?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-4-28 01:56

© 2014-2021

快速回复 返回顶部 返回列表