首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

有没有办法使用itext7和C#获取PdfDocument对象的完整路径(甚至只是文件名)?

在使用itext7和C#获取PdfDocument对象的完整路径或文件名时,可以通过以下方法实现:

  1. 使用iText库加载PDF文件并创建PdfDocument对象:
代码语言:txt
复制
using iText.Kernel.Pdf;

string filePath = "path/to/your/pdf/file.pdf";
PdfDocument pdfDoc = new PdfDocument(new PdfReader(filePath));
  1. 获取PdfDocument对象的完整路径:
代码语言:txt
复制
string fullPath = pdfDoc.GetReader().GetFile().GetAbsolutePath();
  1. 获取PdfDocument对象的文件名:
代码语言:txt
复制
string fileName = pdfDoc.GetReader().GetFile().GetName();

以上代码示例中,filePath为PDF文件的路径,可以是相对路径或绝对路径。pdfDoc为创建的PdfDocument对象。通过GetReader().GetFile()方法可以获取到PdfReader对象,进而获取到文件的完整路径和文件名。

关于itext7和C#的更多使用方法和示例,可以参考腾讯云的iText7产品介绍链接:iText7产品介绍

请注意,以上答案仅供参考,具体实现方式可能因环境和需求而异。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

itext7史上最全实战总结

干货 itext7语义本身前端css很像,所以有点前端基础还是比较容易掌握 1.4.1....,上一页剩下就留白了 可以看到Div,Paragraph可以设置很多属性,实际上我们常用组件除了这两种,还有Table,Cell,List,他们大部分属性都是一样只是部分属性只在部分组件起效果...);这是组件居中对段落无效,甚至对段落里你放Text也无效,需要改用setTextAlignment(TextAlignment.CENTER); Paragraph段落行距也是个高频问题,这里给出官方我看到解释...Tab,\t itext7中如果要表示段落前空格,不能使用\t,但换行可以使用\n 若要实现Tab效果可以有多个方法 \u00a0符号,大概7、8个该符号可表示tab,可能不是很准确 p1...总结 经过上述总结,我基本上把项目中大多基本点难点都概括进去了,初次用itext7写PDF同学基本会遇到问题基本都在上述这些,不理解就把项目下下来运行Main方法慢慢调试,理解透我这个项目,还有其它问题那基本只能翻官网了

