Use PDF-XChange Viewer in 64bit Ubuntu with 32bit Wine

To run “PDF-XChange Viewer” in Linux, we need 32-bit Wine. The 64-bit version is incompatible.

GUI Solution:
(1) Install “PlayOnLinux”
(2) Launch “PlayOnLinux”
(3) In “Tools”->”Manage Wine versions”, install an x86 version Wine. Please make sure that you choose from “Wine Versions (x86)”.

Screenshot from 2013-11-27 11:16:40

(4) In “PlayOnLinux”, install “PDF-XChange Viewer”. During the installation process, choose “Use another version of Wine” and then choose the x86 version of Wine.

Choose “Install a non-listed program”
Screenshot from 2013-11-27 11:27:16

Choose “Install a program in a new virtual drive”
Screenshot from 2013-11-27 11:29:00

Choose “Use another version of Wine”
Screenshot from 2013-11-27 11:30:27

Choose “32 bits Windows installation”
Screenshot from 2013-11-27 11:31:36

Browse your PDF-XChange Viewer Installation exe
Screenshot from 2013-11-27 11:42:01

(5) Go through the installation procedure.

(6) Tweaks
If you found errors with liblcms2.so.2, you can fix it with
sudo apt-get install liblcms2-2:i386

Command Line Wrap:
To make “PDF-XChange Viewer” interact with other programs, for example JabRef, we need to make a command line script to wrap the launch of the PDF viewer with a PDF file argument.

——– Method 1 (Recommended) script: PDFXCview —————–

#!/bin/bash

POL="/usr/share/playonlinux/playonlinux"
APP="PDFXCview"
# APP="The name PlayOnLinux uses for launch PDF-XChange"
# You can find it by launching PlayOnLinux

RootDrive="Drive Name To Which Your Wine Maps /"
# For example:
# "z:"
# You can find this by opening PDF-XChange from PlayOnLinux and then browsing to the "My Computer" with its "File -> Open" menu.

