Wasserzeichen Bild

:information_source: Zusammenfassung Fügt automatisch Wasserzeichen zu hochgeladenen Benutzerbildern hinzu
:hammer_and_wrench: Repository GitHub - Arkshine/discourse-watermark-image · GitHub
:question: Installationsanleitung So installieren Sie ein Theme oder eine Theme-Komponente
:open_book: Neu bei Discourse-Themes? Anfängerleitfaden zur Verwendung von Discourse-Themes

Dieses Theme-Komponente installieren

Beschreibung

Diese Theme-Komponente fügt automatisch Wasserzeichen zu von Benutzern hochgeladenen Bildern hinzu. Sie können entweder ein Bild oder einen QR-Code als Wasserzeichen verwenden, mit umfangreichen Anpassungsoptionen für Position, Erscheinungsbild und Verteilungsmuster.

Die Komponente bietet eine granulare Steuerung durch Kategorien- und Benutzergruppen-Einstellungen, sodass Sie das Wasserzeichenverhalten an die Bedürfnisse Ihrer Community anpassen können.

Bitte lesen Sie den Abschnitt Wichtige Hinweise vor der Implementierung.

Funktionen

  • Hochleistungsverarbeitung mit WebAssembly und Web Workers
  • Umfassende Unterstützung für Bildformate (PNG, JPEG, BMP, ICO, TIFF, WEBP)
  • Dynamische Generierung von QR-Code-Wasserzeichen
  • Flexible Größenoptionen (relativ oder absolut)
  • Vielseitiges Positionierungssystem
  • Erweiterte Anpassungsmöglichkeiten für das Erscheinungsbild (Deckkraft, Rotation, Skalierung, Rand, usw.)
  • Verschiedene Mischmodi
  • Optionen für Verteilungsmuster (einzelnes, Gitter, diagonal, zufällig)
    | | | |
    | - | - | - |
    | Einstellungen für Kategorien und Benutzergruppen |
    | Live-Vorschau im Einstellungsbereich |

Einstellungen

Einstellung Beschreibung
image Das als Wasserzeichen zu verwendende Bild.
Unterstützte Formate: PNG, JPEG, BMP, ICO, TIFF, WEBP.
Standard: ""
size_mode Wie die Größe des Wasserzeichens berechnet wird:
- relative: Die Größe ist relativ zur Breite des Zielbildes.
- absolute: Wird in seiner ursprünglichen Größe angewendet.
Standard: "relative"
relative_width Die Breite des Wasserzeichens relativ zur Breite des Zielbildes (in %).
Gilt nur, wenn der Wasserzeichengrößenmodus auf relative eingestellt ist.
Bereich: 1-100
Standard: 10
absolute_scale Skalierungsfaktor für die ursprüngliche Wasserzeichengröße (nur im absoluten Modus verwendet). Minimum: 0.01
Standard: 1
max_size Maximale Größe als Prozentsatz der Bildabmessungen. Bereich: 1-100
Standard: 50
position Position des Wasserzeichens: top-left, top-center, top-right, center-left, center, center-right, bottom-left, bottom-center, bottom-right
Standard: "bottom-right"
margin_x Horizontaler Rand vom Rand (in % des Zielbildes)
Standard: 0
margin_y Vertikaler Rand vom Rand (in % des Zielbildes)
Standard: 0
opacity Deckkraft des Wasserzeichens. Bereich: 1-100
Standard: 100
rotate Rotationswinkel.
Bereich: -360 bis 360 Grad
Standard: 0
blend_mode Wie das Wasserzeichen mit dem Bild gemischt wird: normal, overlay, over, atop, xor, plus, multiply, burn, difference, soft_light, screen, hard_light, dodge, exclusion, lighten, darken.
Standard: "normal"
pattern Wiederholungsmuster des Wasserzeichens: single, grid, diagonal, random
Standard: "single"
pattern_allow_partial Teilweise Wasserzeichen an den Bildrändern zulassen
Standard: true
pattern_max_count Maximale Anzahl der Wasserzeichenwiederholungen (0 für unendlich)
Standard: 50
pattern_spacing Abstand zwischen wiederholten Wasserzeichen (in % des Zielbildes)
Standard: 15
qrcode_enabled QR-Code-Wasserzeichen aktivieren
Standard: false
qrcode_text Im QR-Code zu kodierender Text. Unterstützt Platzhalter: {homepage}, {username}, {topic_url}
Standard: ""
qrcode_color Farbe des QR-Codes (Hex oder CSS-Variable)
Standard: "var(--primary)"
qrcode_background_color Hintergrundfarbe des QR-Codes (Hex oder CSS-Variable)
Standard: "var(--secondary)"
qrcode_quiet_zone Breite des weißen Randes um den QR-Code (0-10 Module)
Standard: 2
qrcode_error_correction Fehlerkorrekturstufe: Low (~7%), Medium (~15%), Quarter (~25%), High (~30%)
Weitere Informationen zu Fehlerkorrekturstufen finden Sie hier.
Standard: "Medium"
categories Kategorien, in denen das Wasserzeichen angewendet werden soll.
Standard: ""
groups Gruppen, auf die das Wasserzeichen angewendet werden soll.
Standard: "0"
skip_small_images Wasserzeichen überspringen, wenn das Bild unter min_image_dimensions liegt.
Standard: false
min_image_dimensions Erforderliche Mindestabmessungen (Breite x Höhe)
Standard: "200x200"
allow_non_supported_uploads Bilduploads auch dann zulassen, wenn das Format nicht unterstützt wird
Standard: false

