2014-12-09 84 views
2

我有一個瀏覽器處於縱向模式。我加載使用從當前方向旋轉網頁瀏覽器正在拉伸(縮放)瀏覽器內容Windows手機

this.webBrowserControl.Source = new Uri("http://google.com"); 

的web瀏覽器當內容加載的觀點是這樣的enter image description here

,提供了旋轉按鈕,如果用戶是在肖像模式和用戶按下旋轉按鈕,然後我旋轉使用網頁視圖變換並設置其高度和寬度,以便它可以佔據整個屏幕

pageWidth = 480; 
pageHeight = 800; 
RotateTransform transform = new RotateTransform(); 
transform.Angle = 90; 
this.webbrowser.RenderTransform = transform; 
webbrowser.Width = pageHeight; 
webbrowser.Height = pageWidth; 

web瀏覽器被旋轉,但內容看起來像放大或拉伸,它LO enter image description here OKS利ke這

任何想法如何不放大內容?

回答

1

編輯:

更改縮放比例:

// figure out the ratio you want to reduce by 
string zoom_js = "document.body.style.zoom=\"50%\";"; 

try 
{ 
    this.myBrowser.IsScriptEnabled = true; 
    this.myBrowser.InvokeScript("eval", zoom_js); 
} 
catch(Exception ex) 
{ 
} 

它不是任何縮放。它只是旋轉它然後拉伸(調整大小)容器。

考慮到您的解決方案,如果您不想進行任何拉伸,您必須保持寬高比。

<phone:WebBrowser x:Name="myBrowser" RenderTransformOrigin="0.5,0.5" Height="480" Width="480" Margin="0" Padding="0"> 
     <phone:WebBrowser.RenderTransform> 
      <CompositeTransform Rotation="90"/> 
     </phone:WebBrowser.RenderTransform> 
    </phone:WebBrowser> 
</Border> 

現在不會拉伸,但它也不覆蓋整個屏幕。現在,想象像你一樣伸展容器。結果將是您張貼的圖片。

+0

但是要求是覆蓋整個屏幕。有什麼建議麼?? – nucleons 2014-12-09 13:12:49

+0

@nucleons如果不加入這些工件,您無法調整圖像的大小。您可以通過使用另一種插值方法來減少僞像,但將其作爲SO答案可能太長。你最好的選擇是欺騙'WebBrowser'渲染,如果它處於橫向模式,那麼你可以旋轉它,它會成爲你想要的比例。 – 2014-12-09 13:22:18

+0

因此,無論我需要旋轉PhoneApplicationPage風景?因爲我將瀏覽器保存在彈出窗口中。或者我如何渲染WebBrowser的景觀? – nucleons 2014-12-09 15:34:51