summaryrefslogtreecommitdiff
path: root/Build/source/texk/dvipdfm/thumbnail.c
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/dvipdfm/thumbnail.c')
-rw-r--r--Build/source/texk/dvipdfm/thumbnail.c108
1 files changed, 0 insertions, 108 deletions
diff --git a/Build/source/texk/dvipdfm/thumbnail.c b/Build/source/texk/dvipdfm/thumbnail.c
deleted file mode 100644
index 003822745fc..00000000000
--- a/Build/source/texk/dvipdfm/thumbnail.c
+++ /dev/null
@@ -1,108 +0,0 @@
-/* $Header$
-
- This is dvipdfm, a DVI to PDF translator.
- Copyright (C) 1998, 1999 by Mark A. Wicks
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
- The author may be contacted via the e-mail address
-
- mwicks@kettering.edu
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <kpathsea/config.h>
-#include <kpathsea/c-ctype.h>
-#include "system.h"
-#include "config.h"
-#include "mfileio.h"
-#include "mem.h"
-#include "pdfobj.h"
-#include "thumbnail.h"
-
-#ifdef HAVE_LIBPNG
-#include <png.h>
-#include "pngimage.h"
-
-#define TMP "/tmp"
-
-static char *guess_name (const char *thumb_filename)
-{
- /* Build path name for anticipated thumbnail image */
- char *tmpdir, *tmpname;
- if (!(tmpdir = getenv ("TMPDIR")) &&
- !(tmpdir = getenv ("TEMP")) &&
- !(tmpdir = getenv ("TMP")))
- tmpdir = TMP;
- tmpname = NEW (strlen(tmpdir)+strlen(thumb_filename)+strlen(DIR_SEP_STRING)+1,
- char);
- strcpy (tmpname, tmpdir);
- if (!IS_DIR_SEP (tmpname[strlen(tmpname)-1])) {
- strcat (tmpname, DIR_SEP_STRING);
- }
- strcat (tmpname, thumb_filename);
- return tmpname;
-}
-
-static char thumbnail_remove_opt = 0;
-void thumb_remove(void)
-{
- thumbnail_remove_opt = 1;
-}
-
-static unsigned char sigbytes[4];
-
-pdf_obj *do_thumbnail (const char *thumb_filename)
-{
- pdf_obj *image_stream = NULL, *image_ref = NULL;
- int found_in_cwd = 0;
- FILE *thumb_file;
- char *guess_filename = NULL;
- guess_filename = guess_name (thumb_filename);
- if ((thumb_file = MFOPEN (thumb_filename, FOPEN_RBIN_MODE))) {
- found_in_cwd = 1;
- } else if (!(thumb_file = MFOPEN (guess_filename, FOPEN_RBIN_MODE))) {
- fprintf (stderr, "\nNo thumbnail file\n");
- return NULL;
- }
- if (fread (sigbytes, 1, sizeof(sigbytes), thumb_file) !=
- sizeof(sigbytes) ||
- (!png_check_sig (sigbytes, sizeof(sigbytes)))) {
- fprintf (stderr, "\nThumbnail not a png file! Skipping\n");
- return NULL;
- }
- rewind (thumb_file);
-
- if ((image_stream = start_png_image (thumb_file, NULL))) {
- image_ref = pdf_ref_obj (image_stream);
- pdf_release_obj (image_stream);
- } else {
- image_ref = NULL;
- }
- if (thumbnail_remove_opt && found_in_cwd)
- remove (thumb_filename);
- else if (thumbnail_remove_opt)
- remove (guess_filename);
- if (guess_filename)
- RELEASE (guess_filename);
- MFCLOSE (thumb_file);
- return image_ref;
-}
-
-#endif /* HAVE_LIBPNG */
-
-
-