|
Packit |
0ec9dd |
/* viewer-render.c: Common code for rendering in viewers
|
|
Packit |
0ec9dd |
*
|
|
Packit |
0ec9dd |
* Copyright (C) 1999, 2004 Red Hat Software
|
|
Packit |
0ec9dd |
* Copyright (C) 2001 Sun Microsystems
|
|
Packit |
0ec9dd |
*
|
|
Packit |
0ec9dd |
* This library is free software; you can redistribute it and/or
|
|
Packit |
0ec9dd |
* modify it under the terms of the GNU Library General Public
|
|
Packit |
0ec9dd |
* License as published by the Free Software Foundation; either
|
|
Packit |
0ec9dd |
* version 2 of the License, or (at your option) any later version.
|
|
Packit |
0ec9dd |
*
|
|
Packit |
0ec9dd |
* This library is distributed in the hope that it will be useful,
|
|
Packit |
0ec9dd |
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit |
0ec9dd |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Packit |
0ec9dd |
* Library General Public License for more details.
|
|
Packit |
0ec9dd |
*
|
|
Packit |
0ec9dd |
* You should have received a copy of the GNU Library General Public
|
|
Packit |
0ec9dd |
* License along with this library; if not, write to the
|
|
Packit |
0ec9dd |
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
Packit |
0ec9dd |
* Boston, MA 02111-1307, USA.
|
|
Packit |
0ec9dd |
*/
|
|
Packit |
0ec9dd |
#ifndef VIEWER_RENDER_H
|
|
Packit |
0ec9dd |
#define VIEWER_RENDER_H
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
#include <pango/pango-layout.h>
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
#include "viewer.h"
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
typedef enum {
|
|
Packit |
0ec9dd |
HINT_DEFAULT,
|
|
Packit |
0ec9dd |
HINT_NONE,
|
|
Packit |
0ec9dd |
HINT_AUTO,
|
|
Packit |
0ec9dd |
HINT_FULL
|
|
Packit |
0ec9dd |
} HintMode;
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
typedef void (*RenderCallback) (PangoLayout *layout,
|
|
Packit |
0ec9dd |
int x,
|
|
Packit |
0ec9dd |
int y,
|
|
Packit |
0ec9dd |
gpointer cb_context,
|
|
Packit |
0ec9dd |
gpointer cb_data);
|
|
Packit |
0ec9dd |
typedef void (*TransformCallback) (PangoContext *context,
|
|
Packit |
0ec9dd |
PangoMatrix *transform,
|
|
Packit |
0ec9dd |
gpointer cb_context,
|
|
Packit |
0ec9dd |
gpointer cb_data);
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
void fail (const char *format, ...) G_GNUC_PRINTF (1, 2) G_GNUC_NORETURN;
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
void parse_options (int argc,
|
|
Packit |
0ec9dd |
char *argv[]);
|
|
Packit |
0ec9dd |
void do_output (PangoContext *context,
|
|
Packit |
0ec9dd |
RenderCallback render_cb,
|
|
Packit |
0ec9dd |
TransformCallback transform_cb,
|
|
Packit |
0ec9dd |
gpointer cb_context,
|
|
Packit |
0ec9dd |
gpointer cb_data,
|
|
Packit |
0ec9dd |
int *width,
|
|
Packit |
0ec9dd |
int *height);
|
|
Packit |
0ec9dd |
void finalize (void);
|
|
Packit |
0ec9dd |
gchar *get_options_string (void);
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
extern const char *prog_name;
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
/* handled by viewer-render.c */
|
|
Packit |
0ec9dd |
extern const char *opt_font;
|
|
Packit |
0ec9dd |
extern gboolean opt_header;
|
|
Packit |
0ec9dd |
extern int opt_margin;
|
|
Packit |
0ec9dd |
extern int opt_markup;
|
|
Packit |
0ec9dd |
extern gboolean opt_rtl;
|
|
Packit |
0ec9dd |
extern double opt_rotate;
|
|
Packit |
0ec9dd |
extern gboolean opt_auto_dir;
|
|
Packit |
0ec9dd |
extern const char *opt_text;
|
|
Packit |
0ec9dd |
extern gboolean opt_waterfall;
|
|
Packit |
0ec9dd |
extern int opt_width;
|
|
Packit |
0ec9dd |
extern int opt_indent;
|
|
Packit |
0ec9dd |
extern PangoEllipsizeMode opt_ellipsize;
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
/* handled by viewer-main.c */
|
|
Packit |
0ec9dd |
extern gboolean opt_display;
|
|
Packit |
0ec9dd |
extern const char *opt_output;
|
|
Packit |
0ec9dd |
extern int opt_runs;
|
|
Packit |
0ec9dd |
extern const PangoViewer *opt_viewer;
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
/* handled by backend-specific code */
|
|
Packit |
0ec9dd |
extern int opt_dpi;
|
|
Packit |
0ec9dd |
extern HintMode opt_hinting;
|
|
Packit |
0ec9dd |
extern PangoColor opt_fg_color;
|
|
Packit |
0ec9dd |
extern guint16 opt_fg_alpha;
|
|
Packit |
0ec9dd |
extern gboolean opt_bg_set;
|
|
Packit |
0ec9dd |
extern PangoColor opt_bg_color;
|
|
Packit |
0ec9dd |
extern guint16 opt_bg_alpha;
|
|
Packit |
0ec9dd |
|
|
Packit |
0ec9dd |
#endif /* VIEWER_RENDER_H */
|