Commit Graph

31 Commits

Author SHA1 Message Date
2aabbbd9c7 Bug 662787 - Segfaults when trying to set a large text size
If a font size is too big for cairo or pango to deal with, nicely back
up from rendering and alert the user via an error dialog.
2013-10-24 20:23:51 +13:00
697572ccc0 app,libgimp*: fix includes to follow our include policy
- don't include <gdk-pixbuf/gdk-pixbuf.h> in headers in app/
- instead, include it in many .c files instead of <glib-object.h>,
  finally acknowledging the fact that app/ depends on gdk-pixbuf almost
  globally
- fix up includes as if libgimpbase depended in GIO, which it soon will
2013-10-15 01:58:39 +02:00
b25f9abedf Bug 676413: Text to Path cuts off without covering the whole layer
Use an unbounded cairo_recording_surface to extract a
cairo_path_t from a pango_layout.
2012-10-30 18:07:08 +01:00
f13abfa3f0 app: change image parameter in gimp_text_layout_new() to xres,yres
Because GimpTextLayout doesn't depend on any image, it only needs a
resolution.
2011-03-18 02:31:20 +01:00
db6a669c4b app: add "markup" property to GimpText
And prefer it over "text" when rendering. Everything is exactly as
before if "markup" is never set.
2010-02-26 01:27:05 +01:00
ea7495a95c app: take the rendering direction into account when adjusting the x-offset
Move the layout to the right edge of the bounding box if LTR and RIGHT
*or* RTL and LEFT.
2010-02-21 17:47:21 +01:00
cfc3c4c693 initialize all fields of GimpCoords (based on a patch by Massimo) 2009-12-14 20:28:47 +01:00
d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
7dc80b79be app/text/Makefile.am removed.
2008-11-04  Sven Neumann  <sven@gimp.org>

	* app/text/Makefile.am
	* app/text/gimptext-bitmap.[ch]: removed.

	* app/text/gimptext-private.h
	* app/text/gimptext-vectors.c
	* app/text/gimptextlayer.c
	* app/text/gimptextlayout-render.[ch]
	* app/text/gimptextlayout.c: removed text render abstraction as
	this is now sufficiently provided by PangoCairo.


svn path=/trunk/; revision=27542
2008-11-03 23:25:05 +00:00
ee414d9e6f Merge on-canvas GSoC project:
2008-10-26  Michael Natterer  <mitch@gimp.org>

	Merge on-canvas GSoC project:

	* configure.in: check for pangocairo.

	* app/Makefile.am
	* app/text/Makefile.am: add its CFLAGS and LIBS.

	* app/text/gimptext-bitmap.[ch]
	* app/text/gimptext-private.h
	* app/text/gimptext-vectors.[ch]
	* app/text/gimptextlayer.c
	* app/text/gimptextlayout-render.c
	* app/text/gimptextlayout.c: port to pangocairo.

	* menus/Makefile.am
	* menus/text-tool-menu.xml
	* app/menus/menus.c
	* app/actions/Makefile.am
	* app/actions/actions.c
	* app/actions/text-tool-actions.[ch]
	* app/actions/text-tool-commands.[ch]: add a context menu for the
	text tool similar to GtkEntry's context menu.

	* app/tools/gimprectangletool.[ch]: add "narrow-mode" property.

	* app/tools/gimptextoptions.[ch]
	* app/widgets/gimptexteditor.[ch]: take a text buffer for the
	standalone text editor window instead of creating one internally.

	* app/tools/gimptexttool.[ch]: all the new wonderful on-canvas
	text editing logic. Wheee!


svn path=/trunk/; revision=27419
2008-10-26 17:39:55 +00:00
5503e6a055 Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h had a
2008-10-09  Michael Natterer  <mitch@gimp.org>

	Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h
	had a GEGL dependency (they will have in the next commit, but I
	wanted to keep the commit separate).

	* app/dialogs/Makefile.am
	* app/file/Makefile.am
	* app/gui/Makefile.am
	* app/menus/Makefile.am
	* app/paint/Makefile.am
	* app/plug-in/Makefile.am
	* app/text/Makefile.am
	* app/vectors/Makefile.am
	* app/widgets/Makefile.am
	* app/xcf/Makefile.am: add GEGL_CFLAGS.

	* app/actions/*.c
	* app/core/*.c
	* app/dialogs/*.c
	* app/display/*.c
	* app/file/*.c
	* app/gui/*.c
	* app/menus/*.c
	* app/paint/*.c
	* app/pdb/gimppdb-utils.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/*.c
	* app/text/*.c
	* app/tools/*.c
	* app/vectors/*.c
	* app/widgets/*.c
	* app/xcf/*.c: add <gegl.h> or replace <glib-object.h> by <gegl.h>
	to all files which include a drawable subclass or gimpimage.h

	* tools/pdbgen/app.pl: include <gegl.h> instead of <glib-object.h>
	in all generated files.

	* app/pdb/*-cmds.c: regenerated.

	* data/images/gimp-splash.png: the goat is still sleeping.
	By Aurore Derriennic.


svn path=/trunk/; revision=27202
2008-10-09 20:24:04 +00:00
41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
cdfb4bcc29 use PANGO_DISABLE_DEPRECATED for pango < 0.13.0.
2006-05-29  Sven Neumann  <sven@gimp.org>

	* configure.in: use PANGO_DISABLE_DEPRECATED for pango < 0.13.0.

	* app/text/gimptext-vectors.c: added const qualifiers to the
	FT_Vector parameters of the FT_Outline_Funcs.
2006-05-29 20:12:52 +00:00
049872b361 app/*.[ch] converted tabs to spaces.
2006-04-12  Sven Neumann  <sven@gimp.org>

	* app/*.[ch]
	* app/*/*.[ch]: converted tabs to spaces.
