2016-08-01 14 views
0

Adob​​e Reader Control上に透明イメージをオーバーレイしようとしています。画像が重なっている間にPDFを読むことができます。アドビPDFリーダーコントロール上のオーバーレイ透明イメージ

現在、私はリーダーコントロールとイメージボックスを持っています。クリックするとイメージが透明になるので、テキストを "読む"ことができます。画像。

これまで
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の写真をどのように私はatleast画像最終的な外観 –

+0

私は透かしのように表示される画像をしたい、あなたはPDFを読むと常にaslongを表示 –

答えて

0

私はここにあなたの問題を見ることができ、あなたが透明にピクチャボックスオブジェクトの色を設定しようとしている、これは画像には影響しませんいずれにしても。

イメージボックスにイメージがロードされていないとしたら、ここでバックカラーを変更すると違いが生じます。

目的の効果を達成するには、画像を写真編集し、透過性のあるバージョンを作成する必要があります(アルファを下げて.PNGとして保存する)。その後、ボタンをクリックすると、元のイメージを新しく作成した透明イメージに交換する必要があります。この場合、pictureBox1.Image = Image.FromFile("Path")という行を使用することができます。

+0

よ、私はそれをやろうとするが、私はピクチャボックスの背景色を透明に変更してイメージを削除すると、ピクチャボックスは透明になる代わりに灰白色を表示します。そして、なぜこれが起こるかについての考え? –

+0

これは、ピクチャボックスの 'BackgroundImage'プロパティを使わなければならないことを意味します。これは、VSがデフォルトでピクチャボックスに置く背景をオーバーライドします。 – Harvey

+0

私は達成しようとしているものに近いものはありません。しかし、私は回避策があると思いますが、それはより多くの仕事が必要ですが、そのトリックを行うべきです。 2つのフォームを作成する場合は、2番目のフォームを透明にして1番目のフォームに配置します。 Form2のコントロールからForm1に機能を移すだけです。 –

関連する問題