Merge TagReader and exposed IfdReader internals
Having the value reader itself take care of the bigtiff and limit semantics is a little cleaner, with the TagReader being responsible for the interface of grabbing specific types of IFD values.
This commit is contained in:
1 parent
f021e3e599
commit
e62cdfbf42
3 files changed
+42
-53
No files matched your search
+2
-13
@@ -82,21 +82,10 @@ pub(crate) struct Image {
|
||||
|
||||
impl Image {
|
||||
pub fn from_reader<R: Read + Seek>(
|
||||
reader: &mut ValueReader<R>,
|
||||
decoder: &mut ValueReader<R>,
|
||||
ifd: Directory,
|
||||
) -> TiffResult<Image> {
|
||||
let ValueReader {
|
||||
reader,
|
||||
bigtiff,
|
||||
limits,
|
||||
} = reader;
|
||||
|
||||
let mut tag_reader = TagReader {
|
||||
reader,
|
||||
limits,
|
||||
ifd: &ifd,
|
||||
bigtiff: *bigtiff,
|
||||
};
|
||||
let mut tag_reader = TagReader { decoder, ifd: &ifd };
|
||||
|
||||
let width = tag_reader.require_tag(Tag::ImageWidth)?.into_u32()?;
|
||||
let height = tag_reader.require_tag(Tag::ImageLength)?.into_u32()?;
|
||||
|
||||
Reference in new issue
Block a user