2017-04-23 730 views
1

打开我使用到PdfiumViewer PDF转换为图像C#关闭PDF与PdfiumViewer

var document = PdfiumViewer.PdfDocument.Load(pdfoutputFilePath + TafCode + ".pdf"); 
var image = document.Render(0, 842, 595, true); 
image.Save(imageoutputFilePath + TafCode + ".png", ImageFormat.Png); 

当我做我删除PDF

错误打开PDF中号!

pdf如何关闭?

回答

1

将保存到图像代码中用于确保调用“Dispose”并解除资源锁定。

using (var document = PdfiumViewer.PdfDocument.Load(pdfoutputFilePath + TafCode + ".pdf")) 
{ 
    var image = document.Render(0, 842, 595, true); 
    image.Save(imageoutputFilePath + TafCode + ".png", ImageFormat.Png); 
} 

你可以告诉大家通过看PdfDocument类的代码定义“处置”的方法来释放相应的文件。

public void Dispose() 
    { 
     Dispose(true); 
     GC.SuppressFinalize(this); 
    } 

    /// <summary>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</summary> 
    /// <param name="disposing">Whether this method is called from Dispose.</param> 
    protected void Dispose(bool disposing) 
    { 
     if (!_disposed && disposing) 
     { 
      if (_file != null) 
      { 
       _file.Dispose(); 
       _file = null; 
      } 

      _disposed = true; 
     } 
    }