Mam płótno z rysunkami webGL, stworzone przez framework Blend4Web.toDataURL() z webgl canvas zwracające przezroczysty obraz tylko w iOS
Próbowałam zapisać obraz za pomocą toDataURL()
:
image= $('canvas')[0].toDataURL();
Wszystkie platformy działa idealnie, z wyjątkiem iOS (iPhone & iPad)
wiem o aspektach WebGL: Canvas toDataURL() returns blank image only in Firefox, preserveDrawingBuffer
jest włączony.
Co więcej, wiem o ograniczeniach w iOS: iOS HTML5 Canvas toDataURL, ale płótno jest małe, nawet obrazy 100 x 500 pikseli są puste (wynosi 0,05 MP, limit to 3 MP).
Używam toDataURL()
do wysyłania informacji graficznych na serwerze.
Nie ustalające problemu, ale przy użyciu 'toBlob' byłoby (jedna trzecia) bardziej wydajne pod względem wymaganej pamięci i przepustowości itp. –
Czy można uwzględnić logikę zapisywania obrazu? – Observer
Zamiast używać 'preserveDrawingBuffer', które iOS może zignorować, czy wypróbowałeś bardziej efektywny sposób sprawdzania wewnątrz pętli renderowania, jeśli wywołano wywołanie do wywołania i wykonałeś to wywołanie stamtąd przed zakończeniem wątku? – Kaiido