+ gfxsource_internal_t*i = (gfxsource_internal_t*)pi->parent->internal;
+
+ if(pi->nocopy) {
+ msg("<fatal> PDF disallows copying");
+ exit(0);
+ }
+
+ CommonOutputDev*outputDev = 0;
+ if(pi->config_full_bitmap_optimizing) {
+ FullBitmapOutputDev*d = new FullBitmapOutputDev(pi->info, pi->doc);
+ outputDev = (CommonOutputDev*)d;
+ } else if(pi->config_bitmap_optimizing) {
+ BitmapOutputDev*d = new BitmapOutputDev(pi->info, pi->doc);
+ outputDev = (CommonOutputDev*)d;
+ } else {
+ GFXOutputDev*d = new GFXOutputDev(pi->info, pi->doc);
+ outputDev = (CommonOutputDev*)d;
+ }
+ /* pass global parameters to PDF driver*/
+ parameter_t*p = i->parameters.device_config;
+ while(p) {
+ outputDev->setParameter(p->name, p->value);
+ p = p->next;
+ }
+ p = pi->parameters.device_config;
+ while(p) {
+ outputDev->setParameter(p->name, p->value);
+ p = p->next;
+ }