added round trip test
fixed ci added colortype
This commit is contained in:
1 parent
a08604b015
commit
da07c0f4f5
4 files changed
+15
-3
No files matched your search
@@ -313,10 +313,9 @@ impl Image {
|
|||||||
self.bits_per_sample.clone(),
|
self.bits_per_sample.clone(),
|
||||||
),
|
),
|
||||||
)),
|
)),
|
||||||
}
|
},
|
||||||
,
|
|
||||||
PhotometricInterpretation::YCbCr => match self.bits_per_sample[..] {
|
PhotometricInterpretation::YCbCr => match self.bits_per_sample[..] {
|
||||||
[y, cb, cr] if [y, y] == [cb, cr]=> Ok(ColorType::YCbCr(y)),
|
[y, cb, cr] if [y, y] == [cb, cr] => Ok(ColorType::YCbCr(y)),
|
||||||
_ => Err(TiffError::UnsupportedError(
|
_ => Err(TiffError::UnsupportedError(
|
||||||
TiffUnsupportedError::InterpretationWithBits(
|
TiffUnsupportedError::InterpretationWithBits(
|
||||||
self.photometric_interpretation,
|
self.photometric_interpretation,
|
||||||
|
|||||||
@@ -235,3 +235,11 @@ impl ColorType for CMYK64Float {
|
|||||||
const BITS_PER_SAMPLE: &'static [u16] = &[64, 64, 64, 64];
|
const BITS_PER_SAMPLE: &'static [u16] = &[64, 64, 64, 64];
|
||||||
const SAMPLE_FORMAT: &'static [SampleFormat] = &[SampleFormat::IEEEFP; 4];
|
const SAMPLE_FORMAT: &'static [SampleFormat] = &[SampleFormat::IEEEFP; 4];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub struct YCbCr8;
|
||||||
|
impl ColorType for YCbCr8 {
|
||||||
|
type Inner = u8;
|
||||||
|
const TIFF_VALUE: PhotometricInterpretation = PhotometricInterpretation::YCbCr;
|
||||||
|
const BITS_PER_SAMPLE: &'static [u16] = &[8, 8, 8];
|
||||||
|
const SAMPLE_FORMAT: &'static [SampleFormat] = &[SampleFormat::Uint; 3];
|
||||||
|
}
|
||||||
@@ -264,6 +264,11 @@ fn test_gray_f64_roundtrip() {
|
|||||||
test_f64_roundtrip::<colortype::Gray64Float>("gradient-1c-64b-float.tiff", ColorType::Gray(64));
|
test_f64_roundtrip::<colortype::Gray64Float>("gradient-1c-64b-float.tiff", ColorType::Gray(64));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_ycbcr_u8_roundtrip() {
|
||||||
|
test_u8_roundtrip::<colortype::YCbCr8>("tiled-jpeg-ycbcr.tif", ColorType::YCbCr(8));
|
||||||
|
}
|
||||||
|
|
||||||
trait AssertDecode {
|
trait AssertDecode {
|
||||||
fn assert_tag_u32(&mut self, tag: u16) -> u32;
|
fn assert_tag_u32(&mut self, tag: u16) -> u32;
|
||||||
fn assert_tag_u32_vec(&mut self, tag: u16) -> Vec<u32>;
|
fn assert_tag_u32_vec(&mut self, tag: u16) -> Vec<u32>;
|
||||||
|
|||||||
Binary file not shown.
Reference in new issue
Block a user