lilypond-auto
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Lilypond-auto] Issue 2658 in lilypond: wrong stem rendering (incons


From: lilypond
Subject: Re: [Lilypond-auto] Issue 2658 in lilypond: wrong stem rendering (inconsistent thickness)
Date: Sat, 07 Dec 2013 12:03:20 +0000

Updates:
        Status: Fixed
        Labels: -Patch-countdown Fixed_2_19_0

Comment #109 on issue 2658 by address@hidden: wrong stem rendering (inconsistent thickness)
http://code.google.com/p/lilypond/issues/detail?id=2658

After checking for the pertinent comments and looking at the date of the countdown, pushed to staging as
commit d65e303bf12021c240298d32beae5e44a2d386ff
Author: David Kastrup <address@hidden>
Date:   Tue Apr 23 17:02:47 2013 +0200

    Add Changes entry for -dstrokeadjust and "Usage" entry.

commit 967416b80210725e3243071ff3fb6b867ed255f2
Author: David Kastrup <address@hidden>
Date:   Tue Apr 23 16:49:19 2013 +0200

Implement option -dstrokeadjust in order to get stroked stems and strokeadjustment

    This makes the stroke drawing primitives for long rounded rectangles
    dependent on the setting of currentstrokeadjust.  As a result,
    low-resolution bitmap devices (up to 150 dpi or so) will get stroke
    adjustment applied automatically.  The option needs to get invoked
    explicitly to get stroke adjustment for PDF, giving a large file size
    increase and markedly better previews on a number of PDF previewers.

commit 6bf9a5a3dbcabff297d5bcdb3cf1dffd0885cbbc
Author: David Kastrup <address@hidden>
Date:   Thu Apr 11 17:27:14 2013 +0200

    Issue 2658: Be serious about setstrokeadjust in PostScript primitives

    This particularly concerns draw_round_box which is used for drawing
    lines with a rounded ending.  If the width/height ratio or its inverse
    exceeds 2, the box is considered to be a "line".  In this case, first
    a clipping path is established representing the whole shape and
    extended widely in the area of the "main stroke".  The reason for this
    extension is to avoid both clip area and stroke competing for the
    outline.  While this is not a problem for the PostScript or PDF
    rendering model, the Cairo bitmap rendering library employs
    Porter-Duff compositing for antialiasing amounting to "cheap man's
    antialiasing" not requiring a higher rendering resolution but relying
    on edges affecting a single pixel to be independent.

    Porter-Duff requires us not to have multiple parallel strokes or clip
    areas if we want to avoid wrong sub-pixel grayness levels (and
    consequently lines appearing too thick or thin) in Cairo-based
    previewers like Evince.

    After establishing the clip area, a stroke is drawn through.  This
    stroke may (at the PostScript device's discretion) employ
    strokeadjustment further correcting the apparent thickness.
    Ghostscript employs stroke adjustment when rendering at a resolution
    below 150dpi.  Stroke adjustment does not pass into PDF, however, when
    ps2pdf runs.

    Ghostscript performs sub-pixel rendering for antialiasing which
    reduces the amount of discontinuities possibly caused by joining
    stroke-adjusted shapes with full shapes.

    It turns out that sharper contours can be achieved by using strokepath
    and fill instead of a plain stroke.  However, the resulting crisper
    stems tend to combine worse with beams, so this approach has not been
    pursued.

commit 7d236e22cf4737ddea1d888dc68a50ae26a64043
Author: David Kastrup <address@hidden>
Date:   Thu Apr 18 21:39:50 2013 +0200

    Don't meddle with Ghostscript's choice of currentstrokeadjust

    It should be appropriate for device and resolution by default.

commit 5eb6a4c109b5cff50fb2ac0a267865586dfc3943
Author: David Kastrup <address@hidden>
Date:   Thu Apr 11 17:22:43 2013 +0200

    Make stroke_and_fill? PostScript operator that fills conditionally

commit 2ede344c657093401c088232860f19367368b04f
Author: David Kastrup <address@hidden>
Date:   Thu Apr 11 12:01:40 2013 +0200

    Make music-drawing-routines.ps require PostScript 2.0

    There is no point having conditional code around setstrokeadjust and
    its ilk any more.


--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings



reply via email to

[Prev in Thread] Current Thread [Next in Thread]