Beschrijving interface XpressionDsgnr.com
Voorbeeldimplementatie
Een voorbeeld implementatie kun je vinden op https://xpressiondsgnr.com/example.html
Get started
De minimale HTML die je nodig hebt om XpressionDsgnr op te starten is:
<div id="content"></div> <script src="https://xpressiondsgnr.com/dist/xdsgnr.js" type="text/javascript"></script> <script> var xd = new window.XpressionDsgnr('content', {width: 210, height: 297, bleed: 3, apikey: 'your-api-key' }); </script>
Hierbij is de div met id content de container waar de app in draait. De eerste script-tag laadt de externe library. In de tweede scrip-tag wordt XpressionDsgnr geinitialiseert.
Interface Frontend
Constructor - New
var xd = new window.XpressionDsgnr(containername,config)
Initialiseert XpressionDsgnr
Property | Uitleg | |
---|---|---|
containername | id van de div waarin XpressionDsgnr moet draaien | |
config | apikey | Jou API-key van XpressionDsgnr deze key is alleen geldig vanaf de geconfigureerde domeinen. (Verplicht) |
width | Breedte van het uiteindelijke document in mm (verplicht in indien er geen documentkey is meegegeven) | |
height | Hoogte van het uiteindelijke document in mm (verplicht in indien er geen documentkey is meegegeven) | |
bleed | Breedte van de afloop in mm (verplicht in indien er geen documentkey is meegegeven) | |
pagecount | Aantal pagina's van het document (moet nog geimplementeerd worden) | |
allowNewPage | true / false(default), Geeft aan of de eindgebruiker zelf pagina's mag toevoegen | |
templatekey | De key van de template die in de backend is toegevoegd. (deze key is te zien als je na het toevoegen weer op het wijzig-icoon klikt) | |
documentkey | De key van een eerder opgeslagen / gegenereerd document. Indien deze key wordt meegegeven, kan dit document opnieuw bewerkt worden. | |
bgimage | Volledige url naar een afbeelding die als achtergrond afbeelding gebruikt moet worden. Denk eraan dat de CORS-headers van deze url toestaan dat de afbeelding extern geladen wordt. | |
userkey | Indien de aanroepende website users kent, is het mogelijk om een user-key mee te geven. Hiermee wordt het mogelijk dat een user zijn eerder geuploade beelden in meerdere documenten kan gebruiken. |
save
xd.save(callbackfunction)
Slaat het huidige document op. (implementatie om een naam mee te kunnen geven volgt...)
Property | Uitleg | |
---|---|---|
callbackfunction | Indien het document is opgeslagen wordt deze functie aangeroepen met parameter dk (documentkey). Deze key kan in een later stadium meegegeven worden om het document opnieuw te bewerken of de pdf te genreren. |
Voorbeeld
xd.save(function(dk){console.log('document saved as ' + dk)})
createPDF
xd.createPDF(callbackfunction)
Genereert een PDF van het huidige document (lores, hires volgt)
Property | Uitleg | |
---|---|---|
callbackfunction | Indien het document is gegenereert wordt deze functie aangeroepen met parameter data. Data is een hash met twee waarden: pdf - de downloadlink naar de pdf en thumb: de link naar de thumb |
Voorbeeld
xd.createPDF(function(data){console.log(data)})
Interface Backend
Users
Om gebruik te kunnen maken van users (die hun eigen documenten en afbeeldingen kunnen bewaren). Kan via de backend het userbeheer uitgevoerd worden. Hiertoe moet naast de apikey ook de secretkey meegestuurd worden
List users
GET https://xpressiondsgnr.com/users?apikey=[apikey]&secretkey=[secretkey]Return: een json-array met voor elke user de XpressionDsgnr userhash en de id zoals die is meegegeven in de create
New user
POST https://xpressiondsgnr.com/users params: apikey=[apikey] secretkey=[secretkey] myid=[id van de user in je eigen database (of een ander kenmerk)]Return: een json object met de XpressionDsgnr userhash en de id zoals die is meegegeven in de create
New user
DELETE https://xpressiondsgnr.com/users/[myid] params: apikey=[apikey] secretkey=[secretkey] myid=[id van de user in je eigen database (of een ander kenmerk)]
Templates
Resellers kunnen een lijst met templates opvragen tbv de koppeling met hun eigen backend
POST https://xpressiondsgnr.com/backend/templates params: resellerapikey: apikey van de reseller accountapikey: apikey van de account waarvan de templates opgevraagd wordenReturn:
[{id: 1, decription: "Examplegroup 1", templates: [ {key: "abcd-efgh-1234", description: "Template 1"}, {key: "abcd-efgh-1235", description: "Template 2"} ] }, anothergroup.... ]
HiresPDF
Via de backend kan ook de hires-pdf opgevraagd worden
POST https://xpressiondsgnr.com/backend/hirespdf params: apikey: apikey van de account documenthash: id van het document zoals die door de save functie is geretourneertReturn: json met de url van de downloadlocatie van de pdf