WinFIG is a vector graphics editor application. The file format and rendering are as close to Xfig as possible, but the program takes advantage of Windows features like clipboard, printer preview, multiple documents etc.
It is based on my earlier Amiga program called AmiFIG. The intention is not just to copy or clone Xfig. I tried to improve the user interface, so experienced Xfig users probably realize that the look&feel is not identical and some things work differently. The handling was changed to support a 2-button mouse. ...and btw I think that is much more usable.Just like XFig, WinFIG has become quite popular among academic users for it's ability to use LaTeX syntax for texts as well as exporting to PSTricks, embedding PostScript or PDF into LaTeX or producing pure LaTeX output. So there is quite a range of options to fit WinFIG into a LaTeX environment, but of course it's not limited to that.
I did not yet include all the features I have in mind, but it can already be quite useful. So, enjoy and have fun.
Features include:| News |
8 August 2011 - Version 4.8
Changes:
- WinFIG has now rulers. They can be turned on or off in the "grid & metrics dialog".
Bug fixes:
- I made a small change to the PostScript and PDF export in fig2dev. I post this under "bug fixes", because I rather see it as a bug fix than merely a change. The hyphen character '-' was translated to a "/minus" character in PS, which is more like '−' and therefore longer than the hyphen being used in WinFIG and Xfig. As a result the length of the whole text object would change when exported to PS/PDF. That made it difficult to precisely position such text objects.
22 May 2011 - Version 4.71 for Mac OS
Version for Mac OS
I prepared a version for Mac OS X (Intel). This is based on the code for Windows and Linux, so it contains all features and acapabilities. Thanks to the Qt framework the project compiled and executed at the first attempt and only needed some few Mac specific adjustments. The prerequisites are also the same. You will need a LaTeX for rendering text objects, which make use of LaTeX syntax. I tried MacTeX (which is actually TeX Live plus additions) and it is working. You will also need GhostScript for the same purpose as well as for exporting to PDF and bitmap formats. The Mac OS version comes as a ZIP file. I tried to create an app bundle (*.app file), but I had problems getting this fully functional. The problem is that if WinFIG is started as an app bundle, it cannot call any external tools (GhostScript, LaTeX interpreter). I assume app bundles have a different execution environment, but since I'm very new to Mac OS I could not find a solution yet. Perhaps if some profound Mac OS developer can give me a hint? Google did not. However, everything works fine if WinFIG is started from a simple folder. That's why the distribution comes as a simple zipped folder right now. You will also have to install the Qt libraries. A setup package is provided by Nokia here. I tested with the "Cocoa: Mac binary package for Mac OS X 10.5".
Some problems still exist:
Generally, there has been only little testing and I cannot guarantee there are no issues or bugs that still have to be solved to make the Mac OS port perfect. It may even still crash. Nothing like that happened so far, but I want to give that warning anyway. So, use with care and save your figures quite often. I appreciate any feedback and will try to fix problems quicky, but I made this porting on a Mac Mini that I lent for a couple of weekends only. I will buy one for myself as soon as paid registrations fund the purchase. I hope the Mac OS version will be welcomed by and useful to Mac users.
- PostScript font support in the user interface. I still have to figure out how to make the standard set of PostScript fonts available. Right now you can use all fonts and they will be used in the PostScript or LaTeX export, but on screen only one font is used for all.
- The user interface font is a little bit bigger than on windows. This may lead to labels or buttons texts being truncated by a few pixels.
- The widget style "Apple" is not included, because some widgets have quite different dimensions in that style, i.e. the check box is a push button there. I would have to adjust the layout of quite a number of dialogs. Therefore the style "Apple" maps to "Plastique" right now. I don't think that's really an issue, because "Plastique" is quite nice too.
14 March 2011 - Version 4.71
Changes:
- WinFIG loads the Helvetica Narrow fonts using font family NimbusSanLCon. The result is closer to what a PostScript interpreter produces.
Bug fixes:
- WinFIG crashed in the following scenario: open the Library-Window, don't select a folder, hit refresh, click on one of the "empty" objects on the right side.
- fig2dev now sets the locale to "C" when reading FIG files. This will prevent any trouble with locale-specific number formats.
- Text objects could have wrong dimension values written to the FIG file. WinFIG did not correct the length value by eliminating the current zoom factor when saving the figure. So, saving while zoom is at 100% would write different dimensions than saving at a zoom of 200%.
- The fonts button in the text attributes (right side) that opens the fonts dialog did not show the current font weight, style and stretch.
- Circles and ellipses (drawn by radius) could not be moved by holding them on the center marker.
01 February 2011 - Version 4.7
Changes:
- There are two new toolbar buttons for adding normal and tangent lines to shapes. The length can be set in the function attributes on the right side.
- Windows only: The path to the ghostscript executable can be configured in the preferences dialog (on the "Other" page). The default setting is still to let WinFIG determine the path, but some users reported problems with the detection. In that case locate gwsin32c.exe on your computer and enter the full path (i.e. c:\Program Files\gs\gs9.00\bin\gswin32c.exe). Note that there is also a gswin32.exe. Use the version with the "c" in the name, because that is meant for quiet execution in the background. The other version will work too, but pops a window up each time it is called.
- fig2dev now contains the latest changes from patchlevel 3.2.5d
Bug fixes:
- Some minor fixes only.
05 October 2010 - Version 4.621
This release only affects the Linux version.Bug fixes:
- The program could crash after closing the "save file" dialog.
04 September 2010 - Version 4.62
Changes:
- I changed the command line for calling LaTeX, which is used for rendering LaTeX formatted text objects. The old command did not work in all environments, perhaps due to directory access rights issues. The old command was: latex -quiet -job-name OUTFILE INFILE The new command is: latex -quiet -output-directory TEMPDIR -job-name OUTFILE TEMPDIR/INFILE The output directory for the temporary files is now explicitly set and the preferences dialog allows setting either the system default temp directory or any other directory. The system default on Windows is: c:\Documents and Settings\user\Local Settings\Temp
...where "user" is the login name. Most users will not have to change anything here, but it gives you better control in case of problems. Note that "job-name" in the above command is the name of the output file, but without path. The effective full path is TEMPDIR/OUTFILE.
20 June 2010 - Version 4.61
Bug fixes:
- The -F option was added to all export drivers and causing some export formats to fail. It should only be added to those that can handle it.
15 June 2010 - Version 4.6
Changes:
- The export driver for PSTricks now supports the new arrow types. Thanks go to Gene Ressler for applying the necessary changes to his driver and for providing the updated code. PSTricks provides a powerful way of integrating graphics into LaTeX documents.
- I added the Gerber (RS-247-X for CAD drawings for printed circuits) driver that was recently introduced in transfig 3.2.5c. I don't really know what this is and how to check if everything is exported ok, but probably it's quite useful for some people. See Wikipeda for more info on Gerber files.
- The base for font sizes is now 72dpi per default to ensure compatibility with PostScript. That means a 26pt font has the same height in WinFIG and PostScript. Previous versions were using a base of 80 dpi, which made it necessary to scale the font size from 80 dpi to 72 dpi on export, i.e. a 26pt font would have to be 23.4pt in PostScript or PDF to have the same height as in WinFIG.
If that option is checked, WinFIG will also automatically add the -F option to the export parameters (for fig2dev) on export.
I added a check box to the configuration dialog that allows switching back to the old 80 dpi base. By unchecking it you can still open your old documents in a compatibility mode.Bug fixes:
- Rounded dots are now displayed correctly.
- Objects were deselected after aligning them.
- It was not possible to select a user defined color if it was the only one available in the drop down box.
21 March 2010 - Version 4.5
Changes:
- I added the "new" arrow heads from Xfig.
Bug fixes:
- A crash was reported on Vista. Saving a figure with text long objects (more than 15 characters) would crash the program. I could not reproduce the problem, but I made a small change that solved the problem for the user who reported the error.
- WinFIG could crash after the following steps: opened a figure from the "recent files" that does not exist. Then go to the "Window" menu in the main tool bar.
4 March 2010 - Version 4.4
This is a quick bug fix release. Even though it follows two days after the previous release, I think the issues solved are important enough to release this followup immediately.Bug fixes:
- Compound objects could only be moved by grabbing them on the edges, but not by grabbing them on the corners. Quite an annoying bug that was there since version 4.0 final.
- A refresh problem was removed that occured when a compound had smart links to objects outside the compound.
2 March 2010 - Version 4.3
Changes:
- I didn't really like that when opening a compound object everything around it disappears. I made this behaviour configurable ("Preferences->Other") and added options to show the figure outside the compound either dimmed, gray, hidden or normal.
- Usually WinFIG writes the log file "winfig.log" to the program directory. This may not always be possible, i.e. under Windows 7 WinFIG does not have write privilege for its own folder. In that case the log file is now written to the user's temp directory, which is normally c:\Users\xxx\AppData\Local\Temp where xxx is the user name. Check the log file if you have problems showing LaTeX text, reading graphics etc.
7 February 2010 - Version 4.2
Changes:
- The "update attributes" function now shows a list of check boxes to select the attributes, which shall be updated to the current values.
Bug fixes:
- The path that constitutes an arc was limited to 1000 points resulting in incomplete arc objects when they are big.
- A possible crash when creating picture objects from unrecognized file formats.
- Selecting more than one object and the shift-unselecting one of them made them all "stick" to the mouse cursor.
24 December 2009 - Version 4.1
This release contains some features requested by users. Finally I had time to take care of some of them and I really think they increase the usability in some areas. Thanks alot for the suggestions.Changes:
- Figure export can be repeated using the same settings as before without going through the process of opening the expor dialog, setting export properties, saving changes etc. The "Export Again" is called from the "File" menu or via Ctrl-E hotkey.
- An additional option for the pdftex and pstex export was added. The background is that the pdftex and pstex exports write a LaTeX file that is not a complete LaTeX file that can be processed by pdflatex/latex. Instead, this is usually later embedded into a bigger LaTeX document using the \input directive. But sometimes it may be desirable or comfortable to just create a simple document without being required to manually create a LaTeX wrapper document and calling pdflatex or latex command etc. To achieve that I added one more option to the pdftex and pstex exports: "Export both parts and create a PDF document via pdftex"
If you choose that option WinFIG will write a dummy LaTeX document that contains the required LaTeX declarations for a minimal, translatable document as well as the \input statement and will also call pdflatex/latex on it. The result will be the PDF document containing all the graphical elements of the drawing as well as the LaTeX formatted texts. You can edit the dummy document by clicking on "Edit TeX envelope". This allows you to add any customized LaTeX code you want there. WinFIG takes care of page size and orientation by replacing the tokens PAPERSIZETOKEN and PAGEORIENTATIONTOKEN with the correct values.
Additionally you can check the "open in PDF/PS viewer" box to open the document immediately in a PDF/PS viewer. The PDF/PS viewer command can be configued in the "Other" tab of the "Preferences" dialog.
As a summary: WinFIG can now execute the following tool chains:
fig2dev (graphics)->fig2dev (texts)->pdflatex->PDF viewer
fig2dev (graphics)->fig2dev (texts)->latex->dvips->PS viewer
Perhaps this new function is a little bit too well hidden, but I put it there, because logically it belongs to the pdftex and pstex exports.- I added the LaTeX fonts to the Fonts dialog in order to allow LaTeX users to use them in their drawings.
Bug fixes:
- The internal steppings for the magnetic grid were calculated on startup, but not updated when changing the grid unit from metric to inches or vice versa later. Therefore the magnet did not work properly when changing the unit without restarting the program.