[X] I agree to follow the Code of Conduct that this project adheres to.
[X] I have searched the issue tracker for a feature request that matches the one I want to file, without success.
Is your feature request related to a problem? Please describe.
Labels on lines usually want to "hide" the line where it passes under the label, in order to prevent visual confusion reading the text. For example:
This is possible currently only by setting an opaque background color that is the same as the background behind it. This causes two problems:
When the background color varies, custom colors must be picked for different labels. This makes it difficult to have a single default style for creating new labeled connections.
Further, if the style changes - if new background colors are desired - then every affected label must be adjusted.
Given a diagram where the labels are NOT over a background, and exporting as a transparent PNG, the labels have non-transparent backgrounds. This prevents the diagram from being used cleanly over a variety of non-white backgrounds.
Describe the solution you'd like
Labels on lines should have a mechanism to "erase" the line underneath them without drawing a background.
Suggestion: The Text style gains an additional checkbox named like "Knockout Line" or "Clear Background". This would use a compositing mode that sets the alpha on the associated line only in the background region. This would likely require drawing each line first to an offscreen buffer and then compositing the text with it, before compositing that buffer to the final result. As this checkbox would not be pertinent for text that is not a label on a line, the checkbox could either be shown only when label text is selected, or perhaps disabled unless label text is selected.
Describe alternatives you've considered
Instead of a checkbox that causes a complete knockout, provide a percent input with a label like "Background Knockout" which sets the alpha value on the line to a normalized 0-255 value. This would permit the sometimes-desirable effect of a semi-transparent line continuing behind the label:
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. See the FAQ for more information.
Is your feature request related to a problem? Please describe. Labels on lines usually want to "hide" the line where it passes under the label, in order to prevent visual confusion reading the text. For example:
This is possible currently only by setting an opaque background color that is the same as the background behind it. This causes two problems:
Further, if the style changes - if new background colors are desired - then every affected label must be adjusted.
Describe the solution you'd like Labels on lines should have a mechanism to "erase" the line underneath them without drawing a background.
Suggestion: The Text style gains an additional checkbox named like "Knockout Line" or "Clear Background". This would use a compositing mode that sets the alpha on the associated line only in the background region. This would likely require drawing each line first to an offscreen buffer and then compositing the text with it, before compositing that buffer to the final result. As this checkbox would not be pertinent for text that is not a label on a line, the checkbox could either be shown only when label text is selected, or perhaps disabled unless label text is selected.
Describe alternatives you've considered Instead of a checkbox that causes a complete knockout, provide a percent input with a label like "Background Knockout" which sets the alpha value on the line to a normalized 0-255 value. This would permit the sometimes-desirable effect of a semi-transparent line continuing behind the label: