我试图在Adobe Reader Control上覆盖透明图像。所以我可以在图像重叠的同时阅读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;
}
}
到目前为止我的设计师:
答案 0 :(得分:0)
我可以在这里看到您的问题,您正在尝试将图片框对象的颜色设置为透明,这不会以任何方式影响图像。
想象一下,你的照片框中没有装入任何图像,改变背面颜色会产生影响。
要获得所需的效果,您需要对照片进行照片编辑并制作具有透明度的版本(降低Alpha并保存为.PNG)。然后,单击按钮后,需要将原始图像交换为新创建的透明图像。在这种情况下,您可以使用行pictureBox1.Image = Image.FromFile("Path")
。