zoukankan      html  css  js  c++  java
  • PdfReader按页将PDF切割成多个PDF

    private MemoryStream GetNewPdfByPageNum(PdfReader pdfReader, int pageNum)
    {
        MemoryStream memoryStream = new MemoryStream();
        try
        {
            iTextSharp.text.Document document = new iTextSharp.text.Document();
            PdfCopy copy = new PdfCopy(document, memoryStream) { CloseStream = false };
            document.Open();
            copy.AddPage(copy.GetImportedPage(pdfReader, pageNum));
            document.Close();
        }
        catch { }
        return memoryStream;
    }
    var desktopPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
    var pdfBytes = new WebClient().DownloadData("http://....pdf");
    var pdfReader = new PdfReader(pdfBytes);
    for (int i = 1; i < pdfReader.NumberOfPages + 1; i++)
    {
        var memoryStream = GetNewPdfByPageNum(pdfReader, i);
        FileStream file = new FileStream($"{desktopPath}/page{i}.pdf", FileMode.CreateNew);
        memoryStream.WriteTo(file);
        file.Dispose();
    }
    pdfReader.Close();
  • 相关阅读:
    字符串,列表和元组-3
    数据和表达式-2
    python3.6.2(32位)的安装-1
    HTTP协议
    bug无法重现
    当开发说不是BUG时怎么办
    Python流程分类初试
    私有,封装
    Python继承
    编译型语言和解释型语言
  • 原文地址:https://www.cnblogs.com/wu_u/p/10672265.html
Copyright © 2011-2022 走看看