if [ $# -lt 1 ]
then
    "$POL" --run "$APP"
    exit $?
else
    Input="$( readlink -f "$1" )"
    "$POL" --run "$APP" "${RootDrive}/${Input}"
    exit $?
fi

——– Method 2 (Not recommended) script: PDFXCview ————-

#!/bin/bash

Wine="Your 32Bit-Wine Binary"
# For example, if you use the PlayOnLinux wine installation:
# "/home/your_user_name/.PlayOnLinux/wine/linux-x86/1.5.26/bin/wine"

export WINEPREFIX="Your 32-Bit Wine Environment Folder"
# This is the working environment for the wine binary.
# Wine finds its configuration, its virtual drive maps in this folder.
# This is a very important environment variable.
# Make sure it is correct.
# For example, if you use the PlayOneLinux wine installation:
# "/home/your_user_name/.PlayOnLinux/wineprefix/PDFXChange"


RootDrive="Drive Name To Which Your Wine Maps /"
# For example:
# "z:"


Application="Your PDF-XChange Viewer Binary"
# For example:
# "/home/your_user_name/.PlayOnLinux/wineprefix/PDFXChange/drive_c/Program Files/Tracker Software/PDF Viewer/PDFXCview.exe"


if [ $# -lt 1 ]
then
    "$Wine" "$Application"
    exit $?
else
    Input="$( readlink -f "$1" )"
    "$Wine" "$Application" "${RootDrive}/${Input}"
    exit $?
fi

————————-

Interaction with Other Programs:
To make PDF-XChange Viewer accessible from command-line, the above script should be put in a fold listed in your environmental variable PATH. For example, as a user, you can put it in “/home/YourUserName/bin” with file name “PDFXCview”. Make sure you grant the executable permission to it. Then you should be able to launch it simply with a command “PDFXCview” in a console. After setting up the command-line script, you can configure other programs to interact with PDF-XChange Viewer.

To interact with JabRef (Version 2.5): launch JabRef, go to “Options” -> “Preferences” -> “External programs” -> “Manage external file types”, select “PDF” and click the edit button, in the edit window, fill the “Application” field with the full path of your PDFXCview script, for example, “/home/YourUserName/bin/PDFXCview”.

Advertisements

15 comments

  1. Jo

    Hi,
    I searched for a solution to make PDF Xchange viewer interact with JabRef on ubuntu, but unfortunately I’m not very well versed in programming. So if you could please explain where I have to put this script?
    Thanks!

  2. Jo

    Finally I solved my problem, but I didn’t use the script above. ( I wasn’t even able to find my “32-Bit Wine binary” 🙂 ) Maybe I explain for the as less skilled as me. If this is inappropriate here, feel free to delete it.

    I used the script from http://wiki.ubuntuusers.de/PDF_XChange_Viewer?highlight=pdfxchange which is used to start PDFxchange viewer from Firefox. So I copied the script

    #!/bin/bash
    PDFXVIEWER=~/”.wine/drive_c/Programme/Tracker Software/PDF Viewer/PDFXCview.exe”

    if (($# != 1)); then
    echo “usage: $0 filename”
    exit 1
    fi

    cd “$(dirname “$1″)”
    wine “$PDFXVIEWER” “$(basename “$1″)”

    with root rights in /usr/local/bin/pdfxchange. This is done like this: sudo cp source /usr/local/bin
    Then you have to give some strange rights to it to make it executable: sudo chmod 775 /usr/local/bin/pdfxchange
    You can start PDFxchange viewer now from terminal: pdfxchange PDFFILE.pdf
    Change the settings of Firefox/ JabRef etc which application they should use in /usr/local/bin/pdfxchange

  3. Benit

    Thanks a lot for this post. My Play On Linux shows ONLY 64 Bit versions. How can I add a 32 Bit WINE? I would be happy about a step-by-step instruction like you gave above for GUI.

  4. JohnP

    Thanks for posting this. Trying to troubleshoot wine-related problems can waste incredible amounts of time; clear instructions like the ones you provided are a great help. I’ve identified a small improvement that could be made, though.

    If a pdf has spaces in its filename, the provided script will fail. Line 13 (for the method 1 script) should have double quotes around $1$, as such:

    Input=”$( readlink -f “$1″ )”

    In case it is relevant, I am using Linux Mint 16 Cinnamon 64-bit, Wine 1.7.11 x86, and PlayOnLinux 4.2.1.

  5. Marco

    Unfortunately I can’t get it to sign documents, if I import the certificate, nothing happens. If I try to create a new one, it crashes saying not enough memory allocated (although there is plenty)

  6. Conrad

    Thank you very very much. I spent a *lot* of time either trying to get PDF-XChange to work on my Mint 64 installation or trying to find an alternative program that has the same capabilities as PDF-XChange has, and I wasn’t having any luck in either of these efforts. Your solution works brilliantly and I can now enjoy all the commenting, highlighting and exporting said comments and highlights that PDF-XChange has to offer. Again, thanks a lot!

  7. Conrad

    ach, sorry to say it has started crashing again. With your method for the first time I could make changes (adding a comment or highlighting text) and then saving it, and then closing PDF-XChange, but now it will automatically crash again once I try to save changes, just like it did before. Still though, thanks for your very detailed explanations here.

    • mutoular

      To my experience, it sometimes crash, but it saves all the work applied to the PDF file correctly. I usually just reopen the PDF file and resume my task. At least it functions, though not perfectly.

  8. RILC

    Thanks a lot for your detailed explanation! It worked fllawlessly on 64 bit SolydX using different versions of WINE (1.6 and 1.6.2). Thankfully now there is also Master PDF Editor as an option. Still I prefer PDFXChange Viewer, though, for its unsurpassed annotation (and others) features. Ihad to fiddle a little with Double Commander (my file browser of choice) file asociations options and that was it.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s