Date: prev next · Thread: first prev next last
2020 Archives by date, by thread · List index


Hallo,

mein Bug-Report:

https://bugs.documentfoundation.org/show_bug.cgi?id=136770

Habe allerdings die Befürchtung, dass es auch in Zukunft keine Lösung
gibt, mittels eines
Makros einen QR-Code zu generieren, weil die passende Schnittstelle
nicht implementiert ist.

Naja, wollen mal sehen ob sich dort noch etwas tut...

Viele Grüße

Jürgen

Am 11.09.2020 um 15:47 schrieb Jürgen Klatt:
Hallo Gerhard,

Dein Code hat mich zwar ein Stück weitergebracht, speziell diese
Eigenschaft:
QRShape.QRCodeProperties
1) Wenn man ein leeres Shape zeichnet, dann verfügt es NICHT über
diese Eigenschaft.
2) Erst wenn ein QR-Code generiert wurde, dann verfügt das Shape über
diese Eigenschaft.

Ich bin bei meinen Test noch auf andere Ungereimtheiten (Fehler?)
gestoßen, ob dies Bugs sind oder dies absichtlich so programmiert
wurde vermag ich nicht zu beurteilen.

Meine Anfrage betrachte ich nun als geschlossen, wenn auch nicht gelöst.
Ich werde vorläufig keine weitere Zeit zum Thema QR-Code verschwenden.

Habe im Augenblick auch keine Zeit irgendwelche Bug-Reports zu schreiben.

Bis dann...

Viele Grüße

Jürgen


Am 10.09.2020 um 22:25 schrieb Gerhard Weydt:
Hallo Jürgen,

zum Dispatcher kann ich überhaupt nichts sagen, außer, dass er nicht
immer so funktioniert, wie man sich das wünscht.
Ich hatte dich so verstanden, dass du die Struktur QRCodeProperties
des Shapes verändern wolltest, darauf bezog sich mein Hinweis. Ich
habe das auch mal in einem Makro eines Writer-Dokuments getestet, in
dem ich ein vorher per Einfügen -> Objekt -> QR-Code erzeugtes Shape
verändere:

Sub Main

Dim QRShape as object, QR as object
Dim zwi_QR AS NEW com.sun.star.drawing.QRCode

QRShape = ThisComponent.CurrentSelection(0)
QR = QRShape.QRCodeProperties
zwi_QR = QR
zwi_QR.Payload = "zwei" & CHR(10) & "Zeilen"
QR = zwi_QR

End Sub

Danach steht der zweizeilige Text im Objekt QR.

Wie du damit weiterkommst, weiß ich auch noch nicht, ich müsste mich
erst reinarbeiten in das Einfügen von Shapes in Writer. Dazu kommt
das Problem, dass ich kein Werkzeug habe, um QR-Codes zu lesen,
testen ist also schwierig.

Mehr versprach ich mir von Klaus-Michael Hesslers Beispiel-Dokument.
Ich habe damit QR-Codes erzeugt für den Text "ZweiZeilen", einmal so,
wie dasteht, einmal mit einem Zeilenumbruch vor "Zeilen". Da ich auf
die Schnelle nicht wusste, wie ich das in der Funktion zu schreiben
habe, habe ich den zweiweiligen Text in eine andere Zelle eingegeben
und in der Funktion den Bezug auf diese Zelle angegeben. Der erzeugte
Barcode sieht tatsächlich optisch anders aus.
Die Anzeige des Titels über rechte Maustaste -> Beschreibung ist nur
einzeilig, da sieht man nichts. Aber wenn ich den Titel mit Xray
anschaue, dann ist er zweizeilig, das lässt hoffen. Aber du müsstest
schon den QR-Code selbst anschauen.
Wenn das ok ist, dann könntest du Michaels Code abwandeln, das dürfte
sich wohl nur um den letzten Teil der sub QRCode ab Z. 333 handeln,
und auf Writer und deine Gegebenheiten umschreiben.

Aber das muss ich dir überlassen.

Viele Grüße
Gerhard

Am 10.09.2020 um 20:15 schrieb Jürgen Klatt:
Hallo Gerhard,

dies ist mein Dispatscher-Code:

/Sub Main//
//    document   = ThisComponent.CurrentController.Frame//
//    dispatcher =
createUnoService("com.sun.star.frame.DispatchHelper")//
////
//      rem
----------------------------------------------------------------------//

//   dim args1(2) as new com.sun.star.beans.PropertyValue//
//   args1(0).Name = "Payload"//
//   args1(0).Value = "Ananas"//
//   args1(1).Name = "Border"//
//   args1(1).Value = 1//
//   args1(2).Name = "ErrorCorrection"//
//   args1(2).Value = 2//
////
//   dispatcher.executeDispatch(document, ".uno:InsertQrCode", "", 0,
args1())//
//End Sub/

Das Argument-Array wird bei der Verwendung von ".uno:InsertQrCode"
vollkommen ignoriert, läuft ins Leere.
Es wird zwar der QR-Code-Dialog aufgerufen, aber die Eigenschaften
wurden nicht übernommen.

Hinweis:
Es gibt noch diese Methode:

/   dispatcher.executeDispatch(document, ".uno:EditQrCode", "", 0,
args1())/

, bin hier auch nicht weitergekommen

Viele Grüße

Jürgen

Am 10.09.2020 um 19:46 schrieb Gerhard Weydt:
Hallo Jürgen,



Am 10.09.2020 um 17:44 schrieb Jürgen Klatt:
Hallo Michael,
...
Nach meiner Code-Inspektion (mittels MRI) wird der QR-Code in einem
Shape-Objekt gezeichnet.
Für das Shape-Objekt gibt es aber keine Schnittstelle/ keinen Service
für den QR-Code-Generator.

Es gibt zwar ein Struct mit dem man die gewünschten Eigenschaften
setzen
kann, aber diese
werden weder per API-Programmierung, noch per Dispatchercode
angenommen.

Es hat den Anschein, als würden die Struct-Anweisungen in Leere
laufen :(
Ist dir klar, dass man in der Regel Eigenschaften in Structs nicht
direkt setzen kann, sondern einen Umweg benötigt?
Etwa so:
Dim zwi_struct AS NEW ... 'wenn du den Typ nicht gleich weißt, dann
nimm erst einmal VARIANT
zwi _struct = struct
zwi_struct.eigenschaft1 = ...
'usw.
struct = zwi_struct

Wenn du das nicht so gemacht hast, versuche es mal, vielleicht hast du
Glück.

Gruß
Gerhard





--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.