Spracherkennung für: .pdb vermutete Sprache: Abap {ABAP[104] Masm[48] Delphi[46]} [Methode: maximale Elemente, drei Dimensionen]
# GIMP - The GNU Image Manipulation
Program
# Copyright (C)
1995 Spencer Kimball
and Peter Mattis
# New
Text PDB API
# Copyright (C)
2008 Marcus Heese <heese@cip.ifi.lmu.de>
# 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
3 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, see <
https://www.gnu.org/licenses/>.
sub text_layer_new {
$blurb =
'Creates a new text layer.';
$help = <<
'HELP';
This procedure creates a new
text layer displaying the
specified @
text.
By
default the width
and height
of the layer will be determined
by the @
text
contents, the @font, @
size and @
unit.
The new layer still needs
to be added
to the image
as this
is not
automatic.
Add the new layer with the [
method@Image.insert_layer]
method.
The arguments are kept
as simple
as necessary
for the basic
case. All
text attributes, however, can be modified with the appropriate
`gimp_text_layer_set_
*()` procedures.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'image',
type =>
'image',
desc =>
'The image' },
{ name =>
'text',
type =>
'string',
desc =>
'The text to generate (in UTF-8 encoding)' },
{ name =>
'font',
type =>
'font',
desc =>
'The font to write the text with' },
{ name =>
'size',
type =>
'0.0 <= double <= 8192.0',
desc =>
'The size of text in either pixels or points' },
{ name =>
'unit',
type =>
'unit', allow_pixel =>
1,
desc =>
'The units of specified size' }
);
@outargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The new text layer. The object belongs to libgimp and you should not free it.' }
);
%invoke = (
code => <<
'CODE'
{
if (font == NULL ||
unit == NULL)
{
g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_ERROR_INVALID_ARGUMENT,
/* TODO: write a more explicit error message after
* string freeze.
*/
_(
"Failed to create text layer"));
success = FALSE;
}
if (success)
{
GimpText
*gimp_text;
GeglColor
*color;
color = gimp_context_get_foreground (context);
gimp_text = g_object_new (GIMP_TYPE_TEXT,
"text",
text,
"gimp", gimp,
"font", font,
"font-size",
size,
"font-size-unit",
unit,
"color",
color,
NULL);
layer = GIMP_TEXT_LAYER (gimp_text_layer_new (image, gimp_text));
g_object_unref (gimp_text);
if (! layer)
{
g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_ERROR_INVALID_ARGUMENT,
_(
"Failed to create text layer"));
success = FALSE;
}
}
}
CODE
);
}
sub text_layer_get_text {
$blurb =
'Get the text from a text layer as string.';
$help = <<
'HELP';
This procedure returns the
text from a
text layer
as a
string.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'text',
type =>
'string',
desc =>
'The text from the specified text layer.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"text", &
text,
NULL);
}
CODE
);
}
sub text_layer_set_text {
$blurb =
'Set the text of a text layer.';
$help = <<
'HELP';
This procedure changes the
text of a
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'text',
type =>
'string',
desc =>
'The new text to set' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"text",
text,
NULL);
}
CODE
);
}
sub text_layer_get_markup {
$blurb =
'Get the markup from a text layer as string.';
$help = <<
'HELP';
This procedure returns the markup
of the styles
from a
text layer.
The markup will be
in the
form of Pango
's markup - See
https://www.pango.org/ for more information about Pango
and its markup.
HELP
barak_pdb_misc(
'2010',
'2.8');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'markup',
type =>
'string',
desc =>
'The markup which represents the style of the specified text layer.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"markup", &markup,
NULL);
}
CODE
);
}
sub text_layer_set_markup {
$blurb =
'Set the markup for a text layer from a string.';
$help = <<
'HELP';
This procedure sets the markup
of the styles
for a
text layer.
The markup should be
in the
form of Pango
's markup - See
https://docs.gtk.org/Pango/pango_markup.html for a reference.
Note that GIMP
's text tool does not support all of Pango markup. Any unsupported
markup will still be applied
to your
text layer, yet would be dropped
as soon
as
you
edit text with the tool.
HELP
$author =
'Ian Munsie <darkstarsword@gmail.com>';
$copyright =
'Ian Munsie';
$date =
'2014';
$since =
'3.0';
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'markup',
type =>
'string',
desc =>
'The new markup to set' }
);
%invoke = (
code => <<
'CODE'
{
gchar
*markup_cat = NULL;
const gchar
*markup_ptr = markup;
if (strstr(markup,
"<markup>") == NULL || strstr(markup,
"</markup>") == NULL)
{
markup_cat = g_strconcat(
"<markup>", markup,
"</markup>", NULL);
markup_ptr = markup_cat;
}
if (pango_parse_markup (markup_ptr, -
1,
0, NULL, NULL, NULL, error))
{
gimp_text_layer_set (layer,
_(
"Set text layer markup"),
"markup", markup_ptr,
NULL);
}
else
{
success = FALSE;
}
g_free(markup_cat);
}
CODE
);
}
sub text_layer_get_font {
$blurb =
'Get the font from a text layer as string.';
$help = <<
'HELP';
This procedure returns the font
from a
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'font',
type =>
'font',
desc =>
'The font which is used in the specified text layer.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"font", &font,
NULL);
/* The GimpText keeps a reference. Therefore unref before returning the
* pointer so that we don't leak a reference.
*/
g_object_unref (font);
}
CODE
);
}
sub text_layer_set_font {
$blurb =
'Set the font of a text layer.';
$help = <<
'HELP';
This procedure modifies the font used
in the
specified text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'font',
type =>
'font',
desc =>
'The new font to use' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"font", font,
NULL);
}
CODE
);
}
sub text_layer_get_font_size {
$blurb =
'Get the font size from a text layer.';
$help = <<
'HELP';
This procedure returns the
size of the font which
is used
in a
text
layer. You will
receive the
size as a double
'font-size' in 'unit'
units.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'font_size',
type =>
'double',
desc =>
'The font size' },
{ name =>
'unit',
type =>
'unit',
desc =>
'The unit used for the font size' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"font-size", &font_size,
"font-size-unit", &
unit,
NULL);
}
CODE
);
}
sub text_layer_set_font_size {
$blurb =
'Set the font size.';
$help = <<
'HELP';
This procedure changes the font
size of a
text layer. The
size of your
font will be a double
'font-size' of 'unit' units.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'font_size',
type =>
'0.0 <= double <= 8192.0',
desc =>
'The font size' },
{ name =>
'unit',
type =>
'unit', allow_pixel =>
1,
desc =>
'The unit to use for the font size' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"font-size-unit",
unit,
"font-size", font_size,
NULL);
}
CODE
);
}
sub text_layer_get_antialias {
$blurb =
'Check if antialiasing is used in the text layer.';
$help = <<
'HELP';
This procedure checks
if antialiasing
is enabled
in the
specified text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'antialias',
type =>
'boolean',
desc =>
'A flag which is true if antialiasing is used for rendering the font in the text layer.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"antialias", &antialias,
NULL);
}
CODE
);
}
sub text_layer_set_antialias {
$blurb =
'Enable/disable anti-aliasing in a text layer.';
$help = <<
'HELP';
This procedure enables
or disables anti-aliasing
of the
text in a
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'antialias',
type =>
'boolean',
desc =>
'Enable/disable antialiasing of the text' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"antialias", antialias,
NULL);
}
CODE
);
}
sub text_layer_get_hint_style {
$blurb =
'Get information about hinting in the specified text layer.';
$help = <<
'HELP';
This procedure provides information about the hinting that
is being
used
in a
text layer. Hinting can be optimized
for fidelity
or contrast
or it can be turned entirely off.
HELP
&marcus_pdb_misc(
'2008',
'2.8');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'style',
type =>
'enum GimpTextHintStyle',
desc =>
'The hint style used for font outlines' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"hint-style", &style,
NULL);
}
CODE
);
}
sub text_layer_set_hint_style {
$blurb =
'Control how font outlines are hinted in a text layer.';
$help = <<
'HELP';
This procedure sets the hint style
for font outlines
in a
text
layer. This
controls whether
to fit font outlines
to the pixel grid,
and if so, whether
to optimize
for fidelity
or contrast.
HELP
&neo_pdb_misc(
'2008',
'2.8');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'style',
type =>
'enum GimpTextHintStyle',
desc =>
'The new hint style' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"hint-style", style,
NULL);
}
CODE
);
}
sub text_layer_get_kerning {
$blurb =
'Check if kerning is used in the text layer.';
$help = <<
'HELP';
This procedure checks
if kerning
is enabled
in the
specified text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'kerning',
type =>
'boolean',
desc =>
'A flag which is true if kerning is used in the text layer.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"kerning", &kerning,
NULL);
}
CODE
);
}
sub text_layer_set_kerning {
$blurb =
'Enable/disable kerning in a text layer.';
$help = <<
'HELP';
This procedure enables
or disables kerning
in a
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'kerning',
type =>
'boolean',
desc =>
'Enable/disable kerning in the text' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"kerning", kerning,
NULL);
}
CODE
);
}
sub text_layer_get_language {
$blurb =
'Get the language used in the text layer.';
$help = <<
'HELP';
This procedure returns the
language string which
is set for the
text
in the
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer.' }
);
@outargs = (
{ name =>
'language',
type =>
'string',
desc =>
'The language used in the text layer.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"language", &
language,
NULL);
}
CODE
);
}
sub text_layer_set_language {
$blurb =
'Set the language of the text layer.';
$help = <<
'HELP';
This procedure sets the
language of the
text in text layer.
For some
scripts the
language has an influence
of how the
text is rendered.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'language',
type =>
'string',
desc =>
'The new language to use for the text layer' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"language",
language,
NULL);
}
CODE
);
}
sub text_layer_get_base_direction {
$blurb =
'Get the base direction used for rendering the text layer.';
$help = <<
'HELP';
This procedure returns the base direction used
for rendering the
text
in the
text layer
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer.' }
);
@outargs = (
{ name =>
'direction',
type =>
'enum GimpTextDirection',
desc =>
'The based direction used for the text layer.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"base-direction", &direction,
NULL);
}
CODE
);
}
sub text_layer_set_base_direction {
$blurb =
'Set the base direction in the text layer.';
$help = <<
'HELP';
This procedure sets the base direction used
in applying the Unicode
bidirectional algorithm
when rendering the
text.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'direction',
type =>
'enum GimpTextDirection',
desc =>
'The base direction of the text.' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"base-direction", direction,
NULL);
}
CODE
);
}
sub text_layer_get_justification {
$blurb =
'Get the text justification information of the text layer.';
$help = <<
'HELP';
This procedure returns the alignment
of the
lines in the
text layer
relative
to each other.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer.' }
);
@outargs = (
{ name =>
'justify',
type =>
'enum GimpTextJustification',
desc =>
'The justification used in the text layer.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"justify", &justify,
NULL);
}
CODE
);
}
sub text_layer_set_justification {
$blurb =
'Set the justification of the text in a text layer.';
$help = <<
'HELP';
This procedure sets the alignment
of the
lines in the
text layer
relative
to each other.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'justify',
type =>
'enum GimpTextJustification',
desc =>
'The justification for your text.' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"justify", justify,
NULL);
}
CODE
);
}
sub text_layer_get_color {
$blurb =
'Get the color of the text in a text layer.';
$help = <<
'HELP';
This procedure returns the
color of the
text in a
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer.' }
);
@outargs = (
{ name =>
'color',
type =>
'geglcolor',
desc =>
'The color of the text.' }
);
%invoke = (
code => <<
'CODE'
{
color = gegl_color_duplicate (gimp_text_layer_get_text (layer)->
color);
}
CODE
);
}
sub text_layer_set_color {
$blurb =
'Set the color of the text in the text layer.';
$help = <<
'HELP';
This procedure sets the
text color in the
text layer
'layer'.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'color',
type =>
'geglcolor',
desc =>
'The color to use for the text' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"color",
color,
NULL);
}
CODE
);
}
sub text_layer_get_indent {
$blurb =
'Get the line indentation of text layer.';
$help = <<
'HELP';
This procedure returns the indentation
of the first
line in a
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer.' }
);
@outargs = (
{ name =>
'indent',
type =>
'double',
desc =>
'The indentation value of the first line.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"indent", &indent,
NULL);
}
CODE
);
}
sub text_layer_set_indent {
$blurb =
'Set the indentation of the first line in a text layer.';
$help = <<
'HELP';
This procedure sets the indentation
of the first
line in the
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'indent',
type =>
'-8192.0 <= double <= 8192.0',
desc =>
'The indentation for the first line.' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"indent", indent,
NULL);
}
CODE
);
}
sub text_layer_get_line_spacing {
$blurb =
'Get the spacing between lines of text.';
$help = <<
'HELP';
This procedure returns the
line-spacing
between lines of text in a
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer.' }
);
@outargs = (
{ name =>
'line_spacing',
type =>
'double',
desc =>
'The line-spacing value.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"line-spacing", &line_spacing,
NULL);
}
CODE
);
}
sub text_layer_set_line_spacing {
$blurb =
'Adjust the line spacing in a text layer.';
$help = <<
'HELP';
This procedure sets the additional spacing used
between lines a
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'line_spacing',
type =>
'-8192.0 <= double <= 8192.0',
desc =>
'The additional line spacing to use.' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"line-spacing", line_spacing,
NULL);
}
CODE
);
}
sub text_layer_get_letter_spacing {
$blurb =
'Get the letter spacing used in a text layer.';
$help = <<
'HELP';
This procedure returns the additional spacing
between the
single glyphs
in a
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer.' }
);
@outargs = (
{ name =>
'letter_spacing',
type =>
'double',
desc =>
'The letter-spacing value.' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"letter-spacing", &letter_spacing,
NULL);
}
CODE
);
}
sub text_layer_set_letter_spacing {
$blurb =
'Adjust the letter spacing in a text layer.';
$help = <<
'HELP';
This procedure sets the additional spacing
between the
single glyphs
in a
text layer.
HELP
&marcus_pdb_misc(
'2008',
'2.6');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'letter_spacing',
type =>
'-8192.0 <= double <= 8192.0',
desc =>
'The additional letter spacing to use.' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"letter-spacing", letter_spacing,
NULL);
}
CODE
);
}
sub text_layer_get_outline {
$blurb =
'Get the outline type from a text layer.';
$help = <<
'HELP';
This procedure returns the outline
type of a
text layer.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'outline',
type =>
'enum GimpTextOutline',
desc =>
'The type of outline in the text layer' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"outline", &outline,
NULL);
}
CODE
);
}
sub text_layer_set_outline {
$blurb =
'Set the outline type for the text layer.';
$help = <<
'HELP';
This procedure sets the
type of the outline
in the
text layer
'layer'.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'outline',
type =>
'enum GimpTextOutline',
desc =>
'The type of outline in the text layer' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"outline", outline,
NULL);
}
CODE
);
}
sub text_layer_get_outline_antialias {
$blurb =
'Get the outline antialias setting from a text layer.';
$help = <<
'HELP';
This procedure returns the antialias setting
of the
text outline
in a
text layer.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'outline_antialias',
type =>
'boolean',
desc =>
'The text outline antialias setting' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"outline-antialias", &outline_antialias,
NULL);
}
CODE
);
}
sub text_layer_set_outline_antialias {
$blurb =
'Set the outline antialias setting from a text layer.';
$help = <<
'HELP';
This procedure sets the
text outline antialias
in the
text layer
'layer'.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'outline_antialias',
type =>
'boolean',
desc =>
'The text outline antialias setting' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"outline-antialias", outline_antialias,
NULL);
}
CODE
);
}
sub text_layer_get_outline_cap_style {
$blurb =
'Get the outline cap style from a text layer.';
$help = <<
'HELP';
This procedure returns the outline cap style
of a
text layer.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'outline_cap_style',
type =>
'enum GimpCapStyle',
desc =>
'The cap style of the outline in the text layer' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"outline-cap-style", &outline_cap_style,
NULL);
}
CODE
);
}
sub text_layer_set_outline_cap_style {
$blurb =
'Set the outline cap style for the text layer.';
$help = <<
'HELP';
This procedure sets the cap style
of the outline
in the
text layer
'layer'.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'outline_cap_style',
type =>
'enum GimpCapStyle',
desc =>
'The cap style of the outline in the text layer' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"outline-cap-style", outline_cap_style,
NULL);
}
CODE
);
}
sub text_layer_get_outline_color {
$blurb =
'Get the color of the text outline in a text layer.';
$help = <<
'HELP';
This procedure returns the
color of the
text outline
in a
text layer.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer.' }
);
@outargs = (
{ name =>
'color',
type =>
'geglcolor',
desc =>
'The color of the text outline.' }
);
%invoke = (
code => <<
'CODE'
{
color = gegl_color_duplicate (gimp_text_layer_get_text (layer)->outline_foreground);
}
CODE
);
}
sub text_layer_set_outline_color {
$blurb =
'Set the color of the text outline in the text layer.';
$help = <<
'HELP';
This procedure sets the outline
color in the
text layer
'layer'.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'color',
type =>
'geglcolor',
desc =>
'The color to use for the text outline.' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"outline-foreground",
color,
NULL);
}
CODE
);
}
sub text_layer_get_outline_dash_offset {
$blurb =
'Get the outline dash offset from a text layer.';
$help = <<
'HELP';
This procedure returns the dash offset
of the
text outline
in a
text layer.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'outline_dash_offset',
type =>
'double',
desc =>
'The text outline dash offset' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"outline-dash-offset", &outline_dash_offset,
NULL);
}
CODE
);
}
sub text_layer_set_outline_dash_offset {
$blurb =
'Set the outline dash offset from a text layer.';
$help = <<
'HELP';
This procedure sets the outline dash offset
in the
text layer
'layer'.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'outline_dash_offset',
type =>
'0.0 <= double <= 2000.0',
desc =>
'The text outline dash offset' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"outline-dash-offset", outline_dash_offset,
NULL);
}
CODE
);
}
sub text_layer_get_outline_direction {
$blurb =
'Get the outline direction from a text layer.';
$help = <<
'HELP';
This procedure returns the outline direction
of a
text layer.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'outline_direction',
type =>
'enum GimpTextOutlineDirection',
desc =>
'The direction of the outline in the text layer' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"outline-direction", &outline_direction,
NULL);
}
CODE
);
}
sub text_layer_set_outline_direction {
$blurb =
'Set the outline direction for the text layer.';
$help = <<
'HELP';
This procedure sets the direction
of the outline
in the
text layer
'layer'.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'outline_direction',
type =>
'enum GimpTextOutlineDirection',
desc =>
'The direction of the outline in the text layer' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"outline-direction", outline_direction,
NULL);
}
CODE
);
}
sub text_layer_get_outline_join_style {
$blurb =
'Get the outline join style from a text layer.';
$help = <<
'HELP';
This procedure returns the outline
join style
of a
text layer.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'outline_join_style',
type =>
'enum GimpJoinStyle',
desc =>
'The join style of the outline in the text layer' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"outline-join-style", &outline_join_style,
NULL);
}
CODE
);
}
sub text_layer_set_outline_join_style {
$blurb =
'Set the outline join style for the text layer.';
$help = <<
'HELP';
This procedure sets the
join style
of the outline
in the
text layer
'layer'.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'outline_join_style',
type =>
'enum GimpJoinStyle',
desc =>
'The join style of the outline in the text layer' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"outline-join-style", outline_join_style,
NULL);
}
CODE
);
}
sub text_layer_get_outline_miter_limit {
$blurb =
'Get the outline miter limit from a text layer.';
$help = <<
'HELP';
This procedure returns the miter limit
of the
text outline
in a
text layer.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'outline_miter_limit',
type =>
'double',
desc =>
'The text outline miter limit' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"outline-miter-limit", &outline_miter_limit,
NULL);
}
CODE
);
}
sub text_layer_set_outline_miter_limit {
$blurb =
'Set the outline miter limit from a text layer.';
$help = <<
'HELP';
This procedure sets the
text outline miter limit
in the
text layer
'layer'.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'outline_miter_limit',
type =>
'0.0 <= double <= 100.0',
desc =>
'The text outline miter limit' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"outline-miter-limit", outline_miter_limit,
NULL);
}
CODE
);
}
sub text_layer_get_outline_width {
$blurb =
'Get the outline width from a text layer.';
$help = <<
'HELP';
This procedure returns the
color of the
text outline
in a
text layer.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' }
);
@outargs = (
{ name =>
'outline_width',
type =>
'double',
desc =>
'The text outline width' },
{ name =>
'outline_unit',
type =>
'unit',
desc =>
'The unit used for the outline width' }
);
%invoke = (
code => <<
'CODE'
{
g_object_get (gimp_text_layer_get_text (layer),
"outline-width", &outline_width,
"outline-unit", &outline_unit,
NULL);
}
CODE
);
}
sub text_layer_set_outline_width {
$blurb =
'Set the outline width from a text layer.';
$help = <<
'HELP';
This procedure sets the
text outline
color in the
text layer
'layer'.
HELP
&alxsa_pdb_misc(
'2025',
'3.2');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'outline_width',
type =>
'0.0 <= double <= 8192.0',
desc =>
'The text outline width' },
{ name =>
'outline_unit',
type =>
'unit', allow_pixel =>
1,
desc =>
'The unit to use for the outline width' }
);
%invoke = (
code => <<
'CODE'
{
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"outline-width", outline_width,
"outline-unit", outline_unit,
NULL);
}
CODE
);
}
sub text_layer_resize {
$blurb =
'Resize the box of a text layer.';
$help = <<
'HELP';
This procedure changes the width
and height
of a
text layer
while
keeping it
as a
text layer
and not converting it
to a bitmap
like
gimp_layer_resize() would
do.
HELP
barak_pdb_misc(
'2009',
'2.8');
@inargs = (
{ name =>
'layer',
type =>
'text_layer',
desc =>
'The text layer' },
{ name =>
'width',
type =>
'0.0 <= double <= GIMP_MAX_IMAGE_SIZE',
desc =>
'The new box width in pixels' },
{ name =>
'height',
type =>
'0.0 <= double <= GIMP_MAX_IMAGE_SIZE',
desc =>
'The new box height in pixels' },
);
%invoke = (
code => <<
'CODE'
{
GimpText
*text = gimp_text_layer_get_text (layer);
gdouble xres, yres;
gimp_image_get_resolution (gimp_item_get_image (GIMP_ITEM (layer)),
&xres, &yres);
gimp_text_layer_set (layer,
_(
"Set text layer attribute"),
"box-mode", GIMP_TEXT_BOX_FIXED,
"box-width", gimp_pixels_to_units (width,
text->box_unit,
xres),
"box-height", gimp_pixels_to_units (height,
text->box_unit,
yres),
NULL);
}
CODE
);
}
@headers = qw(<pango/pango.h>
"libgimpbase/gimpbase.h"
"core/gimpcontext.h"
"core/gimpdashpattern.h"
"text/gimpfont.h"
"text/gimptext.h"
"text/gimptextlayer.h"
"gimppdb-utils.h"
"gimppdberror.h"
"gimp-intl.h");
@procs = qw(text_layer_new
text_layer_get_text
text_layer_set_text
text_layer_get_markup
text_layer_set_markup
text_layer_get_font
text_layer_set_font
text_layer_get_font_size
text_layer_set_font_size
text_layer_get_antialias
text_layer_set_antialias
text_layer_get_hint_style
text_layer_set_hint_style
text_layer_get_kerning
text_layer_set_kerning
text_layer_get_language
text_layer_set_language
text_layer_get_base_direction
text_layer_set_base_direction
text_layer_get_justification
text_layer_set_justification
text_layer_get_color
text_layer_set_color
text_layer_get_indent
text_layer_set_indent
text_layer_get_line_spacing
text_layer_set_line_spacing
text_layer_get_letter_spacing
text_layer_set_letter_spacing
text_layer_get_outline
text_layer_set_outline
text_layer_get_outline_antialias
text_layer_set_outline_antialias
text_layer_get_outline_cap_style
text_layer_set_outline_cap_style
text_layer_get_outline_color
text_layer_set_outline_color
text_layer_get_outline_dash_offset
text_layer_set_outline_dash_offset
text_layer_get_outline_direction
text_layer_set_outline_direction
text_layer_get_outline_join_style
text_layer_set_outline_join_style
text_layer_get_outline_miter_limit
text_layer_set_outline_miter_limit
text_layer_get_outline_width
text_layer_set_outline_width
text_layer_resize);
%exports = (app => [@procs], lib => [@procs]);
$desc =
'Text layer procedures';
$doc_title =
'gimptextlayer';
$doc_short_desc =
'Functions for querying and manipulating text layers.';
$doc_long_desc =
'Functions for querying and manipulating text layers.';
1;