Wasserzeichentypen

Bild

Die Komponente unterstützt mehrere Bildformate: PNG, JPEG, BMP, ICO, TIFF und WEBP.
Weitere wichtige Informationen zu Einschränkungen der Formatunterstützung finden Sie im FAQ-Abschnitt.

QR-Code

Generieren Sie dynamische QR-Codes mit anpassbarem Inhalt unter Verwendung dieser Variablen:

  • {homepage} - Die URL der Homepage
  • {username} - Der Benutzername des Benutzers
  • {topic_url} - Die URL des Themas

Wichtig: Beim Stylen von QR-Code-Wasserzeichen sollten Sie den Kontrast und die Größe berücksichtigen. Schlechte Kontrastverhältnisse oder übermäßiges Styling können QR-Codes unlesbar machen. Testen Sie Ihre QR-Code-Wasserzeichen immer mit Scan-Apps.

Echtzeit-Vorschau

Der Einstellungsbereich verfügt über eine Echtzeit-Vorschau-Funktion, mit der Sie sofort sehen können, wie Ihre Wasserzeichenkonfiguration ein Beispielbild beeinflusst.
Das Vorschaufenster bietet mehrere interaktive Funktionen:

  • Vergrößerbares und verschiebbares Vorschaufenster
  • Option zum Laden eines zufälligen Beispielbildes
  • Unterstützung für das Hochladen eigener Testbilder von Ihrem Gerät

Auf dem Desktop wird es automatisch geöffnet. Sie können es auch über die Schaltfläche am unteren Rand der Seite öffnen:

Weitere Bilder



:warning: Wichtige Hinweise

  • Originalbilder werden nicht gespeichert
    Wasserzeichen werden vor dem Server-Upload angewendet, und Originalbilder werden nicht beibehalten. Testen Sie Ihre Wasserzeicheneinstellungen gründlich, bevor Sie sie in der Produktion einsetzen.

  • Wenn Sie im Administrationsbereich testen, achten Sie darauf, Ihre Einstellungen nicht sofort zu validieren. Es wird empfohlen, zum Sicherheit eine Gruppe oder Kategorie zu erstellen.

FAQ

Warum sind Bildformate begrenzt?

Während Discourse alle Uploads in JPEG konvertiert, erfolgt diese TC-Wasserzeichenanwendung vor dem Upload im ursprünglichen Format unter Verwendung spezifischer Bildverarbeitungs-Bibliotheken. Eine Wasserzeichenanwendung nach dem Upload ist zwar möglich, würde jedoch mehrere Upload-/Download-Zyklen erfordern und die Composer-Erfahrung beeinträchtigen. Ich untersuche weiterhin Verbesserungen für diesen Arbeitsablauf.

