As a general comment - Personally I would never expose a printer over the Internet even if a printer & setup may be capable of that.
Option 1
Use SoftEther VPN Server and Client *www.softether.org/ on respective systems and do a remote desktop connection into the remote server. Transfer the files over VPN to remote system and initiate Print on LAN. Not too sure if direct printing over VPN will work, it might as well be possible. You need to explore.
SoftEther Server and Client are available for Windows as well as Linux. So they are cross compatible i.e. Linux Client can connect VPN to SoftEther server running on Windows. Use L2TP or Azure server option as applicable. SoftEther also provides its own free DDNS service.
Also some important input info preferably needed in your post is the info about setup at office.
- Is it full fledged Corporate IT or very basic networking? (By Basic I mean something like WiFi router/switch with a few PCs on LAN or WiFi and other networking devices like printer)
- Does the PC receive Public IP or is it behind proxy? Does the Internet WAN at office receive Public IP or it’s behind CGNAT? Who controls the setup? Is there a firewall to be configured and who manages that?
If it does not receive public IP use UDP Hole Punching or if that also does not work try SoftEther VPN Azure option.
Option 2
Explore tools like AnyDesk / TeamViewer etc to hook onto the other PC, transfer file and print locally. However usage in commercial environment might mean paid options. Check the EULA. However I cannot comment on security aspect here with such tools.