1.3. Why Scryber, and why not.

We love scyber, and we think it is one of the most flexible and fastest PDF document template generation engines out there.

In the GUI or MVC examples you have hopefully seen some of the power within scryber.

We developed it over a number of years, as there was always an end of project ask to create reports, and most of the alternative libraries were either too low level or too costly.

We really hope it meets the needs of many other developers to exceed the needs of their clients, without a huge learning curve, or overhead.

1.3.1 What scryber is not

The simplest way to put this is, scryber is not an web page printing engine.

It will not simply take an html page and render a PDF from it, there are many other packages; libraries and engines which can do this.

Scryber also does not fully support all css or html tags. Flexbox, :before pseudo elements, content properties, etc. Some are in the pipeline, some are in ideas and others will not make it.

However, we think, with scryber, you will have better control of layout, pagination, styles and content. The maintenance and separation of the data you are presenting with the design you want it to fit.

In the end we think it is faster and better

1.3.2. Using templates

A key feature of the scryber library is the use of templates. Separating the content from the data and the style your projects and solutions is always more manageable. Scryber benefits from this separation and allows designers to work with developers to build great documents.

1.3.3. Built for the cloud

Scryber can reference remote images, fonts, even inner templates and content from any base url. Including these resources is as simple as adding the url. Scryber will inteligently load these and use them in your layouts.

1.3.4. Reduced learning curve

Whilst scryber does not support the full set of css selectors, or relative dimensions, It does use standard capabilities with xhtml and css, that means you are up and running quickly and efficiently, and able to concentrate on the need, rather than coming up to speed.

1.3.5. Low code/No code

Using our expressions library and the handlebars ‘{{ }}’ binding syntax it is easy to create your templates and build out your documents in a repeatable manner that des not rely on the writing of reams of code to build a document. It supports the use of functions to calculate values or make decisions in your templates.

But, we do of course fully support the use of code to create full documents or just partial components.

1.3.6. Full document lifecycle

Scryber was built from the ground up to create documents. It has a strong lifecycle model that allows for interaction and injection at any point to create the document you need. Along with this there is full support for tracing and logging, so the black box is more transparent.

1.3.7. Extensibility

Finally, scryber is completely extensible. The components we have built meet our needs, but if there is something it doesn’t do, there is usually a way to make it work.