summaryrefslogtreecommitdiff
path: root/gs/base/gdevpdt.c
diff options
context:
space:
mode:
authorRalph Giles <ralph.giles@artifex.com>2008-08-29 18:46:21 +0000
committerRalph Giles <ralph.giles@artifex.com>2008-08-29 18:46:21 +0000
commit6ff2582d038f99b79178082b200bdfe73f734456 (patch)
tree6db04fc72813760fdc6912a15875ad83d57943df /gs/base/gdevpdt.c
parent9d36ee856e41244d3cf0469fc0004d21e6911994 (diff)
Split the source tree into two new directories.
PSSRC files are now in 'gs/psi'. GLSRC files are now in 'gs/base'. This is to facilitate build modularization and merging in the ghostpdl tree. NOTE: msvc32.mak is now in psi, not src. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@9048 a1074d23-0009-0410-80fe-cf8c14f379e6
Diffstat (limited to 'gs/base/gdevpdt.c')
-rw-r--r--gs/base/gdevpdt.c54
1 files changed, 54 insertions, 0 deletions
diff --git a/gs/base/gdevpdt.c b/gs/base/gdevpdt.c
new file mode 100644
index 000000000..94720866f
--- /dev/null
+++ b/gs/base/gdevpdt.c
@@ -0,0 +1,54 @@
+/* Copyright (C) 2001-2006 Artifex Software, Inc.
+ All Rights Reserved.
+
+ This software is provided AS-IS with no warranty, either express or
+ implied.
+
+ This software is distributed under license and may not be copied, modified
+ or distributed except as expressly authorized under the terms of that
+ license. Refer to licensing information at http://www.artifex.com/
+ or contact Artifex Software, Inc., 7 Mt. Lassen Drive - Suite A-134,
+ San Rafael, CA 94903, U.S.A., +1(415)492-9861, for further information.
+*/
+
+/* $Id$ */
+/* Miscellaneous external entry points for pdfwrite text */
+#include "gx.h"
+#include "memory_.h"
+#include "gdevpdfx.h"
+#include "gdevpdtx.h"
+#include "gdevpdtf.h"
+#include "gdevpdti.h"
+#include "gdevpdts.h"
+
+/* GC descriptors */
+private_st_pdf_text_data();
+
+/* ---------------- Initialization ---------------- */
+
+/*
+ * Allocate and initialize the text data structure.
+ */
+pdf_text_data_t *
+pdf_text_data_alloc(gs_memory_t *mem)
+{
+ pdf_text_data_t *ptd =
+ gs_alloc_struct(mem, pdf_text_data_t, &st_pdf_text_data,
+ "pdf_text_data_alloc");
+ pdf_outline_fonts_t *pofs = pdf_outline_fonts_alloc(mem);
+ pdf_bitmap_fonts_t *pbfs = pdf_bitmap_fonts_alloc(mem);
+ pdf_text_state_t *pts = pdf_text_state_alloc(mem);
+
+ if (pts == 0 || pbfs == 0 || pofs == 0 || ptd == 0) {
+ gs_free_object(mem, pts, "pdf_text_data_alloc");
+ gs_free_object(mem, pbfs, "pdf_text_data_alloc");
+ gs_free_object(mem, pofs, "pdf_text_data_alloc");
+ gs_free_object(mem, ptd, "pdf_text_data_alloc");
+ return 0;
+ }
+ memset(ptd, 0, sizeof(*ptd));
+ ptd->outline_fonts = pofs;
+ ptd->bitmap_fonts = pbfs;
+ ptd->text_state = pts;
+ return ptd;
+}