区域报表的picture控件
区域报表中放置picture控件,为什么打印的图像跟保存到数据库image字段图像旋转90度,如何设置才能保持一致。您好,
您是说报表打印到纸张之后,将数据库的图片自动旋转了90度?还是说将报表呈现在客户端时,图片旋转了90度?
这边没有重新您说的问题,打印预览均为正常,是否存储到数据库的图片源本身就是旋转90度?
保存前图片:
报表打印效果:
保存图片到数据库:
string FileType = FileUpload1.PostedFile.ContentType;//获取文件的格式
string FileName = FileUpload1.FileName; //文件名称
string FilePath = FileUpload1.PostedFile.FileName; //文件路径
int FileSize = FileUpload1.PostedFile.ContentLength;//获取文件的大小
//保存文件到数据库
//文件大小
int intDoclen = FileUpload1.PostedFile.ContentLength;
//设置缓冲的大小
byte[] Docbuffer = new byte;
//将上传文件的内容保存到缓冲中
Stream objStream;
objStream = FileUpload1.PostedFile.InputStream;
objStream.Read(Docbuffer, 0, intDoclen);
//FileData = FileUpload1.FileBytes;//得到文件数组
Convert.ToBase64String(Docbuffer);
string MNoteNo = TxtNoteNo.Text.Trim();
string MFiletype = FileUpload1.PostedFile.ContentType;//文件类型
//strselect1 = "Insert into Project_Manage_File(NoteNo,FileType,FileName,ProjectFile) values(@NoteNo,@FileType,@FileName,@ProjectFile)";
//执行存储过程
Cmd = new SqlCommand("In_PurchaseApply_File", Sqlcon, Tran);
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.Parameters.Add("@NoteNo", SqlDbType.VarChar, 8);
Cmd.Parameters.Add("@FileType", SqlDbType.VarChar, 500);
Cmd.Parameters.Add("@FileName", SqlDbType.VarChar, 100);
Cmd.Parameters.Add("@ProjectFile", SqlDbType.Image);
Cmd.Parameters.Value = MNoteNo;
Cmd.Parameters.Value = MFiletype;
Cmd.Parameters.Value = FileName;
Cmd.Parameters.Value = Docbuffer;
Cmd.ExecuteNonQuery();
从数据库取出打印报表
SqlStr = "Select NoteFile From where NoteNo='" + NoteNo + "'";
Cmd = new SqlCommand(SqlStr, SqlCon);
Dr=Cmd.ExecuteReader();
if (Dr.Read())
{
byte[] MeansContentObj = (byte[])Dr["NoteFile"];
MemoryStream ms = new MemoryStream(MeansContentObj);
Bitmap bmp = new Bitmap(ms);
this.picture1.Image = bmp;
}
图片大小是否会造成这种情况?
报表控件不会自动旋转图片,而是提供的是什么数据源就是展示什么,所以您需要检查在存储到数据库之前图片是否发生过旋转 数据库导出方向是对的。 您可以直接把图片的资源设置为 本地那张图片来测试。 本地图片设置后就旋转90度。 图片控件放置在细节和报表尾有区别吗?
一样的。 原始图片高度大于宽度就会旋转。
页:
[1]
2