Summary: | Pen is not being transformed by cm operator | ||
---|---|---|---|
Product: | poppler | Reporter: | Carl Worth <cworth> |
Component: | cairo backend | Assignee: | Jeff Muizelaar <jmuizelaar> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | high | CC: | nshmyrev |
Version: | unspecified | ||
Hardware: | x86 (IA32) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
Test case showing buggy rendering
use cairo's affine transformation support instead of ignoring it new patch that fixes dashing problems |
Description
Carl Worth
2006-05-17 08:12:00 UTC
Created attachment 5650 [details] Test case showing buggy rendering Here's a PDF file that demonstrates the bug. Acroread appears to render this file as I expect, but poppler renders the top two strokes with a pen that is too wide, (apparently unaffected by the transformation matrix). The cairo code that generated this image can be found here: http://gitweb.cairographics.org/?p=cairo;a=blob;h=HEAD:test/line-width-scale.c which also shows how to get the desired result with cairo, (which is simply to set the transform before calling cairo_set_line_width). -Carl Created attachment 5651 [details] [review] use cairo's affine transformation support instead of ignoring it rough patch that fixes this problem. I'll clean it up when I get the chance. The patch solved my original problem, but it may have introduced another. See what I describe in bug #7014 here: https://bugs.freedesktop.org/show_bug.cgi?id=7014 -Carl Created attachment 5751 [details] [review] new patch that fixes dashing problems Fixed in cvs. This patch broke selection with zoom not equal to 100%, although I failed to find the reason. Can you please test it once again? Does adding: out->setDefaultCTM(state->getCTM()); below: out->startPage (0, state); on line 3315 of TextOutputDev.cc help? Yes, it does. That's great, please, commit the change. Commited. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.