2006-04-12 12:49:29 +00:00
24f8d7e7c2 cleanup.
2004-09-27  Michael Natterer  <mitch@gimp.org>

	* app/actions/data-commands.c: cleanup.

	* app/actions/vectors-commands.c
	* app/display/gimpdisplayshell.c
	* tools/pdbgen/pdb/paint_tools.pdb: removed unused #includes.

	* app/text/gimptext-bitmap.c
	* app/text/gimptext-parasite.c
	* app/text/gimptext-vectors.c
	* app/text/gimptext-xlfd.c
	* app/text/gimptext.c
	* app/text/gimptextlayer-xcf.c: include "text-types.h" instead
	of "text/text-types.h".

	* app/widgets/gimppatternselect.c: create a GimpPatternFactoryView
	instead of GimpDataFactoryView.

	* app/pdb/paint_tools_cmds.c: regenerated.
2004-09-27 12:30:04 +00:00
741854b58d define G*_DISABLE_DEPRECATED for all G* modules except GTK+. Don't do so
2004-05-11  Michael Natterer  <mitch@gimp.org>

	* configure.in: define G*_DISABLE_DEPRECATED for all G* modules
	except GTK+. Don't do so if compiling against GLib, GTK+ >= 2.5.0
	and Pango >= 1.5.0

	* libgimpwidgets/gimpoffsetarea.c: s/gdk_gc_unref/g_object_unref/

	* app/config/gimpconfig-deserialize.c
	* app/widgets/gimpdeviceinfo.c:
	s/g_value_set_foo_take_ownership/g_value_take_foo/

	* app/text/gimptext-vectors.c
	* app/text/gimptext-bitmap.c:
	s/pango_ft2_font_get_face/pango_fc_font_lock,unlock_face/
2004-05-11 17:19:24 +00:00
eb7f99bb8f added #defines for GimpCoords' default pressure, tilt and wheel values.
2004-02-23  Michael Natterer  <mitch@gimp.org>

	* app/core/core-types.h: added #defines for GimpCoords' default
	pressure, tilt and wheel values.

	* app/display/gimpdisplayshell-callbacks.c
	* app/paint/gimppaintcore-stroke.c
	* app/text/gimptext-vectors.c
	* tools/pdbgen/pdb/paint_tools.pdb: use them. Fixes lots more
	buggy default values for tilt (in fact all of them were wrong).

	* app/pdb/paint_tools_cmds.c: regenerated.
2004-02-23 22:36:50 +00:00
2af9dfb5d5 account for the fact that XLFD stores point sizes in decipoints.
2004-01-26  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext-xlfd.c (gimp_text_font_size_from_xlfd):
	account for the fact that XLFD stores point sizes in decipoints.

	* app/text/gimptext-vectors.c: s/TEXT_DEBUG/GIMP_TEXT_DEBUG/
2004-01-26 18:49:33 +00:00
d049af91e6 use recommended freetype include system of #include <ft2build.h> and
2003-11-03  Manish Singh  <yosh@gimp.org>

        * app/text/gimptext-vectors.c: use recommended freetype include
        system of #include <ft2build.h> and #include FT_GLYPH_H things.
2003-11-03 22:01:22 +00:00
a176b8993c removed excessive path debugging output.
2003-09-01  Sven Neumann  <sven@gimp.org>

	* app/xcf/xcf-load.c: removed excessive path debugging output.

	* app/text/gimptext-vectors.c: always close strokes created from
	text outlines.
2003-08-31 23:46:05 +00:00
cf35e23578 use the new bezier stroke API.
2003-09-01  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext-vectors.c: use the new bezier stroke API.

	* app/vectors/gimpbezierstroke.c (gimp_bezier_stroke_new_moveto):
	pass a NULL anchor to the first call of gimp_bezier_stroke_extend().
