|
Rank: Advanced Member Groups: Member
Joined: 10/4/2016 Posts: 104
|
Hi,
Since I moved to 19.1.81, the webView.Capture() method is failing under specific circumstances.
We have a <canvas /> container that renders a mapboxgl object and in this case, webView.Capture() failed to capture the graphic artifacts inside the mapbox. Instead it get an empty graphic of the programmed backgound color. The other elements on this page show up correctly though.
Oddly enough, if the same mapbox is rendered directly in a html page or even in a iFrame then it works, and the webView.Capture() is able to render the graphic artifacts.
If I fall back to 18.3.23.0 (the last package we had downloaded on version 18), it always works.
I wish I could send you a simple reproducible case but the mapbox we are using is not something I can share as it uses live feed from our operations.
We need to move to a newer version of chromium but loosing that feature will have significant support impact.
I'd really appreciate if you had a suggestion for us to try.
Thank you
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,218
|
Hi,
I wonder if it is possible for you to capture a static HTML snapshot of the page in question, then you can manually edit the HTML and remove sensitive information so that you will have a HTML file that you can send to us to reproduce the issue. We did make one change regarding capture between build 19.1.25 and 19.1.40 that related to scroll offset. In build 19.1.25 if you have page that is scrolled and then do Capture, the capture result will be off because it does not take page scroll offset into consideration. Build 19.1.40 corrected this issue. However it might have missed some corner cases like yours. So if you can manage to send a test file to us we will be very happy to look further.
Thanks!
|
|
Rank: Advanced Member Groups: Member
Joined: 10/4/2016 Posts: 104
|
Would it be possible for me to try out package 19.1.25? I have tried to pull out a static HTML page but there are too many js files included and because the application is angular the resulted static pages are totally unreadable. Also the page needs to make some backend calls to get initialized.
If the issue does not appear in 19.1.25 but in 19.1.40 then at least we would know it comes from a change that was made in between, if not then it may be because of the newer chromium engine itself.
|
|
Rank: Advanced Member Groups: Member
Joined: 10/4/2016 Posts: 104
|
Hi, I think I have a way for you guys to reproduce or at least troubleshoot what may going on here. I am able to reproduce the issue when using this public link from the tabbed browser: Display a simple MapBox GLThen use the Print option. When producing a pdf document, the map does not show up on Windows 7 (32 or 64bits) but it does on Windows 10. I understand Windows 7 should no longer be the preferred OS but I believe it is still supported and definitely lots of airports are still running it. Could you please look into this? And let me know if at least you are able to reproduce the issue on your side or if this could be due to something else with my testing sets. Then (if you do see an issue) let me know if you intend to provide a patch. Thank you for your inputs
|
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,218
|
Hi,
We tested this case and we are able to reproduce this issue. However we will not be able to resolve this issue since the latest Google Chrome browser demonstrates exactly the same problem.
As a general rule, we won't investigate an issue if it also exists in the browser since fixing browser engine issue is not practical for us due to the enormous size and complexity of the browser engine.
I would recommend you to contact the vendor of the library (in your case MapBox GL) and ask them to investigate the issue of not being able to print their map in Google Chrome browser on Windows 7. They maybe able to dig into their own source code and find out what they did that triggers this issue in Google Chrome and find a workaround. Once they get it to work correctly in Google Chrome, you can try it again with EO.WebBrowser.
Thanks!
|
|