Scribus Forums

Development => Features => Topic started by: Pexim SLani on February 13, 2026, 10:36:25 PM

Title: Native Text Hyperlink Support in Scribus
Post by: Pexim SLani on February 13, 2026, 10:36:25 PM
Integrating Native Hyperlink Support into Scribus Text Engine
(Right-Click → Insert Hyperlink)


1. Problem Statement

Currently in Scribus, hyperlinks in PDF documents are implemented as separate PDF Annotation objects that are manually positioned over text frames.

This creates several workflow limitations:


In professional DTP workflows (books, magazines, technical documentation, hybrid print/digital PDFs), hyperlink support is expected to be integrated into the text engine, similar to:


This proposal outlines a possible architectural approach to implement native hyperlink support in Scribus.


2. Architectural Overview
Current Model (Simplified)

Scribus currently separates:


Hyperlinks exist only at the annotation level, not within text attributes.


3. Proposed Architectural Enhancement
Goal:

Add hyperlink as a character-level text attribute, similar to:



4. Core Implementation Layers
4.1 Text Engine Layer

Add a new character attribute:

struct HyperlinkAttribute {
    enum LinkType {
        ExternalURI,
        InternalPage,
        NamedDestination,
        Email
    };

    LinkType type;
    QString target;
};


This attribute should:


4.2 UI Layer
Context Menu

When text is selected:


If selection already contains hyperlink:



4.3 Hyperlink Dialog

Minimal dialog structure:

Fields:

Link Type:

External URL

Page

Named Destination

Email

Target (dynamic input depending on type)

Optional:

Checkbox: Apply "Hyperlink" character style



4.4 Styling System Integration

Hyperlinks should:



4.5 PDF Export Layer

During PDF export:

For each text frame:


QuotePseudo-code:

for each textFrame in document:
    for each textRun in textFrame:
        if textRun.hasHyperlink():
            rect = layoutEngine.calculateBoundingBox(textRun)
            pdfExporter.createLinkAnnotation(rect, textRun.hyperlinkTarget)

Important:



5. Backward Compatibility



6. Optional Phase 2 Enhancements




Benefits



Conclusion

Native hyperlink support inside the text engine would significantly modernize Scribus' PDF workflow.

Even a minimal implementation (character attribute + export mapping) would dramatically improve usability and reduce manual annotation management.

This feature would elevate Scribus from "print-focused DTP with annotation workaround" to a fully capable hybrid publishing tool.
Title: Re: Native Text Hyperlink Support in Scribus
Post by: a.l.e on February 14, 2026, 05:11:34 PM
Would you mind, asking your AI to convert that pseudo code in a patch we can apply to Scribus?
Title: Re: Native Text Hyperlink Support in Scribus
Post by: Tibolu on March 25, 2026, 07:26:49 PM
+1, but please don't be rude and speak human ;)
Title: Re: Native Text Hyperlink Support in Scribus
Post by: Flaxx on April 23, 2026, 01:50:27 PM
I like to step in here as I just wanted to make a similar proposal - actually not as exhaustive as the OP did.

Our printer wants PDF/X-4 formats + 3mm. We compress embedded bitmaps (max. 300dpi) lossless via ZIP. This works fine obviously. The same brochure, now in pure A4 and max. jpg-compression is used for direct downloads. Unfortunately even the external link (web) function doesn't work in this configuration and we need to use PDF 1.6 in order to have resulting working links being only bound via the frame to a keyword - despite the other mentioned disadvantages.

An internal link-tool would be great.
Title: Re: Native Text Hyperlink Support in Scribus
Post by: Flaxx on April 24, 2026, 03:46:22 PM
Alright, meanwhile I tumbled over the specs of PDF/X being specified for printing and filtering all the stuff that could crash or disturb this process. Links that are not as such readable are of course filtered in this case.

However, for all the screen readers, an embedded link function would be great.