Load document from FTP

Following example demonstrates how to process documents from FTP.

public static void Run()
    string filePath = "ftp://localhost/sample.doc";
    using (Stream stream = GetFileFromFtp(filePath))
        using (Signature signature = new Signature(stream))
            QRCodeSignOptions options = new QRCodeSignOptions("JohnSmith")
                EncodeType = QRCodeTypes.QR,
                Left = 100,
                Top = 100

            // sign document to file
            signature.Sign("SampleSigned", options);

private static Stream GetFileFromFtp(string filePath)
    Uri uri = new Uri(filePath);
    FtpWebRequest request = CreateRequest(uri);

    using (WebResponse response = request.GetResponse())
        return GetFileStream(response);

private static FtpWebRequest CreateRequest(Uri uri)
    FtpWebRequest request = (FtpWebRequest)WebRequest.Create(uri);
    request.Method = WebRequestMethods.Ftp.DownloadFile;
    return request;

private static Stream GetFileStream(WebResponse response)
    MemoryStream fileStream = new MemoryStream();

    using (Stream responseStream = response.GetResponseStream())

    fileStream.Position = 0;
    return fileStream;

More resources

GitHub Examples

You may easily run the code above and see the feature in action in our GitHub examples:

Free Online App 

Along with full-featured .NET library we provide simple, but powerful free Apps.
You are welcome to eSign PDF, Word, Excel, PowerPoint documents with free to use online GroupDocs Signature App.