@@ -1903,37 +1903,39 @@ Pattern_images_item = class
1903
1903
text = String "Text to paint" "<i>Hello</i> world!";
1904
1904
font = Fontname "Use font" Workspaces.Preferences.PAINTBOX_FONT;
1905
1905
fontfile = Pathname "Font file" "";
1906
- width = Expression "Text width" 500 ;
1906
+ width = Expression "Text width" 0 ;
1907
1907
height = Expression "Text height" 0;
1908
1908
align = Option "Alignment" [
1909
1909
"Left",
1910
1910
"Centre",
1911
1911
"Right"
1912
1912
] 0;
1913
1913
dpi = Expression "DPI" 300;
1914
- spacing = Expression "Line spacing" 1.1;
1914
+ fit = Toggle "Fit text to box" false;
1915
+ spacing = Expression "Line spacing" 0;
1915
1916
1916
1917
_result
1917
1918
= Image out
1918
1919
{
1919
- [out] = vips_call "text" [text.value]
1920
- (base_options ++ fontfile_options);
1921
-
1922
1920
base_options = [
1923
1921
$font => font.value,
1924
- $width => to_real width,
1925
- $height => to_real height,
1926
- $align => align.value,
1927
- $dpi => to_real dpi,
1928
- $spacing => to_real spacing
1922
+ $align => align.value
1929
1923
];
1930
-
1931
- fontfile_options
1932
- = [$fontfile => fontfile.value],
1933
- fontfile.value != ""
1924
+
1925
+ set_option name default value
1926
+ = [name => value], value != default
1934
1927
= [];
1935
- }
1936
1928
1929
+ options = base_options ++ concat [
1930
+ set_option $width 0 (to_real width),
1931
+ set_option $height 0 (to_real height),
1932
+ set_option $fontfile "" fontfile.value,
1933
+ if !fit then set_option $dpi 72 (to_real dpi) else [],
1934
+ set_option $spacing 0 (to_real spacing)
1935
+ ];
1936
+
1937
+ [out] = vips_call "text" [text.value] options;
1938
+ }
1937
1939
}
1938
1940
}
1939
1941
@@ -1977,7 +1979,7 @@ Pattern_images_item = class
1977
1979
_result
1978
1980
= build param (to_real nsize)
1979
1981
{
1980
- param f = f sense.value fc.value 0 0 0 0;
1982
+ param f = f sense.value fc.value 0 0 0 0;
1981
1983
}
1982
1984
}
1983
1985
}
@@ -1998,7 +2000,7 @@ Pattern_images_item = class
1998
2000
_result
1999
2001
= build param (to_real nsize)
2000
2002
{
2001
- param f = f (sense.value + 6) fc.value rw.value 0 0 0;
2003
+ param f = f (sense.value + 6) fc.value rw.value 0 0 0;
2002
2004
}
2003
2005
}
2004
2006
}
@@ -2020,7 +2022,7 @@ Pattern_images_item = class
2020
2022
_result
2021
2023
= build param (to_real nsize)
2022
2024
{
2023
- param f = f (sense.value + 12) fcx.value fcy.value
2025
+ param f = f (sense.value + 12) fcx.value fcy.value
2024
2026
r.value 0 0;
2025
2027
}
2026
2028
}
@@ -2046,7 +2048,7 @@ Pattern_images_item = class
2046
2048
_result
2047
2049
= build param (to_real nsize)
2048
2050
{
2049
- param f = f (sense.value + 4) fc.value ac.value 0 0 0;
2051
+ param f = f (sense.value + 4) fc.value ac.value 0 0 0;
2050
2052
}
2051
2053
}
2052
2054
}
@@ -2068,7 +2070,7 @@ Pattern_images_item = class
2068
2070
_result
2069
2071
= build param (to_real nsize)
2070
2072
{
2071
- param f = f (sense.value + 10) fc.value rw.value
2073
+ param f = f (sense.value + 10) fc.value rw.value
2072
2074
ac.value 0 0;
2073
2075
}
2074
2076
}
@@ -2092,7 +2094,7 @@ Pattern_images_item = class
2092
2094
_result
2093
2095
= build param (to_real nsize)
2094
2096
{
2095
- param f = f (sense.value + 16) fcx.value fcy.value
2097
+ param f = f (sense.value + 16) fcx.value fcy.value
2096
2098
r.value ac.value 0;
2097
2099
}
2098
2100
}
@@ -2119,7 +2121,7 @@ Pattern_images_item = class
2119
2121
_result
2120
2122
= build param (to_real nsize)
2121
2123
{
2122
- param f = f (sense.value + 2) order.value fc.value
2124
+ param f = f (sense.value + 2) order.value fc.value
2123
2125
ac.value 0 0;
2124
2126
}
2125
2127
}
@@ -2143,8 +2145,8 @@ Pattern_images_item = class
2143
2145
_result
2144
2146
= build param (to_real nsize)
2145
2147
{
2146
- param f = f (sense.value + 8) order.value fc.value
2147
- rw.value ac.value 0;
2148
+ param f = f (sense.value + 8) order.value fc.value
2149
+ rw.value ac.value 0;
2148
2150
}
2149
2151
}
2150
2152
}
@@ -2168,8 +2170,8 @@ Pattern_images_item = class
2168
2170
_result
2169
2171
= build param (to_real nsize)
2170
2172
{
2171
- param f = f (sense.value + 14) order.value fcx.value
2172
- fcy.value r.value ac.value;
2173
+ param f = f (sense.value + 14) order.value fcx.value
2174
+ fcy.value r.value ac.value;
2173
2175
}
2174
2176
}
2175
2177
}
0 commit comments