示例#1
0
    static void Main(string[] args)
    {
        DocApi docraptor = new DocApi();

        docraptor.Configuration.Username = "******";
        // docraptor.Configuration.Debug = true; // Not supported in Csharp

        Doc doc = new Doc(
            name: "csharp-async.pdf",
            test: true,
            documentContent: "<html><body>Hello from C#</body></html>",
            documentType: Doc.DocumentTypeEnum.Pdf
            );

        AsyncDoc response = docraptor.CreateAsyncDoc(doc);

        DocStatus statusResponse;

        while (true)
        {
            statusResponse = docraptor.GetAsyncDocStatus(response.StatusId);
            if (statusResponse.Status == "completed")
            {
                break;
            }
            Thread.Sleep(1000);
        }

        docraptor.GetAsyncDoc(statusResponse.DownloadId);
    }
示例#2
0
    static void Main(string[] args)
    {
        try {
            Configuration.Default.Username = "******"; // this key works for test documents
            DocApi docraptor = new DocApi();

            Doc doc = new Doc(
                Test: true,                                               // test documents are free but watermarked
                DocumentContent: "<html><body>Hello World</body></html>", // supply content directly
                // DocumentUrl: "http://docraptor.com/examples/invoice.html",  // or use a url
                Name: "docraptor-csharp.pdf",                             // help you find a document later
                DocumentType: Doc.DocumentTypeEnum.Pdf                    // pdf or xls or xlsx
                // Javascript: true,                                           // enable JavaScript processing
                // PrinceOptions: new PrinceOptions(
                //   Media: "screen",                                          // use screen styles instead of print styles
                //   Baseurl: "http://hello.com"                               // pretend URL when using document_content
                // )
                );

            AsyncDoc response = docraptor.CreateAsyncDoc(doc);

            AsyncDocStatus status_response;
            Boolean        done = false;
            while (!done)
            {
                status_response = docraptor.GetAsyncDocStatus(response.StatusId);
                Console.WriteLine("doc status: " + status_response.Status);
                switch (status_response.Status)
                {
                case "completed":
                    done = true;
                    byte[] doc_response = docraptor.GetAsyncDoc(status_response.DownloadId);
                    File.WriteAllBytes("/tmp/docraptor-csharp.pdf", doc_response);
                    Console.WriteLine("Wrote PDF to /tmp/docraptor-csharp.pdf");
                    break;

                case "failed":
                    done = true;
                    Console.WriteLine("FAILED");
                    Console.WriteLine(status_response);
                    break;

                default:
                    Thread.Sleep(1000);
                    break;
                }
            }
        } catch (DocRaptor.Client.ApiException error) {
            Console.WriteLine(error);
        }
    }