Directe Translation mit Q_Translate

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Directe Translation mit Q_Translate

Beitrag von Velindos »

Hallo Leute,
möchte einen markierten Text direkt an QTranslate aus meinen Editorgadget übergeben.

Folgende Schritte sind gelöst:
1) Text markieren mit der Maus
2) Wie gehts?

Code: Alles auswählen

Global QTranslateText$

Procedure Strg_Q_Translate(GGADGET)
    SendMessage_(GadgetID(GGADGET), #WM_CUT, #EM_SETSEL, -1)
    QTranslateText$ = GetClipboardText()
    Debug "QTranslateText$ = "+QTranslateText$
    ; >>>>>>>>>>>> Hier wie geht weiter
EndProcedure

Strg_Q_Translate(Work_E_Notiz)
Gruss ... Velindos!
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
tft
Beiträge: 605
Registriert: 08.09.2004 20:18
Computerausstattung: GTX Titan , i9 9900K , 32 GB Ram , 500 GB SSD , 3 ASUS FullHD Monitore and more
Wohnort: Dachsen
Kontaktdaten:

Re: Directe Translation mit Q_Translate

Beitrag von tft »

jo ... interessantes Thema, da lese ich mal mit.

Gruss TFT
TFT seid 1989 , Turgut Frank Temucin , Dachsen/Berlin/Antalya
Aktuelles Projekte : Driving School Evergarden
YouTube : Pure Basic to go
FaceBook : Temuçin SourceMAgic Games
DISCORD : SourceMagic
W10 , i9 9900K ,32 GB Ram , GTX Titan , 3 Monitore FHD
ARDUINO Freak :-)
Benutzeravatar
juergenkulow
Beiträge: 188
Registriert: 22.12.2016 12:49
Wohnort: :D_üsseldorf-Wersten

Re: Directe Translation mit Q_Translate

Beitrag von juergenkulow »

Hallo,

leider geht das mit Q_Translate nicht unter Linux:
Do you plan to release a version for non-Windows platforms (Linux, Unix, MacOS, Android or iPhone)?
There are no plans to port QTranslate to other platforms.
Wie kann man auf die Übersetzungsdienste von Babylon, Baidu, DeepL, Google, Microsoft,, Naver, Promt0, Yandex oder youdao direkt von Purebasic zugreifen?
Benutzeravatar
darius676
Beiträge: 501
Registriert: 08.03.2010 22:12
Computerausstattung: Intel i5 16GB RAM nVidia 1050, Win11
Atari Jaguar, Surface Pro 5,Surface Laptop i5 7200, XBOX ONE X, XBOX Series X
Wohnort: AT
Kontaktdaten:

Re: Directe Translation mit Q_Translate

Beitrag von darius676 »

Nachdem ich dies selbst über diese Dienste lösen wollte:
Ein Account bei Google, Azure... ist notwendig. Sieht für mich so aus. Danach hast du Zugriff auf die Übersetzungs API. Dabei ist zu beachten, dass es kostenlose? und kostenpflichtige Angebote gibt. Hab mich da nicht weiter beschäftigt, da für mein Projekt kein hoher Leidensdruck diesbezüglich vorhanden ist.
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Re: Directe Translation mit Q_Translate

Beitrag von Velindos »

Hallo,
schade, muss man halt damit Leben!
Danke für eure Tips!

Gruss ... Velindos
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
juergenkulow
Beiträge: 188
Registriert: 22.12.2016 12:49
Wohnort: :D_üsseldorf-Wersten

Re: Directe Translation mit Q_Translate

Beitrag von juergenkulow »

Hallo Velindos,
vielleicht hast Du etwas Freude an den Experimentprogrammen:

Code: Alles auswählen

; Ruft ein Editor Gadget auf und started dann einen Browser mit Translatorseiten .
Text$="Die Gedanken sind frei," +#LF$+"wer kann sie erraten,"+#LF$+"sie fliehen vorbei" +#LF$+
                 "wie nächtliche Schatten."+#LF$+"Kein Mensch kann sie wissen,"+#LF$+
                 "kein Jäger erschießen,"+#LF$+"es bleibet dabei:"+#LF$+"die Gedanken sind frei."
ExamineDesktops() ; Ermittle Informationen über angeschlossene Bildschirme 
Flags = #PB_Window_SystemMenu|#PB_Window_MinimizeGadget; Fenster-Parameter
If OpenWindow(0,0,0,DesktopWidth(0),DesktopHeight(0),"Editor",Flags) ;Öffne ein Fenster 
  EditorGadget(0,0,0,DesktopWidth(0),DesktopHeight(0)) ; Erstelle ein Editor-Gadget.
  SetGadgetText(0, Text$)  ; Ändere den Inhalt auf Editor-Gadgets auf den geladenen Text. 
  Repeat ; Hauptschleife
    Event = WaitWindowEvent()
  Until Event = #PB_Event_CloseWindow ; Warte auf ALT-F4 Eingabe
  Uebersetze$=URLEncoder(GetGadgetText(0)) ; Kopiert den Inhalt des Editors als URL encodierten String.
  CloseWindow(0) 