Warum wird Textwasserzeichen nicht unterstützt?

Textwasserzeichen würden umfangreiche Konfigurationsoptionen (Schriftartauswahl, Styling, usw.) erfordern, die ohne eine dedizierte Schnittstelle schwierig effektiv umzusetzen wären. Bildwasserzeichen bieten mehr Flexibilität und können mit vorhandenen Gestaltungswerkzeugen erstellt werden.

Roadmap

Zukünftige Entwicklungspläne könnten Folgendes umfassen:

  • Mehrere Wasserzeichenprofile [1]
  • Beibehaltung von Originalbildern [2]
  • Wasserzeichenanwendung nach dem Upload

Credits

Diese Theme-Komponente wird unterstützt durch:


  1. Die Upload-Eingabe wird teilweise mit dem Objekt-Einstellungstyp unterstützt – dies kann derzeit in einer TC nicht durchgeführt werden. ↩︎

  2. Erfordert möglicherweise die Entwicklung eines Plugins. ↩︎

24 „Gefällt mir“

Dies ist die erste Version, und ich erwarte fehlende Funktionen. Ich freue mich auf jedes Feedback! :+1:

7 „Gefällt mir“

Danke für die Komponente. Verarbeitet diese Komponente Bilder? Komprimiert diese Komponente Bilder besser als das Original?

5 „Gefällt mir“

Die Komponente führt keine Modifikationen oder Komprimierungen durch, abgesehen vom Anwenden des Wasserzeichens.

Discourse verarbeitet das Bild bereits vorab (mithilfe der squoosh-Bibliothek) → das Wasserzeichen wird angewendet → Das Bild wird auf den Server hochgeladen. So würde es funktionieren.

6 „Gefällt mir“


Wenn Sie einen Beitrag zum ersten Mal öffnen und bearbeiten, können Sie kein Wasserzeichen darauf setzen. Sie müssen ihn veröffentlichen und dann auf „Beitrag bearbeiten“ klicken und ein Bild hochladen, um ein Wasserzeichen darauf zu setzen.
Das verwendete Thema ist FKB Pro - Social theme - #375 by MihirR

2 „Gefällt mir“

Sie meinen, wenn Sie einen vorhandenen Beitrag zum ersten Mal öffnen/bearbeiten und ein Bild hochladen, gibt es keine Wasserzeichen. Ist das richtig? Können Sie es jedes Mal reproduzieren? Sehen Sie Fehler in der Browserkonsole?

Wenn ich Sie richtig verstehe, erwarten Sie, dass ein vorhandenes, hochgeladenes Bild (vor dieser TC-Installation) ein Wasserzeichen hat, wenn Sie den Beitrag bearbeiten (oder eine Möglichkeit haben, das Bild manuell mit einem Wasserzeichen zu versehen). So funktioniert es nicht. Sie müssen das Bild hochladen, um ein Wasserzeichen anzuwenden.

Eine Schaltfläche zum manuellen Wasserzeichen für ein ausgewähltes Bild könnte eine Funktion sein. Würde das für Sie funktionieren?

Es sind die Bilder, die nach dem Erstellen eines neuen Beitrags hochgeladen werden und kein Wasserzeichen haben. Es sind die Bilder, die nach dem Aufrufen des Beitrags nach dem Veröffentlichen und Klicken auf Bearbeiten hochgeladen werden, die das Wasserzeichen haben.

Für den Beitragsbutton verwende ich Compose Center - #13

Können Sie bitte ein kurzes Video erstellen? Das wäre nützlich, um zu sehen und zu verstehen, was passiert.

1 „Gefällt mir“

3 „Gefällt mir“

Danke für Ihre Geduld! Ich habe das Problem gefunden. Es sollte jetzt behoben sein! :+1:

3 „Gefällt mir“

