Apache OpenOffice (AOO) Bugzilla – Full Text Issue Listing |
Summary: | transparent objects needs too much memory on high-res printing | ||||||
---|---|---|---|---|---|---|---|
Product: | gsl | Reporter: | pmladek <pmladek> | ||||
Component: | code | Assignee: | AOO issues mailing list <issues> | ||||
Status: | ACCEPTED --- | QA Contact: | |||||
Severity: | Trivial | ||||||
Priority: | P3 | CC: | issues, kamataki, masaya.k | ||||
Version: | OOo 1.1.2 | ||||||
Target Milestone: | AOO PleaseHelp | ||||||
Hardware: | PC | ||||||
OS: | All | ||||||
Issue Type: | ENHANCEMENT | Latest Confirmation in: | --- | ||||
Developer Difficulty: | --- | ||||||
Attachments: |
|
Description
pmladek
2004-08-19 16:33:50 UTC
Created attachment 17236 [details]
More that 1GB of memory was needed to print this document.
cp->ka: I think we do split the image in stripes, isn't it ? please give some details on that. I'd like to hand this task over to you, Thorsten. The crucial point here is twofold: - first, that OOo's print engine prepares a whole page in memory (generating a GDIMetaFile for it). - and second, that, although some basic optimizations are there, OOo cannot currently optimize the case of a complex figure with a transparent gradient over plain background. Thus, OOo generates banded bitmaps for the area affected by transparency, and puts all those small band bitmaps into one metafile in memory. One might argue that a plain rectangle needn't be handled as a complex figure (aka metafile), but this is somewhat deeply entrenced in svx's XOutDev (apart from being a nice generic solution, except for the trouble it causes here). To conclude, the way it works today is more or less 'by design', i.e. a conscious tradeoff between speed, application responsiveness, and memory consumption. Because of that, this is clearly a feature request and not a defect. BTW, OOo _does_ optimize transparent printing of bitmaps, thus, replacing the rectangle with a gradient bitmap should actually perform much better (as long as there's nothing _behind_ that object and the white page). Reset to default bug assignee. |