adobe / svg-native-viewer

SVG Native viewer is a library that parses and renders SVG Native documents
Apache License 2.0
155 stars 37 forks source link

moazin's changes for adding Bounding Box functionality in SNV with skia port #163

Closed tjindal closed 2 years ago

tjindal commented 2 years ago

Description

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):

Types of changes

Checklist:

moazin commented 2 years ago

@dirkschulze @tjindal

Is it really intended to add Librsvg code here? Is the code even from Librsvg?

Hi Dirk, which code are you talking about? I added some code that "uses" librsvg to compute the bounds of my test set and compare our results against theirs, as far as I can recall, I write those results as part of the repository source but still left that script so a developer can use it to generate the bounds whenever the test set SVG documents are updated. I don't recall copying anything from Librsvg though.

dirkschulze commented 2 years ago

@tjindal There seems to be a linking error for D2D test app. Could you check please?

moazin commented 2 years ago

@moazin Maybe those headers were removed in the latest commit and by accident added intermediately.

Which headers are you talking about Dirk? Could you please refer me to the commit and change?

tjindal commented 2 years ago

@moazin Maybe those headers were removed in the latest commit and by accident added intermediately.

There seem to be linking issues with TestD2D, could you please check?

Furthermore, the following files are missing license headers:

  • svgnative/tests/librsvg-bounds-generator/script.cpp
  • svgnative/tests/bounds-tests.cpp
  • svgnative/tests/rectangle-tests.cpp
  • svgnative/tests/interval-tests.cpp
  • svgnative/tests/bounds-tests.cpp

PS: Sorry for the delay. Didn't get notifications.

i have added the license headers in above mentioned files.

tjindal commented 2 years ago

Api's related to bounding box computation for skia port is added in this PR, with integration of google tests and accordingly, all CircleCi pipelines testcases are also passed.

HinTak commented 1 year ago

Okay, it seems that you never tested the Skia and Cairo code paths. That explains my curiosity about the committed example code being non-buildable on entry (#187 and #188 ). Not actually the c++ code, but the cmake files are missing fragments and c++ version requirements for the skia and cairo examples. (as I mentioned in #187 and #188)