EndIf
Browser$="firefox" ; Bite anpassen. 
RunProgram(Browser$,  "https://translate.yandex.com/?lang=de-pa&text="+Uebersetze$,"")
RunProgram(Browser$,  "https://www.bing.com/translator/?text="+Uebersetze$+"&from=de&to=pa","")
RunProgram(Browser$,"https://translate.google.com/?q="+Uebersetze$+"&sl=de&tl=pa#view=home&op=translate&sl=de&tl=pa&text="+Uebersetze$,"") 
                  ; Meldung von Google: Bevorstehende Änderungen am Verlauf
                  ; Der Übersetzungsverlauf steht bald nur noch zur Verfügung, wenn du angemeldet bist. 
                  ; Er wird dann zentral über Meine Aktivitäten verwaltet. Der bisherige Verlauf wird durch dieses Upgrade 
                  ; gelöscht. Speichere also Übersetzungen, auf die du später noch zugreifen möchtest.
Delay(15000) ; Warte 15 Sekunden
; Text: Hallo sichtbares Universum, hier ist die Erde im Orionarm.
RunProgram(Browser$,"https://translate.yandex.com/?lang=de-pa&text=Hallo%20sichtbares%20Universum,%20hier%20ist%20die%20Erde%20im%20Orionarm.","")
RunProgram(Browser$,"https://www.bing.com/translator/?text=Hallo%20sichtbares%20Universum%2C%20hier%20ist%20die%20Erde%20im%20Orionarm.&from=de&to=pa","")
RunProgram(Browser$,"https://translate.google.com/?q=Hallo%20sichtbares%20Universum%2C%20hier%20ist%20die%20Erde%20im%20Orionarm.&sl=de&tl=pa#view=home&op=translate&sl=de&tl=pa&text=Hallo%20sichtbares%20Universum%2C%20hier%20ist%20die%20Erde%20im%20Orionarm.","",#PB_Program_Wait)

; APIs für Übersetzungen mit  curl oder https mit auth_key
; https://www.deepl.com/de/docs-api/
; https://yandex.com/dev/translate/
                
; mögliche Probleme: 
; Yandex schickt schon mal: "Unfortunately, it looks like the search requests sent from your IP address 
; are automated. Please enter the code. " 

Code: Alles auswählen

; Ruft ein Editor Programm auf und started danach einen Browser. 
RunProgram("/mnt/myedit.out","","",#PB_Program_Wait) ; Bitte Pfad und Namen anpassen. 
Debug "Inhalt des Clipboards, mit Strg-V einfügen."
Debug GetClipboardText()
Browser$="firefox" ; Bite anpassen. 
RunProgram(Browser$,"https://www.deepl.com/de/translator","")
RunProgram(Browser$,"https://translate.yandex.com/","")
RunProgram(Browser$,"https://translate.google.com/?hl=de","")
RunProgram(Browser$,"https://papago.naver.com/","")
RunProgram(Browser$,"https://www.online-translator.com/?prmtlang=de","")
RunProgram(Browser$,"https://www.reverso.net/text_translation.aspx?lang=EN","")
RunProgram(Browser$,"https://www.bing.com/translator/","",#PB_Program_Wait)
; Während das Programm läuft scheint das Clipboard lokal zu sein. Nach Programmende ist das Clipboard
; für andere Programme verfügbar! Wieso ist mir nicht klar. Dies ist der Grund für zwei Programme. 

Code: Alles auswählen

; Ruft ein Editor Gadget mit Text$ auf. 
; Bitte Compiler Executable erstellen. 
Text$="Die Gedanken sind frei," +#LF$+"wer kann sie erraten,"+#LF$+"sie fliehen vorbei" +#LF$+
                 "wie nächtliche Schatten."+#LF$+"Kein Mensch kann sie wissen,"+#LF$+
                 "kein Jäger erschießen,"+#LF$+"es bleibet dabei:"+#LF$+"die Gedanken sind frei."
ExamineDesktops() ; Ermittle Informationen über angeschlossene Bildschirme 
Flags = #PB_Window_SystemMenu|#PB_Window_MinimizeGadget; Fenster-Parameter
If OpenWindow(0,0,0,DesktopWidth(0),DesktopHeight(0),"Editor",Flags) ;Öffne ein Fenster 
  EditorGadget(0,0,0,DesktopWidth(0),DesktopHeight(0)) ; Erstelle ein Editor-Gadget.
  SetGadgetText(0, Text$)  ; Ändere den Inhalt auf Editor-Gadgets auf den geladenen Text. 
  Repeat ; Hauptschleife
    Event = WaitWindowEvent()
  Until Event = #PB_Event_CloseWindow ; Warte auf ALT-F4 Eingabe
  SetClipboardText(GetGadgetText(0)) ; Kopiert den Inhalt des Editors in das Clipboard.
  CloseWindow(0) 
EndIf
Bitte stelle Deine Fragen, denn den Erkenntnisapparat einschalten entscheidet über das einzig bekannte Leben im Universum.

Jürgen Kulow Wersten :D_üsseldorf NRW D Europa Erde Sonnensystem Lokale_Flocke Lokale_Blase Orion-Arm
Milchstraße Lokale_Gruppe Virgo-Superhaufen Laniakea Sichtbares_Universum
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Re: Directe Translation mit Q_Translate

Beitrag von Velindos »

Hallo juergenkulow,
Danke für deine Tip´s!

Gruss ... Velindos!
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Antworten