immosquare-colors 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d27ad6de45bd405afb65744f0387caf77f558da435f4a66278d71076115dfb3e
4
- data.tar.gz: 8c5e79d70d60a39e1188fbefaaa02931d1178843a15e148e9733119dfa499cf8
3
+ metadata.gz: 3cbf0b379ceb6c02f6fc3bbb88af75d8126dd4ec39e5fc914ae8f3190ddc13fe
4
+ data.tar.gz: 80f30f8b836f980bd51507fac5f36c0827a58573b203763fb529cc39c4cd83ef
5
5
  SHA512:
6
- metadata.gz: 13a9a1127fe5846afc0a755fa58175389abc336193c01ff4875adc415f8869b6a1e0b255ab7e40933e01556f19835a8a3844d40ec0418cf35e0b49fbbfbede91
7
- data.tar.gz: 82d782e00045ae69288407d0ff436d8e953883a985f1302283897139fdc55d6c824b532f0e3e793b4a95ba9d577f38751c36a3fc394993a5170f17ae1fdfb804
6
+ metadata.gz: 3b7c2adde7ce4e8ab02fc2f16d68c8e12a05d083ca86e69f053df67b8f307eb3d3259e9f6b885b2965100001609cccbc3dbce55e3ed1f309b35a3cf18d719b0d
7
+ data.tar.gz: e29b267546d7626db55ec38c7a638ff86d56c6e729e736627762472aa2ee32dcf326294ed7581240323fa5a99fe6282b92fd8b235f5141b38d4d812b5ace78e3
@@ -1,3 +1,3 @@
1
1
  module ImmosquareColors
2
- VERSION = "0.1.3".freeze
2
+ VERSION = "0.1.4".freeze
3
3
  end
@@ -46,6 +46,16 @@ module ImmosquareColors
46
46
  rgba
47
47
  end
48
48
 
49
+ ##============================================================##
50
+ ## To transform a rgba color (array) to hex
51
+ ##============================================================##
52
+ def rgba_to_hex(rgba_color)
53
+ r, g, b, a = rgba_color
54
+ hex_string = format("#%02x%02x%02x", r, g, b)
55
+ hex_string += format("%02x", (a * 255).floor) if a && a != 1.0
56
+ hex_string.upcase
57
+ end
58
+
49
59
  ##============================================================##
50
60
  ## A dictionary for mapping textual colors to colors
51
61
  ## hex
@@ -54,5 +64,29 @@ module ImmosquareColors
54
64
  ImmosquareConstants::Color.color_name_to_hex(color_name.downcase.to_sym) || "#000000"
55
65
  end
56
66
 
67
+ ##============================================================##
68
+ ## Mix color whith white (255, 255, 255)
69
+ ##============================================================##
70
+ def tint_color(color, weight)
71
+ color_hex = color.start_with?("#") ? color : color_name_to_hex(color)
72
+ r, g, b, a = hex_to_rgba(color_hex)
73
+ tinted_r = ((((100 - weight) * r) + (weight * 255)) / 100).round
74
+ tinted_g = ((((100 - weight) * g) + (weight * 255)) / 100).round
75
+ tinted_b = ((((100 - weight) * b) + (weight * 255)) / 100).round
76
+ rgba_to_hex([tinted_r, tinted_g, tinted_b, a])
77
+ end
78
+
79
+ ##============================================================##
80
+ ## Mix color whith black (0, 0, 0)
81
+ ##============================================================##
82
+ def shade_color(color, weight)
83
+ color_hex = color.start_with?("#") ? color : color_name_to_hex(color)
84
+ r, g, b, a = hex_to_rgba(color_hex)
85
+ shaded_r = ((r * (100 - weight)).round / 100)
86
+ shaded_g = ((g * (100 - weight)).round / 100)
87
+ shaded_b = ((b * (100 - weight)).round / 100)
88
+ rgba_to_hex([shaded_r, shaded_g, shaded_b, a])
89
+ end
90
+
57
91
  end
58
92
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: immosquare-colors
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - IMMO SQUARE
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-10-06 00:00:00.000000000 Z
11
+ date: 2023-10-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: immosquare-constants