Link to home
Start Free TrialLog in
Avatar of ITsolutionWizard
ITsolutionWizardFlag for United States of America

asked on

I like to have some features from but it is too expensive to us. Do you know any alternative? All we want is to use Mvc or aspnet to modify the pdf like allow users to create fields and labels
Avatar of Scott Fell
Scott Fell
Flag of United States of America image

Link to home
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of ITsolutionWizard


both software u mention can't drag and drop an object into the pdf.
You said, "All we want is to use Mvc or aspnet to modify".

Any drag and drop you have to program yourself, these are not stand alone programs.
There may be other options. Can you walk me through in detail exactly what you are doing and how you want to create/edit the pdf.  List the steps that you would have used if money was no object.
Thank Scott,

We want something this one:

Allow the end user drag and drop object (checkbox, textbox, and etc) to selected PDF on the browser.
RADpdf can get the job done but I do not like their UI and signature option is very limited.
Of course, I can't afford $3500.00
My first choice would be adobe acrobat pro it will only cost $15 per month.

My second choice is is Let me say this does work and for anybody on a budget is a very good first choice. I use adobe because I have the entire suite.  It is a one time charge of $54.50. Note there are different licensing options for an SDK and they will not be any less expensive than what you already looked at. Adobe has an SDK too but I am not crazy about their terms if you are going to develop for your own project.

Also check out iText 

Are you trying to recreate what does?  The open source options I originally showed you can allow you to program whatever you want. However, as you can see, there is no out of the box drag and drop. The drag and drop would require you to create some front end programming perhaps in javascript. It would probably be cheaper to just pay for the slick ready to go option than spend a month or so to develop your own.

I had my own series of questions on developing for PDF files and I have some of my thoughts on the different options here
You mentioned:
The drag and drop would require you to create some front end programming perhaps in javascript

Do you know any plugin can do that?  but both pdfsharp & pdflab does not have a way to accept html object on pdf.
Thank you for your time but I do not think your suggestion is working to us
Those two options are for code. PDFSharp is something you add to your .NET project
using System;
using System.Diagnostics;
using System.IO;
using PdfSharp;
using PdfSharp.Drawing;
using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;
namespace HelloWorld
  /// <summary>
  /// This sample is the obligatory Hello World program.
  /// </summary>
  class Program
    static void Main(string[] args)
      // Create a new PDF document
      PdfDocument document = new PdfDocument();
      document.Info.Title = "Created with PDFsharp";
      // Create an empty page
      PdfPage page = document.AddPage();
      // Get an XGraphics object for drawing
      XGraphics gfx = XGraphics.FromPdfPage(page);
      // Create a font
      XFont font = new XFont("Verdana", 20, XFontStyle.BoldItalic);
      // Draw the text
      gfx.DrawString("Hello, World!", font, XBrushes.Black,
        new XRect(0, 0, page.Width, page.Height),
      // Save the document...
      const string filename = "HelloWorld.pdf";
      // ...and start a viewer.

Open in new window

It will be more work but it is free. If you want something easy with low/no code like your example, you are going to be paying in the $1000 to  $3000 range for a server/commercial license.

Another option I gave was and this can be a $500 option. They also have an api you can use where you post your code to their server and that is just $200 per year for 2000 conversions. That would be an very inexpensive option.
public ActionResult Convert(FormCollection collection)
    // read parameters from the webpage
    string url = collection["TxtUrl"];
    string pdf_page_size = collection["DdlPageSize"];
    PdfPageSize pageSize = (PdfPageSize)Enum.Parse(typeof(PdfPageSize), pdf_page_size, true);
    string pdf_orientation = collection["DdlPageOrientation"];
    PdfPageOrientation pdfOrientation = (PdfPageOrientation)Enum.Parse(
        typeof(PdfPageOrientation), pdf_orientation, true);
    int webPageWidth = 1024;
        webPageWidth = System.Convert.ToInt32(collection["TxtWidth"]);
    catch { }
    int webPageHeight = 0;
        webPageHeight = System.Convert.ToInt32(collection["TxtHeight"]);
    catch { }
    // instantiate a html to pdf converter object
    HtmlToPdf converter = new HtmlToPdf();
    // set converter options
    converter.Options.PdfPageSize = pageSize;
    converter.Options.PdfPageOrientation = pdfOrientation;
    converter.Options.WebPageWidth = webPageWidth;
    converter.Options.WebPageHeight = webPageHeight;
    // create a new pdf document converting an url
    PdfDocument doc = converter.ConvertUrl(url);
    // save pdf document
    byte[] pdf = doc.Save();
    // close pdf document
    // return resulted pdf document
    FileResult fileResult = new FileContentResult(pdf, "application/pdf");
    fileResult.FileDownloadName = "Document.pdf";
    return fileResult;

Open in new window

Otherwise, you are right, there is nothing else less expensive than what you already found if you want that type of ready made deal.
The source codes you posted here is not related to drag & drop that i mentioned.
Correct, the examples are not directly related to what you need to do or meant to solve your coding. They are only to show how the library works and direct copy and paste from the site examples.  What you want to do is not going to be an easy and quick solution.  Please keep in mind your question here is asking how about some features similar to another project that you want to incorporate into an MVC project.  I am assuming you are able to use C# code or command line code on your own with a little direction.

There are going to be two major parts to your project.

1) Front end code - HTML, CSS, Javascript for visual and drag and drop.  

2) Back end code - to convert what the user created to a usable PDF and perhaps saving some data to a database and/or files to a server.

Like I said, RadPdf does exactly what you want now but the cost you are saying is too high at $3000.  You may spend 100 to 300 hours to recreate something close to that on your own. You have to ask yourself do you want to pay up front with cash and get exactly what you want or do you want to learn and code over a month or two to recreate an affect that is close. I think that time estimate may be conservative.

I would start with the front end first. I can tell you there will be a lot of javascript. You should be able to find some inexpensive icons to look professional. As a start, see some quick info on drag and drop

Once you have the front end done, then you can work on the back end were you are taking the html and sending it to the pdf library.  

One end of the spectrum is money up front and quick to market. The other end is very little money up front but a lot of time coding. I hope that makes sense.

If you go on your own, there are some UI kits worth looking into.
While this is too big to post a complete solution here, we can still help. What I suggest is making a very good plan of exactly what you want. Put it " paper ", think through and write out the user experience, research some UI kits for icons/look feel. Once you have that, the first step is going to be sketching out the layout of this main page.  That is probably a good first start and I would make a new question just for that. Once completed, work on converting to html and getting items to drag and then 'catch' the x,y coordinates of each element that can be saved.  When asking questions, be prepared with some code you have already started or just ask how to get started where you can work on your own. Then keep posting back new questions when you are stuck. I hope this makes senses.