Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 获取PDF页面长度_C#_Itext_Page Size - Fatal编程技术网

C# 获取PDF页面长度

C# 获取PDF页面长度,c#,itext,page-size,C#,Itext,Page Size,在我格式化PDF的文章中,一个或多个页面可能会被清空,我想检测它们并从PDF文件中删除。如果我可以识别小于60KB的页面,我想我可以检测到空页面。因为它们可能是空的 我试着这样做: var reader = new PdfReader("D:\\_test\\file.pdf"); /* * With reader.FileLength, I can get whole pdf file size. * But I dont know, how can I get pages'sizes..

在我格式化PDF的文章中,一个或多个页面可能会被清空,我想检测它们并从PDF文件中删除。如果我可以识别小于60KB的页面,我想我可以检测到空页面。因为它们可能是空的

我试着这样做:

var reader = new PdfReader("D:\\_test\\file.pdf");
/*
 * With reader.FileLength, I can get whole pdf file size.
 * But I dont know, how can I get pages'sizes...
 */
for (var i = 1; i <= reader.NumberOfPages; i++)
{
    /*
     * MessageBox.Show(???);
     */
}
var reader=new-PdfReader(“D:\\\\\ u test\\file.pdf”);
/*
*使用reader.FileLength,我可以获得整个pdf文件大小。
*但是我不知道,我怎样才能得到页面的大小。。。
*/

对于(var i=1;i我将分两步进行:

  • 首先使用IEventListener检查文档,以检测哪些页面是空的
  • 确定哪些页面为空后,只需将源文档中的非空页面复制到新文档中,即可创建新文档
第1步:

List<Integer> emptyPages = new ArrayList<>();
PdfDocument pdfDocument = new PdfDocument(new PdfReader(new File(SRC)));
for(int i=1;i<pdfDocument.getNumberOfPages();i++){
    IsEmptyEventListener l = new IsEmptyEventListener();
    new PdfCanvasProcessor(l).processPageContent(pdfDocument.getPage(i));
    if(l.isEmptyPage()){
        emptyPages.add(i);
    } 
}
List emptyPages=new ArrayList();
PdfDocument PdfDocument=newpdfdocument(newpdfreader(newfile(SRC)));

对于(int i=1;i我将分两步进行:

  • 首先使用IEventListener检查文档,以检测哪些页面是空的
  • 确定哪些页面为空后,只需将源文档中的非空页面复制到新文档中,即可创建新文档
第1步:

List<Integer> emptyPages = new ArrayList<>();
PdfDocument pdfDocument = new PdfDocument(new PdfReader(new File(SRC)));
for(int i=1;i<pdfDocument.getNumberOfPages();i++){
    IsEmptyEventListener l = new IsEmptyEventListener();
    new PdfCanvasProcessor(l).processPageContent(pdfDocument.getPage(i));
    if(l.isEmptyPage()){
        emptyPages.add(i);
    } 
}
List emptyPages=new ArrayList();
PdfDocument PdfDocument=newpdfdocument(newpdfreader(newfile(SRC)));

对于(iTi=1;我如何衡量它们的大小?)UWEKEIM,我不想一页一页地拆分PDF文件。因为如果我把一本故事书一页一页地分页,我想什么会对我有用。我不想把PDF文件一页一页地拆开。因为如果我把一本故事书一页一页地拆开,我想什么会对我有用。
void copyNonBlankPages(List<Integer> blankPages, PdfDocument src, PdfDocument dst){
    int N = src.getNumberOfPages();
    List<Integer> toCopy = new ArrayList<>();
    for(int i=1;i<N;i++){
        if(!blankPages.contains(i)){
            toCopy.add(i);
        }
    }
    src.copyPagesTo(toCopy, dst);
}