MCPcopy Create free account
hub / github.com/Snapchat/Valdi / make

Method make

snap_drawing/src/snap_drawing/cpp/Utils/Image.cpp:172–187  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

170}
171
172Valdi::Result<Ref<Image>> Image::make(const Valdi::BytesView& data) {
173 if (isSVG(data)) {
174 return makeFromSVG(data);
175 }
176
177 Image::initializeCodecs();
178 auto skData = skDataFromBytes(data, DataConversionModeNeverCopy);
179
180 auto skImage = SkImages::DeferredFromEncodedData(skData);
181
182 if (skImage == nullptr) {
183 return Valdi::Error("Unable to decode image");
184 }
185
186 return Ref<Image>(Valdi::makeShared<Image>(skImage));
187}
188
189bool Image::isSVG(const Valdi::BytesView& data) {
190 return snap::drawing::isSVG(data);

Callers 1

makeSVGDOMFunction · 0.45

Calls 3

isSVGFunction · 0.85
skDataFromBytesFunction · 0.85
ErrorInterface · 0.50

Tested by

no test coverage detected