Ich erhalte diesen Fehler bei der Installation dieser Komponente

Đã xảy ra lỗi: Error creating upload asset: worker_photon_wasm. Original filename Sorry, the file you are trying to upload is not authorized (authorized extensions: jpg, jpeg, png, woff, woff2, svg, eot, ttf, otf, gif, js, dwg).

1 „Gefällt mir“

Das ist seltsam. Welche Discourse-Version verwendest du?
Du könntest versuchen, die wasm-Erweiterung zu den erlaubten Listen hinzuzufügen, aber sie funktioniert bei mir lokal und in zwei Produktionsinstallationen ohne Änderungen. :thinking:

1 „Gefällt mir“

Ich werde Ihnen ein Feedback geben. Ich weiß nicht, was los ist, aber es scheint, dass chinesische Benutzer keine Wasserzeichen auf ihren hochgeladenen Bildern haben.

Aber ich benutze ein neu erstelltes Konto mit aktiviertem No-Trace-Modus und es funktioniert, daher weiß ich nicht, was das Problem ist.

Manchmal funktioniert es, manchmal nicht.

Die heruntergenommenen Bilder sind .jpeg .png Aber genau wie das Bild im Video kopiere ich das Bild und lade es hoch und es ist mit einem Wasserzeichen versehen, daher weiß ich nicht, was das Problem ist.

Danke für das Feedback!

Bei Ihnen funktioniert es immer, egal wie Sie es versuchen, richtig?

Können Sie einige Ihrer Benutzer bitten, die Browserkonsole zu überprüfen, falls dies geschieht, und Ihnen jede Fehlermeldung zu kopieren, die sie sehen? Auch ob sie ein Mobilgerät (Android, iPhone usw.) verwenden – Wenn sie erklären können, was sie genau getan haben, um zu sehen, ob es helfen kann, wäre das willkommen.

Es scheint kein Problem mit dem Bild selbst zu sein, wenn Sie das Bild später selbst mit einem Wasserzeichen versehen können. Was übrig bleibt, ist entweder ein Fehler im Code wie beim vorherigen Problem oder ein Fehler im Wasserzeichenprozess. Leider kann ich es nicht reproduzieren, egal was ich tue.

Ich werde sehen, ob ich die Komponente später aktualisiere, um sicherzustellen, dass alle Fehler abgefangen und dem Benutzer angezeigt werden.

Hallo, danke, dass Sie diese Komponente erstellt haben.
Als ich versuchte, ein Wasserzeichenfoto hochzuladen, trat dieser Fehler auf. Ich habe es mit JPEG und Webp versucht, aber ohne Erfolg.

Mein Discourse-Forum ist auf dem neuesten Stand

1 „Gefällt mir“

Hallo @LaptechInfo

Das ist seltsam. An diesem Punkt sollte der TC nichts tun. Dies ist die Standard-Upload-Einstellung.
Können Sie die Konsole des Browsers überprüfen und sehen, ob Fehlermeldungen angezeigt werden?

Ist es möglich, ein Bild bereitzustellen, das fehlschlägt, damit ich es auch auf meiner Seite testen kann?

1 „Gefällt mir“

Hallo, ich habe viele Bilder zufällig ausprobiert, aber keines davon hat funktioniert.
Ich bin kein Programmierer und habe keine Kenntnisse in irgendeiner Computersprache.
Probieren Sie dieses Bild, ich bin müde.
laptechinfo webp.zip (558 Bytes)
watermark.zip (257,7 KB)

@Arkshine

1 „Gefällt mir“

Danke! Können Sie auch den Inhalt Ihrer Konsole anzeigen? Der Tab direkt danach. Ich denke, das könnte helfen.

EDIT: Ich glaube, ich kann es reproduzieren, lassen Sie mich sehen, und ich melde mich bald wieder!

Konsole-Tab


@Arkshine

@LaptechInfo Danke! Es gibt einen Fehler in Discourse von einem PR gestern. Ich habe ein Thema erstellt: Can't upload image in settings. :+1:

3 „Gefällt mir“