thorvg viewer: fix scale problem

If viewer calls load() with a data which does not have size changes of both
viewbox and canvas, then load() does not set a scale value.
This makes incorrect result on viewer side.

So thorvg wasm should set a scale value, whenever load() is called.
This commit is contained in:
Shinwoo Kim 2020-10-14 17:26:14 +09:00 committed by Hermet Park
parent acac884257
commit cc81e46343

View file

@ -28,7 +28,6 @@ public:
bool load(string data, int width, int height) bool load(string data, int width, int height)
{ {
uint32_t pw, ph;
float w, h; float w, h;
mErrorMsg = "None"; mErrorMsg = "None";
@ -60,16 +59,10 @@ public:
/* get default size */ /* get default size */
mPicture->viewbox(nullptr, nullptr, &w, &h); mPicture->viewbox(nullptr, nullptr, &w, &h);
pw = mDefaultWidth;
ph = mDefaultHeight;
mDefaultWidth = static_cast<uint32_t>(w); mDefaultWidth = static_cast<uint32_t>(w);
mDefaultHeight = static_cast<uint32_t>(h); mDefaultHeight = static_cast<uint32_t>(h);
if (pw != mDefaultWidth || ph != mDefaultHeight) {
updateScale(); updateScale();
}
updateSize(width, height); updateSize(width, height);
if (mSwCanvas->push(unique_ptr<Picture>(mPicture)) != Result::Success) { if (mSwCanvas->push(unique_ptr<Picture>(mPicture)) != Result::Success) {