vectory 0.7.6 → 0.7.8

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9517c7e8299f78520e9e150b4282b84e11dc94d1bb61f5319fd4b8f7c66c5e75
4
- data.tar.gz: e75a98ab4378796775d128d8acc8d2a9a9416ed34fb998c28a704f20fdc85a3d
3
+ metadata.gz: ccf79449f78b1e3df6ed0792a5ef740e96da77d0e38f7e9ab4bf4d47d9b31334
4
+ data.tar.gz: 16aec00dcfcd5c3bc9caf81796bbc93665987927dc8e320aaee607d2fe5aaaa8
5
5
  SHA512:
6
- metadata.gz: 83a607b2d61ae61a7f57396da3d6f06cdf6191fb23f8520a9226c4461f4ab3bc7448bc8ed51694af9eb7cb25ef2a2645fc0fa8e6ef13966b984cf01eccce3df0
7
- data.tar.gz: 1c76f063a7de3d16f7859717a8b437628d2448b5d0b678bb600f43c21faea3224ee3e7549701270a485179babce981ac3308a2d0a361306244c569799ed6e031
6
+ metadata.gz: b87eeaf37029993930140bba471b9bd677465002e0bf5c7eb91ef2550d56d3c3456a3ab02e4e2a5d3db0b403cc129f7f68d1ec8f9dcd02bcd1a3afd2b7f3aad3
7
+ data.tar.gz: 20bbd0ff186b26123d676cad1ffdf2f46ff49c383b728e21be6c14a3287af120cb5a0578b4762a1cdf2b5eca37c4afeccc712b831454daf83217a9c8e82c7724
data/Gemfile CHANGED
@@ -5,12 +5,9 @@ source "https://rubygems.org"
5
5
  # Specify your gem's dependencies in vectory.gemspec
6
6
  gemspec
7
7
 
8
- gem "equivalent-xml", "~> 0.6"
9
-
10
- gem "rake", "~> 13.0"
11
-
12
- gem "rspec", "~> 3.0"
13
-
14
- gem "rubocop", "~> 1.22"
15
- gem "rubocop-performance", "~> 1.10"
16
- gem "rubocop-rails", "~> 2.9"
8
+ gem "equivalent-xml"
9
+ gem "rake"
10
+ gem "rspec"
11
+ gem "rubocop"
12
+ gem "rubocop-performance"
13
+ gem "rexml"
@@ -12,7 +12,14 @@ module Vectory
12
12
 
13
13
  def self.from_vector(vector)
14
14
  mimetype = vector.class.mimetype
15
- content = vector.content.gsub("\r\n", "\n")
15
+ content = vector.content
16
+
17
+ # Normalize line endings for text-based types before encoding
18
+ # Apply to PS, EPS, and SVG. EMF is binary, so skip it.
19
+ if ["application/postscript", "image/svg+xml"].include?(vector.mime)
20
+ content = content.gsub("\r\n", "\n")
21
+ end
22
+
16
23
  data = Base64.strict_encode64(content)
17
24
 
18
25
  new("data:#{mimetype};base64,#{data}")
@@ -15,14 +15,22 @@ module Vectory
15
15
  end
16
16
 
17
17
  def get_image_size(img, path)
18
- detected = ImageSize.path(path).size
19
- realsize = detected unless detected.all? { |x| x.nil? || x.zero? }
18
+ detected = detect_size(path)
19
+ realsize = detected if detected
20
20
  s = image_size_interpret(img, realsize || [nil, nil])
21
21
  image_size_zeroes_complete(s, realsize)
22
22
  end
23
23
 
24
24
  private
25
25
 
26
+ def detect_size(path)
27
+ size = ImageSize.path(path).size
28
+ return unless size
29
+ return if size.all? { |x| x.nil? || x.zero? }
30
+
31
+ size
32
+ end
33
+
26
34
  def viewbox(dimensions)
27
35
  width = dimensions[0] + BORDER_WIDTH
28
36
  height = dimensions[1] + BORDER_WIDTH
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Vectory
4
- VERSION = "0.7.6"
4
+ VERSION = "0.7.8"
5
5
  end
data/vectory.gemspec CHANGED
@@ -23,12 +23,13 @@ Gem::Specification.new do |spec|
23
23
  spec.files = `git ls-files -z`.split("\x0").reject do |f|
24
24
  f.match(%r{^(bin|spec)/})
25
25
  end
26
- spec.test_files = `git ls-files -- {spec}/*`.split("\n")
26
+ spec.test_files = `git ls-files -- {spec}/*`.split("\n")
27
27
  spec.required_ruby_version = ">= 2.5.0"
28
28
 
29
- spec.add_runtime_dependency "emf2svg"
30
- spec.add_runtime_dependency "image_size", ">= 3.2.0"
31
- spec.add_runtime_dependency "marcel", "~> 1.0"
32
- spec.add_runtime_dependency "nokogiri", "~> 1.14"
33
- spec.add_runtime_dependency "thor", "~> 1.0"
29
+ spec.add_dependency "base64"
30
+ spec.add_dependency "emf2svg"
31
+ spec.add_dependency "image_size", ">= 3.2.0"
32
+ spec.add_dependency "marcel", "~> 1.0"
33
+ spec.add_dependency "nokogiri", "~> 1.14"
34
+ spec.add_dependency "thor", "~> 1.0"
34
35
  end
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vectory
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.6
4
+ version: 0.7.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-05-07 00:00:00.000000000 Z
11
+ date: 2025-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: base64
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: emf2svg
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -124,7 +138,7 @@ homepage: https://github.com/metanorma/vectory
124
138
  licenses:
125
139
  - BSD-2-Clause
126
140
  metadata: {}
127
- post_install_message:
141
+ post_install_message:
128
142
  rdoc_options: []
129
143
  require_paths:
130
144
  - lib
@@ -139,8 +153,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
139
153
  - !ruby/object:Gem::Version
140
154
  version: '0'
141
155
  requirements: []
142
- rubygems_version: 3.3.27
143
- signing_key:
156
+ rubygems_version: 3.5.22
157
+ signing_key:
144
158
  specification_version: 4
145
159
  summary: Pairwise vector image conversions.
146
160
  test_files: []