When I created AmiTranslate I tried the multi byte languages as well (chinese, japanese, korean and others) but the PDF Export did not work and I didn’t understand why, so I left them out.
Today I noticed there is an option when saving the PDF in FreePascal which reduces the embedded font to a minimum to keep the file size down. It seems like it does that by removing such asian chars, so even you define a special asian font the output will just be empty.
The downsides it of course the PDF becomes huge, some megabytes, you can reduce that by let the font pack on PDF creation, but even in UAE it needs a long time, so I disabled that as well
I noticed some bugs in AmiTranslate and also got some suggestions how to improve the program. Firstly the scrollbars for the text edits did not work (where not connected to the actual textedit). The pdf did not care about returns or line wrap so a longer text are not readable. Now it cares about returns in the text and will also insert line wraps for longer texts.
A wish was to include a context menu for both edits to copy and paste text.
So it’s time for a new release 0.2, Download at the Programs Page
Usually when I translate texts from one language to an other I use DeepL to do it, it makes better results than Google translate in the most cases (at least if german is the target language). It also has an API to use and the first 500.000 chars are free, so I created a little program for Amiga to use that API.
It’s stupidly named AmiTranslate I know very unimaginative but hey seems the name is not used already, so why not. Of course the program needs an Internet connection and SSL (OpenSSL3 on MorphOS; AmiSSL on all other systems) because it talks directly with the DeepL server (via https) and it needs the texteditor.mcc.
Of course for some of the languages there is the problem of showing the chars (e.g. russian) for that I included a PDF writing function and a plain UTF-8 Text output then you can use other programs to read the actual text. of course nicer would be to make a real TTF output maybe later.
I also removed some languages which does not work at all (even the PDF output, like japanese, korean and chinese)
If you have an own DeepL key you can add the ToolType „DEEPLKEY=<key>“ to the icon, then even my 500.000 chars are used you can still use your own, it’s free so why not.
Of course it’s perfectly possible to use any text 2 image webpages like getimg.ai with AmiFox on Amiga. But of course a better way is to make a specialized app for it using hugging face with stable diffusion.
It also contains Magic prompt which can produce more sophisticated prompts or even a complete random prompt. Gives really nice pictures sometimes.
Introducing AREXX commands for AmiFox, so you can send a URL to AmiFox to view. If the Browser is idle it will directly start to load the new URL. If still loading another URL it will remember the URL and start it after the current one is finished loading, maybe later also stop the current task, atm its easier that way.
Wit this new AREXX command of course one can use an AREXX script but even better you can use programs like openurl to directly send urls to your favourite Web-browser… or AmiFox 😀
A new version of AmiFox is ready for release, I fixed some more bugs the last days. The 0.3 Version is a big step forward for usability of AmiFox. Most of these features I already introduced in the blog entries here so just a short recap.
Copy Text from selected webpage (AmiFox-Server 0.2+)
Copy Clipboard from Server (AmiFox-Server 0.2+)
IFF Format (AmiFox-Server 0.2+)
send longer texts to page (needs texteditor.mcc)
Mouse wheel support
Shift cursor up/down send as Page up/Down (AmiFox-Server 0.2+)
Error message when Datatype could not load image
send Youtube URLs to AmiTube
send Google Maps and OpenStreetmap positions to Mapparium
AROS Version atm i386 and 64bit ABIv11
Read URL at Mouse position
direct download of catched URL at mouse position
save Webpage Image
Downloads as always on the AmiFox Page or with the Update check inside AmiFox.
If you using an own AmiFox Server please note that you must update to the latest Version to get all the Features, The Current Version should have the Version Number „AmiFox-Server 0.3“ visible in the AmiFox about (after at least one page was loaded) or in the footer of the AmiFoxServer webpage, next to the WRP Version number.
I was browsing around in the old sources of WRP, how it was in older Releases, and I found an interesting point, in the beginning they tried the same as me. To gather all the links on the page with their position and sent it back as map to the client. So they gave me a handy example source how to achieve that with the headless chrome. so I build a routine which takes coordinates and sends back the URL if the coordinates are on a link. And I put that into AmiFox. But for that of course I need a Version detection because older versions or the official WRP can’t do that.
Now this works rather nicely, still thinking if I should do that always and out in the original answer html, but then it will be huge for most webpages. Atm I like this more dynamic way more, I also cache them in AmiFox so if it knows already once the position it will not ask again for these positions.
To use that besides the little text in the status bar I added a Context menu with „Download Link“ and that it no looks that empty also a „save image“ function, which just copies the temp image to an other location. Little demonstration, as usual.
Some days before I made a Video how AmiFox and AmiTube/MUIMapparium will work together in the next AmiFox version. But that would not work for AROS, simply because the AROS MUI, named Zune does not support an AREXX Port as MUI does. But when I thought about, it should be not too hard to create an AREXX port yourself, in principle what you need to do:
Create an Message port (CreateMsgPort)
Name that Message port for example „AmiTube.1“, MUI/Zune already supplies such a name in the Base property of the application class (ln_Name)
Register that named Message port to the system (AddPort)
Read Messages from the port (GetMsg)
check if that message is a commando (RXCOMM)
Handle that Message (RexxMsg)
Reply the message to the sender (ReplyMsg)
Thats all, (of course in destroy you need to remove the msgport from the system and destroy it). But overall very simple. I tried it for i386 AROS and it works very nicely I can send AREXX messages from AmiFox to AmiTube as in Amiga. Now I really think why they did not implement that in Zune, if it’s that simple, maybe I forget something.