#define PS_MAXWIDTH 255
static void ps_comment(FILE *fp, char const *leader, word *words);
-static void ps_token(FILE *fp, int *cc, char const *fmt, ...);
static void ps_string_len(FILE *fp, int *cc, char const *str, int len);
static void ps_string(FILE *fp, int *cc, char const *str);
}
}
- fp = fopen(filename, "w");
+ if (!strcmp(filename, "-"))
+ fp = stdout;
+ else
+ fp = fopen(filename, "w");
if (!fp) {
error(err_cantopenw, filename);
return;
/* XXX This may request the same font multiple times. */
if (fe->font->info->fontfile) {
fprintf(fp, "%%%%BeginResource: font %s\n", fe->font->info->name);
- pf_writeps(fe->font->info, fp);
+ if (fe->font->info->filetype == TYPE1)
+ pf_writeps(fe->font->info, fp);
+ else
+ sfnt_writeps(fe->font->info, fp);
fprintf(fp, "%%%%EndResource\n");
} else {
fprintf(fp, "%%%%IncludeResource: font %s\n",
fprintf(fp, "%%%%EOF\n");
- fclose(fp);
+ if (fp != stdout)
+ fclose(fp);
sfree(filename);
}
fprintf(fp, "\n");
}
-static void ps_token(FILE *fp, int *cc, char const *fmt, ...) {
+void ps_token(FILE *fp, int *cc, char const *fmt, ...) {
va_list ap;
va_start(ap, fmt);