rmagick 5.4.4 → 6.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.devcontainer/ImageMagick6/devcontainer.json +1 -1
- data/.devcontainer/devcontainer.json +1 -1
- data/.github/workflows/ci.yml +41 -31
- data/.gitignore +1 -0
- data/.rubocop.yml +36 -9
- data/.rubocop_todo.yml +369 -187
- data/CHANGELOG.md +77 -0
- data/Gemfile +14 -0
- data/README.md +3 -3
- data/Rakefile +12 -1
- data/before_install_linux.sh +1 -11
- data/before_install_osx.sh +5 -7
- data/ext/RMagick/extconf.rb +58 -68
- data/ext/RMagick/rmagick.h +7 -12
- data/ext/RMagick/rmdraw.cpp +10 -20
- data/ext/RMagick/rmfill.cpp +4 -4
- data/ext/RMagick/rmilist.cpp +10 -2
- data/ext/RMagick/rmimage.cpp +342 -344
- data/ext/RMagick/rminfo.cpp +22 -21
- data/ext/RMagick/rmkinfo.cpp +5 -18
- data/ext/RMagick/rmmain.cpp +42 -91
- data/ext/RMagick/rmmontage.cpp +5 -5
- data/ext/RMagick/rmpixel.cpp +3 -3
- data/ext/RMagick/rmutil.cpp +58 -89
- data/lib/rmagick/version.rb +3 -3
- data/lib/rmagick.rb +1 -1
- data/lib/rmagick_internal.rb +111 -103
- data/lib/rvg/container.rb +3 -3
- data/lib/rvg/embellishable.rb +7 -3
- data/lib/rvg/misc.rb +15 -15
- data/lib/rvg/rvg.rb +6 -6
- data/lib/rvg/stretchable.rb +2 -2
- data/lib/rvg/stylable.rb +2 -2
- data/lib/rvg/transformable.rb +1 -1
- data/lib/rvg/units.rb +1 -0
- data/rmagick.gemspec +2 -15
- data/sig/rmagick/_draw_common_methods.rbs +64 -0
- data/sig/rmagick/_image_common_methods.rbs +387 -0
- data/sig/rmagick/draw.rbs +38 -0
- data/sig/rmagick/draw_attribute.rbs +28 -0
- data/sig/rmagick/enum.rbs +820 -0
- data/sig/rmagick/error.rbs +11 -0
- data/sig/rmagick/fill.rbs +21 -0
- data/sig/rmagick/geometry.rbs +14 -0
- data/sig/rmagick/image.rbs +196 -0
- data/sig/rmagick/image_list.rbs +183 -0
- data/sig/rmagick/iptc.rbs +101 -0
- data/sig/rmagick/kernel_info.rbs +12 -0
- data/sig/rmagick/optional_method_arguments.rbs +10 -0
- data/sig/rmagick/pixel.rbs +46 -0
- data/sig/rmagick/struct.rbs +90 -0
- data/sig/rmagick.rbs +43 -0
- data/sig/rvg/clippath.rbs +34 -0
- data/sig/rvg/container.rbs +78 -0
- data/sig/rvg/deep_equal.rbs +48 -0
- data/sig/rvg/describable.rbs +30 -0
- data/sig/rvg/embellishable.rbs +226 -0
- data/sig/rvg/misc.rbs +145 -0
- data/sig/rvg/paint.rbs +55 -0
- data/sig/rvg/pathdata.rbs +77 -0
- data/sig/rvg/rvg.rbs +125 -0
- data/sig/rvg/stretchable.rbs +56 -0
- data/sig/rvg/stylable.rbs +66 -0
- data/sig/rvg/text.rbs +118 -0
- data/sig/rvg/transformable.rbs +59 -0
- data/sig/rvg/units.rbs +33 -0
- metadata +38 -134
@@ -0,0 +1,21 @@
|
|
1
|
+
module Magick
|
2
|
+
class GradientFill
|
3
|
+
include _Fill
|
4
|
+
def initialize: (magick_real x1, magick_real y1, magick_real x2, magick_real y2, magick_color start_color, magick_color stop_color) -> void
|
5
|
+
end
|
6
|
+
|
7
|
+
class HatchFill
|
8
|
+
include _Fill
|
9
|
+
def initialize: (magick_color bgcolor, ?magick_color hatchcolor, ?Numeric dist) -> void
|
10
|
+
end
|
11
|
+
|
12
|
+
class SolidFill
|
13
|
+
include _Fill
|
14
|
+
def initialize: (magick_color bgcolor) -> void
|
15
|
+
end
|
16
|
+
|
17
|
+
class TextureFill
|
18
|
+
include _Fill
|
19
|
+
def initialize: (magick_image texture_arg) -> void
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module Magick
|
2
|
+
class Geometry
|
3
|
+
attr_accessor width: Integer | Float
|
4
|
+
attr_accessor height: Integer | Float
|
5
|
+
attr_accessor x: Integer
|
6
|
+
attr_accessor y: Integer
|
7
|
+
attr_accessor flag: GeometryValue?
|
8
|
+
|
9
|
+
def initialize: (?magick_real? width, ?magick_real? height, ?real? x, ?real? y, ?GeometryValue? flag) -> void
|
10
|
+
def self.from_s: (String str) -> Geometry
|
11
|
+
def to_s: -> String
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
@@ -0,0 +1,196 @@
|
|
1
|
+
module Magick
|
2
|
+
class Image
|
3
|
+
include Comparable
|
4
|
+
|
5
|
+
include _ImageCommonMethods
|
6
|
+
|
7
|
+
# When it reads an image file, it returns one or more Image objects.
|
8
|
+
# However, it cannot properly define it in RBS.
|
9
|
+
# If define as Array[Image] implies the possibility of returning nil.
|
10
|
+
# it would require consideration of nil in subsequent method calls.
|
11
|
+
# So, it defined in Tuple type to avoid allowing unnecessary guard statements to be written.
|
12
|
+
def self.constitute: (int witdth_arg, int height_arg, string map_arg, Array[Pixel] pixels_arg) -> Image
|
13
|
+
def self._load: (string str) -> Image
|
14
|
+
def self.capture: (bool silent, bool frame, bool descend, bool screen, bool borders) -> Image
|
15
|
+
| (bool silent, bool frame, bool descend, bool screen, bool borders) { (Image::Info) -> void } -> Image
|
16
|
+
def self.ping: (File | string file) -> [Image]
|
17
|
+
| (File | string file) { (Image::Info) -> void } -> [Image]
|
18
|
+
def self.read: (File | string file) -> [Image]
|
19
|
+
| (File | string file) { (Image::Info) -> void } -> [Image]
|
20
|
+
def self.read_inline: (string content) -> [Image]
|
21
|
+
| (string content) { (Image::Info) -> void } -> [Image]
|
22
|
+
def self.from_blob: (string blob) -> [Image]
|
23
|
+
| (string blob) { (Image::Info) -> void } -> [Image]
|
24
|
+
|
25
|
+
def initialize: (int cols, int rows, ?magick_fill fill) -> void
|
26
|
+
| (int cols, int rows, ?magick_fill fill) { (Image::Info) -> void } -> void
|
27
|
+
def <=>: (untyped object) -> (Integer | nil)
|
28
|
+
def []: (interned key_arg) -> String?
|
29
|
+
def []=: (interned key_arg, String attr_arg) -> self
|
30
|
+
def delay=: (int val) -> int
|
31
|
+
def display: () -> self
|
32
|
+
| () { (Image::Info) -> void} -> self
|
33
|
+
def marshal_dump: () -> [String, String]
|
34
|
+
def marshal_load: ([string, string] ary) -> self
|
35
|
+
def montage: () -> String?
|
36
|
+
def quantize: (?int number_colors, ?ColorspaceType colorspace, ?bool dither, ?int tree_depth, ?bool measure_error) -> Image
|
37
|
+
def scene: () -> Integer
|
38
|
+
def ticks_per_second=: (int tps) -> int
|
39
|
+
def to_blob: () -> String?
|
40
|
+
| () { (Image::Info) -> void} -> String?
|
41
|
+
def write: (File | string file) -> self
|
42
|
+
| (File | string file) { (Image::Info) -> void} -> self
|
43
|
+
def destroy!: () -> self
|
44
|
+
def destroyed?: () -> bool
|
45
|
+
|
46
|
+
class View
|
47
|
+
attr_reader x: real
|
48
|
+
attr_reader y: real
|
49
|
+
attr_reader width: real
|
50
|
+
attr_reader height: real
|
51
|
+
attr_accessor dirty: bool
|
52
|
+
def initialize: (Image img, real x, real y, real width, real height) -> void
|
53
|
+
def []: (Integer index) -> Rows
|
54
|
+
| (Range[Numeric] range) -> Rows
|
55
|
+
| (Integer start, Integer length) -> Rows
|
56
|
+
def sync: (?bool force) -> bool
|
57
|
+
def update: (Rows rows) -> nil
|
58
|
+
|
59
|
+
class Pixels < Array[untyped]
|
60
|
+
# include Observable
|
61
|
+
def red: () -> Array[Integer]
|
62
|
+
attr_writer red: Integer
|
63
|
+
def green: () -> Array[Integer]
|
64
|
+
attr_writer green: Integer
|
65
|
+
def blue: () -> Array[Integer]
|
66
|
+
attr_writer blue: Integer
|
67
|
+
def opacity: () -> Array[Integer]
|
68
|
+
attr_writer opacity: Integer
|
69
|
+
end
|
70
|
+
|
71
|
+
class Rows
|
72
|
+
# include Observable
|
73
|
+
def initialize: (View view, real width, real height, Rows rows) -> void
|
74
|
+
def []: () -> View::Pixels
|
75
|
+
| (Integer index) -> Pixel
|
76
|
+
| (Range[Numeric] range) -> View::Pixels
|
77
|
+
| (Integer start, Integer length) -> View::Pixels
|
78
|
+
def []=: (magick_color value) -> void
|
79
|
+
| (Integer index, magick_color value) -> void
|
80
|
+
| (Range[Numeric] range, magick_color value) -> void
|
81
|
+
| (Integer start, Integer length, magick_color value) -> void
|
82
|
+
def update: (Pixels | Pixel pixel) -> nil
|
83
|
+
|
84
|
+
private
|
85
|
+
|
86
|
+
def cols: (*untyped args) -> void
|
87
|
+
def each: () -> void
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
class Info
|
92
|
+
def initialize: () -> void
|
93
|
+
def channel: (*ChannelType channel) -> self
|
94
|
+
def define: (string format, string key, ?string value) -> self?
|
95
|
+
def []=: (string format, string key, string value) -> self?
|
96
|
+
| (string key, string value) -> self?
|
97
|
+
def []: (string format, string key) -> String?
|
98
|
+
| (string key) -> String?
|
99
|
+
def undefine: (string format, string key) -> self
|
100
|
+
|
101
|
+
attr_accessor antialias: bool
|
102
|
+
def attenuate: () -> Float
|
103
|
+
attr_writer attenuate: magick_real
|
104
|
+
attr_accessor authenticate: string?
|
105
|
+
def background_color: () -> String
|
106
|
+
attr_writer background_color: magick_color
|
107
|
+
def border_color: () -> String
|
108
|
+
attr_writer border_color: magick_color
|
109
|
+
def caption: () -> String
|
110
|
+
attr_writer caption: string?
|
111
|
+
attr_accessor colorspace: ColorspaceType
|
112
|
+
def comment: () -> String
|
113
|
+
attr_writer comment: string?
|
114
|
+
attr_accessor compression: CompressionType
|
115
|
+
def delay: () -> Integer?
|
116
|
+
attr_writer delay: int?
|
117
|
+
def density: () -> String?
|
118
|
+
attr_writer density: (Geometry | string)?
|
119
|
+
def depth: () -> Integer
|
120
|
+
attr_writer depth: int
|
121
|
+
def dispose: () -> DisposeType
|
122
|
+
attr_writer dispose: DisposeType?
|
123
|
+
attr_accessor dither: bool
|
124
|
+
attr_accessor endian: EndianType
|
125
|
+
def extract: () -> String?
|
126
|
+
attr_writer extract: (Geometry | string)?
|
127
|
+
def filename: () -> String
|
128
|
+
attr_writer filename: string?
|
129
|
+
def fill: () -> String?
|
130
|
+
attr_writer fill: string?
|
131
|
+
def font: () -> String?
|
132
|
+
attr_writer font: string?
|
133
|
+
def format: () -> String?
|
134
|
+
attr_writer format: string
|
135
|
+
def fuzz: () -> Float
|
136
|
+
attr_writer fuzz: magick_percentage
|
137
|
+
def gravity: () -> GravityType
|
138
|
+
attr_writer gravity: GravityType?
|
139
|
+
attr_accessor image_type: ImageType
|
140
|
+
attr_accessor interlace: InterlaceType
|
141
|
+
def label: () -> String?
|
142
|
+
attr_writer label: string?
|
143
|
+
def matte_color: () -> String
|
144
|
+
attr_writer matte_color: magick_color
|
145
|
+
attr_accessor monochrome: bool
|
146
|
+
def number_scenes: () -> Integer
|
147
|
+
attr_writer number_scenes: int
|
148
|
+
attr_accessor orientation: OrientationType
|
149
|
+
def origin: () -> String?
|
150
|
+
attr_writer origin: (Geometry | string)?
|
151
|
+
def page: () -> String?
|
152
|
+
attr_writer page: (Geometry | string)?
|
153
|
+
def pointsize: () -> Float
|
154
|
+
attr_writer pointsize: magick_real
|
155
|
+
def quality: () -> Integer
|
156
|
+
attr_writer quality: int
|
157
|
+
def sampling_factor: () -> String?
|
158
|
+
attr_writer sampling_factor: string?
|
159
|
+
def scene: () -> Integer
|
160
|
+
attr_writer scene: int
|
161
|
+
def server_name: () -> String?
|
162
|
+
attr_writer server_name: string?
|
163
|
+
def size: () -> String?
|
164
|
+
attr_writer size: (Geometry | string)?
|
165
|
+
def stroke: () -> String?
|
166
|
+
attr_writer stroke: string?
|
167
|
+
def stroke_width: () -> Float?
|
168
|
+
attr_writer stroke_width: magick_real?
|
169
|
+
attr_writer texture: Image | nil
|
170
|
+
def tile_offset: () -> String?
|
171
|
+
attr_writer tile_offset: (Geometry | string)?
|
172
|
+
def transparent_color: () -> String
|
173
|
+
attr_writer transparent_color: magick_color
|
174
|
+
def undercolor: () -> String?
|
175
|
+
attr_writer undercolor: string?
|
176
|
+
attr_accessor units: ResolutionType
|
177
|
+
def view: () -> String?
|
178
|
+
attr_writer view: string?
|
179
|
+
end
|
180
|
+
|
181
|
+
class DrawOptions
|
182
|
+
def initialize: () -> void
|
183
|
+
|
184
|
+
include DrawAttribute
|
185
|
+
end
|
186
|
+
|
187
|
+
class PolaroidOptions
|
188
|
+
def initialize: () -> void
|
189
|
+
|
190
|
+
attr_writer shadow_color: magick_color
|
191
|
+
attr_writer border_color: magick_color
|
192
|
+
|
193
|
+
include DrawAttribute
|
194
|
+
end
|
195
|
+
end
|
196
|
+
end
|
@@ -0,0 +1,183 @@
|
|
1
|
+
module Magick
|
2
|
+
class ImageList
|
3
|
+
include Enumerable[Image]
|
4
|
+
include Comparable
|
5
|
+
# The methods of Magick::Image class can be called via method_missing
|
6
|
+
include _ImageCommonMethods
|
7
|
+
|
8
|
+
private
|
9
|
+
|
10
|
+
def get_current: () -> Integer?
|
11
|
+
|
12
|
+
public
|
13
|
+
|
14
|
+
def assert_image: (untyped obj) -> void
|
15
|
+
|
16
|
+
# Ensure array is always an array of Magick::Image objects
|
17
|
+
def assert_image_array: (untyped ary) -> void
|
18
|
+
|
19
|
+
# Find old current image, update scene number
|
20
|
+
# current is the id of the old current image.
|
21
|
+
def set_current: (untyped current) -> void
|
22
|
+
|
23
|
+
def scene: () -> Integer?
|
24
|
+
def scene=: (int? n) -> Integer?
|
25
|
+
def &: (ImageList | Array[Image] other) -> ImageList
|
26
|
+
def +: (ImageList | Array[Image] other) -> ImageList
|
27
|
+
def -: (ImageList | Array[Image] other) -> ImageList
|
28
|
+
def |: (ImageList | Array[Image] other) -> ImageList
|
29
|
+
def *: (Integer other) -> ImageList
|
30
|
+
def <<: (Image obj) -> self
|
31
|
+
def <=>: (untyped other) -> (Integer | nil)
|
32
|
+
def []: (int nth) -> Image?
|
33
|
+
| (Range[Integer] range) -> ImageList
|
34
|
+
| (int start, int length) -> ImageList
|
35
|
+
def []=: (int nth, magick_image | Array[Image] image) -> void
|
36
|
+
| (Range[Integer] range, magick_image | Array[Image] image) -> void
|
37
|
+
| (int start, int length, magick_image | Array[Image] image) -> void
|
38
|
+
def at: () -> Image
|
39
|
+
def each: () -> Enumerator[Image, self]
|
40
|
+
| () { (Image) -> void} -> void
|
41
|
+
def each_index: () -> Enumerator[Integer, self]
|
42
|
+
| () { (Integer) -> void } -> void
|
43
|
+
def empty?: () -> bool
|
44
|
+
def fetch: (int index) -> Image
|
45
|
+
| [T] (int index, T default) -> (Image | T)
|
46
|
+
| [T] (int index) { (Integer index) -> T } -> (Integer | T)
|
47
|
+
def first: () -> Image?
|
48
|
+
| (int n) -> Array[Image]
|
49
|
+
def hash: () -> Integer
|
50
|
+
def include?: (untyped obj) -> bool
|
51
|
+
def index: (Image | ImageList | Array[Image] obj) -> ::Integer?
|
52
|
+
| () { (Image) -> bool } -> Integer?
|
53
|
+
| () -> ::Enumerator[Image, Integer?]
|
54
|
+
def length: () -> Integer
|
55
|
+
def rindex: (Image | ImageList | Array[Image] obj) -> ::Integer?
|
56
|
+
| () { (Image) -> bool } -> Integer?
|
57
|
+
| () -> ::Enumerator[Image, Integer?]
|
58
|
+
def sort!: () -> self
|
59
|
+
| () { (Image a, Image b) -> Integer } -> self
|
60
|
+
def clear: () -> void
|
61
|
+
def clone: () -> ImageList
|
62
|
+
| ...
|
63
|
+
def collect: () { (Image) -> Image } -> ImageList
|
64
|
+
def collect!: () { (Image) -> Image } -> self
|
65
|
+
def copy: -> ImageList
|
66
|
+
| ...
|
67
|
+
def cur_image: -> Image
|
68
|
+
| ...
|
69
|
+
alias map collect
|
70
|
+
alias __map__ collect
|
71
|
+
alias map! collect!
|
72
|
+
alias __map__! collect!
|
73
|
+
def compact: -> ImageList
|
74
|
+
def compact!: -> self?
|
75
|
+
def concat: (ImageList | Array[Image] other) -> self
|
76
|
+
def delay=: (int d) -> void
|
77
|
+
def delete: (Image obj) -> Image?
|
78
|
+
| [T] (Image obj) { (Image) -> T } -> (Image | T)
|
79
|
+
def delete_at: (int ndx) -> Image?
|
80
|
+
def delete_if: () { (Image) -> bool } -> self
|
81
|
+
| () -> self
|
82
|
+
def dup: -> ImageList
|
83
|
+
| ...
|
84
|
+
def eql?: (ImageList | Array[Image] other) -> bool
|
85
|
+
def fill: (Image image, ?int start, ?int length) -> ImageList
|
86
|
+
| (Image image, Range[Integer] range) -> ImageList
|
87
|
+
| (?int start, ?int length) { (Integer index) -> Image } -> ImageList
|
88
|
+
| (Range[Integer] range) { (Integer index) -> Image } -> ImageList
|
89
|
+
def find_all: () { (Image) -> bool } -> ImageList
|
90
|
+
| () -> ImageList
|
91
|
+
alias select find_all
|
92
|
+
def from_blob: (string blob) -> self
|
93
|
+
| (string blob) { (Image::Info) -> void } -> self
|
94
|
+
def initialize: (*(File | string) filenames) -> void
|
95
|
+
| (*(File | string) filenames) { (Image::Info) -> void } -> void
|
96
|
+
def insert: (int index, *Image args) -> self
|
97
|
+
def iterations=: (int n) -> void
|
98
|
+
def last: () -> Image?
|
99
|
+
| (int n) -> ImageList
|
100
|
+
def marshal_dump: () -> (Array[(Integer | String)?])
|
101
|
+
def marshal_load: (Array[(Integer | String)?] ary) -> void
|
102
|
+
def method_missing: (untyped meth_id, *untyped args) ?{ (*untyped, **untyped) -> untyped } -> untyped
|
103
|
+
def new_image: (int cols, int rows, ?magick_fill fill) -> self
|
104
|
+
| (int cols, int rows, ?magick_fill fill) { (Image::Info) -> void } -> self
|
105
|
+
def partition: () { (Image) -> bool } -> [ImageList, ImageList]
|
106
|
+
def ping: (*(File | string) files) -> self
|
107
|
+
| (*(File | string) files) { (Image::Info) -> void } -> self
|
108
|
+
def pop: () -> Image?
|
109
|
+
def push: (*Image objs) -> self
|
110
|
+
def read: (*(File | string) files) -> self
|
111
|
+
| (*(File | string) files) { (Image::Info) -> void } -> self
|
112
|
+
def reject: () { (Image) -> bool } -> ImageList
|
113
|
+
def reject!: () { (Image) -> bool } -> self?
|
114
|
+
def replace: (ImageList | Array[Image] other) -> ImageList
|
115
|
+
def respond_to?: (interned meth_id, ?bool priv) -> bool
|
116
|
+
def reverse: -> ImageList
|
117
|
+
def reverse!: -> self
|
118
|
+
def reverse_each: () { (Image) -> void } -> self
|
119
|
+
def shift: () -> Image?
|
120
|
+
def slice: (int index) -> ImageList?
|
121
|
+
| (int start, int length) -> ImageList?
|
122
|
+
| (Range[Integer] range) -> ImageList?
|
123
|
+
def slice!: (int index) -> Image?
|
124
|
+
| (int start, int length) -> Image?
|
125
|
+
| (Range[Integer] range) -> Image?
|
126
|
+
def ticks_per_second=: (int t) -> void
|
127
|
+
def to_a: () -> Array[Image]
|
128
|
+
def uniq: -> ImageList
|
129
|
+
def uniq!: () -> self?
|
130
|
+
def unshift: (Image obj) -> self
|
131
|
+
def values_at: (*int index) -> ImageList
|
132
|
+
| (Range[Integer] range) -> ImageList
|
133
|
+
|
134
|
+
alias __display__ display
|
135
|
+
def remap: (?magick_image? remap_image, ?DitherMethod dither_method) -> self
|
136
|
+
| ...
|
137
|
+
def animate: (?int delay) -> self
|
138
|
+
| (?int delay) { (Image::Info) -> void } -> self
|
139
|
+
def append: (bool stack_arg) -> Image
|
140
|
+
def average: () -> Image
|
141
|
+
def coalesce: () -> ImageList
|
142
|
+
def combine: (?ColorspaceType colorspace) -> Image
|
143
|
+
def composite_layers: (ImageList images, ?CompositeOperator composite_op) -> ImageList
|
144
|
+
def deconstruct: () -> ImageList
|
145
|
+
def display: () -> self
|
146
|
+
| () { (Image::Info) -> void } -> self
|
147
|
+
def flatten_images: () -> Image
|
148
|
+
def montage: () -> ImageList
|
149
|
+
| () { (ImageList::Montage) -> void } -> ImageList
|
150
|
+
def morph: (int nimages) -> ImageList
|
151
|
+
def mosaic: () -> Image
|
152
|
+
def optimize_layers: (LayerMethod method) -> ImageList
|
153
|
+
def quantize: (?int number_colors, ?ColorspaceType colorspace, ?(DitherMethod | bool) dither, ?int tree_depth, ?bool measure_error) -> ImageList
|
154
|
+
def to_blob: () -> String?
|
155
|
+
| () { (Image::Info) -> void} -> String?
|
156
|
+
def write: (File | string file) -> self
|
157
|
+
| (File | string file) { (Image::Info) -> void } -> self
|
158
|
+
def destroy!: () -> self
|
159
|
+
def destroyed?: () -> bool
|
160
|
+
|
161
|
+
class Montage
|
162
|
+
def initialize: () -> void
|
163
|
+
|
164
|
+
attr_writer background_color: magick_color
|
165
|
+
attr_writer border_color: magick_color
|
166
|
+
attr_writer border_width: int
|
167
|
+
attr_writer compose: CompositeOperator
|
168
|
+
attr_writer filename: string
|
169
|
+
attr_writer fill: magick_color
|
170
|
+
attr_writer font: string
|
171
|
+
attr_writer frame: Geometry | string
|
172
|
+
attr_writer geometry: Geometry | string
|
173
|
+
attr_writer gravity: GravityType
|
174
|
+
attr_writer matte_color: magick_color
|
175
|
+
attr_writer pointsize: magick_real
|
176
|
+
attr_writer shadow: bool
|
177
|
+
attr_writer stroke: magick_color
|
178
|
+
attr_writer texture: magick_image
|
179
|
+
attr_writer tile: Geometry | string
|
180
|
+
attr_writer title: string
|
181
|
+
end
|
182
|
+
end
|
183
|
+
end
|
@@ -0,0 +1,101 @@
|
|
1
|
+
module Magick
|
2
|
+
module IPTC
|
3
|
+
module Envelope
|
4
|
+
Model_Version: String
|
5
|
+
Destination: String
|
6
|
+
File_Format: String
|
7
|
+
File_Format_Version: String
|
8
|
+
Service_Identifier: String
|
9
|
+
Envelope_Number: String
|
10
|
+
Product_ID: String
|
11
|
+
Envelope_Priority: String
|
12
|
+
Date_Sent: String
|
13
|
+
Time_Sent: String
|
14
|
+
Coded_Character_Set: String
|
15
|
+
UNO: String
|
16
|
+
Unique_Name_of_Object: String
|
17
|
+
ARM_Identifier: String
|
18
|
+
ARM_Version: String
|
19
|
+
end
|
20
|
+
|
21
|
+
module Application
|
22
|
+
Record_Version: String
|
23
|
+
Object_Type_Reference: String
|
24
|
+
Object_Name: String
|
25
|
+
Title: String
|
26
|
+
Edit_Status: String
|
27
|
+
Editorial_Update: String
|
28
|
+
Urgency: String
|
29
|
+
Subject_Reference: String
|
30
|
+
Category: String
|
31
|
+
Supplemental_Category: String
|
32
|
+
Fixture_Identifier: String
|
33
|
+
Keywords: String
|
34
|
+
Content_Location_Code: String
|
35
|
+
Content_Location_Name: String
|
36
|
+
Release_Date: String
|
37
|
+
Release_Time: String
|
38
|
+
Expiration_Date: String
|
39
|
+
Expiration_Time: String
|
40
|
+
Special_Instructions: String
|
41
|
+
Action_Advised: String
|
42
|
+
Reference_Service: String
|
43
|
+
Reference_Date: String
|
44
|
+
Reference_Number: String
|
45
|
+
Date_Created: String
|
46
|
+
Time_Created: String
|
47
|
+
Digital_Creation_Date: String
|
48
|
+
Digital_Creation_Time: String
|
49
|
+
Originating_Program: String
|
50
|
+
Program_Version: String
|
51
|
+
Object_Cycle: String
|
52
|
+
By_Line: String
|
53
|
+
Author: String
|
54
|
+
By_Line_Title: String
|
55
|
+
Author_Position: String
|
56
|
+
City: String
|
57
|
+
Sub_Location: String
|
58
|
+
Province: String
|
59
|
+
State: String
|
60
|
+
Country_Primary_Location_Code: String
|
61
|
+
Country_Primary_Location_Name: String
|
62
|
+
Original_Transmission_Reference: String
|
63
|
+
Headline: String
|
64
|
+
Credit: String
|
65
|
+
Source: String
|
66
|
+
Copyright_Notice: String
|
67
|
+
Contact: String
|
68
|
+
Abstract: String
|
69
|
+
Caption: String
|
70
|
+
Editor: String
|
71
|
+
Caption_Writer: String
|
72
|
+
Rasterized_Caption: String
|
73
|
+
Image_Type: String
|
74
|
+
Image_Orientation: String
|
75
|
+
Language_Identifier: String
|
76
|
+
Audio_Type: String
|
77
|
+
Audio_Sampling_Rate: String
|
78
|
+
Audio_Sampling_Resolution: String
|
79
|
+
Audio_Duration: String
|
80
|
+
Audio_Outcue: String
|
81
|
+
ObjectData_Preview_File_Format: String
|
82
|
+
ObjectData_Preview_File_Format_Version: String
|
83
|
+
ObjectData_Preview_Data: String
|
84
|
+
end
|
85
|
+
|
86
|
+
module Pre_ObjectData_Descriptor
|
87
|
+
Size_Mode: String
|
88
|
+
Max_Subfile_Size: String
|
89
|
+
ObjectData_Size_Announced: String
|
90
|
+
Maximum_ObjectData_Size: String
|
91
|
+
end
|
92
|
+
|
93
|
+
module ObjectData
|
94
|
+
Subfile: String
|
95
|
+
end
|
96
|
+
|
97
|
+
module Post_ObjectData_Descriptor
|
98
|
+
Confirmed_ObjectData_Size: String
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
module Magick
|
2
|
+
class KernelInfo
|
3
|
+
def self.builtin: (KernelInfoType what, string geometry) -> KernelInfo
|
4
|
+
|
5
|
+
def initialize: (string kernel_string) -> void
|
6
|
+
def unity_add: (magick_real scale) -> nil
|
7
|
+
def scale: (magick_real scale, GeometryFlags flags) -> nil
|
8
|
+
def scale_geometry: (string geometry) -> nil
|
9
|
+
def clone: () -> KernelInfo
|
10
|
+
def dup: () -> KernelInfo
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
module Magick
|
2
|
+
class OptionalMethodArguments
|
3
|
+
attr_writer highlight_color: magick_color
|
4
|
+
attr_writer lowlight_color: magick_color
|
5
|
+
|
6
|
+
def initialize: (magick_image img) -> void
|
7
|
+
def define: (string key, ?string? value) -> String
|
8
|
+
def method_missing: (untyped mth, untyped val) ?{ (*untyped, **untyped) -> untyped } -> untyped
|
9
|
+
end
|
10
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module Magick
|
2
|
+
class Pixel
|
3
|
+
# TODO:
|
4
|
+
# include Observable
|
5
|
+
|
6
|
+
include Comparable
|
7
|
+
|
8
|
+
# RGBA attributes
|
9
|
+
def red: () -> Integer
|
10
|
+
attr_writer red: real
|
11
|
+
def green: () -> Integer
|
12
|
+
attr_writer green: real
|
13
|
+
def blue: () -> Integer
|
14
|
+
attr_writer blue: real
|
15
|
+
def alpha: () -> Integer
|
16
|
+
attr_writer alpha: real
|
17
|
+
|
18
|
+
# CMYK attributes
|
19
|
+
def cyan: () -> Integer
|
20
|
+
attr_writer cyan: real
|
21
|
+
def magenta: () -> Integer
|
22
|
+
attr_writer magenta: real
|
23
|
+
def yellow: () -> Integer
|
24
|
+
attr_writer yellow: real
|
25
|
+
def black: () -> Integer
|
26
|
+
attr_writer black: real
|
27
|
+
|
28
|
+
def self.from_color: (string name) -> Pixel
|
29
|
+
def self.from_hsla: (magick_percentage hue, magick_percentage saturation, magick_percentage lightness, magick_percentage alpha) -> Pixel
|
30
|
+
|
31
|
+
def <=>: (untyped other) -> (-1 | 0 | 1 | nil)
|
32
|
+
def ===: (untyped other) -> bool
|
33
|
+
def eql?: (untyped other) -> bool
|
34
|
+
def initialize: (?real red, ?real green, ?real blue, ?real opacity) -> void
|
35
|
+
def clone: () -> Pixel
|
36
|
+
def dup: () -> Pixel
|
37
|
+
def fcmp: (magick_color other, ?magick_real fuzz, ?ColorspaceType colorspace) -> bool
|
38
|
+
def hash: () -> Integer
|
39
|
+
def intensity: () -> Integer
|
40
|
+
def marshal_dump: () -> Hash[Symbol, Integer]
|
41
|
+
def marshal_load: (Hash[Symbol, Integer] dpixel) -> self
|
42
|
+
def to_color: (?ComplianceType compliance, ?bool alpha, ?int depth, ?bool hex) -> String
|
43
|
+
def to_hsla: () -> [Float, Float, Float, Float]
|
44
|
+
def to_s: () -> String
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
module Magick
|
2
|
+
class AffineMatrix < Struct[untyped]
|
3
|
+
attr_accessor sx: real
|
4
|
+
attr_accessor rx: real
|
5
|
+
attr_accessor ry: real
|
6
|
+
attr_accessor sy: real
|
7
|
+
attr_accessor tx: real
|
8
|
+
attr_accessor ty: real
|
9
|
+
|
10
|
+
def self.new: (?real? sx, ?real? rx, ?real? ry, ?real? sy, ?real? tx, ?real? ty) -> AffineMatrix
|
11
|
+
end
|
12
|
+
|
13
|
+
class Primary < Struct[untyped]
|
14
|
+
attr_accessor x: real
|
15
|
+
attr_accessor y: real
|
16
|
+
attr_accessor z: real
|
17
|
+
|
18
|
+
def self.new: (?real? x, ?real? y, ?real? z) -> Primary
|
19
|
+
end
|
20
|
+
|
21
|
+
class Chromaticity < Struct[untyped]
|
22
|
+
attr_accessor red_primary: Primary
|
23
|
+
attr_accessor green_primary: Primary
|
24
|
+
attr_accessor blue_primary: Primary
|
25
|
+
attr_accessor white_point: Primary
|
26
|
+
|
27
|
+
def self.new: (?Primary? red_primary, ?Primary? green_primary, ?Primary? blue_primary, ?Primary? white_point) -> Chromaticity
|
28
|
+
end
|
29
|
+
|
30
|
+
class Color < Struct[untyped]
|
31
|
+
attr_accessor name: String
|
32
|
+
attr_accessor compliance: ComplianceType
|
33
|
+
attr_accessor color: Pixel
|
34
|
+
|
35
|
+
def self.new: (?String? name, ?ComplianceType? compliance, ?Pixel? color) -> Color
|
36
|
+
end
|
37
|
+
|
38
|
+
class Point < Struct[untyped]
|
39
|
+
attr_accessor x: real
|
40
|
+
attr_accessor y: real
|
41
|
+
|
42
|
+
def self.new: (?real? x, ?real? y) -> Point
|
43
|
+
end
|
44
|
+
|
45
|
+
class Rectangle < Struct[untyped]
|
46
|
+
attr_accessor width: real
|
47
|
+
attr_accessor height: real
|
48
|
+
attr_accessor x: real
|
49
|
+
attr_accessor y: real
|
50
|
+
|
51
|
+
def self.new: (?real? width, ?real? height, ?real? x, ?real? y) -> Rectangle
|
52
|
+
end
|
53
|
+
|
54
|
+
class Segment < Struct[untyped]
|
55
|
+
attr_accessor x1: real
|
56
|
+
attr_accessor y1: real
|
57
|
+
attr_accessor x2: real
|
58
|
+
attr_accessor y2: real
|
59
|
+
|
60
|
+
def self.new: (?real? x1, ?real? y1, ?real? x2, ?real? y2) -> Segment
|
61
|
+
end
|
62
|
+
|
63
|
+
class Font < Struct[untyped]
|
64
|
+
attr_accessor name: String
|
65
|
+
attr_accessor description: String
|
66
|
+
attr_accessor family: String
|
67
|
+
attr_accessor style: StyleType
|
68
|
+
attr_accessor stretch: StretchType
|
69
|
+
attr_accessor weight: Integer
|
70
|
+
attr_accessor encoding: String
|
71
|
+
attr_accessor foundry: String
|
72
|
+
attr_accessor format: String
|
73
|
+
|
74
|
+
def self.new: (?String? name, ?String? description, ?String? family, ?StyleType? style, ?StretchType? stretch, ?Integer? weight, ?String? encoding, ?String? foundry, ?String? format) -> Font
|
75
|
+
end
|
76
|
+
|
77
|
+
class TypeMetric < Struct[untyped]
|
78
|
+
attr_accessor pixels_per_em: Point
|
79
|
+
attr_accessor ascent: Float
|
80
|
+
attr_accessor descent: Float
|
81
|
+
attr_accessor width: Float
|
82
|
+
attr_accessor height: Float
|
83
|
+
attr_accessor max_advance: Float
|
84
|
+
attr_accessor bounds: Segment
|
85
|
+
attr_accessor underline_position: Float
|
86
|
+
attr_accessor underline_thickness: Float
|
87
|
+
|
88
|
+
def self.new: (?Point? pixels_per_em, ?magick_real? ascent, ?magick_real? descent, ?magick_real? width, ?magick_real? height, ?magick_real? max_advance, ?Segment? bounds, ?magick_real? underline_position, ?magick_real? underline_thickness) -> TypeMetric
|
89
|
+
end
|
90
|
+
end
|