Pechkin documentation / tutorial

user1518729 picture user1518729 · Aug 25, 2012 · Viewed 16.9k times · Source

I tried wkhtmltopdf which worked perfectly... But on the server I cant start a process so my solution would be this: https://github.com/gmanny/Pechkin

But I have no idea how to implement it in my project... Are there any samples I can just open and run?

I had a look at this example:

byte[] pdfBuf = new SimplePechkin(new GlobalConfig()).Convert("<html><body><h1>Hello world!</h1></body></html>");

// create global configuration object
GlobalConfig gc = new GlobalConfig();

// set it up using fluent notation
gc.SetMargins(new Margins(300, 100, 150, 100))
  .SetDocumentTitle("Test document")
  .SetPaperSize(PaperKind.Letter);
//... etc

// create converter
IPechkin pechkin = new SynchronizedPechkin(gc);

// subscribe to events
pechkin.Begin += OnBegin;
pechkin.Error += OnError;
pechkin.Warning += OnWarning;
pechkin.PhaseChanged += OnPhase;
pechkin.ProgressChanged += OnProgress;
pechkin.Finished += OnFinished;

// create document configuration object
ObjectConfig oc = new ObjectConfig();

// and set it up using fluent notation too
oc.SetCreateExternalLinks(false)
  .SetFallbackEncoding(Encoding.ASCII)
  .SetLoadImages(false);
  .SetPageUri("http://google.com");
//... etc

// convert document
byte[] pdfBuf = pechkin.Convert(oc);

But I didn't make it work... It looks so easy but no idea how to implement it... But I see Gman has worked with it.

Thank you in advance... :)

Answer

blins picture blins · Sep 11, 2012

Here is the simplest example I could think of which also writes the output to a file.

byte[] pdfBuf = new SimplePechkin(new GlobalConfig()).Convert(html);
File.WriteAllBytes(path, pdfBuf);