xzw 1 year ago
parent
commit
38e7d9014c
1 changed files with 12 additions and 5 deletions
  1. 12 5
      src/custom/viewer/ViewerNew.js

+ 12 - 5
src/custom/viewer/ViewerNew.js

@@ -3257,9 +3257,16 @@ export class Viewer extends ViewerBase{
             
             this.needRender = true
             
-            //let { dataUrl  } = viewerMaster.makeScreenshot( new THREE.Vector2(width,height), null, compressRatio    );
-            let canvas = document.getElementsByTagName('canvas')[0]
-            let dataUrl = canvas.toDataURL()
+            if(info.useRenderTarget){
+                //离屏渲染 有抗锯齿问题、在手机上速度慢
+                var { dataUrl  } = viewerMaster.makeScreenshot( new THREE.Vector2(width,height), null, compressRatio    );
+                
+            }else{
+                //直接渲染 会改变canvas大小
+                let canvas = this.renderArea.getElementsByTagName('canvas')[0] 
+                this.render({  screenshot : true,   width , height,   resize :true  }); //需要resize
+                var dataUrl = canvas.toDataURL('image/jpeg',compressRatio) 
+            }
             
             if(!Potree.settings.isOfficial){
                 Common.downloadFile(dataUrl, 'screenshot.jpg') 
@@ -3271,8 +3278,8 @@ export class Viewer extends ViewerBase{
                 
                 oldStates.viewports.forEach(old=>{//恢复相机
                     var viewport = viewports.find(v=>v.name == old.name);
-                    viewport.left = old.left;
-                    viewport.width = old.width;
+                    viewport.left = old.left; viewport.bottom = old.bottom;
+                    viewport.width = old.width; viewport.height = old.height
                     viewport.view.copy(old.view) 
                     viewport.view.applyToCamera(viewport.camera);