以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]prt.RenderImage报错:内存不足或内存溢出如何处理  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=100399)

--  作者:黄训良
--  发布时间:2017/5/10 21:57:00
--  [求助]prt.RenderImage报错:内存不足或内存溢出如何处理
prt.RenderImage报错:内存不足或内存溢出如何处理

图片点击可在新窗口打开查看此主题相关图片如下:prt.renderimage 错误02.jpg
图片点击可在新窗口打开查看

代码如下:
Dim doc As New PrintDoc \'定义一个报表对象
For i As Integer = 1 To 150
    Dim rm As New prt.RenderImage \'定义一个图片对象
    rm.Width = "100%Parent" \'设置尺寸为容器(页面)尺寸
    rm.Image = GetImage( ProjectPath & "Pic_Test.JPG") \'设置图片
    rm.Style.ImageAlign.KeepAspectRatio = True  \'不保持比例
    doc.Body.Children.Add(rm)
Next
Doc.SavePDF(ProjectPath & "test.pdf")
例子:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目5.zip



--  作者:有点色
--  发布时间:2017/5/11 1:44:00
--  
 测试了一下,这个没办法,你要整体生成,肯定需要足够多的内存
--  作者:黄训良
--  发布时间:2017/5/11 8:10:00
--  
75M的图片,我的内存是4G。
--  作者:有点色
--  发布时间:2017/5/11 8:37:00
--  
打开图片需要的内存,并不是图片存储的大小,所以内存不够用。
--  作者:有点色
--  发布时间:2017/5/11 8:43:00
--  

 计算内存的方式

 

https://www.baidu.com/baidu?wd=%E5%9B%BE%E7%89%87%E5%86%85%E5%AD%98+%E8%AE%A1%E7%AE%97&tn=monline_4_dg&ie=utf-8

 

 你现在没有很好的处理方式了。内存是不够的,分开生成吧。


--  作者:黄训良
--  发布时间:2017/5/11 8:45:00
--  
换了台8G内存的电脑测试,不报错,生成的是空文件。
并且出现错误的位置是在Doc.SavePDF(ProjectPath & "test.pdf")
[此贴子已经被作者于2017/5/11 8:46:52编辑过]

--  作者:有点色
--  发布时间:2017/5/11 8:55:00
--  

  没办法的,你换一种方式吧,直接插入图片到pdf去

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=70686&skin=0

 

下载信息  [文件大小:621.0 KB  下载次数:20]
图片点击可在新窗口打开查看点击浏览该文件:itextsharp 中文帮助文档.rar