Browse Source

FAQ entry for anti-aliasing artifacts in Adobe Acrobat.

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@1062710 13f79535-47bb-0310-9956-ffa450edef68
pull/21/head
Jeremias Maerki 13 years ago
parent
commit
ae823ce745

+ 40
- 0
src/documentation/content/xdocs/faq.xml View File

@@ -1016,6 +1016,46 @@ Can I control this?</question>
</p>
</answer>
</faq>
<faq id="acrobat-anti-aliasing">
<question>How can I get rid of strange single-pixel lines inside table borders or between table cells in Adobe Acrobat?</question>
<answer>
<p>
Since Apache FOP supports the collapsed border model, every border segment consists
of two separate shapes. This is due to the fact that each side of the border
segment can have a different color. Now, Adobe Acrobat may display thin (1 pixel wide)
lines inside the border segment or sometimes even between to adjacent
colored rectangles making up the background of a block or table cell.
This effect is due to the way Adobe Acrobat does anti-aliasing. Adobe's algorithm
seems to cause these artifacts. Other PDF viewers don't have that problem. Or at least
we haven't had any reports in that direction.
</p>
<p>
First of all, these artifacts do not appear in print since no anti-aliasing is done
by Adobe Acrobat in this case (except maybe if you tell Acrobat to print the page
as a bitmap in which case Adobe fully composes the page itself). So, if the artifacts appear
on screen, it doesn't mean they have to appear in print, too.
</p>
<p>
To get rid of the artifacts, you can call up the "Preferences" dialog of
Adobe Acrobat and select the tab "Page display". Enabling "Enhance thin lines"
may help in some situations. Otherwise, you can disable "Smooth line art".
You may have to disable "Use 2D graphics acceleration", too, so you can disable
"Smooth line art" in the first place.
</p>
<p>
Here an example of how the effect can look like (left: anti-aliasing on, right: anti-aliasing off):
</p>
<figure src="images/acrobat-anti-aliasing-artifacts.png" alt="Left: anti-aliasing on, Right: off"/>
<p>
Unfortunately, it is not possible to control the above settings from within the PDF file.
The user has to change these settings himself. Improving FOP to avoid this kind of problem
would be possible although rather hard to achieve because we'd need to add a considerable
amount of code to combine the various line segments. Something like that has been tried already
years ago showing that this is a tricky task. Also, the improvement may not justify the amount
of effort required.
</p>
</answer>
</faq>
</part>
<part id="part-iex">
<title>IEx specific stuff</title>

BIN
src/documentation/resources/images/acrobat-anti-aliasing-artifacts.png View File


+ 57
- 0
src/documentation/resources/images/anti-aliasing-artifacts-demo.fo View File

@@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="page" page-height="3.1cm" page-width="6cm" margin="2mm">
<fo:region-body/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="page">
<fo:flow flow-name="xsl-region-body">
<fo:table table-layout="fixed" inline-progression-dimension="100%">
<fo:table-column column-width="50%"/>
<fo:table-column column-width="50%"/>
<fo:table-body>
<fo:table-row>
<fo:table-cell border="solid 2mm darkblue">
<fo:block>Cell 1/1</fo:block>
</fo:table-cell>
<fo:table-cell border="solid 2mm darkblue">
<fo:block>Cell 2/1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row>
<fo:table-cell border="solid 2mm darkblue">
<fo:block>Cell 1/2</fo:block>
</fo:table-cell>
<fo:table-cell border="solid 2mm darkblue">
<fo:block>Cell 2/2</fo:block>
</fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>

<fo:table table-layout="fixed" inline-progression-dimension="100%" space-before="2mm">
<fo:table-column column-width="50%"/>
<fo:table-column column-width="50%"/>
<fo:table-body color="white">
<fo:table-row>
<fo:table-cell background-color="darkgreen">
<fo:block>Cell 1/1</fo:block>
</fo:table-cell>
<fo:table-cell background-color="darkgreen">
<fo:block>Cell 2/1</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row>
<fo:table-cell background-color="darkgreen">
<fo:block>Cell 1/2</fo:block>
</fo:table-cell>
<fo:table-cell background-color="darkgreen">
<fo:block>Cell 2/2</fo:block>
</fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>
</fo:flow>
</fo:page-sequence>
</fo:root>

Loading…
Cancel
Save