2003-08-31 22:33:50 +00:00
7c542ea775 app/gui/layers-commands.[ch] added "Merge Visible Layers..." and "Flatten
2003-08-31  Sven Neumann  <sven@gimp.org>

	* app/gui/layers-commands.[ch]
	* app/gui/layers-menu.c: added "Merge Visible Layers..." and
	"Flatten Image" menu entries as suggested in bug #120959.

	* app/text/gimptext-vectors.c: fixed function declaration; we are
	passing a PangoGlyph here, not a (PangoGlyph*).
2003-08-31 18:10:15 +00:00
c80ed6eff6 interpolate the position of the cubic control points correctly and set the
2003-08-28  Larry Ewing  <lewing@ximian.com>

	* app/text/gimptext-vectors.c (conicto): interpolate the position
	of the cubic control points correctly and set the previous control
	point.
	(cubicto): set the previous control point to the new value then
	add remaining points.
2003-08-29 00:48:44 +00:00
86e4d32a44 app/vectors/gimpstroke.[ch] Virtualized gimp_bezier_stroke_extend, added
2003-08-17  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpbezierstroke.[ch]: Virtualized
	gimp_bezier_stroke_extend, added gimp_stroke_is_extendable.

	* app/text/gimptext-vectors.c: changed accordingly.

	* app/vectors/gimpvectors.[ch]: added gimp_vectors_anchor_select.

	* app/tools/gimpvectoroptions.[ch]: dummy switch for future
	extensions

	* app/tools/gimpvectortool.[ch]: Major overhaul. Made use of
	gimp_vector_tool_oper_update, cleaned up
	gimp_vector_tool_button_press a lot and finally have a
	working cursor_update. Still buggy, but I wanted to have it
	in CVS.
2003-08-17 02:49:24 +00:00
5988e8967e app/text/Makefile.am new files that hold yet unused GimpItem transform
2003-08-15  Sven Neumann  <sven@gimp.org>

	* app/text/Makefile.am
	* app/text/gimptextlayer-transform.[ch]: new files that hold yet
	unused GimpItem transform methods.

	* app/text/gimptextlayer.[ch]: export gimp_text_layer_render().

	* app/text/gimptext-bitmap.[ch]
	* app/text/gimptext-private.h
	* app/text/gimptext-vectors.c
	* app/text/gimptextlayout-render.c: use the transformation matrix.
	This doesn't change anything since it's still always the identity
	matrix.
2003-08-15 19:45:41 +00:00
4ffa2cdefa define FT_GLYPH_FORMAT_OUTLINE as ft_glyph_format_outline if it doesn't
2003-07-28  Michael Natterer  <mitch@gimp.org>

	* app/text/gimptext-vectors.c: define FT_GLYPH_FORMAT_OUTLINE as
	ft_glyph_format_outline if it doesn't exist so it compiles with
	older freetype versions.
2003-07-28 12:51:51 +00:00
2858305cbe set the vectors offset from the text layer's offset.
2003-07-24  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_create_vectors): set
	the vectors offset from the text layer's offset.

	* app/text/gimptext-vectors.c: removed debugging output.
2003-07-24 16:40:22 +00:00
8ea47faa35 added control points. Looks correct now.
2003-07-24  Michael Natterer  <mitch@gimp.org>

	* app/text/gimptext-vectors.c: added control points.
	Looks correct now.
2003-07-24 13:25:31 +00:00
1f4714a056 more work on glyph decomposition.
2003-07-24  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext-vectors.c: more work on glyph decomposition.

	* app/tools/gimptextoptions.c
	* app/tools/gimptexttool.c: added button to create a path from text.
2003-07-24 13:10:27 +00:00
b0550de143 more work on the framework.
2003-07-20  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext-vectors.c: more work on the framework.
2003-07-20 21:58:27 +00:00
ce54744b8a Generalized text rendering and added a framework for creating GimpVectors
2003-07-20  Sven Neumann  <sven@gimp.org>

	Generalized text rendering and added a framework for creating
	GimpVectors objects with text outlines.

	* app/text/Makefile.am
	* app/text/gimptext-bitmap.[ch]: new files with bitmap render
	function.

	* app/text/gimptext-vectors.[ch]: new files for rendering to
	vectors.

	* app/text/gimptextlayout-private.h: removed ...
	* app/text/gimptext-private.h: ... and readded with this name.

	* app/text/gimptextlayout-render.[ch]: reduced to the generic parts
	of text rendering.

	* app/text/gimptextlayer.c
	* app/text/gimptextlayout.c: changed accordingly.
2003-07-20 21:23:01 +00:00