rmagick 5.4.4 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|