2016-08-01 103 views
0

我試圖通過Adobe Reader控件覆蓋透明圖像。所以我可以在圖像重疊時閱讀PDF。通過Adobe PDF Reader控件覆蓋透明圖像

目前我有閱讀器控制和一個圖像盒,我有一個疊加按鈕,當我點擊它時應該使圖像透明,這樣我就可以讀取文本「通過」它,至少在它透明的地方圖片。

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 


    private void openToolStripMenuItem_Click(object sender, EventArgs e) 
    { 
     OpenFileDialog open = new OpenFileDialog(); 
     open.Title = "Open"; 
     open.Filter = "PDF|*.pdf"; 

     try 
     { 
      if (open.ShowDialog() == System.Windows.Forms.DialogResult.OK) 
      { 
       axAcroPDF1.LoadFile(open.FileName); 
      } 
     } 
     catch (ArgumentException ex) 
     { 
      MessageBox.Show(ex.Message.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); 
     } 
    } 

    private void exitToolStripMenuItem_Click(object sender, EventArgs e) 
    { 
     Application.Exit(); 
    } 

    private void overlayToolStripMenuItem_Click(object sender, EventArgs e) 
    { 
     pictureBox1.BackColor = Color.Transparent; 

     pictureBox1.Parent = axAcroPDF1; 



    } 
} 

我至今設計師

My designer so far.

+0

你想讓白色區域在按鈕點擊時變透明嗎? – Harvey

+0

是的,圖片框背景應該變得透明,所以我可以透過它並且圖片應該被覆蓋。我可以用Photoshop製作一幅我如何拍攝最終圖片的圖片 –

+0

我希望我想疊加的圖片看起來像水印一樣,只要您閱讀PDF文件就會不斷顯示 –

回答

0

我可以在這裏看到您的問題,您正在嘗試設置圖片框對象爲透明的顏色,這不會影響到圖像中任何方式。

想象一下,您沒有將圖像加載到您的圖片框中,在此更改背面顏色將會產生影響。

爲了達到您想要的效果,您需要照片編輯您的照片並製作具有透明度的版本(降低Alpha和保存爲.PNG)。然後,一旦你點擊你的按鈕,你需要將原始圖像交換到新創建的透明圖像。在這種情況下,您可以使用行pictureBox1.Image = Image.FromFile("Path")

+0

好的,我會盡力去做,但是當我將圖片框上的背景顏色更改爲透明並移除圖像,圖片框顯示爲灰白色,而不是變爲透明。並思考爲什麼發生這種情況? –

+0

這可能意味着你將不得不使用picturebox的BackgroundImage屬性。這將覆蓋默認情況下VS放在picturebox上的任何背景 – Harvey

+0

仍然沒有接近我想要實現的內容。但我認爲我確實有一個解決方法,它有更多的工作,但應該做的伎倆。如果我製作兩種形式,使第二種形式透明並將其放在第一種形式上。我只需要將Form2中的控件的功能傳輸到Form1。 –