6.8K31
  • C# 提取PDF中指定文本、图片坐标

    本文将详解如何使用PDF库通过C# 提取PDF中指定文本或图片坐标位置(X, Y轴)。 用于操作PDF文件第三方库为Spire.PDF for .NET。...类表示PDF页面,由内容区域四周页边距组成。...C# 获取 PDF 中指定文本坐标 要指定文本坐标,主要分为两步实现: 首先需要使用 PdfTextFinder.Find() 方法查找PDF文件中所有指定文本; 查找到文本后,再通过 PdfTextFragment.Positions...对象 PdfDocument pdf = new PdfDocument(); //加载PDF文件 pdf.LoadFromFile...获取 PDF 中指定图片坐标 与获取文字坐标类似,获取图片坐标主要也分为两步: 首先使用 PdfImageHelper.GetImagesInfo() 方法获取某个PDF页面中所有图片信息; 获取图片后

    41610

    C# 复制PDF页面到另一个PDF文档

    写这篇文章主要是分享一个简单而且比较容易实现方法 - 使用C#将一个PDF文档页面,包括文字、图片背景等复制到另一个PDF文档指定位置。 下面是我准备两个PDF文件: ?...目标:将左边PDF文档第一页复制到右边PDF文档第二页位置。 代码实现: 步骤1:初始化一个PdfDocument对象doc1并加载第一个PDF文档。...PdfDocument doc1 = new PdfDocument(); doc1.LoadFromFile("童话故事.pdf"); 步骤2:初始化一个PdfDocument对象doc2并加载第二个...PdfDocument doc2 = new PdfDocument(); doc2.LoadFromFile("各种点心做法.pdf"); 步骤3:获取第一个PDF文档第一页以及它页面大小,并基于第一页创建一个...Spire.PDF,如果你PDF文档不超过10页,可以去CodePlex上下载使用免费版本。

    1.4K110

    八、制图模块【ArcGIS Python系列】

    可以自动化工程内容,甚至无需打开应用程序。 以下简单示例显示了如何使用 arcpy.mp 通过仅仅四行代码引用工程中现有布局并将其导出至 PDF 文档。...(完整工程路径文件名)、defaultGeodatabase (工程默认地理数据库位置)、 defaultToolbox (工程默认工具箱) homeFolder (工程主文件夹位置) 常用描述性属性...字符串必须包含地理数据库完整路径文件名。 StringdefaultToolbox(可读写) 工程默认工具箱位置。 字符串必须包含工具箱完整路径文件名。...二、理解使用地图(map) Map 对象是参考管理 ArcGIS Pro 工程中图层主要对象。一个工程(project)包含一个或多个地图,每个地图通常包含一个或多个图层表。...in maps: print(m.name) del aprx 1.地图对象常用属性 属性 说明 name(可读写) 用于在 Map 对象出现在内容列表中时获取或设置其名称,同时还用于获取或设置布局内实际元素名称

    32110

    高效而稳定企业级.NET Office 组件Spire(.NET组件介绍之二)

    使用这个.NET PDF库,您可以实现丰富功能从头开始创建PDF文件或完全通过C#/ VB.NET处理现有的PDF文档,而无需安装Adobe Acrobat。    ...此外,Spire.PDF for .NET可以应用于使用C#/ VB.NET以高质量轻松地将文本,图像HTML转换为PDF。    以下是一个官方给出组件解析图: ?        ...以上对组件相关背景做了一个简单介绍,并且对组件功能使用情形做了简单罗列。...以上方法中只是操作PDF部分类,由于包含类较多,过大介绍篇幅就显得多余,在对PDF操作中提供了较多方法,因此在功能上会较为丰富,使用起来也较为便捷。  ...1.创建HTTPGET请求,获取网页信息: /// /// 指定路径发送GET请求 /// /

    2.4K61

    C# 打印PDF文档10种方法

    前言 操作PDF文档时,打印是常见需求之一。针对不同打印需求,可分多种情况来进行,如设置静默打印、指定打印页码范围打印纸张大小、双面打印、黑白打印等等。...在程序中添加引用Spire.Pdf.dll,dll文件在安装路径bin文件夹中。 2、通过Nuget网站下载。...1、使用默认打印机打印PDF //创建PdfDocument对象,并加载PDF文档 PdfDocument doc = new PdfDocument(); doc.LoadFromFile("Test.pdf...、使用虚拟打印机自定义纸张大小打印:保持原来页面大小打印到PDF //加载需要打印PDF文档 Spire.Pdf.PdfDocument doc = new Spire.Pdf.PdfDocument...PaperSize p = null; //实例化一个PrintDocument对象获取当前打印机纸盒信息 PrintDocument printDoc = new PrintDocument

    2.8K50

    三大神器助力Python提取pdf文档信息

    注意我使用Python版本为3.6。 首先介绍pdfminer。pdminer是一个从PDF文档中提取信息工具。与其他pdf相关工具不同,它完全专注于获取分析文本数据。...%(new_name),'a',encoding="utf-8") as f: 44 f.write(y.get_text()+"\n") 45 46# 获取文件路径...51 52# 获取文件路径 53url = "file:///I:/Python3.6/patest/PdfTest/pdftestto.pdf" 54html = urllib.request.urlopen...由于这里只是单纯介绍一下,所以就不详细展开了。 ? camelot介绍 为什么我们这里着重介绍这个呢?因为这个官方文档介绍很详细,而且对新手非常友好,因此强烈建议大家使用这个。...上面代码中camelot.read_pdf()就是camelot从表格中提取数据函数,里面的参数为PDF文件存放路径,pages是pdf页数(默认为第一页),以及解析表格方法(streamlattice

    19.9K1712

    C# 绘制PDF嵌套表格

    嵌套表格,即在一张表格中特定单元格中再插入一个或者多个表格,使用嵌套表格优点在于能够让内容布局更加合理,同时也方便程序套用。...插入图片到嵌套表格 使用工具 Spire.PDF 4.9.7 注: 1.这里使用版本为4.9.7,经测试,对于代码中涉及PdfGridCellContentList类PdfGridCellContent...2.下载安装后,在编辑代码时,请注意添加引用Spire.Pdf.dll(dll文件可在安装路径Bin文件夹下获取) image.png 示例代码(供参考) using Spire.Pdf; using...类,并添加页面到新建文档 PdfDocument pdf = new PdfDocument(); PdfPageBase page = pdf.Pages.Add...newRow.Cells[1].StringFormat = stringFormat; //设置第一个表格单元格格式

    98700

    itext实现pdf自动定位合同签订

    需求 需要实现如下效果(最终效果) 思考 需求方要求就是实现签订合同,实现方法不限,但过程中又提出需要在签章过程中把签订日期文字也打上去,这就有点坑了~ 一开始想法是想办法定位需要签名位置...通过api研究,可以通过itext监听器遍历文本拿到尾行文字等信息 x周位置根据页面宽度调整 文字大小字体类型问题。...字体类型是我现在也没解决,我没找到获取pdf文档字体类型大小api,请指教 因为没找到api所以我用最笨方法,通过获取字体高度来确定字体大小,这样文字写出来差别不会太大。...当签完后就是上图效果 说了这么多接下来直接上工具代码吧,如果要使用,直接把几个类代码复制过去,把字体路径换成自己,文件路径改下就可以在main方法运行测试了 上代码 PdfParser类,主要实现类...,包含文件名 * @param imgPath 签章图片地址 * @param signType 甲方签章还是乙方签章,输入枚举类型 * @param contents

    2.3K20

    手把手 | 20行Python代码教你批量将PDF转为Word

    很多时候在学习时发现许多文档都是PDF格式,PDF格式却不利于学习使用,因此需要将PDF转换为Word文件,但或许你从网上下载了很多软件,但只能转换前五页(如WPS等),要不就是需要收费,那有没有免费转换软件呢...在实现PDF转Word功能之前,我们需要一个python编写运行环境,同时安装好相关依赖包。 对于python环境,我们推荐使用PyCharm。...在本地电脑环境,anaconda提供了非常便利安装部署。...PDF转Word功能所需依赖包如下: PDFParser(文档分析器) PDFDocument(文档对象) PDFResourceManager(资源管理器) PDFPageInterpreter(解释器...()方法解析读取单独页数 interpreter.process_page(page) #使用聚合器get_result()方法获取内容 layout

    1.9K50

    python提取pdf文本内容

    安装: pip install pdfminer 解析pdf文件用到类: PDFParser:从一个文件中获取数据 PDFDocument:保存获取数据,PDFParser是相互关联...PDFMiner类之间关系图: ? Layout布局分析返回PDF文档中每个页面LTPage对象。这个对象页内包含对象,形成一个树结构。如图所示:  ?...注意此box是由几何分析中创建,并且不一定表示该文本一个逻辑边界。它包含LTTextLine对象列表。使用 get_text()方法返回文本内容。 ...LTTextLine :包含表示单个文本行LTChar对象列表。字符对齐要么水平或垂直,取决于文本写入模式。使用get_text()方法返回文本内容。 ...Saved "+outPath) if __name__ == '__main__': pdfTotxt(u'123.pdf', 'test.txt') fileTotxt('这里是目录路径

    3.4K20

    C#反射与特性(一):反射基础

    程序集操作 2.1 获取 程序集对象(Assembly) 2.1.1 运行时获取程序集 2.1.2 使用方法 2.1.3 从文件加载程序集 2.1.4 使用方法 2.2 Assembly 使用 2.2.1...反射:在运行时检查并使用元数据编译代码操作称为反射。 一个程序集包含内容: ? [图片来自 《C# 7.0 核心技术指南》] 2....2.1 获取 程序集对象(Assembly) 微软官方文档建议使用加载程序集方式: 加载程序集建议方法是使用 Load 方法,该方法标识要由其显示名称(例如 "b77a5c561934e089,Version...) 在给定程序集文件名路径并提供安全证据情况下,加载程序集 LoadFrom(String, Evidence, Byte[], AssemblyHashAlgorithm) 通过给定程序集文件名路径...这通常(但不一定)是程序集清单文件文件名,不包括其扩展名。 ProcessorArchitecture 获取或设置一个值,该值标识可执行文件目标平台处理器每字位数。

    1.3K50

    文件监控程序V2.0改进版(网站防挂马好手)

    1、针对文件创建、更改、重命名进行监控; 2、对触发创建、更改、重命名文件内容进行判断; 先说说第一个,我是用C#来写。程序开始,肯定得先指定文件监控路径。...我问过好多C#大牛,都说不好解决,最好办法,是用C++来写,通过底层方式来处理,但是坑是,我还没学C++,C#也是才学了2个月吧,如果这样就放弃了,那整个程序就白写了。。...后来琢磨了好几天,想到了一个不是解决办法解决办法。用try catchThread.Sleep来解决这个问题。try执行,当文件触发了创建操作,就执行文件内容判断处理方法。...当然了,界面我没改动,还是shack2得界面,我只是在界面上加入了一个隔离区操作。 我把软件贴出来,大家可以玩玩。使用方法:监控目录输入你要监控网站目录,点击“开始监控”。...补充说明: 监控后缀跳过后缀完全可以忽略,因为这个监控,是针对所有文件内容,所以无所谓监控哪个或不监控哪个,管它是畸形文件名还是war,都会去进行检测。

    1.6K50
    领券