psd 0.4.0 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/psd/file.rb +2 -1
- data/lib/psd/layer_info/legacy_typetool.rb +3 -3
- data/lib/psd/layer_info/unicode_name.rb +1 -2
- data/lib/psd/version.rb +1 -1
- metadata +1 -2
- data/lib/psd/pascal_string.rb +0 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cd304c938fae5c2e76f30356d35bbb6a53151c5f
|
4
|
+
data.tar.gz: 1b109cfefe59ac367216f1cd541180789714531f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 418c704ed6dd5b33a0b96e0de0d9b8cd327ea93a09a75a4b9c916b74b2e129fa0e6e16e352e8da3bda19ef07bc4ee70f4342f4889e9601983f74eaec8d5a361a
|
7
|
+
data.tar.gz: 63037689cfc8f00a0afd27883d0979b9cf34144bf38d3faab48dc28a53d60f991783f9245d10bba1ec200c8111afb4f5ad41d0ae36265daf3f155508f7fe63bd
|
data/lib/psd/file.rb
CHANGED
@@ -70,7 +70,8 @@ class PSD
|
|
70
70
|
end
|
71
71
|
|
72
72
|
# Reads a string of the given length and converts it to UTF-8 from the internally used MacRoman encoding.
|
73
|
-
def read_string(length)
|
73
|
+
def read_string(length=nil)
|
74
|
+
length = @file.read(1).bytes.to_a[0] if length.nil?
|
74
75
|
read(length).encode('UTF-8', 'MacRoman').delete("\000")
|
75
76
|
end
|
76
77
|
|
@@ -19,9 +19,9 @@ class PSD
|
|
19
19
|
@data[:face][i] = {}
|
20
20
|
@data[:face][i][:mark] = @file.read_short
|
21
21
|
@data[:face][i][:font_type] = @file.read_int
|
22
|
-
@data[:face][i][:font_name] =
|
23
|
-
@data[:face][i][:font_family_name] =
|
24
|
-
@data[:face][i][:font_style_name] =
|
22
|
+
@data[:face][i][:font_name] = @file.read_string
|
23
|
+
@data[:face][i][:font_family_name] = @file.read_string
|
24
|
+
@data[:face][i][:font_style_name] = @file.read_string
|
25
25
|
@data[:face][i][:script] = @file.read_short
|
26
26
|
@data[:face][i][:number_axes_vector] = @file.read_int
|
27
27
|
@data[:face][i][:vector] = []
|
@@ -6,8 +6,7 @@ class PSD
|
|
6
6
|
|
7
7
|
def parse
|
8
8
|
pos = @file.tell
|
9
|
-
|
10
|
-
@data = @file.read(len).unpack("A#{len}")[0].encode('UTF-8').delete("\000")
|
9
|
+
@data = @file.read_unicode_string
|
11
10
|
|
12
11
|
# The name seems to be padded with null bytes. This is the easiest solution.
|
13
12
|
@file.seek pos + @length
|
data/lib/psd/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: psd
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryan LeFevre
|
@@ -167,7 +167,6 @@ files:
|
|
167
167
|
- lib/psd/nodes/lock_to_origin.rb
|
168
168
|
- lib/psd/nodes/parse_layers.rb
|
169
169
|
- lib/psd/nodes/search.rb
|
170
|
-
- lib/psd/pascal_string.rb
|
171
170
|
- lib/psd/path_record.rb
|
172
171
|
- lib/psd/resource.rb
|
173
172
|
- lib/psd/resource_section.rb
|
data/lib/psd/pascal_string.rb
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
# Helper class that parses a pascal string, which is a
|
2
|
-
# string that has it's length prepended to it.
|
3
|
-
class PascalString < BinData::Record
|
4
|
-
uint8 :len, value: lambda { data.length }
|
5
|
-
string :data, read_length: :len
|
6
|
-
|
7
|
-
def get
|
8
|
-
self.data
|
9
|
-
end
|
10
|
-
|
11
|
-
def set(v)
|
12
|
-
self.data = v
|
13
|
-
end
|
14
|
-
end
|