我正在开发一个注册学生的应用程序,然后打印出身份证。
在我的主窗体上,我有一个图像图片框控件,用户可以在其中加载学生的图像。此图像框通过以下代码将图像存储在硬盘中:
string result;
DialogResult res = ofdDialog1.ShowDialog();
if (res == DialogResult.OK)
{
result = ofdDialog1.FileName;
pbImage.ImageLocation = result;
pbImage.SizeMode = PictureBoxSizeMode.StretchImage;
pbImage.Load();
System.Drawing.Bitmap img = new System.Drawing.Bitmap(pbImage.Image, pbImage.Height, pbImage.Width);
img.Save(Path.GetFullPath("Images/1.jpg"));
}
要打印i-card,我使用网络浏览器控件首先向用户预览。我有一个HTML代码,我想用他们的照片和一些标识显示学生的详细信息。其他一切工作正常,但学生图像没有显示在Web浏览器控件中。我使用以下代码:
contents = contents.Replace("[StudentImage]",Path.GetFullPath("Images/1.jpg"));
contents变量包含HTML,
以下是应该显示学生形象的html部分:
<div style=""float:right; width:100px;height:95px;"">
<img src=""[StudentImage]"" style=""width:85px;height:85px;"" />
</div>
除了这个以外,当所有其他图像完全显示时,我做错了什么?
答案 0 :(得分:0)
您可以使用此方法将HTML内容提交到网络浏览器
object
使用线
private void DisplayHtml(string html)
{
webBrowser1.Navigate("about:blank");
if (webBrowser1.Document != null)
{
webBrowser1.Document.Write(string.Empty);
}
webBrowser1.DocumentText = html;
}
答案 1 :(得分:0)
您可能需要为图像使用绝对路径。我不确定WebBrowser&#34;当前目录&#34;会的。
答案 2 :(得分:0)
我找到了解决方案,而不是
img.Save(Path.GetFullPath("Images/1.jpg"));`
我用过
img.Save(Path.GetFullPath("Images/1.jpg"), System.Drawing.Imaging.ImageFormat.Jpeg);
图像现在正确显示。